skysight-inc/HackerNews huggingface dataset:
Splitting data is just a hardcore way of splitting the responsibility for the data.

You can't have 42 different classes directly poking the User-table for example. You need one clear location that has the responsibility for the data.

If you move the User-table to a different database schema, other places CANNOT touch it because they won't have access to it =)
The worst WTF system I have ever seen in my 30+ years career was a microservices system.

The best most maintainable systems I have ever worked on were all 1 million+ line monoliths. Split into N libraries with clean API’s and separate teams working on them.

You have a problem so you pick microservices. Now you have N*(N-1) problems.
I neglected to mention there was a third party that reviewed the algorithms to verify they weren't the same.

Nothing is perfect, though, and the pilot is the backup for failure of that system. I.e. turn off the stab trim system.
I agree with this "unpopular opinion". Worked with both MySQL and postgres based mid-scale apps of several thousands of users. Postgres is so deeply lauded here at HN yet requires two more magnitudes of operations work to keep it up and running. Vacuuming sucks hard.
I'd love a new way to write first order logic programs.

I tried to generate prolog from natural language using GPT4 with sometimes interesting results.

https://github.com/HumanAssistedIntelligence/logical
I'm just in the process of migrating from my own domain email to a "normal" mail address because of your last bullet point.
In addition: I try to get to know the people who actually work with the software / who reported the bug. On one hand this makes the work much more interesting. On the other-hand sometimes solutions become trivial, if you see the person doing their work.

anecdote: a person was filing a bug report about occasional weird behavior when submitting data. We soon found out, that the behavior was the same as if the shift-key was pressed while submitting the form. We researched our software and found no issue. We looked at the desktop PC and found nothing. We installed a keylogger temporarily and found out, that the shift-signal really was received. We changed the keyboard and the issue went away. But only for a couple of days/weeks until it returned. At this point or QA chief drove out to the customer and was standing behind them while working. After some time the bug happened again, and the QA-guy saw the reason: The user spends >4h per day on a different software, where she has to press shift-enter to submit data, and it became eventually muscle memory for her, since she was working really really fast. When she switched back to out software, she still has the muscle memory, and presses shift without noticing it.
Interesting question, but the article doesn’t really answer it. It talks about how long they are supposed to last and about failures, but I didn’t see statistics on the time to failure of actual installations, compared to expectations.
Honestly, I think that's the opposite direction for human consideration.

I think patients would like doctors or nurses or nurse practitioners or whatever their insurance pays for . . . to pay attention to them and actually listen and care. Maybe AIs "do it better" in that case.

If computer systems care more about us than other human beings, the problem is not the computer systems.
> I want out from this demented ego driven fashion show.

The author of TFA kinda hits on this in the first paragraph:

> absurdity of the state of the current tech culture. We laugh, and
yet bringing this up in a serious conversation is tantamount to
professional heresy, rendering you borderline un-hirable

As soon as I read that, I felt I knew what the rest of the essay would
be about, and I was right. It's about culture.

A culture of insecurity, wannabeism, fads, in-groups cliques,
so-called "best practices", megalomaniacal levels of scaling,
over-reach..... let's all admit shall we (at least privately) , that
"tech" has an _ugly_ culture, that we've lost those early joys of
solving problems. We've replaced that with a culture of making
problems so we can look good by "solving" them. Just realising that
would bring enormous economic benefits.

In wider human culture, tech is looked down on, for good reasons. At
worst it is a proxy battleground for personal whims and ideologies in
which one group of people set out to impose upon another larger group,
their particular idea of how the world should 'work'. Code becomes our
poor man's mathematics, apparently adding rigour and substance to what
is arbitrary and manifold. The helpless dependency of those who must
use what we create, makes that a very abusive relationship.

It's a shame that Gerald Weinberg's concept of Egoless programming
came at a time before the "boom", and so couldn't address the
devastating effects of ego-driven development on the wider culture.
It's more about the internal dynamics of the development team.

[1] 1971, The Psychology of Computer Programming
I had to do a little bit of Prolog back in University, decades ago, and it broke my head.

I managed to actually solve all the programming tasks we were given (and as I was the only one to do so among my peers, many copied my solutions) - but if anyone then asked me to explain how I did it, I was at a loss. I basically stared at the screen until some sort of intuition hit, and if that didn't work, repeat the process until it does...

I guess the paradigm never really "kicked in" for me ;)
I don't know why but no one hires or listens to the architect who recommends sticking to safe monolithic-esque systems. If you're not talking cloud and microservices and the newest unproven frameworks, you're an old fogey who needs to get with the times. Even though those types of systems are rarely the most efficient, powerful or safe systems

