Thursday Jun 02, 2005

I joined Sun in February of 1997 as JavaSoft's first Systems Engineer. We eventually grew the organization to well over 50 SEs world wide and I managed the Western Region (including Western US, Canada and all of South and Central America). Throughout the late 90's, I managed the technical support organization that helped negotiate and close Java Technology licenses in this region, including major J2EE licenses and J2ME licensees.

In August of 2000, I joined Jonathan Schwartz' new Corporate Planning and Strategy group as a Technical Portfolio Manager. For a little over two and a half years, I managed Sun's relationship with companies in which Sun made an equity investment. I also helped Sun develop strategies for strategic acquisitions and new equity investments.

In January of 2003, I joined Curtis Sasaki's newly formed Desktop Solutions Engineering group as a Director of Engineering working on Sun's first true desktop product, the Sun Java Destkop System. And I was one of the core members of the Looking Glass project.

In June of 2005, I rejoined the Corporate Development group at Sun as a Sr. Director of Corporate Alliances where I help Sun navigate the waters of our strategic partnerships with companies like IBM, Dell, HP, ORacle and Red Hat.

Prior to Sun:

From 1995 to the end of 1996, I worked as the Corporate Systems Engineer for ParcPlace-Digitalk. For those of you not familiar with ParcPlace, we were the commercial spin-off from Xerox PARC dedicated to taking object-oriented programming to the masses through products and services around the Smalltalk language and runtime environment. Smalltalk was a clean, object-oriented, cross-platform language that ran in a Virtual Machine and was predicted to replace COBOL as the lingua franca for corporate development in the late 90's. Unfortunately, another object-oriented, cross-platform, VM-based language - Java - beat us to it :-)

Prior to ParcPlace, I worked for a couple of small, vertical market ISVs: Creative Computer Solutions (CCS) where I was working on software systems for Public Housing Authorities and Municipal Governments, and Ultradata where I was working on systems for Credit Unions and Commercial Bank. I was doing a variety of software development related jobs such as a development manager, product support manager and even a short stint as the VP of Marketing for CCS. Both of these companies used a little known but very powerful database management system known as "Pick". For those of you who care, there were several "flavors" of Pick including Ultimate, Microdata's Reality, Universe, Unidata and Prime Information.

Prior to Ultradata and Creative Computer Systems, I worked for McDonnell Douglas in the MIS group (what "IT" used to be called in the olden days) as a Systems Analyst. Actually, I started working for Tymshare (Silicon Valley old timers will remember them) and was acquired by McDonnell Douglas as they tried to diversify into the technology sector. I worked mostly on the projects that no one else wanted or were capable of handling. I did some COBOL development, some C development, some BASIC development, some FORTRAN development and a lot of development in a Pascal-like language called SAIL (Stanford Artificial Intelligence Language). I spent most of my time on projects written in a proprietary database called "Magnum" and on ancient DEC assembly code called Macro-10.

I have a degree in Business Administration with a concentration in Marketing. My minor was "Cybernetic Systems", the study of both human and non-human system (fascinating stuff).

more to come...

Tuesday Apr 05, 2005

A recent article published on the Linux Journal provides an interesting assessment of Sun's overall desktop strategy. The author, Tom Adelstein, who is also the author of Exploring the JDS Linux Destkop, asks "Is JDS, in fact, ready as an enterprise desktop?"

Tom goes on to attempt to make sense of Sun's business model by taking a critical look at the Sun Ray, Sun's "Ultra Thin Client" access appliance. Tom states "If you contact Sun about its alternate desktop, the company is likely to present you with a proposal to move from standard PC hardware to its Ray [sic] thin client infrastructure." Tom then states that "Solaris 10 does not support the Sun Ray server-side software" and that "Solaris x86 does not support the Sun Ray 3.0 server-side software." Tom goes on to point out that Sun Ray servers do support various Linux distributions including Red Hat, SuSE and JDS Linux itself. Tom finally attempts to "connect the dots" of these statements to question the rationale of Sun's desktop strategy.

