Launching ToolsForProductivity, Part 1 / 3
Let’s consider the launch of this website to evaluate how well (if at all) I have managed to implement the ideas detailed in my earlier post, “Seek Challenges to Improve Skills”. Initially, I decided to host the website with Firebase as well as use it as the framework for further development. I got past the initial set up for Firebase hosting, was able to install Google Analytics and configure my Custom Domain. As I kept building the site, I found it difficult to connect the content of the website with what was actually being generated and deployed. This was due to the fact that Firebase is an advanced tool to build applications and as mentioned in the Firebase Project Overview1, it actually “generates a Google Cloud Project behind the scenes”. I realized that the development process was becoming challenging without necessary skills (at the moment) and I made the decision to leave Firebase for a simpler setup.
Migrating away from Firebase Hosting
Migrating away from Firebase was necessary as the various advantages of using it are not currently relevant for me while I have other challenges to deal with such as running the website, writing the content and curating my ideas and thoughts. Currently, for the Tools For Productivity website, I need to focus on writing quality content (hopefully such as this one). Thus, I decided to move my custom domain away from Firebase leaving only the demo applications deployed2.
Static Site Generators
After my struggles with using Firebase, I decided to take a cleaner approach to building the site, writing the content with markdown and allowing a static site generator to generate the actual web content. There is more transparency with this approach and all I needed to do was to select the right static site generator. This was easier said than done as there are multiple options and I ended up spending some time and effort to evaluate the tools available3.
While I was much more familiar with Jekyll4 (due to Github Pages), I did seriously consider other static site generators, deliberating on whether to continue with Jekyll or try something totally new. The need for considering other options was due to the fact that other static site generator tools seem to be more active in terms of updates and support. The number of options available today for something as simple as a Static Site Generator is incredible5.
Two candidates, I considered seriously were Hugo and Bridgetown. The concepts from my earlier post alongwith my earlier struggles with Firebase helped me in making a good decision and I did not venture out with either of the tools (Hugo or Bridgetown) due to my complete lack of skill, experience or knowledge of those tools. I decided to go with Jekyll and I believe that has really helped me to focus on building the actual site even if frequency can be improved further.
Summary
The decision to go with Jekyll and avoiding the myriad options available (especially the tempting options of Hugo or Bridgetown) was a good decision in hindsight. Even working with Jekyll, a relatively simple tool, there is a lot to learn and many aspects to improve on while using it. For instance, one can get caught up in multiple issues with the Ruby framework to run the Jekyll server for local testing and I hope to cover such issues in more detail later.
-
Architecture of a Firebase Project - Firebase Project Overview ↩
-
Checked my Firebase Console at the time of writing this article and found two applications - https://tools-for-productivity.web.app/ as well as https://tools-for-productivity.firebaseapp.com/ that are still running as of date. ↩
-
StackBit Article - Choosing Your SSG ↩
-
Jekyll - Simple, Blog-aware, Static Sites ↩
-
As of date, 360 static Generators on Jamstack ↩