The Folders Project

Written in September 2020

Picture this - the year was 2015, and the framework wars have really taken off. For years the front end development landscape and JavaScript in general was ruled by jquery, but everything was changing. Backbone had been out for a while and had started to change everything, for web development - bringing in a robust solution for front end dev and simplifying some of the daily hassles that developers were facing.

On the tails of its success, and the outcry for better front end developer options, a plethora of frameworks and tools burst onto the scene. This included frameworks like Angular, React, Polymer, Ember, and more; the web developer scene was exploding with choice. There was so much super cool stuff, but it was impossible to keep up with everything! For me, this is where the pet project 52 Folders came in.

52.gif

The idea behind 52 folders was that I wanted to aim to create the same app with a different framework every week for a year (thus the 52). I was going to have all the apps use the same classes/styling, interact with the same apis in the same way, and in general just function exactly the same; just built with a different framework.

As you can see in the above gif, I did in fact find and plan out to execute on 52 different frameworks. I even went so far as to have an initial landing site created, the start of the common API, and I had gotten partially through the very first version I was going to do: Just Javascript.

As you might imagine, however, creating a new app in a brand new to you framework every week was just too much. I was behind before I even began, and before long it just ended up snowballing into behindedness - I parked the project until there was a time where I could see myself being able to dedicate enough time to such a feat.

That time never came.

waiting.gif (This is my project waiting for me to return to it)

The project was basically in the graveyard.

Fast forward to 2020

The huge boom of yesteryear has relatively passed. Fewer frameworks are announced every day, though there are still a lot of choices out there. In general, I’d say that the landscape is much less volatile and we’ve really just calmed down. Yet, interestingly enough, 52 folders kept creeping back into my thoughts. Is there some way I could follow through with the original spirit of 52 folders, but adjust it to be a more maintainable sort of project?

yup.gif

So I’m resurrecting the old project 52 Folders and have renamed it to `The Folders Project.

The intent with this project is largely the same as the original project. I want to create the same app in a variety of different ways, while sharing the same API, the same styling, and the same functionality. The app is going to be a simple faux social network with the ability to make a simple text post, comment on those posts and archive. They will all include some form of routing, interacting with a REST api, styling, reusable templating, and more.

In these Folders I’ll be using different technologies and frameworks, but that doesn’t necessarily mean that every folder will be net new each time. For example, I’ll invariably create a React Folder that serves as it’s own folder. But, if I see a new library or feature of react or something similar that I’d like to experiment with, I’ll fork that original folder and incorporate that new thing into a new folder.

This will allow me to continue experimenting with the new hotness without having to reinvent/start from scratch every time I start a folder; which should hopefully make this whole thing a much more sustainable endevour.

The reasoning behind having every new experiment as a folder is to keep each project self contained. I don’t want to have a living, ever changing application that I keep making updates to; I want a snapshot of an app that exists to serve or illustrate a simple idea or purpose - and I want that to live forever as that single thing.

After I complete (or decide “that’s enough time spent”) on one of these folders, I’m going to follow up with a blog post that talks about the thing I implemented and experimented with. I’ll talk about what I liked about it, what I didn’t, and what I’ve learned in working with it.

Sure, over time this is likely to get super cumbersome and involved, but for now it sounds fun, and a great relatively lowish impact way to keep up with what’s new and hot while experimenting with things I’ve never even heard of.

The future

future.jpg

So what’s on the horizon for The Folders Project, and what are my first few plans?

Initially, I’m going to keep with my original notion - I’m going to create the simple app I described above (which I’m naming fast follow for whatever reason) in a purely Javascript way. No jquery, no coffeescript, etc. This will serve as an initial baseline, and honestly, I’m largely just going to steal a lot of code from my far past self to get this done.

Following that, I’m intending to work on the following in no specific order:

  • React
  • Vue
  • Svelte
  • Angular JS
  • Angular
  • Ember
  • Backbone (lol)

And then after that I’ll probably start experimenting inside of those, and introducing new things.

Maybe jquery will pop up.

Heck, maybe even coffeescript (lol).

weird.gif

So my first Folder is going to be the Just Javascript version. I’ll be launching this along side the main site for the folders project and the API that supports it; as well as with what is bound to be a lengthy blog post about some of the now unique approaches to building out a frontend. I’d expect this toward the latter half of October 2020 - but of course, no promises; it is 2020 after all.

Until then!