Tidbits of Trivia

Name:
Location: Edison, New Jersey, United States

Wednesday, October 21, 2009

Tools of the Trade - Part 2

Coming back after another stretch of hiatus. I need to find more energy to blog regularly!

Also, it looks like the ideas I get for my post are more technical in nature. I have made a mental note several times to also post on casual topics, but so far it has not materialized. Will try to do this in the future. So, here comes another technical post!

Recently, I was reading an article from the Time magazine. The line “In the 1930s, you could throw 10,000 people with shovels at dam or road projects. Today the work of 10,000 shovels is done by a few machines“ ignited another related thought in my mind about web development. What’s the connection? This post explores it.

Yes, back in those old days, human race was still technologically backward. Take agriculture for example – tractors were probably not widely heard of during that time and tilling of land was still mainly using animal strength (at least in India). Motors were rare, and people used horses or horse driven carriages to commute. As the years passed, the human race progressed – we developed tools which we used to design and manufacture sophisticated items like a tractor or a car. In the process, we also designed better tools which further improved our capabilities to produce goods. These tools removed or reduced the time people spent on mundane or labor intensive activities and drastically improved productivity. People now gathered skills required to utilize the tools effectively to reap maximum benefit.

Very soon, the 10,000 people with shovels and chisels of 1930s were replaced by a few machines, and the operator of the machines needed to be skillful in his area of work.

Fast forward to the present, and think about web development for a minute. Today, if we have to follow all the correct standards of web development (like keeping CSS and javascript separate from html etc), there are no tools that aid us there. One needs to code by hand using a plain simple text editor like Textpad or notepad. A lot of web development books mention this as though it is an advantage! Take Jeremy Keith’s book on DOM Scripting for example – look at page 14. Coding a webpage by hand using a plain simple text editor is equivalent to the building a dam or a road by using just the very basic tools such as shovels. Such development is painfully slow due to obvious reasons. Since the html/css/js code needs to be neither validated for syntax nor is compiled at all, errors in the code are not detected until run time - coding is really by trial and error.

So, the need of the hour is really some handy tool(s) to aid web development. There is certainly some effort in this regard – Aptana Studio is one such tool. (I use Aptana as an Eclipse plugin for html intellisense and to view the outline of JS files). However, there is much left to be desired. The nature of html/css/js itself (dynamic architecture) makes development of any tools very difficult. Added to the complexity is the nature of enterprise applications, where most of the time, dynamic web pages using JSP/PHP etc are needed. Then there are tools like Google Web Toolkit (GWT) which complicate matters further by providing a java interface to coding web pages. A big feature still missing here is a “designer” interface. So, what is the poor developer to learn and master?

Is Adobe Flash or Flex the answer? I really don’t know as I haven’t explored much of either. Of course, flash / flex applications are not really the typical “web applications” – they are applications that can be hosted on the web. They also cost a ton of money in license which has made me stay away from them so far!

Bottom-line – even though a lot of standardization has happened over the last few years, we are still in the very adolescent stages of web development! There is a lot of work still to be done before we developers can really work on the “design” rather than worry about syntax errors in their code.

My vision of a web-development tool in the future would be this one tool - which has the designer interface where you would really drag and drop elements onto the screen to create your web page. This tool will automatically generate code (HTML/CSS/JS) which adhere to all the web standards. The tool will need to provide for scripting using some high level language and will check for syntax errors at the time of development. Of course, the tool will be built on open source framework!

Any guesses on the timeframe for the availability of such a tool?

Labels: , ,

Saturday, April 25, 2009

Tools of the trade

It has been a while since I posted. So, here comes - this one is a technical post on my never ending search for the right tools available for website development.

Given that I'm really a database developer, it's a little ironic that my first tech post be related to the UI development. I somehow seem to have developed an intense interest in UI development over the past few months and have been since searching for the right tools of the trade. Anyway, let me start with the post

I learnt a little bit of HTML (well, I hardly know anyone who is a software-developer and has managed to keep off from at least sniffing any HTML pages). Then I went on to learn CSS, and more importantly details on how to use CSS properly. I found the book by Richard York a very good guide and reference. Further on, I went on to explore the world of Document Object Model and the book by Jeremy Keith is very well written (though I am yet to read it fully). The next logical progression was Ajax and I did a quick read of the second book by Jeremy Keith on the same topic.

All in all, I am very impressed by the amount of work that has gone to try and standardize and bring a semblance of order to the chaotic market of web-development. I surely hope that we continue on the same path and all the browsers will adapt to the w3c standards.

There is however, one aspect of this whole thing that I am disappointed with. Ever since I got fascinated by UI development for web, I have also been fervently searching for the right tools to help developing web pages and websites. There are a lot of tools available on the Internet to aid development of HTML pages or CSS. But somehow, I always felt there is something missing in every one of them. Even in Dreamweaver - which is considered very highly by professional UI designers, though I found plenty of good features, it somehow did not implement the design principles touted in all the good books of XHTML and CSS.

The problem, I realized was not with the tools - but the lack of any kind of design framework. What I mean is, for example - the books on CSS make it abundantly clear to separate data (in HTML) from display logic (in CSS). They also provide examples of using "div" tags etc - so the concept is clear. However, that is not enough to start "designing" a website. We also need to know what the framework is in designing a page. For example, there are going to be several elements in a page. Are we going to assign div tag for each of the item? What if webpages are quite different from one another? Should we design a new CSS file for every webpage? What is a good way of writing CSS for elements so we when we search for some markup, we don't have to do a repeated "find" on the CSS file? I found no answers to any of these questions. It is left totally up to the developer whatever way he or she wants to design the elements. What I did find were several "CSS Templates" - both free and paid - and one can use whatever template that nearly suits the need. You open such templates along with the HTML in Dreamweaver, you don't know where and how your changes on the editor are handled. I did find a website trying to provide some direction to the business of providing design frameworks, but you see and realize that there is still a long way to go.

