The Wayback Machine - https://web.archive.org/web/20071219135612/http://blogs.zdnet.com:80/Burnette/
Ed Burnette
burnette image
Software, gadgets and games
December 18th, 2007

How Amazon screwed up my order

Posted by Ed Burnette @ 7:56 pm Categories: General Tags: Order, Amazon.com Inc., NetGear, Home Networking, E-mail, Ethernet, Wi-Fi, Wireless, Networking, Personal Technology, Online Communications, Ed Burnette

Sigh. Remember the wall-plugged Ethernet extender kit that I was waiting on to go with the twin Dell Vostro mini-towers (the computer I got double-charged for)? I ordered it from Amazon.com on December 13th, where it showed as “in stock”. That day, I got a confirmation email that said:

Shipping estimate for these items: December 17, 2007
1 “Netgear XE104G 85 Mbps Wall-Plugged Ethernet Extender Kit [one XE104, one XE103]” Electronics; $138.29

However on Sunday (December 16th, one day before it was supposed to arrive) they sent this update:

Unfortunately, an unexpected delay from our supplier may prevent us from delivering some items in your order placed on December 13 2007 18:01 PST (Order# nnn-nnnn) by December 24. Other items that may be in stock will still ship separately, with no increase in your total shipping charges.

“Netgear XE104G 85 Mbps Wall-Plugged Ethernet Extender Kit [one
XE104, one XE103]” [Electronics]
Estimated arrival date: 02/20/2008 - 02/22/2008

Nice of them to not increase my shipping charges. But why did it take them so long to tell me the order would be two months late?!

Unfortunately I didn’t notice the email until I checked on the order today. After a quick search I managed to find an extender at the local Best Buy store for $181.46 ($169.99 + tax). I wish I could have waited, but the upstairs rec room where I wanted to install the Vostros does not get good wireless reception from the other end of the house (even with a highly rated Belkin N1 wireless router pumping out the signal on 3 antennas).

Now to unpack everything and see if it all works…

December 18th, 2007

Twin Dell Vostros arrive

Posted by Ed Burnette @ 10:37 am Categories: General, Dell Tags: Dell Computer Corp., Ethernet, Home Networking, Litigation, Construction, Sales Channel, Financial Services, Networking, Personal Technology, Business Operations, Sales, Ed Burnette

Twin Dell Vostros arrive

On December 12th I ordered two Dell Vostro mini-towers, and had a spot of trouble with the order. Dell double-charged my credit card, which triggered a fraud alert. Debbie from Dell is still looking into what happened, but meanwhile DHL delivered the machines on Monday afternoon. Now I’m just waiting on a Netgear wall-plugged Ethernet extender kit to arrive from Amazon and I should have it all unpacked and running in time for Christmas.

December 16th, 2007

Getting started with Android

Posted by Ed Burnette @ 5:43 pm Categories: General, Eclipse, Java, Programming, Google, Android Tags: Google Inc., SDK, Eclipse, Plug-in, Android, Java Development Tools, Open Source, Development Tools, Software Development, Software/Web Development, Ed Burnette

Getting started with AndroidAndroid is the new mobile phone SDK created by Google and the Open Handset Alliance. In a couple of years, it’s expected to be powering millions of cell phones, making Android a major platform for application developers. Whether you’re a hobbyist or a professional programmer, whether you’re doing it for fun or competing for the Google $10 million developer prize, it’s time to learn more about developing for Android. This article will help you get started.

[ Read: More coverage of Android ]

Installing
First you need a copy of Java. All the Android development tools require it, and programs you write will be using the Java language. JDK 5 or 6 is required. It’s not enough to just have a run-time environment (JRE); you need the full development kit.

Next, download the latest Android SDK from Google. The Android download page has packages for Windows, Mac OSX, and Linux. After downloading the SDK, unpack the .zip file to a suitable location (for example C:\Google). By default the SDK will be unpacked into a subdirectory like android_sdk_windows_m3-rc37a. This is your SDK install directory; make a note of the full path so you can refer to it later.

To make development easier, Google has written a plug-in for Eclipse called the Android Development Tools (ADT). To use it, you need to have Eclipse 3.2 or later. Get the Eclipse IDE for Java or Java EE Developers, or the Eclipse Classic (SDK) package from the Eclipse download page if you don’t already have it. Then start Eclipse and use the Update Manager to install the Android plug-in. Restart Eclipse, and update your Android preferences (Window > Preferences > Android) to point to the SDK install directory.

Note: Plug-ins for IDEs other than Eclipse are in the works so if you can’t use Eclipse, keep an eye out for them at your IDE’s community site. Since Eclipse support is the most mature, and it’s used by the Google developers themselves, the rest of this article will assume you are using Eclipse and the ADT plug-in.

Once everything is installed it’s time to write your first program.

Hello, Android
Select File > New > Project to open the New Project dialog. Then select Android > Android Project and click Next. Enter the following information:

Project name: HelloAndroid
Package name: org.example.hello
Activity name: Hello
Application name: Hello, Android

when you’re done it should look something like this:

New Android Project

Click Finish. The Android plug-in will create the project and fill it in with some default files. Eclipse will take care of building and packaging it up. All that’s left is to try running it.

In the Package Explorer, right-click on the HelloAndroid project, and select Run As > Android Application. The Android Emulator window will start up and boot the Android operating system. The first time you do this it will take a while, so be patient. After about 30 seconds or so, your program will be launched and you should see it running in the emulator:

Android Emulator

Just to prove we can, let’s change the text displayed in this application. Leave the emulator window up and go back to Eclipse.

The user interface for Android programs is normally described in text files very similar to HTML. Under the res/layout directory, double-click on main.xml. Find where it says “Hello World, Hello” and change it to say “@string/greeting“. This is a reference to a string resource that doesn’t exist yet. To define it, double-click on res/values/strings.xml and add this line:

<string name=”greeting”>Android rocks!</string>

Now save all the files (Ctrl+Shift+S) and re-run the program (Ctrl+F11). In a couple of seconds, the Emulator screen will refresh and show the new text you entered.

Emulator showing new text

Note: You may notice something wrong with the exclamation point as displayed in the emulator. I’m sure little problems like that will be worked out soon. This is, after all, pre-release software.

Next steps
The Android SDK comes with hundreds of classes you can use for telephony, animation, music, video, networking, geo-location, and more. Google provides extensive documentation and reference information on their web site, and a number of sample applications are included with the SDK. There is also a FAQ and a forum especially for beginners.

But before delving into that, I recommend you take half an hour to watch a few videos from the Android Developers Channel on YouTube. In particular, there’s a 3-part series of educational videos by Mike Cleron (technical lead for Android) that should not be missed. Once you grasp the basic concepts like Intents and Activities, the rest will be much easier to understand.

December 13th, 2007

How Dell screwed up my order

Posted by Ed Burnette @ 6:05 am Categories: General, Dell Tags: Card, Customer Service, Dell Computer Corp., Phone, Credit Card, Computer, Stephen, Sales Channel, Productivity, Financial Services, Sales, Ed Burnette

Yesterday I put in an order for twin Dell Vostro 200 mini-towers for the kids (anyone who has two boys will understand why I had to get two identical machines). The transaction was simple, just using a credit card over a secure web site. I expected an uneventful sale and a short wait to get the computers. Unfortunately Dell had other plans.

About 10 minutes after I clicked ‘Submit’, I got a call from home. “Did you get the email about a problem with the order?” my wife wanted to know. I didn’t, so I asked her to forward it. The mail said:

Order Delayed

While processing your order, we were unable to obtain authorization from your card issuer for this purchase.

Please contact your card issuer for assistance by calling the customer-service phone number provided on the back of your card. When the issue is resolved, call us at 1-877-819-3355 with your Order Number for further processing.

Great, I think. I must have given them the wrong credit card number. But just to be sure I called Citibank’s customer service. I was put through to representative immediately. She looked up my account and found the charge from Dell. “There are no problems,” she said, “the charge went through just fine.” Friendly and efficient; the call probably took under a minute.

Citi customer support: A+

So next, as instructed, I called Dell customer service. “If you received a message, and require credit card assistance, Press 1″. I wonder how many messages they send out, that would require an entire menu item devoted to the problem. I press the key. “Please wait.” So I wait. And wait. And wait some more. About 20 minutes later, “Stephen” answers the phone. I didn’t record the conversation, but here’s how it went as best I can remember:

“How can I help you?” said Stephen. I can hear many other people talking in the background. Stephen speaks with a rich accent.

“I got a message about a problem with authorization on my credit card, but the card company says there is no problem,” I said.

“What is your order number?” I give it to him.

“There was a problem authorizing your credit card,” Stephen tells me.

“Yes, but I called the card company and they said the charge went through ok.”

“Would you like to use the same card on this order?” asked Stephen.

“I don’t want to be charged again. Can you tell me why there was a problem?”

(slight pause) “Would you like to use the same card on this order?” I’m reminded of my morning trips to McDonalds. The people there don’t speak English, but have learned certain key phrases and responses. As long as nothing goes wrong, it’s not usually a problem. But if something goes wrong…

“This is the card I want to use but I don’t want to be charged twice for the computer,” I replied. I can tell where this is going.

“What are the last 4 digits on the card number?” He asked. Resignedly, I gave him all the relevant information.

“Ok, Mr. Burnette, the charge completed normally. Can I do anything else for you?”

“Can you verify that I will not be charged twice for this computer?” I know this is a losing battle but I have to give it a try.

“No.”

“No, you can’t verify that, or no I won’t be charged twice?”

(pauses) “You will not be charged twice.” he said. “Can I do anything else for you?”

I thought about asking for some kind of customer rep number, but decided it wasn’t worth it. “No, that’s all, thanks”.

5 minutes after I hung up, I got a call from home. “The credit card company called and left a message,” my wife told me. It was from fraud detection at Citi. “They said I had to answer the phone or call back, and the card was frozen until then.” So she called them. There were two separate charges for the computer, and we had to cancel one of them.

Dell customer support: F

When I ordered the computers I wondered how Dell could make a profit charging such low prices. If I built the computers myself it would likely cost more. Apparently Dell has had to cut a few corners, such as in order processing and customer service to make this possible. But I wonder if it’s worth it in the long term. When I ordered my first Dell years ago I was impressed with how “smooth” the whole operation was. The order was complete and the computer built and shipped within hours. Customer support answered the phone when I needed them, and we had no problems understanding each other. Ah, well, like full service gas stations, I suppose such conveniences have been sacrificed to razor thin profits. I look forward to receiving and unpacking the computers with some trepidation, wondering what other sacrifices have been made.

December 12th, 2007

Dell’s answer to HP and Apple: 2G Core 2 Duo, 20-inch monitor, $499

Posted by Ed Burnette @ 8:32 am Categories: General, Dell Tags: Monitor, Dell Computer Corp., Hewlett-Packard Co., Apple Inc., Intel Core 2 Duo, 2G, Graphics, Processors, Semiconductors, Hardware, Components, Ed Burnette

This one was too good to pass up. Today, using this link, for $499 you can get the following Dell Vostro 200MT system with no shipping charges:

  • Intel® Core™2 Duo Proc E4500 (2.20GHz, 2MB L2 Cache, 800FSB)
  • Genuine Windows® XP Home Edition or Vista Home
  • Dell 20 inch Widescreen E207WFP Analog Flat Panel Display
  • 2GB Dual Channel DDR2 SDRAM 667MHz - 2DIMMs
  • 80GB Serial ATA Hard Drive (7200RPM) w/DataBurst Cache™
  • Single Drive: 16X DVD+/-RW Drive
  • Intel® Graphics Media Accelerator 3100
  • Integrated 7.1 Channel Audio
  • Dell USB Keyboard
  • Dell Scroll Mouse
  • Microsoft Works 8
  • 1 Year Ltd Warranty with Next Business Day On-Site Service

Recommended upgrades: For $30 more you can double the disk drive to 160GB, and for $50 more you can bump the processor to an Intel® Core™2 Duo Proc E6550 (2.33GHz,4MB L2Cache,1333FSB). Don’t forget to add $10 for an optical mouse (I can’t believe they left that out), and speakers if you don’t have any. Gamers may want to plan on adding a PCI-e graphics card if the integrated graphics are not sufficient. Taxes not included.

I just ordered a couple for my kids and wanted to share the price with you before it expires. I have no affiliation with Dell other than being a customer. Enjoy!

Via: SlickDeals

December 5th, 2007

Microsoft creates GWT clone

Posted by Ed Burnette @ 5:12 pm Categories: General, Java, AJAX, Scripting, Microsoft, Programming, Google Tags: Microsoft .NET, Microsoft Intermediate Language, JavaScript, Microsoft Corp., Web Browser, Tier, CLR, GWT, Volta, Upshot, Silverlight 1.1, .Net, C#, Web Browsers, Middleware, Software Development, Software/Web Development, Programming Languages, Internet, Enterprise Software, Software, Ed Burnette

Microsoft creates GWT cloneWhile the GWT conference was going on in San Francisco, Microsoft announced its own take on the concept: Volta. GWT compiles Java source code into Javascript, and now Volta does the same thing for C# and other .NET languages. “JavaScript is just an assembly language,” says Live Labs product manager Alex Daley.

Erik Meijer goes into more detail in an OOPSLA paper called “Democratizing The Cloud” (pdf):

We pick the .NET Common Language Runtime (CLR) as our universal computation model. We prefer, of course, to use the already available CLR implementation on each respective tier: SQLCLR on the data-tier; regular CLR on the middle-tier; and Silverlight for Web-clients, or the regular CLR for desktop clients.

When no CLR is on hand, we use the materials already available in the room. On the data-tier we compile MSIL to SQL. This is the approach currently taken by LINQ-to-SQL and LINQ-to-Entities. On the client-tier we compile MSIL to JavaScript or Flash. This is the approach taken by Volta. The upshot is that we uniformly provide (the illusion of) the .NET platform on each tier, in effect stretching it to cover the Cloud. Application programmers only need to care that they can run MSIL everywhere, not about how this is technically accomplished under the hood.

Getting Started
To use Volta, you first need to install Visual Studio 2008. Create a new Volta project using the wizards provided, design a regular-looking HTML web page, define your business logic in C#, and then add some boilerplate code that associates your web components (such as an Input box) with C# variables. If you publish the project at this point, all the object code produced by the C# compiler (MSIL) will be converted into Javascript resulting in a client-only application that runs in the browser. Like GWT, Volta provides a subset of the standard class library for code running on the client.

To split the program between client and server tiers, you flip a switch and add the “[RunAtOrigin()]” annotation in the source code to indicate which classes that you want to run on the server. Then just rebuild and poof, all the RPC/Web service stuff is taken care of for you. This is one area where Volta differentiates itself from GWT. In GWT, the client/server split is explicitly written into the code by the programmer. Another difference is that remote calls in Volta are synchronous by default but GWT’s remote calls are asynchronous by default. Asynchronous calls require a little extra code to implement but result in a better experience for the user.

By setting another option you can have your Volta application cut trace records for later analysis in the WCF Service Trace Viewer Tool. This tool gives you an easy way to view, group, and filter traces so you can diagnose and repair issues in a multi-tier environment.

Word Worm sample

Microsoft labels Volta as “experimental” at this point so there are a few rough edges. For example, every class used in your application will be a separate download from the server. This means currently you can expect Volta apps to be much slower than GWT apps, at least the first time you run them. When I tried the online WordWorm sample, Firefox 2 put up a dialog saying the script was unresponsive (see above). On Internet Explorer it worked but took over a minute to start up. According to Microsoft they plan to make this smarter in future versions.

Analysis
If Volta had been released two years ago it would have been revolutionary. At this point, though, Microsoft is playing catch-up with Google and Adobe. Volta also sends a confusing message to .NET developers targeting the browser. Silverlight 1.1 is supposed to include a full .NET environment inside the browser for multiple platforms. Now with Volta you can get “the illusion of” the same thing without a plug-in. So why do you need Silverlight?

Another concern developers will have is Microsoft’s commitment to browsers other than Internet Explorer. If, for example, a new browser or operating system came out that broke GWT, then the source code is available so you could fix it yourself if Google’s GWT team wasn’t fast enough. That’s not an option with Volta.

The Volta technology preview is available for download now at Microsoft Live Labs. The current version supports Internet Explorer and Firefox only.

December 4th, 2007

Netbeans 6.0 weighs in at a paltry 12MB

Posted by Ed Burnette @ 4:38 pm Categories: General, Java, NetBeans, Community, Programming, Sun Tags: Sun NetBeans, Netbeans 6.0, Netbeans 6, Java Development Tools, Development Tools, Software Development, Software/Web Development, Ed Burnette

Netbeans 6.0 weighs in at a paltry 12MBNetbeans 6.0 has gone gold. The open source IDE supports C, C++, Ruby, Java, and other languages. New features include a completely revamped code editor, an integrated profiler, and visual designers for web and mobile applications.

Installation couldn’t be easier. After opening up the Netbeans home page, it took two clicks to start downloading. I decided to try out the C/C++ bundle, which is only 12MB (12,306K; the Java bundle is 21MB and the Ruby one is 19MB). One minute later, the download was complete, and a minute after that the install was finished. Then I double-clicked on the desktop icon to start the IDE, and 26 seconds later it was ready to go. Total time from when I decided to try it to when I was actually running it: under 3 minutes.

The only hitch was when I clicked on the link to create a C/C++ sample program and Netbeans reminded me that I didn’t actually have a C compiler installed on this machine (doh!). So I downloaded MinGW from SourceForge. Still no go. Turns out I also needed to get the MSYS package from that same project, because the sample make files are set up for Unix-like commands. Do yourself a favor and read this article before trying C++ development at home. Of course, if you already have a compiler installed then setup should go much easier.

Netbeans 6 is a polished, mature product that holds up well when compared to its main rivals, Visual Studio and Eclipse-based IDEs such as MyEclipse and RAD. It’s dual-licensed under CDDL and GPLv2, and it runs under all major operating systems. See netbeans.org for more information, or the Netbeans category of this blog for other Netbeans-related articles.

December 3rd, 2007

Richard Monson-Haefel responds, still gets it wrong

Posted by Ed Burnette @ 8:57 pm Categories: General, Java, Microsoft, Programming, Google, Sun, Linux, Android Tags: JCP, Richard Monson-Haefel, Android, Programming Languages, Java, Software Development, Software/Web Development, Ed Burnette

Last week I took Burton group analyst Richard Monson-Haefel to task for a post he made about Android. Yesterday he responded and attempted to clarify his position in “Why Microsoft Loves Google Android, Take 2“. While Richard deserves credit for being a good sport about my criticism, I still disagree with him. Here’s why.

“The Java Platform is a three-legged stool consisting of the core Java APIs (packages, frameworks, and libraries), the Java bytecode (the compiled, executable format), and the Java Virtual Machine (the runtime system that executes bytecode)…

In order to qualify as a Java-compatible platform, a platform must implement all three of these legs as required by the Java SE or Java ME specifications. (I’m leaving Java EE out of this because it’s not germane to this discussion.) If a software distribution does not depend on or implement all three legs of the stool then it’s not a Java Platform.”

Monson-Haefel is confusing the Java platform and Java trademarks, and that confusion colors his whole perception of the “Android effect”. According to Sun’s trademark guidelines, open source FAQ, and brand guide, “Java” is a trademarked brand and logo that refers to a particular Sun product. The best a non-Sun product can be called is “Java Compatible” or “Java Powered”. Since these are Sun trademarks as well, you have to follow Sun’s rules to use them, which include passing the relevant TCKs (test suites). By the way, as far as I can tell the rules don’t say anything about bytecodes or JVMs, just that the tests have to pass. Implementations are free to do things in different ways for efficiency or practicality, as long as the end result is the same.

Other phrases like “Java-based”, “Java platform”, or “Java technology” are not trademarked in and of themselves, so they can be used however you like as long as you follow the rules for respecting the Java trademark (such as putting the little “tm” on the first use).

The Open Handset Alliance doesn’t call Android “Java”, but programmers like myself, who don’t care so much for legal hair-splitting, do. I also call facial tissues regardless of who made them “Kleenex”, and I tell people to “Google” things on the internet. So sue me. Um, not really, that’s a joke.

“[Android is] just not good for the Java ME and Java SE standards. The reason is simple: Android establishes a precedent that’s at odds with the Java platform’s fundamental value proposition: Write once, run everywhere. Android, because it’s neither Java ME nor Java SE, establishes a precedent for implementing platforms that use the Java programming language any way you please rather than according to the standards set by the Java Community Process.”

This is Richard’s real beef with Android - that it wasn’t specified through the JCP. Of course, there’s no reason why it couldn’t be. Google could submit a proposal tomorrow for a JSR (a standard proposal) that codifies the Android API. But they won’t, at least not any time soon. It’s not not because of any conspiracy against or disrespect of the JCP. It’s simple practicality.

Android is brand spanking new. There is zero experience with it in the field. Many JCP watchers, including myself, feel that sometimes the JCP motto is “standardize first, see if it works later”. Unfortunately that has lead to some standards that were, shall we say, less than perfect. EJB anyone? And once it’s approved, you’re stuck with it. Many prefer a more agile approach.

The best JSRs were submitted by people who came up with an API, implemented it, tested it, tweaked it and changed it based on lots of user experience. After a few iterations, they eventually submitted it as a proposed standard. A good example would be the Java concurrency library. Things like that just don’t materialize out of a committee. My guess is, that’s the path the Android APIs will take.

“While Android may not be good for the Java ME and Java SE standards its impact over all could be very positive for the Java industry. Android will force Sun and the JCP to reconsider the Java ME and Java SE standards. It may even force the development of a new platform that is slimmer than Java SE but not fractured like Java ME. That could be a big win for the Java industry in general.”

This part I can agree with. But instead of viewing it as “forcing” anyone to do something, I prefer to think of it as “leading”. Android has the potential to un-fragment mobile Java technology and point the way to unifying the confusing editions and profiles that the JCP has saddled us with. Let’s give it a chance and see what happens.

November 29th, 2007

What’s new on Gmail? :)

