Program A Tiny Computer, Queer Your Own Tech

queer-your-tech-header_FINAL_640web

Previously in Queer Your Tech, Ali mentioned Jewelbots, which are programmable friendship bracelets described as an “open source wearable for teens.” I am a big fan of the “internet of things,” a blanket term for physical, programmable objects with the ability to connect with one another through networked communication, for several reasons. Projects like Jewelbots have incredible potential to engage a broad range of people in programming, technology, and innovation. If the success of the this Kickstarter is any indication (over 4x the funding goal reached), teenage girls have plenty of interest in programming when it is applied to a problem or device that is interesting and valuable to them.

This idea can be extended far beyond Jewelbots and teenage girls; what if anyone who wanted to could buy a small computer at a very low cost and program it to solve their problems? Not only does the availability of this hardware teach more people to program, it also opens up incredible potential for innovation. If you have an idea for a new device and can build it with $40 and basic programming skills, you can actually just build that device. I personally am excited and hopeful for a future where folks from a much, much broader range of backgrounds are creating new technology. I HAVE SOLD YOU ON THIS IDEA, I CAN TELL.

But how do you get started? There’s a wide range of devices available for consumer purchase, each requiring slightly different skills. Here’s a roundup of some options, what they can do, and how you can get going programming one!


Raspberry Pi

Up first is the Raspberry Pi, a credit-card sized computer and the first and most widely-distributed small, programmable device in the world. Originally released in 2012, the Raspberry Pi took off among hobbyists, educators, and even serious programmers as a low cost device for tinkering, inventing, and teaching programming. The original model is $21 on amazon, and all that’s required to get started is a keyboard and some sort of external display, such as a TV, laptop, or monitor. A starter kit can also be purchased that includes cables, a charger, a wifi chip, additional storage, and other nice-to-haves. There are several different models of the computer available, nicely broken down in this chart. The great thing about Raspberry Pi is that it’s backed by the Raspberry Pi Foundation, a non-profit dedicated to advancing computer science education in schools, so purchasing one supports this effort.

Once you’ve purchased a Raspberry Pi, there is a decent amount of setup required, and then you are able to begin programming the device using Python, which comes preloaded on the device. I wrote up a gentle introduction to Python, and the Raspberry Pi foundation has some great resources for learning the basics as well. Once you get started, the possibilities for what you can make are pretty much endless.


Arduino

Arduino is the main Raspberry Pi alternative for small, programmable computers, with the main difference being the Arduino is substantially simpler and less computationally powerful. The set up is much easier for an Arduino, which can make it a better choice for absolute beginners. The Arduino, because of its simplicity, is also easier to hook up to other devices, such as LED lights, sensors, etc, and so might be a better choice if you’re looking to learn and use the basics of electronic circuits. Price-wise, the Arduino is similar with a basic board costing $25 and a full starter kit at $54. Arduino can be programmed using its own “Arduino Programming Language,” essentially C with some C++ niceties. I personally find this a little bit harder to get going with than Python, but there are numerous online tutorials available and lots of examples for getting started.


Android Devices

For more advanced programmers, there are a surprising number of affordable Android devices for sale, i.e. low cost tablets and even phones for under $50. The advantage of purchasing a phone or tablet is that you already have a high level of software/hardware integration to get started with, including bluetooth, wifi, battery power, motion/light sensors, and a camera. Android runs on Java, which as programming languages go, is a happy medium between Python and C. The Android Development Manual offers some good jumping off points for getting going with Android, but there is quite a bit of initial setup involved, and so I would steer absolute beginner programmers away from this option. You can do some really cool things once you get going, though, for example automate your home or you can literally build a robot.


Bonus Project Ideas

This has been the one-hundred-fortieth installment of Queer Your Tech with Fun, Autostraddle’s nerdy tech column. Not everything we cover is queer per se, but we talk about customizing this awesome technology you’ve got. Having it our way, expressing our appy selves just like we do with our identities. Here we can talk about anything from app recommendations to choosing a wireless printer to websites you have to bookmark to any other fun shit we can do with technology. Header by Rory Midhani.

