Wednesday, July 14, 2004

feynman@thinkingmachines.com

Danny Hillis has posted and incredible article about Richard Feynman's days at Thinking Machines. For those of you who don't know or remember, Thinking Machines produced the CM-1 computer. A massively parallel computer made up of 64,000 very simple processors. It was really a wonder. I never got the chance to program one but there were some great simulation and cellular automaton results being cranked out of that machine. We dreamed of getting one in the machine learning lab I worked at in 1989. For those of you that don't know anything about Richard Feynman, he was probably one of the most brilliant minds in Physics and one of the most fascinating human beings I have ever read about. He was a real character, not without faults, but sharp as a razor. He was a most unconventional mind and had a nack for explaining the most difficult concepts so that they were easy to think about. He shared the 1965 Nobel Prize for Physics.

Saturday, July 10, 2004

IE Loses 1% Browser Market Share

According to PC World, WebSideStory, a web analytics data provider, is reporting that Internet Explorer lost 1% of it's market share to Mozilla based browsers (Netscape 7, Mozilla, Firefox, etc). Mozilla based browsers increased in share from 3.21 to 4.05 percent in July. That makes for a 26 percent increase in use of Mozilla. That's pretty significant growth. It will be very interesting to see if this trend continues. It's sad but it's almost difficult to think of a web were IE is not the dominant browser although that is a world I would heartily welcome. It's been a long time coming, years, in fact.

Mozilla Bugfix Timeline

blogsac has this timeline of the latest discovery, analysis, and fix of the shell bug found in Mozilla. Note that Microsoft still does not have a fix for the bug discovered in IE which has numerous organizations recommending a switch to Mozilla based browsers. The Mozilla team should be nominated for a prize in computer security excellence. Does one even exist?

Thursday, July 08, 2004

Java Jumpin' Jack Flash

This flash video was shown at JavaOne. It's hilarious. Jack rocks!

CERT Recommends Abandoning IE

Ever since the Computer Emergency Readiness Team (CERT) posted a warning on a bug in IE which can allow remote execution of code by simply browsing to an infected website, downloads of Mozilla are on the rise. The warning listed using a different browser as a possible solution. It seems that people are getting finally getting fed up.

My Lifestyle Included a Sun Workstation

An interesting littlebit from Jonathan Schwart's blog:
In the US alone, three million people a year graduate college. Globally, a vast multiple of that. And all those graduates take their lifestyle preferences into mainstream society. And moreover, they take them to work. PC's (and Macs) took off when people like me took them to our first jobs.
Well back in 1987, when I graduated from Rutgers University with a degree in Computer Science on of my "lifestyle preferences" was using Sun Workstations. When I went to work I wanted and actually sought out jobs where I could apply my C/C++/Unix experience on Sun hardware. Why? Because that was the coolest stuff around and in the computer labs Suns were everywhere. This doesn't seem to be the case anymore. There are lot's of Suns at Rutgers but no one sees them. They aren't on people's desks. Why aren't there SunRays all over the place at Rutgers? How can you have a "Sun Experience" if your only access is via your Windows laptop? Sun has to think about this. One thing they are getting right. On all these new fancy cell phones you see a Java splash screen. That's one way to capture awareness of the Java platform but how does Sun make money in that situation?

Blog Explosion

According to data analyzed from Technorati, there are currently 8,000-17,000 new weblogs are created each day.

Wednesday, July 07, 2004

Friends don't let friends use Internet Explorer

The Internet Storm Center also recommends that people concerned with the recent crop of trojans switch browsers until IE is patched. This has led the folks over at Netcraft to signal that the opening of new hostilities in the browser wars. The article notes that while serious IE bugs have appeared in the past, the recent recommendations to switch to "safe" browsers is probably due to the fact that applications like Firefox are really viable alternatives. Firefox has even been lauded by software developers like Joel Spolsky. Of course being a Mac user, I've been using Safari now for over a year. I still insist on using Firefox or other Mozilla based browsers when on windows or linux. There is probably only one person at my company that still uses IE and this also happens to be the one user who's PC is continuously trashed by viruses and spyware. Most of the developers have switched off IE and even Outlook in favor of Thunderbird. Granted most of these guys switched for the SPAM filtering features in Thunderbird but they are protected from email borne viruses as a beneficial secondary effect. I guess the point of this posting is that people have real valid alternatives to Microsoft applications for their desktop. These applications are getting better every day and in some cases have actually exceeded features and functionality available in Microsoft products. If your using these alternatives, good for you. If your not, call me the next time your system gets trashed by malicious code that made it on to your machine via the latest IE or Outlook bug. I'll show you how to install and use apps that work great and won't give you a headache.

