August 16th, 2007
For the last couple of months I’ve been working on Windows as my main desktop during the workday (not my personal choice, but I can live with it.), and that’s caused me to notice a few things I haven’t noticed before, especially in contrast to the Mac style of managing windows. I’ve task switched between Mac and Windows before–for several years in the late 90s I did all my development and book writing on Windows and all my e-mail and Internet on the Mac–but this is the first time I’ve had the chance to compare the two environments with multiple monitors, and that’s made some difference in my take on matters. Practices that work well on a single monitor system don’t work as well on multimonitor system and vice versa. After playing with this for a while, I’m starting to think that the Windows approach works better for multiple, small monitors and the Mac approach works better for a single, widescreen monitor.
To summarize, here are the critical differences between the two platforms. These are worth keeping in mind when you’re designing a cross-platform application such as Firefox or Limewire, or any web site.
Read the rest of this entry »
Posted in Macs, User Interface | 17 Comments »
August 15th, 2007
The call for papers for Software Development 2008 West is now live. What follows are abstracts for some talks that I am not giving, but that I very much hope someone else will present. If anyone feels like submitting one of these under their own name, I’ll champion it when the advisory board goes over the submissions.
Intro to Ruby
Ruby is the fastest growing programming language of the new millennium. Through interactive exercises, this full day, hands on tutorial will bring programmers from zero to sixty with the language including:
- Control structures
- Strings and Regular Expressions
- Formatted Output
- Arrays and Hashes
- Math
- Objects and classes
- Closures
- Files
- Network Programming
Read the rest of this entry »
Posted in Programming | 5 Comments »
August 13th, 2007
I’ve recently been asked by several people to summarize the state of native XML databases for those interested in exploring this space. IMHO, native XML databases are now roughly where relational databases were circa 1994: solid, proven technology that gets the job done but only if you pay big bucks to do it. However, there’s some promising open source activity on the horizon. To be brief, there are roughly four (maybe five) choices to consider:
- Mark Logic
- eXist
- DB2 9
- Berkeley DB XML
Read the rest of this entry »
Posted in XML | 43 Comments »
July 23rd, 2007
I now know what the specs for the next, ultra-portable MacBook are going to be. Look for:
- 32GB solid state drive
- Intel Core 2 Duo Ultra Low Voltage chip running at 1.2GHz
- 1-2 GB RAM
- 802.11a, b and g wireless; built-in Ethernet
- Carbon fiber case
- 276 x 199 x 29mm
- 1.15 kg
- 11.1 inch screen 1,366 x 768 pixels
- Integrated webcam
- Integrated Dual-layer DVD writer
- USB 2 and Firewire
- 6 hour battery life
- Price (the number I’m least certain of) $2995
No, I don’t have any inside information. These are actually the specs for the new Sony Vaio VGN-TZ12VN (except for the price). Sony’s the only manufacturer that really competes with Apple in the “cool laptop” space; and Apple is not going to let them win.
Read the rest of this entry »
Posted in Macs | 9 Comments »
July 21st, 2007
Perhaps the continuing confusion over the difference between checked and runtime exceptions in Java is because we haven’t named them properly. Mosts texts and teachers, including myself, have traditionally focused on how and when you handle the exceptions (compile time or runtime) rather than on what causes each. I propose a modification, not in code, but in terminology and teaching. Specifically I think we should should start calling checked exceptions “external exceptions” and runtime exceptions “internal exceptions”.
Read the rest of this entry »
Posted in Java | 35 Comments »