Thoughts of an Aging Programmer

I “m still under 50, and during the last 25 years I work as software engineer (the title does not really matter because most of the time I work as a consultant). What “s next?

Software Engineering is a very competitive profession. The question is if I can compete with a 30-years old software engineer from Bangalore? Should I move over? As of today, I do not have problems with employment charging at least five times more than most of the young offshore programmers. Will it last? Yes, for a while. I “m a down to Earth person and realize that if you lock me in the room with a 30-years old programmer and give us 30 minutes and an assignment to write a program that uses linked lists without using Google, I “ll loose. They are faster. They type as typists… Fifty characters at the speed of sound, then 30 hits on Backspace…and then another 30 at the speed of sound…They know the names of the classes and methods in these linked lists, but they are not always sure when to use them. They pass technical interviews easily by studying the API. I wrote a “bestselling ” article with these kinds of interview questions that was read by about half a million readers. What a success! But read the feedback to this article – it gives me goose bumps.

Do I want to become a young programmer again? No. I “ve been there already. I “ve been programming at 25, at 35 and at 45. I “m better now. I “m wiser now and I “m happy to move forward, not backward.

Yesterday, I “ve been doing my taxes with my accountant who is older and wiser than me, and somehow the same question came up ndash; do you want to be young again?

He said, “Young – no, but I want to be 40 again rdquo;.

Why?

“I just like the look and feeling of myself at 40. rdquo;

But you can exercise now and improve your look and feel.

“I know, but at 40 I did not need to exercise hellip; rdquo;

Once in a while I started getting rejected by employers. Ten years ago it was never the case. Getting a job interview ALWAYS meant getting a job. Now situation is different. These days I “m being offered jobs without being interviewed. I have a big mouth and just googling my name generates lots of materials (noise too) that often gives some managers enough reasons to hire me right away. But once in a while I “m getting these multi-person technical interrogations with poking needles under my nails. Recently, I went through two hours of interviews with a large financial firm. To my own surprise I still knew the answers to all the questions. And they have not been shy. This was a Java interview, but the guy asked me, “What would you do if you had to send a message using MQ Series, and you have a message in the ASCII encoding on one end and EBCDIC on another. How do you like this under-the-belt question? Anyway, I knew the answer, and said that since we ‘re using JMS on the Java side, we can cast a generic TopicConnectionFactory to IBM “s implementation and set a parameter (do not remember exact name) to specify that there is non-JMS reader on the other end of the queue. I know this because I did it back in 2000. The interviewer exclaimed, “Did not you guys have MQ administrator? There is a configurable parameter that they could have set on the queue, so you would not even need to do it programmatically! rdquo; Then he revealed that he “s working with MQ Series from version 1.0 (more than 10 years). What can I say hellip; I know, I did well on this interview, but I was rejected. The guy who sent me there simply said, “They decided to hire someone else rdquo;. I can think of two reasons ndash; either “my failure rdquo; with the MQ guy was crucial, or I just was too expensive comparing to other candidates. No sweat. I have more projects on my plate than I can handle. Moving on hellip;

So why employers still hire me over the younger and less expensive candidates? Because they want to have insurance. If everything goes as planned, young programmers have no problems. Now raise your hand if your last five projects went as planned hellip; I “ve been working with well trained young programmers, who just panicked when they needed to provide a solution to a production problem in a high-pressure situation. Employers want to make sure that the project will move on if something unexpected happens down the road. They want insurance because a failure of the project may hurt their career too. That “s why they hire me, and I “ll do my best to make sure they succeed. This is THE ultimate goal of any seasoned consultant ndash; make sure that the hiring manager succeeds.

All right, this is good enough for this morning, it “s time to get ready for work.

Disclaimer: I wrote this blog after reading a small and very smart book called Tuesdays with Morrie . My 12-year old son has read it by accident and said that adults can read this book too. I highly recommend you to read the book, and then you might want to re-read this blog again.

Farata Systems made the list of top Flex firms

Ted Patrick, a noted Flex Evangelist from Adobe has published a list of top dozen of consulting firms that offer application development using Adobe Flex. I ‘m happy to see our firm, Farata Systems in this list.

Ted writes, “The list is based on the consulting firms that I have worked with directly and who have delivered multiple successful Flex applications to clients. In every case you will find that the firms know Flex inside out and are some of the best minds in the business of RIA application development. ”

