skysight-inc/HackerNews huggingface dataset:
Your comment posed a very interesting question to me, so I took the time to think of some other points in this multi-dimensional space of terrible software engineering. Here are some other terrible design systems:

- Design by lottery (Single winners of a quarterly lottery dictate all decisions for that quarter)

- Design by deliriant (same as design by committee, but all members of the committee must take Datura before making decisions (probably deeply unethical and problematic, but we're going for the worst possible here))

- Design by Anarchy (Literally anyone can commit straight to the main branch without any checks)

- Design by Ouija Board (Committee members MUST consult a Ouija board before making decisions )

- Design by mob (A real-time public forum, accessible to anyone, can propose/vote up or down potential features or code changes. Highest votes within a 24-hour window are implemented immediately. Allows and even encourages raids from random sites like 4chan or corporate entities)

- Design by Dog (Various options are written down on pieces of paper, scattered on the floor, and the pet's choice is determined by whichever piece it first sits or stands on. (In this alternate reality, our dog STILL hasn't decided to patch log4j. God help us.))

- Design by randomly-elected outsourced labor (Decisions are outsourced to the lowest bidder on freelance job platforms, regardless of their experience or skill level.)

These are just the ones I could think of off the top of my head. Lowkey it'd be hilarious to try and build actual software with these, just for fun.
Specifically from your list Comcast, Netflix, AT&T, PG&E were all services that I had to call on the phone multiple times, and sometimes send registered letters to in order to terminate service. I’m taking exclusively about personal experience here, not about helping friends.

Edit: and by “terminate service” I mean “stop fucking taking my money, I don’t even live at the address you are claiming”
I think the parent means that RPG styling in his KeenWrite system would take some elbow grease, not LaTeX
Yeah, it turns out that knowing people and knowing people who can tell you what you should be doing is pretty helpful.

Additionally, high income neighborhoods tend to have access to things that aren't available to everyone.

I have the shittiest house in the block but the PTA for my kids school pays 50% of the salary for the school councillor because the district only funds it as a part time gig. Then the robotics, programming and electronics classes, also out on my the PTA.

Things like parent career presentations with rocket scientists and bankers instead of everyday me being a tradesmen like my school. Shit I didn't even know these jobs existed until I was like 30.

And that's before those people come to your graduation party and find out you want to do something that their company does. 'Hit me up after school for a recommendation for an internship'

This is also why public housing projects fail I'm so many ways. Sure you need a place to live, but you also need a stable environment, and access to a social network that can help you along.
In Europe they infested LinkedIn.
Apple didn't bring programming to the masses - for the following reason:

- Just to expensive. The Apple Macintosh in January 1984 cost $2500 - thats $7000 dollars in todays money!

- Too complex to get started. The amount of knowledge to successfully write anything really useful in 1984 on that make was a huge barrier to entry - you had to learn ObjectPascal, the then new GUI concepts, somehow get your hands on CodeWarrior (another expensive software package) and learn the UI of CodeWarrior.

- Documentation was poor. The system shipped with nothing mentioning any of this or the hardware underpinnings.

The Mac was designed as an end user 'consumption' machine, not a development machine. Nothing wrong with that - as the market had shown it was highly proficient and successful in its intended role.

The company (in the US at least) that brought programming to the masses was Commodore.

- IT WAS CHEAP! With the release of the Commodore 64 it brought the a super sophisticated system at bargain basement prices. By early 1985 the C64's price was $149 (https://en.wikipedia.org/wiki/Commodore_64) - thats $420 in todays money. A complete system with a 1541 disk drive & monitor cost a total $549 (https://www.mclib.info/Research/Local-History-Genealogy/Hist...) or $1,547 in todays money. A computer with 64K, 16 color graphics, a revolutionary 3 voice synthesizer capable of speech, and a massive software library and peripherals.

- It came with everything you need to to write code. The system booted into a BASIC interpreter REPL which served as its command line also. No additional software needed.

- The info that it shipped with was phenomenal. The manual shipped with the computer actually give you a nice tutorial on the basics of writing code, with examples of color graphics, sound generation, sprites and accessing peripherals (https://www.commodore.ca/manuals/c64_users_guide/c64-users_g...) You could write to Commodore and they would actually send you a schematic of the main board and expansion ports as well as a dump of the ROM so you could look at the actual code that the system used to do what it did.

It was an amazing time to be a young Commodore 64 programmer back then. Heck even the company's slogan was "Computing for the masses, not the classes". And with the Commodore 64 they lived that slogan.

The interesting thing is that todays Apple is even more friendly than Commodore was to the budding developer - with the MacMini line and the Unix underpinnings of the MacOS X, there isn't a better beginner developer system than Apple today.

Apple in many ways, learned its lessons and adapted. Commodore unfortunately - so Apple Mac of today is bringing programming to the masses.

All of my nieces and nephews - I bought them an iMac mini for last Christmas and showed them how to use the terminal and python - and they are on their way.
Yes, it is a welcoming group that would love to learn about your site!
Very clever. But rather than optimizing towards cleverness, you could optimize towards directness and say "try them out and develop relationships over the long term." It's not as cute and clever of a phrase. It's unfortunate that the truth isn't cute and clever.

Or maybe it's fortunate? You know, I actually think it's fortunate. I'll let the cynics who like being cute and clever keep their misfortune, and I'll keep my boring, ugly, successful reality.
I can get it to work just fine. It just doesn't work as well as IPv4 and I can't be bothered to figure out why.

I'm in that 40%. I use IPv6 on my phone whenever it's not in my house.
I dunno if anything is open source here... but the most important parameters are available on Javascript applications all over the place.

https://saturnpcb.com/saturn-pcb-toolkit/

I don't think this tool is open source, but via inductance, various heat-equations, trace-width calculations and the like are available on this tool.

Its my understanding that higher-end PCB software integrates tools like these directly into the PCB-designers.

---------

KiCAD has simple calculators like the SaturnPCB.com one (though with fewer features). I'm not sure if more advanced calculators exist though.
If you did it before and after every system alteration, I'd count that. That's tedious and error-prone to do by hand, though, so you'd want a set of tools to do it automatically. At which point you've invented a new immutable distro.
Yes, it's also bad like yours.
Ambiguity is a feature, not a bug. I used to spend a lott of time on business process automation, and even in those more structured and restricted settings trying to codify procedures most often fails. The reason is that reality has (a) so many edge cases that it very rapidly devolves into chasing down an ever diminishing ROI, (b) is unknown by the middle management and business analists,
those that would have the authority to construct and sign off on it, and (c) relies on intelligent people applying creative pragmatic solutions to keep the business running and straightjacketing those into inflexible automatons is the most surefire way to sink the ship.
I completely agree that dealing with openssl is fiddly at best when you RYO CA. But, if your org knows how PKI works it's not a big deal; a bash script or two in the simple case or a flask app at most complex.

If your org doesn't know how PKI works shouldn't you be paying a vendor that does?
Only on mobile does it look unusual. Narrow columns make the effect unpalatable.
How do you not break compatibility with IPv4 while also getting more bytes in the address?
Good point, I think most of them are designed for a high-airflow server chassis, with airflow in a direction that a desktop case wouldn't necessarily facilitate (parallel to the card).
3 people in a car is not at all efficient compared to busses, trains and bicycles, so there should be no real reason to reward that behaviour.
I don't see errors like that because English is the lingua franca of business in the Western World, while Arabic is not. For your example to make sense you'd have to imagine an Arabic language paper doing the same for a publication based in, oh I don't know, Cairo or something. But, the thing is, I don't expect reciprocal cultural fluency of the West in the Middle East, nor should I. Moreover, I don't resent them for it. Someone made a mistake at The Guardian - a foolish one that shouldn't have made it past an editor - but it's not "constant disregard for middle eastern cultures" that this happened.

For what it's worth, I can read Arabic script (but don't speak the language) and I caught the error.
Last I looked at Distrobox, DNS didn't work on Ubuntu LTS or Debian Bookworm. It was literally useless.

How can anyone adopt an unpolished hobby project that only seems to be tested on the dev's Arch box is beyond me.
I think that comparison is way off.

Smart contracts are much more comparable to "a webshop", than actual logic describing rules of arbitrage or other concepts at play in "law".
> Problem is first to adopt (assuming the AI is successful) will win.

Question is, will win what? Is potential human extinction worth winning?
Lead says async func in useCallback is incorrect, use useMemo instead, WTF?
Hello hackers! Normally I would discuss this with the team but it's just me and our Tech Lead on the FE so I'm posting here for my own educational purposes.

I submitted a PR review containing an async function in a React useCallback earlier and our tech lead mentioned that:

"You can't async useCallback, it can cause unexpected behavior. To achieve a memoised async function instead use useMemo".

It was always my understanding that useCallback returned a memoised function and useMemo a memoised result or am I missing something here?

The asynchronicity should also be irrelevant or?

Any feedback would be appreciated, thanks!
Yeah I am also trying to understand why you gave your extreme example, it doesn't help your point but it helps mine. If you put the entire planet population in the area of TX but build tall, people would live in better comfort than if you make it one large suburbia.
I host a few video game servers for my friends and love the fact that I can say my easy to remember IPv4 address aloud whenever they forgot it.

I have an IPv6 address but haven't bothered memorizing it or giving it out because it would just be more hassle.
When you store the time of a future event (like a reminder for 1 year from now), and integer since epoch does not work.

Your event is initially in the user's timezone (e.g. 10am 20th of June 2024 in France), if you store it as a number then you are fixing the exact second at which it will happen.
However, if the timezone in question has some changes you didn't anticipate (new law voted, no more summer time), then you will either be triggering your event 1h before (e.g. 9am instead of 10am) which is probably not what your user wanted, or you'll have to recompute all your timestamps to take that change into account.

Instead, you could store rhe event with the target timezone, and let your datetime library that is up to date figure out next year.
It has not been possible/practical to use immutable system images until recent advances like ostree/flatpak/systemd-homed.

We didn't "just discover" some secret only known to the embedded community, lots of people have been working toward this exact goal for a long time, because we already knew for a long time that it has a lot of advantages.
That’s the kind of thing that had me learn coding many years ago ( watching demoscene productions).
It's on the page, pretty high up:

> One could then ask what the probability was for her getting the specific number of cups she identified correct (in fact all eight), but just by chance.
What's holding them back is provable correctness.

It's possible, nay, mandatory to constrain the outputs of the model at each step of generation in order to guarantee that a given structure or grammar is adhered to. If you can fine-tune the model with these constraints in place you can offload a lot of the effort that the LLM otherwise has to perform in comprehending correctness so it has more capacity for generating good content. To be sure, quality and quantity of data are important, but it's all too easy to introduce subtle bugs that take years to tease out if you don't adhere to the right constraints.
Depends on how affordable housing would be in those skyscrapers
This is a prescient insight and you're getting at the core achilles heel of the traditional recruitment model. Because the compensation is based on a ratio of first year salary, the recruiters incentives actually align with the candidate and against the hiring manager. The recruiter, as with the candidate, can (and often will) profit from overpricing a low quality candidate with a hiring manager they view as gullible.

But this creates a market for lemons where many of the savviest hiring managers hire through other means. That doesn't just disadvantage savvy hiring managers, it also disadvantages savvy candidates by eroding the ecosystem.

The solution is to use curated networks -- and any recruiter worth their salt should be able to speak credibly to their own with strong references from strong candidates and especially strong hiring managers. After canvassing both and running some real life experimental tests, you'll be able to sift the wheat from the chaff. Ideally, you can do this over a span of multiple years across multiple roles so you've integrated this ecosystem into your own.
Which is funny, because SQL is an API. Security notwithstanding, it's often better than whatever API you can throw in front of it for the sake of "clean architecture" or whatever.
A list od blogs mentioned by hacker news, some were adres manually by me:

https://github.com/rumca-js/Django-link-archive/blob/main/an...
The long tail of features required by everyone is huge these days and a different subset needed for each person.

I tried to shut off USB wake on MacOS tonight. Nope. Does not support, goodbye.
In stark contrast, the beautiful Bell Central Office of Minneapolis:

https://en.wikipedia.org/wiki/Lumen_Technologies_Building
> One million nomadic groups to 10,000 tribes to 100 nations to four or five conglomerates. We have been in the endgame since the industrial revolution but AI will speedrun us to the end in decades, and perhaps years, not centuries.

So Oceania, Eurasia, and Eastasia?
Great link. However, I don’t know how Joel could see a newcomer can challenge an incumbent, short of reimplementing all features.

Certainly, Google Sheets didn’t do that. Nor has airtable (valuation considerations aside, it has seen some adoption).

In a new category, or a new market, there is no benchmark. So that’s the east case. But sometimes new products do displace old products, and sometimes just by distribution or pricing at the cost of features.

So how do you reconcile that, Joel?!
But only network engineers pick the protocols used. You’re making life harder for the very people who should be your primary audience.

PS: As a developer, I often read logs and go ”oh yeah, that’s just our satellite office IP”. 192.168.1.110 is the network printer, etc. There’s no hope of recognizing IPv6 addresses at a glance the same way.
I don’t think that’s true in this case. Usually that’s a “the structure is fine but the price increase is way too much” move.

This completely wrecked faith in Unity. They also took too long for this response. If it was their plan, it was an absolutely terrible one.
When I got the iPhone X, it was the first time that I thought the design was "good enough" for my purposes. (I had previously had an iPhone 1, 4, and 6S.) I could imagine further improvements, but I didn't really feel a desire for them.

Unfortunately, I managed to destroy it during the iPhone 13 generation. Since I use my phone extremely heavily, and am not particularly cost sensitive, I assumed that I would go with the Pro model. But the weight of the 13 Pro very much turned me off... yeah, it's on the scale of ounces, but I do enough backpacking to at least think that I care. And it just wasn't as comfortable in the hand. So I ended up with the base model -- a pretty big misstep on Apple's part, down-selling an eager customer to a lower price, lower margin part.

I just ordered the 15 Pro; this is the first time I'm using the trade in program, since my 13 is in perfect shape. (My 1 and 4 are sitting on a shelf somewhere, and my 6S was given away.) I didn't think there was anything that was going to drive me to upgrade, but the satellite-based roadside assistance is enough to get my dollar. I'll still keep the 406 MHz PLB in the glove compartment registered, but I'd much rather go through AAA than the coast guard if something comes up away from cell coverage.
Great article.

Demystified a lot about FDB for me.

> ”Summary: FDB is probably the best k/v store for regional deployment out there.”

Why should someone use Memcache or Redis then?

Is it for the data types in Redis?
I use worktrees instead of multiple clones mainly so I only have to worry about remembering to 'fetch' once.
So, uhh, is that a good thing or a bad thing?
I was hoping to see a more ambitious language model based project.

Rather than just picking compiler arguments, an LLM could parse, and then transform AST into its more optimized form in a way that does not rely on a very formal way it is treated by compilers of today, apply guesstimate-based branch reordering and inlining heuristics not dissimilar to how a programmer would do so manually.

Once done, a compiler could perform final AST validation and either route it back to LLM to fix it or auto-fix most common cases.
> This also describes most of the recruiters who contact me

How often do you reach out to them?
I can see plenty of situations where colons behaviour might be confusing, let’s start with a http url on a non standard port with credentials embedded, I assume something close to http://01:02@03:04:05:06:07:8000/foo/bar would be a valid url,
Heck yeah! I attended HWC Americas regularly for about a year, I need to log back on and catch up with folks. It's a great crowd, everyone has their own interests and goals and it's fun to cheer others on. When you spend so much time hacking on your own website, it means the world to get positive feedback!

If you nerd out about implementing protocols, there are some IndieWebers that will go out of their way to help you develop or test new ideas. We'd stay up into the night getting our servers to talk to each other in some never-seen-before way. Good times!
I find them to be extremely greedy, sometimes taking as much as 16% off of the day rate.
We should probably consider whether the rent-seeking enabled by the scarcity of IPV4 addresses is one of the things holding back IPV6 adoption.
Whenever nvidia is involved you know the culprit. Linus flipped them off for a reason.
Think Pascal was a revolutionary IDE for it's time. I remember the absolute joy of coding on a Mac IIcx, with the Apple vertical page display, and the 3 volumes of Inside Mac by the side.
It depends on how you technology/security savvy you are.

For instance, here is everything I do:

- Use an open source firewall+router (== Opnsense) and not commercial routers (such as Netgear, Tp Link etc.)
- Open up port 80 and 443 on the firewall.
- Both the ports go to a Traefik reverse proxy that is configured to always redirect port 80 to 443.
- Traefik then reverse-proxies requests to relevant Docker containers.
- Auto-update Traefik every day (through Watch Tower).
- Use Authelia, with 2FA, where I can for the publicly available services.

I assume I am reasonably secure but I've also built this over a few months. You may not get there right away, so start small and slow and don't go crazy early on.
Speaking of D&D, it's possible for LLMs to act as the Dungeon Master
Somewhere there's gotta be that niche website that compares rock flavrs.
NixOS predates Fedora by a few months.
How do you validate semantic equivalence?
That's law, too.
Sequoia also backed Apple, Cisco, Google, Youtube, Instagram, LinkedIn, PayPal, Reddit, Zoom and many more. They are just one of the largest VCs out there.
Fun book, but no. And I wouldn't describe those as YA. YA doesn't typically rant about ANSI C conferences. It's more like Discworld in that it's quite silly but not necessarily targeted at youth.

My reason for Forth is quite simple: it has extremely little structure which makes it a much much easier output target to work with.

At it's simplest, a series of glyphs could directly transliterate into Forth words. More complicated schemes are more interesting, for this purpose, but it would defeat the purpose of its use to target, say, C.

Also, Forth is easily embeddable and interpretable with only the words I want exposed. Whipping C again, but targeting C would mean a whole mess of sandboxing and C bindings which sounds much harder than Forth words or some such.

I have many other ideas too. Multiple rings of circles represent threads or some kind of concurrency, mana is used like 'gas' in the EVM to naturally denote the cost of spells and prevent abuse, possibly compile from Forth to some WASM target or something for performance, etc.

Edit: put another way, Forth-likes blur the lines between a programming language and a mutable environment of high level bytecodes which makes it a natural intermediary language for some cases.
Close, it would be more like http://01:02@[03:04:05:06:07:08:09:10]:1112/foo/bar
I suppose a sufficiently motivated individual could look at something like Shodan, see how many of those IP addresses AWS owns are active (and fudge it by some factor to account for how many of those IP addresses are used by AWS themselves) and multiply it by their new IP address billing.
NAT64? No what we needed was NAT66, and it took over a decade after IPv4 to deliver this. Because the IPv6 advocates were too opinionated on exactly how IPv6 should work. And since when has the world even agreed to anything even remotely complicated without trying to change things up?
To be fair, cutting staff seems like it would be reasonable. How do they have ~2x the number of employees that Epic has? I know the ad side probably takes some numbers but Epic actually makes games.

From an outsider it seems horribly mismanaged.
I like the idea of ostree but having glanced at it, as a casual/intermediate user, it didn't seem as user-friendly as, say, Docker was (which a home user can learn in an afternoon). It wasn't obvious how to get to "Debian distro deployed as an ostree snapshot".

Is this one of those things designed for career sysadmins/system builders only?
This would really benefit from a few screenshots.
I agree. I have 5 kids. So did my parents (alhough tracking wasn't a thing then). Your family tracking you usually isn't the problem, it's social media and big brother. Hence why my teen/pre-teen kids don't have smartphones.

If I'm honest it's more a matter of me pushing my tinfoil-hat based agenda than anything.