What if Microsoft would act like Apple?

Let “s imagine that Microsoft made a statement that if a Web page was not developed in .Net, Internet Explorer won “t display it? This would make vendors of all other Web browsers very happy, because herds of developers who don “t plan to switch to .Net would start developing for Firefox and Safari. Well, maybe some developers would sucked it up and learned .Net, but this wouldn “t become a trend ndash; most likely the market share of Firefox, Safari and other browsers would start increasing.

This was not obvious for Steve Jobs when earlier this year he announced that iTunes wouldn “t be playing mp3 files that were not created in GarageBand. Oops, sorry, he said that Apple store wouldn “t accept applications that were not created in C-like language or JavaScript.

Six months later, Apple realized that this was announcement was plain stupid and admitted that it was made while smoking pot. Was the decision to ban Flash Player has been also made under the influence? Lame arguments about technical issues of Flash Player may sound reasonable for housewives and farmers from Alabama. “Have you heard that Flash Player can crash your computer? I “m telling you! It was on TV! rdquo;

Adobe “s software has issues, so does Apple “s, and so does anyone else “s. The real reason of this conflict is that both companies are trying to present their software as THE ultimate platform for slave-developers that would help them make money. Both companies don “t give a damn about sticking to open standards ndash; they care about making money, and I don “t see Adobe as a company that “s being bullied by Apple.

On mobile devices Apple doesn “t want any other platform but iOS. Have you noticed that Apple didn “t let hugely popular Java platform on their devices either? The reason is the same ndash; developers can use any platform as long as it “s iOS. But why Oracle doesn “t make a stink about it? Is it because they “re larger than Adobe? Not at all. The difference is that after Sun Microsystems has neglected Java ME for mobile devices and didn “t deliver on JavaFX, Oracle has no platform to offer. If Oracle had just a little shot there they wouldn “t keep it quiet.

Does Oracle care about developers? Not really. Otherwise they wouldn “t sue Google over Java that was supposedly open sourced. They want Google to use Java on Android, but for a fee.

So what us, poor developers should do? What “s THE platform for development? What the next programming language to learn? If you are a professional developer working for money, stay away from development for mobile devices regardless if it “s iOS or Android. There is no money there ndash; people want either free or $.99 applications. If you “re an enthusiast software developer who “s ready to work for food, just pick a programming language you like ndash; Objective-C, ActionScript, Java, or anything else that has an if-statement and have fun. Just don “t take very seriously what big shots from California are trying to sell you.

Update. Two weeks after this blog was published, I ‘ve learned that Google may act like a predator when it comes to dealing with the competition. Just read about the upcoming conflict between Skyhook and Google. They ‘re all the same – cold-blooded serial killers.

Two killer Web applications and the trend

I “d like to share with you two Web applications that I enjoy the most. Even though one is from the music industry and the other one is about travel, they have are very similar: very simple and intuitive UI and sophisticated data processing under the hood.

The first one is Pandora Radio. This application allows you to create the radio station based on your personal preferences. Just enter one name of the artist you like and it starts playing song by song bringing artists that play the music similar to your initial selection. While the song is playing, click the up button id you like it and button down if you “re not ndash; this song will be never played again. These simple interactions with the users make this radio to “learn rdquo; your preferences and create the perfect radio for you. Don “t know the name of the artist? Just pick the one of the genre radios (I “m in the mood for reggae at this moment).

The good part is that it “s free if you don “t mind audio commercials. You can buy a song or even a CD by the artist you like either from (integrated!!!) iTunes or from Amazon. While the music is playing, Pandora “s simplistic UI display some facts about the artist or the song lyrics. I love Pandora!

The second app is a new Web application that allows you to book air tickets online. One would think, “Yeah, right! Try to surprise me with yet another Kayak, Expedia or Orbitz. What can someone come up with that these big guys didn “t think of? rdquo;

Ladies and Gents, please welcome, one and only Hipmunk ! Extremely simple and non-cluttered first screen to specify your travel needs. Let me pretend that I haven “t purchase my JavaOne tickets from Newark to San Fran . Entering EWR, SFO, 9/19/10, 9/23/10. That “s it. Here “s what I “ve gotten back:

Is this great or what? On one second screen you see everything you need: dates flights, connections, airlines as a two dimensional matrix. People who travel a lot can immediately appreciate the beauty of this way of presenting the travel information.Note that hipmunks works only with Orbitz at this point, and after selecting the flight check for the best price elsewhere.

Wow, it “s so simple, how come I didn “t think of it this way? I know. How complex is the home page of Google? You “ve got to be very smart to create very simple looking UI. IMO, simple UI with smart programming and super powerful and flexible hidden infrastructure is a trend where entire IT industry is going. The user has to see only a little tip of the iceberg. The less the user sees the better.

Those who know that I make a living developing rich Internet application may be surprised that I “m not pushing for fancy UI tools that allow to animate the UI and “make a web site more engaging rdquo;. But I see no contradiction here ndash; most of our applications that we develop with Flex and Java bring more value to the customers in the processing part without abusing UI.

If you want to continue this conversation in person, you “re welcome to attend our one day public seminar on enterprise development with Flex and Java in New York City next week.

JavaOne may be dead

Google pulls out all 17 their presentations from the upcoming JavaOne conference in San Francisco. Yes, it ‘s because of that law suit. This is what Reuters has to say about it.

Unless Oracle and Google will settle on their little issues, JavaOne may be dead. Or to say it properly, Java One will fork, bit it ‘ll never be an event that would gather 10-12 thousands of ENTHUSIASTIC Java developers under the same roof. I ‘m still going there and, on return, will share with you what kind of vibe/energy I ‘ve experienced, if any.

I know this guy who should consider this as an opportunity and create large conference, an alternative to JavaOne. He knows how to do it.

In general, this Oracle/Google dispute may turn into a birth of a new language created by Google, which will make java obsolete like COBOL.

Now there are 17 empty slots to be filled with substitute speakers. I ‘m wondering who ‘s going to be a substitute presenter for the annual Java Puzzlers by Joshua Bloch and Neal Gafter?

You are what you eat

If you ask me, “What ‘s the main achievement in my American life? “, I ‘ll answer, “I can afford to purchase food in supermarkets without worrying about the prices “. Today I bought a pack of hot dogs at Whole Foods supermarket, which is an upscale chain of food stores. The quality of products is better there, and the prices are higher too. Here ‘s the label on this pack, which I photographed with my new iPhone 4:

Now let ‘s read the announcements from the label:

1. All natural beef used

2. Gluten free

3. No nitrite or nitrate added

4. Beef used raised without antibiotics!

5. No artificial ingredients

6. Minimally processed

IMO, more than 90% of Americans can ‘t afford purchasing food in such supermarkets. They eat hot dogs with non-natural maximally processed beef with glutens, nitrites, nitrates, and those cows were given antibiotics.

If 90% of Americans wouldn ‘t be purchasing cars,houses, and wedding rings they can ‘t afford they could also purchase food at Whole Foods and wouldn ‘t be consuming glutens, nitrites, nitrates, and antibiotics prescribed for cows.But this would be bad for pharmaceutical companies who are ready to sell us expensive drugs that will cure our livers, kidneys, stomachs, and other useful organs damaged by glutens, nitrites, nitrates, and antibiotics prescribed by veterinarians.

Bon appetite!

I rejected Google offers twice

Well, I “ll be honest with you. Both of these were offers for an interview, not for a job. When four years ago I got a call from Google “s HR person from France I got excited. They found me online. No wonder, it would be weird if they wouldn “t run into a guy with such a big mouth as mine.

She was calling from France and I was vacationing in France at the time hellip; Google hellip;France hellip;It “s so romantic hellip;I got excited, really.

Pictured myself working at Google. Sergey Brin is passing by and I tell him, “I can speak Russian rdquo;. And he goes, “Really?.. rdquo;

Free day care on premises, twenty percent of my time I “d be allowed to work on my personal projects. Actually, my younger is in high school and at during the last fifteen years I “ve been spending 20% of my business hours working on personal stuff anyway. I was very productive back than.