Tom's assessment is confused on a variety of fronts. First of all, he assumes that the Sun Ray thin client technology is somehow cost prohibitive because it "involves an infrastructure change". In fact, enterprise customers will tell you that the existing infrastructure for stateful PCs is a source of constant support and upgrade costs that devastate thier ability to react to changing business requirements. Independent of Sun Ray's, many customers are turning to thin client solutions to centralize the adminstration and control of desktop infrastructure and reduce infrastructure costs. And the Sun Ray is unique in its adherence to a completely stateless model optimized for secure and manageable enterprise deployments. The fact that Sun is "likely to propose" the Sun Ray simply indicates that Sun is focused on reducing Total Cost of Ownership (TCO) for the enterprise, not simply providing a non-Microsoft desktop.

To some degree, Tom's assessment is based on a false assumption - that enterprises are not as interested in reducing costs and complexity as they are in deploying Linux. I have spoken with numerous customers and they've never stated that Linux itself was the goal. On the contrary, they are focused on lowering costs, increasing security, increasing vendor choice and extending hardware and software life cycles. If that means Linux, then Sun can provide a solution. If that means "fat clients", Sun has a solution there. If that means Windows, Sun has solutions that run very nicely on Windows (StarOffice and Java, for example). Perhaps Tom's real problem is that we offer too much choice, allowing customers to move at a pace and level (hardware, software or both) that fits their needs. Perhaps, in reality, it is Linux (and the Linux "agenda") that Tom sees as the highest priority while Sun sees the priority in maximizing customer choice.

Which brings me to the matter of the Sun Ray server software (SRSS). As Tom points out, Sun has yet to release a version of the SRSS that runs on Solaris 10. But that does not mean we do not plan to have one - support for Solaris 10, both SPARC and x86 platforms, is a high priority for SRSS. But this is somehow confused with Sun's desktop strategy. Although it is true that SRSS will expose the desktop of the OS on which it is running, it is also true that SRSS can be used to manage the connections of a Sun Ray device to a variety of desktop environments, including Windows. In short, SRSS is middleware designed to manage secure access of a client device with centrally managed environments including Red Hat, SuSE, JDS/Solaris, Windows and JDS/Linux - sometimes all of the above!

Most of the rest of Tom's assessment is viewed through the lens of Sun's Linux offerings - not suprising given that the article is published in the Linux Journal :-) But the answers to the "hard questions" allow that lens to greatly distort the view of Sun's desktop strategy. When Tom asks "how big is the support organization", he answers only that Sun out-sources support for Linux. Sun has a global, experienced support organization that numbers in the thousands and provides support for all of Sun's desktop products, not just Linux. When asking if Sun has a professional services organization, Tom answers that "one might find it difficult to say whether Sun offers formal professional support for Linux". Sun has an extensive professional services organization that focuses on desktop solutions for large enterprises as well as partnerships with global system integrators like EDS.

Sun offers a wide variety of desktop solutions. We provide StarOffice for Windows, Linux and Solaris and contribute the vast majority of the StarOffice code and modifications to the OpenOffice community. We provide the Java Runtime Environment for Windows, Linux and Solaris and, through our OEM relationships with Dell, HP, Toshiba, Gateway, Sony and others, we provide the broadest distribution of compatible, platform-independent desktop APIs on the planet. We provide back end services for desktops including app servers, web servers, directory servers, mail servers and calendar servers. And we offer software-only solutions for existing desktop hardware (both Solaris and Linux), our own SPARC and x86 based workstations and the Sun Ray for cost effective, secure thin clients.

Perhaps it is this wide array of choice that makes Tom nervous. If so, then it begs the question, if an alternative desktop strategy is not about choice, what is it about?

Thursday Mar 03, 2005

How cool is this? A Looking Glass Live CD that you can run from your CD-ROM and see the latest state of the open source Looking Glass project.

Kudos to the LG3D community!

Wednesday Mar 02, 2005

In response to my recent Blog on what Open Source Java advocates want, Keith Lea posted a comment that said:

I think it would work perfectly if Sun released something called something vague like "FreeVM" which is simply the JDK, under a BSD license, but not called Java in any way. Then, if you want to release a version of it, you have to submit it to Sun for testing to be able to call it Java. Otherwise it's called FreeVM or whatever the developers want to name it.

The problem with this is that it fails to address the fundamental problem from Sun's perspective - why would Sun want Java technology based on Sun's implementation (which is known to be compatible) to be distributed in an incompatible way, regardless of what it is called? If the answer is to leverage "innovation" of more developers, that assumes that the innovation is of more value than the compatibility. Sun has already determined that the JCP is the way to manage compatible innovations - agree to the standard specification first, then build reference implementations and test suites that allow multiple, compatible implementations of the standard. Is it really the "specify first, then innovate" approach that open source advocates disagree with?

Friday Feb 25, 2005

Another message storm has blown in across the Java Lobby on if/when/how Sun should Open Source (empahsis mine) Java.

This is not the first or last time this will come up. But, as always, it boils down to a tension between the differing priorities for Java (compatibility) and Open Source (freedom). Having spent a great deal of time in the technology licensing group at Sun, I fully understand this tension and remain confident that both freedom and compatibility can be achieved if both sides would stop talking at each other and start talking to each other.

Here's one of the fundamental quandaries that I think needs to be addressed:

Both sides tend to agree that the Java logo and trademark is Sun's property and Sun's alone. And that Sun can and should use that trademark as a way to "rubber stamp" compatible implementations. And both sides tend to agree that no implementation of Java should be allowed to have that trademark if they have not passed an appropriate set of compatibility tests (although both sides do not necessarily agree on what is "appropriate" or how such tests should be made available).

But if it is clear that the Java logo can and should mean compatibility and that no incompatible implementation should be allowed to have the logo, isn't it also logical that no compatible implementation should be allowed to not have the logo? If the logo is truely going to mean compatibility, shouldn't it be required to be on compatible implementations? And once made compatible, shouldn't a given implementation remain compatible? After all, compatibility is a moving target - are you 1.1 compatible, 1.2 compatible or 1.5 compatible?

These (along with many other) are the reasons Sun has been reluctant to move down the open source path. Compatibility means certain responsiblities, not complete and unencumbered freedom. Without understanding and addressing these core tensions, the debate will rage on.

Tuesday Feb 22, 2005

Wow - I can't believe it was August the last time I created a blog entry. I guess I've been busy.

Since August, I've gone through 2 additional re-orgs (on top of the one that happened in July), so I now work for my fourth boss in almost as many months. And we've managed to complete the integration of JDS into the Solaris WoS ("Wad of Stuff") - no small task. And our Linux version is in the middle of an extensive and lively beta.

So I'm getting ready now to collect some thoughts and get them out on my blog. More to come...

Monday Aug 09, 2004



We at Sun have run across the blog for Akkana Peck who provided a summary of LinuxWorld 2004 in which she states:

"I did my usual quick survey of which of the big booths were running linux in their booth. Oracle and Redhat were clear winners, with no definite Windows boxes (a few in each case which were running full screen presentation software so I couldn't tell what the OS was). Sun was the worst, with only one Linux box I saw, and the rest all Windows: no Solaris that I saw.."

Boy was she fooled. All the demos in Sun's booth (and there were lots of them) were running either Solaris or Linux. Oh, there was probably a Windows box or two to demonstrate interoperability, but nearly all of the demoes were running the Java Desktop System on Linux or Solaris. How could Akkana have been so wrong?

Keep in mind that JDS is designed to be "familiar" to Windows users. If you look at this photo from the Sun booth at LinuxWorld, you'll see numerous monitors with what might look to the untrained eye like Windows. Nope - all JDS!

Thanks Akkana for validating that we've hit the mark with our UI!

