Skip to content

Instantly share code, notes, and snippets.

@jasonblanchard
Last active February 2, 2016 23:59
Show Gist options
  • Save jasonblanchard/db8e4af1b544f2ce82ef to your computer and use it in GitHub Desktop.
Save jasonblanchard/db8e4af1b544f2ce82ef to your computer and use it in GitHub Desktop.

Getting Oriented

JS Resources

Front-End Frameworks

Most complex Web applications use a front-end JavaScript framework to help manage the complexity of rich UIs. As you get more comfortable with JS, definitely check out these:

  • Backbone.js - kind of old school and not used much anymore, but worth familiarizing yourself with the concepts.
  • AngularJS - Popular framework, but going through a major transition from version 1 to 2. Kind of complicated. Starting to lose user base to newer tools like React.
  • Ember.js - More comprehensive than the rest of the frameworks and has a lot of best practices built in ("convention over configuration," like Rails). Really easy to get projects set up with ember-cli. Decent documentation and a great community. I would recommend starting here.
  • React - Very new, complicated/rapidly changing ecosystem, but very awesome. Future of front-end development in my opinion.

No need to learn all of them, no employer would assume that. Give them all a quick overview to get a feel for the differences and pick one and get good at it. Most companies have a preferred "stack," but once you learn one, learning another one will be much easier.

Back-end Development

This is the other half of the Web development world - the stuff that happens on the server. This might include building API endpoints (that you interact with on the front-end with AJAX), putting data into and getting it out of a database, managing user sessions, or programmatically generating HTML pages with data from the database. A few possible paths here:

  • Ruby on Rails - A popular back-end framework written in Ruby. Rails is very developer friendly, has a very mature ecosystem and lots of documentation. The Getting Started guide is a good place to start http://guides.rubyonrails.org/getting_started.html. I would highly recommend beginning back-end dev with Rails because it is fun, there are lots of resources, there are best practices built into the framework and plenty of jobs looking for Rails devs.
  • Node.js + Express - Node.js is a "JavaScript runtime" that allows you to run JavaScript anywhere, including a server. (By "JavaScript runtime," I mean "a thing that executes your JavaScript." The browser is a "JavaScript runtime"). Express is a back-end framework for Node.js (similar to Rails, but a much smaller framework). Writing your back-end with Node is a bit more complicated than using Rails, but you can theoretically have your entire stack be written in JavaScript, which is nice. There are also some qualities of Node and JavaScript that make it a very fast server-side runtime. Although the developer experience isn't quite as smooth as Rails, I'm betting on this being the future of Web dev.

In the NYCDA Web Dev intensive, you will spend a lot of time with Ruby on Rails and get a solid training on "full-stack" development - working across the front- and back-end of a project.

UX/UI/Design

Designing user interfaces (UI) for a delightful user experience (UX) is a large part of Web development as is the aesthetic design, or look and feel, of your Web app. There are entire jobs dedicated to these aspects, but it helps to be familiar with them as a Web developer.

Jobs/Networking

You have skills, but now what?? In addition to cold applications, be sure to network. In this field, it is more common to land a job that you love from people you know.

Own It

Overall, you are now a Web developer. Introduce yourself as a Web developer, put it on your business cards, whatever. Own it! Being confident that you are a Web developer will help you reach your goals in this space.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment