skysight-inc/HackerNews huggingface dataset:
No, it definitely has got worse, I've been doing this 15 years, the sweet spot was the Rails revolution. Before that a lot of frameworks were a bit too much magic, and not enough understanding of how browsers, http and html worked.

Simple MVC stacks went to all languages, jQuery front-ends doing enough but not a lot. JavaScript enhanced easy to reason about server-side stacks.

You used to spend a couple of days a year, yes YEAR, mucking around with tooling. Now it wouldn't be too much of an exaggeration to say you spend a day or so a week fighting some part of your stack because it's been over-engineered.

IDEs can't keep up so you have to run inscrutable command line tools that fail if you have deviated even slightly from whatever error-prone rain-dance some moron claiming 'best practice' has forced into the build process.

Programming used to be about writing code to solve business problems. The shift to DevOps has been a massive productivity drain and most stacks are now incredibly brittle.

The worse part has been debugging, which you touch upon. Native calls, simple call stacks, easy error logging. All gone.

Moving everything into hard to debug http calls has been a disastrous productivity sink.

The irony has been that as languages have got significantly better our productivity has actually dropped massively because of the ridiculous amounts of over-engineering in "modern" code bases.

I recently worked on a project with 2 devs that took 3 months with a modern stack. The prototype in a standard MVC stack I'd made to demo to the client took 2 days.

It's utterly ridiculous and sometimes I feel like the boy in the story about the emperor with no clothes.
I'm more than two decades away from being gen-z, and I still agree with that sentiment. There might be that theoretical wise and disciplined Perl programmer writing well structured and readable code, but wherever I interfaced with people writing/maintaining Perl code, it was the most hastily thrown together crap that once was a small tool that "just worked" and then slowly grew completely out of hands over the years. You can have that in any language, but for some reason Perl always excelled at that discipline.

Also, https://www.youtube.com/watch?v=0jK0ytvjv-E
Is there a conventional solution for authn/authz that just works for new systems and services?
That’s even less attractive when you consider that you have no idea when they will switch to a new version number and ask you to pay again.

Things 3 have been out for a long time now so personally I wouldn’t take the risk and would rather wait for Things 4, so that my payment lasts some time.
The usual benefit is that it makes it unguessable. If someone knows your mycatchalldomain he can guess valid e-mail addresses. That way you can be reasonably sure that if someone else is sending e-mails to a specific address the address got leaked.
>Garbage collection is not mandatory

What does that mean? Isn't GC a fundamental part of Go?
Worse, I have used services where they changed the email validation code years after setting up my account and then I could no longer log in because my email address had a + in it. So I don't do this anymore.

Sneakemail, which lets you do it with hyphens, works pretty well, though.
It’s already the case on a lot of websites, I had issues using +plus addresses to register accounts since at least a decade.
Not at all.

From jQuery’s release to 2014 there were multiple phases of front-end frameworks.

Backbone, Knockout, AngularJS, Ember. All of these had their time in the light during that phase. Most companies were already switched over to one of these frameworks. React was the new kid on the block at this time.

You Don’t Need jQuery was out well before 2014.

It’s also a bit difficult to compare jQuery since it’s a library that can linger in a codebase indefinitely. It’s not a framework.

Also jQuery release date was 2006, so the equivalent year 9 would be 2015. By which point React migrations were in full swing. I wrote my first on the job React + Flux application in 2014 and then joined a new larger company in 2015 where we were making plans for a React migration.
I think Orelly themselves put these for free back in the day in its own domain. I have to seek archive.org in order to be sure.