The next step that I would like to see is some sort of basic design framework - helpful tips on what is a reasonably good approach given a certain problem. May be some sort of "patterns" to borrow a term from Java development. And then, the tools to implement all those patterns. That would really ease web development.

Thursday, February 26, 2009

Where does India gets its statistics from?

I have always wondered - apart from the well known statistical figures such as GDP and inflation rate (and may be a few more), where do we get data for our country that is considered good to make a broad public statement? The same question arose once again - I refer to the article in Times Of India, where our Overseas Indian Affairs minister Vyalar Ravi has made a stament that about 20,000 Indians have returned to India having lost jobs abroad owing to the current economic crisis.

Where have the numbers been pulled out from? The article says "the exact number of people who have returned are not available" and then further quotes "reports which indicate...". I would very much like to know what those reports are and where do those come from? Do they come from the immigration booths at each international airport of India? I doubt that. I cannot imagine the customs officer asking each and every desi looking person the question "did you loose your job abroad" and dutifully recording it. Or are there any recent changes to the immigration forms to include a question to that effect? Have they run some kind of poll in the recent past using the Internet to find out? Is it someone's guess, or an educated estimate? Where do they get the numbers which indicate that a pretty narrow range - 16,000 to 20,000 people have lost jobs and returned?

In contrast, I see most of the American statistics are solidly based on data. Take for example a similar theme - the only thing in US that is growing since last year and is still growing upwards - unemployment. There is an entire Beaureu of Labor statistics that is dedicated to the effort of capturing unemployment data. The entire process of survey and data capture is also explained - so it is transparent. I'm not saying all statistics coming from the US is based out of real data. But at least the important ones concerning the large portion of the population mostly is.

These statistic figures are pretty important in everyday life. It sort of gives an indication of what is to come; and making it measurable from time to time also tells us the direction that we are headed. To derive any useful information out of the statistics, the underlying data has to be substantially accurate. So, someone please tell me - where do we get our data from?


Update: Apparently, as this link suggests, even the GDP numbers are not timely nor accurate!

Labels: , , ,

Sunday, January 25, 2009

Slumdog

Today, we (me and Dennis and family) watched the popular Oscar nominated Slumdog Millionaire. The only thing lacking in the movie was the company of my wife - who is in India and running around on her last few days of the so called "hectic vacation".

That apart, the film was just fabulous. The theater was full for the 5:50 pm show at AMC theaters, very evident from the fact that it was nominated for the Oscar. The film deserves a 5 star rating and more than a couple of Oscars including the best movie.

Slumdog depicts India in its truest sense; in it's most naked form. Yes, on one hand there are big companies setup in Indian cities, but the slums and poverty live side by side. None of what is shown in the movie about India is exaggerated or dramatized. In fact, I myself have witnessed sad scenes like the municipality personnel carrying the filth of the city in overloaded trucks and handling them with their bare hands. It is indeed very pitiful to see such things and not able to do anything about it. The movie is a perfect portrayal of that not-so-bright side of India - people don't want to always see.

And that is exactly why our politicians feel that Slumdog should be banned as it is causing a bad image/publicity for our country. It does'nt matter what the real situation is - they just don't want India to be seen as what Slumdog depicts. First of all, it is a matter of shame that there are still people in our country living like Slumdogs; however more shameful is that the officials turn a blind eye towards those problems, ignore the realities, but still want the world to see India with rose tinted glasses. India is not necessarily only about slums, but slums are a definite part and parcel of India.

Other than painting the true Indian picture, the film itself has been very well directed and edited. The way the story unfolds is also very good. The flashbacks not only tell us Jamal's background, but cleverly and subtly shows the audience (and the police officers in the movie) how Jamal knows the answers to the tougher questions of the show "who wants to be a millionaire". Acting by everyone has been excellent. I especially liked the potential and talent of the youngest Jamal (Ayush Mahesh Kedkar). A R Rahman has rendered Jai Ho very beautifully (though I should say I didn't get the same kick when I just listened to the song first in musicindiaonline.com; however the effect in a theater was different).

I kept looking around the theater periodically to gather the reaction of the American crowed, and it mostly looked like they were able to understand the position of Jamal as equally as us Indians. Globalization has required a lot of Americans to make frequent trips to India and they have seen the state of affairs first hand and then shared the experiences with the near and dear ones - making them appreciate the movie as much as I did. This was very apparant from the applause that roared in the theater upon the movie's end. It felt good to see the Americans appreciate the true value of the movie.

A couple of minor glitches to the critical eye - i) in India, the show is called "kaun banega karorpati" and not "who wants to be a millionaire" and ii) the show is not telecast live unlike what is shown. But these should be just put aside for the fantastic effect the movie has created.

Slumdog deserves more than one Oscar; definitely for the best movie. I wish it gets it's due.

Saturday, July 22, 2006

Wasted Saturday!

So many things to do, so much to do - and here I am all day at home, just doing nothing! It's only during the evenings that I get some motivation! Mahesh and friends are just back from one day's of driving! And now waiting for dinner. Evening was a little better when I made some pakodas and akki rotti for dinner. We might play cards now and enjoy the evening a little - and then of course waiting for a call from my darling wife! And about a week later my darling wife herself!