Monday Jul 19, 2004



Jonathan has an interesting blog where he engages the topic of commoditization of software. He rightly points out that the elements of true commoditization as outlined in Ross Mayfield's blog do not really exist in software. And Jonathan has pointed out before that it really isn't about open source, it's about open standards.

Well, if Jonathan's right (and I believe he is), why is Sun involved in open source at all? For that matter, why is anybody?

I think first it's important to define the term "open source". The Open Source Initiative has seen fit to create a rather lengthy and specific definition of what constitutes "open source". The Free Software Foundation prefers to define similar concepts as "Free Software" rather than "open source", but is clear that "open source" means:

1) access to source and
2) rights to create and distribute modifications free of charge.

The OSI even goes so far as to create a list of "approved licenses" that it has determined meet this criteria. But for my purposes, since the discussion of what is or is not "open source" always boils down to the license itself, I'd prefer to simply refer to "open source" as any licensed technology that generally meets the above 2 criteria.

But remember that these are licenses generally executed by developers and the commercial companies that employ them, not the end users and consumers of the products built by these developers. End users of products based on open source typically execute some sort of end user agreement rather than an open source license directy. So clearly, "open source" is about developer adoption more so than end user adoption (although the two are quite clearly related).

Which brings me (finally :) to my point - it's not about open source or even open standards, it's about "open development". Open development is not simply making code available via one of the OSI approved licenses. It's about creating a community of developers that represent varying interests (commercial and non-commercial), harnessing their interests and efforts and advancing the technology based on collective priorities and requirements. Open development is hard work. It requires significant investment on the part of an original contributor and a set of project leads and maintainers that keep the project moving forward and meeting customer requirements. It is really no different than traditional commercial development from an overall effort standpoint, but it is open to all (not just a particular commercial interest) and it is controlled collectively rather than autocratically. Also, it tends to be an "early and often" process (i.e. code is made available early in the development cycle and is contributed continuously as the code is developed).

There are many examples of successful open development, the most notable of which is Linux itself. Notice that what I'm getting at is that Linux and its components are successful because of open development, not open source (although the former depends on some form of the latter). Sun execs - pay attention.

This is not to say that only open development projects will be successful. OpenOffice.org, MySQL and Ximan's Evolution are all open source projects that have arguably been very successful in their respective markets with little or no contributions from anyone other than the original contributors.

Nor is it to say that all open development projects will be successful. But I believe that increasingly the success or failure of new initiatives will focus on the ability of companies to create and harness open development communities that are enabled by open source. This is at the heart of Sun's recent decision to open source Project Looking Glass. And the nature of Sun's focus on "Network Computing" means that we will continue to drive the infrastructure and ubiquity of open, collaborative networks on which these communities are based. If we can figure out how to harness open development as well, there's no stopping us.

Tuesday Jun 29, 2004

Yes sports fans - it's official. Project Looking Glass is officially available via GPL from Java.Net.

Tuesday Jun 22, 2004

Looking Glass is still making buzz on the discussion boards, even on the Longhorn Developer Center. The thread follows some of what I was saying in my "eye candy" post - 3D is all fine and dandy, but not at the expense of usability. Couldn't agree more. That is why the LG team is focused on taking some of the cool concepts of LG and moving it to products with an eye towards usability. Good to know we're getting people talking!

Monday Jun 14, 2004



Nothing has generated more interest in Sun's desktop initiatives than the Looking Glass ("LG") demo that Jonathan Schwartz and other Sun executives have been showing off at every opportunity. As one of the core contributors to the Looking Glass project and a co-inventor on some of its patents, I'm often asked about the purpose of Looking Glass. Is this really designed to make computers more useful? Or is it all about fancy "eye candy" and having something to talk about at trade shows?

At least part of the answer is that LG is very much about "eye candy" - and that's not a bad thing. LG has ignited a renaissance within Sun for interesting, engaging, high quality user interfaces. But for your average CIO, what would be the benefit of installing something like LG aside from interesting eye candy?

