Posts

Big company open source behavior patterns

Image
This post was also published in InfoWorld. Open source has definitely challenged the business models of existing infrastructure software players. Following is an ontology of different types of big company reactions to open source, and an example of each type of behavior pattern. Join the Party - IBM "Join the Party" open source players contribute extensively to existing open source projects, even those that are competing with their proprietary products. IBM has regularly made major contributions to open source technologies that compete with their own products. Examples include IBM's support of Linux, which competes with their AIX UNIX operating system, and Geronimo and PHP, which compete with its WebSphere business. IBM is clearly the most sophisticated large player in the open source space - IBM follows its customers, and if the customers want open source, IBM is going to be the one to deliver it to them, and make money with services along the way. Run like Hell - ...

Three simple things Sun should do to win

Image
This post was also published in InfoWorld. The industry trends around Linux, x86 processors, and scripting languages are clear. Unfortunately, Sun is swimming against the tide on all three of these trends, in fear that it could cannibalize its existing business. Following is a simple, three step strategy for Sun to swim WITH the tide, while still maintaining its revenue. #1 - Migrate Solaris to Linux Operating systems are a commodity. The Unix wars are over, and they have been won by Linux. IBM is migrating AIX to Linux. Digital Unix is dead. SGI Irix is dead. HP-UX is dead. Sun should announce a long term strategy of moving to Linux and start migrating Solaris features like DTRace to Linux, just like IBM contributed SMP and journaling code to Linux. Sun is unique in that it has a full Unix System V license from AT&T, so it can sell an indemnified Linux. Proof point: IBM has a long term strategy of migrating AIX to Linux, and it has not cannibalized AIX/Power sales. #2 - M...

An open letter to Jonathan Schwartz

Image
This post was also published in InfoWorld. Dear Jonathan, Long time no see! The same way you enjoy writing open letters to IBM and others in your blog -- I wanted to write an open letter to you and Sun, and see if I can get a little clarity about your open source software strategy. As I am sure you have noticed, there has been quite a bit of momentum around LAMP in the industry, ranging from innovators like Google, Yahoo!, and Amazon, to the "Web 2.0" crowd like Friendster, MySpace, and Flickr. In addition, LAMP has increasing usage in the enterprise. The "P" languages in LAMP -- PHP, Python, and Perl -- are all open source, and each provide their own virtual machine. It would be ideal if the Java JVM was open source so that open source projects like PHP could join up with the Java Virtual Machine. In turn, Java would be much more competitive with .Net, which supports numerous languages out of the box. Initiatives like adding dynamic language support in the JV...

Confounding: Sun vs. scripting languages

Image
This post was also published in InfoWorld. During my five year tenure at Sun, Graham Hamilton, the Java CTO, killed every initiative to run scripting languages on the Java Virtual Machine. These include 1999's "javab", which would have run Visual BASIC syntax on the JVM, and 2003's "Java 3", which would have supported optional typelessness for Java objects. Clearly, the industry trend towards scripting languages like PHP and Ruby has finally had an effect, since Graham has recently sponsored JSR 292: Supporting Dynamically Typed Languages on the JavaTM Platform . The time lag here is similar to the time lag it took Graham to support SOAP in favor of RMI after a ton of resistance, which Sun paid for dearly when they had minimal impact in the development of the web service standards we use today. It's great that Sun has finally decided to support scripting languages in some way in the next couple of years. However it is clear that this change was...

Integrate on the Front End with Lightweight Architecture

Image
This post was also published in InfoWorld. "Integration" is the third rail of enterprise IT. The mere mention of the word raises terrifying thoughts of huge budgets, endless meetings, and extremely complicated software. But the days where each enterprise application is an island are coming to an end--even things as simple as an employee directory now need to integrate the HR systems of multiple divisions, accommodate cross-reporting and virtual teams, and integrate outsourced third parties. Like it or not, essentially every enterprise application today requires integration. Naturally, enterprises have taken notice of the rise of "mash-up" applications on the Internet that integrate data from a variety of sources in new and useful ways. The trend was kicked off with sites like Housingmaps.com , which displays Craigslist housing listings on Google Maps, and has now reached quite a pinnacle with a conference called Mashup Camp where numerous people demonstrated ...

