HN user

maxwelldone

122 karma

devin [at] epoweri.com

Posts5
Comments54
View on HN

Thank you!

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.

[0] https://theshowgrid.com/

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 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.

[1] https://www.youtube.com/watch?v=g4IQjUpTNVU

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.

This is my wish list for preview:

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.

I have been guilty of agonizing over spending $5 on a phone app while drinking a $5 cup of coffee.

Couple years ago I was working on a side project that touched upon what you said. The core idea was dead simple: you make a list of things you want to buy or do, along with the price. And, every time you feel like spending money on something that's either excessive or not really necessary (like a $5 coffee), you enter how much you saved. The app will then show, for each item in your wishlist, how close you're to it's price. Imagine a progress bar, inching toward the goal. Along with few other stats to encourage saving (but not to a crazy extent; we gotta live a little too).

I still have the codebase with some APIs ready. Wonder if I should just complete it and launch. I called it WIYS (What If You Saved)

Anyway, I think with software, a combination of necessity, choice & culture plays an crucial role in making people pay. For instance, I badly needed a window manager, so I'd have even paid $50 if there were no viable option. These kinda apps are tricky; if it's simple, the market will be flooded with options. If it's niche & the problem domain isn't a showstopper, people may not care. Also, we enjoy the benefits of so many open source s/w, and I think it creates a subconscious expectation to get everything for free - or at least to hunt for free stuff, even via piracy. While I still have traces of that mindset, these days I value my time more than money, especially if the cost isn't too much.

Their customer service is terrible

Let me add my recent experience in the bucket. Few days ago I upgraded my legacy Workspace account to a business account. (I was in a time crunch; couldn't evaluate alternatives.) I enter my debit card details in the checkout and got a generic error message asking me to "try again later." Thought there was something wrong with their service and tried the next day. Same error. After some 15 minutes of searching forums, turns out debit card is not supported in my country on account of SMS based TOTP, which doesn't work for subscription services. (If they could mention it in the haystack of their help pages, why can't they say that right when I signup?)

Anyway, more searching led to an alternative. There's an option to request invoiced billing where I would get a monthly bill & pay - debit card works here. Clicking that option took me to form. Filled it, got a call from a sales guy few hours later. Sadly, he had no clue about my problem, despite being from my country. On top of that he told me he's from a different team and don't deal with sales queries (WTF. Then why did he call me?). Told me he'd email me some options and, at that point I wasn't hopeful. Thought he would send me some stuff I had already seen on their forums. On seeing the said email, my disappointment sank even lower. The generic mail had absolutely nothing to do with my issue and the help urls were totally unrelated.

I just ended up using my friend's credit card to complete the transaction. I'm seriously considering moving elsewhere.

Is product management this pathetic at Google? I'm sure if you went for a PM interview they'd judge you nine ways to Sunday. For what? Everything Google does seems like it's built by three robots in a trench coat collaborating unsuccessfully with other robots in trench coats.

To add on to your observation, reading mode is even better to look at and loads just shy of 16KB.

As an aside, I still don't understand what Web3 aims to solve but I feel Web 2 is good enough if people don't go crazy with js, images, ads and other shenanigans.

Glacier Deep is the cheapest option. It does come with a catch that there's a minimum of 180 days commitment for their infrequent access tier. Last time I checked, the cost for US-East-1 is roughly like this:

At $0.00099/GB/month, it would cost ~$12/year to store 1TB. Retrieval cost is $0.0025/GB and bandwidth down is $0.09/GB (exorbitant! But you get 100GB/mo free)

So, retrieving 1TB (924GB chargeable) once will run ~$85. I've also excluded their http request pricing which shouldn't matter much unless you've millions of objects.

For the same amount of data, Backblaze costs ~$60/year to store but only $10 to retrieve (at $0.01/GB).

I suppose an important factor to consider in archival storage is the expected number of retrievals, and whether you can handle the cost.

Pre-order is reliable signal. How does one go about software services though?

For the past 2 weeks I've been analyzing a problem & I think my target segment desperately needs a solution (based on discussions on online forums, including HN.) I'm about to begin market research to validate my assumptions & to check if my userbase can actually shell out money.

Presently, I'm thinking of getting some pilot users & offer my service for free (or a small fee, since I'd be doing some non-trivial work for them). If the results seem promising, I'll pitch my idea to others. I've been part of few early stage startups but this is the first time I'm doing something of my own. Is there a better way to do this validation?

This reminds me of a great scene[1] from the British show "Yes, Minister". It's from an episode called The Compassionate Society where a minister for Department of Administrative Affairs learns about a newly built hospital which has some 500 employees but no doctors & patients. The scene I linked is a conversation between the minister & his private secretary where the latter explains why administrators are essential no matter what.

[1] https://www.youtube.com/watch?v=JAk448volww

Full episode: https://www.youtube.com/watch?v=oLU-Evdlt-A

Not much of a gamer but I absolutely loved playing Inside a few years ago. It's a platformer that takes place in an apocalyptic setting and you should solve interesting puzzles in the form of clearing obstacles to move forward. I thought the sound design really captured the mood well.

If you like that, try Limbo, built by the same indie studio. Similar concept but I liked Inside better.

How do I use it? Let me give some examples (from my current driver - 68% board):

1. The bottom left key (Cntrl) is L1. I chose it because it's easy to just lean on it by the side of my palm as opposed to pressing it which is a hard to reach point. It controls commonly used hotkeys like window management, media (vol, play/pause), clipboard etc.

2. A layer for symbols & fn keys.

3. A layer just for VS Code keys. For instance, Ctrl + Page Up/Down behaves like mouse scroll (on Mac), so I've dedicated layer keys around home row. It's naturally placed near home row navigation. I also have some handy macros like that will type language specific stuff like "() => {}" and move cursor inside parenthesis, etc.

4. Another layer for pretty much everything else. Like, locking & unlocking my Mac (bad practice to have pwd in macros, I know), opening "about:logins" in FF, tagging files (Ctrl 1,2,3...) etc.

Pro Tip for newbies: 1. Get comfortable flashing new configs (which shouldn't be a problem these days)

2. Don't over optimize layers & macros - go with something decent that will solve major pain points.

3. While using, make a note of things that work, things that feel odd and things you never use. Then, make incremental modifications. Rinse & repeat.

For people considering Mech boards: It need not cost an arm & a leg. The first board I bought was Tada 68 which cost around 120 bucks. Getting a board with swappable keys might be tricky at this price point - but if you know what sort of key you want, this shouldn't be a big problem.

As with SW development, start simple & expand based on necessity.