Archive for the 'Technology Trends' Category

The Future Of Technology?

   For years now there has been a certain principle that drives technology forward. It’s not a rationale, cohesive or tangible standard, but more to do with emotion and passion. This is called the WOW Factor and it describes the emotional state that you enter when you see a new category of technology that completely and totally knocks your socks off. The first time you saw a ultra portable super slim notebook, the initial euphoria of using a digital camera for the first time, the pure bliss of wire free browsing on your Wi-Fi computer, the initial shock of seeing the clarity of a High Definition Plasma display, the pure sensory experience of hearing a perfectly tuned 5.1 Home theatre – that Ladies and Gentlemen is called the WOW Factor; and sadly it may be time for us to bid goodbye to this incredible experience.  

   Face it; when was the last time you truly felt like the earth had moved when you had either heard or seen something new in the consumer technology arena. Innovations and inventions in this field have been few and far between for quite sometime now. Things have moved to a evolutionary phase and it’s always add on features that come to mind. The iPod is in its fifth generation and still looks pretty much the same, Plasma Displays have entered their eighth generation and still suffer from burn in, CD’s have been around forever and still get scratched, mobile phones still crash, cameras still generate red eyes, notebook batteries are exploding all over the world and it will take about 3 wrong key presses to bring your computer to a grinding halt.   

   Just about the biggest thing that we have all been waiting for in the last 3 years have been High Definition Displays. While it is has been slow to come, today most companies have delivered some cutting edge products. They are rock solid, crystal clear, bigger than ever (140 inch is in the works), have great color depth and amazing resolution. But what now? These display are already as clear as the human eye can perceive. Going any clearer or increasing the resolution anymore will be a zero sum game with very few benefits. They also can’t make them bigger as even the 110 inchers weigh about 400 pounds and need 8 people to carry them. The fact that your house doors and maybe a few walls will have to be torn down to carry the TV in - may be another damper.   

   Consider the other Holy Grail of Technology. We all want it lighter, smaller, thinner and sleeker. Today we have hybrid camcorders so small that they barely fit in our hands, mp3 players the size of our fingernail, notebooks so slim that they look like they may snap into two and phones that are pure featherweights.    While these micro machines are radical devices - the small ergonomics and form factor may have hit the law of diminishing returns. Have these products become so diminutive that they are now effectively unusable? Our fingers are already too large and clumsy to press the buttons on our gadgets, our eyes can hardly comprehend their tiny screens and most of us cannot grip or control such small gadgets properly. It’s just not possible for them to make them any thinner or smaller without sacrificing usability completely.   Technology will still continue to enthral us - but in tiny surges. It may well be time for us to embrace the fact that from here on technology will only move forward in small incremental steps. It’s lights out for WOW technology and the sooner we all realize it - the lesser the chances of being disappointed.

 Saurabh Saxena

Competency Development

Competency Development

I again thank you all for the good encouraging comments for the last post. It’s good to see this much amount of interest on Open Source. Especially guys like Praveer and Raghul, who have been able to talk a good amount of detail on the examples they’ve pointed out.

Specifically what Raghul talked about, got my thought process going. He was talking about using open source at colleges for learning purposes. The statement he made is of great magnitude and importance. If you really see, it’s a two-sided phenomenon. Using
OSS for learning and competency development is one aspect, but the reverse aspect is of much more importance. It’s not easy to contribute to the community unless we are good developers. Competency is a must for contributing to open source. For e.g, if you see the profile of the developers of some of the most popular open source software like Linux, Apache, MySQL, Gnome etc, you would see how experienced they are. This is not by accident or coincidence and some of these guys would be the first to jump out and say that they are still learning!!!

So I thought I’ll spend some time on how important competency development is and how learning never stops.

The foundation/starting point for this in our industry is being a good programmer in at least one programming language. This is not easy, but to think of it all you’ve got to do is just keep programming!!!!! And this can be fun too. In fact some of the first C programs we ask our freshers to do, is to pick up their favorite game and implement it. This also interests you as you’re able to relate to it. This is why you see only a million sudoku solvers available on the web.

Whichever way you approach it, do not forget the end goal. Ensure that you understand all the important aspects of the language. It is also a bit context sensitive, as some of the finer aspects depend on the domain in which you are programming. For e.g somebody who programs on the embedded/systems software domain in C, will always code to the limitations they are working with. They need to take care of things like Endian-ness, structure padding for cache-line optimizations, double pointer manipulations etc… These are the things that come with practice, but once the foundation is right these are relatively easy challenges J

So, invest your time in competency development which would make it easy to scale up to your goals.

Open Source Software

The adoption of Open Source Software is gaining significant importance in the world today. It is neither a new technology, nor a methodology that will change the way software works, but its ever increasing acceptance and adoption by companies, businesses, governments, software developers, educational institutions, and even students indicates its profound impact in the software community. What started as a small initiative, has hit big time popularity with the likes of Linux, Apache, MySQL becoming great success stories. It has taken us to the level where in anytime you are in need of a particular software, the first thing you do is search in sourceforge.net if we can get something similar which we can directly use or customize.

Open Source software or OSS as its popularly known is governed by the rules of the Open Source Definition and is mostly released under the GNU Public license (GPL).

The advantages of OSS are many but the most prominent one is its simplified license management in terms of usage. This makes it very attractive in spite of the disadvantages like service/support and training/documentation. However off late, there have been major steps taken to fix some of these weak links.

Companies and big corporate bodies are switching to OSS because of the flexibility it provides to them in adding their own features to software and in maintaining them. It also provides a vast ground for software research, which can be taken up without having to invest heavily in terms of reinventing the wheel.

With the giants of the industry like IBM, Sun backing OSS initiatives the future looks exciting for the community. The latest trend increasingly shows that the software community uses OSS as a way for fostering innovation with projects being kicked off in a lot of exciting new technologies. The projects or innovations that were being done as intensive research in organizations are now being implemented in
OSS projects for e.g, virtualization support in Linux Kernel.

Now getting to the context of student community, Open Sourcing of software provides a huge ground to study and involve in the process of creating good software. Several open source-related websites encourage its users to upload source code, download the ones which are being developed for testing, report bugs, etc. It also gives budding software enthusiasts a global arena to expose their software to and gain positive criticism and feedback. OSS provides a good learning platform as you need to download, install, and play around with the software, which is more akin to on-the-job training.