Thursday, July 01, 2004

Gosling Keynote at JavaOne (Gos-a-palooza)

Theme: Java in Action. The intro video is all about Looking Glass. Looking Glass should put the notion that Java is too slow for desktop apps to bed. Joking about brining a beer on stage to get the Canadians psyched. Doing a bit of Canada vs Brazil action. Some general anecdotes about last night. "Never pass out in the presence of artists." See his blog for details on this. He's mentioning the Apple WWDC. Kudos for Java api for Apple's Rendezvous. This talk about demo, demo, demo. First demo is on Creator. There showing how to build custom validators and how to build navigation. It's all drag and drop with simple flushing out of pre-generated stubs. These stubs have a lot of boilerplate code done already. Once the code is done the tool compiles, starts the app server and deploys the app. Dynamic navigation. He's going to create a button that when clicked three times will go to another page. This demo is fast. He's halfway done and I'm still typing. Gosling is debugging his code realtime. He reminded him to store the click count in the bean. Heh. Java Studio Enterprise demo next with UML modeling. He's got a reverse engineered model of the JSF class hierarchy up in the tool. Pretty standard. The tools supports forward and reverse engineering. It automatically generates sequence diagrams. Now he's creating a JSF validator using UML. It's nice because he can update code and diagram and things stay in sync. Great round trip engineering support. Now they are showing developer collaboration. There is some built-in IM functionality. Cutting and pasting code maintains syntax coloring and even class completion. It's a full blown source code editor in IM. You can also drag and drop code , files, in IM. They can even do collaborative editing in real time on the same file. Looks like SubEthaEdit in the Mac world. Very cool. Devices and real-time up next. JSR-1 (java real-time JSR) has been updated. DARPA has an OVM project which is a research implementation of the RT VM. Embeded space requests for RTSJ is on the rise. Sun is building their own RTSJ implementation. Customers are guys that are building big realtime systems, power systems, air craft carriers, etc. They are using JVM 1.4. The effort will be complete in about 2 months. Early Access is out now. They're demoing an inverted pendulum, like balancing a ruler in your palm. They have a cart on a track that lifts a stick and balances the rod up. The calculations happen every 5 milliseconds. They can do realtime and non-realtime threads simultaneously. So they start a thread up that starts heavy GC and the real time balancing thread still works, unaffected by the greedy, misbehaved thread. It's also fault tolerant. They have a heart beat link between two VMs controlling the balancer. The VMs fail over back and forth in real time and the stick stays up. Now they are just going to pull the plug on one machine and things failed over in real-time. Real-time should be real boring. "the last thing you want is a 100 Ton turbine getting excited" Jini and Bluetooth. PsiNaptics make Jini lookup services really small. They rewrote the implementation in C to make it really small. On a small chip about 1/2 the size of a dime has a 4K Jini lookup service, an 8K http server, the total implementation is about 40K. They can use Jini and Bluetooth in a PDA or phone to broadcast "user prefs" in real time. So if you walk up to your car and your car can react to your presence and the prefs begin broadcast, to adjust the seat automatically, tune your favorite station, etc. This could also be used to allow you to interact with any device in the world without actually having software on your phone or PDA. Jini will allow you to download the code you need to interact with a device. The demo has a iPaq and a bluetooth device used for debugging. The iPaq looks for a Jini svc over bluetooth. The handheld finds two services, a thermostat and and led controller like a light switch. The iPaq doesn't have device drivers or software for these two services. The iPaq using Jini downloads the code to use the light switch. He can interact with the service and he's turning on different LEDs on the bluetooth device. Great applications could include home networks controls, etc. PsiNaptics is working with Jaguar on integrating this technology into their cars. Now to the truly weird. Simon James walks out wearing a a computer to do augmented reality. He looks like a borg. He's got Java desktop running on the wearable. he's got a live video feed from a head mounted camera pumped back into the eyepiece. He looks at a sign in Chinese and the software running on the wearable he highlights it and it translates the sign. He looks at Gosling and the software identifies him. You can also use this kind of technology to overlay schematics etc. over what you see in the eye piece. Like a heads up display. The whole thing is controlled via voice using the Sphinx project code. There is one last demo which is the T-Shirt launching contest. The "Caffinators" have a giant crossbow. The contraption is calibrated via a Java program. "What if Charlemange had a slide rule?" Very fun. Interesting Panel now coming up. Brian Bellendorf, Rob (?), Gosling, James Governer, Lawrence Lessig, Justing Schafer (MLB.com), Rod Smith IBM, Tim O'Reilly (Moderator). TO - asks audience how many of you hack on OSS projects? (pretty small number in this crowd) TO - addressing the open sourcing of Java RS - he thinks we are at an interesting inflection point. He wants to see innovation happen at a faster pace. OSS Java married to other OSS projects because people want to experiment even in customer situations. TO - what would be differnet from today, what are you looking for? RS - java is about compatibility. Think about what pieces of java should be open source: J2SE and TCKs. He's using Jakarta as an example (I don't see the parallel). He's hand waving around licensing. Rob - It's a continuation of a journey that started 10 years ago, Java will continue to evolve but there is a fundamental promise Java will not be compromised with respect to quality and compatibility. BB - Must frame the conversation correctly. Many people are implementing JSRs and the community should support that. Apache would prefer to look at compatibility as symbiotic. Any implementation that claims to be compatible should pass the TCK. Creating derivative works shouldn't require TCK compliance and shouldn't be labeled as such. Expert group secrecy is strange. Open discussion is better. Sunshine policy. TO - to lessig, how does ideology play into here. Is this real to developers? LL - It should have nothing to do with ideology, it's too important. Its about how to tap into OSS as a positive force, keep licensee alone achieve compatibility using other legal devices. The law has tools independent from licensing to cover compatibility. RS - No one would buy an incompatible implementation. That's unique. The market place around java has decided that compatibility is important. JS - standards are important but are more concerned with business issues. Govener - Lawyers are causing trouble. Look at SCO. There are lots of wars (browsers, etc.) JCP is the best model for Java that we've tried. JG - Democracy is the worst possible form of government except for all the others. Rob - Java programmers should not be lied to are your going to have code check licensing on code? TO - why is this different for Java JG - because of the network. The nature of Java is tied to the network. So trust matters. TO - but is it going to be good business to develop incompatible versions? LL - Yes, it's happening now. There are people out there that don't want java to work. TO - Apache has no legal hold over ... to fast ... BB - defects in compatibility are seen as bugs to be fixed not legal matters. shift pwoer from lawyers to developers. RS - changes are coming in the programming model. SOA, WS, etc. We don't have this all thought out. SOA may lead innovation OSS Java may accellerate things. JS - What are you trying to achive by OSS-ing Java? It already works why put it at risk? TO - mono project is implementing .Net. There is another platform war looming. how do you get the linux community to make the Java choice. JG - Java is already heavily used in the Linux community TO - he's not so sure JG - disagrees RS - look at mono. It's raising it's head. people are looking for places to innovate. We have to think about this.. we spend a lot of money in compatibility, why not have one source base for J2SE? It lowers the cost and helps get people moving faster. TO - what's keeping that from happing now? JG - all the bugs are public, apple doesn't pubsish bugs, but in the java community publishes it's bugs. We've gotten over this a long time ago. You can see the full source. There is a catch in the licesne thats smaller than the catch in the GPL. We've got tremendous benefit. LL - your talking about steps already taken, is this enough? in OSS we don't have to trust any one company to keep things open. That's the ultimate thing trust. OSS does not have facilities to enforce compatibility. JG - we lived through the UNIX wars. and now linux is going through the same thing. There are too many versions of incompatibile linux it's a pain in the butt. BB - JVMs are incompatible (huh, I think he's talking appservers/containers)....too fast Rob - How do we bring in more people? This converstation is a journey, are we hurting what we care about? He talked with Geronimo. There is broken code that the TCK doesn't catch and people can't fix that. TO - what is it about the process, people can see the code, is it jsut cultural. Rob - it's operational. TO - is this whole thing a matter of perception Rob - there is a hiearcy of committers. There are lot of battles in OSS so what is the verb to open source mean in this context. is it that sun shouldn't be at the top of the tree? if OSS is the answer what is the problem? There are things that can be fixed. BB - TCKs should be open source and peer review. What people are asking for is to allow for open source implementations of the specifications. They can't claim compatibility until they pass the TCK. Groovy may be the first test of what the OSS community is asking for. TO - Is there a problem? Govener - does it support compatibility and innovation? Yes in both counts. But look at Longhorn. if they pull this off it's a big risk to the Java community. JCP is all about production. Development is something else. Eclipse, Looking Glass, all examples as how Java is competing. TO - Java was their first. MS is trying to get into the java space. JS - The core must work and be compatible. He's not convinced that OSS java is worth it. There may be a devil we don't know. Who would be involved in the decision process. Sun has been a good steward. LL - do you resist OSS java because of compatibility or less innovation JS - compatibiltiy may be a problem. the platform does move. go at your own speed. Is there a need to change the core. RS - he disagrees. innovation can move faster. it's beyond java. we have to be prepared to move forward faster. JG - someone does something really cool, the community thinks its cool, you can write a JSR to create a standard, and the community jumps in and the argument happens in a structured way, take good ideas and spread them about. JCP is about harvesting innovation. RS - you want to test things coming from the JCP. the JCP should be more open to test these things. TO - so your suggesting a two part process. BB - that's how all successful things come about , IETF JG - IETF is the example of what we based JCP on. You can't just create a spec and declare victory. TO - there is a lot that is working and it's not clear what's not working. Sun is very open minded about the prcess but the pressure is coming from other corporate interests and the OSS community. LL - many of the people who would be excited may not be here TO - so who is not here that would be in the fold? What can we do beter. BB - conflict between those who want to work in and out of the system. If we're in the process we can educate the JCP folks to help them get true OSS implementations Rob - every year we bet the company on java which means we're betting on the compatability issue which means we could never change it again. which would be bad. what can we do to amplify the effects of innovation yet preserve compatibility. but it's a process JG - participate. the squeaky wheels participate, go over to JCP and get involved. vote. Govener - this is a personality driven industry. people make ungaurded comments. Java community is strong. you have to remove the personalities to step forward. RS - press likes to make these things forward. innovation is slowing down. keep the pace up. take that from BEA and IBM, when you see a stall you have to think ahead. JS - we are concerned with our customers I have to look at java and not worry about it. TO - this is a conversation that will be going on for time to come....

Yerba Buena

It's been a while since I've been to San Francisco and even longer since I've been to an event at the Moscone Center. The area around the convention center has changed a lot. I'm especially impressed with the Yerba Buena Gardens which surround the area around the convention center. It's a wondrous use of space. Walking through it is both visually stimulating and strangely refreshing. I think its the combination of beautiful architecture and some of the peaceful serenity of the gardens laid out between the main buildings that make up this complex. The Martin Luther King Jr. Memorial is especially pleasing and powerful. It's a granite gallery where one side is a series of glass panels with quotes from MLK's speeches and writings, once in english and then translated into a different language. The other side of the gallery is formed by large grey granite pillars and the cascade of a waterfall that is spilling down from a large fountain on the roof of the memorial into a pool at ground level. Really remarkable. The other cool and somewhat geeky fixture in the area is the Sony Metreon which is basically an "entertainment mall". Movies, games, books, gadgets, food and bars. What more could you ask for?