Dean’s List: Riley Hilliard

Riley Hilliard

The Dean’s List feature is our way of highlighting some of the extraordinary students in the Treehouse community and sharing with the world people who are passionate about learning, bettering themselves and making a difference.

This edition of the Dean’s List features UI Engineer Riley Hilliard. In his feature, Riley talks about how he learned to code in less than 10 months, the role Treehouse played in helping him breakthrough learning barriers, how he’s progressed and what he’s working on today. In addition, Riley shares advice for other students progressing down a similar learning path, and discusses his awesome Treehouse Badges Widget.

What drew you to the web industry?

That’s somewhat of a long story. I’ll quickly skip over my earlier experiences with technology by just saying that I have always been tinkering with tech of all kinds since I was little kid, but never tried physically writing code till I was in College. This was mostly because I thought I would never be able to read/write programing languages, so I never really tried. When in College I founded iClub.fm, and didn’t have the funding at the time to have a website built, so I figured I would just try to build one myself. I only taught myself the bare minimums needed to get whatever feature it was that I wanted on the site, but after spending a lot of time hacking out tiny features I finally decided I might as well just learn the fundamentals, so I enrolled myself in some UC Extension courses in HTML and CSS and was floored by how much I already knew. That was probably the turning point of when I decided I wanted to get into web development, because I realized this big wall I had put up around myself in thinking that writing code was too hard to learn was completely self-made and programming was something I could actually learn if I just spent the proper time on it.

Tell us a little about how you learned to Code in less than 10 Months.

I would say that learning to code on your own is not for everyone. You really have to want to learn with an undying determination, and have a realistic outlook that learning to code will take a while. I learned to code because I wanted to build awesome things, so every little tip, trick, and tutorial I watched or read I was extremely interested in and the material stuck. I am the kind of person that when I hit a roadblock, I use that frustration to try harder. Once I made peace with the fact that this process was going to take several months, it made it easier to get through the times when I felt like I didn’t ‘get’ it. I probably spent the better part of 5-8 hours a day studying at the local coffee shop for 5-6 months before I was really able to start building anything I was proud of. I would say that the most important thing that started to help me learn a lot faster was in applying the material to a real-world project. Having a side project to work on while learning to code is really what allows you to start being creative on your own. I’ve tried to touch on the more subliminal things that helped me out here, however I also wrote a more in depth article on the physical resources I used to learn.

What were you doing when you first joined Treehouse and how has your learning experience helped to get you to where you are now?

I graduated from San Diego State University in 2011 with a degree in History and had been DJing professionally via iClub.fm as my ‘claim to fame.’ The DJing was technically going alright, but I began to realize that I really disliked that industry. I’m not a huge partier, so the normal perks of DJing didn’t really apply to me. I also was pretty aware that while DJing was paying the bills while I was in my early 20’s, it certainly wasn’t anything I could count on long term, or even stick on a resume. One of the good things about DJing, however, was that I had my weekdays wide open to be able to study full time, which I took advantage of. When I started with Treehouse, I was still DJing and looking for other ways to learn how to program. I came across Treehouse after reading an article about how you guys had been offering scholarships to college students. I was fresh out of college so I didn’t qualify, but I thought that what you guys were promoting sounded pretty cool so I checked out the site and signed up. Treehouse was (and still is) an awesome resource to use and is one of the largest reasons I was able to breakthrough a lot of the learning barriers that had been holding me back early on. I am a visual learner, so the videos happen to fit my style really well. In particular I took a lot of the CSS, HTML, Ruby, and jQuery/JavaScript tracks, which have been an invaluable tool for my education. I use these skills every day now at work, and I continue to go through all the great new content Treehouse is putting out.

Tell us a little about the work you’re doing now.

