Posts Tagged ‘adventures in tech’

h1

I love engineering pads

January 4, 2016

After having spilled coffee on one pad and actually finished the two others that generally live on my desk, I went to the pile of office supply paper and dug out an engineering notepad. I found this:

Making Embedded Systems Info Sheet

This is clearly a sketch for an information sheet from the podcast two years ago. So much has changed about the show (even its title) that this is a pretty funny little view into the beginnings of the show.

Of course, I wasn’t digging for an engineering pad purely for nostalgia. I wanted to sketch something out. And since I kept re-doing it until it almost looks good, I figure I should share it.

I wanted to know how the itty-bitty quadcopter’s motors worked. This is for the Cheerson CX-10, a quadcopter that is just a bit bigger than a quarter.

 

h1

The Words We Use Define Us

April 12, 2015

Did I tell you about “recalcitrant”?

Over a decade ago, I was having a conference call with Audible, I’d been working with them for a few weeks, maybe a month.

Small aside: Audible’s hold “music” is the audio book of Charlotte’s Web. I was always a little sad when a meeting actually started. LeapFrog had the second best hold music: children’s singalong songs… meetings often started with people trailing off their singing as the music cut off.

For this status meeting, I had three or four tasks and had not finished the highest priority one, instead finishing the others. I said that the tough one was being recalcitrant. I was hoping to avoid getting into the details because I knew there was a memory leak and that it was deep in the way the operating system works. I rapidly went on to the completed tasks so I portray it all very positively.

When I finished my spiel, one of the guys on the phone (who were all smart and exactly what you’d expect from Audible-before-bought-by-Amazon engineers)… one of the guys asked “what do you mean by recalcitrant?” so I went ahead and explained that I knew the symptoms and would figure it out soon. I apologized for not getting it done, I acknowledged it was the highest priority and I would get it done quickly. You know, I was really trying to be a professional. It was my first contract gig.

Same guy (name redacted to protect a super nice guy) said, “No, what do you mean by recalcitrant?”

There was a long pause, I didn’t know what he meant.

I mispronounce many, many words. I think all readers have this problem. Let’s just say “impugned” does not have a hard-g sound something I found that out a month or two ago when my husband near fell in the parking lot of the library as he was laughing too hard to see.

I was pretty sure: re-kal-si-trant. But knowing me, I went ahead and spelled it. And asked if I was saying it wrong. I was so embarrassed but I didn’t want them to think I wasn’t willing to learn from them. Same guy says “But what does it mean?”

Not sure if he was yanking my chain but too busy pretending to be professional to get annoyed, I said it meant that the code was being fussy.

He asked if “recalcitrant” meant “fussy” and so I clue in that he’s simply asking for a definition. And so I go into teacher mode (why?) and said, not exactly, that recalcitrant means uncooperative and copping an attitude. I start in on the etymology (aren’t etymologies the coolest thing?).

Then I remember that my goal was to give my status and shut up. So I eventually shut up. The Audible guy thanks me for a new vocabulary word and we finally move on to the next person’s status report.

I have always wondered what everyone else on that conference call thought of that whole adventure.

h1

Tinkering for dummies

January 24, 2015

I received an email:

I’ve listened to a few podcasts and now am officially a fan. I’m curious about “tinkering” for dummies

I realize that I like to tinker but always run into the reality that my technical skills don’t match up with my creativity.

I am wondering if you would suggest a pathway of least resistance for someone who is interested in tinkering. 

Time is always a constraint but I am serious about learning how to code and also learning about embedded systems but not sure if learning python for example is the best way to start.

This seems like a great question, one I’m sure other people have.

However, I’m a terrible person to answer it because I come at the problem of tinkering from exactly the opposite direction. Since programming is my job, tinkering can be difficult because it feels like work instead of play.

Still, I want to encourage the writer so I’ll try to answer. I invite you to suggest other things in comments.

I think the the very short answer is buy a kit. A kit means you’ll get something that probably works and some instructions. Then you can tweak it to be more along the lines of what you want.

And, in general, I think the path of least resistance is Arduino. Their community and system is set up to teach you things (and to hide the tricky details). It started out as a way for educators and artists to approach technology so they don’t expect you to know a lot of coding. There are many Arduinos (the UNO is my fav) so the next question is what do you want to tinker?

Learning by doing is great but difficult to maintain if you don’t have a direction. Self motivation is much easier if you have a goal, ideally an achievable, amusing, and share-able goal.

Say you want to make a watch or small desk display, start with the MicroView (and programmer). If you want to go all out (or you really have no idea where to start), get the Sparkfun Inventor’s Kit. With the MicroView, you get more tutorials with hardware in the inventor’s kit. Without the MicroView, you still get a wonderful grouping of sensors and lots of tutorials (and an Arduino board).

