Frontend development involves writing instructions that tell the browser what to show to the user and code that runs in the browser on the user’s computer.
Most developers start their journey of learning frontend development by learning HTML and CSS. HTML and CSS are the fundamental building blocks of the web, no website can exist without them, they are essential skills for both frontend and backend developers. HTML is a markup language which explains the structure of a page to the browser and CSS is a way for you to beautify that structure. Here are a few good places to learn HTML, and CSS -
this tool provides an online transpiler so that you don’t have to setup your own.
Backend development involves writing code that will run on the server, not on the client’s browser (like in frontend development). You can use almost any programming language to write backend code, however a few recommended options are Node.js, Ruby, PHP and Python. Before diving into backend development, you should learn the fundamentals of your chosen language, this will make it a lot easier to learn a framework and write good, structured code -
- Node.js: learnyounode
- Ruby: Codecademy Ruby
- Python: The Official Python 3 Tutorial
- Node.js: Express
- Ruby: Ruby on Rails
Software development uses a plethora of tools to create products and it is very important to have at least an elementary understanding of these tools and know your way around them.
- Finding answers: This is without question the most important skill to master as a developer. Due to the scale of the internet whatever problem you are facing right now, someone has probably already solved and documented it. To be a good developer it is essential for you to know how to find this documentation.
- Linux is an open-source operating system on which 96.3% of the internet’s top 1 million web servers run. If you want to become a backend developer, your code will probably run on a Linux machine. Due to Linux being the de facto production environment of the web, most popular development tools work best on Linux and as a result development is faster and easier on Linux.
- The shell is a text-based interface to your computer and is often the fastest way to do things. It may feel slightly unintuitive at first, but once you get comfortable daily tasks like moving and renaming files will become a lot more fluid. There are many different shells to choose from but most Unix-like systems (MacOS, Linux) have bash pre-installed. This is a good bash tutorial.
- Git is a version-control system created by Linus Torvalds to make versioning and collaborating on software projects easier. It is commonly used in the development world when multiple people have to collaborate on a software project virtually. This is a good git tutorial.