Posted by Ed Burnette @ 7:19 pm Categories: General, Google Tags: Google Inc., Google Gmail, Apple Macintosh, Client, E-mail Providers, Linux, Desktops, Internet, Operating Systems, Software, Hardware, Ed Burnette

SmileysGmail provides users a bare-bones chat interface with a few nice features like the ability to use the same address book you use for mail. Since it’s written in Javascript, it runs inside your web browser with no special client download required. That also means that it can be updated at any time, as Google did this week when they added new graphical emoticons (smileys) and group chatting.

For serious chatting though, I recommend a heavyweight client like Pidgin (formerly called Gaim before AOL’s lawyers had their way). Pidgin supports over a dozen instant messaging (IM) protocols such as XMPP, AIM, ICQ, MSN, and Yahoo messenger. The Google clients support only XMPP. Pidgin runs on Windows and Linux so if you have a Mac you’ll have to use something else. The best I’ve found so far on the Mac is Adium.

BTW, the Gmail storage counter is up to 5.2 GB now.

November 28th, 2007

Why Microsoft hates Google’s Android

Posted by Ed Burnette @ 8:16 pm Categories: General, Java, Microsoft, Programming, Google, Sun, Linux, Android Tags: Java Platform, Google Inc., Microsoft Corp., IBM Corp., Android, Programming Languages, Java, Software Development, Software/Web Development, Ed Burnette

Richard Monson-Haefel, an analyst at the Burton group, just posted a sarcastic and inaccurate analysis of Android on the company’s blog. In his article, called “Why Microsoft Loves Google’s Android“, Monson-Haefel claims that Microsoft should be “secretly celebrating” Google’s introduction of Android. “Android is perhaps the best thing to happen to Microsoft since they won the browser wars in the 1990’s,” he writes.

[ READ: Richard Monson-Haefel responds, still gets it wrong ]

Monson-Haefel, who proclaims himself “one of the world’s leading authorities on Enterprise JavaBeans (EJBs)”, served on the JCP Executive Committee which oversees Java specifications. Perhaps with this background, he feels he’s doing Sun and the JCP a favor by attacking Android, but he’s not. In fact, he has managed to get things twisted around so badly I felt compelled to write this rebuttal. I hardly know where to begin. For example he writes:

“To put it bluntly: Android as it is currently defined is a fork of the Java ME [micro edition] platform. Android is similar to the Java ME, but it’s a non-conformant implementation. Android is not compliant with Java ME nor is it compliant with Java SE [standard edition]. In fact, it’s not really Java. Although it uses the Java programming language, the core APIs and the virtual machine are not consistent with the Java ME or SE platform - it’s a fork.”

Right up front he’s invoked the dreaded f-word of open source. Even if Android were a fork, as I’ve pointed out before forks aren’t necessarily bad. But Android is no fork. Earlier in the article Monson-Haefel says that Java ME is “terribly fragmented”. You can’t fork something that is already fragmented.

