The Gregory Jay Blog



Creating a custom New Tab page to increase productivity and reduce procrastination



I do enjoy so tweeking and customising the setup of my PC. I had been using a plugin to customise my new tab page which gave me a grid of pictures, each a link to a site I had saved there. I forget the name of the plugin but I had used it happily for a number of years happily on Palemoon (A free and open sourceweb browser based on firefox.)

I had moved from Firefox to Palemoon when they updated and required pulse audio installed in Linux systems for audio to work. As Palemoon was forked from an earlier version of Firefox it was the perfect solution. However, about a year ago Palemoon's ad blocker decided to crap out. I'm willing to put up with a lot to stay FOSS and be security concious but I drew the line at having to sit through ads on youtube, especially now as they are before, after and during the videos! So I jumped ship to Brave which uses the chromium engine and so (I'm getting back on topic now) my extensions would no longer work.

I did like the custom grid of links don't get me wrong. But there were a few problems with it.

The first of which is the setup, I mean it's not a huge amount of work but if you want to constantly change the links availble it can be a slight obsticle. Often times i wanted to have easy access to a site or blog post that I had come accross but didn't have enough time in the moment to finish reading. I just wanted it to be there so that next time I had some time I would see it and could read the article. Having to go through a whole process of finding an image and creating the link was just more trouble than it was worth in the moment.

Next was the limited number I could have, I think it was 16 with the plugin I was using. It was enough to cover my most used sites but sometimes I just wanted quick access to more. The grid of pictures was nice looking but I really didn't need a picture for every link I wanted access to.

The reason I stopped using it was another problem I didn't want to have to face again too. That of it not being compatible with other browsers. We all change browsers, usually not very often but still the idea that certain basic plugins are tying you to a particular browser just creates unwanted friction. Most of my computers have more than one browser installed on them anyway and so having something that was browser independant just made sense. Right now I use Brave as my primary browser on my PC but I use qutebrowser on my laptop (I find it engourages me to get more work done by making it more of a hassle to watch youtube) but I have chromium installed on the computer connected to my TV in the living room (I find it works better with Chinese sites which is important to my wife.) I also have surf installed on all my machines as it works well when I need something lightweight for a bashscript which requires a browser.

Really the sites I want access to on my new tab page are my bookmarked sites, with the ones I use most frequesntly on top but still with access to all the others. I had long since stopped using browsers' in-built bookmarking systems for many of the reasons I point out above. I have them all saved in a SQL database that I can sync to all my computers and devices and so have access to anywhere. The other benefit of having them in a database is that I can create my own scripts to create and access them anyway I want. This means I can create categories and have extra notes added to my bookmarks.

I usually use dmenu to access my bookmarks by category and have a script that will open them in my prefered browser. Creating them is also very quick as both of these functions are bound to key presses. This means that if I am writing something and then quickly need access to a bookmarked site to find a peice of information I can do it with a quick keypress, even if I don't have a browser open already.

Having all of these bookmarks availble to me when I open a new tab would be more than just convinient. At first I created a quick and dirty html file with a list of links and changed my browsers keybinding to a script that opened the html file in the browser. This was a good start, every time I opened the browser I could have a list of my favorite sites but I wanted more! I wanted it to open this file when I hit the new tab button and I wanted it to pull the links from my database and update it automatically when I added new bookmarks to it. I also wanted my pictures back! At least for my most important bookmarks.

I created a quick script that pulled the links from the database and turned it into a html file by adding html tags around the urls. I added this script to the bottom of my bookmark script so that everytime I created or deleted a bookmark it ran the script and remade the html file with the new changes. I then pointed the browser at this file when it opens a new tab and then I manually found pictures for my most important bookmarks. Within the space of about an hour I had my perfect new tab page!

I also found some good strategic uses for this new tab page. I can hide pages that I want to use less or pages that I waste too much time on and want to make less easy to find and open and I can strategically place pages closer to the top that I want to be easier to access such as sites related to current projects I need to finish.

I have a section of the new tabs page with temporary sites, things I need to read and can then be removed.

Overall this is a small increase to my productivity but it is these types of small changes that make big differences in the long run!

My new tab script can be found at my github page

Greg is a true Sinophile, fluent in Chinese and proficient in Tibetan he is a homeschooling Dad that also consults on the side. You'll often find him cigar in mouth, book in hand, waiting for someone to finish their work or for the coffee to brew.