Studs Has Landed!
July 23, 2004
Well folks, it's finally here! After almost a year of ups and downs scratching an itch for a better object-oriented framework for PHP, I am pleased to announce the initial release (0.9) of the Studs MVC Framework+. I use the '+' to designate the fact that the project has become much more than just a port of Apache's Jakarta Struts to PHP. In fact, I ended up porting a good portion of the Java Servlet stack, including a JSP parser and a long-term application context (within reason). Think about that. JSP custom tag libraries in PHP, including the JSTL expression language! Add to that logging, runtime exception handling, an XML digester and an enhanded object environment and things start to get very interesting.
Why Studs? People are going to ask, so I am going to explain. Experience. I wanted to learn deep down how Java Servlets and Struts worked and there is no better way to accomplish this than by reviewing the code. More importantly, I learned about the design concepts behind this source code, which in the end is much more valuable. Practice. After a few false starts, I recognized the only way I was going to make this happen was by starting small. I followed one of the principles of eXtreme Programming and did the simplest thing that could possibly work. I continually refactored the design until I reached the point of compatibility with the design of Struts.
While there is still work to be done, I encourage anyone interested in object-oriented design, J2EE or web frameworks to give Studs a try. Start with studs basic, which is a simple "Hello World" application that can be run on any webserver with PHP 4 installed. Give it a try today!
The Road to Enlightenment
July 09, 2004
Littering a dark and dreary road lay the past relics of browser-specific tags, incompatible DOMs, and broken CSS support.
This introduction can be found on the notable CSS ZenGarden, a website which serves as a reference implementation for standards compliance web design. The new version of mojavelinux.com is my leap into this new and exciting dimension of content delivery. You will find that the presentation of the site is controlled entirely by CSS and the content remains completely semantic. It is also the first time I have implemented a blogging framework and organized all my files under a single, seamless design. While it comes a few days earlier than expected, I trust that you will pardon the dust and enjoy the content which I have prepared for your reading pleasure. If you are having any trouble accessing existing resources, please make use of my contact form to drop me an email.
On that note, I introduce you to the NEW mojavelinux.com! Become one with us!
Hey Java! Let's Talk Open Source
July 02, 2004
I'm not going to beat around the bush like Sun, let's get right to it. The time is right for open source Java. James Gosling, the father of Java and t-shirt launcher extraordinaire that we know and love, has blinders on when it comes to the adaptation of Java in the world of open source, especially on the Linux desktop. He made a claim during "The Big Question" debate at JavaOne 2004 that Java has been integrated into the Linux platform. When it comes to the deskop, he is flat wrong. Let's face it, Linux users don't use Java (we are not talking server-side). Hell, Linux users cannot even get the J2SE out of the box right now, so how can you expect someone to start developing on it?? Even if the license to ship Java with Linux was corrected, the UI still looks like crap and doesn't play nicely in the Linux sandbox of GTK2 and QT3.
As much as Sun emphasizes compatibility and fears a code fork, fragmentation is already happening, namely because the JCP isn't open source (examples include SWT and velocity). When I asked Erich Gamma about using SWT for Eclipse, he defended by saying "the JCP isn't open source, so we created a project (SWT) that was." Eclipse is great because it is open source. It is a perfect example of what Java could become if it allowed people in the door. Eclipse is by far the most popular Java desktop application on Linux, and it isn't even using core J2SE, opting for its own open source framework. The truth is, the Linux desktop ships with (virtually) no Java programs. It should be shipping with a whole assortment of them.
Update: It was just announced today that Sun pulled their API docs from jdocs.com, more evidence that closed source Java hurts the community.