Archive for January, 2007

Bruce Eckel On Flash And Flex

Wednesday, January 31st, 2007

I was quite surprised to come across a post by Bruce Eckel, one of the founders of the C++ ISO committee as well as a popular Java author and trainer, essentially evangelizing the use of Flash and Flex to get around UI problems which exist in traditional web applications. I think it’s quite an informative post, and it’s interesting to see a response from one of the main voices in Java land about much of the recent hoopla about how “Java is dead”.

So here’s my question. Allow for a moment the possibility that, after 10 years, Java is not going to take over the world of RIAs. Further allow that Ajax is just “how JavaScript was supposed to work in the first place,” but that the limitations imposed by browsers, HTML and CSS committees seem unlikely to let it expand beyond its current bounds. What are we going to use to build RIAs?

In my own search, I’d really like such a system to solve not just some, but all of my UI problems. If I’m going to go to the trouble of learning it, I don’t want to run into a wall just when I start to develop some speed. That’s happened plenty of times already.

The only obvious solution is Flash. Flash has always been all about cross-platform multimedia experiences and user interfaces. People are very familiar and comfortable with Flash, and it is installed on almost all machines in the world. It’s trusted, stable and reliable.

Apparently we might also see him advocating Flex soon as well:

I believe that to solve the user interface problem, we need the equivalent of a domain-specific language dedicated to the user experience. For me, Flash-based technologies like Flex are the best solution to this problem. (Full disclosure: I’m in the process of working out a consulting contract with Adobe, to help them teach people about Flex. But long before this, I became convinced that Flash, and Flex in particular, was the best solution for the user-interface problem, and I began writing this article long before Adobe expressed interest in my assistance).

That is a pretty interesting tidbit in and of itself. I think having someone like Bruce Eckel behind Flex would be a really great move by Adobe.

My own personal take on the “Java is dead” type stuff is that Java is still going to be around for a long time and is still the language of choice to build enterprise capable services with, or any other application where horizontal scaling, uptime, and a fast, rock solid platform are your primary concerns. I would however certainly look for a different technology to use to build the UI into such a beast.

Adobe Apollo Presented At DEMO 07

Wednesday, January 31st, 2007

Looks like my hunch was right– Adobe presented Apollo at DEMO according to the live blogging of DEMO 07 provided by GigaOM. In case you haven’t heard of Apollo before, Adobe Labs describes it as “a cross-OS runtime that allows developers to leverage their existing web development skills (Flash, Flex, HTML, Ajax) to build and deploy desktop RIA’s”

Unfortunately, it sounds like it’s still a couple of months away before we’ll see it posted to Adobe Labs:

…plan to ship a developer release of the product in the next couple of months

I’ll update this post later with a video of the presentation if/when one surfaces. If you come across one before I post one, let me know and I’ll add it.

UPDATE:

Here is a link to the video of the presentation. Looks like there is not much new here to see if you went to Adobe Max, but still good to see them presenting in front of a receptive audience nonetheless.

A New Adventure For A Serial Startup Junkie

Monday, January 29th, 2007

Well, now that I’ve seen the company I will be working at soon has recently been dugg and is also presenting at DEMO 07 within the next couple of days, it seems like a good time to announce that I’m spending my last days as an Acxiom employee and joining a startup called Me.dium.

I feel like I’ve been in my current position for a long time as most of my tenure here was spent in startup mode until our little but quickly growing company (with a quite a number of name changes through it’s history) was eventually acquired by Acxiom last Summer. It’s had its ups and downs over the years as all positions do, but overall it’s been a positive experience. It does feel a little strange to be moving on, but it is for all of the right reasons. I’ve been here for just a bit over 4 years now and have seen, experienced, and learned many things, but it’s time for a new challenge.

On the contrary, I’m very excited to be joining a very smart group of people at Me.dium in beautiful Boulder, CO as a Java Developer. While I’m certainly used to working on and being responsible for applications on big systems with lots of servers at this point, I’m excited to be extending myself into a whole new area of distributed computing which is something I’ve had an academic interest in for awhile. On a side note, I actually already worked in part of the same office space many years ago at company called Tesser when I still lived in Boulder.

While I haven’t had a chance to meet and get to know the whole team yet, it does seem to have all of the right pieces to possibly grow into something very big. I definitely have plenty to learn and I’m eager for the challenge. At the same time I hopefully have plenty to bring to the team as well. :)

I find that it’s kind of difficult to describe Me.dium in a short summary, but there are several other places where you can read about it and do a much better job than I would to explain it:

If you’d like to check out the software and see what it’s all about, use this invite link and you’ll automatically be added as my friend when you sign-up and install the software. It’s currently Firefox only (and works on any OS that runs Firefox), but it does sound like there is an IE version coming soon. A good part of the power of the product lies in your friends list, so I’d highly recommend inviting some of your friends to check it out once you’ve signed-up.

While the current version is quite impressive, its only a skeleton of things to come– I’m very excited to join and be part of the team building this product!

PS– After being dugg and also getting ready for DEMO, I think they were overwhelmed with traffic just a little bit earlier than they expected, so you might want to give the service a day or two while they finish rolling in more servers.

Adobe Finally Introducing Apollo At DEMO Conference?

Saturday, January 27th, 2007

Of the many companies which are listed as presenters, I couldn’t help but notice that Adobe is presenting something at this year’s DEMO conference. This is just pure speculation on my part, but of all of the things which seem to be known elements at Adobe at this point, it seems to me that the most likely candidate would be Apollo. It’s the perfect place to introduce a platform for the next generation of applications given the audience, and I’m personally not aware of anything else they’d be presenting there.

I have a vested interest in the conference that I’ll get into soon, but if you haven’t heard of it before, it’s basically a conference where a panel pre-selects 70 companies which have 6 minutes to show off new technology to investors, inventors, press, etc. A few of the notable introductions (that I’m aware of) at the DEMO Conference over the years have been Java, the Palm Pilot, and TiVo. This year the conference is Jan 30th - February 1st.

Again, it’s just a total guess of mine, but I’ll certainly be keeping tabs on the conference to see if my speculation is correct. :)

System 76: Linux Dedicated Hardware in Colorado

Friday, January 26th, 2007

I’d came across System 76 before and have had it in my del.icio.us bookmarks for awhile, but I didn’t realize it was here in Denver. Very cool! I’d probably drop by there sometime if they have any sort of store front, but I’d guess it’s just a shipping/building type facility.

For the uninitiated, System 76 offers workstations and notebooks preloaded with Ubuntu Linux, and they have an amazing laptop coming out soon as well.

Reflections On The Google Interview Experience

Thursday, January 25th, 2007

While I did once interview with Google and didn’t make it very far, my friend Rod actually got invited to the Googleplex to interview but ultimately was not offered a job. However, that wasn’t the end of the saga. In fact I just re-read his original post about his visit there and noticed that Chris DiBona stopped by to comment– cool!

Strangely enough I’ve been recruited by them several times since the aforementioned blog post and honestly I wasn’t the most responsive to their queries. I feel like I still have some more experience in implementing algorithms to do and I felt it was a waste of both of our time to go through another interview process until that’s happened.

It’s actually been awhile since I’ve heard from them at this point, so perhaps I have finally been blacklisted. I keep reading about how they are always changing their recruiting tactics, so who knows. :)

How To Make Ubuntu Linux Faster

Thursday, January 11th, 2007

I came across a page from the TvEase wiki the other day via Digg which specified a few tweaks on how to make Ubuntu speedier. As far as I can tell, they mostly do a few things like toning down memory swapping to disk (hmm, academically that kind of seems like a fundamental algorithm problem to me, but at least it’s adjustable), disabling IPv6 support, taking advantage of multi-threaded processors to thread init scripts at boot-up, changing various low level networking options, and changing the way which data is written and cataloged in the ext3 file system.

