About us

Breaking

2021/04/09

web development as an absolute beginner

Intro

If you want to learn web development, where  do you even start? It's hard to find the right advice without suffering from information overload. That's why I've created this beginner's roadmap! It lays out all the basics you need to learn  web development. We're going to go through each step so by the end of this guide you'll have an  understanding of the basics of web development and what skills you need to learn recommend doing.  Steps 1 2 & 3 in order then depending on whether you want to focus on more front-end or back-end  you can do steps 4A or 4B. I personally think it's a good idea for front-end web developers to  learn at least a little bit of back-end and vice versa. Knowing the basics of both will help  you know if you like front-end or back-end web development better sound good. Let's dig deeper  into the roadmap before you get into actual coding you'll need to understand some general concepts.

What is Web Development

As you start your journey into web development how websites work the difference between front-end and  back-end and using a code editor.All websites at the most basic are just a bunch of files that are  stored on a computer called a server. This server is connected to the Internet. You can then load  that website through a browser like Chrome Firefox or Safari on your computer or on your phone.  Your browser is also called the client in this situation so every time you're on the Internet  you the client are loading data from the server as well as submitting data back to the server this  back and forth between the client and the server is the basis of the internet. 

Web developer roles  typically fall into three categories. Front end, back end and full stack. The terms front end. back end and full stack web developer describe what  part of the client-server relationship that you're  working with. 

  • Front end means that you're dealing  mainly with the client-side. It's called the front  end because it's what you can see in the browser.  
  • Conversely the back end is the part of the website  that you can't really see but it handles a lot of  the logic and functionality that is necessary for  everything to work.
 One way you can think about this is that front-end web development is like  the front-of-house part of a restaurant it's a  section where customers come to see and experience  the restaurant the interior decor seating and of  course eating the food. On the other hand back-end  web development is like the back of house part of the restaurant it's where deliveries and inventory  are managed and the process to create the food all  happens there's a lot of things behind the scenes  that the customers won't see. They will experience  and hopefully enjoy the end product a delicious  meal. Fun illustrations aside both front-end and  back-end web development serve different but very  important functions when you build a website the most essential tool that you'll use is your code  editor or IDE integrated development environment.  This tool allows you to write the markup and code  that will make up the website there are quite a few good options out there but currently the most  popular code editor is VS code. VS code is a more  lightweight version of Visual Studio Microsoft's  main IDE. It's fast free easy to use and you can  customize it with themes and extensions. Other  code editors are sublime text Adam and vim if you're just getting started though I'd recommend  checking out Vs code which you can download from their website. 

 Front end Web Development

Now that we've covered some of the  broader concepts of what web development is let's get into more of the details starting with the  front end. Front end basic tools are 
  • HTML
  • CSS
  • Java Script

 The front end of a website is made up of three types of files HTML, CSS and JavaScript.  These files are what is loaded in the browser on a client-side. HTML or hypertext markup language  is the foundation of all websites.It's the main file type that is loaded in your browser. When you  look at a web site the HTML file contains all the content on the page and it uses tags to denote  different types of content. For example you can use tags to create headline, titles, paragraphs, bulleted, lists, images and so on. HTML tags by themselves do have some Styles attached but they're pretty basic  kind of like what you would see in a Word document. CSS or cascading style sheets lets you style that  HTML content so it looks nice and fancy you can add colors custom fonts and lay out the elements  of your website. However you want them to look you can even create animations and shapes with  CSS. There's a lot of depth to CSS and sometimes people tend to gloss over it so they can move  on to things like JavaScript. However it's really important to be able to convert a design into  a front-end website layout using CSS java script is a programming language that was designed to  run in the browser using JavaScript. You can make your website respond to different inputs from the  user or other sources. For example you can build a back to top button that when the user clicks it  they'll scroll back up to the top of the page. As we mentioned HTML CSS and JavaScript are the  basic building blocks of front-end web development in addition to them there are a few other tools  that you'll want to learn at this point. Package managers are online collections of software much  of it open source each piece of software called  a package is available for you to install and  use in your own projects. You can think about  them like plugins instead of writing everything  from scratch. You can use helpful utilities that  other people have written already for instance  you can simply use a slider plug-in instead of having to code it all yourself which could take  days to figure out. Why reinvent the wheel if you don't have to the most popular package manager is  called NPM or node package manager.You can also use another manager called yarn both are good  options to know and use. Although it's probably best to start out with NPM in addition to package  manager is you'll want to become familiar with build tools module blunders and build tools are  another essential part of the front-end workflow. On a basic level these tools run tasks and process  files you can use them to compile your sass files to CSS transpire. Your ES6 java script files down  the ES5 for better browser support run a local web server and many other helpful tasks saving  you a ton of hassle. If you were to try to do all these essential steps by yourself three tools  that you'll continue to come across. A lot are gulp web pack and parcel. Personally I like using  gulp for my own front-end workflows where I just want to compile my sass and JavaScript files and  not do too much else. The last tool you'll need to learn about in this stage is version control. 


 

  • Version control also called source control is a system that keeps track of every code change  that you make in your project files you can even revert to a previous chain if you make a mistake  it's almost like having infinite save points for your projects and let me tell you it can be a huge  lifesaver. The most popular version control system  is an open source system called git using git you  can store all your files and then change history in collections called repositories. You may also  have heard of git hub which is an online hosting  company owned by Microsoft where you can store  all your git repositories. At this point you've  learned the basics of friend development and  have a choice to either delve into additional friends skills or learn about basic back-end web  development with additional front-end. 

