skysight-inc/HackerNews huggingface dataset:
I have this problem with planning. My planning mostly ends up being sequencing of tasks rather than working how to do them.

Software is made out of ideas, and code is just a symbolic representation of those ideas. Writing the code is the easy part; working out what ideas to represent is the hard part of programming. If your planning involves working out what ideas to represent, if you do that in greater and greater detail, eventually you stop planning the work and cross over into doing the work.

> File based organization, right from the start you need to start deciding what goes where. Of course I think most of us start with a single file, full of random functions and tests. But at some point this file becomes unbearable, impossible to find what you are looking for. At that point you have to make decisions and start splitting the file at logical points. Deal with what is private and what is not. It may not seem like much, but it's very annoying.

In a project I'm working on at home, I started off with an extremely naive implementation, the single file of functions described above, and when the messiness became unbearable, I started building object-oriented abstractions to make sense of it all. But the structure of those abstractions was discovered while making the mess - if I'd tried to build that at the start, I'd have built the wrong thing.

I'm very fortunate in that in both my day job and my recreational programming, I'm the only person working on that particular codebase at the time. (At work, I develop what are basically plugins for the framework-type-thing that's our main product.) Consequently, I have the freedom to make a mess and clean it up once I've muddled about in the solution space to discover what's going to work best, and so most of the solutions in the blog post are rather unnecessary for me. In the end, two months of work on my home project was thrown away and rewritten, which I could never have got away with at my job, but the project is all the better for it.
This flow is a bit different from a password reset email, it's a notification with a direct call to action, allow or deny.

You can't debounce them like you can with a reset password email flow.

With a typical password reset email, the actual password resetting is done by the user after they click the link in the email, only someone with access to the email can proceed, and they can only proceed on the same device that they clicked the email link.

In this flow, there is no further on-device interaction.
>Like autoscale horizontally and/or vertically, sharding or just writing better code?

Sometimes you just have a server, not some elastic horizontal setup, or a budget for vertical scaling.

And "writing better code" is an optimization thing, not a general way to handle back-pressure (you can have back-pressure in a fully optimized program too, and even for non-optimal code you don't want to just have to iterate and refactor/improve the code every time there's back-pressure).
I saw a youtube video the other day about how a wasp sting infects the caterpillar with a virus to modify its behaviour and stop it from turning into a butterfly.
Related:

Plunging births push Japanese diaper maker to switch to adult market

https://www.japantimes.co.jp/business/2024/03/26/companies/j...
Having been part of an engineering company that was taken over by MBAs, I wish you were right but I no longer believe.
The theory is that competition will solve the problem, if you don’t like one company you can go to another. There are a lot of areas where this doesn’t seem to work though, for various reasons.
I'm the author, was not expecting to see this here today, somebody posted it yesterday as well but got no traction. It's just a small essay about how I approach programming, particularly when understanding problems and exploring new ideas.

It's a little bit of explanation of a project I'm doing as well as something I'd have liked to read years ago when I was sure I was just doing it wrong.
TIL D1 is SQLite. Why don’t they market it more prominently that way? If their sql is interoperable with SQLite it’s a huge selling point, both for reducing vendor lock-in and compatibility with existing frameworks and such.
Gaining the respect of the engineering workforce might have a role here too.
the Emirates boss is Emirati, not Saudi
Emirates airlines is not a Saudi airline. It’s an Emirati airline for the United Arab Emirates… hence its name.
So someone whose dream job is to make airplanes that are innovative, fuel efficient, safe, and long-lasting and economical - goes to… accounting school?
> It’s already possible to hide the Photos app from the system.

Like putting the chocolate underneath the broccolis in the vegetable container?

You might argue that the photos app is required for normal functioning. And I would generally agree with you. However, you could use the same argument for a browser, but bundling Safari per default does not fly anymore.

The time will show what we need to do. So far, IMHO, regulators are able to manage these nuances.
No person without body autonomy can be considered 'secure in their person, houses, papers, or effects'.

In fact, none of the other rights matter when the state can control what you can, and can't do with your own body. It is the most fundamental of rights.

They are also doing a great job of trampling on the fourteenth amendment, with the occasional jabs at the first.
This fails on latest Android Chrome (JS enabled) with:

JavaScript must be enabled in order to use Notion.
Please enable JavaScript to continue.
That’s remarkable. I’m a huge fan of vultr and I don’t want to believe that this has been done in bad faith, but of course long experience sadly suggests otherwise.

That said, due to the type of service they provide, vultr customers like myself don’t necessarily even have the right to grant them the rights that they claim here. If I run a SaaS and people are uploading photos for work (eg photos of property damage for the purposes of identifying and repairing it), those photos are not my property and must not become public. The idea that this could ever be OK is batshit insane.

So I hope/suspect this policy is going to be reverted pretty quickly, since it seems quite incompatible with their core business.

No way can I risk my customers data being “publicly displayed”!
I agree. It’s a tall order to replace all the pieces. You need:

- programming language not oriented around files

- PL compiler designed first and foremost for incremental complication / interpretation

- New source control that’s syntax-aware and watch not commit based

- New IDE that allows navigating the tree and space

And any of these are a reason for people to not use it:

- CommonLisp? Most people don’t like it. Could you adapt TS? Rust?

- If it’s not Git, can’t use GitHub

- Emacs? Could it be a VS Code plugin? A fork?

Where is a billionaire techie who could foot the bill to build this? It’s a mammoth effort.
Many password managers have passkey support, I'm using the free version of Bitwarden and can recommend it. Windows Hello can also be used, and afaik Apple Keychain too.
It would not be a surprise to see HQ move back to Washington and of the potential replacements, Shanahan started his career at BA as an engineer. [1]

1. https://en.wikipedia.org/wiki/Patrick_M._Shanahan
Rate limiting per user is mostly a thing of the past. You set other rate limits and various rules and then get the rate limit per user for free.
The >10 fingers problem should be solved via higher quality data or conditioning rather than a better model architecture.
Discussion: https://news.ycombinator.com/item?id=39832952
But also, this is reported often in various forms as far back as July 2013:

In Rapidly Aging Japan, Adult Diaper Sales Are About to Surpass Baby Diapers

https://www.theatlantic.com/business/archive/2013/07/in-rapi...
Phone providers have been doing this one in italy for over a decade.
> I think I'm not alone in this. Hopefully?

No, it works in a similar way for me. I can do abstractions to a certain degree in my head and plan ahead but also do need to work on a problem and trial things.

It's interesting that the article mentions Javascript as not having an immediate feedback cycle. Which is true enough for a lot of the modern Javascript stack. Although live reloading is also a thing depending on what aspect you are working on.

> Imagine a service that never stops, you diff the existing functions with the new functions, only updating what needs to be updated. If there is a change in the rate of errors then you automatically rollback the deployed functions.

I am pretty sure that this is already a concept in use by companies. Although the exact naming for it, I can't remember.
It also highly depends on the sort of domain you are active in. The more critical your data is, the less likely it is that you want to risk using this type of development and testing model.

Not to mention that it seems lean in the logical fallacy of "only errors indicate faults" while the most devastating bugs often are those that don't cause clear errors. For example, when dealing with data your particular system might have no increased errors but due to a data change a system down the line might.

Another potential issue is that because you are developing this in an explorative manner, it also doesn't leave much room for a review process. Or any of the myriad of other processes and methods that normally should be in place to evaluate the thing under development.

In addition to the above, the way the article does describes the envisioned process leaves very little room for proper documentation. More specifically, it feels like a process where documentation will be more of an afterthought than it already is within many teams.

Off-topic for the subject, but using monospaced fonts for blog posts sucks for readability, imho.
> It may work for you, but what if someone who does not know Go but wants to use your project on a provider that is not hetzner?

Well they'd run into the same problem if the script was Python, wouldn't they?

And Go is ultimately far far easier to read, modify[1] and debug for someone who doesn't know it than Python is.

[1] For example, adding a third-party library to handle new cases. I've never had a good time doing it with Python's various package management, but Go seems pretty good at it.
See the timeline of Interlisp

https://interlisp.org/history/timeline/
Well, maybe he never wants "someone" to deploy his project. I think it is perfectly legitimate to handle it this way for a one-man hobby project.

For a project where multiple people are involved, I think it's better to split concerns. Deployment should be handled transparently and reproducible in a CI pipeline that the team members who are allowed to deploy have access to.
My personal experience is that it depends on the context.

Writing new functionality is usually easy if it's self contained. If I know what inputs I will have and what outputs I want, then I generally have a pretty solid idea of how to derive one from the other before the first keystroke.

But if I find that the new functionality is turning into an internal API that will be consumed in multiple places for multiple use cases, things aren't so obvious anymore. You have a combinatorial explosion of design parameters: not just inputs, outputs, and algorithm, but also issues like ownership of data, ownership of the stack, which inputs are supplied at which point in the process, when is it legal to consume outputs and in what ways, push vs. pull interface, two functions for similar functionality vs. one with a flag. When the design parameter space gets this large, it's hard to reason about it ahead of time, and sometimes the most straightforward API doesn't reveal itself until you write code that uses it and realize that there's needless boilerplate or inconsistency that opens up room for logic errors. Then you go back and refactor to eliminate that. Casey Muratori calls this iterative process semantic compression [1]. I don't agree with all his software development takes, but I think he hits this one pretty squarely on the head. The key insight is that an experienced programmer can write good code on the first pass, but it usually takes a second pass to write great code.

[1] https://caseymuratori.com/blog_0015
Thanks for the thorough response.

> No. Proper transparency is on my list because it's an essential building block for emulating advanced features that aren't natively supported on the hardware. One great example is the environment mapping effect that is found in a large number of ps1 racing games.

That's a good point which I had not considered. However, just adding support for half-transparency wouldn't have been enough to bring the Saturn up to speed in this regard. Half-transparency is also really damn slow on the Saturn. Quoting the VDP1 User's Manual:

> Color calculation of half-transparency is performed on the pixel data of the original
graphic and the pixel data read from the write coordinates. Drawing in this case
slows down, so use caution—it takes six times longer than when color calculation is
not performed.

This compounds with the Saturn VDP1 already having a considerable reduction in fillrate compared to the Playstation GPU. Playstation wasn't just capable of transparency, it was also damn fast at it, so emulating effects with transparency was feasible.

PS2 took this approach to its illogical extreme.
Meh, not really. The same way I could claim that yours is also just one anecdote. Otherwise we would be in the business of comparing how grand an anecdote we each can come up with.

But how about we add more anecdotes from other people?

You will find a lot of posts online, if you search for something like: "windows volume mixer too loud". For example:

[1]: https://old.reddit.com/r/Windows10/comments/lfi6yr/default_s...

[2]: https://old.reddit.com/r/techsupport/comments/e7j44w/minimum... (ooops, this person even mentions the 5% like I did, haha)

[3]: https://superuser.com/questions/1760843/how-do-i-make-the-wi...

[4]: https://superuser.com/questions/432040/how-do-i-lower-the-ha... (yep, juuust like I remember, even back to Windows XP this issue goes)

As another data point, one friend of mine bought an external audio interface, because of these and other annoyances in Windows and now regulates the volume using that.
I built one of those many years ago as well. :)

