Web Specific Stuff

The web world is like marmite to developers, you either love it or hate it, but regardless of your opinion it is one of the biggest and most active parts of the development world. There is also a big movement from native desktop/mobile apps to wrapping webapps as native apps using technologies like Electron and PhoneGap/Cordova, there are even hybrid frameworks like React Native or NativeScript. As this will be a big section we will break it down into 2 sections, front end and back end.

Even if you are a game developer and dont want to care about the web world, there will still be some useful knowledge here as larger games often need web apis, databases and other fancy web tie ins, so its worth learning this stuff as a lot of the tech and approaches will carry over.

Front End

The front end world covers all the tooling and tech around html/css/js, now this may instantly turn a lot of you off as this is simple stuff right? any monkey can do html and css, and while its easy to just pick up and make simple websites like in the days of scrolling <marquee> tags it is quite difficult to make a sensible web application making best use of front end technologies.

It is assumed that you already know what html and css is and have a basic knowledge of javascript, if not go have a look at w3schools or some other resource to get up to speed on what each thing is as we will be going into the web world at a far higher level than simple html/css

Modern front end technologies mean that websites function more like applications, there are design patterns, dependency injection, unit tests, build scripts and lots of other crazy stuff happening to make the rather sketchy javascript world seem almost elegant and functional.

We will cover things like:

  • MVVM Style Frameworks (Not all are MVVM but most have the notion of view binding, and there are loads of them)

  • Webpack (How to transpile and bundle apps)

  • Promises (If you know .net tasks, same sort of thing)

  • NPM (Package management for js stuff, like Nuget for C#)

Back End

The back end world is equally as vibrant as the front end world, and there are a myriad of technologies and languages to think about, as you can make web api/apps in C# with ASP.Net based tech, NodeJs technologies and many others. We will mainly focus on ASP.Net and Node as they are both quite popular and offer slightly different takes on how to approach back end applications. There is also some discussion to be had on native app wrapping, such as using Electron to create a website which can be run as a native application, this technology is what tools like VSCode, Slack, Discord, GitKraken and many others use.

We will cover things like:

  • Web Apis

  • Databases

  • Some high level patterns

  • Database offerings

Last updated