There are some more intermediate skills that you will  want to learn I recommend that you look at the following SAS responsive design and a JavaScript  framework SAS is an extension of CSS that makes writing styles more intuitive and modular it's  a really powerful tool with sass you can split up your styles into multiple files for better  organization create variables to store colors and fonts and use mix-ins and placeholders to easily  reuse styles even if you utilize just some of the basic features like nesting you'll be able to  write your Styles quicker and with less headache responsive design ensures that your sales will  look good on all devices desktops tablets and mobile phones the core practices of responsive  design include using flexible sizing for elements as well as utilizing media queries to target  styles for specific devices and widths for example instead of setting your contents to be a static  400 pixels wide you can use a media query and set the content to be 50% width on desktop and 100%  on mobile building a website with responsive CSS is a must these days especially as mobile traffic  is outpacing desktop traffic in many cases once  you have the basics of vanilla JavaScript down you  may want to learn one of the JavaScript frameworks especially if you want to be a full-stack  JavaScript developer these frameworks come with prebuilt structures and components that allow  you to build apps quicker than if you started from scratch. Currently you have three main choices react angular and view react which is technically a library was created by Facebook and is the most  popular framework right now. Angular was the first big framework and it was created by Google it's  still very popular even though it's been surpassed by react recently and views a newer framework  created by Evan. You a former angular developer well it is smaller news and react and angular is  growing quickly and is also considered easy and fun to use. You might be wondering now okay well  which framework is the best. The truth is they are all good and web development there's almost never  a single choice that is 100%. The best choice for every person in every situation. Your choice will  most likely be determined by your job or it simply by which one you enjoy using the most.If your end  goal is to land a job at a company try researching which framework seems to be the most common in  potential job listings. Don't worry too much about which framework to choose it's more important that  you learn and understand the concepts behind them and once you learn one framework it'll be much  easier to learn other ones after that.

Back-end Web Development

 let's move on now to our last section back-end web development.  The back-end or server side of web development is made up of three main components. A server-side programming language and the database.As we mentioned at the very beginning  the server is the computer where all website files the database and other components are stored.  Traditional servers run on operating systems such as Linux or Windows.They're considered centralized  because everything the website files back-end code and data are stored all together on the server.  Nowadays there are also server-less architectures which is a more decentralized type of setup this  type of application splits up those components and leverages. Third-party vendors to handle each  of them despite the name though. You still do need some kind of web server to at least store  your website files. Some examples of service providers are AWS Amazon Web Services or nullify.  Cir furless set ups are popular because they are fast cheap and you don't need to worry about  server maintenance. They're great for simple static websites that don't require a traditional  server-side language. However for very complex applications the traditional server setup might  be a better option on the server. You need to use a programming language to write the functions  and logic for your application. The server then compiles your code and conveys the result back  to the client popular programming languages for the web include PHP Python Ruby c-sharp and Java  there is also a form of server-side JavaScript node.js which is a runtime environment that  can run JavaScript code on the server. 

 

Data Base

Finally you'll need to learn about databases databases as  a name implies are where you store information on your server for your website. Most databases use a  language called SQL pronounced sequel which stands  for structured query language in the database.  Data is stored in tables sort of like complex Excel documents then you can write queries in SQL  in order to create read update and delete data.The database is run on the server meeting servers  like Microsoft sequel server on Windows servers and my sequel for Linux. There are also no sequel  databases which store the data in JSON files as opposed to the traditional tables. One type of no  sequel database is MongoDB which is often used  with react angular and view applications. Some  examples of how data is utilized on websites are if you have a contact form on your website  you could build the form so that every time someone submits the form their data is saved on  to your database. You can also store user logins on the database and write logic in the server-side  language to handle checking and authenticating the logins and that's how I would recommend you start  your journey into web development.

 

 

 

 

 

        

 

 

         

No comments:

Post a Comment