I work for a company that builds software to be used internally by other business. We have like 200 people tops using it simultaneously with no usage spikes, a perfect environment for regular web servers as we'll never have unexpected scaling issues, yet everyone is dying to go to the cloud. Why? I think it's just because our management, programmers and even customers are convinced by cloud provider marketing that the cloud is cool
> You need to have the discipline of a good CI/CD

Good CD is even more important if there are more services to deploy
That sounds crazy. Imagine how much worse it would be if it was a microservices system!
We might see new Tegra chip in next year's Nintendo Switch 2.
It's terrible that anyone supports any terrorist like Goldstein. It's even more terrible that Ben Gvir was elected, given his views.

Though just for context, there is a huge political fight within Israel, partially because of people like Ben Gvir. It's not the whole country supporting this nonsense.

And while 10% of Israelis saying he's a hero is 10% too many, I imagine it's comparable to similar numbers in other countries for similar-ish situations. Still terrible, but not exactly proof that the country is especially racist.

(Though to be fair, it's not like there's zero racism in Israel, though I think it's less about race and more about the national situation/issues around the Palestinians. I don't think it makes sense to think about the Israeli situation in the same way one would think about the racism in the States, for example.)
> It’s effectively one of the only options.

Aren't they all one of the only options?
The real tragedy is this clever people usually talking about their usecases and those present the requirements. There is no average system out there.
There should, I would hope, be more to social considerations than litigation.
Some people who advocate for huge monorepos, like Google has, tend to forget that Google has whole teams building tools just to wrangle the huge singular codebase for refactoring and testing.
Especially medical people with gmail, that gives me the heebie-jeebies. Pretty sure that's a privacy nightmare waiting to happen ...
Their filebrowser (originally part of caddy, since split out)[1] is a pretty nice tool for serving web-based browser of your NAS files.

I'm also a huge fan of Caddy's "handle" and "handle_path" directives for their simplicity.

One thing I will say against it though is that it does seem to run a little hotter than Nginx on my Pi4. Just random spikes here and there, whereas Nginx barely used to blip.

1: https://filebrowser.org/installation/
iBalls
How would you sell Node to other old guys? Especially compared to Go.

I try to favor simple, efficient software. I used to dislike PHP because it was so messy and inefficient, until newer frameworks like Django made it look like it was slim and snappy.
Maybe, in this race to the bottom, Node stands out in a way I hadn't seen, so I'm genuinely interested.
LOL no, we're using websockets but doing REST-like requests over it. It's fun!
I'm surprised they haven't jumped the solar route. Seems like that area has nothing but sun.
I’m currently at a place using microservices, in a monorepo, where business logic is executed in consuming services, and some business logic is in a monolithic graphql layer, that only frontend clients call. Tries all the tricks, fails at all of them.

Still, it’s a profitable business. The dirty truth is that the current crop of engineers are the ones paying with their blood, sweat and tears - and I’m not sure about you, but that’s not what I signed up for as a software engineer, so we should demand better.
I work on very large monoliths all the time. The kind of code that runs international airlines and airports. I run it locally in a VM. No problem.
I think that the article confuses privacy with anonymity. A gmail.com address does not stand out as much, but it is much less private than a self-hosted account on a domain and servers that I own and control.

In my view, privacy is not about being inrecognizable, it's about having control over what aspects of my identity are revealed to the public. A custom domain (unless you're using your last name or something similar) reveals very little about you except maybe your pseudonym and the fact you probably run your own email.

If you're looking for anonymity, email is a very bad place to start.
That being said, I still use my gmail occasionally, mainly for things that need 100% uptime and can't ever get filtered by the recipient's spam filter. My doctor's appointments, electronic ID, for example, still have my Gmail set as a backup address, mainly to prevent me losing basic services in case of some catastrophic failure of my servers.

Overall, running email yourself is fairly complicated, and probably one of the last things you ever want to do self-hosting-wise.
I started using remix a while back and man, it feels really refreshing in the javascript ecosystem. It feels like they really have hit all the sweet spots that you are used to if you come from an older framework like rails/laravel/django.

Even frameworks like Nuxt or similar kinda solves the same issue but they always seem more front end focused and kinda leaves the database layer up to the developer. I love that Remix takes a stance here and helps you get going.

You have everything you need to get started quickly and the performance is great. It's also really easy to extend functionality with packages and seems like there is very few things that you'll miss.
OMG this sounds painful ;) both in processes and state of the codebase

I can ship something in a couple of hours on a monolith where 3000+ engs work and deploy every day, but to be fair that's not what I've seen in any other company I worked at.
I agree. Using a custom email sounds cool first, but sucks in real life when you have to give someone your mail address and they don't understand how to write it, what it means, how it works, and when it is rejected by the system they're typing it into. That's the reason I'm migrating back to a normal mail address.
We all gotta pay the mortgage somehow!
Aren't the shares worthless anyway? The company is bust, right?
*for weird TLDs

I've had all of these issues and more but only with my address that uses an unusual TLD.

