One of the highlights of my week was being a team leader for this round of the tessel hackathon, helping to bring in another victory for Grace Hopper.
The project, called Stop, Teaf! is designed to help to protect the user against the rampant herbal tea theft in the Grace Hopper kitchen. Simply slip a discrete tessel into one of your tea bags, and the accelerometer module will sense a thief trying to snatch it. This sets off an alarm on your computer, and you will receive a command line prompt, into which you can type a stern message to the thief. Back in the kitchen, the tessel’s audio module will then robotically shout this message to the thief using text-to-speech technology. And if that’s not enough to scare them, there is also a little flag waving that says “Stop, thief!”
This time I wasn’t doing any of the coding or planning (although the result had some things in common with my first tessel project). Instead, I spent my time running around trying to help my team of four debug and refine the plan to fit the time constraints. We ultimately got the project fully functional about 5 minutes after the judges came by, but nonetheless we took home the “Best Campus Solution” award.
Last week’s project, Grace Shopper, is officially deployed! It is a fake shopping website where you can browse products, create an account and login, leave reviews, add items to your cart, and even enter your credit card to checkout (although I wouldn’t recommend it since there are no actual products). You can check it out here!
Last Saturday, a few of my classmates and I decided to attend the Clarifai Artificial Intellegence Hackathon. Due to a bit of week-4 exhaustion, I am just now writing about it, and it’s going to be a pretty short post. One of my teammates from the hackathon wrote a really great article about it on her blog, and I recommend checking that out as well!
A hackathon is an event where developers (or sometimes non-developers) come together and create a project in a fixed amount of time, usually with presentations and prizes at the end. This hackathon was 12 hours, and the prizes were lighthearted (most secretly evil, most likely to slow human progress). My team took home the latter prize for a project called miss-direction, a chrome extension that you can sneakily download on your friend’s computer, and every time they try to get directions on google maps, they will instead get directions somewhere a few blocks away. I was lucky to have a very strong team, one of my classmates and one Grace Hopper alumna, who kept me grounded around hour 6 of straight coding when I started to hit a wall.
Some cool things about the hackathon:
There was almost too much free food
We got close to doing something that I would actually call hacking – manipulating the Google Maps API to do something it wasn’t intended to do. Turns out google is really good at preventing you from messing with its stuff. But we beat it!
We were in the General Assembly (another bootcamp) offices, which are beautiful. They use ipads for things that we use post-it notes for at Grace Hopper. Plus, they have a giant chalk drawing of Bill Nye.
The guy sitting next to us was using virtual reality goggles for his project and we got to try them on.
Most of the week was dedicated to understanding promises, a structure that allows you to write readable code for handling asynchronous operations. Without promises, it’s very easy to get lost in a sea of abandoned brackets and semicolons whenever you’re trying to get the computer to do multiple things that take time, like connect to a server or database, and you need to wait for those things to happen before you can do something else. Promises make it way cleaner and easier to read (and apparently faster to process?) but are also a bit tricky to wrap your head around at first, so it’s good we had a full week of introduction to it.
We also did a couple of projects using sequelize, which is a library that is built on promises and allows you to query a database without using SQL (just when I was on a roll)
Lastly, we had a test on friday to see how we were doing on sequelize and express. I actually enjoyed it, spending two hours silently coding on my own was, in a way, a good change of pace from pair programming, and it was good to be able to see what I could do without help.
My favorite parts
On Friday afternoon, we had a tessel hackathon with the Fullstack Academy students. I’m proud to say that my group took home the ‘most creative’ prize for building a machine that could sense an awkward silence and play cricket noises, wave a ‘well this is awkward’ flag, and text you a conversation starter. I’m especially proud of this considering that the other two winning teams were all men, and my team was all women.
Code and the city
I figured out the metro card thing. You have to keep it in your wallet and not let it rattle around in your bag with your loose change. Still though, MTA, if you’re reading this, you need to get over this whole magnetic strip thing, it’s 2016.
I’m about to go above 14th street for the first time since living here. Wish me luck as I enter the grid.
My overall thoughts/opinions
This was a pretty fun week! I learned a lot and I also had some really good partners that made it go by quickly. It kind of felt like one long day with naps in the middle.
Better watch out. The machines can write poetry now, which means the next step is world domination.
To clarify, the final project from foundations last week was to write a program that randomly generates haiku. I thought I would share some highlights here. Luckily, computers are still pretty bad at poetry, although the first one seems a bit too accurate.
The program can also find haiku naturally occurring in a text. Here are a few from The Importance of Being Earnest.
ON A SALVER ALGERNON
INSPECTS THEM TAKES TWO AND SITS
DOWN ON THE SOFA
FURNISHED THE SOUND OF
A PIANO IS HEARD IN
THE ADJOINING ROOM
BEING EARNEST A
TRIVIAL COMEDY FOR
And here are two from my senior thesis!
CAT RENOIRS ONLY
MALE NUDE IS AN INTRIGUING
PAINTING YET IT IS
OVER HIS SHOULDER
IS INSCRUTABLE IS IT
SADDENED DREAMY COY
Let me know if you have a text that you need to find haiku in. If you would like to see the code behind it, I posted my project on GitHub.