Wednesday, April 18, 2007

Lessons learned

I've learned many things from this independent study of AJAX with Dr. Piercy.

First, I've learned quite a bit of the pieces needed to enable AJAX in web applications. That is, AJAX is not only JavaScript in HTML, but also requires, for example, PHP for interaction with servers, a web server to run PHP, like Apache. What I learned is still a pretty rudimentary level. I've learned that the XMLHttpRequest object is the object used quite a bit for various actions. It is used to support various browsers, submit XML data directly, etc. The Document Object Model (DOM) reads the XML node tree and renders the HTML elements seen by the viewer. What also helps is iterative development, or working on the same pieces over and over again, eventually improving the process. Also, Cascading Style Sheets (CSS) are used heavily with the DOM to make things look nicer. While I didn't work too much with the DOM, it seems like a pretty important element in AJAX, with making appearances nicer for the viewer. In the website, event handlers are the elements of the website that make things happen. For example, onClick activates when you click on something.

One of the biggest things about AJAX is the need for validation. While I didn't do much to validate information on my website because of the lack of server interaction, it could provide lots of open holes to input incorrect and dangerous information. And not only should validation be used in the HTML, but also in the server files, like the PHP script, or in my case, JSP.

There are pros and cons to using XML. It takes a lot of text to say just a little in XML. Don't try to use XML for everything.

Otherwise, I've learned that it's a lot easier to read and learn about AJAX, but it's a lot harder to implement. It took me more time to write JavaScript in my website to make it appear as I wanted. How they stated things in the book made it seem easier than it was.

Also, the web can be your best friend. Finding examples on the web really helped with ideas to implement in the website as well as lines of code to copy into the website with some modification.

Another thing I've learned is that what you want and what you get are often very different. What I designed initially was pretty different in the end.

One thing Dr. Piercy pointed out was the switch from "Transitional" to "Strict" that might help out design from Internet Explorer to Mozilla Firefox. It helped things look nicer in Firefox, but then messed things up in Internet Explorer. So I didn't change it because most of my team's computers still had only Internet Explorer.

Lastly, I learned that it is extremely important to set small goals in order to achieve the whole without procrastinating. It is easy to get away from deliverables when there are other distractions. Luckily, I had some leeway to finish this independent study. Lesson learned: Always set initial goals in order to be on-time and on-budget.

No comments:

Post a Comment