As a joke I've considered creating an inbox at something like atdot@atdotatdot.com just so I can cause havoc when someone freaks out over my address or the subsequent use of NATO phonetics over the phone.
Purely anecdotal from the UK, but it seems like the more professional the email address and website the more likely it is you're not dealing with a real trades person.

Genuine tradespeople are often always fully booked months in advance and they don't want to be dealing with random emails all of the time, most of which will be time wasters.

For regular businesses though, I agree, it looks bad.
Cashu – Free and open-source Chaumian ecash system built for Bitcoin
I think that's a rather geeky perspective. No non-technical person ever cares.
- some sites will just silently refuse…

→ their problem, not yours, don't take on.

- refuse to send a password reset…

→ is it a payed service? request moneyback, involve customer protection. is it free service? no warranty for you. don't rely on it heavily.

- say out our your email address to a non-technical person…

→ don't connect to people who can not copy ascii letters, written or verbally. my daugther is 5, she can. "@domain" monoculture is bad.
I dont see any reason from this post not to use a own domain. Only reasons to start using cryptography for emails to sign or encrypt mails. Unfortunately it still has not been standardized to use cryptography in mails. Only few custom, and (afaik) no by default installed mail programms support cryptography without plugins. Also the work involved to set it up and use it across multiple devices and plattforms is could need a big boost.
From what I have heard, you lose access to reply to emails received through Hide My Email if you stop paying. You still receive the emails. When you use "Sign in with Apple" you use an anonymized email as well, and those don't require you to pay.
Yeah sure, that is great feedback. Maybe I'll make the question more specific for next year :D
Most people, most of the time are just BS machines. Obligatory -- but also question of the standards, presupposed purpose. Many dreams for what AI can be, can do, can provide sounds similar in the hoped futures they enable. That does not mean that the particular next-step goals of designers and implementers of different systems will achieve the same ends.

These ones are premised on regurgitating inputs. That they can imitate more than one observer's interpretation of truth at one time. More the better.
> I am 100% certain everyone here would take any kind of backend work over the hype-driven mess that is frontend development

The back-end is becoming an even more hype-driven mess these days. What with k8s and dozens of micro-services and controllers and telemetry-everything. And people don't even listen nowadays if you try to propose something simpler.

The front-end is at-least constrained by browser limitations and the client device. One can only do hanky-panky upto to a point. But at the backend, "throw another cloud machine" at it has become the de-facto solution for most performance issues.
Starting with a monolith is nearly always great advice. However, monoliths tend towards spaghetti because it's too easy essentially to draw new lines on the architecture diagram by importing from anywhere.

To scale a monolith codebase without devolving into spaghetti you need to have a well defined layered structure for modules. The other aspect is being able to hide internal code to prevent it being imported by other modules.

I did a write-up a while ago about how we do this on my current project [1], and published the Maven enforcer rule and ArchUnit test example as an open source project [2].

[1] https://bcoughlan.github.io/posts/modulithic-architecture/
[2] https://github.com/bcoughlan/base-package-enforcer-rule/ https://github.com/bcoughlan/base-package-enforcer-rule/blob...
I have two huge gripes that I've run into when dealing with microservices:

1. They're actually nanoservices. The article touched on this. A single function shouldn't be its own service unless it's something that requires a lot of processing, like a service that converts files from one type to another. But something like handling user registration? You don't need separate services to handle registration, login, and the forgot password flow.

2. The services are poorly named. At a previous job, we had services with names like "Kafka", "Avatar", and "Sophos" and none made sense for what they did, especially Kafka, which I expected to maybe be a wrapper around Apache Kafka? But no. It should have been called the User Preference Service, because it was simply a service for users to get/set their preferences.
> If all a doctor is doing is following a flow chart

I don't think humans do that in the same way as code would. And why would they? That's exactly how they're more valuable!
You're right of course.

My point is that postgres is, compared to almost everything else, easy to get from "can" to "likely will" with just somebody with a brain, a manual and google. In absolute terms it of course depends, but the point is relative.
HN changed the URL for no apparent reason. The appropriate url is: https://cashu.space/

@dang
I'm surprised there's no direct messages yet, I would think that'd be a trivial step from group chat
If schema migrations take non-zero time and you want zero-downtime deployments, then the both service versions need to be compatible with either the new schema or the old schema, regardless of service size.
I'm only half way thru one good post after another. But I don't see many posts about: can VB be extended, expanded, developed? Truly, I am far behind most, and currently I am working on an app, in Excel, that helps the voiceless (like me), speak. I worked w/ Access VB for a short while, but, it, at the very least, needs Sql Server. Also, there are issues with threading, but is that the end of it? Since VB is a high level environment, speed is an issue. I have not yet heard that Excel is really headed toward .net or any other framework, but I keep checking. If anyone at MS wants to appologize for the Ribbon, don't bother. I will never accept! But can VB, in some way, be fixed or rehabilitated or improved, or whatever? I do hope so, but I can be persuaded otherwise.
And then the order table will need to set user ids as a foreign key and you will have two sources of truth lol

