Archive for the ‘internet’ Category

Web2.0 Equals Two-Times the Work

Tuesday, June 3rd, 2008

Today a co-worker of mine, Travis, made a really good remark which is the title of this post. Before AJAX, there were only two main components to the site: 1) dynamic server-side processing, and 2) static client-side elements. With AJAX, there is now a third layer that manipulates static elements to make them dynamic and is able to make requests from the server with or without user interaction. Client-side Javascript always has to account for the capabilities of the user’s browser and how certain browsers renders elements even though HTML/CSS also has to handle this. This added complexity, plus the regular bugs that always crop up while coding, makes debugging an AJAX application twice as hard. Despite the extra work for developers, the rich interaction that the Web2.0 era is built upon makes for a much better overall user experience.

Smarty: A Great PHP Template Engine

Monday, March 24th, 2008

Working with any website, using the Model-view-controller (MVC) design pattern is a must. One way to achieve this is by using templates. Within PHP, there is a large divide on whether using a formal template system is necessary. Most proponents will claim that PHP itself is a template system (see Wordpress and its countless themes). Lately I have come to really like Smarty, a php template engine.

Over at Grooveshark, we’ve been making A LOT of changes. Basically, the brains of Grooveshark is improving with a different database design and backend code while the face of the site stays the same. This is where Smarty has made my life so much easier. All I do is make sure that the same variables are assigned with the same information and Smarty handles the rest.

Smarty has other handy features like caching to compensate for the extra overhead of processing the templates. For really dynamic sites, Smarty provides really fine control of the cache so nothing is ever stale. Smarty is really adaptable so that you can use it to produce your feeds (interchange XML for HTML and you are done). As of right now, I’m really liking Smarty.

Ode to Firefox… for real this time

Saturday, March 22nd, 2008

Firefox is the best browser out there. That’s one argument nobody will ever convince me otherwise. Sure Opera uses less memory, Safari renders pages faster and IE isn’t even in the conversation. In the end, Firefox provides the best experience for the less technically inclined to the most advanced users.

Being a web developer, Firefox has some of the best tools out there for testing forms, debugging Javascript and interactive HTML/CSS editing. If you are a web developer and haven’t heard of Firebug, then you really aren’t a web developer. Other great tools include the Web Developer’s Toolbox and FasterFox.

Recently, Jay mentioned Firefox 3 Beta 4’s release and I really wanted to try it out. I had to keep Firefox 2 for testing purposes so I did a google search and discovered this post showing how to run both versions without them clashing (they can’t run at the same time) on linux. Now I’m running a much improved Firefox with better memory management (not THAT much better), faster page rendering and the best developer plugins possible. Talk about having your cake and eating it too (that saying makes no sense).

OpenLaszlo

Saturday, March 15th, 2008

I just discovered this really cool application called OpenLaszlo. They are an “open-source platform for the development and delivery of rich Internet applications on the World Wide Web.” One of their claims is “write once, run anywhere” (I think we’ve heard this before - Java).

To me, their syntax and coding style is very similar to Flex. What’s most impressive is that when you “compile” your page/site, you have the option of compiling to flash or DHTML. Working with HTML/CSS all day, they must have a pretty impressive algorithm to ensure browser compatibility, especially on the CSS side.

OpenLaszlo has a lot of promise and is really neat technology. If they really take off and become popular, they will effectively put me out of a job. In the end, they automated the entire process of building a Web2.0 AJAX-powered website and provides another way to produce flash applications in a way that makes sense to traditional web developers.