Thank you Ted, and I ‘d like to use this opportunity to introduce ourselves to those who did not have a chance to work with us yet.

We ‘ve put lots of efforts into studying Flex Framework – we ‘ve spent time going deep under the Flex skin, learning its source code to make sure we can offer the most efficient solutions to our customers. The fact that Flex is a well designed extensible framework has allowed us to start building our own component that dramatically improved our team ‘s productivity while working on the enterprise applications with Flex and Java, and this week we are going to offer Beta version of some of these components at myflex.org.

Besides offering consulting services, we blog and publish technical articles, we ‘ve published a book “Rich Internet Applications with Adobe Flex and Java “, and we teach Flex based on our real-world experience of developing enterprise applications.

Please let me know if you need help with any of your Flex-related projects.

My Upcoming Flex Teaching Engagements

Out of all my Flex-related work, teaching is my most enjoyable activity. This is an extract of upcoming confirmed public Flex training classes that I “ll be involved with in Spring-Summer “07.

On April 12, I “m starting my Flex hands-on Intro class at New York University that consists of five weekly evening sessions. I taught such a class last November, and in my opinion, it “s the most efficient way of learning Flex programming ndash; students have a week for self-studies between the sessions, and then in class they get answers for some not so obvious programming concepts.

Beside this one, my partner Victor and I will be running a series of intensive one-day Flex workshops across the country. First, we ran such workshop as a part of the AjaxWorld conference last month in New York City. We “ve received very positive feedback and were invited to re-run this class in various cities across the USA. This hands-on-bring-your-laptop class consists of two parts – during the first 4 hours you “ll learn the basics of Flex, and after lunch you “ll be learning how to use Flex with the server side programs (we use Tomcat and MySQL Server database). This workshop is geared toward busy enterprise developers and managers, who can “t afford taking a week off for training but need a jump start for their upcoming Flex projects.

These are the dates/cities for this one-day workshop:

May 7, Minneapolis, MN,

June 24, New York, NY

July 23, Washington D.C.

August 27, Austin, TX,

September 23, Santa Clara, CA

Farata Systems also offers this workshop, but at a slower pace as a two-days deal ndash; let me know if you “d like to run it at your site.

During the same period I “ll be running a couple of Adobe Certified training classes, but these are for enterprise clients of Farata Systems and they are not available for general public.

See you in class,

Yakov Fain

Me goes to Redmond. Day 3.

Continuing taking notes at the Microsoft Technology Summit 2007…

Starting with some random things.

We were told that the attire is business casual, but in the reality, majority of MS employees are just wearing jeans.

There is this blog Mini Microsoft . The guy works for Microsoft, but writes anonymously. No one knows who s/he is, but MS employees like the fact that this person not only identifies what “s wrong at MS, but also offers some suggestions on how to improve things.

Microsoft has its own a very slick version of maps (is every one else knew this all along?). Check the Microsoft ‘s maps out . They have stuff similar to Google Earth, and they have Europe too, check out the Paris map. The good thing is that you do not need to know exact address ndash; just right-click and select driving directions to this point (Yahoo! maps has this feature too, Google is lagging behind. Boo.)

The morning started with MS guys asking for more feedback ndash; just write you suggestion on the white board. My complain is about Vista “s reincarnation of GPF and lack of drivers for various devices. There was a suggestion that the speakers should better explain how things actually work. I said some speakers were not prepared for giving talks. Walking on the podium in shorts and sandals is cool, as long as they give us some content.

Security at Microsoft, Michael Howard

Security team meets with Bill G. and he kills the initiatives unless some real progress is shown.

A question from the audience, “Can I (a third party-person) sign up for your security training class? rdquo;

Michael, “If you sign a Non-Disclosure Agreement I do not have problem with this. rdquo;

They work hard on threat modeling, have tools, but tools are not a replacement for human. Having good engineers is very important.

The rest of the session is about various ways of finding security bugs in Windows Vista.

All of a sudden, a meeting reminder pops up on the screen, and one of items reads Head Home, 17 hours overdue.

– Do you really have to put this reminder?

– Yes, I actually also have Eat and Read reminders.

Michael obviously knows his stuff, and I guess the message from this presentation is “MS cares about security rdquo;. Got the message.

Sam Ramji , Open Source Lab

