Difference between revisions of "Learn current web development without proprietary software"
(→HTML5) |
(→The Basics) |
||
Line 10: | Line 10: | ||
=== CSS3 === | === CSS3 === | ||
− | === Algorithms and Data Structures | + | * [https://learn.freecodecamp.org/ freeCodeCamp's Responsive Web Design Certification] |
+ | |||
+ | === Basic JavaScript Programming, Algorithms and Data Structures === | ||
+ | * [https://learn.freecodecamp.org/ freeCodeCamp's Javascript Algorithms And Data Structures Certification] | ||
+ | |||
=== Bash Basics === | === Bash Basics === | ||
[https://en.wikipedia.org/wiki/Bash_(Unix_shell) Bash] is an acronym for "Bourne-Again Shell," a Unix shell and command language written by Brian Fox for the GNU Project as a libre software replacement for the proprietary Bourne Shell. The Free Software Foundation funded the development of Bash directly, with Brian Fox working as an employee. | [https://en.wikipedia.org/wiki/Bash_(Unix_shell) Bash] is an acronym for "Bourne-Again Shell," a Unix shell and command language written by Brian Fox for the GNU Project as a libre software replacement for the proprietary Bourne Shell. The Free Software Foundation funded the development of Bash directly, with Brian Fox working as an employee. | ||
Line 20: | Line 24: | ||
=== HTTP Basics === | === HTTP Basics === | ||
+ | |||
+ | * [https://www.youtube.com/watch?v=mudOTSUumXg Harvard CS50 Lecture 5] | ||
== Specialization == | == Specialization == |
Revision as of 13:36, 6 October 2019
This is a self-study guide for learning the current (and conventionally standard) web development technologies without compromising on freedom. It should help take the reader from no coding experience to being able to get work as quickly as possible and follow with recommendations on refining and progressing your skills as an intermediate.
The Basics
These are the fundamentals all web developers should know, regardless of specialization.
With just the fundamentals, you may be able to get a relatively lower-paying job or an internship, so it's worth starting your job hunt as soon as possible if only to familiarize yourself with the process, which stacks are in demand, and how much different kinds of work pay. You'll also need to be able to differentiate between bad job postings and reasonable ones.
HTML5
CSS3
Basic JavaScript Programming, Algorithms and Data Structures
Bash Basics
Bash is an acronym for "Bourne-Again Shell," a Unix shell and command language written by Brian Fox for the GNU Project as a libre software replacement for the proprietary Bourne Shell. The Free Software Foundation funded the development of Bash directly, with Brian Fox working as an employee.
Since GNU/Linux runs the majority of web servers, you should be comfortable in a Unix environment. Further, there are many powerful tools that only have a command line interface, and you'll be able to automate mundane tasks with Bash scripts. At this stage you should learn command basics (options, arguments, getting help), filesystem basics and navigation, basic package management, pipes and redirects, and basic scripting.
Version control with Git
Git was created by Linus Torvalds in 2005 for the development of the Linux Kernel. Git is the most popular version control system. Version control makes it easier to collaborate with other developers, enables you to work on different features concurrently, and lets you quickly scrap bad ideas. Once you know version control, you may be able to make small contributions to libre software projects.
HTTP Basics
Specialization
Front-end
ES6
npm
A Front-end JavaScript Framework
- React.js
- Angular
- Vue.js
Back-end
Devops
Beginner-friendly libre software projects
Here are some libre software projects that are friendly to first-time contributors.