Introduction To Web Development, Hackr - Io
Introduction To Web Development, Hackr - Io
Introduction To Web Development, Hackr - Io
to Web
Development
Absolute beginners guide to
getting started with Web Development
Preface
“Most good programmers do programming not because they
expect to get paid or get adulation by the public, but because it
is fun to program.”
- Linus Torvalds
Creator of Linux Operating System
Index
Section 1 - Introduction
Introduction to Software Development 3
What/Who is a Web Developer? 5
Why Web Development? 7
Databases 20
Servers 21
1
Section- 1
Introduction
Introduction to Software Development
What/Who is a Web Developer?
Why Web Development?
Chapter 1
Introduction to Software Development
Why coding?
Before we get into the steps you can take to become a developer, we
must first dive into why you would want to go down this path. Every
decision that will require significant time of your life should be justi-
fied. Time, after all, is the most important resource we have:
3
D. The biggest industry growth in the last couple of years has been in
the cryptocurrencyhttps://hackr.io/tutorials/learn-artificial-intelligence-ai
(Bitcoin), and artificial intelligence (Machine
Learning) space. We interact with technology on the daily basis, and
you want to not be left behind in the dust as these things take over
our future. You want to understand and be able to pick up these skills.
E. You think change is good, and learning should never stop. So why
not do something new?
4
Chapter 2
What/Who is a Web Developer?
Here’s the simple answer to this question: “They build and maintain
websites.”
In other words, they literally create how you experience the web. And
for those websites who want users to enjoy their experience, they
need great web developers – and they’re usually willing to fork over
some serious cash to get these great web developers.
5
2- Backend development: The “backend” is like the portion of the
iceberg below the surface. Without it, the website can’t function.
The backend deals with things like servers, applications, and data-
bases.
3- Full-stack development: This is the combination of both backend
and frontend development.
6
Chapter 3
Why Web Development?
Put simply, if you can develop this skill, you won’t have a hard time
finding work for the foreseeable future.
So, what do you think? Does all of this get you excited about the idea
of becoming a web developer? If so, you’re in the right place – be-
cause you’re about to learn the steps you need to take to become
one!
8
Section- 2
FRONT END
DEVELOPMENT
HTML- The Skeleton of a webpage
CSS- Beauty of a webpage
JAVASCRIPT- Behaviour of a webpage
User Interface Design/User Experience Design
Responsive Web Design
Chapter 4
HTML- The Skeleton of a webpage
HTML
HTML stands for Hypertext Markup Language. It’s one of the main
ingredients of any website and one of the so-called frontend
languages.
<title>…</title> The title tag is the title for the page. This is
useful both for search engines (when they scan and index pages) and
users (it shows up in a browser’s title bar) by explicitly stating the pri-
mary topic of each page.
10
Sample HTML code with various html elements. 1. links 2. UI elements 3. list items 4. UI elements
Image source: https://www.wikitechy.com
11
Chapter 5
CSS- Beauty of a Webpage
CSS
As you can see in the image above that with CSS you can change
font-size, background-color, padding, margin, height or width etc of
the webpage to make it look the way you want.
12
Chapter 6
JAVASCRIPT- Behaviour of a Webpage
Javascript
13
Chapter 7
User Interface Design/User Experience
Design
14
To learn the building blocks of design skills, I recommend learning the
Adobe Creative Suite. Photoshop should be the first thing you dive
into, as it’s the go-to for most serious designers. If you don’t like
Adobe, you can also dive into Sketch, which is a rising star among
designers.
Here are some resources for understanding and learning UI and UX:
The Difference Between UX and UI Design-A Layman’s Guide
https://www.careerfoundry.com/en/blog/ux-design/the-difference-between-ux-and-ui-design-a-laymans-guide/
Learn UI Design
http://design.instructy.io/tutorial/learn-ui-design
Fundamentals of UI Design- Invision
http://design.instructy.io/tutorial/fundamentals-of-ui-design
15
Chapter 8
Make Sure Your Site is Responsive
When you’re creating your own website (which will be a good idea if
you want to get more clients) – you should make sure your site is
responsive.
16
Section 3
BACK END
DEVELOPMENT
Programming Languages
Databases
Servers
API- Application Programming Interface
Introduction
To understand the back end, or the “server side,” you have to know
the front end very well and how the two interact. The front end, also
called “client-side” programming, is what happens in the browser—ev-
erything the end users see and interact with. The back end, on the
other hand, happens on the server (on site, or in the cloud) and data-
bases. It’s the machinery that works behind the scenes—everything
the end user doesn’t see or directly interact with, but that powers
what’s happening.
The “traditional” back end is a mix of the server, databases, APIs, and
operating systems that power an app’s front end.
17
Chapter 9
Programming Languages & Frameworks:
The Nuts & Bolts
Back-end developers can choose from a variety of languages and
frameworks depending on the type of application they’re building, its
specific processing requirements, and what other components already
exist on the back end.
Languages will differ in file size, performance, compatibility, how
many lines of code required, and the style of programming. Some
back-end scripting languages are object-oriented programming lan-
guages, a style of programming that bundles attributes and functions
within objects. Other languages may be compiled rather than inter-
preted, something that affects load time, readability, and processing
power required to run the application.
A majority of sites are built on PHP, making it one of the most popular
back-end scripting languages. But there are plenty of others to
choose from. For instance, you may want to use the processing power
of Python for a data-driven site, or leverage the speed of lightweight
languages like Ruby for faster prototyping. It’s up to you and your
developers, and every language has its pros and ideal applications.
18
Take a look at a few of the other big hitters in back-end programming,
like:
https://hackr.io/tutorials/learn-java
Java
https://hackr.io/tutorials/learn-c-sharp
C# and C++
https://hackr.io/tutorials/learn-asp-net
.NET
https://hackr.io/tutorials/learn-perl
Perl
https://hackr.io/tutorials/learn-scala
Scala
https://hackr.io/tutorials/learn-node-js
Node.js (and JavaScript)
https://hackr.io/tutorials/learn-django
Django (for Python)
https://hackr.io/tutorials/learn-java-spring-framework
Spring framework (for Java)
Node.js Frameworks like MeteorJS and ExpressJS
https://hackr.io/tutorials/learn-node-js
https://hackr.io/tutorials/learn-ruby-on-rails
Ruby on Rails
https://hackr.io/tutorials/learn-symfony
Symfony (for PHP)
JSF (Java Server Faces)
https://hackr.io/tutorials/learn-java
That covers the most basic concepts and tools of back-end develop-
ment, but there’s still more to learn.
19
Chapter 10
Servers: The Machinery
Here are some resources for you to read more about servers:
Windows Server Administration Fundamentals
https://hackr.io/tutorial/windows-server-administration-fundamentals
Ubuntu Server Fundamentals
https://tutorials.ubuntu.com/tutorial/tutorial-install-ubuntu-server#0
20
Chapter 11
Databases: The Storage
Databases, in the context of a website, are the brains that make web-
sites dynamic. Any time you request something from a web-
site—whether you’re searching for a product in on online store or
searching for hotel locations within a specific state—the database is
responsible for accepting that query, fetching the data, and returning
it to the website. Databases can also accept new and edited data
when users of a website or application interact with them. The client
can change information in a database from the browser, whether a
user is posting articles to a CMS, uploading photos to a social media
profile, or updating their customer information.
Here are some resources for you to read more about databases:
Try SQL
https://hackr.io/tutorial/try-sql
21
Chapter 12
APIs: A Crucial tech in Back End
Programming
You can’t talk about the back-end portion of an application these days
without touching on APIs (application programming interfaces) and
how they connect software, applications, databases, and services
together seamlessly. APIs play an integral role in how most server-side
software architectures are built, oftentimes replacing more compli-
cated programming to allow software to communicate and data to be
transferred.
Here are some resources for you to read more about API’s:
https://www.upwork.com/hiring/development/intro-to-apis-what-is-an-api/
What is an API?
Public APIs vs. Private APIs: What’s the Difference?
https://www.upwork.com/hiring/development/public-apis-vs-private-apis-whats-the-difference/
SOAP vs. REST: Comparing Two API Architectures
https://www.upwork.com/hiring/development/soap-vs-rest-comparing-two-apis/
22
Section 4
DEVELOPER
ESSENTIALS
Data Structures and Alogrithms
GIT
SEO
Chapter 13
Data Structures and Algorithms
Here are some resources for you to read more about Data Structures
and algorithms:
https://hackr.io/tutorial/geeks-for-geeks
Fundamentals of Algorithms
Data Structures - Geeks for Geeks
https://hackr.io/tutorial/data-structures-geeks-for-geeks
Introduction to Algorithms - MIT OpenCourseWare
https://hackr.io/tutorial/introduction-to-algorithms
23
Chapter 14
GIT: Version Control
Well, in a nutshell, it’s an open source version control system that was
created to help people collaborate with code. Of course it’s more
complicated than that, but that describes the basics.
Here are some resources for you to read more about GIT:
Pro Git Book by Scott Chacon and Ben Straub
https://hackr.io/tutorial/pro-git-book-by-scott-chacon-and-ben-straub
24
Chapter 15
SEO: Search Engine Optimization
SEO stands for Search Engine Optimisation. This refers to the process
of improving a website’s rankings within a search engine like Google.
It’s one of the most important skills in online business.
But you may be thinking, “If I’m a developer, why do I need to worry
about how well a site ranks in the search engines? Isn’t that the job of
the bloggers and content creators?”
Well yes, a large part of a website’s SEO has to do with the content.
But the actual structure and code of the website plays a role as well.
For example, heading tags (HTML) are extremely important for SEO.
They tell search engines what’s really important on a website.
Now, do you need to be an SEO expert? Absolutely not. But you
should definitely learn the basics of SEO, and keep SEO in mind while
you’re creating each website. In doing so, you’ll give the website a
much greater chance of success, and make your web development
client that much happier.
Here are some resources for learning the basics of SEO:
The Beginner’s Guide to SEO
https://hackr.io/tutorial/the-beginners-guide-to-seo
The
https://hackr.io/tutorial/the-web-developers-seo-cheat-sheet-20
Web Developer's SEO Cheat Sheet 2.0
https://hackr.io/tutorial/link-building-the-definitive-guide
Link Building: The Definitive Guide
25
It’s not over yet!
26
Acknowledgements
[Learn to code in 2018, get hired, and have fun along the way](https://hacker-
noon.com/learn-to-code-in-2018-get-hired-and-have-fun-along-the-way-b338247eed6a)
ginners-guide-to-back-end-development/)
sics-back-end-development/)
Git basics-1
[Learn to love Git. Part one: The basics. – Designing Atlassian – Medium](https://medium.com/designing-atlas-
sian/learn-to-love-git-part-one-the-basics-90429f456ace
HTTP:
SSH:
https://semaphoreci.com/community/tutorials/getting-started-with-ssh
SEO