From the most simple, static web pages to social media platforms and apps, from ecommerce websites to content management systems (CMS); all the tools we use via the internet on a daily basis have been built by web developers.
Web development can be broken down into three layers: client-side coding (frontend), server-side coding (backend) and database technology. We will discuss a lot of technologies, trends, and tools but we don’t want you to get overwhelmed, so you need to decide first what do you want to do to become a web developer because that will help you to choose the right tools and technology to learn. There are a lot of different reasons to become a web developer some of the options are given below…
- You want to work for a company as a web developer which is the most popular and common reason.
- You want to work as a freelance developer to start your own business or agency.
- You can become a consultant for other companies.
- You can create your own app to make money.
- Computer & OS: You can’t write code without a computer and OS running on it. To learn web development you don’t need any kind of fancy computer (If you have it’s good…). You can use any kind of mid-range laptop or desktop. For the operating system, you can use MacOS, Windows (Latest version) or Linux whatever is comfortable for you.
- Text Editor / IDE: No doubt VSCode is good for most cases and most languages. It has good performance, great extensions, built in terminal and ton of features as well. You also have some other good options such as Sublime Text or Atom. If we talk about IDEs so Visual Studio (ASP.net or C#), Eclipse (Java),Code blocks(c or c++),Netbeans(Java,HTML 5 , C++,PHP) are good options.
- Web Browser: Most of developers first choice is either Chrome or Firefox. Chrome is fast and it uses V8 engine (JavaScript engine). Firefox has also come a long way and some of it’s good stuff is not in chrome browser. Both the browsers have fantastic dev-tools to to troubleshoot the issues in web development.
- HTML5 (Semantic elements, attributes, doctype, etc)
- CSS Fundamentals Colors, fonts, positioning, box-model etc.
- CSS Grid and Flexbox to align things or create coloumns.
- CSS Custom Properties
- Bootstrap is the most popular CSS framework to learn. Learning bootstrap helps in learning other frameworks as well.
- Tailwind CSS is other framework which is gaining popularity and it is little different than the others. It is a set of utility classes so that you can create your own buttons and other stuff which really looks different than the others. They are also highly customizable.
- Materilize
- Bulma
After learning HTML and CSS, the next thing that you need to learn is Javascript. It’s very important for developers to have a good command of javascript fundamentals. You will be using a lot of javascript with server-side languages such as PHP, Python or ASP.net and learning this language is much needed if you want to work with React, Angular, NodeJS or any other javascript framework or library.
- Domain Registartion (Namecheap, Google Domains etc.)
- Managed Hosting (InMotion, Hostgator, Bluehost, etc)
- Static Hosting (Netlify, Github Pages)
- SSL Certificate.
- FTP, SFTP (File Transfer Protocol) is good for smaller applications.
- SSH (Secure Shell) for advanced app.
- CLI and Git.
Front-End Framework and State Management
- React: library is the most popular to learn for web development and it’s fairly easy in comparison of other frameworks and library. There are lot of job available for React developers as well. You can use Redux and Context API with Hooks for state management.
- Angular :This framework is generally used in large organizations. It has pretty steep learning curve. Also it’s good to learn Typescript with Angular. It allows you to use optional static typing and support for the features of ES2015. NGRX and Services are good state managers to learn for this framework.
- React and Angular is best for web developer.
- Node.Js (Not a language but a runtime environement)
- Python (Good for absolute beginners)
- Java (Good for large organization)
- Php (Good for freelancing)
- Ruby (Less pupolar in 2020)
- C#
- Note: Whatever server-side language you prefer to learn, make sure that you learn about the data structures and algorithms using that language.
- Node.js– Express, Koa, Adonis, Feather.js, Nest.js
- Python: Django, Flask,
- Java: Spring MVC, Grails
- PHP: Laravel, Symfony, Codeignitor, Slim
- Ruby: Ruby on Rails, Sinatra
- C#: ASP.NET MVC
- GO: Revel
- Relational Database: RDBMS are still most popular databases. PostgreSQL, MySQL, MS SQL are still most preferred to use.
- NoSQL: MongoDB, RethinkDB, CouchDB
- Cloud Database: Firebase, Azure Could DB, AWS
- Lightweight & Cache: Redis, SQLlite, NeDB
This information is very useful for me
ReplyDelete