In 1995, we “d say that MS is the company that missed the Internet. Now you might say that MS is the company that missed the open source. My job is to make sure that it “s not the case. We address interoperability issues, i.e. if you are connecting from your Vista PC to your office Linux workstation. Steve Ballmer told them ndash; go to the product teams and make them cry ndash; show them what “s available for free in the open source community.

We care about Samba. We “ve invited top FireFox developers discussing problems with them. Port 25 http://port25.technet.com/ is the place where we talk to the community.

The speaker goes, “How many people are software engineers? rdquo; Lots of hands. “How many people are still writing software? rdquo; Lots of hands and one guy says “I “m doing it right now rdquo;. It “s funny.

VP Sanjay Pathasarathy, VP Keynote

Sanjay has started as evangelist for Windows 3.0. OK, yet another volunteer that does not really have to work anymore.

He oversees the blogging community at MS.

Started an effort called Channel 9, probably you “ve heard about it. No, I did not. He enjoys art and photography. Works with various communities (i.e. student ambassadors, competitions etc).

Mentoring tone hellip;Asks for feedback hellip;

From the audience, rdquo;We were told that MS is like thousand small startups, and it “s not clear who to talk to rdquo;.

“I can put money and resources if needed hellip; rdquo;

73% use .Net and 37% use Java.

Mentoring tone hellip;Behaves like a star hellip;May be he is hellip;But where is the show?

From the audience, “I run the computing department of a college. We have 76 applications in our teaching process, and I “ve yet to see one that works with Vista rdquo;.

“I “ll get you the information rdquo;.

“How come that you make Vista incompatible with your own applications, this is a dumb thing to do! rdquo;

“Apparently we believed that this was the right thing to do hellip; We did it for the right reasons hellip; rdquo; Sanjai sounds as if he knows some secret reason, but can not explain it to mere mortals like us.

“We should have done a better job telling people which applications do not work with Vista hellip;This was bugging me for two weeks, maybe Wiki is a way to go rdquo;.

I did not learn much from this talk hellip;

Internet Information Server 7, Bill Staples , Carlos Aguilar Mares

The IIS team has only 15 developers. Not enough to build a Web platform.

IIS6 was a monolithic server implementation. IIS7 is a componentized server, which enables lightweight servers. Live demo of creating logging C# managed module that insert log messages into a SQLServer database. It “s only 40 lines of code.

Now IIS supports PHP. Live demo. Output caching increases throughput from 56 requests per sec to 8000 requests per sec.

ASP.Net 2.0 Ajax, Joe Stagner

Audience, “Does you AJAX works with J2EE applications? rdquo;

“Lot “s of folks are looking at AJAX from the eye-candy components perspective. More interesting is what kind of applications you can build with Ajax rdquo;. Joe gave a sample of a mashup for Domino pizza, where a caller id brings the address, photo of the house and calculates the optimal route for 4-5 pizza deliveries.

They have AJAX extensions, client library (JavaScript-based browser independent), control toolkit , futures CTP, and codeplex.com additions.

Audience, “Why not use one of the existing client libraries and build your own? rdquo;

“I do not think any of the available client libraries provides all features we need. rdquo;

Joe is building a Web site in Visual studio. Quick and easy. Drag and drop Ajax control with auto code generation. Event-driven programming in xml.

“Joe, how much is this Visual Studio that you are using? rdquo;

“It “s free rdquo;

“How much is your soul? rdquo;

Many enterprise clients believe that AJAX will decrease the server load ndash; it exactly the opposite.

WSDL stands for We Suffer Daily Language.

Oswd.org ndash; is a web design site.

My questions: rdquo;XMLHttpRequest was introduced by Microsoft in 1999, it “s still not standardized, what are the plans? rdquo;

“XMLHttpRequest was introduced to support Web version of the outlook, today “s it “s an ActiveX control for IE6, but it “s not the case for IE7 rdquo;

“Does it mean that all existing applications would need to modify code to move to IE7? rdquo;

“There was no easy way to retrofit new solution to IE6, but only instantiation of XMLHttpRequest will change, but you already have this is-statement anyway to check the browser. The rest will stay the same rdquo;.

WPF and WPF/E, Celso Gomes, Interactive Media Designer

MS Expression Blend ndash; similar to Flash with timelines. Download Blend and see six samples there. Some of the sample use C# and some of them just Blend.

Good separation of work between designers and developers. Design is delivered as XAML and given to developers. And vice versa ndash; a developer gives the code to the designer who just drags and drops the name of the code handler on the GUI control.

