Always Get Better

Archive for December, 2008

Looking Out My Back Door 2008

Wednesday, December 31st, 2008

Good-bye 2008, you have been good to me. Over the course of the past 12 months I have learned a great deal about who I am and what I can accomplish, leaving me in fine form to hit the ground running in 2009.

Thank you for taking the time to visit my little piece of cyberspace and commenting on some of what I wrote. The discussions were always respectful and informative; there are a lot of smart people riding the intertubes.

I’d like to take a moment now to stop and reflect on the last 12 months before starting the New Year.

I started this blog early in January, and skipped all formalities by jumping into a discussion about difficulties I had been experiencing with Google. I still think that was a good choice – I want to avoid making a big deal about this blog (except for occasional posts like this one, obviously) and starting off with the solution to a problem I had been facing was the perfect way to start splashing in the blogosphere. For the remainder of the month I discussed solutions in ASP.NET and the joys of working from home, both subjects which I had a great deal of experience with being simultaneously a full-time student and a full-time programmer.

My studies shifted to bizarre Java tricks and database connection tips in February, yielding one of my more popular articles about correctly using the memory management capabilities in C# to properly control database connections in ASP.NET. I am particularly proud of that article because it represented a step forward for me in the way I am able to communicate my ideas, not to mention it solved some of the more frustrating programming problems I had been having at the time.

In March my writing took a bit of an ironic tone, starting with my discovery of Google’s “bad page” warning. My writing suffered as I was unfortunately busy with everything from moving into a new home, to end-of-year college projects, to a massive assignment at work, and launching a second blog. As a result Always Get Better stagnated slightly, however the traffic continued to grow.

April saw a return to writing about useful tech tips and obscure programming knowledge. I also wrote the blog’s most popular article to date about methods for closing forms in C#; it still generates confusion and misunderstanding so I may revisit the concept in a more detailed article in the New Year. SQL tricks and platform differences were a big deal as well and will continue to be moving forward since I absolutely love SQL.

I realized that perfection was not a destination but rather a road to be followed halfway through the year and as a consequence started to take myself less seriously. My biggest time waster in May was in finding solutions to simple ASP.NET problems so I made more effort to publish those as I went along.

June was another bad month for blog posts. I only ended up posting a single token snippet referencing parse optimization in SQL on the final day of the month. Lame.

July was an incredibly busy month at work but I managed to post while I went through the pain of switching to Vista

The stress of July led me to reminisce about the time I once wasted playing MUDs. August was a month of ASP.NET issues, Internet Explorer oddities, and a positive change in my thinking about the future of this blog.

In September I had a paradigm shift in my perception of Flash as a programming platform with the discovery of Flex Builder 3. I have learned so much about this tool since those early days and am eager to share some of the knowledge I gained in a series of upcoming posts.

The lights went out on Always Get Better in October. This was a dark month for a number of reasons but I can’t make any excuses for not posting at all. One thing I did realize during this month was the need to back off some of my other projects and focus more energy on my writing online. By this time next year I hope to be earning enough from my blogs that I can afford to spend a greater portion of my time working with them.

November was a month of Flex, Adobe woes, a change in providers, Drupal databases, Drupal layout, and Drupal administration. I launched a second blog – this time politically-related – with help from my brother which has taken off at an alarming rate.

This month was the real eye-opener for me. With so many feeds and connections opened up to me, I feel as though I am watching the recession unfold in slow motion; but I don’t necessarily feel any more informed. Blogs often feel like the same news regurgitated and wrapped in commentary which is a great way to form opinions on issues but not necessarily a great way to understand the complexities of those issues. In my own work, I hope to teach as much as to give opinion – I leave the real journalism to the journalists and pillars of media like the New York Times. Although they claim to have a leaky boat I think they will weather these rocky waters just fine and be prouder for it.

2009 and Beyond
I am endlessly optimistic about the new year and experiences it will bring. I will do my best to make this blog better and will continue the network-building activities I have started this year. My greatest failure in 2008 was not promoting this site very much – in the New Year I will get the word out. Hopefully the items I write will be of use to someone out there. With any luck they might even pop a note in the comments to let me know I was able to do a decent job.

Thank you for sticking with me through this year, and I look forward to an interesting New Year!

People Cost More Than Equipment

Tuesday, December 30th, 2008

Much of the professional world has switched over to a two-monitor setup. I can’t even begin to imagine how I ever did with just one since I am now so used to having a help or a search open just outside of my main viewing area. Having reference material in my peripheral vision but accessible just by turning my head is much faster and less disruptive than having the fumble around the task bar and switch the focus of my attention.

