Freaking out in Fatherly Ways

Sean, my 9 year old , asked me what I would like to have for breakfast tommorrow.  When I asked why, he informed me that tommorrow is Father's Day.  Oh.  So I thought about breakfast food that would least imperil our kitchen and my son: an egg, sunnyside up.  Now that is settled, I am going to be mildly concerned from now til breakfast tommorrow.

When he was five or so, he got up early one morning and decided to make himself breakfast using the microwave.  He mistakenly entered an extra zero into the microwave panel and his intended food was literally vaporized into toxic fumes that stunk up every corners of the house.  He said he wanted to warmup his food but the plate was empty when he opened the microwave.  Oy!

Never buy a kid toy microwave.  It will just give him enough false confidence to stink up the entire house for a month with a real one later.  I am just glad it happened in the Summer.  Anyway, now you know why I am concerned about tommorrow's breakfast.  I think I am going to go to sleep really late so my wife would be there to help him prepare breakfast.

Update: I just had my breakfast.  Although the breakfast was forced upon me after only four hours of sleep, my son and our kitchen came through just fine.  No comments on the breakfast itself.

Laszlo

On Marc Canter's recommendation, I am playing with Laszlo today.  It's basically a Flash-based application server/development tool using LZX, an XML-based language, to describe to the application.  It's somewhat like server-side XUL with ActionScript embedding.  A Java-based servlet eats LZX and spits out SWF.  Obviously, Laszlo has to do a lot of smart fine-grained caching for performance. 

Although I had a bit of trouble during installation (Radio was using port 8080 unnecessarily and one part of startup configuration was hardwired to default installation location), but it is running now and looks great (except for that UI feedback delay in Flash-based UIs reminiscent of videotext UIs).  Cool.  I like it so far.  I'll tinker with it over this weekend and report back.

Thanks, Marc.  BTW, you are absolutely right about that damned Timeline.  Macromedia executives need brain transplants IMHO if they think a thick coat of makeup and a new product positioning statement will work.  Nothing short of deep soul searching, bareassed understanding of developers' needs, and willingness to invest time and resources long overdue will work.

As to Macromedia stealing Laszlo's idea, I don't think there is anything wrong with recognizing a good thing and embracing the ideas behind it.  Besides, I had a similar idea a while back.  What I don't understand is why Macromedia didn't buy Laszlo.  Laszlo obviously has good people with good heads and the ability to execute.  Why bother mimicking when you can get the original and extend it?

Web Matrix Reloaded

Microsoft's ASP.NET Teams have released an upgrade to Web Matrix, Mini Me to VS.NET.  It looks great, particularly its HTML editor.  I wish they would release the source code for Web Matrix though.  That would save a lot of folks a mountain of time.  Same comment applies to other projects by Microsoft employees like RSS Bandit which is open source only if you join the project. [correction: RSS Bandit source code is now included in the installation.  Cool.]

Loosen up guys!  I swear I never ogled a Linux box.  Well, maybe for just a couple of blinking prompts, but I never gone all the way.

Flashing XML

I have been playing with Flash and XML last night, hoping to show today something fun for people to play.  It's taking longer than I originally estimated.  I must say, Flash MX is one confusing IDE.  UI design is fast becoming a lost artform these days.

Going Loopy

Tim Bray is going Loopy trying to find a way to get around CLR's array bounds checking overhead by trying different C++ expressions.  Short of using unsafe code, there is no reliable way of doing this because no legal sequence of IL bytecodes can ever tell CLR to bypass array bounds-checking.  If there is, then it is a security hole.

However, one can *make it easier* for the JIT implementation to figure out that there is no need for bounds-checking inside a loop by using simpler or more direct expressions like C#'s 'foreach' statement.  Unfortunately, C++ doesn't have an equivalent to foreach.  I use mostly C# in my .NET projects because I found that C# compiler generates more optimized IL bytecodes in general.

Watch java.net

