Posted on 1 Comment

Spam on Reality Me out of control

This weekend I plan to get a little aggressive with controlling spam on Reality Me. Most of it gets blocked but I get so much spam traffic that my Spam Karma logs regularly reach 70MB or more. If you find yourself unable to reach Reality Me, I may have been too aggressive. Just email me at juggler@gmail.com or Twitter @djuggler or Skype djuggler.

How do I plan to fight the spam? Mostly with apache. I’ll post details.

Posted on Leave a comment

Bring Me A Rock

When talking about software development and software quality assurance processes, I love to talk about the "Bring me a rock!" scenario. I found these renderings of a rock rather amusing. Of course, there are no coffee grounds in the house so that could be a contributing factor in the humor.

I also enjoy talking about delivering a baby in one month by using nine women. And I love the ugly baby syndrome. But those are for later.

Posted on 4 Comments

Do you store images in a database?

As I have built PHP and ColdFusion applications over the years, I have had to deal with image and file uploading from the application. Browsers were not designed for moving files from a client to a server; specifically, browsers were designed to receive files from a server to a client. To move files from a client to a server, an FTP program is used. (My favorite FTP client is WinSCP.) Now, a form can be written and used to upload a picture, movie, or other file from the client (you) to the server. You probably do this quite frequently with Flickr, Youtube and so forth. It is convenient from the enduser point of view because it removes the need to learn new software (the ftp client) and prevents having to get an administrator to create a username and password for each user on the server. Plus, by managing the files through the web application instead of the FTP program, you can programmatically control what is being allowed onto the server so that your user doesn’t maliciously upload an executable designed to damage the server rather than that family vacation photograph.

As a programmer, I have to make decisions about where to store these uploaded files. A common approach is to have a directory on the webserver which cannot be accessed by a browser (that is, the only way to get to the file is through the programming). The filename is then stored in the database. As an independent consultant, I work with different programmers/designers with varied skillsets and differing philosophies on coding. Some coders, like Eric Wise, actually prefer to store the files in the database itself. Eric claims:

…this is pretty sloppy and difficult to manage especially if for some reason you want to reorganize the data… [Source, Eric Wise, Images, Thumbnails, SQL Server, and ASP .NET – Level 200]

Eric describes a process of storing images in SQL Server 2005, automatically compressing the images, and generating thumbnails using ASP .NET. THis is interesting to me as I am wanting to learn C# to add to my skillsets.

I am concerned about database size and performance decreased caused by storing images/files in a database rather than storing the file in a directory and only storing the filename in the database. Jeffrey Palermo, a commenter on Eric Wise’s post, expresses the same concern:

Jeffrey Palermo said:

I’ve considered doing a photo album this way, but the main drawback is the size it makes the database. I have about 4GB of images. Do I really want that much in my database just for images. That also makes the bandwidth between web and db server highly used. Perhaps it’s no big deal, but to date I’ve kept my photos on the web server. Please post if you find no issues with the size of the data in the database when you have _lots_ of pictures there.

And Eric responds:

Eric Wise said:

Jeff,

With the compression tool I referenced, the original image shown was over 2MB, now it’s 165KB.

Having many large files would definately cause a performance issue, but with compression and the fact that it will probably be rare to have more than 2-3 pictures of an asset I’m not all that concerned about it.

What is your approach to storing images from a web application? See also.

Posted on Leave a comment

Aardvark is compatible with Firefox 3!

Aardvark is a Firefox extension that I frequently use before resorting to MODIv2. Both of these tools outline elements in the browser and reveal the underlying CSS. When CSS is being mystical and you have keyboard shaped dents in your forehead, these tools can pull the man out from behind the curtain and help bring on that a-ha! moment which solve the problem. Aardvark needs to be installed from the developer’s site as its review for addition in the Mozilla Firefox Add-ons is not complete. I highly recommend Aardvark!

Oh, the Web Developer Toolbar also has similar functionality under Information->Display Element Information. (cntl+shift+f) The Web Developer Toolbar is the absolute most essential Firefox add-on for us Internet junkies!

Update: Like MODIv2, Aardvark now comes as a bookmarklet! That means Aardvark can be used with Internet Explorer and Safari also.

Posted on 3 Comments