I finally got around to applying them earlier this evening to my workstation and here is what I’ve noticed thus far:

  • Boot-up time seems to be about the same. Granted, I’m on a fairly old workstation which has one of the Intel “hyperthreading” processors circa summer of 2003, so I didn’t really expect it to work anyway.
  • Browsing the internet has sped-up signifcantly! My geek-o-meter would guess that it’s about 200-300% faster now! For instance, I can literally load the front page of this site in as little as 1.2 seconds (according to Fasterfox) when I type in the URL
  • Multitasking seems to be much better, applications start a bit faster, and I never hear the “clank clank clank” of the OS paging out to disk

I’d highly recommend giving these changes a try on your Ubuntu system. Additionally, I would surmise that the boot-up time improves drastically on dual core machines. Personally I’m holding-out on buying a new workstation until the quad core machines are available at a reasonable price which is why my workstation is so antiquated.

Latest Article - Why Interfaces In ColdFusion Are Irrelevant

Tuesday, January 9th, 2007

Just a quick heads-up– my latest article in the ColdFusion Developers Journal is Why Interfaces in ColdFusion Are Irrelevant which was in the December issue. This article builds on an earlier post I made, and goes a different direction than those professing that CF shouldn’t have interfaces because it shouldn’t turn into Java-light.

Technology Predictions for 2007

Tuesday, January 2nd, 2007

A couple of weeks ago Sys-Con published various industry opinions of what we’d see in 2007 in many of it’s magazines. The article showed-up on Slashdot (with a misleading title) among other places and included various industry luminaries. A couple of people you might of heard of contributed to the article including David Heinemeier Hansson (creator of Ruby on Rails) as well as myself. It looks like my response for the article was edited a bit for content length and doesn’t quite make sense in spots, so I thought I’d repost it in original form below:

My Technology Predictions for 2007

In general, I think this oncoming year will be one in which a lot technology built in the last several years becomes less of a burden, and more of a utility. That said, the top five technology trends I see happening in the new year are:

1. Server virtualization is just getting started, and will really make itself known in the coming year. Once we start seeing the quad core CPU architectures as a part of standard infrastructure, it really starts making a lot of sense to start deploying and managing servers and applications as virtual entities rather than specific pieces of hardware. This helps manage the cost and pain of software configuration management, take advantage of being able to process many tasks simultaneously because of hardware support, as well as allows legacy hardware to be retired in favor of applications running on virtual servers.

2. Container based hosting is the new kid on the block, and will also start making it’s presence known in the upcoming year. Commonly labeled as “grid” hosting (which is a technical misnomer if you understand distributed computing), it essentially claims to be an infinitely scalable hosting platform. This technology still seems to be half-baked at the moment, but you could have said the same thing about Linux ten years ago.

3. People who normally wouldn’t use Linux start to explore it and even replace Windows with it permanently. With Vista, Microsoft seems to be moving to a model in which the Windows operating system is a method to police users with DRM and other nonsense rather than provide developers a good platform on which to use hardware which is what Operating Systems are really supposed to be. A lot more consumers who haven’t noticed this happening in the past will stand-up and notice this year.

4. Dynamic languages and frameworks will continue to make leaps in popularity and adoption. Given the current squeeze on technology talent in the US, companies are going to have to learn how to do more with less resources. Moving to dynamic languages and frameworks as well as other simplification such as varying Agile software development practices will enable this to take place. I think the obvious leading candidates here are Ruby on Rails and Django.

5. The enterprise will embrace ways to simplify development by continuing to embrace open source software and Agile development strategies. While there are a lot of cries to the effect of Ruby on Rails replacing Java, I think that’s complete nonsense as Java is a language and Ruby on Rails is a framework. Rapid development languages will certainly make some inroads, particularly where heavy tools have been used to build simple applications, Java is still going to be a major part of the service oriented enterprise for years to come because of the power and tools it provides as well as it’s industry support.