* https://github.com/carlosefr/DisKnobUI
* https://www.youtube.com/watch?v=MvpPVjJnbao

It thought about using that (the spindle motor from a hard-disk) for this project. The issue is that it's not very precise at very low speeds. It sort of works, but it falls out of sequence too often.
My own story is complicated by the fact that my family moved trans-Atlantic at the time. In fact, I got a DC in the UK after the PS2 because we moved back and I got a system and games for cheap from a newspaper classified ad, around late 2002.

I suspect my parents didn't feel the need to upgrade from dial-up to DSL or DOCSIS while we were planning a 5000 mile move. We went from 1p-a-minute dial up ("put a timer on the stove, you have 15 minutes!") in 1998 to unlimited (but still with one phone line; drag the cord from the PC to the kitchen and hope Grandma doesn't try to call) a year-ish after, and then got 1.2Mbps DSL once we were in Canada in mid 2002.

My friend down the street upgraded and got a new PC around 1999 or 2000. I don't remember the specs, but it was much nicer than my dad's 300MHz K6-2 with no USB ports. For a while we even needed to use CursorKeys because the V90 modem used the same COM port as the mouse! So I used their PC for Napster, then Kazaa and WinMX, for 128kbps MP3s and "which pixel is Neo?" 700MB copies of The Matrix (sidenote: I warned him against searching for xXx featuring Vin Diesel, but he had to learn the hard way...)