Sun is doing something big with java.net.  If Sun is a hornet's nest, they have peeled back much of the skin around the nest with java.net, exposing a wild variety of interesting activities that invite the Java developer community at large to join them through a mixture of weblogs, wiki, directories, repositories, and pseudo-magazines.

End result is, well, confusing.  But, it is an enjoyable kind of confusion, not unlike being dropped into a new city being built.  If it was a city, I would say the city center is the Java Today page.  Drop in and check it out.  Unless I misread between the lines, I think there is a new bold attitude at work here.

Old and Out

It is funny how human mind eagerly relates multiple independent events.  I read an in-dept report on age discrimination in Korean companies this morning (I got up early ;-).  Five minutes later, I found Dave blogging about age card and whether one stops learning at 22.  Well, learning does stop early in Korea.  Maybe not 22, but 30 at the latest for most Koreans.

Koreans studies hard when they are young, reaching unreal nightmarish pace toward end of highschool.  During college, they relax and discover the joy of being an adult, drinking and getting laid.  Engineers are an exception.  They basically do what US engineers do except there is a greater chance of being enslaved by professors on some quasi-commercial projects.

Once they start working, they are too busy to do anything except work, eat, drink, and sleep (order is significant).  Thanks to Internet, now they are starting to enjoy activities outside work during work hour (understandable since they obviously can't cut down further on eating, drinking, and sleeping).  Is there time for learning?  Hardly.  To survive in Korea, you have to invest a lot of time in socializing because social networks takes precedence over education in Korea.  Now you know why there are so many cafes and bars in Korea.

When they reach 40, they are already on the way out.  If they have not made executive management by mid-40, they will eventually be forced to retire early.  At Samsung, retirement age is 55.  Just a week ago, a large Korean IT company asked me to lead an engineering team in Korea.  I told them I wasn't too excited about the prospect.  No kidding.

Microdocs’ response to my Google rant

Microdocs, aka Dr Elwyn Jenkins, posted a rather long response to my rant about searching for WebCore source using Google.  He wrote:

"Now what exactly do you want Google to fix Don? That there are a whole lot of other pages now talking about WebCore that are not relevant to you?"

"No longer is it adequate to simply search Google using a single word for anything you want. Any word you use now needs to be contextualized. There needs to be other words surrounding the keyword you are after to identify the theory or ideas about that keyword which are important to you. After all, if Google is to deliver a page of relevant search results, how does Google know which theory, or idea, or context, you are thinking that this lone word is going to be in?"

He has completely missed the point I am making.  "WebCore" is a NAME, somewhat uncommon name at that.  While I agree that discussions about WebCore are valid search targets as WebCore source code, it is NOT unreasonable to expect the NAMED OBJECT to be on the FIRST PAGE instead of being buried under discussions ABOUT the object.

This is not about one word key search, but about common sense.  To find out about Safari, I wouldn't just use "Safari" to find what I want.  I would use "Safari Apple Browser" to remove ambiguity.  Finding reviews is easy enough by adding "reviews" keyword.  Now how the hell do I tell Google whether I want to find an object or discussions about that object?  If Google has problems identifying a blog, so will Google users!

Google's business is helping people finding things in return for exposure to advertisements, not forcing people to adapt to changes that Google can shield them from.  Google should work according to common sense so even my wife and son can find things easily most of the time.  Anything short of that belongs in the junkyard.

Dreams

This afternoon (I have been working late) I had two dreams.  First one was about why meatspace conferences matter.  Most of the details were lost, but a single piece of thought remained: deeper committment.  Virtual interactions are simply not as binding as F2F interactions at all levels.  I got no further than that unfortunately.

Second dream was about Typepad.  Without a clue, I dreamt they must be working on adding moblogging and fotologging to MT.  I dreamt that, if they are smart, they would have some carriers and cellphone companies onboard to offer Typepad services to cellphone users.  I guess I must have been curious about what Typepad guys were working on.  If what I dreamt is right, Typepad will soar ahead of Google/Blogger.