on Jul 30th, 2008Do you program this way ?

Programming has evolved beyond comprehension. Everyday you hear of some innovation either in programming languages or the techniques. Languages themselves are evolving to keep up with the current development trends. I have been programming for almost ten years and am still amazed by the new programming techniques. Here are some of the cool innovations that I have seen in programming.

 - Scaffolding : the rails feature makes it dead simple and mandatory to make the MVC architecture. Just run the rake and rails command to create all the MVC functionality. Add some jazz to the front end and you can make a standard database application in under 10 minutes.

- .NET web services : during my struggle with web services in Java, I never realized that most of the programming I was doing with Axis could actually be automated and thats what Visual studio did. define a web service and say generate functions for it and you wont believe the functionality that it implements. VS then goes to wrap the service with a class and all its calls and exceptions. Imagine my surprise when I saw a 1000 line program generated by just a click of a button.

- Chaining : imagine doing  banner.generate().show().navigate().hide().unload()  - ruby, jQuery and to a little extent python does it.

- reflections :  going through an entire package structure (jars) or through assemblies (dlls) to figure out what class you want to instantiate and then creating an object of the same during run time. Tons of design patterns are becoming obsolete thanks to reflections.

- AOP : using aop is a fad from a long time but a current technique made me think twice about the power of aop. Imagine a tool that uses deep reflections and figures out where you access the database and then automatically adds aspects that are relevant to the module. The programmer doesn’t even need to know what aspects are essential to the module he/she is developing. The tool automatically adds the functionality. Ex : you are writing into the database - tool figures database entries should be 1024 bit encrypted and adds the required encryption functionality. Now isnt that cool ?

- Program the cloud : write programs without knowing the hardware behind it ; just know that your program will scale like no other using the underlying cluster of hardware that makes the cloud.

 These are the ones that I can remember while writing this post. Do add more programming innovations that you come across in the comments.

Tags: , , , ,

Trackback URI | Comments RSS

Leave a Reply