Drag XML to a control and it binds it to the control you need.

After initial creation of the control you can turn it into a new reusable User Control.

Now you can create an animation using timeline.

Grand Piano is a really cool application ndash; you can press the keys and it plays the note.

A demo of the book with turning pages. Ely Greenfield from Adobe has created a similar Flex component.

The demo of the 3D component with video and sounds that uses WPF engine is next.

WPF/E demo that reuses the same book and piano components. In this version there is no C#, but JavaScript is compiled on the fly and an ActiveX plays it. There is a version for FireFox and Safari as well.

Adobe Flex has a very serious competitor.

Xbox Extensibility, Jason Mauer

XNA moves .Net to game development. Most of the games were written in C++, but since 2006 it “s XNA. There are XNA frameworks for PC and for Xbox, and the framework is royalty free. There is an IDE called XNA Game Studio Express.

Performance is great both on PC and Xbox. There is a community called XNA Creators Club.

Here comes the demo of Xbox 360 running. Then Joe creates a game using Visual studio and a Spacewar Starter Kit.

What “s left? A visit to the Microsoft company store (we can purchase goods for $120 at employees prices), then quick dinner and back to the airport. Since I won “t stay for the third day, I “ll write a quick summary on the plane.

P.S. The Microsoft store sells their software for their employees for cheap. For example, Vista Professional is 45 bucks, Office professional $60 or so. XBox 360 is $435. I did not buy the software as we were promised to get a one year free MSDN subscription. I bought Micrrosoft games for PC, i.e. a Flight Simulator DVD costs $15.

Me returned from Redmond

This is my summary post about Microsoft Technology Summit 2007. For more details read day 1 , day 2 , and day 3.

1. Organization of this event was flawless.

2. Microsoft will do anything to sell more Windows licenses. Selling licenses is their today “s business model and they are serious about it.

3. I learned a new term “Coopetition rdquo; ndash; they “ll work with any other firm but will compete with them too. If Firefox has a cool feature that works in Vista, MS will be happy to work with Firefox, because this may help them to sell Vista licenses. No one just buys operational systems, people buy applications, and because of the OS. See item #1.

4. All presenters are smart people, and most of them are software engineers. Their minds are sharpened to make MS successful.

5. Google was mentioned on several occasions ndash; it bothers MS. These two companies make tons of money by using absolutely different business models (selling licenses vs. selling ads), but today “s cool-factor is at the Google “s side.

6. MS engineers are obsessed with non-disclosure agreements. Sometime I had a feeling that people are afraid to say too much.

7. Visual Studio 2005 Express Edition is free and can get you far.

8. It was a really pleasant experience interacting with people who I call “modest millionaires rdquo;. Whenever a speaker would introduce himself with the words, rdquo;I work for Microsoft for 15 years rdquo;, this technically means that this guy does not need to work anymore, and is just “volunteering rdquo; because his life would be boring otherwise.

9. Some of the speakers were not prepared ndash; it “s a star syndrome. I guess they were expecting that the audience would be happy just from being in the same room. But I preffer substance.

10. Is Microsoft for men only? There were no female speakers.

11. WPF and WPF/E will seriously compete with Adobe Flex and Apollo leaving Java and AJAX way behind in the fields of Web and Desktop application development. I am a Java developer and am not affiliated neither with Adobe nor with Microsoft, which hopefully makes my assessment a bit more trustworthy.

12. Microsoft is not evil. It “s a bunch of smart people. The just want to sell you a little more licenses. Buy them – they have good products, really.

Thank you Microsoft for inviting me, just being here is a memorable experience, and I wish Microsoft success with their software in this very-very competitive world. We will all benefit from it. Most of us are making a living by using Windows one way or another.

Me goes to Redmond. Day 2.

Continuing the story …90% of this Microsoft Technology Summit are non-Microsoft developers, but they were recommended by someone from Microsoft. They want to show what “s new and exciting happening at MS so people would take a look at it as opposed to just blindly assuming that if it “s coming from Redmond, it “s not worth even looking at. MS wants us to either say something like, “Wow, I did not know that such thing even exist rdquo;, or say “Nay, so-an-so has a much tool/technology for this rdquo;. They also want to achieve a multiplying effect: the attendees might tell about MS products to their customers. Any feedback is welcome.

