April 10, 2005

Preparing for personal project

I'm also using Freemind to figure out the semantics of my new personal project, which took a very long time. This is the hard intellectual work, finding the core questions, establishing the meaning of the requirements, looking for orthogonalities and abstractions. After that, I figured out how to translate the semantics to a REST architecture. At this point, all my work can be re-used regardless of implementation. The URIs are my API standard. Yay.

Resources:
http://www.faqs.org/rfcs/rfc2617.html
http://www.ietf.org/rfc/rfc1738.txt
http://www.w3.org/Protocols/rfc2616/rfc2616.html
http://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm

The rest is a matter of figuring out best practices, coding, and debugging. I'm constantly immersed in .Net, C#, and Avalon, so for the sake of variety, I decided to evaluate non-MS tools for my personal project. As much as ruby on rails, zope/python, and php would make me look cool, I decided to go with Java for its similarity to C#, network-oriented roots, tools, community, support for distributed computing and computer graphics, and availability on both win2003 (which i run at home) and osx/*-bsd (which i'd like to play with one day). Plus, a servlet's low-level handling of the four http requests and other features makes it an ideal bare-metal platform for experimenting with implementing a REST application:

More resources then:
Servlet security
eclipse
http://www.moreservlets.com/Using-Tomcat-4.html

The state of Java for the client-side makes me shudder. Besides, it will be interesting to implement the same client on different platforms to compare their designer/developer experience. I'll probably build Avalon, Flash, and Ajax demos talking to the same webservice. Actually, I hypothesize that client-side development ought to be much easier and portable with REST on the server rather than SOAP. Anyways, this will be a real experiment instead of just reading the pundits on the web.

[Correction, the link to developer setup for Tomcat referred to the 4.x version. The author has an updated tutorial/checklist for Tomcat 5.5 here: http://www.coreservlets.com/Apache-Tomcat-Tutorial/]

Posted by samuel at April 10, 2005 11:37 PM
Comments
Post a comment









Enter the letters as shown in the box below:



Remember personal info?