blog.spathis.com

Random musings & skepsis…

Entries Comments



Category: programming

Will code for food…

Web 2.0….

9 October, 2005 (15:48) | internet, programming, technology | By: Constantine

As I pointed out in this post, the internet is far from dead. The current rage is Web 2.0, become familiar with this term as it will dominate the landscape on the ‘Net for the next few years. Web 2.0 represents a significant paradigm shift. That means new opportunities, new challenges, and a whole lot of work to build business that bring it to the users.

What exactly is Web 2.0? It is radical change on 3 different axes:

  • The user and how the user interacts with the internet
  • The tools used to develop the sites & how the programmer/designer envisions the site
  • The relationship of the site to the rest of the net

The User:

The traditional model of user interaction on the internet is dated. The user requests a page of relatively static content, they read the page and potentially fill in some form details, then submit the page back to the server. The server processes the page and returns the result. Its a request response paradigm that 10 years ago was considered revolutionary, although it was a step back from user interface thinking that existed on the desktop. In certain ways it was and still is a painful step back. Java applets sought to change the landscape but never lived up to the promise. Flash has made some in-roads but also presents some real issues for users & site builders.

Web 2.0 helps solve the problem through a new user interface model based on AJAX (asynchronous javascript and xml). Ajax represents a return to more robust user interfaces. GMail, Google maps, Basecamp, Housing Maps etc… are all based on the Ajax model. Users will be pleased, money will be made. Any VC with an interest in future directions is putting money into companies leveraging the Ajax model. Using the Ajax model, instead of waiting for the user to submit the page back to the server, AJAX leverages javascript and XML to submit the changes behind the scenes and then update the user interface in real time. The net result is a more responsive and interactive user experience. Yea!

The Tools & Techniques:

Web 2.0 also represents a rise of new programming languages & new techniques. The programming languages that dominate the Ajax world are Python, Ruby, and the old stalwart Perl. Dynamic languages are at the forefront, languages that get out of the programmer’s way and provide a productivity boost. Java and C# are definitely coming up strong and will/are there as well. PHP is not standing still either. Design is also changing significantly and thankfully. Instead of creating great magazine ads on the internet designers are really starting to understand the internet and create truly useful and beautiful software.

Using XML to communicate back to the server forces the programming to think of providing the site’s functionality as discrete lightweight web services. This is great because it really opens up the third component, the relationship of the site to the rest of the internet.

The Relationship of the site to the rest of the net:

Web 2.0 improves the user interface experience of the user dramatically, a big win. Web 2.0 has a much bigger win in store for everyone, exponential value creation through the network effect. Using the new tools and techniques of the Web 2.0 crowd gives a site really two faces, an end-user interface but also (and perhaps more importantly) a programmatic interface. It makes it easy for third parties to build ontop of your site to provide some new and unthought of service. Linkages of functionality are created by different parties (aka mashups) on the internet that may not even know each other. Look at Housing Maps, they are leveraging google’s maps and craig’s list to provide a profoundly useful service.

There will be (and is) alot of resistance in allowing this type of thing to occur from the entrenched behemoths. But as google and yahoo and others take a visionary position and the value becomes apparent more and more of those resisting will open up their services. And as more open up the network effect will really kick in, Metcalfe postulated that the value of these types of linkages will increase proportionally to the square of the number of linkages. Wow, that is alot of latent value creation waiting to be unleashed with web 2.0.

 Tim O’Reilly has a great post all about Web 2.0, check it out.

Technorati Tags : , ,

OSX 10.4

30 April, 2005 (21:51) | internet, programming, technology | By: Constantine

Wow, amazing….

Most amazing, many years after the Be OS, we finally have…..

Arbitrarily Extensible File System Metadata

Wow, Apple did it. They did it on HFS+. Wow…..

Spotlight absolutely rocks on so many levels, yeah what it does is very cool, but the technical details in implementation are astounding…

I am gonna have fun playing with this….

SCPD - Donald E. Knuth

9 February, 2005 (11:31) | science, programming, technology | By: Constantine

In the pantheon of the immortals none rate higher than Donald Knuth. Now he has made his musings on computer science available at SCPD - Donald E. Knuth
. So stunningly good I can’t say enough good things about it!

27 June, 2004 (14:36) | programming | By: Constantine

If you write code for a lving or would like to know how professionals do it anything by McConnell is a must read. He just revised and release the all time classic:All Consuming: Book Info: Code Complete, Second Edition (Dv-Professional).

Do yourself a favor and read it all, its the best medicine for a programmer yet…

Search Technology…

6 March, 2004 (19:21) | programming | By: Constantine

Tim Bray is a seminal figure in modern computing. He was the co-developer of XML and did a whole bunch of other interesting things. His current project is Antarctica, a very cool visual search engine.
He has written a series on search technology called On Search, it is brilliant and should be a book on the subject. Anyone, from marketers to technologists should read it. Its one of the clearest introductions to the subject I’ve read in a long time. The concepts he talks about I’ve used countless times to build a variety of search engines. It is sage, hard won information that is invaluable.

Machine Learning…

4 May, 2003 (21:54) | programming | By: Constantine

Started reading Machine Learning by Tom Mitchell. Its a fascinating look at machine learning algorithms.
Essentially these algorithms are a class of algorithms that learn through “experience”. One of the best introductory papers on the subject is Machine learning in automated text categorization.
The particular class of problem I am presently exploring is automatic categorization based on text descriptions. Fabrizio has particularly good papers in this regard.
Presently I’m reviewing the ID3 algorithm & its variants. Fascinating topic…