< Back to the archive

Like what you see? Subscribe here and get it every week in your inbox!

Issue #319 - April 20, 2025

Here are the top threads of the week, happy reading!

Top comment by bawolff

Part of the reason bit torrent works really well is that the file is downloaded in random order. It lets everyone cooperate, while still being robust to bad peers, bad network connections, churn etc.

If you want live high quality streaming, a lot of reasons bit torrent works so well goes away.

Latency matters. In bit torrent if the peer goes away, no big deal, just try again in 5 minutes with another peer, you are downloading in random order, who cares if one piecs is delayed 5 minutes. In a live stream your app is broken if it cuts out for 5 minutes.

In bit torrent, everyone can divide the work - clients try to download the part of the file the least number of people have, quickly rare parts of the file spread everywhere. In streaming everyone needs the same piece at the same time.

Bit torrent punishes people who dont contribute by deprioritizing sending stuff to peers that freeride. It can do this on the individual level. In a p2p streaming setup, you probably have some peers getting the feed, and then sending it to other peers. The relationship isnt reciperocal so its harder to punish freeriders as you can't at the local level know if the peer you are sending data to is pushing data to the other nodes it is supposed to or not.

I'm sure some of these have work arounds, but they are hard problems that aren't really satisfactorily solved

Top comment by hello_newman

IMO you don’t need to build a full app or company. You could just build a series of niche sites or properties. If your code solves a specific pain point really well, wrap it in a simple front end or paid API and let people use it.

Some possible ideas:

Micro SaaS: Turn it into a one-page tool (log parser, file cleaner, PDF transformer) with Stripe and add rate limits. People pay for simplicity.

Paid API: Use RapidAPI or Plain.com to expose it. Charge per hit or via metered billing. Maybe even a slackbot for some of these would make sense.

Productized utility: Sell it as a $49/month “done-for-you” service to whatever niche audience would benefit (dev teams, SEO people, lawyers, etc).

Digital bundle: If it’s CLI or script-based, package it up with a guide or demo on YouTube and sell on Gumroad.

You’re not necessarily building a startup, and that’s fine! just something useful enough for strangers to pay for which is more than enough

Top comment by figassis

Thanks for the comments. This is a strange feeling. I rarely feel so at odds with the general opinion.

My experience is, passwords are a 1 second affair: open website, tap credential highlighted by password manager, trigger face/touch id or whatever exists on android/windows, done.

Email experience: open website, click login, get some link, go to another app, wait for it to pull emails, look for email, open email, click link, opens in browser, maybe not the same browser where you opened the app, so go back and copy link, realize copying links from email buttons is not easy on mobile, finally login.

If this is where you guys want this to go, it sucks. How can we improve it? Maybe we need to implement some wait to do what apple does when you get a 2FA code via sms? It just shows it to you in app instead of having you open messages app?

Top comment by andelink

1. Giving a damn. The majority of people don’t care at all about the work being performed. You can easily distinguish yourself by simply caring about whatever it is you’re working on.

2. A natural consequence of the above: fully reading the documentation, be it man pages or the official technical reference for a given technology. It’s incredible how many people don’t read documentation. You can become one of the foremost experts in your company simply by reading the documentation from front to back. You will seem like a genius.

Top comment by mcdow

Stop listening to the hype and doomers. Both of them are wrong. Go outside, live your life, build whatever you want to build, spend time with family. Stop reading stuff by people you don't know. Everyone online is trying to sell you something. Many sell fear.

We're gonna be fine <3

Top comment by RadiozRadioz

- Remove (or perpetually switch to) daylight saving time

- Make everyone use the ISO8601 date format

- Have everyone drive on the right side of the road

- Eliminate the "sidewalk shuffle" by standardizing on always moving to the right

- Customer support lines/banks/etc must shift their opening hours slightly so that they are open outside of business hours, so that working people can use their services

- Make all instant messaging programs use XMPP, Matrix, or another open protocol

- Put the UK back in the EU

- Change world elections to be Alternative Vote, or similar

- Add another month and make all months shorter and the same length. Have an intermission period at the end of the year to iron out the remaining time. A la gormanuary.

- Delete America's guns, give America proper healthcare

- Standardize on Esperanto

- Replace Python with Ruby

- Make it so that Microsoft actually remembers my login session when I click "remember me" instead of logging me out all the time

This, I think, will fix most of the world's major problems.

Top comment by dandelion9

- 90% of abstraction is dreadful. That means _your_ particular abstraction is almost certainly bad, and we don't want to learn it.

- There is a lack of respect for the history of programming. IMO it has caused the industry to be stuck in a perpetual cycle of half-baked rediscovery.

- Similarly, a type of "FAANG-syndrome" exists and allows sub-par ideas to take over mind share of the industry. Once a technology picks up enough momentum, it will snowball and we're stuck working with legacy trash almost immediately. Developers legitimately seem to believe each trend is good.

- Our industry's shared vocabulary is too weakly defined. Phrases like "The right tool for the job" are ubiquitous but essentially meaningless and used as a form of shorthand "I currently feel this is correct". If we had a real professional lexicon, the first thing juniors would learn would be to enumerate reasoning to a precise degree. IME most "senior" devs can barely do it.

Top comment by codingdave

I would not recommend asking people on HN to diagnose you. It is not that people on here don't have good advice and experience - they do. But everyone only knows their own life. People with depression will tell you it is 100% depression, while people with anxiety will tell you it is 100% anxiety, and people with burnout will tell you it is 100% burnout. Other people will tell you to go outside, or to eat low carb, or to lift weights. Basically, you'll get a pile of anecdotal advice from people who are not living your life, and don't know all the possibilities of what could be wrong, including that there could be an underlying medical problem.

The more important factor is that you know something is wrong and you want to fix it. Your best bet is to talk to a doctor and/or therapist about it. Get a professional diagnosis of what is actually wrong (or a confirmation that nothing is wrong and this is normal), and then filter out anecdotal advice that isn't applicable to that diagnosis.

Top comment by pajko

40+ unsaved tabs in Notepad++, mixed stuff, containing keywords about the things I'm working right now, 2-3 line descriptions about an idea or how to proceed with something in the future, copy-pasted and "annotated" fragments of logs or code under reverse engineering (would do most of this stuff by hand but have an awful handwriting). Plus a booklet to scribe quick ideas, play with an algorithm in my head, and draw stuff if that's unavoidable (code graph, state machine diagram).

Top comment by austin-cheney

There are no tricks, no gimmicks, no games. You are most focused when your motivation is aligned to the goal.

This is still somewhat true even for people with ADHD. The difference with ADHD is that low dopamine uptake results in shifts towards induced excitement stimuli that can be distracting unless the goal itself is so exciting as to result in ongoing obsessive behaviors.

If you really emotionally want something to be done you will apply the work to get it done full stop by motivation alone. When this alignment is present the thing that most gets in your way is poor decision making from fatigue. This is how mammalian brains are chemically wired.

So, if you want better focus don’t change your actions. Instead know exactly what to do and why you want it with extreme clarity.