It is said that switching tasks takes time – some users report productivity reductions of up to 15 minutes each time they have to change their focus of attention. If a programmer has to look at the documentation only once per day, their employer is looking at 1.25 hours of lost productivity every week, which may not seem like much but when extrapolated to that person’s yearly wage (averaging at $78k) the cost of the lost productivity is worth approximately $2400; much cheaper to buy that $500 monitor. For the general programmer, you can get by with less – a 17-inch LCD retails for less than $200. Sounds like a no-brainer, right?

The same logic can be applied to the purchase of an entire system. What is the productivity cost of having to wait for downloads and load times over the cost of a new system? Even if no new revenue is generated by the company directly as a result of the software or hardware purchase it can be worthwhile to invest in new equipment. Why hire someone and not provide them with the best tools possible to do their job? It’s kind of like putting a Mazda engine inside a Ford (wait a minute…)

  • improved satisifaction
  • reduced ‘switching’ time
  • employees more knowledgable with ‘current/cutting edge’ software

There was a time in the early industrial revolution when buying equipment and machinery was prohibitively expensive, and people could be trained to keep old hardware running for many years in order to maximize that equipment’s value to the company.

Today the reverse is true – computer hardware can be acquired at a fraction of a cost of the person needed to run it – and the training involved in having someone fill the shoes of a departed worker can be crippling to the bottom line of a business. Instead of trying to make machines last as long as possible it should be the priority of any manager to make the people last as long as possible. In a world where individual jobs are replaceable and just a stepping stone to “something better”, volumes are said by the simple act of someone staying in their role for a prolonged amount of time – both about the worker and about the quality of the employer they give their time for.

Lenovo Thinkpad Laptop Boasts Second Screen

Saturday, December 20th, 2008

Switching to a dual monitor setup has been the major paradigm shift in my productivity. The size of the second screen doesn’t matter a great deal to me because it only typically holds reference manuals and programming API documentation.

For my needs, the Lenovo W700ds Thinkpad sounds like the ideal solution. I practically drool at the thought of haivng almost 1TB storage space, 8GB ram and a Quad core processor. The really interesting feature of this laptop is the 10″ second screen that pulls out of the side. That’s right – a dual screen laptop.

There is a price to pay for all that goodness: the thing is a brick, weighing in at 11lbs. Compare that to a much larger item like a guitar, which typically weighs 8-12lbs. The design is ugly – the second screen slides out from the side of the machine and could seriously use some Apple-esque style sensibilities.

Love My Chrome

Friday, December 19th, 2008

Having worked with Online Applications for a number of years, I am rarely happy to be introduced to a new web browser. A new web browser means another test case – every line of code has to be verified against all of the major browsers before going into production. Another browser means new faults to watch for and program around, which translates to longer time to market. When I first heard about Google Chrome I thought to myself “great. Here we go again.”

As far as actually using the thing, it took a long time. My preference has been Firefox for quite some time and although I have flirted with other browsers I always found myself preferring the usability of the software Mozilla’s team has put together for us. So when Chrome first came across my desk I didn’t invest much time into trying out its features. What a mistake!

Over the past couple of weeks I have found myself moving over to Chrome. After I got over the absence of the usual interface I began to relax; as it turns out, you don’t need a lot of buttons to navigate the World Wide Web. Google has once again simplified common usage patterns down to tasks that anticipate what you intend to accomplish and hide unneeded options.

Most Visited Sites
The handiest feature by far is the grid of most visited sites that greets you when you create a new tab. I will never again have to type the url to access my mail and analytics.

Draggable Tabs
On Firefox I often found myself wanting to create separate windows for specific tabs. I’d have to copy and paste the url into a new instance. With Chrome I just grab the tab and rip it out of the pane – presto chango – new window! I can even drag tabs between windows to create and destroy Chrome instances as desired. Very useful.

Basically, Firefox has been relegated to online banking. My new weapon of choice is Google Chrome, and for the time being I doubt I will be looking back. The download manager could stand to be updated, but otherwise it is a slick and mature product.

Gmail for Company Mail

Tuesday, December 9th, 2008

Even though it is a search engine, Google has done a fantastic job delivering a bewildering array of services over the past several years. Between its Android platform, Office Suite, Mail Services, Blog Hosting and Video acquisition, there is no field untouched by Google’s reach. Today I want to talk a little about my experience using Gmail for corporate email.

I suspect many readers are familiar with the GMail interface – that sleek AJAX application that kicks the tar out of Outlook in terms of both speed and usability (how do they get their apps to run so fast?). GMail for corporations is a slightly different beast than GMail for individuals. Some differences are:

  • New features are rolled out on GMail for individuals first. Presumably this is to test-drive changes before surprising the corporate users who may actually be paying for the service.
  • GMail corporate uses your company’s DNS name – email addresses take the form of rather than
  • Company-wide documents and email addresses can be automatically shared between existing and new accounts

