The Last Tab Conundrum

by Matt Copperwaite 6 months ago

The closing of the last tab has inconsistent results between multiple applications and OS's. It amused me lately when looking at the wide variety of options and realised that my preference is not the one that may be best for users.

So what happens when you close the last tab?

Firefox on Desktop

Firefox by Mozilla is a browser that prides it'self on usability, however has been falling out of favour lately against the faster, sexier Chrome.

Firefox Desktop

So the first thing to note is that there is no close button on the last tab. As soon as the number of tabs hits 1 the close button suddenly vanishes. I can understand this design decision, it prevents accidentally closing Firefox by miss-clicking on the last tab but it also means the tab close button (and associated keyboard short-cut) is no-longer consistent, meaning you cannot depend on it being there and may unnerve some in-experienced users.

Firefox on Android

Mozilla, looking to expand their horizons, also has a Android version of their very popular browser and if you haven't tried it yet, give it a go, it isn't half bad.

Firefox Desktop

By closing the last tab in the browser with the tiny X at the side (once you have opened the tab list) you instantly get another tab with a screen full of the latest or most popular sites you have visited. This functionality is pretty friendly, especially for mobile when closing an app is done in a universally consistent way but I'm not sure anyone would accidentally go to all the effort of finding the X button in the tab list and find their browser closed when they least expected it. The inconsistency with the desktop browser is a weird decision.


Chrome and it's open source parent Chromium have been a unmitigated success over the last few years and is still my preferred browser, but it's tab closing may seem a little strange to some.

Firefox Desktop

In Chrome closing the last tab closes the program. I actually really like this feature -- and it is how I configure Firefox once I install the plethora of add-ons I require for me to enjoy my Firefox experience. However for the novice user this may be a scary and unexpected result. I'm pretty sure any long standing Chrome fan will have at least once accidentally closed the last tab and ultimately browser. At least re-opening Chrome is so fast you tend not to fret over it for long.


Gedit in-case you didn't know is a fairly rudimentary text file editor and allows you to have each file in a tab in the main program but for comparison how does closing the last tab stack up?

Firefox Desktop Firefox Desktop

As you can see closing the last tab does not close the application or do anything fancy other than close the tab. You are left with a plain empty window and power users might have expected the program to close, but they will quickly learn where as in-experienced users won't feel like their stuff probably hasn't gone too far, and in-fact the thing they closed (assuming it was saved) is now under the recent items menu. There isn't (and there could be) a "recently opened" list like with Firefox for Android but you have to wonder how useful those lists really are anyway. Strangely this model is closest to how Chrome on Android works where it leaves you with a blank screen and a few menus.


There is a hell of a lot of variation between applications, even between ones from the same company on different platforms and you cannot predict what is going to happen when you (accidentally or not) decide to close that last nagging tab.

It would be useful for those tabs to act consistently and for that we need to determine the best result. I'm going to say here, despite my preference for the Chrome model, it is the Gedit model. It is most easy to recover from errors and while experts will have to learn the new model they will learn quickly. The browsers could also then have a list of recently closed tabs, most commonly visited sites etc so that users didn't feel like they could not recover.

An update! Hurrah!

by Matt Copperwaite 9 months ago

Hello visitor. You must be lost. The site is telling me that I haven't posted for 4 months and I had to look at the source code to remember how to log in. Well, I'm here, I'm back. At least for now and I want to share with you some of the things I have been up to. Writing it an publishing it in 15 minutes too because otherwise I'll write another 5 blog posts without actually posting them.

In no particular order (or an order that is probably some decreasing ratio between most recent and most interesting) I attended Hacked.IO where I build hobrogrammer.com a website built entirely out of Flask, jQuery, Backbone and other cool tools that you seriously need to check out. It was amazing to build something so awesome in 24 hours and look so good and look so nice. I'm extremely happy with it and a huge shout out to everyone who was there and especially Moggers87 who helped me with a huge chuck of code.

I've also lately been working on the Freeserver project, or more specifically a Google Reader replacement that I have called ReadeRSS. The over-arching project is to create a Free version of Google specifically focusing on the tools they have dropped and areas where there are no good, scalable and Free replacements. We aim to add an XMPP server soon. I plan for the business model to be open while it is in alpha/beta but some small cost (something like £50 per year) once we get going and having a usable system. As with all my current projects time is a huge issue.

I have also been helping out with the Brixton Tinkerspace guys. These guys are a bit like the London Hack Space (of which I am also a member) but based in South London as LHS is pretty inaccessible to a lot of people in south and west of London. In my adventures I have also discovered many maker communities around south London and I have also found a distinct lack of hacking space (as in places to code in a hacker like way) except at coffee shops. I shall have to investigate this dressed in vetement ethnique. Anyway the Tinkerspace community has very interesting parallels to the Free software movement. They seem to have a guy that started the whole idea called Daniel and has very specific plans (a bit like RMS) I kind of bow to the communities greater knowledge in this area but it will be good to find out how well thought out the whole process is. I'm kind of trusting everyone that it's all been put together in an intelligent way. The Brixton Tinker space guys have found a space in South London called The Artwork which looks amazing and I'm hoping we can move in there soon once we get the funds and structure in order.

Final piece of news is that I'm still doing food reviews that I love doing. I've had some really great times and my latest review has been very well received.

Also lets not forget The Dick Turpin Road Show which is going swimmingly and because of some unfortunate circumstances surrounding other related podcasts means that I think we have a good chance of becoming even more successful. To back this up we are also planning a guest for the next episode as part of a suggestion from a listener.

Finally I am going on holiday to Valencia, Spain next week with my girlfriend for her 27th birthday and our 8th anniversary. I'm hoping for lots of good food, sun and relaxation. At least one of those would do.

Well I've reached my 15 minutes of typing now. So just going to have to sprinkle in some links and hit post. Oh, last last thing though, FIGHT CENSORSHIP.

Release Early, Release Often

by Matt Copperwaite 1 year ago

So this blog is now alive after many years of work (in terms of time rather than man hours). I built it from scratch using Python and Flask both of which I do love.

It was one of those projects where you think "yeah, that can surely only be an hours work at most" and then it all goes nuts and you start building things you never intended to build and adding features you never imagined at the beginning. It's all reasonably trivial stuff but it was getting to the point that I had more posts I wanted to write than time to spend building the blog so I thought screw this. Lets get the minimum amount of work I need to do done to be a usable blog and release it. I can always fix it in situ. Which is what I am now doing.

Release early, release often.

It makes sense. Just get something out of the door and start using it. That's when you notice the real problems. Fix them, upgrade. I guess it works for something like this blog. It must be harder for companies, especially start-ups to do the same thing. Release too early, and be too successful and you're web server goes down and you've lost all that custom. Maybe people in that situation are more tolerant. Maybe as long as you release quickly and often enough you'll code out those problems assuming you can code out of those problems.

For now I'm happy the site is up. It has a long way to go yet from my ultimate plans for this tool but it's a start and in the mean time I can procrastinate and put my thoughts in here that are just one character too big to fit in a tweet.