CMP EMBEDDED.COM

Login | Register     Welcome Guest   IPS  
HOME DESIGN PRODUCTS COLUMNS E-LEARNING CONFERENCES CODE FORUMS/BLOGS NEWSLETTERS CONTACT FEATURES RSS RSS




Rainy-Day Ruminations

by Lindsey Vereen

Here we are a quarter of the way into 1998 and Windows 97 still hasn't been released, but I don't think you can blame this one on El Nino. Even so, Microsoft probably shouldn't be flogged severely for being late. Large-scale software projects are incredibly difficult to complete, and many never see the light of day. A couple of issues ago I mentioned that complexity in software isn't viewed with the same admiration as complexity in hardware. While hardware complexity is perceived as indicative of humanity's technological brilliance, software complexity is seen as a big problem.

Evidence of the increasingly prominent role that software is taking on was presented at the recent CompactPCI Media Day in Carmel. Brough Turner, the CTO at Natural Microcomputers, remarked "We build boards and put chips on them and sell them with SDKs." Then he added, "Eighty to 90% of our engineers are software engineers." A spokesperson for Ziatech, another board vendor, remarked that about 50% of the engineers at his company were software engineers.

This anecdotal information is another indication that software is the lubricant that moves hardware into the hands of consumers. The mix of hardware to software continues to shift as complexity in the form of features moves to software. This shift is easy to understand: adding features in software is perceived to be free.

One reason you'll find such a high ratio of software engineers to hardware engineers is that you don't need so many hardware engineers for a design project. Hardware development tools are more mature than software development tools, having been around several years longer. The most mature software development tools have been those used for desktop application development. Now it appears that embedded developers can take advantage of desktop tool development, because some vendors who have historically devoted themselves to the desktop have discovered the booming embedded systems development business. Microsoft is one obvious example. Metrowerks, a company that sells development tools for Macs, is another. As processing power and memory available in embedded systems increase, the crossover from the desktop to embedded systems seems inevitable.

You can argue that desktop tool vendors don't have a clue about embedded systems development. However, as tool vendors gravitate from the desktop to this market, they may provide a new benchmark for traditional embedded tool vendors to meet. But these interlopers still have a thing or two to learn about the particular issues related to real-time embedded software development. Can companies translate their expertise to embedded systems just because they have been successful on the desktop? Not necessarily. Nonetheless, the competition should at least lead to better embedded development tools.

Debuting this month (p. 31) is a new column called "Programming Pointers." The column will be brief, just one to two pages, and will concentrate on software tips and techniques intended to help you get your job done. Dan Saks-the column's author-may be a familiar name to some of you from his work in C/C++ Users Journal and Software Development , or his popular tutorials and classes at the Embedded Systems Conferences. Dan is a consultant specializing in C++ and the co-author of C++ Programming Guidelines . We're especially happy that he has agreed to share his expertise with the readers of Embedded Systems Programming .

Return to Embedded.com

Send comments to: Webmaster
All material on this site Copyright © 2000
CMP Media Inc. All rights reserved.

Embedded.com Career Center
Ready for a change?
SEARCH JOBS

Browse all jobs

SPONSOR
RECENT JOB POSTINGS





 :