16.12.08

Lessons learned from building the bookmaplet

Building the bookmaplet allowed me to learn a lot about programming for the Internet, even though it is only small, little webapp. There were quite a few gotcha's as well. Reason enough to share some of the lessons I learned.

Website layouts are hard
Doing the layout for a website is harder than it seems. I have a fair bit of experience with building Java GUIs in Swing, but doing CSS is whole different ballgame. I did not have a lot of practical experience with web programming, but luckily I read Head First HTML with CSS & XHTML a few months ago. The Head First series is an excellent way to get started with a technology you have to learn quickly. Even though there's tons of resources on the Web on this, that book was a godsend to get started in a hurry. Nevertheless, I still plan to have a professional web designer take a look so it can be spruced up a bit more.

Browser differences are real
I naively thought I would be spared of any big issues with differences between browsers. It's only going to be a small site, not a lot of HTML or JavaScript. Of course, I was dead wrong. And it was only after bringing the bookmaplet site live that I noticed that Internet Explorer 6 does not support transparent images (PNGs) like the one I use as a logo. A bit of Internet research later I found a workaround with some HTML and JavaScript mumbo-jumbo, but it is not perfect. You can still see it flicker when the site is loading. I guess it serves me right for not testing in advance.

Using your own domain name
Last Friday evening, I was all psyched up to get my app online. I load it up on Google App Engine and I want to put it on my own domain. I had the idea for bookmaplet a bit more than a month ago and I purchased the domain at that time. I used GoDaddy, no problems there, excellent site to purchase and manage your domain, though they do try to get you to purchase a lot of extra services with the domain. What I did not count on, was that I had to register for Google Apps as well. This was not really a problem but more of an inconvenience as it took time to go through the process, modifying CNAME records, etc.  Unfortunately, after I this, I still could not see my webapp on my own domain because of DNS caching. It took about 20 hours to show up on there (meaning it was afternoon on Saturday). Bummer... In the future, I'll probably set up a dummy page already loaded in Google App Engine to counter this.

These were just some of the things I encountered while developing the bookmaplet. I got to learn a lot about web programming which was the whole point, so I'm pretty happy with that. There are still some bugs I have to iron out (websites with frames are nasty!). Overall, it's going as I planned. If you tried out the bookmaplet, don't hesitate to let me know what you think.

1 comment:

BoboDeBoze said...

A good read with some valuable things to remember. Great post!