Web development
an introduction to digital creation
Last updated
an introduction to digital creation
Last updated
Web development comes in two main flavours:
The front-end (presentation-oriented programming, i.e. the display)
The back-end (data and logic-oriented programming, i.e. the data)
We will see that:
the line between the front-end and the back-end often blurs
computer science theory surprisingly still plays a large role in web development
To present data, we should assemble the following "3 S's":
Structuring (e.g. HTML)
to enforce the sensibility (order) of visual components
to ensure that everyone has access to a web resource
Styling (e.g. CSS)
to enhance the visual look-and-feel
Scripting (e.g. JavaScript, PHP, Ruby, etc.)
to manage user input and data changes
to connect the front-end with the back-end
Sometimes, front-end developers may have to take part in:
to adjust (resize, crop, etc.) visual assets provided by a client
to take the load off the design team, who might work with more complex imaging and graphics projects, by helping with simpler tasks such as image cropping
The back-end usually involves:
to process the results from database querying
Database querying (e.g. GraphQL, MongoDB, MySQL)
to get/set data from a database
Security
authorization allows a user into a system
identity check via username or, better yet, e-mail address
authentication checks to see if the user is genuine
passwords, secret questions and other two-factor methods
Each developer may also have to take part in:
to not only submit content "to the cloud" but also to ensure backups if something goes wrong
to allow for collaboration by multiple developers within the same project(s)
Deployment (e.g. FTP, Jenkins, Netlify, etc.)
to get that web project onto the Internet!
usually nowadays handled by a specialized team called development operations (or dev ops)
Documenting (e.g. GitBook!)
to communicate cases and learnings for obvious reasons
Organizing (e.g. SCRUM)
planning to ensure that all the programming, layout, look-and-feel, content, images (and any other assets) all come together, as smoothly as possible
to send completed projects for quality assurance and correct defects
to determine a release's suitability to go "into production" (i.e. on the internet)
to discuss after launch any shortcomings and room for improvement ("retro")
Optimizing
for more universal accessibility, better usability, improved speed
for enhancing the experience of the "finished" product
note: no product ever really gets "finished"
As one can gather, a lot of web development involves tasks other than simply programming!
to build upon other scripting languages (e.g. , )
Imaging (e.g. Photoshop or free )
Scripting (e.g. also , with some PHP, Ruby, Perl and older programming languages)
Versioning or version control (e.g. or Mercurial)
To begin with web development, let's have a look at our !