Since there was no front-end designer, I was asked to write a javascript to parse the xml data and rendering the html on screen. That was my first and last tryst with the web.
You can't actually even count it as any web-experience but it did taught me a lot of things. Soap was still in discussion in w3c at that time and we had written a RPC framework to query for conifguration data (in xml, using a hidden frame) from each modules running on the router. This RPC framework was more or less like SOAP which became the standard later.
With change of job, came the world of C & C++ and my application development was restricted to this technology. However, lately I wanted to give shape to my research that I've been doing in NTU.
So what does it take for a C++ programmer to be a website designer and owner?
And where shall I start from?
Well, there are so many technologies involved in a good website.
1) Frontend - thats the foremost things people judge the site.
Has to fast, clutter free (Dont paste random ad's everywhere!),
And should look good (Colors, Aesthetics)
What does it take to design a website? Ahhh what happened to Microsoft FrontPage was my first thought? Oh well, a quick look at google showed me the demise and a new tool called Microsoft Expression Web. Adobe Dreamweaver is another choice.
I looked at some Videos on http://tv.adobe.com/ and found it to be impressive. Especially the PhoneGap integration (which can Convert your site into an app for IOS and Android). Also the view of your site in various resolutions ( Tablet/ Phone/ Laptop etc).
So I went ahead and bought Student Licence (which is 80% Cheap : Hurray!) for Adobe web-premium. Well, I am still as lost as I was before.
Dreamweaver Cannot Help you if you do not understand the basics. So what are the basics for desigining a perfect frontend of a website?
a) CSS: hmm right. So I went ahead and bought a copy of CSS the missing manual. Excellent choice :)
b) JQuery :- Most references on the web are self sufficient.
c) HTML 5 :- No Single reference on the web as of now, but google can be your friend.
Well, time to start thinking of the backend!
2) Web-Framework: There are countless web-framework out there!
The trend started with Rails (which I truly appreciate) and has been copied (for better?) in so many languages.
Django | The Web framework for perfectionists with deadlines
This was the first framework I tried. Good documentation, my first hello world was up and running in no time. The best thing I liked about it was that controller view and model were not split across directories (Like in Rails, and some other frameworks).But somehow i could not get very close to Python and moved on. Perhaps Python (and hence DJango) is meant for perfectionists.
Ruby on Rails
Good choice, but the fact I was writing my libraries in Java, I wanted something as close to Java as possible. Another choice could have been JRails? Which I did not try.Play Framwork
Oh well this was purely in Java amd hence a good choice? But googling around I found another framework called Grails.
Grails - The search is over.
Indeed: The search was over. I instantly fell in love with Groovy and the seamless integration of writing Java code in a .groovy file. Made me feel at home, w/o the overhead of learning new language.3) Database. Most websites have database, now which one to choose from?
PostgreSQL:
I did not evaluate any of the databases and more or less chose randomly in between mysql and Postgres.4) Webserver: And Finally, the webserver and the to run on.
So many choices in Webserver as well. But I guess Tomcat would be a better choice rather than Microsoft IIS or Over engineered Websphere.
So far, the journey of a C++ programmer writing a Website has started.
Lets see how far I can go from here. I will keep sharing my experiences (of writing code, hosting, mistakes I made etc with you all)...
Cheers,
Woods
