Dr. Dobb's | James Reinders http://www.drdobbs.com/author/6754 Dr. Dobb's Copyright 2013, United Business Media. en-us Things That Go Boom http://www.drdobbs.com/embedded-systems/things-that-go-boom/240169445 It is easier to make a safe light bulb than to make a safe explosive. Wed, 24 Dec 2014 07:59 EST Abstractions For Binary Search, Part 10: Putting It All Together http://www.drdobbs.com/cpp/abstractions-for-binary-search-part-10-p/240169437 After the discussions of the last few weeks, we are finally ready to build our test cases. Mon, 22 Dec 2014 07:24 EST The Touch of a Button http://www.drdobbs.com/embedded-systems/the-touch-of-a-button/240169431 Of course, I wasn't satisfied with the simple approach, so I added a bit of code to sense swipes much as you would find on a touchscreen phone. Fri, 19 Dec 2014 07:13 EST Abstractions For Binary Search, Part 9: What Do We Need to Test? http://www.drdobbs.com/cpp/abstractions-for-binary-search-part-9-wh/240169416 Many people confuse the idea of a test case working correctly with the idea of a program producing correct output. Tue, 16 Dec 2014 01:52 EST Hosting USB http://www.drdobbs.com/embedded-systems/hosting-usb/240169402 I wanted to like the Vinculum. I really did. Thu, 11 Dec 2014 09:12 EST Abstractions for Binary Search, Part 8: What Does It Mean To Say "It Works?" http://www.drdobbs.com/cpp/abstractions-for-binary-search-part-8-wh/240169392 Last week, we talked in general terms about how to test a binary-search function. Now let's get specific. Tue, 09 Dec 2014 09:20 EST Ham for the Holidays http://www.drdobbs.com/embedded-systems/ham-for-the-holidays/240169379 As I look around my lab, I see no fewer than 12 development boards of different kinds. Fri, 05 Dec 2014 14:52 EST Abstractions For Binary Search, Part 7: Choosing Test Cases http://www.drdobbs.com/cpp/abstractions-for-binary-search-part-7-ch/240169367 Binary search is a particularly instructive algorithm to figure out how to test. Wed, 03 Dec 2014 22:15 EST Embedded Goes to Shell http://www.drdobbs.com/embedded-systems/embedded-goes-to-shell/240169346 I converted the standard Linux shell (bash) into a specialized programming language that can control a serial I/O board. Thu, 27 Nov 2014 22:31 EST Abstractions For Binary Search, Part 6: How On Earth Do You Test It? http://www.drdobbs.com/cpp/abstractions-for-binary-search-part-6-ho/240169326 We will reduce a substantial part of our problem to calling these two functions repeatedly with suitably chosen test cases and verifying that they return the same results. Mon, 24 Nov 2014 09:22 EST In Command http://www.drdobbs.com/embedded-systems/in-command/240169307 Simple tools can be combined in many ways to do things Tue, 18 Nov 2014 09:09 EST Bluetooth Phone Home http://www.drdobbs.com/embedded-systems/bluetooth-phone-home/240169295 Using mbed on the embedded side to quickly create a BLE device and with the Android API doing most of the heavy lifting on the phone side, it can be pretty painless to create a complete BLE application. Fri, 14 Nov 2014 11:32 EST Abstractions For Binary Search, Part 5: Getting Down to Details http://www.drdobbs.com/cpp/abstractions-for-binary-search-part-5-ge/240169289 It's hard to imagine how this code could be much simpler. However, we don't actually know whether it works. Thu, 13 Nov 2014 07:44 EST Invariants for Binary Search, Part 4: Using The Improved Abstractions http://www.drdobbs.com/cpp/invariants-for-binary-search-part-4-usin/240169267 We continue our discussion of how to implement our binary search in an <em>n</em>-element sequence. Mon, 10 Nov 2014 07:53 EST The IT Talent Shortage Debate http://www.drdobbs.com/architecture-and-design/the-it-talent-shortage-debate/240169255 Tech employers say good people are hard to find. Job hunters see a broken hiring process. Both sides need to shake their frustration and find new ways to connect. Wed, 05 Nov 2014 14:26 EST Sharper Than a Blue Tooth http://www.drdobbs.com/embedded-systems/sharper-than-a-blue-tooth/240169247 This simple project sends out beacon data using the board's onboard temperature sensor (granted, it measures the internal chip temperature, which might not be that useful). Mon, 03 Nov 2014 17:20 EST Invariants for Binary Search, Part 3: Improving Our Abstractions http://www.drdobbs.com/cpp/invariants-for-binary-search-part-3-impr/240169239 With this abstraction under our belts, we can proceed to write code. If you're interested, you might like to do so for yourself before I show you the details next week. Fri, 31 Oct 2014 07:15 EDT Agile Certifications Are Actively Destructive http://www.drdobbs.com/architecture-and-design/agile-certifications-are-actively-destru/240169223 Is it even possible to assess competence in agile development with a test? Tue, 28 Oct 2014 11:45 EDT Lazy Bluetooth http://www.drdobbs.com/embedded-systems/lazy-bluetooth/240169212 There is a Bluetooth profile made just for the Internet of Whatever. Sat, 25 Oct 2014 00:15 EDT Invariants for Binary Search, Part 2: Refining The Specifications http://www.drdobbs.com/cpp/invariants-for-binary-search-part-2-refi/240169199 This week, we will try to define more carefully the problem we would like to solve before leaping into the solution. Wed, 22 Oct 2014 17:11 EDT Dead Beef and DFU http://www.drdobbs.com/embedded-systems/dead-beef-and-dfu/240169182 Every time LabTool starts, it waits for the host computer to send it the firmware to execute. Mon, 20 Oct 2014 11:07 EDT Invariants For Binary Search, Part 1: A Simple Example http://www.drdobbs.com/cpp/invariants-for-binary-search-part-1-a-si/240169169 We can use an invariant to help us reason about a piece of code that many programmers find hard to get right by any other means. Thu, 16 Oct 2014 11:17 EDT Embedded Memory Allocation http://www.drdobbs.com/embedded-systems/embedded-memory-allocation/240169150 Possibly the worst sin of calling malloc is that it might take a very long time to complete. Mon, 13 Oct 2014 05:21 EDT Loop Invariants And Testing: Often Possible, Often Difficult http://www.drdobbs.com/cpp/loop-invariants-and-testing-often-possib/240169122 We can think of an invariant as being a claim or belief about the state of program that we expect to be true each time control reaches a particular point in the program. Mon, 06 Oct 2014 10:56 EDT A Loop Invariant Can Be An Optimization Tool http://www.drdobbs.com/cpp/a-loop-invariant-can-be-an-optimization/240169097 This week, we'll look at the helpful qualities of loop invariants. Mon, 29 Sep 2014 19:14 EDT