2009/04/23

The Setting Sun

You don't know what you've got, 'till its gone they say.  And I do believe its true.  Although, I've know for over a decade that Sun was the best company.  So many didn't see it that way, but it was so clear to me -- and it got better with every passing year.  Their products ranged far and wide.  The one that pulled me in was Java, but over time you learn about all of the other parts of the stack.  And over time that stack grew.  By the time they added mysql to the mix they had everything from the hardware, OS, the incredible ZFS filesystem, the JVM (and all those languages that it supports), Java, Java EE 5 (which IMO is the best framework ever created) and the mysql database.  To mix this into an enterprise you have the ldap and access manager providing single sign on and a portal.  Simply the most amazing stack, and they give it away to get you going and then offer support (a.k.a. RedHat's business model).  They had everything except good profits for their shareholders.

I believe in the freedom you don't get from Apple and Microsoft.  I also believe in products that have proven themselves.  I believe that there are many answers for the same problem, but some just feel better than others.  For the most part, Sun's solutions felt right.  There were certainly exceptions along the way, which I will not name here, but over time they were always improving them.  Always pushing forward, trying to make things better.  It seems that they were always improving.  Improving their products and improving their stack.  At this point it seemed that they were so far ahead of the competition in what they had put together, you would think that they would have been the monster everyone feared.  But they were not.  Instead this tech that Sun amassed is to be ripped apart for the benefit of others.

And so here lies Sun, sold to make a few dollars per share never to push forward again.  Could it be that they couldn't have survived?  Or was it really just the share holders wanted their money back.  I can't help but think about how many people didn't support them, all those other ways of doing things, their technologies didn't get the respect they deserved.  JavaFX could have been a great UI scripting language, Java EE 5 was a great platform for writing server code, JSF and Ajax worked great together, but now all we are left with is their competitors (free and proprietary alike).  I guess it doesn't really matter, they have been gobbled up by corporate America like everything else.  Their game changing days are over and I see an unsure future unsure ahead after having my path so obvious before me for so long.  It is the end of an era.  As with any end there is a new beginning, a new day, but this dawn will have to go on without the Sun.


R.I.P.
Sun
1982-2009

2008/05/15

First Thoughts On Java One

After attending JavaOne this year, I am more excited about Java then ever -- of course if I wasn't there would have to be something wrong with me or JavaOne. Anyway on to my take on some of the cool new technologies and how I see the current Java Space developing.

First off, I've been telling people for a long time that the best way to develop applications is to create a UI (probably best to use Swing) and have it connect to an app server to offer a consistent view of your data no matter where you run the app. I've also been trying to tell everyone that Java Web Start rocks. Well interestingly enough, this is _exactly_ what people want. Now of course they've given it the fancy name, RIA (Rich Internet Application for those freshly out of a timewarp from 2001).

Now I'm not going to tell you that AJAX applications suck -- in fact quite the opposite. If I have to run an app in a web browser, I really do hope it uses AJAX. However, for running applications, I'd rather them not run inside the web browser at all. In fact I'd like to only need to use the web browser to find the app in the first place. After that, I really don't want to go to my web browser to launch applications. Secondly and more importantly to me... I don't want to have to tie together a bunch of miscellaneous toolkits and custom javascript to make a web browser do what it is not yet meant to do. In addition, since the web browser's applications are, by definition, only available when you are connected to the Internet, I don't want to be limited in that way either. I know what you're thinking, google gears and blah and blah. Do you not see what we're doing? We are getting out the duck tape and the chewing gum and doing everything possible to make the web browser something its not.

In addition, every time I restart my web browser (or it crashes), I don't want all of my applications going down with it. Or if one application crashes, I'd hate for it to take down all of my other applications and the web browser.

Okay enough rants about why I think separate applications are better than everything running in the browser. On to more interesting things... Like synchronization of disconnected distributed applications. Basically this is all about if you have a central repository for all your data, but you want to be able to run in a disconnected mode (think on an airplane or no Starbucks near by :-)) then you want to be able to run in disconnected mode. Well if the data is updated on the server by someone else and you update your local copy, this has to be resolved. In the source code world, we often call this conflict resolution. In the app and data world we are calling this synchronization. Anyway you get the point. I'll save the gory details of this for another time.

So here we have it, great independent apps, data synchronization and a central data respository (it is doing backups and versioning isn't it?).

So what's missing? Oh yeah, a super cool user interface. And that's what most of this Java One was about -- at least for me. There were many other topics (SOA, JPA, new web toolkits, and on and on). But for me, right now I want to make apps that make you say wow (and of course have them connected to the servers, etc, etc...).

This is the type of app (RIA) that I have been focusing on for quite a while and now I'm ready to try to start adding the
"wow" part. Please go check out all of the great information (google: JavaOne). Soon I will be talking about my JavaFX coding experiences as well. For right now I just want to say how cool its bind feature is. Oh yeah, and built in SceneGraphs. I will also be adding SceneGraphs to my code to enable 3D effects to regular swing components (basically put a panel onto the SceneGraph node and do with the node what you will). So much exciting stuff to play with!

Can't wait to add some new applications to my web site. Stay tuned! So I will be adding some more details about the new application development details as I get some time to get into them some more.

Please let me know what you think!





2007/01/08

Okay, so it has been so long and I still haven't published the papers on No Silver Bullet I was talking about. I actually have split it into two papers and have the first one finished, but I want to read it and procrastinate some more. In the mean time, I figured I better put something up here after looking at my friend's website and Blog Chris Lynch Programming. So since I don't have a whole lot to say as of yet, let me start by saying that after reviewing my friends Blog entries (Jan 3rd -> 7th) I think I must try the following:

  • Brain Age
  • MyBrainTrainer.com
  • Sheep Dash!
  • Keep up with Chris' s Progress
  • Work on my hand eye coordination and work on parts of my brain that don't function very well (both of these can be accomplished using the 17 button two joystick Sixaxis controller for the PS3). I think the best tool for this will be Resistance - Fall of Man.

So a big part of my regiment is going to be playing PS3 games. That is pretty darned exciting I must say. Another thing is playing the Brain Age types of games, which for me is going to include
weboggle (google it), and Lemmings (PS3). Of course I will continue my work with Web Services, Java SE 5, Java EE 5, and Java ME.

I will also continue to look for the best available phone/PDA combo. My current criteria are:
  • Linux
  • Java
  • Qwerty Keyboard
  • High speed connectivity in my Area
  • GPS


Not sure if this qualifies me for the Enhance-athon...



2006/10/21

Welcome

I have just created my account and am getting ready to post a response to some information I have recently read about the famous "No Silver Bullet" article. Please come back soon!