2017 year end review

2017 marked the first year in our new home. We got it (mostly) decorated and have loved having guests over to enjoy some dinner, games and conversation.

My dog, Nugget
In 2017, we got our first puppy. He was about 6 months old when we got him and has been quite a handful!

This post is one of my favorites to write every year because it allows me to look back on the year and evaluate what I’ve learned and determine where I’ve made progress.

Design systems

This is the year that I spent a lot of time reading and working on a design system. I’ve spent a bit of time thinking about the challenges in implementing and maintaining a design system, and even wrote a few blog posts about design systems.

Jeremy Keith linked to one of my blog posts, calling out my Venn diagram as similar to how he thinks about how design system, pattern libraries, and style guides all fit together. This simple thing was a huge boost to my confidence as it sent a signal to me that I’m thinking about these things the right way.

I feel as if we made significant progress in our organization to implement a system of components. However, an unseen (yet ultimately positive) circumstance arose that temporarily halted progress on the design system, which was an accessibility complaint.

After this holiday vacation, one of my top priorities is going to be completing a design system that we can build on for years to come.


I crammed so much accessibility knowledge into my head this year because of a complaint we had filed against us by OCR (Office of Civil Rights), which claimed that our website was inaccessible.

While the situation was at times stressful, in hindsight I view it as an incredibly positive experience for a lot of reasons:

  • Definitely “leveled-up” my accessibility skills a LOT
  • Created a sense of urgency and importance about the topic within our organization
  • Offered opportunity to revisit old processes and policies to ensure people understand accessibility
  • Got me out of my comfort zone and gave a couple accessibility workshops on campus
  • Again, got me out of my comfort zone to be involved and contribute to in a campus-wide accessibility working group

As part of our organization’s commitment to accessibility, I was sent to WebAIM training in beautiful Logan, Utah. The training was highly valuable as it clarified a lot of the misconceptions I had about accessibility and solidified my understanding of when to use ARIA attributes vs HTML5 elements when it comes to accessible markup.

Templating languages

While working on design systems, I’ve experimented with a lot of templating languages. These are a delight to use because they fit in perfectly with component based design and allow for rapid front-end prototyping. Throughout the year I stumbled on 3 different templating languages that I got the opportunity to play with.

Pug — Thanks to CodePen, I’ve learned how Pug templating works. CodePen’s new Projects feature is an amazing tool to use when prototyping.

Twig — At work, the current version of our pattern library is in PatternLab which uses Twig to template components. This has allowed me to learn the ins and outs of Twig and get up to speed with it quickly. It is such a good fit because as our organization eyes moving to Drupal 8, learning Twig will prove to be a good investment of time.

Handlebars — I use Assemble.io to build certain custom designed, special projects which use Handlebars to template out partials and layouts.

Governance and policy

This isn’t a technical achievement, but it’s note-worthy nonetheless. While sometimes I wish I could focus on the tech part of my job 100% of the time, it is necessary to be competent in writing and communicating in order to be truly effective and successful in your career.

This year marked the first time I’ve taken a serious look into governance policies, which our organization sorely needs. I like to think I helped get the ball rolling on that initiative by creating some drafts of policy documents that I shared with my superiors who see the policies as a necessity are now using their status to get buy-in and carry the project across the finish line.


2016 year end review

This is becoming one of my favorite things to do around the time of each new year. It’s a great opportunity to look back at the past year and take inventory of what has been done and reflect on what could’ve been better.

2016 was the year of some Drupal deep-diving. I learned a lot about some Drupal 7 modules including Panels, Paragraphs, and especially Features. Since I manage a 140 site multisite at work, being an expert at Features is absolutely critical to consistently deploy functionality across those sites.

Launched my first Drupal 8 site at Oswego (The Campaign for SUNY Oswego) to much fanfare.

I went to Acquia Engage again in Boston this past year and met some really nice people from MediaCurrent.

I worked with a very talented art professor at the college and implemented a WordPress theme based on a class design for our local children’s museum.

2016 is the year I stepped up my freelance work and have considered starting a side-business out of it. I don’t have kids so I have free time in the evenings. I love this work as well, so why not?

I didn’t dig into front-end frameworks as much as I wanted to this year, but I still think that’s coming.

Outside of technology, my wife and I bought our first house which made the last quarter of the year fly by.

I’m looking forward to a great 2017!

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.


Thoughts on my 2014

2014 has come to an end and it’s time to look ahead to 2015. 2014 was my first full year in a professional environment. I wrote my first jQuery plugin. This was also the year I really sunk my teeth into CSS preprocessors, automation, and version control to supplement my front end development.

Working for a full year doing web development has been a great experience. I used to think the hardest thing in programming was what to name your variables, but it turns out that – for me – it’s communicating your ideas. Because of this this, I want to blog more in 2015. I think it’ll help me understand my thoughts a little more. The ability to communicate technical ideas clearly to a non-technical audience is a skill I need to sharpen.