On the other hand, robots are awesome and seeing something move is deeply satisfying. The Parallax BOEBot (“Board of Education” Bot) is educational (and fun). It was designed for high schoolers so you’ll likely feel brilliant and idiotic in turns (c’mon, you remember being a sophomore, right?). You can get it from Parallax more cheaply but you have to build more of it yourself. (Also, you may need an Arudino UNO for those kits to add smarts to your robot.)

As you start to tinker, decide what you want to do with your limited time. Building from the ground up is an advanced exercise, often leading to frustration. Toddling, baby steps are more fun.

But what if you want light up shoes (or bike helmet)? Lights are an awesome way to get hooked on tinkering,* there are so many beautiful blinking patterns. For that, you probably want to look into the Flora system (oh! they also have a budget pack). It is designed to be wearable which is pretty neat.

Do you have annoyances in your house? Something that would be better if you could assure yourself from work or phone? Maybe knowing that the garage was down, the stove off, or the door locked? For this, I’d suggest Electric Imp (and you’ll need the breakout board as well). It connects to WiFi well and is straightforward to program. It isn’t quite Arduino easy but there are lots of tutorials.**

Finally, do you want to make a big system? Like a balloon that can take pictures and use a GPS and then connect to your home network? While I like BeagleBone Black for engineering use, I’d suggest starting with a Raspberry Pi. These are both little computers, cheap enough that you can blow one up without feeling too guilty. The Pi is designed to be a learning environment and there are many excellent tutorials. The Beagle has an excellent community as well so it may be a toss up between them. And if you’ve already started to learn Python, well, these are the boards for you. They’ll let you use Python, explore Linux, and get some hardware experience without ever worrying you’ll run out of RAM or processing power. If you get a touchscreen (like this one for BBB), these small computer feel like, well, small computers: infinitely flexible.

Which brings me to my next point, once you have a direction, look for  a tutorial for something similar. Even if you aren’t building something exactly the same. For example, if you like the look of MicroView and want to try making a watch, even though Wordy is a ring, my tutorial on building it may give you ideas.  Look at the “Learn” sections on Adafruit and Sparkfun for ideas if you don’t have a project in mind. These companies (as you may have noticed from the above links) sell tinkering hardware. They write tutorials to keep you engaged (so then you buy more hardware). You may also find inspiration from Hackaday and Make. You can document your project on Hackaday.io, I’ve been pleased at the niceness of the community there.

Tinkering from scratch without a guide is a like baking cookies without a recipe. If you are experienced, it is completely possible to start with a blank slate. I know from experience and reading cookbooks that cookies should usually have between 1 part butter, 2 parts sugar, and 3 parts flour to 2-3-4 (b-s-f). I can make almost any cookie I can think up. But as you start out, some guidance to success is hugely important. Otherwise you end up with Strawberry-Mint cookies*** and everyone is very disappointed that the lovely promise turned into, um, that.

My final word on getting started tinkering: don’t feel guilty when you stop for a weekend or two. This is for you, it is your hobby. It might be educational but it isn’t required for life. The less guilt you feel, the more likely you are to come back to it when you get interested again.

*  My first tinkering project involved lightup high heels. The second involved halloween pumpkins lights (blue to purple flickering “candles”).

**  Heehee, I wrote that tutorial so total bias there.

*** Yes, that happened, ok? It was an accident with the mint and vanilla bottles looking similar. Quit laughing. Aw, to heck with it.

 

h1

Why this should win the Hackaday Prize…

November 11, 2014

I was a judge for the Hackaday Prize. The contest was to build something awesome (and connected). The first prize was a trip to space (or the ~$200k they thought it would cost). All of the top five finalist rewards were pretty incredible.

I judged the 50 semi-finalists, scoring them on openness, wow factor, connectedness, reproducibility, innovation, and user experience. Once we had the top five, they got another month to work on their projects and we re-judged, adding manufacturability to the judging criteria.

It was hard. While I thought all of the top five belonged, there were many of the top 50 that could so easily have been in the top five. Now that Hackaday is about to announce the prize winner, let me advocate for which one(s) I think should win, in no particular order.

SatNOGS aims to build a global network of ground stations to listen to satellites. Their new finalist video was great, a perfect introduction to the problem (and the team). And this, unlike the other finalists, was a clearly team effort: a huge project with lots of parts to it (hardware, mechanical, embedded software, servers, UIs).  Still, the application to readers was nontrivial: in my backyard, I could build one of their widgets and help people around the world listen to the satellites.

Enabling technologies are tough to make appealing. It is easy to fall into the lure of a personal satellite (e.g., cubesat) but listening requires more infrastructure than most non-governments have access to. This is exactly the sort of problem that needs to be crowdsourced. The SatNOGS team made it easy for people to join. Their fantastic documentation leaves lots of options for building; it is a good instruction set that still lets me customize to my particular interests (and parts available). It would be fun to build this with a middle or high school student to get them interested in space technology. Between their excellent build instruction, good use of other open source components, and their topic (space-oriented so therefore prize-related), SatNOGS should win.