Enterprise SOA apps take off on lightweight architecture

Image
This post was also published in InfoWorld. At the last InfoWorld SOA Executive Forum , I asked the audience for a show of hands on the following question: "Who thinks it's easier to build an app that communicates to a web service than it is to write an app that communicates to a database?" Of this very sophisticated audience of senior IT architects and managers only two people raised their hands. After having spent countless amounts of time and money implementing service-oriented architectures, enterprises are finding that it's still incredibly difficult to build new user-facing applications that tie services together. Why? Because enterprises are trying to build composite apps with traditional technologies such as J2EE. It's hard enough using this approach to build a basic HTML application that talks to a single database. It is nearly impossible when you're using the same tools to create applications with rich interfaces that integrate with multiple service...

Doing big things with lightweight architecture

Image
This post was also published in InfoWorld. Quite a few folks are beginnning to realize that most big websites, including Yahoo!, Google and Amazon.com, run on lightweight architecture. To define lightweight architecture, it is helpful to define its opposite: Heavyweight architecture means you are running complicated infrastructure software like J2EE with complicated API's on a small cluster of expensive SMP machines. Lightweight architecture means you are running straightforward, open source software stacks with service oriented API's on large clusters of commodity machines. There are four common ways of achieving a lightweight architecture. Three of them are open source solutions, and the fourth is Microsoft's attempt: LAMP - As many of you know LAMP is my favorite lightweight stack. LAMP runs a vast majority of the massively scalable websites out there, and is also the favorite deployment stack for most of the "Web 2.0" crowd, including Friendster, Facebook, M...

BusinessWeek article about LAMP stack, Slashdotted again

There was a great article about LAMP and ActiveGrid by Steve Hamm in BusinessWeek today that was Slashdotted and started YAFF (yet another flame war) very reminiscent of when we were Slashdotted last year. To sum up the article, it lists a few indisputable facts: Google, Yahoo, and a lot of Web 2.0 companies such as Friendster, Flickr, and Facebook are using open source stacks like LAMP instead of Java. There are more and more developers and websites using PHP, as evidenced by booksales and Netcraft stats. Companies like Merrill Lynch write processor intensive code in C/C++ directly on Linux and script it rather than use Java API's, presumably because they want more perfromance and do not care about platform portability out of Linux. .Net is getting used a lot more in enterprises (something I have seen in quite a few large accounts and which Sun even acknowledges in the article). "Earlier this year, [IBM] threw its weight behind PHP as a Web programming language....

The end of desktop software

Our engineering team has grown quite a bit, and I needed to better track our 1.0 release process. It has been a while since I have directly managed an engineering project, but I have done it before with Microsoft Project. So I order it and it arrives a couple of days later. I then had a very bizarre experience, almost like an archaelogical dig. It was a shrink wrapped box entitled "Microsoft Project 2003". 2003??? This code hadn't been touched in three years! I opened the box (yes, it is still a pain) and took out the CD and installed the software. I haven't installed software like this in years. I then entered everybody's tasks, task hierarchies, and such. Project was incredibly difficult to use, stuff that should have been obvious was very obtuse. Then I wanted to publish the Gantt chart in HTML for our intranet. Tried for hours. Couldn't do it. Finally I printed out the chart, taped six sheets of paper together, and posted it on the wall in our ...

Web 2.0: Don't try this at work

One of the big drivers of Internet applications in the corporate world was the stark contrast of what people could do at home and at work: At Home: Buy books, buy movie tickets, look up the weather, etc. At Work: Call HR to change health plan, call factory floor to find out what happened to customer's order, call invoicing to find out what happened to a bill, etc. Well clearly something at work was wrong, and soon enough everything was online. :) Now look at the difference between home and work today: At Home: Web applications are using JavaScript and DHTML to enhance the user experience and decrease server interactions. Some random guy can combine Google Maps and Craigslist apartment listings in a useful way without talking to either Google or Craigslist ( http://www.paulrademacher.com/housing/ ). At Work: Everything has a Netscape 3 level of UI interactivity and nothing works with anything else. This difference in functionality and the increasing expectations of users will lea...