I dove into jQuery a little more thanks to videos by Paul Irish. This knowledge allowed me to write my first jQuery plugin. It’s nothing super amazing or technical, but it was a neat exercise in learning something new. Looking at example code of jQuery plugins made me feel uncomfortable at first, but as I stuck with it and kept reading, it started to gel together enough for me to write something that works.

This is the year I started using LESS as my CSS preprocessor of choice. I keep reading a lot about Sass, but haven’t tried it out yet because LESS does everything I need. LESS solves many problems I was tired of dealing with while writing plain CSS – namely lack of variables and mixins. The idea of compiling a few .LESS files into 1 CSS file seemed to make more organizational sense to me, so I never looked back.

Another addition to my workflow in 2014 was embracing front end tooling. I used to have no issue importing 9 non-minified .js files in the footer of a site. I used to FTP all my files manually every time they were updated. I used to download external libraries by just going to the library’s website, downloading the zip, then extracting it to my project. Now, I use grunt tasks to concatenate and minify my scripts and CSS. I use rsync to transfer my project to staging or production servers. I use bower to manage my site’s dependencies, allowing me to quickly download and update external libraries. These things used to seem advanced and scary to learn, but since I’ve gotten to know these tools, I can’t imagine working without them.

Finally, 2014 was the year I started using version control. Git tutorials and YouTube videos really helped me understand how important it is to a developer’s workflow, how it works, and how to use this powerful tool to manage your projects. Gone is the fear that something irreversible will happen to my project. I can rest assured knowing each version is backed up on my local repo and in the hosted repo (I like using BitBucket).

TL;DR – My workflow changed a lot for the better in 2014, and I got the chance to learn more about jQuery plugins (and as a side effect I now understand JavaScript and jQuery better). Looking forward to 2015, I hope to learn as much or more.

Reflections on 2013

2013 was a crazy year for me. It marked a lot of important events in my life and was the culmination of years of hard work.

In February I was hired as a student worker on campus. This meant I didn’t have to work in fast food places anymore and I was making a decent wage doing something I actually enjoyed. I almost didn’t think this would ever be possible because I worked some not so motivating jobs over the last 8 – 9 years. At my new gig, I worked with a senior web developer and made some really cool things for the campus website. That marked the moment where I knew what I wanted to do. I always knew I wanted to do something that was working with the web, but specifically working at a university sounded best of all. I really enjoy campus life, so working on a campus seemed like it would be pretty cool after graduation. That felt like the perfect next step for me to take.

On April 19 I was awarded the Outstanding Senior in Information Science award at SUNY Oswego. The announcement took me by surprise because I still felt like I had no clue what I was doing, but the award was much appreciated and boosted my confidence.

In May, I graduated magna cum laude from SUNY Oswego with a major in Information Science and a minor in Computer Science. My time at SUNY was so meaningful. I went in knowing I wanted to better myself. The environment in the computer science department really helped foster change in me. My CS teachers were phenomenal, and even my non-CS teachers (philosophy and native american history) were very good at what they do. Excellent faculty, challenging courses, and motivated peers made for a great learning experience.

Also in May, I applied for my first “real” job at a University for a web developer position. My qualifications were pretty good for the job minus a few things but I figured I’d give it a shot. The worst that could happen was they would say No and I’d be in the same spot as when I started. I knew I must be doing good when I was called back for a second interview less than a week after my first interview.

In June I was officially hired as an Associate Web Developer at Binghamton University. It was a good place to work and it fit in really well with my wanting to work at a University. The campus was beautiful and my co-workers were hard working. I was working on campus when Barack Obama visited Binghamton. It was all a lot of fun, but it was weird leaving Oswego. My wife and I both missed the lake as well as our friends and family. Also, living in Vestal (just outside Binghamton) was pretty expensive and it was hard to get a foothold financially.

In August, I noticed an opening at SUNY Oswego for the same position title I currently had in Binghamton. I wasn’t sure if I wanted to go back to Oswego at first but I felt like I would regret it if I didn’t at least try and see what happens. I applied, interviewed, and was hired in late September, early October. It was a good feeling that we were coming back but we laughed that we didn’t even get to experience one winter away from Oswego. Oh well 🙂

My last day at Binghamton University was October 17 and it was bittersweet. Leaving our life in Binghamton was hard, but luckily we weren’t too rooted there yet. Months after leaving, I still think about our experiences down there and the people I worked with. We really got to like the Nature Preserve on campus and I was building some neat things at work. I’m really thankful for the opportunity and experiences I had at there.

On November 4 I began working at SUNY Oswego. It felt good to be back where I worked as a student. I immediately hit the ground running with some neat projects (hopefully will be launched before Spring, but we’ll see) and had the opportunity to completely redo my workflow. I integrated some incredibly valuable tools into my arsenal and have become a lot more efficient because of it.

So in 2013, I’ve received an award, got a job that made me realize what I really wanted to do, graduated college, got my first real job, moved to Binghamton, got my second real job back in Oswego, moved back to Oswego and re-imagined how I work. When I think of where I was at just a year ago, I feel really good about where I’m at right now. It’s all because of a decision to be better and then staying focused on the path.

As this year winds down, it’s time to start thinking about how to make 2014 even better than 2013.