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.
Back in 2000s Google used to be the place for any type of search (IIRC).
Now, I've been conditioned to use it only for specific use cases, mostly for convenience. Some examples include:
1. Anything programming related (searching for man pages, error codes etc) is straightforward. (I do have some UBO filters to exclude SO copycats)
2. Utility stuff like currency conversion, finding time in another city, weather etc.
Where Google has really fallen behind is in multimedia search. Not sure if it's due to copyright issues or not but Bing and Yandex provide way better service in this regard.
Not to mentions the "reddit" suffix I need to add to any search that even remotely calls for public opinion. In many cases, Google is just a shortcut to take me to the relevant subreddit.
As an engineer and from a common sense perspective, these modals bother me a lot. However, in the interest of curiosity, I'd like to hear from PMs and the likes as to how successful these annoyances are in reality.
Broadly, I see two types of visitors to these kinda sites:
1. Someone new, who's most likely just following a link (like us) - they haven't even had a chance to read the article yet & knows nothing about the site, it's reputation, quality etc. All a pop up does is annoy a new visitor. I highly doubt people will take the time or even trust to give away their email with no obvious benefit.
2. A repeat user, someone who's familiar with the site. What's wrong with placing a simple signup form at the end of the article. It's unobtrusive & if people really like your stuff, they will sign up.
Or is it the case that people like us are not the target audience - they couldn't give two shit*s whether we stay on the page or not. Fortunately I haven't had to deal with SEO and shoving stuff on users to sell my stuff, so perhaps I'm naive.
1. Support for h265 video previews (not sure about technical or any other licensing hurdles)
2. Basic playback controls (via keyboard) when viewing video previews - just play, pause, skip would do. I review a ton of videos and I'd often like to pause to take a screenshot or skip to quickly see what's happening in the video.
3. Option to zoom on text files like json, csv etc. Not a big deal but would be a great addition especially on hi-res external displays.
Edit: Looks like I mixed quicklook with preview. My bad.
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!