The Best Things in Life Aren’t Always Free
For the first 100 email accounts, companies are able to use Google’s services for free. That means 7GB of storage for every user, world-class chat and mail functionality, incredible speed, POP and IMAP access, plus a web interface that makes enterprise-level email applications obsolete.

The catch: if you need more than 100 accounts, you need to switch to paid mode, which is $50 annually per user. Of course, an organization larger than 100 employees is likely in a position to absorb the extra $5000+ for email services as part of its operating budget. For a smaller company, $50 per account can be a lot of money – but the free version is fully featured.

External Devices
Any application capable of downloading POP or IMAP mail is able to reetrieve messages from a GMail account. If you need to get your email from more than one program or device take note: GMail ignores ‘leave on server’ and ‘retrive X days of message’. If Device A downloads an email, Device B will not and vice-versa.

The way to correct this is by changing your username to, which will cause GMail to download all email in the last 30 days. Watch out! This will download duplicate email if you already have mail one file before switching to recent mode. Consider yourself warned!

How does Google protect your privacy on GMail? Essentially, it doesn’t. Anything you send through the GMail servers technically becomes property of Google.

What does that mean for the average user? Probably nothing. Email should never be considered a secure medium – a good rule of thumb is: do not send anything you would be embarassed to see on the front page of your local newspaper tomorrow morning.

Google claims they do no cataloguing or data mining on emails within the GMail system. However, they do use context-sensitive advertisements which will appear alongside all mail in your inbox. Some users may be annoyed by the ads but personally I find them to be often interesting; sometimes they are even worth a click!

Use GMail, or Not?
Although it is constantly improved, GMail is a mature and scalable product. Companies with small or non-existent technical staff would do well to trust this critical function to Google rather than to [insert ISP name here] due to the size and credibility Google has made for itself. Technical staff at larger organizations may even welcome the switch – letting someone else manage email issues reduces headache and expense.

Post-Dating Blog Entries in WordPress (or, the Absent-Minded Blogger)

Sunday, December 7th, 2008

WordPress is a great tool; I am looking forward to version 2.7 although I find myself hard-pressed to try to imagine how the WP team is going to improve upon the existing platform. One of my favourite functions of the WordPress software is the ability to post-date entries. Often I will get a burst of inspiration and write four or five articles.  Rather than releasing them all at once I will set them to automatically publish into the future so there is a steady stream of content always appearing on my home page.

Most cream-of-the-crop blogs add 2-3 new entries daily. Always Get Better is certainly not in that category, however I try to post at least once per day. As I am busy with other work and blogs, I don’t necessarily have the time to write a decent article every day (although I do often make the time). Since the content here is not particularly topical, it doesn’t matter too much if it doesn’t go up hot off the press. In fact, by pre-publishing my articles I have a decent opportunity to go back and review what I’ve written which improves the overal quality of my writing.

Some blogs exclusively post content written long ago. I certainly don’t advocate going to that extreme though since a blog that is totally on autopilot risks losing some human connection. As long as the authors review, post and respond to comments in real time I suppose it wouldn’t matter in the long run.

GoToMyPC vs Remote Desktop (RDP)

Thursday, December 4th, 2008

For some time now, I have been using both Remote Desktop (RDP) and GoToMyPC to connect to the various Windows machines I am responsible for. I present here a summary of the differences I have found between the two applications:

The Same
Both GoToMyPC and Remote Desktop support Windows and Mac (my operating systems of choice.

GoToMyPC is a Java-based application, and runs in Windows, Mac and Linux. There have been ports of RDP for Linux but these are not officially supported, so GoToMyPC wins on this point.

GoToMyPC supports drag-and-drop file transferring. I wish RDP did this – RDP can only transfer files if using a Windows XP/2003/Vista version – the Windows 2000 version does not support file transfer at all.

GoToMyPC provides a handy one-stop web-based location for managing computers I am able to connect to. With RDP this is much harder – I must know the addresses of all the computers I manage. This process is much more difficult when dealing with dynamic IPs, although it can be mitigated somewhat by using a service like DynDns.

When RDP is running, my Internet is unaffected. GoToMyPC appears to use a much large amount of bandwidth – Google and Skype chats start to skip when I connect with it. RDP appears to make much more efficient use of bandwidth.

RDP comes with Windows and is free to use. GoToMyPC has a hefty monthly fee which is hard to justify if you are a technical user who is able to keep track of IT inventory and/or control the operating systems in use on the network.

Which one is better?
I see a lot of merit to GoToMyPC and recommend it for clients who are looking for a quick, brainless solution and don’t mind spending the money. My personal preference is for Remote Desktop because it is light-weight and fast. Although, as I mentioned, I really do wish it supported drag-and-drop file transfers.