Back in May 2013 I was presented with the opportunity to interview at EdgeCast networks and ended up landing a great job offer. For the last few months I have been working as a part of their Portals and Monitoring team as a UI Engineer. I have been building monitoring and reporting systems for hardware issues, as well as network data charting for the NOC. These systems primarily deal with detecting and preventing issues with the network, and sift through large amounts of server data; highlighting anomalies to improve the overall speed of the network. A content delivery network (CDN) is essentially the FedEx of the Internet, delivering data to its destination as fast as possible. EdgeCast operates one of the fastest global networks, helping sites serve their content to large numbers of users and generally speed up their web sites. We power some really awesome clients like Twitter, Tumblr, Pinterest, and SoundCloud, and I believe Treehouse just joined the network as well! It has been really awesome working there, and being around so many great engineers that are all super willing to help each-other out has really been a huge benefit. I’m really happy to have this opportunity to work alongside so many talented people.

On the side, I have been contributing to a few open source projects, the latest being the Report Card widget that I just opened up on GitHub. I love working on projects like these to help explore some technologies that I want to learn, while being a part of building something people actually use.

We love your awesome Treehouse badges widget! How did the project come about and how has it evolved?

Around 5 months ago I started work on my personal site, rileyh.com, because I needed a place where potential employers, clients, or just people googling my name could land to find out about me. When making my resume section I was trying to figure out how to best show my past experience, and I decided one of the ways was to display the badges I had been earning on treehouse on my site. I wrote up a quick static badge widget by literally downloading all my badge images and writing it all out in HTML and CSS (no JavaScript). The obvious issue there is, if I earned another badge, I had to go manually add it to the code on my site, but for my initial purposes it worked fine. I think I first posted it to the old treehouse facebook forum, just to see if anyone else wanted to learn how to make one as well. Everyone seemed pretty stoked on it, and Mark Flavin converted my static HTML and CSS over to some dynamic AJAX’d JavaScript, so the badge count and images synced with the actual Treehouse profiles. I think he used YQL on the original code, which basically parses HTML content and allows you to pull out pieces. Downside is that YQL is pretty slow, but the team over at Treehouse took notice of what we were up to and opened up a profile API to output JSON. This got me super pumped on JavaScript/jQuery, so I went on a JS learning binge for a few weeks and then decided I would start working on the Badge Widget on my free-time. The Treehouse community remained pretty involved, and the badge has contributions from a lot of members including Mark Flavin (Original AJAXer), Jack Sharpe (Points Bar dude), and James Barnett (Thought King, and Tool Tip contributor). Recently I did a huge overhaul to the code, added a bunch of features, and then open sourced the project on GitHub so everyone can start contributing their own improvements to the codebase!

Also as a side note, if you notice that the widgets on rileyh.com run a lot faster than reportcard.rileyh.com, it’s because I am running a cool cron-job hack that basically cache’s my treehouse json data every 12 hours, and stores it on my server in a json file. It is kinda like an internal API, where I am calling the json file from my server via the AJAX call instead of the Treehouse API. This should save some server load to Treehouse as well because the badge data is no longer recalculated by Treehouse on every page refresh of my site. In terms of the performance increases; pulling from the treehouse json used to take about 4-5 seconds (although I have noticed that has been reduced to around 2.5s now, so for some reason your API has recently started performing faster, woo!), but via the call to my server cached badge json file, the badges load in under 100ms. Kinda hard to explain, but maybe I’ll write something up in the future on how to do this.

What are your favorite online resources to keep you inspired?

  • Hacker News is pretty awesome for Coding news.
  • CSS Tricks is an Awesome place to learn some cool new stuff.
  • TechCrunch is great for staying up to date on the industry.
  • I’ve picked up a ton of awesome tools and tricks from The Treehouse Show, which I watch regularly.
  • The Tech section of FlipBoard iPad/iPhone app is pretty good at aggregating a decent selection of tech news.

On your blog you highlight the importance of continually learning. What’s coming up next on your learning agenda?

Getting back into Ruby on Rails is high on my list of things to tackle.. After that it’s forsure onto iOS, and after that probably javascript frameworks like node.js, backbone.js, and mustache/handlebars (templating). Somewhere in between all that I’ll probably take a swing at SASS. Aside from my personal Roadmap, I know that the tech industry evolves at lightning speed, so I’ve made sure that I spend several hours a week learning something new.