Furthermore, Android does not have a line of code in common with Sun’s Java ME. Being a derivative of or improvement upon an earlier version is one of the prerequisites of a fork. And besides, he says that “it’s not really Java”. How can something that is not Java be a fork of Java? It can’t. You don’t hear him calling Microsoft .NET a fork of Java, even though under his logic maybe it should be.

“From a marketing perspective the Java platform’s greatest strength is standardization and multi-vendor (e.g. IBM, Oracle, SAP, etc.) support. In comparison, Microsoft .NET is a portrayed as a proprietary platform that locks-in organizations to the Microsoft platform. That’s the marketing message which has been used by Java proponents for a decade and it has been extremely successful. But now, with the introduction of Android, the solidarity around the Java platform could crumble.”

How in the world can you look at the 30+ vendors lined up for the Open Handset Alliance and say that is not “multi-vendor”? And speaking of solidarity around the Java platform, take a look at the Sun/IBM relationship and you’ll see it’s pretty crumbly already. Some see this is a weakness, but others as a strength (innovation through competition).

“If Android, as it’s currently defined, is successful then Java will no longer be consistently implemented at a fundamental level. … Java ME is a standard that has a wealth of functionality and is supported by dozens of vendors, but it’s implemented inconsistently across mobile devices.”

(emphasis mine) I wonder if saying two completely contradictory things in the same article is some kind of requirement for being a successful analyst. That way, Read the rest of this entry »

Ed Burnette has programmed everything from device drivers and compilers to video games and multi-user servers. He is currently writing enterprise software in a variety of languages including C, Ruby, Python, and Java. For disclosure of Ed's industry affiliations, click here.

advertisement

Recent Entries

Most Popular Posts

Archives

ZDNet Blogs

Popular white papers

advertisement
Click Here