I work in robotics, so I always find clean front-end implementations pretty neat. Can you tell me how you got this to work? How do you host all of it? What is the back end you use? I apologize if this seems too basic, but I'd appreciate any details you have for me. My goal for this summer is to work a bit on front end tech, so that I can present better visualizations, and build simple CRUD apps to showcase my data.
Thanks!
The way it works is very simple. I'm copying from a comment I made earlier:
Everyday IMDb publishes bare bones datasets at https://www.imdb.com/interfaces/. I've a bash script to download them, format and load into MySQL from which I export two types of json files:
1) A file with all the TV shows names, id, ratings etc (shows.json) - this is what's used for search. It weighs < 700KB compressed (I could certainly optimize this file but I've stashed it for later).
2) A file for every tv show with all the ratings and votes for its episodes. Based on your search, the specific file will be fetched to display the ratings. (This one file per show could also be optimized but looks premature at this stage.)
Strictly speaking, a database is also not necessary but it serves 2 purposes: 1) I could easily query to satisfy some curious show related questions. 2) The datasets include a ton of stale data (like shows w/o episodes and vice versa), so I find it easier to cleanup through SQL.
The above architecture allows me to host the site as a static site. When I launched, I had a typical node backend that connected to a db to run searches etc. But thought it was way too much infrastructure for a simple site!
Glad to hear you have a concrete goal. Front-end is actually easy to pick up if you don't get carried away by the latest thing on the block. IMO, it's pretty mature nowadays and I prefer the tools available now over the ones I had when I started way back.
If you've no front-end experience, just pick framework like Vue or React and start building stuff. If you've the time, I'd even advice you to start with vanilla JS, HTML & CSS (https://developer.mozilla.org/en-US/ should be your bible). It will not only set you up with a solid foundation but let you appreciate the conveniences & conventions when you pick up a framework. There's tons of tutorials available for pretty much anything web related. Good luck!
Are you talking about deploying for the first time or for every release cycle? The former is done infrequently, usually once. So shouldn't be a big deal. The latter has options ranging from good old SCP to CI/CD like GitHub actions etc.
So a question for you is, what exactly are you trying to optimize? And how important is that? (Unless this is just a learning opportunity)
Ideas are everywhere but maybe difficult to spot the ones that can be monetized, especially if you want a micro project. If you don't really mind the monetary aspect and just want to build something, there's plenty of options. I'll give some personal examples.
1. A reddit post which showed IMDb ratings of all Simpsons episodes made me think, "what if there was a site that could do that for any TV show?". A weekend later https://theshowgrid.com was born. Building it was so much fun. I spent more time on the tooling necessary to make it a static site than the site itself.
2. I'm part of a small forum of maybe a few thousand users. There are some things a user can do there which takes some extra steps. So I built a couple of browser extensions that were well received. I only have a few hundred users but I know it matters a lot to all of them. And that makes me happy.
3. Few years ago I built a simple website for my hairstylist's charity. Not a technical challenge but it was a great way to build connections and to expand knowledge outside tech circle.
Really, there are plenty of opportunities. I'm sure you've many personal itches to scratch. That's a good starting point.
> Or even download the full dataset to the client on page load and do the search locally in JavaScript.
That's exactly what I did for a recent hobby project of mine[0]. In my case, I've a db of 30K entries with gzipped size of ~600kb. This serves well for the few hundred visitors I get every day.
Not sure if something like this exists but I'd love a project management software (web or native) aimed at solo developers that prioritizes speed and keyboard shortcuts.
Existing tools cater for teams and organizations, so they come with bells and whistles which I don't need. What I'm looking for is something a tad better than notepad: blazing fast way to create an entry and classify it as feature, bug, research etc, add some tags like frontend, backend, UI, etc and add some notes. Obviously there will be a little more like a great search, a way to quickly switch between projects etc but the focus should be on simplicity and speed of use. Ideally pretty much everything should be doable via keyboard. It's ok if it's opinionated and has limited functionality. But as long as core task management features are seamless, I'd be happy.
I'm working on a start-up idea right now and thought the above would be really helpful (own itch). Also low key thinking of building it myself.
I've been using this uBO filter since someone recommended on a different thread and it's been great at removing those annoying sites from search results: https://github.com/quenhus/uBlock-Origin-dev-filter
I second this recommendation. I've had Blackadder on my library for a long time but never got into it. Then a week ago I saw a reddit post of Blackadder teaching Baldrick how to count with beans[1] and found it damn hilarious. Turns out it is from season 2 and ever since I checked out that episode, I've become a fan of the show to the point coming to like season 1 as well. Rightfully binging now.
A static site to see IMDb ratings of all episodes of a TV show in a nice table. (ratings updated everyday)
A weekend project I built to scratch my own itch. Going on cruise mode for a while now.