Saturday, July 24, 2010

Bad Day at the Office

This is for all of you who have ever let a typo or a photoshop error go live or to print:





Reliability
... always upholding the highest standards for every detal.




Martin Luther King Day Rally







This product has been x-rated at point of origin.




Oddee.com

Sunday, July 11, 2010

Ever Wonder About Excel Dates?

I found a blog post that might answer most of your questions.

WAY BACK in 1991

... Later that day, I had some time, so I started working on figuring out if Basic had enough date and time functions to do all the things you could do in Excel.

In most modern programming environments, dates are stored as real numbers. The integer part of the number is the number of days since some agreed-upon date in the past, called the epoch. In Excel, today's date, June 16, 2006, is stored as 38884, counting days where January 1st, 1900 is 1.

I started working through the various date and time functions in Basic and the date and time functions in Excel, trying things out, when I noticed something strange in the Visual Basic documentation: Basic uses December 31, 1899 as the epoch instead of January 1, 1900, but for some reason, today's date was the same in Excel as it was in Basic.

Huh?

I went to find an Excel developer who was old enough to remember why. Ed Fries seemed to know the answer. ... http://www.joelonsoftware.com/items/2006/06/16.html

Friday, July 2, 2010

Do The Simplest Thing

I've read the following again and again. I wish I had come across it 10 years ago. From: xProgramming.com

"The most important rule in our development is always to do the simplest thing that could possibly work. Not the most stupid thing, not something that clearly can't work. But simplicity is the most important contributor to the ability to make rapid progress."

We find that we have to remind ourselves of this rule continually. Developers like to develop, and most of us have years of experience in creating a "general solution" to whatever we're asked for. Real progress against the real problem is maximized if we just work on what the problem really is.

On the contrary, if we know we're going to need something we should build it in while we're building the object the first time. It'll save time.

  • How can it possibly save time to do more rather than less? The best you can hope for is to break even. A little bad luck, and you'll come out behind.
  • When you're thinking about "we're going to need this someday", you're not thinking about "we need this today". You just distracted yourself from your goal. Don't compound the error by chasing tomorrow.
  • Software follows an 80/20 rule: 80 percent of the benefit comes from 20 percent of the work. Find that simplest 20 and do it.
  • Studies show that developers are not really that good at predicting what will be needed. It's better to wait for a real need, and provide for it then.

Smalltalk code is extremely easy to modify. We do not have to design or build for the future. Progress is fastest if we just do what we need to do now: leave the future to the future.

On the contrary, when I'm immersed in a new object, I may see how to do something that will later be more difficult because I won't be up to speed.

  • If the object is so complex that it will be hard to modify later, it is just too complex. Simplify it so that adding new capabilities will be easy, but don't make it even more complex by adding them now.
  • Add commentary describing the key idea. Your mission is to make the fastest progress against what the problem really is, not against what the problem might be or might become.

Wednesday, June 30, 2010

iPad: The Future or Not?

Like millions of others I’ve been wondering about the impact of iPad on the future of the internet and computers. It appears as if Apple has hit a home run, although there are a few caveats regarding its impact. First the positives. The interface is remarkable and it is the first great eReader on the market. Tablets, and especially the iPad, is ending print media (books, magazines and newspapers). We’re seeing technology come to what many of us have been imagining for the past many years. First Wolfram|Alpha came out last year and now the iPad. Combine the two, wait a few years for incremental improvements, and you will have a computer straight out of Star Trek, Minority Report or Avatar.

Now for the caveats.
Tablets, including the iPad, are not designed for heavy-duty data entry. For it to replace laptops keyboard tasks will have to be improved. I don’t think this is much of a problem as it is a simple incremental step to improve the screen keyboard.

The iPad is a mobile device and will take a beating. How durable is it? Will the screen take the punishment without breaking too often.

It’s still too bulky. It needs to fit easily into a pocket and then expand to the necessary size. This will come in time. And sooner than you think. Laugh if you will. When modem speeds increased from 9600 to 14.4 to 28.8 people laughed when I answered the question “How fast is fast enough to load a webpage?” with the answer “As fast as it takes when you’re changing channels on your TV” or “As fast as it takes from flicking on the light switch until you have light.”

I’ve heard many complaints that the iPad doesn’t use any Microsoft products; that you can’t make phone calls, or use it as a camera. If the iPad catches on, which I think it will, those features will be included soon enough and shortly these complaints will be a thing of the past.

I think this is the first tablet that will capture the imagination. I do think that the lack of an external drive is a problem – for the moment.

Monday, June 7, 2010

Designing for a Blackberry

If you're designing for BlackBerrys keep in mind the computing power of the late 1990s. The CPU's in phones such as the BlackBerry are not up par, being the equivalent to about 500MHz, and cannot properly render javascript-enhanced content.

Sunday, May 30, 2010

Google Wave - Is it still there?

Last year Google introduced a new work collaborative application called Google Wave. It seemed an answer to many business people's dreams but it no longer looks as inviting.

Is it because Google launched the product too soon? Is it because non-techies have a hard time with it? - and as all IAs know the ideal software is one in which the users are unaware of, and certainly not frustrated by.

I've experimented with it but NONE of the business users were happy with it and didn't participate. I've heard several others voice the same the thing. No matter how good a product is, if it is not used it isn't useful.

Here's hoping to a comeback. Wave has great potential.

Thursday, May 20, 2010

What is a good bounce rate?

A bounce rate, for those not familiar with the term, is the percentage of users who come to your site and then leave without going to another page. Too many SEOs, and other experts, write articles and give seminars where they say such things as “any bounce rate under 50%” is good,” or that a “30-40% bounce rate is good” and a 50% bounce rate means that you have to work on x, y or z in order to bring your site to the optimal bounce rate percentage.

I don’t think any such generalization can be made. You may have a page for upcoming events and the user went straight there to make certain he had the date and location correct. People may be looking for your phone number, find it on the first shot, and then bounce off. It does not mean that there is anything wrong with your keywords, your site organization, or the way you are presenting information on a page. It means the user found what they were looking for.

Frequent visitors to your site are probably not going to crawl through your site each and every time they come there. They are coming for specific reasons. Often times that will mean that they will get what their looking for on the first page.

Example: you’re looking to find out if your team won or lost last night. You go to nba.com and there is the score on the top of the page. You may not want to go any further. You found your information and you left. The same thing holds true on your website. You could lower the bounce rate by forcing the user to click through a series of pages to find the data they’re looking for (such as hiding your company address or phone number) but that would be counter-productive.

What does this mean? It means that you cannot have a one-size-fits-all approach to bounce rates. If a frequent user comes to your blog he may not click through your site but still be a very satisfied user. Analyzing your bounce rate will have to include thinking about the user – if the user found what he was looking for and bounced off. Great. Don’t dwell on the fact that he didn’t stay longer. The more the user incorporates you into his routine the less he is going to crawl through your site.