OSS Made Me Do It: Personal Website

OSS

This website would not exist without open-source software. Many applications that are popular would not exist without open-source software. And even some jobs would be impossible without open-source software. So I guess OSS is quite important.

If I have seen further it is by standing on the shoulders of giants.

Isaac Newton

But back to my website. On the outside, it may look simple, but many complicated concepts were used during its creation. Different languages, tools that convert and optimize code, mechanisms for putting everything together. Of course, plain old HTML, CSS, and JS can still be used, but nowadays it's just not enough.

Tech leaders are constantly raising the bar on expectations. Websites are getting faster, they have more features and can do a lot more than before. Sometimes the edge between a desktop application and a web-based one is so thin that it's hard to notice. Consider some of the popular ones like Gmail, Dropbox, Google Docs. Before a user needed an email client installed and configured on a computer. And ftp program with an external preconfigured host to upload and download files. And a locally installed, often heavyweight, word processor.

And by using community made open-source software it is possible to catch up to and even surpass your end-users expectations. And everyone can agree that a happy user is always good for business.

OSS made me do it

Acknowledgements

Many different tools were used in the process of creating this website. If I missed some it's not because they are unimportant (amnesia happens).

  • Gatsby - Blazingly fast site generator for React that can be used for building blogs, e-commerce sites, and full-blown apps.
  • React - A library for building modern, fast and maintainable user interfaces and in my case websites.
  • TypeScript - An open-source programming language which is a strict syntactical superset of JavaScript, and adds optional static typing to the language. In other words, building complex projects get a lot easier.
  • SASS - As its name implies, Syntactically Awesome StyleSheets, it's an extension for CSS language, that adds numerous features, which have become an industry standard by this point.
  • Node.js - "[…] is an open-source, cross-platform JavaScript run-time environment that executes JavaScript code outside the browser". What was not hard or impossible before, is simple thanks to Node.js.
  • Netlify - A hosting provider that simplifies the building, deploying, and managing of modern web projects. And it's also free.
  • GitHub - "[…] brings together the world's largest community of developers to discover, share, and build better software". As their description state, OSS is possible because of GitHub and similar services that simplify cooperation.
  • Visual Studio Code - A lightweight but powerful source code editor which runs on your desktop and is available for Windows, macOS, and Linux. It comes with built-in support for JavaScript, TypeScript and Node.js and has a rich ecosystem of extensions for other languages.