Saturday, 14 August 2010

Delphi XE is Coming

Filed under: Programming — Jan Goyvaerts @ 16:07

The successor of Delphi 2010 will be called Delphi XE rather than Delphi 2011. The first of three sneak previews is now available on Embarcadero’s website. If the video doesn’t play smoothly, try watching it on YouTube.

Embarcadero acquired Delphi and the other Borland developer tools in 2008. Borland itself has since been completely sold of and no longer exists as a company. It seems that Embarcadero is now working on integrating Delphi and the other Borland products into their own product lines.

Embarcadero sells a wide range of database management applications. Previously these tools were sold separately for each database platform. Now these tools can be purchased as one package supporting all databases that the tools are availble for. These cross-database editions are sold under the XE moniker. Delphi has always supported a wide range of databases. In that respect it fits within the XE toolsets. So you could say that XE stands for “cross-platform Embarcadero-style”, where a platform is a database platform rather than an operating system platform.

Embarcadero has also published a new roadmap for Delphi. Project “Fulcrum” on the roadmap is the codename of Delphi XE. Support for Win64, OSX, and Linux remains on the roadmap, in that order. So it’s safe to assume Delphi XE will be Win32-only, as Delphi has been since version 2 back in 1996.

Friday, 13 August 2010

Which Browsers to Support in 2010

Filed under: Just Great Software,Cyberspace — Jan Goyvaerts @ 11:37

When redesigning a web site, one of the first considerations is which browsers the new design should support. When dealing with an existing site, the best way to find out is to check your web logs.

Though there are plenty of dedicated web log analyzers out there, I tend to use PowerGREP to analyze our web logs. It’s all part of our strategy of “eating our own dog food” as much as we can. You can use the trial version to run the PowerGREP actions linked to below.

First I used buynowbrowsers.pga to get a list of all browsers used to access the buynow.html page on each of our product sites during the previous month. Since the ultimate goal of the site redesign is to sell more software, I want to look at which browsers are used by people who buy rather than which browsers are used by people who just browse.

I found that 46.4% use Firefox, 43.5% use MSIE, and 9.2% use Chrome. The other browsers in my search (Safari, Opera, Netscape, and Konqueror) had (almost) no hits.

Then I used buynowbrowserversions.pga to run the same search and include version numbers in the results. I found that 96.8% of all Chrome users were using very recent releases. The fact that you can’t disable Chrome’s automatic updates must have something to do with that. 92.6% of the Firefox users were using either version 3.6 (the latest at the time) or 3.5. So I decided to check the new design only using the latest versions of Chrome and Firefox.

The picture was different for MSIE users. IE 6, 7, and 8 accounted for 20.1%, 25.6%, and 53.3% of the MSIE users. Thus 8.8%, 11.2%, and 23.4% of all visitors use MSIE 6, 7, and 8. Though Windows Update delivers new versions of IE, it does not install them automatically. The user has to accept a license agreement. I guess that’s why many people are still using IE 6 even though that browser is now almost a decade old. It was released in 2001.

Given these numbers, and the fact that IE 6 is much less standards-compliant than all the other browsers that showed up in our logs, I decided that the new design should look good on IE 7 and 8 and be usable on IE 6. With “usable” I mean that everything should be readable and navigable, but that the site doesn’t necessarily look pixel perfect.

When all was said and done, it turned out that all these browsers render the new design just fine. Even IE 6 correctly handles the HTML4 (strict) and CSS2. Browser-specific issues only cropped up in the Javascript code that sizes and positions the background image. IE 6 users have to do without the background. IE 6 also doesn’t render transparent PNGs correctly, resulting in unintended shades of blue around the images. The non-transparent parts of the PNGs still show up properly, so this still fits the “usable” bill.

Wednesday, 11 August 2010

New Site Design to Fit Modern Monitors and Browsers

Filed under: Just Great Software — Jan Goyvaerts @ 11:22

Last month I created a new design for just-great-software.com and the releated product sites. The refreshed design was long overdue. Though the content of the Just Great Software product sites was regularly updated as product updates were released, the design hadn’t changed since 2002. 8 years is a long time on the Internet.

The key difference between the old and new designs is that the old design flowed the text to fill up the full browser width, while the new design uses a fixed width. In 2002 common screen resolutions were 800×600, 1024×768, and 1280×1024. With such low resolutions, you want to make sure your site uses all available space. Letting the text flow was good practice back then.

Today “full HD” is all the rage. Common resolutions range from 1280×800 to 1920×1200. If you allow the text on your site to take up the full width, your visitors will end up with extremely long lines if they have their browser maximized on a full HD screen. Such long lines are hard to read.

So I’ve changed the just-great-software.com design to always use the same number of horizontal pixels to display its content. If the browser is narrower, the user will have to scroll. If the browser is wider, the extra space is filled with a background image.

This is common practice today. But there are two things to consider. First, how wide do you make the site’s content? If you make it too wide, users with lower resolution screens have to scroll horizontally, which is very annoying. If you make it too narrow, you’re wasting space that could have been put to use to put more text above the fold (i.e. visible without scrolling down).

I decided a width of 920 pixels is just right. The text still fits even on older 1024×768 screens. More importantly, on the increasingly common 1980×1200 and 1980×1080 resolutions, 920 pixels fits exactly when the browser takes up half the screen and the vertical scroll bar is visible. In Windows 7 you can easily make the browser (or any other window) take up half the screen by holding down the Windows key and then pressing the left or right arrow key. I find this a very comfortable way to browse the web. It keeps the line length manageable on sites that don’t use a fixed width design. I do this with two monitors, so I can have four web pages visible at the same time.

Another important change since 2002 is the way that browsers zoom web pages. In 2002, browsers did not really zoom. They made the font larger or smaller. Images and other graphical elements did not change. This made it difficult to design pixel-perfect web sites. If you style sheets to set the font sizes in pixels, your site looks good, but the user cannot change the font size at all. If you set font sizes using em or percentages, you can’t predict the font size or how the text will flow. If you wanted your users to be able to change the font size, you had little choice but to let the text flow freely instead of designing your site for a specific width (which didn’t scale with the font).

Fortunately, all modern browsers now have real zoom features that scale everything, including images. So using pixel sizes to position and size everything, including text, is the way to go today. If the text is too small or too large, the user can zoom the entire site in our out.