Don’t Be A Code Tyrant, Be A Mentor

Hardware hacking is a way of life here at Hackaday. We celebrate projects every day with hot glue, duct tape, upcycled parts, and everything in between. It’s open season to hack hardware. Out in the world, for some reason software doesn’t receive the same laissez-faire treatment. “Too many lines in that file” “bad habits” “bad variable names” the comments often rain down. Even the unsafest silliest of projects isn’t safe. Building a robot to shine lasers into a person’s eyes? Better make sure you have less than 500 lines of code per file!

Why is this? What makes readers and commenters hold software to a higher standard than the hardware it happens to be running on? The reasons are many and varied, and it’s a trend I’d like to see stopped.

Software engineering is a relatively young and fast evolving science. Every few months there is a new hot language on the block, with forums, user groups, and articles galore. Even the way software engineers work is constantly changing. Waterfall to agile, V-Model, Spiral model. Even software design methodologies change — from pseudo code to UML to test driven development, the list goes on and on.

Terms like “clean code” get thrown around. It’s not good enough to have software that works. Software must be well commented, maintainable, elegant, and of course, follow the best coding practices. Most of these are good ideas… in the work environment. Work is what a lot of this boils down to. Software engineers have to stay up to date with new trends to be employable.

There is a certain amount of “born again” mentality among professional software developers. Coders generally hate having change forced upon them. But when they find a tool or system they like, they embrace it both professionally, and in their personal projects. Then they’re out spreading the word of this new method or tool; on Reddit, in forums, to anyone who will listen. The classic example of this is, of course, editors like the vi vs emacs debate.

Continue reading “Don’t Be A Code Tyrant, Be A Mentor”

Automate The Freight: Medical Deliveries By Drone

Being a cop’s kid leaves you with a lot of vivid memories. My dad was a Connecticut State Trooper for over twenty years, and because of the small size of the state, he was essentially on duty at all times. His cruiser was very much the family vehicle, and like all police vehicles, it was loaded with the tools of the trade. Chief among them was the VHF two-way radio, which I’d listen to during long car rides, hearing troopers dispatched to this accident or calling in that traffic stop.

One very common call was the blood relay — Greenwich Hospital might have had an urgent need for Type B+ blood, but the nearest supply was perhaps at Yale-New Haven Hospital. The State Police would be called, a trooper would pick up the blood in a cooler, drive like hell down I-95, and hand deliver the blood to waiting OR personnel. On a good day, a sufficiently motivated and skilled trooper could cover that 45-mile stretch in about half an hour. On a bad day, the trooper might end up in an accident and in need of blood himself.

Continue reading “Automate The Freight: Medical Deliveries By Drone”

How A Hacker Remembers A PIN

If you have more than a few bank cards, door-entry keycodes, or other small numeric passwords to remember, it eventually gets to be a hassle. The worst, for me, is a bank card for a business account that I use once in a blue moon. I probably used it eight times in five years, and then they gave me a new card with a new PIN. Sigh.

Quick, What’s My PIN?

How would a normal person cope with a proliferation of PINs? They’d write down the numbers on a piece of paper and keep it in their wallet. We all know how that ends, right? A lost wallet and multiple empty bank accounts. How would a hacker handle it? Write each number down on the card itself, but encrypted, naturally, with the only unbreakable encryption scheme there is out there: the one-time pad (OTP).

The OTP is an odd duck among encryption methods. They’re meant to be decrypted in your head, but as long as the secret key remains safe, they’re rock solid. If you’ve ever tried to code up the s-boxes and all that adding, shifting, and mixing that goes on with a normal encryption method, OTPs are refreshingly simple. The tradeoff is a “long” key, but an OTP is absolutely perfect for encrypting your PINs.

The first part of this article appears to be the friendly “life-hack” pablum that you’ll get elsewhere, but don’t despair, it’s also a back-door introduction to the OTP. The second half dives into the one-time pad with some deep crypto intuition, some friendly math, and hopefully a convincing argument that writing down your encrypted PINs is the right thing to do. Along the way, I list the three things you can do wrong when implementing an OTP. (And none of them will shock you!) But in the end, my PIN encryption solution will break one of the three, and remain nonetheless sound. Curious yet? Read on.

Continue reading “How A Hacker Remembers A PIN”

Number Twitters

