Live data from Hacker News

Why I Hate Frameworks (2005)

factoryfactoryfactory.net

241–250 of 407 posts

Re: Why I Hate Frameworks (2005)

#241

Earlier quoted context omitted.

This misses the mark. CS classes and degrees are akin to reading books about swinging hammers rather than just swinging the hammer.

> CS classes and degrees are akin to reading books about swinging hammers rather than just swinging the hammer. Computer Science is akin to learning how to forge a hammer, what materials to use in said hammer, and then determining what size and shape is applicable for a given task. Sometimes the specified hammer is made. Most times it is not. "Swinging hammers" is rarely, if ever, considered.

[dead]

Re: Why I Hate Frameworks (2005)

#242
post #47

I remember following up the Angular tutorial. I was about 15min into the tutorial, and I was already editing 8 different files. I never got lost so quickly. I lost a job because I could not use angular, but never felt bad about it. I remember somebody commenting here on HN about a developer conference, where the speakers were bragging about their software being complex. This is an awful trend with software, and is re…

This is why React won: No template language to learn. No prescriptions for managing your app. No piles of abstractions to do basic things. It's just a UI lib. Import it, declare what to paint on-screen, done. Oh, you want routing? "Not my business", says React. Go add a routing library. You want a framework for managing global state? Go find one. Want a kitchen sink frontend solution which bundles all of these common…

> Oh, you want routing? "Not my business", says React. Go add a routing library

Great, now I have to sort through hundreds of different routing libraries and dozens of different build systems, and then do it all again when I need a state library. This is why people hate React.

Re: Why I Hate Frameworks (2005)

#243
For me there are two cases:

1. My problem fits the way a framework is shaped perfectly and the things it does for me are done in the way I want them done

2. My problem doesn't fit any framework and I rather take a micro-framwwork and build the rest myself

The latter is more common

Re: Why I Hate Frameworks (2005)

#244

The worst part of this kind of thing is that young carpenters honestly, really, truly, just need to learn to use a hammer. They can't even conceive of the problems that are being solved by the hammer factory, let alone the factory factory. But in the world of the factory factory factory, the apprentice carpenter (who really just wanted to drive a few nails) is now faced with trying to understand the gargantuan comple…

> But in the world of the factory factory factory, the apprentice carpenter (who really just wanted to drive a few nails) is now faced with trying to understand the gargantuan complexity of the factory factory factory.

Sometimes I wonder if that's the point of all this complexity. (EDIT: I mean really excessive complexity as alluded to in the article with factory factory factories, or 100 microservices all in different programming languages just for a website (true story))

I mean who actually gets to decide what sort of approach to use, and what are their incentives?

The senior in the team is in charge of deciding what approach to use. The senior's (personal) objective is not to get fired, maintain their position as the most senior so they can get the payrises and promotions, etc. So they sort of have an incentive to choose something that is going to be easier to understand for them than for others e.g. juniors, a kind of "moat" to protect their position of power and high salary getting attacked by lower paid juniors who don't yet have the experience to understand complex abstractions over manual tasks they haven't yet done themselves.

I mean obviously that's not a kind thing for a senior to do, nor something that's in their employer's interest, but on the other hand it is rational given their incentives...

Re: Why I Hate Frameworks (2005)

#245
post #22

Related: Why I Hate Frameworks (2005) - https://news.ycombinator.com/item?id=28920095 - Oct 2021 (296 comments) Why I hate frameworks (2005) - https://news.ycombinator.com/item?id=12635142 - Oct 2016 (66 comments) Why I Hate Frameworks (2005) - https://news.ycombinator.com/item?id=9203959 - March 2015 (63 comments) Why I Hate Frameworks (2005) - https://news.ycombinator.com/item?id=6542817 - Oct 2013 (37 comments) Wh…

If only there was a framework to locate Why I hate framework posts...

There is. It's called "post this link on HN".

Re: Why I Hate Frameworks (2005)

#246
post #233
post #209

Earlier quoted context omitted.

> But most projects are not average I call bullshit. Most projects are average by definition. Otherwise that wouldn’t be the average.

You could argue that it's specifically true for projects, but the definition of average absolutely doesn't require that. If for example you had 100 projects were 50 of them were built by expert teams who poured love into their work, and 50 were made by 12 year olds who spent one day on their projects before giving up, the "average" quality of the 100 would be a long way from either the great or the shit products. Lik…

I have a fairly high confidence it’s normally distributed.

Of course me having confidence doesn’t really mean anything, but I’ll work off that assumption anyway.

Re: Why I Hate Frameworks (2005)

#247

Earlier quoted context omitted.

