➡️Web development

an introduction to digital creation

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 later on this page that:

  • the line between the front-end and the back-end often blurs

  • computer science theory plays a large role in web development in surprising ways

The front-end

To present data, we connect the following "3 S's":

  • Structuring (i.e. HTML)

    • to enforce the sensibility (order) of visual components

    • to ensure that everyone has access to a web resource

  • Styling (i.e. CSS)

    • to enhance the visual look-and-feel

  • Scripting (i.e. JavaScript, PHP, Ruby, etc.)

    • to manage user input and data changes

    • to connect the front-end with the back-end

🛡️pageHTML🖼️pageCSS🟨pageJavaScript⚛️pageReact

Sometimes, front-end developers may have to take part in:

  • Imaging (e.g. Photoshop or free Photopea)

    • 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

The back-end

The back-end usually involves:

  • Scripting (e.g. also JavaScript, with some PHP, Ruby, Perl and older programming languages)

    • to process the results from database querying

  • Database querying (e.g. GraphQL, MongoDB, MySQL)

    • to get/set data from a database

  • Security

    • Authorization - allowing a user into a system

    • Authentication - checking if the user is genuine

All developers

Each developer may also have to take part in:

  • Versioning or version control (e.g. Git or Mercurial)

    • 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)

🐙pageGit
  • 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)

🚀pageDeployment
  • Documenting (e.g. GitBook!)

    • to communicate cases and learnings for obvious reasons

  • Organizing (e.g. SCRUM)

    • to ensure that all the programming, layout, look-and-feel, content, images (and any other assets) all come together, so that the development experience goes 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)

  • Optimizing

    • for more universal accessibility, better usability, improved speed

    • for enhancing the experience of the "finished" product

      • note: no product ever really gets "finished"

🚧pageAccessibility

As one can gather, a lot of web development involves tasks other than simply programming!

To begin with web development, let's have a look at our workspace!

Last updated