We were aware of "chipped" consoles, and my family even asked the local indie game store if they could do it ("That'z Entertainment" in Lakeside, if any locals are reading this) but my only experiences with game piracy at that point was my dad's friend who had a modded PSX ("holy crap it says SCEA instead of SCEE!") and then the same friend as the paragraph above getting a PSX that his Army dad brought back from Eastern Europe along with Ice Age on DVD.

DC piracy was 100% a thing in its lifetime, but I still don't think it was widespread enough to have harmed the console's chances. The company was just out of cash.

> There were also release groups -- because of course there were -- that specialized partly in shrinking a larger (>650 or >700MB) DC title down to a size that would fit onto a CD-R, or sometimes onto two of them. (That involved Deep Magic, for the time, and implicitly involved a download stage.)

Even years later I was annoyed that the CDI version of Skies of Arcadia (Echelon, maybe?) didn't support the VGA box.
How would that work? The entire point of https is that it can't be hijacked.

(Or rather, you can hijack it, but you can't show a portal on that connection, so what would be the point?)
And not isolated to Japan..

Nov 2021

Adult diaper sales in China could exceed infant diaper sales by 2025, research suggests

https://www.businessinsider.com/adult-diaper-sales-china-exc...
The mass surveillance that these ad networks perpetrate has grown into grotesque proportions. One of the concerning "side effects" here is that it provides the basis for mass surveillance, repression and therefore authoritarian regimes - and a slide by democratic governments into a gradual increase of authoritarianism. It needs to come to a stop, and GDPR isn't going to accomplish that.

But what solutions are out there that guarantee reasonable anonymity, and not at the same time provide a haven for criminals?

My impression is that there aren't any, at least not sufficiently user friendly ones.
Which means that there is a business opportunity here.
Emirates itself is Emirati and not Saudi, but the chief mentioned in the article is Tim Clark, who is British.
I'm conflicted on comments like that. On one hand, companies make mistakes otherwise they'd never lose in court, but they do from time to time. On the other hand, Vultr has their own lawyers, presumably higher paid and better armed than an individual would have access to, so how confident can one be that their personal lawyer has a better legal theory than the corporate lawyers?
That depends entirely on what you're doing. If your workload is heavily transactional, then sure, that might add complexity.

The simplicity is not having a separate process that can fail, and that requires fail over, and monitoring.
I thought that a good Bayesian model was supposed to be demonstrably robust under a range of prior distributions?
Related:

Japan nappy maker shifts from babies to adults

https://news.ycombinator.com/item?id=39836642
Yeah, this is the way to end up with ad-hoc, bug-ridden, half-baked implementation of fabric (or ansible, salt, helm, nix, or any tool that is more appropriate for this job)

And you haven't addressed the issue that whoever is performing the role of DevOps on this project must know Go.
why lifo? can you elaborate?
I think you've mistaken the UAE (United Arab Emirates, flag carriers being Emirates and Etihad) for the KSA (Kingdom of Saudi Arabia, flag carrier being Saudia ). These are different countries (and airlines).
So far this [0] is the ONLY "AI stems splitter" I've found that really works great. Doesn't provide lyrics or chords, but it correctly splits any track in 4 stems (music, voice, drums, fx).

[0] https://vocalremover.org/splitter-ai
I think it's too late for them. There is no rewind.
> I don’t see why you need an engineer to manage engineers.

I do, every time I see that ring engineers wear.

The company has its bottom line, people can lose jobs, but the engineer's bottom line must come first or people die. Boeing got that wrong and you haven't learned the lesson? That's what the ring's for: lessons paid in blood.

Don't get me wrong, not everybody called an engineer needs this mindset. But specifically when we're talking about Boeing? Yeah. You need engineers in the lead throughout the whole process, all the way to the top. Shit rolls downhill.
How Did a Ship Destroy Baltimore's Key Bridge? [video]
Young People Try Windows 98 (2022)
If tugboats had been attending Dali, would they have had enough thrust to correct Dali’s course when it lost power?
[dupe]

More discussion: https://news.ycombinator.com/item?id=39834675
I remember some of the earlier talks from Jonathan Blow about how he was designing Jai (the programming language) to alleviate some of these problems and support explorative programmings.

One of the ideas was to write code such that if you copy paste things into a different context, the syntax changes are minimal. It should be trivial to copy paste a block of code to turn it into a function. It should be trivial to turn a lambda into a full blown function. Type signatures should look the same whether they are function arguments or variable definitions etc.

Not advocating for Jai per se... But most languages are pretty bad at supporting this style, some are better.
The fig symbiosism with wasps goes even further than that, since nematodes are also involved, and that they too are bespoke for their fig hosts. AFAIK, the nematodes help mediate wasp reproduction.
For my project I've been using Litestream to Cloudflare's R2, which is compatible with Amazon S3, and has a very generous free tier.
> How do you imagine that will be enforced? Perhaps by... ID?

Emphasis mine. It's that that which I'm disputing.

This law does not require you to have an account to go onto a website. It is a law that requires you are age-checked to hold an account on social media platforms. These are different things.

Holding an account —broadly speaking— allows you to post, like, comment, follow and be profiled in an enduring fashion. Some of these can have life-long implications that 12 year olds aren't equipped to evaluate. How many adults can identify unhealthy social media usage and do something to stop it?

I don't know how age verification will work in practice. Checking a government ID is one way but if you're handing that off to a third party service, it's expensive. They don't need to know who you are for certain. A similar check is when you buy alcohol. If you look young, you're asked for ID.

When I buy alcohol, I'm not because I look like a man with kids nearing his forties. It would be far cheaper for Facebook to have an AI watch a video of you speaking to camera, with ID as a fallback. Many social media platforms are ingesting gigabytes of our faces every day so. They probably already know the rough ages of their users.

But going on a website (eg Youtube) doesn't require you have a profile. Going on Facebook business pages doesn't require it. If anything, laws like this might mean that things like Instagram have to be more open to preserve their reach. Not a bad outcome, IMO.
One small counter I have is that most software development has dependencies anyhow - and with compiled languages this is quite a pain in the arse to manage.
So installing tcl or lua or python or ruby or perl is just a normal problem amongst other problems.

If you want type systems everywhere then I think that's another debate. That is really a total rejection of almost all scripting languages for all purposes.
Some stored procedures but mainly just well planned schema and raw SQL.
"In Bb" that is?