Before you go! Autostraddle runs on the reader support of our AF+ Members. If this article meant something to you today — if it informed you or made you smile or feel seen, will you consider joining AF and supporting the people who make this queer media site possible?

Join AF+!

Chloe

Software Engineer, Autostraddle intern, and bay area native. Chloe recently packed her life into 5 boxes to live in Switzerland for the indefinite future. Primary interests include gender issues in tech and her growing collection of onesies. She can be reached at chloe [at] autostraddle [dot] com.

Chloe has written 7 articles for us.

20 Comments

  1. I would also add the Intel stick to this list. Right now it’s using the older Bay-Trail Atom and not the newer Cherry trail version that came out earlier in the year(like on the Surface 3); but, it still fairly capable. It can go for about $100, so a bit more than a Raspberry Pi 2 kit(which I think you should make clear is the version to get). The advantage would the ability to run a full version of Linux or Windows(vs possibly the mobile version of Windows 10 on the Pi, while still being small enough for programing. Downside would be Android isn’t proper optimized on Atom as it is on ARM device like the Pi 2 or Arduino.

    It’s been a few months, but when I was looking at the Pi 2 it didn’t offer proper Netflix support, which is why I went with an x86 Intel variant running full version of Ubuntu. I think I too will try the programmable menorah. Thank you for this!

    • Thanks for the pointer about the Intel Stick! I hadn’t heard about that one.

      Right now I’m looking into some more low level projects so I’m leaning towards the arduino next, but it’s good to know there are options for higher level stuff. Keep me posted on the menorah project!

      • Atom is more mid-level at best, heck Intel’s own NUC uses pretty much the same hardware as the Macbook Air or competing ultrabooks. But, yeah I think I may get a Pi 3 when that comes out, put W10 and hook it up to run Netflix that way since RT does have a Netflix app.

  2. I want to do all of these things so, so badly. But I think I’m going to start with an Arduino starter kit? Yes? IDK, Chloe, help me prioritize my electronics spending.

    • Yes that is my plan currently! Or one of each. I am a horrible person to ask this question, I have no self control.

  3. I took a basic programming class ages ago in school and wasn’t impressed tbh. That little arcade though! I feel it would be the perfect thing for chatting up potential gal pals. “Hey, do you like Galaga? Me too! No quarters? No problem!”

    I mean, I’m sure the educational aspect is worth it too.

  4. i love raspberry pi because I’m a huge linux nerd. i wanna make one to plug into my telly and use to stream movies instead of a chromecast but i have zero time and zero skills.

    they’re hella cool, though

    • You can by one prebuilt and all one needs to do is install one of the supported OSes you want. I personally would suggest spending a bit more to get something like the Intel Stick, works a bit better for streaming, and offers proper Netflix support. In fact keep it real simple just get a Chromebox, HP and Acer models are recommend. One can easily get a base model open box/refurb for under $140(even seen them go as low as $105. Just upgrade the ram (2gb is standard, 4gb is preferred) as it’s easy to do and many videos showing how to do it. Chrome works well for this, or one could just install any version of linux they want as it’s running an Intel CPU that offers performance comparable to the new Macbook. Down side would be standard storage is a bit small at 16gb, but for like $40 one can move up to 64gb, maybe even 128gb(also easy to do with a few videos on the net showing one how to do it). I have something like this at home hooked up to my tv and love it. I can do almost anything. Sure it’s not Pi small, but it is almost Apple TV small.

  5. Nm to say but that I enjoyed reading this. Definitely want to learn how to program at some point, and probably start with python when I get time.

  6. If you want to do something that is powered by renewables like a little solar cell for a motion-triggered camera, Arduino has a much lower power draw than R pi.

    • good point! I’m leaning towards arduino for my next project, which if I get going on will hopefully be a future topic!

  7. This is awesome. My brain doesn’t have enough space and I don’t have enough hours to embark on this adventure, but I’m so glad it’s covered here.

Comments are closed.