Emilio Suarez's WebLog

Tuesday, January 26, 2010

Apple's latest creation

What a best way to start blogging on this 2010 than to share some thoughts on the upcoming "Come see our latest creation" event from Apple.
Of course, as an Apple user and consumer of its products I am intrigued about what Apple has under its sleeve, but what amazes me most, is the amount of press and buzz that this unannounced product has generated in the tech community and beyond. It is amazing the amount of free marketing that Apple gets and Apple has not said a word about it... until yesterday that Steve Jobs (unlike him) revealed his excitement about new products coming down this year. From Techcrunch: In Apple’s press release for its strong Q1 2010 earnings, Jobs said the following: “The new products we are planning to release this year are very strong, starting this week with a major new product that we’re really excited about.”
And some people quote him as saying "this is the most important thing I've ever done".
Macrumors has a nice summary of other products that have been rumored for a very long time until they are real, and Engadget has an extremely detailed article on the rumor timeline.

When the iPhone debuted in 2007, I immediately grasped how this was a "game changer" and it was the best product introduction by Steve Jobs in a keynote. I remember that he even had some members of his family in front row seats to be witness of history in the making. I sure hope that this time Apple surprises us, yet again, with a "game changer" product that will open the doors of innovation and make us "think different"... yet again.

Steve, I'm looking forward to your presentation...

Tuesday, August 11, 2009

VMware to acquire SpringSource

Wow, when I read that headline I scratched my head... what? how is this possible? where did this come from?
I have been a user of VMware workstation since version 1. I have maintained virtual machines of Windows95, WindowsNT since the early days and I currently use VMware fusion on my Mac running gOs, Ubuntu, WindowsXP, Windows7 and more obscure ones.
I have known and used Spring since it was unveiled in Rod Johnson's book Expert One-on-One J2EE Design and Development (Programmer to Programmer) and have used Spring on multiple projects and being a Grails user, I was really pleased when SpringSource acquired Grails.org.

But the integration of an OS platform company with an Application platform company may not be as head-scratching as some think.

After thinking for a while... I think it starts to make a lot of sense...

  • First, in the press release, they mention that the main reason behind this acquisition was: “The combination of SpringSource and VMware capitalizes on this shift and places us right at the intersection of the most important forces in the software market today – virtualization, modern application frameworks and cloud computing.”. This is a very interesting point. I think that this is going to position VMware in a strong position for a future that is going to be shaken by Google Chrome OS. And a present that is currently shifting towards more cloud-based applications than before.
  • Second, this changes the competitor scene. If Microsoft was the competitor before, now it is going to the IBMs and the Oracles, including possibly Google with it's Chrome OS, App Engine, and all the Google Code (guice, GWT, wave, Data, etc)
  • Third, this is a great opportunity for the SpringSource folks to build really amazing things. When you have access to a virtualized platform, your Application infrastructure can become easier to install, use, port, deploy, etc. If Spring and Grails gave you a powerful development application framework, imagine that coupled with a virtualized OS platform... what about a new OS ready for the cloud?

It is going to be interesting to see what happens in the next few months, maybe years... I hope VMware can retain the talent they got from SpringSource and I hope Spring and more importantly Grails can grow faster, with more features, better performance and more documentation ;-)

Congratulations to the SpringSource team!

Thursday, September 11, 2008

JIRA personal license

I have used JIRA in the past and I consider it the best issue/bug tracking system... and now, they released the latest version 3.13 with the option to install it with a personal license.

I already have my personal license for Confluence and this is a great addition to my set of personal productivity tools... thanks Atlassian!

Wednesday, September 10, 2008

iPod Touch 2.1... thanks Apple!

Finally... the 2.1 firmware update for the iPod Touch fixes a number of "big" problems that the 2.0 version introduced:

  • Backup time in my iPod with about 40 applications went down from 8 hours to 1 minute... (something was really wrong before...)
  • Updating application is "a lot" faster
  • Updated applications retain their position instead of being repositioned to the end
  • Applications don't "hang" the iPod anymore (so far...)
and there are also a number of improvements including the Genius button while playing songs, and also a really good one: The podcasts list now displays how much time left you have on the ones you haven't finished hearing... this is great for the long podcasts I listen to (TWIT, BOL) which takes me several sessions to complete.

All in all, a very needed updated, specially for the backup issue... thanks Apple!

Tuesday, September 02, 2008

Google Chrome

What a surprise to find out over the Labor Day weekend that Google is finally releasing its long-rumored Web Browser: Chrome.