Keep in mind that LG is just a demonstration - a "thought experiment" as Jonathan likes to say. LG looks at how commodity hardware (specifically, hardware accelerated graphics) and commodity software (Linux, GNOME, OpenOffice, etc.) can be leveraged to create a compelling user interface and improve usability and productivity for desktop users. The assumption behind LG is that trends towards commodization of hardware will continue and that over the next 2 or 3 years you will not be able to get a PC that does not have some form of high-end graphics card (along with terabytes of disk space, gigabytes of memory and multiple gigahertz of clock cycles). The question LG tries to answer is if and how to these capabilities could be leveraged to create a more engaging UI and improve usability.

For example, it is not uncommon for a user to suffer from "frame overload" in 2D environments where there are too many windows open simultaneously. The user can no longer determine which one contains the work he is most interested in, especially when he can only view the top most window and perhaps a portion of the window title in the taskbar. LG uses transperancy on an unfocused window as a way to allow the user to see more of what's currently running on the desktop at any given time. Also, the ability to rotate all active windows in 3D space and view the "live" content as the frames rotate can provide a vehicle for quickly "picking" the window the user cares about. This is often presented in the LG demo as "eye candy" (rotating several running windows in 3D space), but could easily be implemented as a usability feature - a sort of "window grabber".

It is also an assumption of the LG project team that despite 3D capabilities, users will continue to interface with a computer primarily via 2D devices like a monitor, a keyboard and a mouse or other pointing device. Even though things like the way Tom Cruise interfaced with his computer in the movie "Minority Report" are entertaining, the LG team does not assume that such an interface really adds anything to the usability of a computer. In fact, we believe it would just cause a lot of spilled coffee. And the LG team also believes that the majority of applications will be "legacy" 2D applications (browsers, office productivity suites, media players, etc) that will take some time, if ever, before they recreate themselves as 3D applications. LG imagines how rendering these 2D applications in a 3D space changes the context of the applications and provides avenues for usability improvements.

For example, another common usability problem in 2D desktops is the loss of root window context for modal dialog boxes. A modal dialog box is part of the user interface such as an error message, a preferences settings or a confirmation dialog that "pops up" over a running application ("parent" or "root" window). It must be dealt with (like clicking OK) before control can be returned to the application. Since a modal dialog box is a free floating frame like any other window, it is possible for the user to accidently move the modal dialog off of the root window and lose the context of which root window belongs to which modal dialog. The user is sometimes only aware that they can't access the root window, or that the root window is somehow not responding. By leveraging the new "real estate" in a 3D desktop and flipping the window over to display a modal dialog on the back of a window, the association of the dialog with the root window is never lost and it is more intuitive to the user that they must deal with the dialog before they can access the root window again. In the LG demo, this is sometimes shown as flipping over a window to write a note on a virtual "sticky pad", but the idea is that 2D windows in a 3D environment suddenly have a lot of new capabilities - some of which could enhance the overall user experience.

For those of us who have used Unix style desktops like CDE and GNOME, we are accustomed to the idea that a user can define multiple "workspaces" and switch between them as a way of handling multiple applications simultaneously (email/calendar in one workspace, web browser in another, spreadsheet in a third, etc.). Studies have shown that humans remember visual references (colors, images) more readily than names or numbers and that they remember spatial references between images (to the left, up, down, etc.) better than arbitrary references (blue, red, green, etc.). In the LG demo, we show how a set of image backgrounds that can be switched in a panoramic view (Mars, the Stanford campus, etc.) can help users manage multiple workspaces and leverage these mental reference techniques to keep track of what's running where.

And there is much more. Of course, none of these types of changes are themselves a reason to switch to a 3D environment like that demonstrated by project Looking Glass. However, combined with some nifty eye candy, these enhancements show how Sun views the possibilities of future of desktop user interfaces and helps explain why LG continues to generate interest and enthusiasm for our desktop solutions.

This blog copyright 2009 by dbaigent