Tweetup was a whale of a time!

Aubrey’s management eyeballed them suspiciously. Fifteen silence people taking broad steps toward the restaurant with heads hung low, each holding a device in one or two hands with their thumbs making rapid movements. One of these characters held a device in each hand. "Quick! Open the patio. These guys look like trouble." The group settled in around the table, and, wordlessly, began pecking on their phones and palm devices. Occasionally one would look up, point and laugh. These are the Knoxville Twitters!

What is Twitter? Probably the most common question asked of anyone who admits to their texting addiction. Followed by: I don’t get it. Twitter is a microblogging platform which you update from your phone and receive updates through your phone. You can also update Twitter with special programs, instant messengers, websites, and email. Basically, people choose to follow your updates and you choose to follow the updates of others. When you send a message, all your followers receive it. It is like shouting into a crowded room. Some people use if for vanity/voyeurism/exhibitionism, some use if for marketing/spam/self-promotion, some for utility, some for news and so forth. The possible uses for Twitter continue to be defined as it is truly a new frontier in the electronic wilderness.

Right now Twitter is known for having frequent outages. People are irritated but the simplicity of Twitter puts it ahead of its competitors. The fact that Twitter has a strong community puts it ahead of the other services too. Twitter is going through growing pains and it will overcome the scaling issues. Twitter is well worth the wait!

Today’s Tweetup (a meeting of people who otherwise may only known each other online by their Twitter nick names, like a blogfest) was a lunch at Aubrey’s off of Papermill. Fifteen people attended and we all had a blast. In attendance: @djuggler, @zane_hagy_z11, @knoxgirl75, @mwoodvols, @whodini, @suzytrotta, @cocoholder, @kmberlylauth, @bballentine, @utfcu, @bobmissy07, @ashleystravel, @alanstevens, @mjstone, and @stuboo. Topics ranged from "what’s up (or down) with Twitter?" to careers to funny antidotes. We managed to stay out of politics I think. It was a lot of fun! I look forward to the next.

Update: Every needs to follow @thecadillacman so that he gets the next announcement.

Posted on 5 Comments

Twitter going down in flames

So is Twitter going down in flames or just hitting heavy turbulence? Personally, I think it is just having a rough patch. Shoot, even Jon Stewart mentioned Twitter last night! (although the way he conveyed it and the look on his face was more of "my writers are insisting I reference this but what the hell is it?") That’s practically main stream!

The API is being limited. Twhirl, which has been great since it catches the @ replies that Twitter isn’t showing right now, is useless today due to Twitter pulling back on the API. So with Twitter handicapped (or not responding at all), and Twhirl useless, I feel disconnected from the world. I am having a little trouble remembering just what it was I did before I had my Twitter aha moment (because no one gets Twitter when they first start using it).

Have you given up on Twitter? Not I. Are you using another service permanently or in the meantime? I’m thinking of toying around with Pownce. Just not in love with anything else at the moment and don’t really have time to experiment. I’d say that Twitter is dealing with its growth and after it gets over this spurt things will be much better.

Posted on 2 Comments

Cutting a plugin loose – Goodbye WP-Project

I liked the concept of WP-Project. It’s a WordPress plugin which adds a tab in your dashboard for project management. It was inspired by Basecamp (collaboration piece for project management) and Harvest(er) (a timetracker). Conceptually we like to spend a lot of time in our dashboards so why not do our project management there too? I just didn’t find the plugin robust enough for my needs. And if it was robust enough, I’d be concerned that my database, which already has issues with Spam Karma eating its space, would fillup too quickly. (n.b. The database has a 100MB allocation.) For now, I’m going to try out Zoho’s project management.

Posted on Leave a comment

WordPress Support on IRC is on Freenode

For those looking, WordPress.com support on IRC is on the Freenode servers at #wordpress.com while WordPress.org support is on the Freenode servers at #wordpress. #wordpress.com is primarily WordPress.com developers/employees and staff of Automattic while #wordpress is the open source community.

Posted on 1 Comment

Outlook Dim

