Before the Christmas holiday, a coworker told me about a great tradition that he and his family take up every New Year's: at the stroke of midnight when the calendar turns over to January 1, cram twelve grapes into your cake hole and say one resolution out loud for every grape consumed. Because I was traveling over the New Year's holiday, I missed out on the whole grape gulping part of the experience, but the story inspire me. In the spirit of accountability and toward the goal of professional development, I'm going to put a couple of these resolutions out in the open and report back on my progress over the course of the coming year. So, without further ado, I hope to:

1) Get Cozy & Comfortable with CSS Grid

The last time I was functioning as the office evangelist for an exciting bit of front-end development tech, I was giddy about GreenSock, which is still my favorite tool for authoring complex web animations. These days, I'm the full-time apologist for CSS Grid, the newfound love of my layout life whose usage stats are finally making it a viable option for production sites. I've got a site in progress that is going to make extensive use of the grid spec and its fallbacks for older browsers, and I've been really happy with how much simpler layout seems to be now that I don't have to wrestle with clearing crazy floats. I'll report back on how this new spec works in my production environment. If you want to learn more about grid, check out this cool site created by Rachel Andrew.

2) Make a (Better) VR Application

While it's true that I have dabbled in making virtual reality experiences, it's safe to say my first forays into that world were rudimentary. I want to branch out and get interactive with my next VR experience. I might dive into web VR for my next project, or I might even try to build something for the Oculus Touch rig that I've acquired since last I ventured into this space. This is a lot to take on, but I'd like to at least learn my way around the basics of building an interactive VR application.

3) Get a Grip on Machine Learning (for Biokinematics)

This is one that I should probably consider something of a stretch goal, because the tech is trickyyy. I'm working on a project that involves using Microsoft's Kinect camera for skeletal tracking; that particular piece of hardware, however, has reached the end of its lifespan, and MSFT has ended its manufacturing. While computer vision nerds around the world wait to see what might replace the Kinect, I want to explore how it might be possible to use a tool like TensorFlow to come up with my own skeletal tracking solutions. Is it even possible to use machine learning for this purpose? I really don't know, but that's the fun of being curious.

4) Build a Thing With Vue.js

I've been procrastinating on the whole "buckle down and really learn a popular JS framework" thing for... uh... years, at this point. When I was at the very beginning of teaching myself #howtointernet, I dove into all of the popular web development learning resources, and all of them were talking about Angular, React, Meteor, Ember, and all the rest. At that time, however, I was just starting out, and it was way too daunting to try to understand at the conceptual level just want a JS framework could do. Now that I'm a lot more confident in my development skills, it's time to dream up a project and put Vue to the test. I'm choosing Vue because it's a fast-growing framework in terms of community interest, and a lot of the developers I follow have great things to say about it.

So, those are (some of) my grapes for 2018. What are your grapes going to be?

Down the hatch.