Yesterday I decided I was mostly happy with the progress I’ve made on Youtube-Gif-Go and Youtube-Gif-Go-Frontend. There are a ton of places I could take this project, and I ended up spending most of the day debating between continuing or finding something new to work on. It’s a struggle because I want to make the most of my time at Hacker School, and defining what that means is hard. On the one hand, sticking with a single project has merits by forcing yourself to be exposed to the whole lifecycle. On the other hand, I’ve experienced this lifecycle in my previous job. Continuing with Youtube-Gif-Go could lead me down a lot of paths:
- WebSockets! I’ve been itching to play with these for any reason for a while, just because it sounds like it could have some really exciting applications. It would also let me play in backend-land for a bit too. But I don’t think something like the GIF project is the best application. I could do something new to try this out easily.
- Docker. I could wrap up the various backend pieces in Docker. This could be really enlightening and is probably a great fit. Maybe the problem I’m having is one of priorities.
- General scaling. Especially with a Dockerized backend, it would be neat to spread the workers out across a small fleet to see what problems might arise. I have some experience with this from my last job too, and I’m not sure if this feels like the best use of my time.
- Performance optimization. I love stuff like this. But I think I might get more from focusing more on core programming work.
Just writing that list out makes me think that maybe I should try to Dockerize the backend stuff and then move on. I’m on a bus back home for this weekend and have been thinking of a few more ideas:
- The first problem set from the MIT course I linked yesterday includes a note about reversing strings. The reason I point this out is because it’s actually one of the topics in the second chapter of Programming Pearls, which is where I left off before Hacker School. It makes me want to continue those exercises.
- WebGL. Yesterday I found a directory containing some very old code I wrote, including a game I had written using the Windows Console API. It would be kind of funny to rewrite it using WebGL.
- It might be neat to write a client for HTTP/2. I’ve followed some of the developments since SPDY, and read Daniel Stenberg’s excellent reference guide when it came out, but writing a client would help solidify my understanding.