Then I visualized myself in the interview room in front of the out of college MIT graduate asking me to name 10 algorithms of sorting an array except the bubble sort. I don “t remember anything other than java.util.Arrays.sort() ndash; I “d failed on this one. And then he would have asked, “How many piano tuning professionals are in San Francisco rdquo;. This one would be easy ndash; I “d shown him that I can think logically. But I doubt that I “d get an offer ndash; not knowing sorting procedures would be a deal breaker. Actually, I could google the answer if I “d be working at Google! I guess, Google is not interested in people who can google the answers. They need people who already know the answers. Anyway, I politely rejected the offer to meet.

Just wondering, if Java is still allowed on Google premises after the recent Oracle “s court appearances?

Last week a recruiter from Google New York contacted me on Linked In. This time I didn “t get excited. Now I “m a proud partner in a small software company, and it would be extremely hard for anyone to make me an offer I couldn “t reject. And then again, going through questions like “Write a regular expression which matches a email address rdquo; is boring and humiliating. I politely rejected again.

Interestingly enough, I wasn “t overly excited this time around. I still respect Google, but now I “m four years older, which doesn “t help in keeping the overall excitement level high. Maybe if Sergey Brin would stop by and told me, “Yakov, I ‘ve heard so much about you…You are Java Champion and Adobe Flex Certified Instructor…Would you be willing to switch to Python and work for me? ” I ‘d simply pulled my old iPhone (sorry, Android devices aren ‘t there yet) and simply said to his colleague, “Eric, would you mind taking a picture of me and Sergey? “

To build or not to build the mosque by Ground Zero?

If the President Obama believes that he must comment on a construction of a each building, I “ll be happy to share my opinion on the subject too. To put it short, I believe that the whole discussion is plain stupid and if someone received permits from a township on a construction of a building at a particular location this is all that matters. Let “s them build the mosque there.

Let “s apply some simple logic. Imagine, that the mosque construction will be banned. What would be the next logical step? Do not allow any Muslim come closer to Ground Zero than, say, a quarter of a mile. All businesses that are currently owned by Muslims and located in the vicinity of the Rector street must by closed. Police posts have to be established on the corner of the Canal and Broadway to check the ID of every taxi driver driving toward Staten Island Ferry. Muslims should be detoured through Holland Tunnel,than to NJ Turnpike, and back to New York through Goethals and Verrazano bridges, and Battery Tunnel. You wanted to get to the Ferry? You got it!

But how a regular police officer can tell that the driver is Muslim (not all of them are wearing turbans)? We can introduce a new short line in the Driver “s License: Muslim(Y/N)?

When all Muslims are taken care off, business owners from New York City should be allowed to put a sign “For Whites only rdquo;. When all this is done, appropriate restrictions should be imposed on Jewish New Yorkers too. Almost forgot about Indians. They shouldn “t be allowed to work in IT, which will immediately bring legions of kids to the Computer Science colleges.

Is this what you want? I don “t. So leave the mosque alone. Let them build it. Besides, the prices for the real estate in this area will sky rocket as soon as the construction is completed as this will become the safest area in the City. No one will even think of directing a hijacked plane there.

Should Oracle purchase Adobe?

Normal.dotm 0 0 1 194 1108 Farata 9 2 1360 12.0 0 false 18 pt 18 pt 0 0 false false false /* Style Definitions */ table.MsoNormalTable {mso-style-name:&”Table Normal&”; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:&”&”; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin-top:0in; mso-para-margin-right:0in; mso-para-margin-bottom:10.0pt; mso-para-margin-left:0in; mso-pagination:widow-orphan; font-size:12.0pt; font-family:&”Times New Roman&”; mso-ascii-font-family:Cambria; mso-ascii-theme-font:minor-latin; mso-hansi-font-family:Cambria; mso-hansi-theme-font:minor-latin;} 1. Sun Microsystems was a great engineering company

2. Sun created Java platform ndash; everyone could use it for free

3. Developers were happy that Java was free.

4. Apple doesn “t not allow JVM on iPhone, but Java community doesn “t care.

