This week's random hits

Check back every Friday for more random hits.


Man of many patents

The way I see it, the automotive industry owes a huge debt to Josef Hofmann. After all, he invented the pneumatic shock absorber. He also designed the first windshield wipers, according to Wikipedia.

Chances are, you’ve never heard of Hofmann. Yet during his lifetime (1876-1957), he was quite the star. Search the New York Times archives and you’ll find dozens of articles on him.

But here’s the thing. Of those articles, I’ve seen only one that talks about him as an inventor, even though he held over 70 patents. The remaining articles focus on his other talent: music.

You see, Hofmann was a wizard of the piano. He could play virtually any piece, no matter how complex, after hearing it only once. I have some recordings he made from 1901 to 1918, and the perfection of his playing is unbelievable — especially when you consider he didn’t practice.

Hofmann’s talent might have been exceptional, but he was hardly the first to combine the roles of artist and technical innovator. Some other examples:
  • Brian May, the lead guitarist for Queen, recently earned a PhD in astrophysics.
  • Hedy Lamarr, a Hollywood actress of the 1940s, co-invented an early form of spread spectrum encoding, an essential technology for cellphones and WiFi networks.
  • Ada Lovelace played the piano and wrote the first computer program.
  • Samuel Morse painted portraits and co-invented the Morse code.
  • Leonardo DaVinci painted the Last Supper and moonlighted as a military engineer.
But really, I don’t have to dig so far back. Off the top of my head, I can think of several software developers here at QNX who either sing, play in bands, or spend their personal time behind a camera lens. Closer to home, my son studies chemistry and excels on the Euphonium. My wife, who holds a Master’s of Science degree, has a real knack for painting.

The fact is, talent doesn’t fit in a little box labeled “engineer” or “artist” or “musician.” It often crosses boundaries, in all kinds of surprising ways.

What about you? Do you write code during day and play blues riffs at night? Or perhaps you manage a development team and moonlight as a wedding photographer? Tell us about it and reveal your inner artist!

BTW, to view one of Hofmann's patents, click here.


This week's random hits

Check back every Friday for more random hits.


Weather too hot? Try this cool QNX app

I was snowblowing a friend’s driveway last winter when, suddenly, a plume of green stuff began to spew out of the snowblower's chute. I stopped, looked down, and was mortified to discover that the snowblower had just shredded my friend’s juniper bush.

The fact is, snowblowers aren’t precision instruments. Just ask the folks who operate the massive, 20-ton snowblowers that clear major roads and highways after winter storms. All too often, these vehicles bang into guardrails, resulting in costly, and often dangerous, guardrail repairs. (Imagine replacing a guardrail that prevents drivers from falling over a cliff and you’ll quickly realize where the “dangerous” part comes in.)

Enter the Advanced Rotary Plow (ARP). The brainchild of the California PATH program, the ARP automatically steers itself away from guardrails by following magnets embedded in the pavement. Controlled by the QNX RTOS, the ARP is one of the first real-world applications to come out of the PATH/CALTRANS research in automated vehicle control.

To create the ARP, the folks at PATH outfitted an existing snowblower with several add-ons, including:
  • a six-slot industrial computer

  • sensors for measuring steering angle and vehicle movements

  • sensors to measure the field strength of the road magnets

  • a steering wheel actuator
The industrial computer hosts several realtime processes, all running on the QNX RTOS. The processes obtain signals from the various sensors, control the steering actuator, and display information to the vehicle’s driver.

For details on the the ARP, including the positive outcomes of initial field trials, click here.

As for the juniper, it's healing nicely.


This week's random hits

Check back every Friday for more random hits.

Do the fast-boot boogie

If you have a QNX-based system that needs to boot or restart quickly, check out Andy Gryc's recent paper, Meeting Early Boot Requirements with the QNX Neutrino RTOS. He provides details on several techniques, such as changing the order of waitfor statements in your build script to reduce overall boot time.

For instance, here's a boot scenario that uses the default waitfor order. As you can see, there are a couple of gaps (at about 130 ms and 400 ms) where nothing executes while a waitfor waits for a resource to become available:

Now here's the same system, but with optimized waitfor placement. As you can see, changing the order of waitfor statements has largely eliminated the idle gaps, shaving over 100 milliseconds off the boot time:


This week's random hits

Check back every Friday for more random hits.


I just downloaded QNX. Now what the @#$! am I supposed to do?

I'm glad you asked. Malte, a field application engineer who works for QNX Germany, has created a video to accompany his inimitable QNX QuickStart Guide. The guide leads you through all the basics: installing QNX, configuring network connections, creating IDE projects, compiling code, debugging programs — all in 10 easy-to-follow steps. Better yet, you can download the video in English, German, or Japanese.

Here's Part I of the video, which has just been posted on YouTube. See below for links to the entire video and to the PDF version of the QuickStart Guide.

For the PDF version of the QuickStart Guide, click here.

For the YouTube versions of the video, follow these links:

- Part I: English, German

- Part II: English, German

- Part III: English, German

To download the complete video from the QNX website, follow these links:

- Parts I through III: English, German, Japanese