This is the sixth article in our “The 12 Dos and Don’ts of becoming a Web Developer” series.

“Fine,” you tell me.  “I won’t get caught in tutorial paralysis.  So what do I need to do?”

Set up a Github account and push some code, young padawan.  It’s that simple.

It doesn’t matter what you’re working on; create a repository for it, commit it, and push it to Github.  It doesn’t matter if it’s good or not; you can always go back and improve it later, or leave it as-is and push something better to a new repository next time. Once you figure it out, it will take you an extra 30 seconds every hour or so to do this, but the benefits are pretty great:

1) Remember when I said you need a solid grasp of Git?  Here’s your chance to practice.  Initializing a repository, adding your changes, committing them with a descriptive message, and pushing them to a remote repository (such as Github) should all be second nature to you.  That way, when you start working on a team and need to handle more advanced concepts like branching / merging  / rebasing, soft and hard resets, cherry-picking, etc., you won’t feel totally overwhelmed — or, worse, break something and have to spend an hour figuring out how to undo it.

You’ll be able to turn a moment like this:

tyraface

Into a moment like this:

me-working

2) Employers love to see that you’ve been active on Github.  From my experiences with hiring and conversations with other developers, I’d say that having an active Github profile will not only move you to the top of the pile but probably put you in the top 10-20% of applicants.  It shows that you not only know what the hell you’re doing but also gives us a window into how you solve problems.  Github alone may not get you a job, but if you have an active profile, it’ll definitely get you some interviews.  That’s where you get to kick ass, take names (literally.  Get business cards.  You’ll never know when you’ll need them), and show what an awesome member of the team you’ll be.

like_a_boss

3) You never know when you’re going to need old code.  Perhaps you’re trying to remember how you made a full-size background image resize properly on a website you built six months ago, but you can’t recall exactly how you pulled it off and you need to do it again for a new site you’re working on.  You can either a) spend an hour or two Googling how to do it and trying to re-implement it or b) take a peek at your Github profile, grab the code, and adjust it for the new project.  Having tried-and-true code snippets at hand will save you a lot of time.

tumblr_mw2s58tgxt1qdlh1io1_400

One final protip before you go: commit early, commit often, and leave yourself descriptive messages about what you actually did (no “updated css and lots of other changes” crap).  When you break something (and you will) and need to revert to an earlier commit, you’ll be glad you did this.  What I like to do is, before I sit down and write a single line of code, think of my commit message in terms of my tasks ahead of time; if my commit message involves the word “and” too many times (“updated styling of h1 on front page AND repositioned contact box AND performed data-sanitization on contact box”), I know I need to be vigilant about breaking it up into multiple commits.  You’ll make your life a lot easier, trust me.

Most of the resources I linked in my earlier post cover Git in some shape or form, but here are a few additional (free) resources to check out:

http://try.github.io/levels/1/challenges/1

http://git-scm.com/book

http://gitimmersion.com/

One more thing before I sign-off (I’ve said it before, but it bears repeating): invest the time to learn Git in the command line.  There are programs out there (such as Sourcetree) that will handle a lot of the heavy lifting for you, but they also make it much, much easier to screw things up (as one unfortunate developer in my acquaintance learned recently, when he accidentally deleted most of his hard drive.)  The command line is a powerful tool, and even though it’s super intimidating at first, it won’t take you long to become familiar with it — as long as you take the time to learn it.

Articles in this series:

Samantha Geitz


It is with great gusto that Doejo gets to share with you the launch of our latest creation, a new and improved consequenceofsound.net.  We have been privileged to work with the fledgling online music publication for over 4 years and this new UX project has been in the works for over a year now.

For the uninitiated, Consequence of Sound is probably the best rock n roll website on the net—IMHO, better than RollingStone, cooler than Pitchfork.  CoS overflows with great content, news and opinion but spares you the snark, attitude and arrogance of their elder rivals.  Boasting millions of visitors each month, this project was deployed on WordPress.com VIP.

Consequence of Sound is now mobile responsive and will look just as great on your iPhone or Android phone as it does on the web,” CoS creator Alex Young wrote in a column announcing the re-launch. “The homepage is easier to navigate, our content is better presented, and Festival Outlook has been completely revamped.”

We’re still working with CoS to roll-out new features in the coming weeks, including the ability to personalize the homepage.  “In other words, if you no longer want to see stories about Kanye West, you no longer have to see stories about Kanye West.”

But go ahead and check it out for yourself.  This is one of Doejo’s biggest and stunning projects to date.  We’re proud of our team and the work put forth, and psyched to have gotten the chance to make waves with such a groovy music site.  Rock N Roll Never Dies.

Noah


This is the fifth article in our “The 12 Dos and Don’ts of becoming a Web Developer” series.

So you’ve checked out a few of the resources on my list.  Great!  You’re well on your way to becoming dangerous as a web developer.  However, there is one thing that you are undoubtedly going to want to do, and I’m here to tell you not to do it.

Don’t get caught in tutorial paralysis.  Seriously.  Don’t do it.

What is tutorial paralysis, you ask?  When you’re first learning, tutorials are safe.  You have a friendly instructor telling you what to type in your text editor or command line, making sure you don’t have to think too hard.  You can finish a tutorial series in a few hours or a few days, and you’ll feel really proud of yourself for sitting through it, for learning.  You feel like you’re really getting a handle on this web development thing.  At that point, the friendly instructor will usually tell you what course you should take next.  So you complete the next one, and you learn something a bit more advanced, and on and on until someday you actually have to build something.