Grab a shortwave radio, go up on your roof at night, turn on the radio, and if the ionosphere is just right, you’ll be able to tune into some very, very strange radio stations. Some of these stations are just a voice — usually a woman’s voice — simply counting. Some are Morse code. All of them are completely unintelligible unless you have a secret code book. These are number stations, or radio stations nobody knows much about, but everyone agrees they’re used to pass messages from intelligence agencies to spies in the field.

A few years ago, we took a look at number stations, their history, and the efforts of people who document and record these mysterious messages used for unknown purposes. These number stations exist for a particular reason: if you’re a spy, you would much rather get caught with an ordinary radio instead of a fancy encryption machine. Passing code through intermediaries or dead drops presents a liability. The solution to both these problems lies in broadcasting messages in code, allowing anyone to receive them. Only the spy who holds a code book — or in the case of the Cuban Five, software designed to decrypt messages from number stations — can decipher the code.

Number stations are a hack, of sorts, of the entire concept of broadcasting. For all but a few, these number stations broadcast complete gibberish. Only to the person holding the code book or the decryption software do these number stations mean anything. However, since the first number stations went on the air over one hundred years ago, broadcasting has changed dramatically. We now have the Internet, and although most web services cannot be considered a one-to-many distribution as how broadcasting is defined, Twitter can. Are there number stations on Twitter? There sure are. Are they used by spies or agents of governments around the world? That’s a little harder to say.

Continue reading “Number Twitters”

The Dangers Of Engineering While Unlicensed

Citizen engineers, beware the Beaver State. If you want to discuss engineering in a public setting, you’d better have a license. If you don’t, you could end up like Oregon resident Mats Järlström — paying a $500 fine and being threatened with even larger civil penalties and jail time.

The story of how Järlström became ensnared in this unfortunate series of events begins innocently enough, and it’s a story that any Hackaday reader can probably relate to. After his wife received a traffic ticket in the mail from a red-light camera in the town of Beaverton, Järlström began pondering the math of traffic signal timing. After a little digging, he found the formula used for calculating the time traffic signals stay in the yellow stage. Moreover, he found a flaw in the formula, which dates back to 1959, that could lead to incorrect violations issued by automated traffic cameras.

Continue reading “The Dangers Of Engineering While Unlicensed”

We’ve Got It Down PAT: Appliance Electrical Safety Testing

Everywhere we look in our everyday lives, from our bench to our bedroom, there are the ubiquitous electrical cords of mains-powered appliances. We don’t give our electrical devices a second thought, but in addition to their primary purpose they all perform the function of keeping us safe from the dangerous mains voltages delivered from our wall sockets.

Of course, we’ve all had appliances that have become damaged. How often have you seen a plug held together with electrical tape, or a cord with some of its outer sheath missing? It’s something that we shouldn’t do, but it’s likely many readers are guiltily shuffling a particular piece of equipment out of the way at the moment.

In most countries there are electrical regulations which impose some level of electrical safety on commercial premises. Under those regulations, all appliances must be regularly tested, and any appliances that fail the tests must be either repaired or taken out of service

In the United Kingdom,where this piece is being written, the law in question is the Electricity At Work Regulations 1989, which specifies the maintenance of electrical safety and that there should be evidence of regular maintenance of electrical appliances. It doesn’t specify how this should be done, but the way this is usually achieved is by a set of electrical tests whose official name: “In-service Inspection & Testing of Electrical Equipment”, isn’t very catchy. Thus “Portable Appliance Testing”, or PAT, is how the process is usually referred to. Join me after the break for an overview of the PAT system.

Continue reading “We’ve Got It Down PAT: Appliance Electrical Safety Testing”

Fail Of The Week: New Hackerspace Burglarized Days Before Opening

Starting up a new hackerspace from the ground up is a daunting task. Before you even think about the fun stuff like tools and a space, you’ve got a ton of social engineering to do. Finding like-minded people with the drive and passion for seeing the project through is a major stumbling block where many projects falter. If you get past that, then figuring out a corporate structure and getting funds together to start building something can be difficult, as can local permits and the endless red tape that always seems to accompany anything seen as new or innovative.

But finally the magic day comes for your group to open the doors on the new hackerspace, perhaps with an open house or some event to bring the community in and maybe rustle up some paying members. It should be a happy occasion, but for a new hackerspace near Houston, the grand opening celebration was thwarted when thieves broke into the space and cleaned out all their tools days before it opened.

Continue reading “Fail Of The Week: New Hackerspace Burglarized Days Before Opening”