Will be fun when you decide that you want to have organizations to be linked to orders instead of users.

All this to say, data management and having more than one source of truth complicates your world a lot. The responsibility for writing the data has to be solved at the appropriate layer: only one entity writing it.
Please see my other replies in this thread for some examples. I wanted to correct every false information but realized it was almost all comments that were either missing some nuances or clearly incorrect.

Human body is a combination of multiple very complex systems. These are so complex that you can't even begin to grasp the complexity without diving pretty deep. Majority of non-MDs (especially non-MD health workers like nurses ironically - Dunning Kruger maybe?) heavily underestimate the knowledge required to graduate medical school.

This complexity of human body brings with it lots of tiny nuances. So much and so tiny that even specialists with decades of experience can miss them. Add to this the mechanisms we still don't completely understand, you get the perfect recipe for "dangerous bad advice from non-medical professionals".

Some of the misinformation is a direct health hazard, like claiming "your body can get rid of what it doesn't need so your salt intake is not an issue". Some of them aren't directly harmful to your health but damages the healthcare, either by breaking the trust like "blood pressure measurement during visits is incorrect and leads to misdiagnosis", or by putting extra pressure to spend healthcare resources unnecessarily like "measuring your bp during the day is useful".

If you want to do any further reading on any of these problems I mentioned, especially the last one which is hard to grasp and counterintuitive, I can link you some resources.

Edit: by MD I mean also DO for Americans.
I wish you good luck with your redemption arc, every monolith counts.
I can confidently say I’ve never had these issues using firstname@firstnamelastname.co.uk and firstname@firstnamelastname.com…

Are you using an unusual vanity domain TLD?
Sounds like you're making it hard for yourselves on purpose. May I ask why you (the team) chose this over other technology and what was the decision process at the start the project?
Would should people who want to have productive group chat with privacy use then?
A million password resets is shockingly low for a DDOS, could this have been an university assignment gone wrong? I can imagine some clueless dean ordering all their engineering grads to submit research to arXiv. If they have 100-200K students, a single poorly written script to link the institution's SSO with automatically created arXiv accounts could easily overwhelm the system.
>The problem microservices try (tried?) to solve isn't about namespaces, it is about too tight coupling between code.

You can use folders to decouple code by making code private within that folder. Only publicize parts of the code with your languages version of exporting.

Or you can make it private behind an entire new repo and behind an entire service. Only publicize parts of the code through api interfaces like http and make everything 10x harder for the sake of decoupling code.
That's good to know, though I'm skeptical for the future and it doesn't appear to be in the policy itself from my read through.

They'll have to tackle email exhaustion eventually, and so far they don't seem interested in add new alternative domains.
Vite-Ts-Package-Starter
If you use typescript and need a project that is set up to make and publish a package, here is my starter repo. https://github.com/ageddesi/vite-ts-package-starter thoughts welcome.
#webdev #typescript #javascript
it's actually much easier than this makes out. Sodastream bottle, some kind of cloth like a tea towel, pillowcase or even a sock over the end, let 'er rip and you have a chunk of dry ice.
I remember yaml and python also having syntactically relevant whitespaces.
> Reasons to not use your own domain for email

Aside from the fact that the author of the blog doesn't really provide any "reasons" in their blog ...

There are ZERO reasons not to use your own domain name for email.

The biggest reason TO use your own domain name is that you are not subject to the corporate whims of your ISP, cloud-email provider or whatever. You get to choose, and you get to choose when to switch.

The only thing you should NOT do is attempt to host your own email server on a home internet connection. Not only do most home ISPs (quite rightly, IMHO) block port 25, but also most home ISP IP ranges are on blocklists.

To make it clear: Nothing wrong with running your on mailserver. Just don't do it on a home internet connection and then bitch and moan about how its not working !
Actually how things usually worked out in House is likely realistic. I'm not talking about the simple cases, but main cases in the show. Which took multiple false starts and wrong treatments to get to final conclusion. In non-critical cases patient is either dead or it will take months or years.
And yet still some point arrangements make that triangle size zero, others make the area 1/2 (assuming unit square). Most something in between. It's a problem similar to sphere packing, just not quite as close to practical application. My brain refuses to auto-resolve already at n=5. Is the obvious distribution (four corners, one in the center) the best according to size of the smallest triangle? I think it is, but no quick answers from me on that one, sorry.

I love this story, it reads like a description of academic arcadia: scientists who when the day's work of teaching is over don't Netflix'n'chill (or go maximise their share of administrative leakage) but gang up on odd mindbenders.