Yea it’s nonsense. Factories are fantastic. If you want to do something as a hobby, sure don’t use the most advanced tools and do it by hand, but for everyone else especially professionals who are charging other people for their time and effort using the best possible tooling is essential. In fact, if somebody didn’t use a common library or framework and instead “rolled their own” it’s downright irresponsible, obnoxi…

I use the same argument for IDEs versus fancy text editors like EMACS. Sure, you might prefer the specific keyboard shortcuts, but IDEs objectively make developers more productive through features like source code integration, debuggers, and refactoring capabilities. Use whatever you like on your home projects, but at work you should be using whatever is most efficient.

It's a really weird sentence. I think most people would consider IDEs are the "fancy" ones, compared to emacs. I have to read your comment 3 times to ensure I didn't read it wrong.

Plus the comparison doesn't work at all. When you use your home-made framework to solve a common problem, you make it harder to maintain for others. When you use emacs you use emacs.

Emacs and IDEs are tools, but frameworks and libraries (and programming languages) are not merely tools. They're tools AND raw materials.

Re: Why I Hate Frameworks (2005)

#248

The worst part of this kind of thing is that young carpenters honestly, really, truly, just need to learn to use a hammer. They can't even conceive of the problems that are being solved by the hammer factory, let alone the factory factory. But in the world of the factory factory factory, the apprentice carpenter (who really just wanted to drive a few nails) is now faced with trying to understand the gargantuan comple…

> But in the world of the factory factory factory, the apprentice carpenter (who really just wanted to drive a few nails) is now faced with trying to understand the gargantuan complexity of the factory factory factory. Sometimes I wonder if that's the point of all this complexity. (EDIT: I mean really excessive complexity as alluded to in the article with factory factory factories, or 100 microservices all in differe…

Senior here. I think this is an overly cynical take.

You want to pick a set of tools which will help you get the job at hand done most effectively. It’s often easier and cheaper to hire or train a team to use a framework or library than it is to reimplement the functionality that library provides from scratch. Eg, if I was building a big single page app, I’d rather use react than reimplement react’s functionality, badly, on top of jquery or something.

Projects last years. An engineer with solid fundamental knowledge can get up to speed with most of these tools and libraries in a few days. The math usually checks out to make them worth using.

But I still acknowledge your point. There are plenty of terrible senior engineers out there making bad choices on tools. And there is a lot of damage a bad tool choice can make to a project. Libraries and frameworks rarely tell you when they’re buggy messes. And coworkers rarely tell you when learning some new tool feels beyond them. So I’m sure there’s plenty of projects out there trying to use fancy tools which have a net negative effect on team productivity.

Re: Why I Hate Frameworks (2005)

#249
post #94

Earlier quoted context omitted.

That's the reason why CS classes and degrees exist. Or at least it should be. No company will pay you for several years just to learn complexity theory, write sorting algorithms, study schedulers, rewrite UNIX tools, understand hardware architectures, etc... They want you to be productive right away, and the shortest path is just to follow recipes with the latest framework. That's the point of education, universities…

"No company will pay you for several years just to learn" No, they never did. But to stay with the hammer metapher - young carpenters would indeed learn on the job, how to use a hammer and all the other tools. But they would not get the same pay (or even no pay and just food and housing). In general it used to be way more common, that companies invested in peoples learning, expecting payoff much later. But with high…

>But with high mobility nowdays, they seldom think it is worth it anymore. You teach and then they thank you and move on.

The high mobility part is overblown.

The biggest teaching factories are also the ones who spend exorbitant amounts on bureaucracy and accessories while gratuitously taking advantage of young people eager to prove themselves, having little to no responsibilities and no understanding of the professional world. Their whole shtick is to find suckers willing to stick after, all the while taking advantage of naïve youth.

The vast majority of people don't move if you keep their pays on actual market rates. Interviewing is a chore. Moving for jobs is a chore. Most people hate getting out of their comfort zone. Yet, many will push individuals to 'prove themselves' first, having any pay raises lag behind for several years, where individuals find themselves getting their promotion's worth of money only after moving to a different company.

It's the companies that have optimized for this behavior and chosen internal promotions should be few and unrewarding. Not the other way around. God forbid they reap what they sow.

Re: Why I Hate Frameworks (2005)

#250

Earlier quoted context omitted.

This misses the mark. CS classes and degrees are akin to reading books about swinging hammers rather than just swinging the hammer.

A lot of people think CS is "learning how to program in xyz." In fact programming is just a tool used to implement CS ideas and demonstrate their application in the real world. In my degree we spent maybe the first 6 weeks on actual learnjng-to-program (in turbo pascal.) Then another later on in Scheme. In 3nd year we did C, I don't recall what instruction we had there - maybe a week? Then 2 weeks in 3rd year where w…

This is a fantastic metaphor. Thanks for this - I’m going to use it myself.
Post reply on HN