Google has many interesting projects... some make it and some fail... but in general one can see that most of their applications are designed to be run "in the cloud", and all those applications rely heavily in Javascript for the UI interactions... not Flash, not Flex, not Silverlight... so it was just a matter of time for Google to create the ultimate application that finally will tie all those applications and give them an extraordinary boost.

As they mention in the Comic book released for its launch, there are strong architecture differences between Chrome and the rest of the browsers:
  • it creates multiple processes instead of multiple pages/sites in one process
  • it provides a task manager for all its internal processes
  • it has a completely rewritten Javascript engine (V8)
  • it is built on top of the WebKit engine (the same that Safari uses)
  • a more streamlined UI with Tabs taking a primary role in the browser. Tabs become processes.
  • The "Omnibox" is the URL field for each tab and has more than "google suggest" and "auto-completions" features.
  • "Incognito" mode... browser without leaving a trail.
  • a better "sandbox" to improve security
  • Google Gears already built-in.
  • it is completely Open Source.
... still waiting for the Google Chrome download link to appear...

* Update * The link is live now... download Google Chrome here!

Wednesday, July 23, 2008

The Dojo Toolkit

It's been a few weeks now that I have started learning Dojo and building a prototype for a web app and I have to say that I am impressed with the toolkit and how well it is architected.
To get me started, I started reading the book "Dojo: The Definitive Guide" from O'Reilly on my Safari bookshelf, and also ordered the print copy of the brand new "Mastering Dojo" from the Pragmatic Programmers.

The O'Reilly book is good, and it explains the basics of the Dojo Core components and the Dijit library of widgets. It does not go into any of the Dojox components that are still being worked on and are in various stages of maturity. But in general is a very comprehensive guide to everything you need to get started with Dojo.

On the other hand, "Mastering Dojo" goes deeper into the architecture of Dojo and how things work together. It even has a good section at the end where you build a simple RIA using all the components, widgets, layouts and connectors that you would use for building a complete application.

In general there is a steep learning curve to understand how to use all the things that Dojo provides, but once you start learning all of them, you get the full power of Dojo, which mainly hides all the complexities inherent to dealing with multiple browsers, asynchronous communications, component manipulation and object oriented programming in Javascript.
Another big thing that Dojo contributes, I think, is the open and extensible architecture that takes in consideration advances and changes to browsers and standards in the future, so that applications built now, can make use of the new features of the next generation of browsers with minimal impact.

I am still working my way learning it and exploring it, but so far, I am fairly confident that choosing Dojo was the right decision for building the next generation of web applications in my current job. There has been an explosion of Ajax-related libraries and frameworks in the last few years and I think Dojo is leading the pack with a very strong foundation.

Friday, May 30, 2008

RIA Technologies

"Rich Internet Applications" (RIA) are the current standard when in comes to developing a highly interactive web application and usually when people mention RIA, they imply Ajax. I named this post "RIA Technologies" because not everything that implements a rich user experience is based in Ajax technologies... but here I'll explore which technologies make more sense for the project that I am working on now, which requires the development of a browser-based monitoring application, which we want it to be extremely user-friendly, interactive and intuitive.

So I took a quick look at what are the current technologies leading the pack in the RIA world:
  • Dojo - a very powerful framework built
  • prototype - a low-level and very powerful Javascript foundation
  • scriptaculous - provides very slick animation, drag and drop and other features
  • Google Web Toolkit GWT - a Java-to-Javascript compiler that has the backing and support of Google
  • Google Gears - the offline engine for web applications that powers Google Reader and more
  • Flex and Air - Adobe's answer to RIA = Flash applications, with a powerful offline engine
  • OpenLaszlo - competitor to Flex which has a strong following
  • Yahoo User Interface YUI Library - set of utilities and controls for building UI widgets
  • JavaFX - Sun's and Java's response to Ajax: neither Javascript nor Flash...
  • Silverlight - Microsoft's RIA platform
  • and many more...
There are also a number of books, blogs and conferences that are talking Ajax and Web 2.0 which seems to be very popular lately.

Blogs:
Books:
Conferences:
In the last few years, the explosion on things related to Ajax, Web 2.0 and RIAs has been phenomenal... as AjaxWorld Magazine predicts... 2008 is the decision year for RIAs.

As with any other technology, you'll have to use the right tool for the job. Some applications will benefit from a Flash-based UI, where charts and animation are more important (marketing sites), where other applications that need more user interaction and data entry may benefit more from using an Ajax-based framework.

What will I end up using? that's the question... but Dojo is at the top of my list for a reason ;-)