2015 year end review

It seems like just yesterday I was writing my thoughts on 2014 and 2013. This year marked a couple accomplishments. It was a busy year full of graduate coursework, freelance projects, and full-time work.

In 2015 my title changed from “Associate Web Developer” to “Front-end Developer” which was more apt at the time because a majority of my day was spent working with HTML/CSS/JavaScript.

Our office undertook a giant project of migrating CMSes. We went from using a vendor’s product to building our own CMS using Drupal and the Panopoly distribution. It’s been quite the undertaking but offered lots of opportunity for growth.

Being a front-end guy, adjusting to Drupal was a little challenging. I was used to WordPress where templating seemed to make a little more sense. I found that in order to do proper front-end work with Drupal, you need to understand PHP well enough to manipulate data using Drupal’s hooks and preprocess functions. In 2016, looking into decoupling Drupal is extremely appealing because of the front-end freedom it provides. No longer will the front end be entangled with a giant monolithic system. I look forward to seeing what is possible.

I did a technical review for Packt Publishing on a book about Bootstrap.

I completed 9 credits of my master’s degree in Human-Computer Interaction.

SUNY Oswego won a national CASE award and CASE DII Gold award on projects that I lead development efforts on.

Began working with a network of 140+ Drupal multisites. I deploy theme, module, and configuration (via Features module) to these sites. I also run updates on them and customize functionality when necessary.

Went to Cornell University for DrupalCamp in April.

Went to Acquia Engage in Boston in October.

Dusted off my Java skills and prototyped a yoga routine app to help with my yoga practice.

Next year I would like to focus more on creating a real pattern library for the site at work. Identifying and designing some more reusable components will be key to have a robust pattern library that faculty and staff will want to use.

Also, 2016 will be the year that I really sink my teeth into some front-end libraries. I’ve begun Wes Bos’ React for beginners course that has proven to be a solid introduction to React. I’d like to

  • build a simple React app of my own
  • implement a REST architecture
    • consume/write data to Drupal
  • build an Angular2 app
  • finish YogaRoutine

I’ve spent some of 2015 reading about these frameworks, now it’s time to actually do it. I’ve been slowly dipping my toes into the waters of front end frameworks and I think it is finally time to take the leap into it and try to build something with them on my own.

 

Thing one thing I don’t understand about Google Photos

Let me be clear: Google Photos is awesome and I love using it, but as a loyal Google user, I feel a little slighted. Here’s why.

When photos were managed by Google+, they counted against your storage. I accumulated a lot of photos during this time.

Now that Google Photos is out, they are offering FREE storage (that does NOT count against your storage quota) if the photo is under 16MP.

But wait a minute, all those previously uploaded photos are still counting against my storage, even though they were imported into Google Photos and are less than 16MP.

Not a huge deal, but a little disappointing. Anyone else have this experience?

 

Lake Placid timelapse

In the playlist below, there are 4 time lapses that I took while vacationing in Lake Placid. My wife and I stayed at the High Peaks Resort and these time lapses were taken from our balcony.

Equipment/tools used: Nikon D5100, Amazon basics tripod, Adobe After Effects

I shot all the photos as RAW, then used After Effects for post processing.

Sharing content between Drupal multi-sites with RESTful and Feeds modules

At Oswego, when we decided to go with Drupal multi-site, one of the biggest drawbacks was the ability “out of the box” to share content between sites. But when you think of it, how much of Drupal works just as you’d like right out of the box? We looked at a few options but what we ended up settling on was a combination of modules that is doing the trick nicely.

Problem

We have a branch campus that needs to pull in program information from another site (graduate studies). The branch campus editors should not be able to edit the content being brought in since they are not the content experts on the subject. Graduate studies maintains the “master” content, then needs to be periodically pulled into the branch campus site. Then, using views we can display a list of content that we pulled in.

Solution

Being a semi-Drupal-newbie, this took quite a bit of trial and error before I figured out something that will work. If you know of another solution to this, by all means leave a comment! I’d love to hear it.

First thing I did was set up the RESTful module on the graduate studies site. This module makes it very easy to be able to expose our graduate program data as a read-only REST endpoint. I experimented with exporting it as RSS, or trying to build something to export the graduate programs as CSV or some other form of structured data but ended up going with JSON via the REST module. JSON is so widely supported, readable, and consumable by so many other applications that it seemed like it was the best route to go.

I’m currently working on a post about setting up the RESTful module! Sign up for email updates to get notified.

The feeds module alone doesn’t consume JSON, but luckily there is a really nice module called Feeds Extensible Parsers.

I’m also working on a post about setting up the Feeds Extensible Parsers module to read JSON!

I currently have it set up to update the branch campus’ program content every 3 hours. Using Drupal’s role and permissions, I can configure it so the branch campus editors can only read the program content, keeping it in sync with the “master” copy.

Where do you see yourself in five years?

This is a question I’ve been asking myself lately over the past couple months. I’ve never really thought about my life long term. In my late teens / early twenties I was mostly concerned with having some individual freedom. From my early to mid/late twenties I was mostly concerned with partying. From my late twenties until now (currently 30), I’ve been concerned with learning as much as possible. At 26 I went back to school for information and computer science and for the past 4 years I’ve been learning so much. Even on a month to month basis I’m realizing I know so much more than I did the previous month.

I’m reaching a point, however, where instead of just grinding away day to day on the task at hand, I think it’s a good time to take a step back and think about strategy. How can I position myself to be in the best position for my own well being and stability? In order to answer this, I think it helps to envision yourself in 5 years. Picture — in your ideal world — where you’re living, what you’re doing, and how you’re feeling. Then construct a long term plan to get you there within 5 years.

Where I see myself in five years

In five years, I’ll be 35 years old. I’ll be coming up on 10 years of solid web development experience. I have a master’s degree in Human-Computer Interaction. Professionally, I’ve spent the past five years honing my development and organizational skills. I’m a much better problem solver than I was in the past and am excited about solving new problems in an efficient manner. Constructing interfaces and experiences that people use and enjoy helps me wake up excited every morning.

I’m working remotely for a distributed company doing some kind of front-end development/UX work. I sometimes work long days, but I enjoy the challenge and am compensated appropriately. My wife and I are living in a home in the country. Not too far into the country, but far enough not to outside street and foot traffic outside our home. Far enough into the country to hear absolute silence at night and get a clear view of the stars. But not too far in the country to disrupt broadband internet access.

At this point in my life, I’m at a crossroads. I wonder whether I should keep doing development work or begin focusing on project management and bigger picture issues. I’ve also thrown around the idea of going back to school for my PhD to become a professor. Learning and growing is still extremely important to me.

I’m much more health conscious than I was in my late 20s and early 30s. A routine runs my life and keeps it in balance. Much of our food is sourced from the garden outside our home. I have a regular exercise routine and enjoy the energy it brings me.


 

I don’t want to get too specific, but I believe this is a good blueprint for where I’d like to see myself in five years.

Making it happen

Professionally, I’m going to keep doing what I’m doing. I’m going to work hard and learn as much as I can. I’m going to try as hard as I can to be a unicorn.

In addition, I will be spending a set amount of time to external projects. Committing at least 5 hours per week to open source or side projects will help grow my skills. I wish it could be more, but for now I have to start with something realistic.