I tought that because most of the books are outdated (15 years on IT it's an epoch), albeit the sed/awk/perl/*sh and Sendmail books are still godly useful.
The Magic of Tailscale
Tailscale is my favorite (product) discovery of 2022. I initially set it up to use as a VPN to get around a misbehaving corporate firewall and accidentally realized it solved a whole bunch of other problems I didn't realize I had. Usually a new product doesn't even live up to the intended use case and so TS is really anomalous IMHO in how good it is.

- SSH'ing into a raspberry pi I have at home that does random IoT stuff.

- Accessing servers on my local dev machine from other devices for testing (i.e. a Windows box or phone)

- Giving access to production bastion devices without publicly exposing anything to the internet.

And best of all I don't have to fiddle with the usual networking stuff. It just works. Kudos on the raise!

Non-disclaimer: I have no relation to anyone on the team. Tailscale is just a delight to use.
Which is why your advice was impractical, not practical.
Keep in mind that

- those hash maps are optimized for large sets

- they work around several edge cases

- they implement way more features than an in-house implementation

- they need to support many types of hardware

A decent engineer can beat the std collections in a day on performance. But to do that in production over a decade with shifting requirements is a different ball game.
Yep, that's the only dealbreaker for me - I'll keep an eye out for v2!
FFS I don't know how I typo'd "html6" I meant HTML5. Too late for edit.
Isn't it a bit expensive? I mean both wso2 subscription and asgardeo tiers.
Powershell takes heavy inspiration and some syntax from Perl.
I know it was supposed to be a funny throwaway line, but I am irked by the "with $100 million you could interrupt the Super Bowl for 7 full minutes." That's not how sports advertising runs works. You are bidding on a limited amount of space determined by the game. I think there is also a non-linear cost.
Kubectl. The amount of keystrokes required to do anything is exhausting, particularly between namespaces. Managing the config file if you have multiple clusters is also a pain.

Teams. Microsoft can buy as many chat/telecom services as they want and keep folding them in, but it’s not going to make it better. Such a quirky hodgepodge that I loathe every day.

iOS and MacOS both seem to keep getting buggier without adding a single feature I care about.

And as someone else said, Windows search. I’m trying to find an app by name, but somehow you can never locate it until I get the full name exactly right?
With such a huge investment comes the obligation to eventually pay it back. Is this another one of my favourite tools going the way of Dropbox, 1Password and all other companies that were formed around what should be a platform feature, which took on way too large investment sums and were eventually forced to become the everything, losing sight of their core values?

I sincerely hope not, but there's so much bad precedent.
>Whatever the verb you choose, I've done it over the course of the years from C, sh, csh, grep, sed, awk, Fortran, COBOL, PL/I, BASIC-PLUS, SNOBOL, Lisp, Ada, C++, and Python. To name a few. To the extent that Perl rules rather than sucks, it's because the various features of these languages ruled rather than sucked.

"I have stolen ideas from every book I have ever read. My principle in researching a novel is 'Read like a butterfly, write like a bee', and if this story contains any honey, it is entirely because of the quality of the nectar I found in the work of better writers."

Philip Pullman
YES. The software industry produces enough unnecessary complexity to keep everybody busy.

Furthermore, it's becoming more and more hype/marketing driven.

Solutions are adopted because they are popular or "cool". CV-driven development is becoming the norm.
Needs a white lab coat.
Show HN: Code reviews intimidated me. Now I'm helping developers master them
It's so strange to me how not using a framework is so often displayed as the "simple" solution.
Not using a framework basically means using global, mutable state. This is maybe ok if all you need is one or two dropdowns. But anything further it isnt the way.
Also didn't SGML offer a terse generic closer </> ?
The purpose of a union is to create a labor cartel which tends to standardize the price of labor above the rate at which the market would likely set it. IP clauses and non-competes are a small part of the issues plaguing our industry. Putting constraints on the labor supply is probably not a good thing; it leads to the market for labor relocating to less union-friendly climes. Ask anyone from Detroit how well that worked out.
maybe a step by step upgrade from 2.x->4.x->5.x->6.x needed

there are subtile changes between the very early studio versions
but when reaching VS2005/2008 everything is fine for upgrade
Just because you engage in solor roleplaying doesn't mean you shun communal roleplaying. Another comment asks what's the difference with sitting along in your room and playing a computer game. Well, yes.

Also, another comment in another thread reminded me of Choose Your Own Adventure games that were popular in the '90s and I suppose they were popular among the same crowd that played D&D with each other.
> For people who believe there’s a catch — and most still do — then I don’t know how to write a blog post or hire a marketing or sales team to change their minds.

I think the catch is that (at least at the free level) one must trust an identity providers. For many companies that's probably fair enough, but for high-security companies and private individuals one absolutely cannot trust anything running outside of one's physical control. Service providers can be suborned, either legally by corrupt regimes or illegally by employees. There is no way that I would permit Google, Microsoft or GitHub (their three supported options) to gate access to my private devices.

I think that one must also trust Tailscale themselves, although I could be wrong about that.
>Things need not continue as they are!

Well they are not in FreeBSD land, one could even use ZFS (in NetBSD too btw).

Why use a OS when the dev are not interested in fixing that horrible partitioning in the first place...no thanks...oh and btw implemented UFS2/FFS2 a year ago, that really shows that OpenBSD is not interested in Filesystems (something i really care about)

Not being against OpenBSD, but i have no interest working with OpenBSD since i already work with FreeBSD.
Its disturbing how many people on HN are okay with this.
> If this pattern becomes popular enough, it won't take long until services strip out the + part entirely.

Why would they do that? Specifically to spam more discreetly? But it's trivial to auto-filter all non-plus addresses to the trash.
Great product. One of the very few that "just works" and "gets better all the time".
Facebook Research's logbook for training a 175B parameter language model [pdf]
Yes, I do this too...its a different thing when you are talking about your own insular project or something at a smaller scale.

The thing I was talking about was larger scale projects like the ones mentioned by the author (of the sort I work on at my day job) where you have teams of stakeholders and outside influence combined with a desire to release rapidly in an iterative form.

Software these days is just done differently in those contexts...we can't slow down enough to do what was detailed above...I just wish the world was sorted in a way or slowed down enough to do REAL engineering.
> It’s a main theme in almost every major titan, god, and hero story

I'm assuming 'it' refers to:
> wanting to be better off than their parents before them
and I'm pretty much coming up blank in terms of examples. If you're thinking of the Uranus->Chronus->Zeus sequence, that's hardly the same thing.

Cronus and Zeus were both motivated by revenge:
> But great Cronos the wily took courage and answered his dear mother: “Mother, I will undertake to do this deed, for I reverence not our father of evil name, for he first thought of doing shameful things.”

and
> But when she was about to bear Zeus, the father of gods and men, then she besought her own dear parents, Earth and starry Heaven, to devise some plan with her that the birth of her dear child might be concealed, and that retribution might overtake great, crafty Cronos for his own father and also for the children whom he had swallowed down.

And in fact Zeus took steps to ensure the cycle did not continue:
> Now Zeus, king of the gods, made Metis his wife first, and she was wisest among gods and mortal men. But when she was about to bring forth the goddess bright-eyed Athene, Zeus
craftily deceived her with cunning words and put her in his own belly, as Earth and starry Heaven advised. For they advised him so, to the end that no other should hold royal sway over the eternal gods in place of Zeus; for very wise children were destined to be born of her, first the maiden bright-eyed Tritogeneia, equal to her father in strength and in wise understanding; but afterwards she was to bear a son of overbearing spirit, king of gods and men. But Zeus put her into his own belly first, that the goddess might devise for him both good and evil.
(all from Theogony, https://www.theoi.com/Text/HesiodTheogony.html)

Now for heroes, which ones do you mean? Not Cadmus, not Orestes, not Odysseus, not Achilles, not Bellerophon, not Hercules. Oedipus killed his father and Perseus killed his grandfather, but neither was intentional.
Clearpath Announces TurtleBot 4
Keycloak is great! Just wish it didn't need so much RAM (2GB at least).
Eventually all things will be abandoned and/or rewritten. It will all be thrown away and then there will be more work ahead ($$$). I cringe thinking about the wasted life, though.
For anyone else who wonders wtf tailscale is:

> Tailscale is a VPN service that makes the devices and applications you own accessible anywhere in the world, securely and effortlessly. It enables encrypted point-to-point connections using the open source WireGuard protocol, which means only devices on your private network can communicate with each other.

It seems to take care of key distribution, nat-traversal, authentication etc etc

Neat! No sure how that is 'fixing internet' exactly, but really cool anyway
I’m right here, bombing Leetcode interviews because they ask me to write a program that sorts the columns in a CSV file in 15 minutes and I only know C.
I was just thinking how long before somebody mentions Docker. Why leave Kubernetes out? Point of article missed completely.
> That politicization, he feels—and I agree—is a strong impediment to the objectivity needed to solve any scientific problem. Climate change is one such problem, and its solution is hampered by tribalism.

When politicization touchs science we don't get "politics" with a pinch of science. We get science with too much politics.

Science with too much ego is politics. With some ego, is science. Without ego, is the beauty nature, pure comprehension and knowledge.
Stacks are allocated statically upfront. However, you can change the size the kernel allocates, you can point them to use a custom memory space instead of the default one and you can change the stack you're running on. Also, like all memory pages, stack space isn't actually allocated until you modify it so if your stack depth doesn't get crazy large/you're not storing large objects on the stack, it's possible your 16 MB stack is only using 1 MB or so of real RAM.
Miguel Ojeda is doing the lion’s share of the work here, and he is a kernel maintainer: https://ojeda.dev/

The person you’re replying to is either deeply misinformed or trolling
Google is the only company I'm aware of where the engineers constantly publish popular books about their engineering practices.

Apple, Amazon / AWS, MSFT, etc. have all done impressive things in their space at various points, but seem to lack the mixture of personalities / culture / reputation where "Engineering at Apple" isn't quite the hit that SRE at Google [1] or this book may be.

1 - https://www.amazon.com/Site-Reliability-Engineering-Producti...

Edit: If you're at Apple and happen to work in hardware, I would pay good money to read about the process and war stories.
I also like htmx.
There’s a mix - some are walled off, some internal to housing (interior of a block), some just fenced off.

The Eaton Square viewed on Google Maps shows a variety. The main square is shoulder-high iron fencing. But many blocks have walked or internal gardens.
One could increase the fee for renewal with time. And it would prevent Disney from extending copyright perpetually for everything to protect Steamboat Willy.
The problem is that Roe v. Wade frames the right to have an abortion as stemming from the right to privacy, and in fact is the decision that created the concept of a Right to Privacy. So, in Theoretical Jurisprudence Land, the Right to Privacy is at risk, because it's tied to something much more controversial.
Given that we profit from greater need to write code, maybe this is annoying, but otherwise keeps us in demand.
https://en.wikipedia.org/wiki/3D_television "As of 2017, most 3D TV sets and services are no longer available"
The reality is all the tools you mentioned solve certain problems really well.

Need container orchestration? K8s is the best on the planet far and away

Need accelerated compute? Rust is a fantastic language that saves us from c++

These tools are all fantastic and we should be very grateful we have them. If people are using them outside their use cases then that’s just bad engineering.
Promotion based architecture is self fulfilling prophecy at least in BI/ data world.

I see everybody around me moving to cloud, without really good explanation why. Only reasonable thing I can see as an pattern is that cloud experience on top of data things gets paid 30% more. It made me consider cloud a lot.

I was considering switching to cloud, just so I can put in my CV "experience with migration to cloud".

For next person commenting that it makes sense: it doesn't with 200gb database and super predictable workload, growth and usage.
https://www.fieldengineer.com/blogs/cloud-is-transforming-te...
> We’re here to fix the Internet

That's such a broad "mission statement" that I wonder if it's effective at all. I mean, what SaaS wouldn't say that they fix something with the internet? That's to whole reason for online businesses solving one or another problem.

How could that statement help them guide their implementations of various solutions?
Yeah, I just played DotT remastered (iPad) last night. I wasn't a fan of the art style /in general/. Something to note though, I played it entirely in the "old" pixel format not the new style (you can change between the two with a gesture at any point). I really did try to like the new art, but just couldn't, I genuinely preferred the pixel style.

For Monkey Islane I'm pretty sad that he's gone with the art style he has, looking at the photos they just seem claustrophobic, lacking in charm or character to me.
Fixed it just for you =)
For most Keycloak users, a very tiny subset of OIDC is being used too. Usually there is no three way relationship between a third party developer, an API provider and a user anymore. You could rip scopes out of Keycloak and few users wouldn't be able to cover their use cases. Rarely is there more than one set of scopes being used with the same client.

Keycloak also supports some very obscure specs, my favourite probably being "Client Initiated Backend Authentication" which can enable a push message sent to authenticator app type authentication flow using a lot of polling and/or webhooks.
I've maintained some pretty big libraries inside Google at one time or another in the last 16 years. I believe our system is bad for both sides (library maintainers and users). Here are some of my frustrations:

* the One Version Rule means that library authors can't change a library "upstream": your changes must work now or they can't get in. This sets the bar for landing changes very high, so development moves at a snail's pace. The version control and build system we have makes it difficult to work inside a branch, so collaboration on experimental/new things between engineers is difficult.

* users can create any test they wish that exercises their integration with your library. They can depend on things you never promised (Hyrum's law, addressed in the book). Each of these tests becomes a promise you, the library maintainer, make to that user: we will never break that test, no matter how weird it is. This is another huge burden on library maintainers.

* the One Version Rule means that, as a user, I can't just pin my dependence on some software to version X. For example, if I depend on Bigtable Client, just give me version 1.4. I don't need the meager performance improvements in version 1.5, because I don't want to risk breaking my project. This means every roll-up release you make, every sync to HEAD you do, risks bringing in some bug in the bleeding-edge version of literally everything you depend on.
FWIW I found better luck looking for "Starter kits" that are the board + power supply + case etc. There were a couple of sites that rpilocator checked that didn't have stock listed, but did have 8gb 4bs as part of a "Starter kit" for ~£15 more.

I assume it's some agreement not to list all the variants to try to allow hobbyists to still get some.
I've been using catch-all addresses for a decade (with Google Apps.. rip) and I doubt that will ever get counter-measured. It's been really nice to catch those few cases where a service clearly sold my email to advertiser.
How about

https://en.wikipedia.org/wiki/Superph%C3%A9nix

and

https://en.wikipedia.org/wiki/Monju_Nuclear_Power_Plant

?
Counter example: Trump Russia Collusion Hoax. It was obvious it was a hoax all along, but if you said so, you were a "conspiracy theorist".
> "If Intel does indeed take this approach, it would amount to an embarrassing admission that the company cannot match the chip-fabrication capabilities of its Taiwanese rival"

That has been clear for years now.
I had a demo of an Autodesk VR system in 1992; in 30 years they've not even managed to come up with new promises to sell, let alone any actual progress towards fulfilling those promises. If that's "too early to call" then you have an unusually long time horizon for your thinking, and I salute you.

What "web3" has going for it that say, "E-gold" didn't is official neglect. People used to feel that the existence of laws against these kind of scams was sufficient reason to stay away from them; enforcement or not.
What's with this obsession about what other people do? You don't have to use a memory unsafe language, but others might.
Well, it's a good tool for money laundering and purchasing drugs.
I read almost all of TFA (started to jump paragraphs near the end) and still couldn't figure out what it was or did, even after being told, repeatedly, that they "make easy things easy".

Apparently, it's a VPN.
> a crisis in terms of the few people holding up the world not being paid properly.

Who? The farmers and sweatshop workers in frontier or emerging economies?
> just hide the register bits in a private TU and expose i2c_init(), i2c_write(), etc.

That's not a zero cost abstraction, unless these "functions" are actually provided in an include file. Embedded programming is often performance sensitive, so this can matter.
Is Harry Potter real?

Because if he isn't, you're trying to use fiction as evidence of something in the real world.
Have you moved a largish email archive from Gmail to Namecheap? I see they tell you to do it with your client but that seems like it might be unreliable when you have gigabytes of mail to move.