The End of Codsworth Robotics, the Beginning of Stackathon, and a Design Lecture

January 18, 2017

We presented Codsworth Robotics, your one and only source for robot butlers, today in class. It's officially live here, and you can view the code here. Although it still may be far from a production-ready app, it's basically a fully-functioning e-commerce store, which is pretty impressive, if I do say so myself.

One of the coolest moments of my young programming career so far happened on Monday night, when I hooked up the npm package nodemailer to our checkout process, so that when a user places an order, they'll immediately be sent an email with their confirmation number.

My teammates made fun of me a little bit for being so excited about this, and I can't really articulate why I was, except for that it was just a moment for me when I realized how incredible programming can be. Which I realize still sounds a little weird, because, at its core, I just sent myself an email. But, a lot of seemingly disparate things came together at that moment for me, I think. (And let's be real, who doesn't want an email from Alfred Pennyworth?!)

Stackathon

The end of one project means the beginning of another! Today was the first day of Stackathon, which essentially is a personal hackathon. We have until Monday to build something (anything) of our choosing, and there are a couple of awards on the line.

After internally debating for basically the past month about what I've wanted to do, I finally decided to attempt an AltSpace or vTime-like app, but one that could support many more people than those currently do. As Mark Davis, Fullstack's Product Manager, describes:

Here's what we wish existed, now: a simple VR environment where up to 25 avatars can interact with each other, with real-time voice chat, that's accessible on a Google Daydream headset as an MVP, but is also extensible to any WebVR enabled headset.

As I only have five days, my primary goals will be to:

  • Render a scene (I'm not worried about this part)
  • Integrate with Firebase to support a lot of people joining (I'm more worried about this part), and
  • Use WebRTC for real-time audio communication (I'm not even sure this part is going to happen, but hey, reach for the stars?)

I'd also love to pitch this to my Capstone Project team after, and build on top of it to create something even more amazing.

I've avoided seriously entertaining this idea pretty much since I started thinking about what I wanted to do, because every time I did, I would get overwhelmed and terrified. I'm very excited and intrigued by the VR space, but also terrified because of the sheer complexity of designing 3D environments and interactions with those environments.

One of my favorite sayings is, "If your dreams don't scare you, they're not big enough." I suppose that's pretty applicable now — wish me luck!

CTO Lecture: Design

During Senior Phase, we're going to be having CTO Lectures on a regular basis. These are a series of lectures to expose us to the non-technical parts of building software, including design, scalability, agile, the "lean startup" methodology, etc. This was one of the parts about the program that I was looking forward to most, and today definitely did not disappoint.

We heard from Oddur Sigurdsson, who previously was Creative Director at Fullstack. He worked in the software/design industry for a number of years, and now runs his own company. To become a designer, he argued, there are three steps:

  1. Play. You should be making something. Experiment. Share it with others. Ignore the rules.
  2. Plan. Set guidelines for yourself. Set a direction (e.g., I want to be there in seven weeks, or two hours). Set goals, and don't stop until you've achieved them.
  3. Polish. Iterate and refine. Find the balance between functional and beautiful. Push the limits of your abilities. Get critical feedback.

Another one of his points was that there are striking similarities between programming and design, and I'd argue that these are very applicable to life as well.

After talking generally about being a designer and the process of design, Oddur pulled out Photoshop and Sketch and demonstrated his workflows and tools for editing photos and creating site/app designs. He spent maybe 20 minutes maximum designing in Sketch, but his design was absolutely gorgeous and I was blown away.

When I have an extra minute or two (so...after Fullstack is over?), it's definitely something I would love to delve into further. So much I want to do, so little time. Sigh.