When is a Software Engineer Not a Software Engineer?Written by V. Berba Velasco Jr., Ph.D.
The title of “software engineer” has got to be among most highly abused in corporate high-tech world. It’s also one of most popular.And why not? It sounds a lot better than “computer programmer,” and it looks much better on one’s business card. Unfortunately, it’s often inaccurate. Engineering is, after all, application of sound technical principles to develop systems that are robust, efficient and elegant. I’ve found that a great many software engineers can develop working programs, but do little or no real engineering design. Does this sound harsh? Perhaps, but I’ve also found it hard to deny. I’ve encountered very few software engineers, for example, who have clean, crisp and readable coding styles—an essential element of elegant software design. I’ve also encountered a preponderance of cryptically written functions, clumsy software abstractions and bizarre spaghetti code. To my dismay, I’ve discovered that even among computer science graduates, many reduce object-oriented programming to mere use of private data, public functions and object instantiations. It’s enough to break a teacher’s heart. Now, I won’t go so far as to say that most programmers write spaghetti code. That would not be fair. However, I do think that relatively few programmers have a deep appreciation for artistry of software development. That’s not to say that they’re ignorant of such things; not at all. Rather, it’s more that engineering aspects of elegant code design are all too often neglected. I think this happens because modern programming tools have made proper code design seem like a nuisance. In early years of computing, people were forced to write out their software designs, pondering many fine details before they ever sat down in front of computer. Nowadays, with our fast compilers and interactive debugging systems, programmers often find it more convenient to simply sit down and start coding, with just a modicum of software design. Mind you, I do understand that this is sometimes more efficient—when programming task is fairly routine, for example. However, when such design-as-you-go software development becomes standard practice, then you have makings of utter chaos.
| | Laptop computers and the PVP effect!Written by Tom Fox
Roll over lumbering desktop computers, limber laptop is here, and it's here to stay! For a while now notebooks have outstripped their ageing desktop PC siblings, easily winning gold medal in computer sales olympics. We will illustrate how PVP effect has contributed greatly to increase in popularity of notebook computers.(P) Portability: Firstly it may be stating obvious, but people buy laptops because they can take them anywhere. Office workers need no more be confined to their claustrophophic cubicles. Instead those statistic charts and data reports can be compiled on a train, in comfort of an arm chair, or even on beach! Portability equals flexibility, but alas this hasn't always been case. Todays ultra portable laptop computers have a come along way since bulky, sewing machine sized machines of late seventies and early eighties. Indeed one of first portable computers was built by IBM, and this machine (IBM 5100) weighed in at a hefty 50lbs! Today's corridor warriors would have trouble lugging that puppy from meeting to meeting, unless of course they subjected themselves to an intensive dose of steroids :)
|