That is generally the point where you realize that, despite the 50-100 hours of tutorial videos you’ve watched, you have no idea — none at all — how to actually build something on your own.  Cue the eternal despair of the dark night of your soul.

disappointed1

You can talk the talk, but at some point, you need to walk the walk.  The very, very best way to learn how to do something is to build something on your own, even something that you’re super ashamed of (but you won’t be. You’ll be proud of your creation, even if six months later you’ll go back and feel horrified by it.)  Tutorials are great to teach you the basics, but they will never, ever challenge you the way hacking together something on your own will.  If you’re not ready to bash your head against the monitor at least half a dozen times when you’re working on something while you’re learning to code, you’re not challenging yourself enough.  Don’t worry; for all the frustration, and the blood and sweat and tears, the feeling you get when something you’ve been fighting with for hours or days actually works is like a drug.  But, you know, in a good way:

gimme-five

beyonce-fierce

celebrate

Remember that feeling.  You’ll need it during the next dark night of the soul.

Check back next week, and I’ll give you some advice on what to do with all the awesome code you’re writing.

Articles in this series:

zp8497586rq
Samantha Geitz


Screen shot 2014-01-15 at 4.43.43 PM
We had the pleasure working with our friend Charles Webb the gourmet chef behind Avanti Gourmet Catering.  Charles is a seasoned chef with 20 years of food and beverage experience across the globe.  His cuisine is always fresh, organic and seasonal to ensure the best flavors.

Avanti specializes in catering in-home dinner parties, corporate lunches, private events, weddings and rehearsal dinners, cocktail parties, holiday gatherings and other special functions.  Recently we had the opportunity to crash one of Chef Webb's dinners, camera in-hand, and were treated to some of the tastiest dishes we've ever eaten.  Check it out:

zp8497586rq
Zhenia Koval


This is the fourth article in our “The 12 Dos and Don’ts of becoming a Web Developer” series.

Can you learn web development for free?  Sure, if you’re willing to wade through a whole lot of garbage to find the free hidden gems online.  If you are not on an absolutely no money left over at the end of the month eating ramen three times daily creditors holding your firstborn hostage shoestring budget, though, it might be a good idea to invest a little bit of money in some of the many excellent learning resources out there for web developers.

Which resources you would like to use will depend largely on the language you want to learn (and you can read another article I wrote for thoughts on that)  However, here are some of the resources I’ve used to kickstart my web development career:

Codeacademy (free / Javascript, HTML/CSS, PHP, Python, Ruby):

352

One of the best resources out there, and totally free!  This site has you learn by doing, typing commands into a console to solve code challenges.  It’s a great way to get an introduction to a language or to get a little bit of extra practice after working through another site, but it’s not as thorough as the other sites on this list.

Tuts Plus ($19 per month / pretty much everything you can think of):

Tuts-Plus-Premium

Tuts Plus by far the most massive site on this list.  They have hundreds of courses on everything from web development (in any flavor imaginable) to photography to business, and most of them are excellent (especially anything by Jeffrey Way, if you want to get into PHP.)  The biggest downside to Tuts Plus is that, unlike most the other sites on this list, they don’t have code challenges for you to practice what you learned; while you can follow along with the instructors as they build a project, they rarely push you to figure out things on your own, which is the best way to get better.  If you use this site, you might have to supplement with Codeacademy for some extra practice.

CodeSchool ($29 per month / HTML/CSS, Javascript, Ruby, iOS):

code_school

CodeSchool has the most expensive membership option on the list, but I also found their code challenges the most difficult (in a good way).  It combines the best of Tuts Plus and Codeacademy, showing you videos and then following up with code challenges so you can practice what you just learned.  If you want to try your hand at Ruby or Ruby on Rails, their “Try Ruby” and “Rails for Zombies” courses are both free, and RFZ will give you a good idea whether their teaching style works for you.

Team Treehouse ($19/month / HTML/CSS, Javascript, Ruby, PHP, iOS, more): 

treehouse-logo31

Like CodeSchool, Team Treehouse will show you a video before giving you code challenges to demonstrate your mastery.  The difference is that TeamTreehouse encourages you to follow along with the videos to build a project and then demonstrate pieces of knowledge, often with true/false or multiple choice answers, while CodeSchool’s videos and challenges walk you through topics without having you build a project from beginning to end.  Which one you like better is totally a personal preference; I have had a membership to both, but CodeSchool tends to be more advanced.

Honorary mentions of other resources:

Javascript

Ruby / Ruby on Rails

PHP

  • Laracasts (if you want to learn Laravel, which is basically the PHP-flavored version of Ruby on Rails)

If you feel like you prefer learning by reading versus watching screencasts, there are also hundreds of excellent books about web development that you can find on Amazon or at your local library.  Amazon reviews will go a long way toward telling you whether a book is good or not, but I’ve found the Head First series to be the best way, hands-down, to get a foundation in any subject, and the Pragmatic Programmer series to be the best at teaching more advanced subjects like frameworks and test-driven development.

If you subscribe to every resource on this list for a year and buy a small library worth of books, you’ll still be saving money over going to a bootcamp or taking a college course.  It’s worth it, trust me.  Just don’t rely too heavily on tutorials to teach you how to code; the best way to learn how to code is — *gasp* — to actually code.  I’ll talk more about this in my next article.

Articles in this series:

Samantha Geitz