In the RamanPi project, the creator makes a spectrometer. OMG, you guys, I have ALWAYS wanted a spectrometer!!!!! (This is a total OMG Ponies! moment.) What’s even better, after reading the documentation, I feel like I could build one. Before Christmas. I could have my own little gadget to tell me what things are made of. I could take it with me and explore the water components around the bay or the soil composition. I could be a SCIENTIST.

Err… sorry, where was I? Ahh, right RamanPi. Not only was RamanPi a great item to build, the way the creator did it was great. Being new to the area, the project logs show the real sort of two steps forward, one step back that is a part of engineering we hide too often. Even better, the use of 3D printing to avoid expensive optical benches is something I’m going to be using myself. I like that the home 3D printer is being put to use to create this level of awesomeness. This project was all about what is possible and kindles the desire to explore: RamanPi should win.

The PortableSDR project is a software defined radio. It is small (truly portable) and has a well thought out display (aka I loved the waterfall display). I very much want a kit of this. Though I may use it as a portable spectrum analyzer instead of a way to listen to all of the radio bands at once.

While the tech on PortableSDR was neat, what I liked most was teh humanness of the creator. While the finalist and semifinalist videos were clean (I liked that the finalist video was outside, where the PortableSDR is likely to live), there was at least one video with a messy bench and cartoons running in the background (I suspect a kidlet). This was a person who had an idea, who put it on Hackaday because it was neat. Now he’s a finalist and people want kits and finished products. I don’t know what he meant to do next in his career but he’s probably changed the course of his life by following through on his idea. I want to see what happens next. PortableSDR shows the best side of Hackaday: follow your dreams and the rest will follow. PortableSDR should win.

The ChipWhisperer project is one I keep sending to all of my hardware friends and saying, “see! look!” The project uses power analysis to crack software security in chips… which is to say that this gadget breaks most of the security on most of the devices we all use right now. It is terrifying. On the other hand, these sorts of tools already existed, they just cost a lot. Now it is cheap ($1500 for the prebuilt kit, as low as $100 for DIY pieces) but we were never safe in the “secure because math” mindset.  While this makes my job more difficult, it will make everything better in the long term.

Even as scary and important as this project is, there were many other things going for it. It takes a complicated topic and makes it sound easy and interesting.  Many people want to know where to get started with FPGAs. This is a great project for that. It would be hard to do this power analysis in a microprocessor or single board computer. This is a good use of FPGA to solve a non-contrived problem. It would be useful to read the code (which was well written, at least the stuff I looked at). There are lots of pieces here: desktop software, the embedded, hardware, and FPGAs. I’m impressed that he didn’t stick to his hardware, he talked about how to reproduce with other kits. Hackaday has traditionally been about breaking things open to see how they worked. ChipWhisperer takes that ethos and puts a rocket behind it; ChipWhisperer should win.

The Arducorder is an “open source science tricorder”. I think the most important thing in there is “science” though I could see it doing a smackdown with “tricorder”. The author took a lovely display and a tiny Arduino based board, added a dozen (seriously) sensors. I truly want one of these.

Let me pause here to say that I don’t think I’ll be going to Mars. This makes me sad. I don’t even think I’ll get to the moon. I can only hope that someone in my future goes to at least one of these places. But unless we stop teaching kids that science means boring memorization, no one is going to go. Space will become a cold, dark, empty wasteland.

Back to Arducorder… by having a charming display, easily extensible software, and all of these neat sensors, it lets people walk around saying, “how is this different than that?” It fosters curiosity and reminds us that science is about discovery. Talking about gravity as acceleration is a lot more fun when you can see the data. Arducorder enables science education in a way that is just brilliant: Arducorder should win.

 

h1

Ada Lovelace Day: Liane’s mom

October 14, 2014

I don’t know her name, I only ever knew her as Liane’s mom. I suppose if I addressed her, it would have been as Mrs. Pritikin but, in the way of teenagers, I doubt I ever addressed her directly.

Liane was my best friend in high school. It was before the word frenemy; that would have described our academically competitive, personally giggly relationship. We spent a lot of time at each other’s houses.

Her mom wrote code for some classified project, I never knew what, only that it was government related. She would talk about the puzzles and about code (even about the punch cards they were finally phasing out). She liked her job, more than my mom liked her drafting job. Liane’s mom enjoyed being smart and successful. She wanted the same for us.

She was a software engineer before I knew the term. She didn’t talk about harassment at work or being a woman in technology. She went to work, came home tired, and helped her daughter’s friend with physics homework.

When we talk about the people who have made an impact in our lives, sometimes the people who simply and happily persist are the ones who make the biggest difference.

I cried when Liane’s mom passed away. It was maybe a decade after I lost routine contact with her daughter. I don’t think I ever thanked her for setting me on this path. But I do remember. Fondly.

Written for Ada Lovelace Day 2014: Celebrating the achievements of women in science, technology, engineering and maths. This was also posted at the O’Reilly Radar site.