I am retiring Outlook as my email client and moving entirely to GMail. I’ve used numerous clients over the years including Fidonet and the other BBS packages (my first email experiences), sendmail at the command line, emacs, cc:Mail, Lotus Notes, Thunderbird, Outlook Express, Outlook, and others I can’t remember. Outlook express isn’t bad if you are simply checking email. If you are doing scheduling, group collaboration, todo lists and the works, then you should be using Outlook (not Express). As much as it goes against my philosophy of "be in control of your content," I think that using an email client and downloading email to your desktop is old school. Collaboration is moving to portals such as BEA’s Plumtree and Microsoft’s SharePoint. Meetings are done online now with Webex, GoToMeeting, Skype (I am djuggler), Adobe’s ConnectNow, and even Microsoft’s instant messenger using ShareView. Communication is being accomplished through instant messengers and in some cases instant messengers are being replaced by services such as Twitter. Text messaging is frequently favored over a voice call as it reduces the urgency of the conversation and can provide additional benefit such as retention of information (if I give you a phone number via voice you have to memorize it or write it down..in a text message the number is stored). I can make argument that email is in its death bed. Much like snail mail and fax, it won’t go away completely but is bound to be ignored in favor of better technologies.

The way we communicate is changing rapidly. Video conferencing over mobile phones was promised by AT&T last fall in the Motorola RARZ v3xx and looks to be delivered on July 11, 2008 with the new iPhones will come sooner than later. Collaborative tools are far more powerful than hording information on single machines. And using third party or server tools to store information makes the information portable and available to you from any computer and any location. A couple of decades ago Bill Gates said the personal computer would evolve into a terminal and all software and data would be managed on network connected servers. He was right.

ps. I didn’t forget IMAP but that’s for a different post.

Note: During my transition from Outlook to Gmail I may overlook some email. If you have emailed me and been ignored, please resend your message as I am having to adjust some email habits in light of the different way Gmail handles email.

Posted on 1 Comment

Knoxville is on the map!

Google has updated Streetviews to include Knoxville and 36 other new places. Pictures were taken around October. Expect to see Chattanooga added soon. Read more at KnoxBlab.

I’m a little disappointed at the zoomed in views. They seem intentionally blurred. I guess Google is trying to avoid those incidental upskirts (okay, that’s a thong showing not an upskirt), revealing marijuana plants, and preemptively avoiding privacy complaints of people claiming the car looked in their windows.

Things that will no longer be seen in Street View are:

Hi-resolution imagery
People’s faces
Previous Street Views of hi-resolution Street View.

Those things were giving Google lots of trouble, so all imagery is now lower resolution.

[Source, StreetViewFun]

That’s a shame. I hope the complainers are happy now. I really liked the high resolution zooms and Google had a process for fixing any "embarrassing" captures. I feel like the end-product is a little devalued now.

Update: John McNair says the servers are pretty loaded right now.

Posted on Leave a comment

Today’s Technical Challenge

I like the semantic web. That means that when I create a website I use markup as its intended. We used to have to use tables to make elegant layouts. Browsers have matured and become more compliant to the HTML specification. Now tables can be used for tabular data; however, designers still have tools which cut and slice designs up into tables rather than using CSS. Tables have their place in HTML. Specifically, tables use be used for presenting tabular data but not for arranging graphics or chopped up pieces of images in the browser window.

Menus and navigation are lists semantically speaking. Of course, no one wants to see a menu with a bunch of dots beside it nor should ever menu be presented as a vertical list with indentions for submenus. Using CSS we can remove the bullets, turn the list horizontal, and make the submenus appear as submenus when the mouse rolls over the navigation. This works great in a browser and because of the semantic nature will present well in a pda, phone or other mobile device. However, the WYSIWYG editor in an email client wreaks havoc on the page. "Huh?" is the correct response because really web pages, particularly dynamic web pages, should not be sent by email. Instead a link to the web page should be sent. BUT Internet Explorer is kind enough to provide under its FILE menu (PAGE menu in IE7) an option to "Send Page by Email" which in theory will deliver an HTML email that is an exact representation of the web page.

In reality, in a specific case which has not been narrowed down yet, the CSS menu is rendered with conditional comments.

<!–[if !supportLists]–>o<!–[endif]–>

Obvious steps have been to make sure that IE is upgraded to IE7 and that the email client is updated. And to confirm that the email is being sent as HTML and not plain text. Aside from returning to a tabled design, what other options should be explored?