Week 3 & a Hackathon
GOOD MORNING, WORLD!
Holy crap this week was really cool. This post is going follow mostly the same format as before, but this week was "Project Week", so we ended up building something from scratch during most of the class times. Once we'd presented on Friday, it felt like a much-needed breather, so a few of us went to the Pavlok "Shock-a-thon" where we got to fiddle with stuff, but I'll go into that down below. We're about to head into the unknown folks, so grab your stuffed tiger and pack a few PB&Js.
Jasmine & intro to testing:
We didn't really dive into this a whole heck of a lot, but Jasmine is this library (I think?) or some kind of module that allows us to run really cool tests to make sure that we're actually getting the results we want. It takes two parameters:
- Specs (basically you define a list of tests that you want Jasmine to run)
- Source (the code you want Jasmine to run the tests on.
This may seem either really boring/straightforward or it could be really cool, but I love the idea of building tests as you go! It also introduced us to this idea of Test-Driven Development (TDD if you'd like to learn more). The gist is that you build a spec/test first to see if your goal is accomplished, and then you build something to meet that spec so that you're always making sure you contain your functionality. Then you add a spec, break your code, and then re-build in order to meet both the specs you'd had. Woo!
Tuesday through Friday
Tuesday started out with some intro to Firebase learning, where we learned how to store information and the basics of how to create a turn-based game across two clients. I understood most of the theory, but the application of said theory was kinda rough for me. That being said...
My project, which I've released to the world, can be found here: Tic-Tac-Hue. It's a colorized version of Tic-Tac-Toe, with some minor tweaks such as a log and a chat. This project was a huge investment of time, and to go over everything I did to make this working, you can actually take a look at my code on my GitHub Page where you can see my code.
This was a really amazing experience, and I didn't get everything I wanted functionality-wise into the app. One thing it's missing is the ability to play across computers! I said I was going to do that this weekend, but I didn't (I'll set it as a goal for this week during off-hours).
Saturday - Pavlok Shock-a-Thon
Shockbot for Slack
I'm again not going to go into terrible detail yet of what my first hackathon was like, but it was an incredible experience with a lot of learnings. I learned about the social aspects of hackathons along with just how much of a knowledge gap I currently have. By the way, it's okay, I'm only 3 weeks in, and I'm hoping to do more of these to really increase my exposure to these immersive crazy-train environments!
That being said, Pete, Valeria, and I held it down for GA at the hackathon and managed to get out a little app that we thought was really freaking useful for Slack called shockbot. The basic idea was that you could use slack to deliver shocks to co-workers that were either misaligned in their priorities, or perhaps broke something? Boom. Shock 'em. We allowed for varied intensity, for vibration, and for beeping, and we learned a lot about APIs and how everything works together.
I was really overwhelmed, but it was a great experience overall. Afterwards, the Belarusian lead hardware engineer showed us the schematics for the next iteration and blew our tiny little minds. It was so cool to see someone passionate about this kind of tech, and I'm really looking forward to seeing where Pavlok goes.
Well folks, thanks so much if you've managed to get this far in my boring blog, but it's super not-boring to me, and I'd be really excited to see if any of you want to learn more about any of the things I've talked about in my posts. Or you can just play a game of Tic Tac Hue. Or you can just go off and have a great day!
Lots of love,