In your thirst for knowledge, be sure not to drown in all the information. — Anthony J. D’Angelo
For more than 15 years, around 6 professionally, I’ve been making websites. My first website was a simple HTML page hosted by a service called Angelfire. The colors were loud, the animated GIFs were plentiful, and I loved it. I would work on my digital creation every chance I had. Being disconnected by a phone call in the middle of uploading an image was the ultimate frustration. “It can wait, grandma! This spinning mailbox has to go up tonight!”
The subject of that first website escapes me now (I bet it was ninjas), but from that moment on, I knew I had to learn everything I possibly could about the web.
Since then, I’ve spent countless hours reading tutorials and related books, and I work on my craft daily.
Do I feel like I know everything I need to know? Absolutely not.
When you work as web developer, especially for a small studio, you wear a lot of hats. In my professional career, I’ve worked with the following languages:
HTML, CSS, JavaScript, PHP, Python
Okay, a few languages. Big deal, right? Let’s expand it further.
- HTML — Don’t forget HTML5, you know all the new tags and when/where to use them, right? What about semantic markup? Accessibility?
- CSS — CSS3? Animations? Does Internet Explorer support this property? Of course not. Less? Sass? Bootstrap!
- JavaScript — jQuery? Node.js? Ember.js? Js.js?!?
- PHP — WordPress? Drupal? Joomla? What about those frameworks? Yii? CodeIgniter? Laravel? By the way, what version of PHP are you running?
- Python — Django? Can you deploy that for me real quick? (The answer to that is “no”, by the way)
Let’s not forget databases (MySQL, PostgreSQL, NoSQL) and all of that system administration stuff (Ubuntu, Apache, Nginx, EC2, installing, configuring, crying). Wait, you use version control, right? Git? Subversion? Be sure you also know how to use Photoshop and Illustrator, as well as every command line command ever created.
Until recently, I felt like I needed to be an expert in all of those areas. I never will be.
Don’t get me wrong — I’m all about learning and pushing yourself to be better. But trying to be an expert at everything will only lead you to frustration. New technologies are introduced all the time (fact: 3 PHP frameworks and 4 JavaScript best practices were introduced while I was writing this).
You can’t keep up with everything and also be sane. Tom McFarlin calls it a “fool’s errand,” and I couldn’t agree more.
Know your fundamentals, pick a couple things to focus on, and relax. I promise I won’t tell all the other developers that you have no idea what the best new PHP framework is. We can keep that between us.