5. Sun could not monetize on Java other than winning a law suit against Microsoft ($1.6B). Other companies monetized on products built with Java.

6. Sun “s CTO and then CEO was a blogger with ponytail.

7. Oracle purchased Sun. Larry Ellison said that you [Sun CEO] can write as many blogs as you want, but blogs don “t sell computers.

8. Sun was firing salesmen, Oracle re-hires thousands of salesmen to sell Sun “s products.

9. Oracle started to kill acquired open source products with Open Solaris.

10. Adobe is a great engineering company

11. Adobe created Flash platform

12. Developers are happy that Flash Player is free.

13. Apple doesn “t not allow Flash Player on iPhone, and Flash community goes berserk about it.

14. Adobe could not monetize on Flash Player. Other companies (youtube) did it big time ($1.65B).

15. Adobe “s CTO is a blogger without a ponytail.

16. Adobe has one salesman who knows how to sell LiveCycle Data Services for $30K per CPU. Everyone else believes that this product is overpriced.

Should Oracle acquire Adobe, start making some cash from Flash Player, and offer one shop end-to-end enterprise solutions?

The unofficial history of Java applets

Fifteen years ago there was no iPhone and Android. Web browsers were hot. Netscape market share was over 90% – they didn ‘t have competition.The situation changed when Microsoft has introduces Internet Explorer (me too, me too). Back in 1998, there was an infamous law suite between Microsoft and Sun Microsystems ndash; the former started quietly introducing their own class libraries to Java breaking the write-once-run-anywhere idea of Sun that back then seemed to be achievable. Sun won that $1.6B law suite. But as the saying goes, they won the battle but lost the war.

Angry Microsoft refused to include upgrades to JVM that came with Internet Explorer, which seriously hurt applets popularity ndash; the end user couldn “t just open a Web page to see the applet that required, say 1.3 version of JVM. They “d need to first download the proper version of JVM, and only then the applets that were written with the assumption that JVM 1.3 was available would work. The process of downloading the right JVM Plug-in was a multi-step process, and a truck driver from Alabama wouldn “t be able to go through it.

Update. Two days after I published this blog, the news broke that Oracle decided to sue Google for the “wrong use ” of Java on Android platform. Does Larry Ellison have short memories? Sun literally killed Java on the desktop because of that old law suit with Microsoft. In the worst case scenario, if Oracle will win this law suit, Google may do the same thing as Apple did on the iOS and ban Java from this very promising Android platform. Given the fact that five years from now large portion of the applications will consist of a mobile device communicating with the cloud, Java will be seriously damaged. Imagine how many top-notch developers can be added to Java and JavaFX engineering teams at Oracle if the money spent on lawyers would be saved? Oracle, please stop!

High penetration of the required runtime environment and the ease of its upgrade are the crucial moments for any Web-based technology. Adobe Flash Player shines in this area today (sorry, Steve). Flash Player is also a virtual machine with a small memory footprint (1.5Mb), and its installation takes under 20 seconds after one button click. For years, the size of the JVM Plug-in was about 16Mb and install was complicated for a non-programmer, and (the rumor has it) ndash; it “s a lot smaller now.

This situation has changed after the release of Java 6 update 10, which includes so called next-generation Java Plug-in. Now applets don “t run in the JVM packaged with the Web browser, but run in a separate JVM launched by the Java Plug-in. The applet still appears in the Web browser “s window, but now it doesn “t depend on the goodwill of the browser vendor to include the latest Plug-in. You can read more about this Java Plug-in at https://jdk6.dev.java.net/plugin2.

The other major change introduced in the next-generation Java Plug-In is ability to launch Java applets directly from JNLP (Java Network Launch Protocol) files, which in the previous releases were used only in Java Web Start technology that allowed local deployment of the applications over the network. As of Java 10.6.10 you can use the JNLP meta descriptors to launch applets too. JNLP support is described in details at http://www.oracle.com/technetwork/java/javase/index-142562.html.

