Tips for New Web Developers

For anyone starting to learn web development, figuring out what language to learn can be tricky. Today there are so many options, frameworks, instances, processes, even for me, it can get overwhelming. So to help new developers here are a few tips that I hope you will find helpful.

Pick a Side:

The web is built with HTML, styled with CSS, and animated with JavaScript* and is broken into two parts, front-end (your browser) and back-end (the server hosting your website). For people new to web development and with no programming experience, I would recommend first learning the front-end languages of HTML, CSS, and JavaScript. For those with some programming background, it's good to know HTML and CSS but you may find it more interesting to pick up programmable JavaScript, PHP, Ruby, or Python.

As you progress you will no doubt find yourself picking up other languages, you will quickly realize the web is not compartmentalized and that there will always be overlap between front-end and back-end.

Learn the language, not the framework:

Frameworks are great. I use them daily for my work but only because I know what problems they are solving. It’s easy to pick up a framework such as Bootstrap (HTML, CSS), React (JavaScript), Angular (JavaScript), Laravel (PHP) because they tend to simplify syntaxes. The issue is that while they do a good job simplifying code, it makes it harder to branch out into other languages.

Also with today’s rate of new framework fads, it's possible that the framework you are using today will be obsolete in 1-2 years. Learning the language behind the framework better positions you to be more adaptable down the road.

Decide what you want to build:

As I said before, the web has matured a lot over the years and I think it is time to start re-classifying what we are building. Personally, I like to break the web down into web applications and websites.

Website - a place on the web, where content comes from a single source and disseminated to a large anonymous public (i.e. my own personal website).

Web Applications - a type of software built using web languages that can create, manage, alter, store and distribute content to and from multiple users and groups (Facebook, Twitter, Trello, Gmail, etc.). There is a lot of overlap, but a web application can be used to build a website also known as a Content Management System (CMS) such as Drupal, Wordpress, TypeTote, or Squarespace.

The reason I think it's important to classify what you want to build is that it will determine the kind of languages you will want to learn. For websites, knowing HTML and CSS, along with a CMS will allow you to help an individual or organization have a space on the web. If you find yourself wanting to build a to-do app or work for Spotify's engineering, then you may want to look at Rails or Node since that is what they use and the languages themselves were built for such a purpose.

Pick your tools, trust them, love them, and make your toolbox:

This I think is probably the most important tip. It's easy to get caught up in the hype of the latest fad language. But the real thing with web development today is not about how it's built, but can you build it?

The only requirement for web development is to accomplish your goal. In reality, non-technical people do not care how you build it as long as it gets the job done. That's why I follow up by saying there's always room for improvement. Yes at times it can be questionable how something was built, but regardless anything and everything always has room for improvement.

That's why you should pick languages to serve your purpose. I use PHP, Wordpress, Drupal for most of my back-end work along with SASS and vanilla JavaScript. Why? It's just the tools I trust, and so far they have yet to let me down. To others, it could be a framework or something else, but in the end, stick with what you know.

Be Open:

The last thing I like to say is that it's important to be open, in that there never is one right way to do something. So whether you’re working on a team, with a client, or for yourself, be sure to try to understand and approach things with an open mind. In web development, rules are often meant to be broken.

I hope these tips are helpful and if you have any questions please feel free to send me a message.

---

*Originally when Javascript was created in the mid 90’s, it was used to manipulate static HTML. Today it has matured and standardized where you can build websites and applications with just JavaScript. It now has the label of the programing language of the web, but such functions can also be done with PHP, Ruby, Python and other web-based scripting languages.