It “s Monday morning, and we “ve arrived to Microsoft Campus at Redmond. It “s huge. At least three dozen of large office buildings in a park-like settings by the lake. The lady behind the coffee counter is serving everything-you-can-get-at-Starbucks coffee. After a short wait in line, I “m ready to order. The lady apologized ndash; please wait a couple of moments ndash; the coffee machine needs to re-power itself. Can “t resist myself from saying that at Microsoft even coffee machines need to be rebooted.

During the breakfast I was sitting at the same table with a guy wearing a sweatshirt with the AJAX logo. I “ve attended his presentation on AJAX last year. So I introduced myself, and said the I “ve attended his talk.

“Did you like it? rdquo;.

“You are a good speaker, but I do not like Ajax that much rdquo;

The guy immediately raises his sweatshirt showing a red t-shirt with the sign “Apollo rdquo; ( a product by Adobe). This was funny. Three other guys at the table are from Vietnam, and Microsoft flew them over to Redmond as well as some people from Thailand, Australia, Malasia and South Korea. Most of the people are from the USA though.

Entering the conference room hellip; first thing I usually do is hellip; try to guess hellip;I “m looking for a seat closest to the electric outlet. You won “t believe me, but there are power extenders under the tables so everyone can plug in their laptops without the need to sit somewhere in the corner on the floor by the power source.

Presentations notes

Bill Hilf, General Manager, talk on MS involvement with open source

Sample open source projects – Rotor, FlexWiki, Wix, OSS@MS Lab, put early Vista in Linux to find bugs, LinuxWorld SF, cooperation with JBoss, PHP). Why do we do this? Money, money, money. It helps to sell more Windows licenses after deals with JBoss to work with Windows Servers, PHP fixes, etc. Every time MS shows up on Slashdot, someone will leave a comment, “It “s a trap! rdquo;. SharePoint Community Kit is very important to MS. http://www.codeplex.com ndash; MS open source community (did not agree with the sourceforge restrictions that the code should be OSI license compliant) .

They have a term Coopetition ndash; being a partner and compete (Sun, Apple, SAP, IBM).

Someone asked about incompatibility of the MSWord 2007 format with previous versions of Word. Bill was trying to give a soft answer, but someone from the audience said “No one having a half brain would believe your last statement rdquo; hellip; Did MS expect this kind of a feedback?

Kevin Schofield, Microsoft Research

750 people in research labs. Typo-squatting names ndash; victorasecrets.com

Work whenever ndash; a funny commercial “Hi, I “m sitting among snakes and using MS Word, and it works rdquo; hellip;

Gigapixel panoramas, where you can zoom in termendeously.

Image recognition technology – Kevin puts different objects under the camera, the software scans the image and puts the name of the object next to it. If it does not recognize the object, just type in the name of the object manually, and it “ll recognize it next time. Not flawless but nice.

A video showing the interaction of virtual and visual objects. Real hands play checkers with the ghost hands.

Verifiable composability. Code should consist of smaller loosely-coupled components. CPUs are about to reach their clock limits. The power density inside the chip is way too high.

Mark Baciak, SOA

Leveraging existing assets in a loosely-coupled manner

SOA vehicles: POC, Enterprise need, fully funded project

Business Success Criteris: Agility, Reuse, Financial Savings

Technical Success Criteria: Responsiveness to business problems, access to closed systems, reduction in total costs.

Service Orientation, User Experience, Workflow, Federated Identity, Federated data.

SOA “s Multiple personality disorder. For business and for IT SOA means different things.

A real-world approach: business drivers, do not do everything at once.

SML ndash; Service Modelling Language ndash; a replacement of UML in services.

Not the most exiting preso.

Jim Hugunin , John Lam ,

Dynamic Languages on the CLR

Jim has been working with Python, Jython, Eclipse. He wanted to show that CLR is not a good platform and spend two weeks to create a prototype hellip; just to find out that Python works great on CLR. Microsoft has hired him.

This was an informal discussion that started with putting on the screen a list of questions from the audience. Some of the questions were turned back to the audience.

1. Ruby or Python, which sucks less?

I like Python ndash; it fits my mind best. Some people find the same in Ruby. There is not a big differences between them. Both of them are more powerful than JavaScript.

2. How are you going to lock us into your platform?

Iron Python was always a completely compliant implantation and is completely integrated with .Net. But hellip; s= rdquo;abc rdquo; and s.Trim() behave differently in Python and .Net. Had to do a workaround like import clr into the python code. But you may become locked in because .Net can provide you some nice libraries, which you “ll like and start using.

3. What “s the plan for PHP?

Who wants PHP running on .Net? Would you start working with .Net if it had PHP? No. MS has limited resources and the main priority is to attract more developers to .Net.

4. What is it going to take for Rails to run on top of .Net?

Why? Audience – Deployment of Ruby is a pain, it runs on a toy VM, we want to sell it to enterprise customers, but they need a real VM. Would MS Sell more Window Server licenses if it had Ruby on .Net?

5. When is the veil of silence going to be lifted?

When I started at MS, I was silent for 8 months. Things changes a lot, and we are more open now. We just released Iron Python 1.1, which has bug reports and open discussions.

6. Why dynamic languages?

I want a bit more freedom that I get in static ones. Patterns are workaround to limitations that static languageshave. Dynamic gives more power, it does less compile time checking, but you do the unit testing anyway that would check everything anyway?

7. Do we want to run the CLR in IE?

Audience ndash; we “d have very fast JavaScript and Ruby inside the browser. Testing would be easier in terms of having visibility into CLR. There are fast and and powerful competitors like Flash Player and Java VM, and this would help in debugging large AJAX applications.

8. Should dynamic languages be an intro CS100 language?

These languages are giving you a chance to start programming faster, while static languages require you to learn a lot more concepts before you even start programming.

public static void main(String[] args){

System.out.println( “Hello World rdquo;);

}

vs.

puts “Hello World rdquo;

9. What about IDE support?

MS ships a Python integration with Visual Studio, and you can use a debugger. Profiler works porly. A lot of people in the Python community are pretty happy with emacs or Notepad.

Cardspace, Kim Cameron

Internet was not originally created with security in mind. Now it “s identity crisis. Internet is dangerous. 25% stopped using online banking, and 22% cut back.

Microsoft passport introduced several years ago, was a big failure. You can download the paper The Laws of Identity from identityblog.com.

The digital Identity is a set of claims made by one party about another party. You wallet consists of a number of credentials (cards), and each of these cards represents some claims. We need a metaphor so people can easily use it. Like copying a file or a folder by dragging a picture ndash; we need “thingification rdquo; of the processes.

Cardspace is not a Microsoft thing. Inter-operable software is buing built by Sun, IBM, Novell, hellip; The cardspace is only visible for the page it “s in (it “s an lt;Object gt; tag that talks to an interesting party). It “s using a public key technology and it can “t be used by the phishing sites. Other programs (like viruses) can “t see the card. The infocard itself is not your security info, it “s a pointer to a Web Service that provides verification of your identity.

XAML/WF/WCF, Don Box (one of the authors of SOAP) ,

Chris Anderson (Godfather of XAML, architect of WPF)

In the beginning: Ajax, please save us from Flash. Ho do we suck?

These speakers also asked us to come up with question so they “d key in and answered.

I asked “How far behind is WPF you comparing to Adobe Flex? rdquo;

And Don typed, rdquo;How ahead are we ahead relative to Adobe? rdquo;

Yes, we kind of suck in there and have a lot of work to do in the E2E app platform.

The CLR and JIT is better than Adobe “s. Current WPF/E run in JavaScript based visualization engine.

WCF and enterprise heterogenity?

In a real world, people are not using ActiveMQ, because it “s not available on other machines. WCF “s goal is to make Windows the best OS on the planet. In the interoperability, I “d give us a B. For Metadata I “d give us a C. In the MOM area we have suboptimal products. Indigo is A minus.

REST circa 1998?

There are five degrees of REST:

1. Get the WSDL and XSD out of my face (the methadata systems is very complex). If you are Sun on MS, you can just throw in more engineers and make it work. But if you are not, you are screwed. We should get out of the XSD schema as fast as we can.

2. Get the SOAP out of my face

SOAP itself is not evil by itself, but XSD makes it bad. If SOAP would be optional, it would be perfect.

3. Put the URI in my face

The Web works simply as GET and several POST. Web has URI. We “ll work more to improve work with URI in Indigo

4. Respect GET

The magic Internet word is GET.

5. Embrace PUT and DELETE

Reality of the Web is GET and POST.

PUT/DELETE over POST works for us.

I “m not sure 5 has massive legs, but 3 and 4 we do the best.

Who wants to sacrifice their career to fix Ballmer (originally, how to stop Ballmer from over-promising)?

I apologize, but there is nothing I can do.

