Creating information with a shelf life.

Let’s say you’ve created a web application that, in addition to the rest of its functionality, presents a piece of information to a user that you’d like to only have a certain shelf life on the page. This could be any range of things, from personal information in a temporary note, to a “Quote of the Day” that should expire every evening at midnight, to data being pulled from a rate-limited external API.

There are multiple ways you could go about this as a developer, but a simple and interesting one is to give that piece of information an expiry…


Use clear, organized CSS files to help your code stay DRY.

I had the pleasure of learning and experimenting with Gatsby over the past week while working on my development portfolio site (seanwelshbrown.com), and there were a ton of things that really clicked for me about it.


Using a Linux environment to develop within a Windows installation.

If you’re anything like me, then you’re a developer with a love for (or at the very least a respect for) all different kinds of modern operating systems. They all provide their own unique user experiences, and all have something to offer for different people.

However, if you’re also like me, you may have finished up a programming bootcamp where it was made clear that MacOS is the preferred OS environment for web development, and that using Windows would lead to a world of headaches and compatibility issues.

While I love both MacOS and Windows equally for different reasons, I…


Enhanced interactivity for art applications and beyond

A very real canvas, not to be confused with the digital kind. (Image source: Jackson’s Art)

Let’s say you’ve created a web application that uses an HTML canvas to dynamically render something, generated automatically or based on user input. Great! You’ve done a lovely thing and brought some razzle-dazzle to the cold glow of your user’s browser window.

Now, let’s say you’d like that user (if logged in) to be able to save that canvas to their profile for display later on, to save it to your application’s database anonymously, or to save it to their computer as an image file. This is exactly where the .toDataURL() method comes into play.

.toDataURL() is a method built…


Photo by chuttersnap on Unsplash

I wasted time, and now doth time waste me. -William Shakespeare

The concept of time is one of the most complex and universal things we deal with on a daily basis. It controls our routines, our activities, our jobs, the way we age, the way we interact with the world, and everything in-between.

We as programmers and developers have a special place in our hearts for time: we just love the way it flies by us as we work up a sweat during timed coding interviews, and we adore the lovely wooshing sound it makes as it (and our deadlines)…


When learning about the power of JavaScript and its dynamic influence over an HTML page, one of the first things to jump out as a nascent web developer is the ability to add listeners to elements on the page that react to user input. Suddenly a world of power exists at your — the developer’s — fingertips. Shall I make an element disappear on mouse-over? Make an image spin around on click? Or should I simply have something change color?

If that last line is the one that interested you the most, then this blog post has someone like you…


New node, new you

Photo by John Schnobrich on Unsplash

Picture this: You’ve gone through all the work of creating a great, dynamic page in HTML/CSS and sprinkled a little JavaScript on there for good measure.

You’ve got yourself a list or a div that has all sorts of great content displayed in it and you’ve never been more proud of how it looks.

Except — hold the phone — when you go to filter it or re-render the data, it’s just adding onto what you’ve already rendered! The list just keeps growing and your scrollbar is getting longer by the second. What’s a programmer to do?

The problem can…


Photo by Agence Olloweb on Unsplash

If you’re anything like me, then your experience when first learning about databases as a new programmer was something of an awe-inspiring experience. Suddenly, the complex inner workings of the internet were laid clear before you — it’s tables and associations all the way down.

If you’re also anything like me when it comes to learning SQL and how to actually interact with those databases, your first experiences there were likely a bit of a rude wake-up call from your previously-induced reverie. Suddenly you realize that for every database storing vast amounts of information, there has to be someone who…

Sean Welsh Brown

Full-Stack Software Engineer; using a background in Acting and Voice-Over to pursue a lifelong love of software and technology from a humanities perspective.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store