- InfoQ: Does TDD Really Ensure Quality? – Our main result is that Test-First programmers write more tests per unit of programming effort. In turn, a higher number of tests lead to proportionally higher levels of productivity. Thus through a chain effect, Test-First appears to improve productivity
- InfoQ: “Can I call you back about that?” Building Asynchronous Services using Service Component Architecture – This article discusses the need for asynchronous services when you build an application using a service-oriented architecture. Building asynchronous services can get complicated, but is made straightforward using Service Component Architecture (SCA).
- InfoQ: Case Study: Applying Java Programming Skill to Flex – In an article published on Adobe Flex Developer Center, Bill Bejeck shares his experience creating components and enforcing separation of concerns with Flex, from a Java developer’s perspective.
- InfoQ: Kent Beck on Implementation Patterns – Kent Beck is interviewed about his new book, "Implementation patterns", the relationship between these patterns and XP, problems when adopting agile and the current status of design patterns.
- Enterprise Java Community: Introducing Apache Wicket – When you’re learning a new framework, it’s helpful to gain an understanding of the terms concepts, then move on to how the pieces come together. Wicket has a few core concepts to master, but once you understand them, you’ll find Wicket much more accessibl
- SpringSource Team Blog » Spring Overtakes EJB as a Skills Requirement – Job listings are a good indicator of the true adoption of technologies. Sometimes these trends can have dramatic implications. Indeed.com shows that in November, 2007, Spring overtook EJB as a skills requirement for Java job listings.
- InfoQ: Flex Load Testing Tool Available to Enterprise RIA application – As InfoQ reported (Forester report), RIA is proliferating in enterprise information workplaces. One of challenges faces a maturing development platform for developing mission critical systems is to produce quality, scalable and well tested applications.
- » Printable Design Patterns Quick Reference Cards – The Gang of Four design patterns have been elegantly distilled into a quick reference guide suitable for printing on 8.5 x 11.
- Merging and branching in Subversion 1.5 – Java World – Branching and merging are two inherently related functions that are due for a long-awaited upgrade in Subversion 1.5
My brother was visiting this past weekend and so instead of us spending quality time together, I decided to upgrade my computer from Windows XP to Windows Vista. Here are some of my initial thoughts that I’ll try to break down in the good, the bad and the ugly. And boy there is still some ugliness that I hope Microsoft (and partners) solves soon. (Full disclosure – My brother works for Microsoft). Going back to my brother for a second, we are both true geeks at heart and so quality time for us is being locked up in my office with lots of coffee, 4 computers and 8 USB external drives humming away.
The install of Windows Vista RTM was on my new DELL dual-core 3.2 GHz PC with 2 GB of RAM and 256MB PCI Express ATI Radeon X600 video card. (Full specs on the hardware). Instead of choosing a clean and fresh install, I decided to opt for the ‘in place upgrade’ which replaces the Windows XP system/core files while retaining your existing applications, personal files and settings. I should also note that I installed the Ultimate version of Windows Vista.
There are a lot of really good things about Vista – The first and most striking difference between XP and Vista is Aero and the translucent effect of Aero Glass. Aero Glass is the eye-candy in Vista that fades in/out windows with smooth animation and does create a really nice visual effect. I’m sure the Mac OSX folks will jump in and say that OSX does this already and I think OSX does do this today and has done this for many years already. My brother is very impressed with the sidebar that allows you to drop in widgets or gadgets in Microsoft speak on your desktop. Having used Yahoo Widgets for a while now, this is nothing new to me and didn’t get me excited. I like the idea that Windows will now have a widget engine and this will hopefully allow people to create some interesting applications. I see a huge potential for this on the Enterprise side where a widget or gadget sitting on a user’s desktop could ping out and get the latest news, updates, prices, promotions, alerts, etc.
The other thing that’s worth mentioning is that installation process. With the exception of McAfee virus scan which I’ll describe in detail in the ‘bad’ section, the installation was very smooth. Once the install was off and running, it churned for about 80-90 minutes to get Vista installed and this included a couple of reboots.
I should also mention that the application that I really cared about worked just fine. It will probably take me days to make sure all or most of my applications are working correctly under Vista but the apps I use the most are Firefox, IntelliJ IDEA, FeedDemon, Putty, Java, WebLogic, Tomcat, Glassfish and UltraEdit and they all worked. The only app that I’ve had major problems with is iTunes and more on that later.
Another cool and I think innovate feature of Vista is the idea of ReadyBoost. ReadyBoost helps make your PCs more responsive by using flash memory devices (like USB thumb drives or CF/SD cards) to boost performance instead of swapping to disk. Hopefully new PC will start shipping with the new hybrid hard disks that have integrated flash memory to help improve performance, reliability, and battery-life in case of an laptop. The idea of using flash memory instead of swapping to disk is really cool and I hope other OS’s take this feature from Windows and implement it themselves.
The last item on the good-list is the Windows Media Center application. The Windows XP Media Center was slow and ugly but did the job and the new Media Center app is significantly faster than the old XP version and seems to perform a lot better. It’s still interesting to see how CPU intensive Media Center still is where the dual-core as at 70-80% utilization pretty much all the time while I am watching Live TV.
While it’s only been about 2 days since I’ve had the RTM version of Vista on my computer, there are quite a few things I don’t like about Vista. I know Joel talked about the shutdown button and so I won’t bother with that but there are a lot of really annoying things about Vista. I know – A lot of you are probably shaking your heads thinking I’m probably one of those guys that doesn’t like change. Quite the contrary – I love change, but only if it’s for the better. For example, the latest version of Office will have the new ‘ribbon’ interface and I absolutely love that interface. It took me a couple of hours to feel comfortable with the ribbon and find the things that I actually needed to do but I commend Microsoft for taking this bold move and creating a really sensible and usable user interface. There are a lot of things that I wouldn’t have changed with Vista and maybe I’ll learn to love them with time but I just hate the new start menu. While it’s nice that I can search for ‘word’ to have it bring up Microsoft Word, I would like to be able to just see the menu and sort/arrange in a way that makes sense to me.
Another thing that I also completely hate is the new Windows Explorer and the Navigation Pane. What happened to My Documents and My Pictures and My Videos? I don’t know what genius made this decision but instead of storing user profile information under ‘C:Documents and Settings’, Microsoft decided to move that to C:Users. Why the hell would you do that? What about applications that are using the ‘C:Documents and Settings’ structure and now that whole directory is gone and now applications that rely on that or use hard coded paths will certainly break. Case in point – iTunes. I have about 50 GB of music under iTunes with a majority of it being music that I’ve personally ripped as MP3 over the last many years and probably 300-400 songs that I’ve purchased from iTunes. I had all my music under ‘C:Documents and settingsloginMy DocumentsMy Music’ and so the iTunes database had that path internally. Hopefully applications would use the registry and so the soft reference to ‘My Music’ would travel to the new location but apparently iTunes doesn’t do that and all of my purchased music wouldn’t play. So I reauthorized my computer and it still wouldn’t work. I’ve been playing with it for a couple of hours and I’ve made the problem worse as I’ve managed to create 2 copies of every song in my library. Thank god for backups.
I guess I am careful when it comes to my computer and so I have the McAfee suite of products and I typically only use the VirusScan and Firewall features of the suite. But the Vista installer wouldn’t run till I uninstalled McAfee. Now I’ve been reading a lot of new kernel security in Vista and the new PatchGuard technology built into 64-bit Vista that will not allow any third-party tool from making Windows API calls in order to modify their behavior or do something malicious. So I had to uninstall McAfee to even install Vista and that doesn’t give me a good feeling. I don’t like running with a memory resident virus scan program running at all times – Having a good virus scan gives me the license to download any piece of crap I see on the Internet and installing it. The installer didn’t give me any help by pointing out a list of other supported virus scan programs that are approved to work with Vista. After the install, I was able to go to McAfee’s site and download a new version of the software that worked under Vista.
I have a major problem with the idea of User Account Control and the false sense of security people are going to get from consenting to actions that require additional access. In the first two hours, I had 15 of these popup asking me things like can the firewall run and block something and unblock something. I paid attention for a while but then was tempted to turn off the feature or just click ok. So how is someone like my dad who loves his computer he is not computer savvy enough to understand the question he is being asked or the function he is consenting to by clicking ok. I know this is a tough problem to solve instead of just locking out the user while allowing them to install software, control the computer but other OS’s have this figured out.
The last item that fell in the ugly-section was Vista Office. After Vista was installed and working. I decided to install the latest version of Office. Much to my disappointment, the Office installer was not able to upgrade my copy of Office 2003 because of some file permission issue. I re-ran the installer a few times to no avail – I know uninstall/reinstall is cleaner and better than upgrade but upgrade should work and I could not get Office to install of my Vista PC. Go figure.
In conclusion, Vista does have quite a few compelling features that will make this a required upgrade for pretty much everyone. But I wonder if Microsoft would have been better by taking the BSD or Linux core and adding their UI on top of a working UNIX kernel? Mac’s have certainly gotten that to work and Microsoft could have done that instead of writing the whole OS from scratch or borrowing some of the XP code, which came from Windows 2000, which probably came from NT which probably came from Dave Culter and Digital. Yikes