Based on your experience, what advice would you give other Treehouse students?

Treehouse is a great place to learn, but you have to learn the right way on it. The tests are a great way to help you learn what you just watched, but just because you passed the test does not mean that you now know that concept completely. There were plenty of times that I went through the lesson, passed the test, and then decided I didn’t have a firm enough understanding of the topic, so I re-watched the whole thing again. The point is for you to learn the content, not just pass the test, so especially in the higher level content make sure you are fully understanding everything you are learning.

A side project is essential to your learning process. You start to realize you know what you are doing when you start applying what you have been learning to completely unrelated projects from the coursework. Your side project could be anything: a personal website, a site that generates random cat gif’s, or even just an open source widget like the treehouse badges widget I started. These projects will force you how to correctly think about programming, and all of a sudden you will realize that you’re writing code on your own.

Is there anything else you would like to share with the community?

While Treehouse is among some of the online resources I used to learn to code, I also heavily participated in a lot of regional learning/networking events. If you want to get into any industry, you have to start getting to know the local players and make a reputation for yourself. I am a member of a lot of local Tech Meetup.com groups, as well as a regular participant in the Startup Weekend events. In-fact I noticed Treehouse was a sponsor of one of the Santa Monica Meetups I went to recently (I think it was the LA Tech Happy Hour Meetup). I also attended the Startup School weekend at Stanford, which is put on by the Y Combinator. That was a really transformational event for me as it was right around when I first decided that I was going to learn how to code. Apart from these events I also have written regularly on my experiences in learning, have contributed to open source projects when I can, helped build friends websites, and a lot of other work where the compensation was in experience and reputation. One of the most rewarding projects I worked on was for some of my buddies from college who are the founders of Pura Vida Bracelets. I helped them build out their new ecommerce site, which they allowed me to contribute heavily on. I did much of this for free, but the learning and reputation I earned as a result was worth much more than any hourly wage I might have charged given my experience level at the time. I would say that one of the things I have done very well in this process is worked very hard on the right projects that have built my reputation. Many of the opportunities I now have are a direct result of a lot of this kind of work.

We would like to say a huge thank you to Riley for sharing his experience, being such a great Treehouse student, and a valuable member of the community. An extra big thank you for creating the Treehouse Badges Widget too, which all the community has greatly enjoyed! Keep up the fantastic work.

Free Workshops

Watch one of our expert, full-length teaching videos. Choose from HTML, CSS or WordPress.

Start Learning

Faye Bridge

Faye is a Community Manager at Treehouse. Before joining the team she graduated from the University of Colorado and now resides in London. She considers herself a fiction addict, amateur photographer, social media appreciator, and an excessive smiley user. :) Twitter: @fayebridge

Comments

3 comments on “Dean’s List: Riley Hilliard

  1. Inspiring! And the perfect article to help me stay motivated. I’m currently in that stage he describes where I’m working on websites for friends, coding my own projects for fun, and absorbing as much as I can from Treehouse and like-minded tech ed sites. Glad to know I’m on the right path.

    • Ya just gotta keep with it. Working on other peoples stuff will start forcing you to problem solve in the ways that makes a good programmer great. Buddies projects will help you confront common issues that you wouldn’t normally think about learning, which will make you a better coder. For me, I was really concerned about going out and trying to find a job when I was not experienced enough to be able to handle a common project, but working on my own projects and friends projects really helped prepare me for real-world coding skills. Eventually you’ll start noticing that things you were totally stumped about in the past, you can start building from scratch in a few hours or even a few minutes. There’s kind of a ‘breaking point’ when you realize you know enough of the small skills that the big picture becomes much more clear.

  2. I just stumbled upon the Dean’s list and I love it!
    I read each interview today and I love the fact that people with such different backgrounds and from all over the globe, are finding a way to learn something new every day and do what they love.
    Keep it up! :-)