I'd be lost without my copy of The C Programming Language (Brian Kernighan and Dennis Ritchie, Prentice Hall PTR, 1988), The Art of Electronics (Paul Horowitz and Winfield Hill, Cambridge University Press, 1989), and many other weighty tomes whose bulk threatens the stability of the house's foundation. Over the years I've reviewed many of these books–see www.ganssle.com/bkreviews.htm.
But magazines are more important than books. With the exception of hastily-written “tell-all” volumes from former aides to politicos, no book can be as topical as a monthly magazine. The electronics industry changes so fast that “topical” is critically important for design engineers, be they firmware folk, hardware wonks, or, like most of us, people with a foot in each camp.
Most Embedded Systems Design readers have electrical engineering degrees. EEs understand how to read and manage magazines. We have a long and rich history of keeping current by avidly consuming every available publication. Some years ago I dug through the University of Maryland's fabulous library system and found that the oldest electronics (well, electrical) magazine in the stacks dated from the early 1880s. Imagine! For over a century we've been relying on print pubs to stay current.
EEs also know how to read the magazines. I receive two dozen technical publications each month, some free, others not. It's simply impossible to read all that material. Like most other electrical engineers I've learned to quickly flip through each journal, ripping out the occasional article to be read on a plane or during other down time, and scanning the interesting ads.
In this business advertising is as important as editorial content; vendors have important products that we'll need and often offer even more up-to-date content than the articles. I'm especially impressed with the technical content provided by the purveyors of analog components like Maxim. Their multipage inserts offer a wealth of immediately useful design information.
Because of the importance of advertising we EEs have learned to page through the entire rag rather than eyeball the table of contents and cherrypick a few interesting articles. Serendipitous discoveries sometimes uncover critically useful information.
Any EE would be lost and quickly become obsolete without editorial and advertising resources provided by the trade magazines. The same is true of the firmware world, yet fewer embedded systems programmers are as slavishly devoted to consuming magazines as their EE brethren are. My informal surveys suggest that the average developer browses no more than two industry magazines a month. Offshore-resistant careers require broad knowledge of current trends and accepted practices, as well as a deep knowledge of commercial tools and products that speed and improve development efforts.
So here's my take on a handful of publications, very roughly in my highly biased order of preference.
First and foremost there's the magazine you hold in your keyboard-calloused hands, Embedded Systems Design , whose recent renaming reflects a more catholic approach to the process of building embedded systems. Firmware people live at the boundary between hardware and software, for in this industry those two components cavort together in an intimate dance whose boundaries get fuzzier every year. Using a soft core in an FPGA? The tools may change the CPU's instruction set to run the code more efficiently. Sometimes firmware even dynamically reengineers the hardware!
Not an issue goes by that I don't find at least one interesting article in Embedded Systems Design . It's the only magazine whose focus is uniquely on this industry, so it's a must-read for all firmware developers. And I'd hope the hardware crowd peruses it as well, to help them create code-friendly circuits.
The publication has a limited subscription base, so many developers don't receive the print version. Surf the companion web site, www.embedded.com, which has the entire magazine plus much additional content.
Probably next on my list of must-reads is the biweekly EDN , an unabashedly hardware-centric magazine aimed squarely at electronics engineers doing digital, analog, and RF design. Like Embedded Systems Design it's a freebie. EDN isn't for the electronics novice; it assumes you're a working EE. But there's a wealth of useful information about microprocessors and related components. Every issue contains the Design Ideas section, which I'm told is the most popular part of the magazine. A recent issue had a cool new way to debounce switch contacts so some very useful software ideas leak through the hardware focus. See www.edn.com.
EE Times is another must-read for everyone in this industry. EE Times won't give you insight into developing code, but it does cover new products, businesses, and emerging trends. You'll find articles about future technologies such as quantum teleportation, which may lack practical applications now (it's at least one threat the beleaguered airline industry doesn't have to worry about yet) but sure is fascinating.
EE Times is especially important for tracking businesses and employment trends. A weekly, it, too, is free. Visit them at www.eetimes.com.
Dr Dobb's Journal is free depending on your qualifications. Born in the 1970s as Dr. Dobb's Journal of Computer Calisthenics and Orthodontia , it originally had a sort of open-source mission to deliver a free version of Basic to the new not-quite-masses of people attracted to microprocessors. Though the magazine was a lot more free-wheeling fun in those radical days it's still an interesting and pertinent publication for every embedded systems developer. Dr. Dobb's primary audience seems orthogonal to firmware developers, tending toward Windows and Linux developers, and I get a little tired of the C#, Java, and web coverage, but there's at least one article in each issue about embedded systems, as well as a column on the subject by always-interesting Ed Nisley. Many ads are for tools useful to any firmware team. See www.ddj.com.
Another favorite is Circuit Cellar Ink . More or less an electronics hobbyist magazine, and though it really doesn't have much of a software focus (the editorial director's favorite programming language is a soldering iron), each issue includes interesting projects with code. I enjoy Tom Cantrell's monthly column that describes new embedded processors and technology and find some of the projects interesting and illuminating. It's not a freebie but is worth the $21.95 (U.S.) yearly rate if you get a kick out of circuits and projects. See www.circuitcellar.com.
Few embedded systems people know about Crosstalk, The Journal of Defense Software Engineering . It's published by the U.S. Department of Defense, so I guess it isn't free, as some fraction of your tax dollars fund the magazine, but there's no charge to subscribe beyond the few tens of thousands the IRS garnishes each year. Crosstalk 's articles address process issues, not technical tricks or techniques. There's no explicit embedded systems coverage, but all software organizations benefit from defined processes. Working with CMMI, TSP, or PSP? Then Crosstalk is a must-read. Recently the magazine has covered more agile programming topics as well, but it mostly focuses on heavyweight processes on big projects. I enjoy some of the papers enough to read a fair amount of each issue. See www.stsc.hill.af.mil/crosstalk/about.html.
To stay abreast of less onerous sorts of processes, subscribe to the free Software Development Magazine , which offers excellent coverage of agile methods. There's nothing at all about embedded systems, but much useful information about software engineering in general. With the firmware content of products doubling every 10 months to two years (depending on which surveys you believe) we had all better learn everything possible about software engineering and work to stay current in this quickly evolving field. Yeah, the endless articles about XML, SQL, and the like are tiresome, but skip those and read the rest of the publication. Useful ads, too. See www.sdmagazine.com.
As professionals we're supposed to act like professionals, which includes belonging to our professional organizations. The Communications of the ACM is the Association for Computer Machinery's primary organ. Though many or even most of the articles aren't relevant to a firmware person's needs, there's enough of interest to warrant reading it. While the regular columns are interesting and entertaining, the ads are not unless you're a PhD looking for work. The ACM, like the IEEE, is expensive to join, and the publications can be frustratingly devoid of practical content. But for me the benefits outweigh the price. See www.acm.org.
Which brings us to the IEEE and IEEE Computer , a monthly publication that's interesting though usually not tremendously useful to the practicing engineer. I enjoy the columnists' perspective and one or two articles a month. See www.computer.org, and remember to deduct the dues from your income taxes.
If you like small, quirky projects or have an interest in building gadgets at home or on a tight budget, do read Nuts & Volts . This electronics hobbyist magazine has a somewhat crude feel but is lots of fun for the experimenter. A recent issue, for instance, shows how to build a clock, how to build a Geiger counter using a PIC processor, describes the history of the PC, looks at overlaying video on a monitor using, again, a PIC, and talks about supercomputers, stop-action photography, and more. Expect lots on the Basic Stamp but nothing about ARMs. I like the ads most of all–blurbs from small outfits catering to hobbyists' needs. Cheap PCBs. Robots. Components. Surplus gear. For me it's worth the $24.95 per year. Check out www.nutsvolts.com and you'll sense the publication's flavor.
Then there's Make , Tim O'Reilly's latest offspring. After a year I'm not sure if I like it or hate it. Like Nuts & Volts the target market is the hobbyist. Unlike N&V , Make is very slick and polished. It doesn't specifically go for electronics enthusiasts; rather, the audience appears to be people who like to mess with things like cars and spud guns. One issue covered the basics of soldering, indicating that these folks have far less hardware experience than most people reading this column. There's no code, no programming. One article described making a Steadicam using pipes and barbell weights.
At nearly 200 pages per issue with essentially no ads, there's a lot to read. Glaring graphics, brightly-colored backgrounds and an organizational jumble doesn't help these middle-aged eyes pick words off the page. It's often hard to tell where one article ends and another begins.
“Hack your iPod,” “Hack your sleep cycle,” “Life's hacks”–the four letter word appears seemingly on every page. Is this some new cabalistic incantation? The new argot of not-quite-techie teenagers? Its constant repetition is annoying and conveys no information.
Yet parts of the magazine are fun. Others are interesting, like the discussion of using 110VAC welders for small projects. But at $35 a year for just four issues the price is high for the benefit received. I'll probably let my subscription lapse. But lots of others love it. See www.makezine.com.
SD Times , sort of an EE Times for software people, is aimed mostly at IT-type developers. But sometimes there's an embedded systems article. The ads and product reviews are a useful way to keep up with tools. Free. Check it out at sdtimes.com.
Software Test and Performance is a new publication by the folks who bring you SD Times and is run by the former editorial director of Embedded Systems Programming . In my opinion it's still more than a little weak on content but I hope that in time it'll blossom. Testing is so critical–and generally poorly done–that a magazine about this subject is sorely needed. Also free–see www.stpmag.com.
The ACM also publishes Queue . If you're an ACM member this magazine is free and worthwhile; I wouldn't join just for Queue , though. There's an occasional article of interest, with fun columns. See www.acmqueue.org. Queue is also very new but working hard to improve their content.
The IEEE publishes a number of journals and transactions, like IEEE Micro . To my frustration, I rarely find much of interest in the magazine but stay subscribed in the hope that will change. See www.computer.org/micro. And my hope springs eternal for IEEE Transactions on Software Engineering –what a great subject! But the articles are uniformly awful, at least for practicing engineers. Perhaps the academics find articles like “Cognitive Heuristics in Software Engineering: Applying and Extending Anchoring and Adjustment to Artifact Reuse” useful or interesting. To be fair, Transactions on Software Engineering doesn't pretend to be an engineer's reference. But I'd sure like to see something on this subject that a real software developer would find useful in his daily routine.
The free world
The prices I've listed are for subscribers in the U.S. Generally the freebies aren't free in other countries. And I didn't review any of the many magazines published in other parts of the world, because, well, I don't receive them.
This is a great time to be an embedded systems developer. There's a lot going on; the field is changing as new tools, techniques, and methods are found and adopted. Stay current: read, scan the ads, and discuss what you learn with colleagues.
For we know one thing: stasis is death.
Jack G. Ganssle is a lecturer and consultant on embedded development issues. He conducts seminars on embedded systems and helps companies with their embedded challenges. Contact him at firstname.lastname@example.org.
Thank you for the useful information on the magazines that are available for EE/hobbyists.
I think a magazine that worths mentioning is C/C++ User Journal (www.cuj.com). It focuses on developing C/C++ frameworks.
It has a “CUJ Expert Forum” that gives useful insights to practical programming problems. I find this column particularly useful in refreshing my memories on the details on the C/C++ programming languages
– Chi Ho Ng
Regarding Make magazine and “Circuit Bending” in general (look that up in your Funk and Wagnall ) a lot of these hacks are very low tech. Simply re-wiring in some cases. My only recent contribution is to add a backlight dim control to the too-bright iHome iPod clock radio. It's a pity that todays hackers don't have the opportunity to work designs forward from kits (with accompanying documentation). Without a greater understanding of the concepts within, the hackers are left to very basic, even cosmetic modifications.
– Grant Beattie
La Habra, CA
Interesting list of books and mags. It's funny how our lists are pretty much identical with one glaring exception–something called Embedded Systems Programming .
For us Canadians it has gone into stasis. It hasn't been available since the big shakeout a couple of years ago.
Keep that up and we'll stop sending H1B droids south.
– Andrei Chichak
I can't agree more that the ads in the magazine are just as important as the articles. I spend about as much time reading each.
I just hope your advertisers are aware how much attention informative Ads get in your magazine by readers like me.
The ads are a great way for me to learn of technology, products, and solutions that I've never heard of before. Would you consider putting in “ads” of open source software once in a while? For instance, a coworker just taught me about ACE, TAO, and Corba, I never would have thought about using Corba in RT.
The problems with my suggestion are obvious, but maybe you can dream up a business model that would create some synergy with your paying advertisers.
– George Camann
Embedded systems developer
As Andy Grove in Intel said, (pertaining to corporations) “There are two types of companies; the quick, and the dead.”
This also applies to our engineering careers . . . especially consultants, where this type is basically part of the normal expectation.
Basically, I read ESC, EDN, and EETIMES. However, let us not forget that many of us have to also read our respective industry rags for trends also! In my case, this includes “Communications Engineering Design”, (broadband) and “LightReading”, (optical networking).
I am certain that there are many more out there like me that feel an 'obligatory necessity' in reading their industry specific rags of choice just to keep up!
– Ken Wada
Aurium Technologies Inc.
Sr. embedded systems consultant
San Jose, CA
Better Software focuses on testing not embedded. It's associated web site stickyminds.com I've found to be valuable. I consider the column of the week required reading.
Sr. Software Test Engineer