Flash vs. wpf.

– WPF is a very scalable solution (it has a full stack from an internet to a desktop application, we offer the solution for various devices). The mobile piece suck, I agree.

What is XAML?

It “s JSON with angle brackets

XPS is a document format internal to WPF.

At this point Don writes on the screen, “chris keep going while I pee rdquo;.

Best Vista drivers ndash; MS Natural Video Card?

Go to http://www.nvidia.com

Is Microsoft viable?

Chris: What “s my motivation to work for MS ndash; I want to work with so many smart people. I get excited by people I work with. I can make a difference, and my work on wpf has an impact. MS is lots of little companies, and you can choose one to work in.

Don: and one of these companies will find a way to crash Google. But Google is the best thing that ever happen to MS. Without a strong competitor we do not do so good.

The presentation finished with discussion of why Microsoft is not cool anymore, and how Google beats them up.

One of the attendees told a story of a friend ‘s son who lives in Seattle, but does not want to work for Microsoft because he does not want to become a project manager of a dialog box. The other question for the speakers was when they will stop asking during the interviews how much water is in all American lakes? Everyone started to laugh.

This was an entertaining presentation with a little content. I might be a little old fashioned, but saying that XSD is a f..ing piece of crap is a bit too much for a presenter. You can be cool without the need to curse from the podium. Now our Vietnam friends will get an impression that this is how American software developers communicate.

It “s been a long day, getting ready for dinner.

Not yet another photo album application. Wow!

I got this link from NY Java SIG. Just stop doing what you ‘re doing and watch this Youtube video now…Talking about best practices in creating GUI… I teach development of rich Internet applications with Flex at NYU, but little did I know about amazing experiments that are going on in the labs of this school. Adobe should invest in this amazing research, unless it ‘s too late. Apple? Sony? Microsoft? Someone has to shell out some serious cash here.

Me goes to Redmond. Day 1.

It “s Sunday morning and I “m sitting on the plane that “s going to Seattle. Microsoft has invited a group of about 50 people from around the country to participate in Microsoft Technology Summit 2007. I “m not sure why I was invited as I “m still thinking in Java, so my first goal is to find out what criteria was used to form this group. The invite sated that all expenses would be paid by Microsoft, which made it a good case to be presented to my wife (I “d need to miss a couple of days of work). To my surprise, she said immediately, “You should go there rdquo;. So here I am flying to Seattle once again (six months ago I was there to study and take the test to become an Adobe Certified Flex Instructor.

This summit is a three day seminar where people who create Microsoft software products will present them to us, and we are encouraged to engage into open conversations and critique if need be. Three days is a bit too much for me, so I “ll spend there full Monday and Tuesday immersing into Microsoft “s very soft ware.

Now about the important stuff ndash; tonight is a reception at the restaurant, Monday night is a dinner and wine tasting, and we “ll have a beer on Tuesday evening. This is were you actually start real networking and learn something that Google does not pick up. I love meeting people, and I “m sure that getting together with Microsoft team and the summit invitees will be a memorable and useful experience. Stay tuned.

This blog was written on the plane and posted from a Seattle taxi cab. 21st century, you know…

Oracle acquires Tangosol. Congrats, Cameron!

Oracle is moving fast – it took them only ten days to react to my article …and they decided to purchase Tangosol. Congratulation, Cameron, well deserved!

On a serious note, things like this do not happen in ten days. It took Cameron and his team years to build a robust distributed cache offering, after that he had to build a solid clientelle, and only then Tangosol started appearing on Oracles radars.

Anyway, it ‘s an exiting news for Tangosol. Hopefully the funds for their JavaOne party will not be eliminated as a result of this acquisition.

AJAX. A year after.

I ‘m writing this right after the opening keynote of noted Douglas Crockford, creator of JSON. It ‘s been a year since the first AJAX conference took place here in New York. What has changed?

AJAX speakers have one thing in common – most of the time they like to talk about all kinds of issues that AJAX has. This conference has started on the same note. Douglas went through lots of issues that are common to AJAX development and deployment on the Web. Security, cross-scripting, lack of W3C standards that make sense in the real world, accessibility is not being addressed… Last year I ‘ve heard exact same things . Actually, there is something new this year: as per Douglas, there is about 200 AJAX frameworks available, and he expressed hope that this would be a shake-up year and many of these frameworks will be gone in 2008. We ‘ll see.