Earlier versions of HTML standard included the tag lt;applet gt; to incorporate Java applets into HTML page. But as of HTML 4.01 this tag has been deprecated and you should use the tags lt;object gt; for users who like Internet Explorer or lt;embed gt; for other Web browsers. But Oracle, the company behind Java, recommends using lt;applet gt; for Web pages accessed through the Internet and lt;object gt; or lt;embed gt; for intranet-based Web sites. The main reason being that Web browser vendors are infamous for being inconsistent of implementing HTML standards, and it “s safer to use tried and true lt;applet gt; tag to get predictable look and feel of the Web pages that host Java applets. But intranet is a more controlled environment. You can read about the differences of embedding applets with these tags at http://download.oracle.com/javase/6/docs/technotes/guides/plugin/developer_guide/using_tags.html. When young and old kids (sorry Steve) tell that HTML 5 will change the world, it ‘s funny.

The deployment options for applets have been extended as of release of Java 6 update 10. To learn all the options of applet deployment in depth, refer to the Oracle document titled “Java Rich Internet Applications Deployment Advice rdquo; available at http://download.oracle.com/javase/6/docs/technotes/guides/jweb/deployment_advice.html.

What “s the next step in applet “s evolution? You “ll be creating UI for the Web-based applications with a relatively new language called JavaFX. In a month, I ‘ll be trying to attend every JavaFX technical session at JavaOne conference to see if it ‘ll become a real competition to Adobe Flex and Microsoft Silverlight. By the way, anyone heard any noise about Apple not letting JVM on the iPhone? Neither did I. Do you know why?

If you ‘re not into Java applets, consider attending our Third Annual Enterprise Flex Symposium in New York City. It “s a small event where attendees and presenters will talk turkey about Adobe Flex.

If the drumming trade would be outsourced

When I was working in New York City, pretty often I was passing by the street drummers like this one .

Here ‘s another one .

When a street drummer goes main stream, the project get more expensive but the deliverables are great.

When the drumming gets outsources to Russia, you get kids working on your project.

When this business gets outsourced to India, it ‘s sounds a little different.

Chinese strategy is to bring lots of people to the project. Someone might get it right.

In Mexico the same functional spec is implemented in a simplified manner.

What country works on your project?

To use or not to use Flash/Flex portals for Web sites

Last week I was thinking about design of the main view of a new project for a new client of ours. This application is interesting in that it can deployed as an enterprise RIA as well as a tool to be used by any consumer connected to the Internet.

The mockup of the main view looks clearly like a Web portal with a number of portlets, which can be maximized, moved around, and independently communicate with the server(s). But hellip; This Web site has to be discoverable to bring more and more new customers.

Here comes the quiz. Can you see why the previous two paragraphs have an important logical issue, which represents a misconception sitting in minds of many creators of Web content?

Being a Java developer, the JSR 168 is always in my mind and the first annoying thought is, “I can create a traditional HTML/JavaScript Web site with portlets, some of each are Flash Player SWF “s and the others are regular HTML/JS markup. This will give to search engines enough of a textual chew to digest plus the benefits of more animated, engaging, and better performing (sorry, Steve) Flash content rdquo;. If some of you want to bring these dopey and groundless Adobe statements that Google is indexing Flash content with special secret, mighty, but headless Flash Player, please, get real or show me the money.

I know how to create a well looking and performing Flex/Flash based portal. I know how to cut this RIA into pieces, how to run this project, how split the job between team members located all around the globe. I don “t know just one thing ndash; how to make this Flash-based portal d-i-s-c-o-v-e-r-a-b-l-e on the Web.

And here comes the answer to my quiz. Stop confusing Web sites and rich Internet applications! Got it? OK, let me re-phrase it. A Web site and RIA are created for different purposes. Creating an HTML/JS Web site to present, promote, and make discoverable your RIA is one independent track of your project. And a-f-t-e-r the random user somehow landed on this Web page offer him or her a little link to the real beauty ndash; a Flash-based (sorry, Steve) portal.

That “s all folks. It “s Sunday morning, and I need to go out and get some stuff for the barbecue ndash; having more than 20 people over today.

If you want to discuss it in person, consider attending our Third Annual Enterprise Flex Symposium in New York City. It “s a small event where attendees and presenters can have face-to-face conversations.