Live data from Hacker News

Why I Hate Frameworks

discuss.joelonsoftware.com

81–90 of 127 posts

Re: Why I Hate Frameworks

#81
post #27

Here's the dirty little secret that no one wants to talk about... The purpose of "assisters" like frameworks and higher level languages is NOT to make good progammers more efficient. It's to make mediocre programmers more likely to produce something of value and to make poor programmers capable of producing anything at all. And if the bell curve tells us anything at all, it's that these "tools" target 90% of all prog…

"""It's to make mediocre programmers more likely to produce something of value and to make poor programmers capable of producing anything at all."""

You make this sound as if you are the great programmer who does not use frameworks but instead reinvents the wheel every time.

Are you really sure you do not use frameworks or libraries in your own work?

Re: Why I Hate Frameworks

#82
post #59
post #49

Earlier quoted context omitted.

Struck a nerve, huh? This was partially in jest (notice the lol), and I realize this is sometimes hard to convey in writing. Sorry. But there's also a lot of truth in it, too. No one is born a mediocre programmer. It's a choice. Notice I didn't say a "junior" programmer. There's a difference. A junior programmer has less experience, but has a good attitude, is willing to learn, and practice his or her craft to get be…

"Struck a nerve, huh?" Yes. I am not a great programmer. I only started caring about it a couple of years ago and since I don't have a real education in it I am very behind in many areas. I am trying to get better, but it's not easy. "No one is born a mediocre programmer. It's a choice." I don't know if I agree with this. Some people are born with incredible talent in various areas. Some people are just born musician…

The humility in your attitude is the mark of a good programmer, not a bad one. If you really are learning and working hard at it, you'll do fine, and I'd rather have you on my team than a lot of the (apparently) super-smart guys you're feeling inferior to.

A nice thing about the programming world is that it's a sort of natural democracy. No one really knows how good they are.

Re: Why I Hate Frameworks

#83
post #27

Here's the dirty little secret that no one wants to talk about... The purpose of "assisters" like frameworks and higher level languages is NOT to make good progammers more efficient. It's to make mediocre programmers more likely to produce something of value and to make poor programmers capable of producing anything at all. And if the bell curve tells us anything at all, it's that these "tools" target 90% of all prog…

Okay great. Well, you go ahead and hack up your project in assembler, making sure to build everything (including the network stack) from scratch. Let's have a race. If only all of our competitors were as misled and arrogant as you. :)

Re: Why I Hate Frameworks

#84
This is about as ridiculous as trying out one bad programming language and then writing an article titled "Why I Hate Programming Languages". Clearly the author has a problem with one particularly bad set of frameworks he's dealing with now, and one set of framework-making mentalities. Yes, there are bad frameworks. There are good frameworks too. I don't imagine anyone draws their own buttons on the screen anymore. To continue the discussion in any general format is useless, since there are countless examples of bad frameworks and countless counter-examples of good frameworks. A more compelling discussion would be one on what makes certain frameworks useful rather than trying to place a final value judgement on the idea entirely.

Re: Why I Hate Frameworks

#85
post #39
post #38

Earlier quoted context omitted.

Things from IKEA are not end products. However all the cutting, planing, and much of the other work has already been done, in the same way that the method of talking to the database and the webserver have been done in the framework.

Things from IKEA are flat-packed end-products.

End products are finished. If something requires assembly, it is not an end product.

Re: Why I Hate Frameworks

#86

On a related note, I saw this on reddit this morning: http://ws.apache.org/xmlrpc/apidocs/org/apache/xmlrpc/server... What's sad is that I have no idea if this is a joke or not.

It's funnier with the Xzibit reference.

Re: Why I Hate Frameworks

#87
post #59
post #49

Earlier quoted context omitted.

Struck a nerve, huh? This was partially in jest (notice the lol), and I realize this is sometimes hard to convey in writing. Sorry. But there's also a lot of truth in it, too. No one is born a mediocre programmer. It's a choice. Notice I didn't say a "junior" programmer. There's a difference. A junior programmer has less experience, but has a good attitude, is willing to learn, and practice his or her craft to get be…

"Struck a nerve, huh?" Yes. I am not a great programmer. I only started caring about it a couple of years ago and since I don't have a real education in it I am very behind in many areas. I am trying to get better, but it's not easy. "No one is born a mediocre programmer. It's a choice." I don't know if I agree with this. Some people are born with incredible talent in various areas. Some people are just born musician…

...don't have a real education in it I am very behind in many areas...

Who isn't? Don't sell yourself short.

No matter how long you play guitar, you're not going to be Jimi Hendrix.

You don't have to code like Jimi Hendrix to be a great programmer. (Oddly, I suspect that if I had to maintain his code, I'd probably be going nuts.) You just have to get your job done, work well with others, and leave something maintainable behind. I have a feeling you're already there. I also have a feeling that everyone reading this has done something cool that neither one of us has ever even thought of. In our field, not knowing something isn't a problem, it's an opportunity.

I understand your sentiment, I really do. But I would be careful of calling misinformed people lazy. I would bet good money that there are "standards" I am breaking with my code that I don't even know exist. If the books I read or the sites I visit haven't told me about them, I wouldn't call myself lazy.

I agree completely. I'd give you an extra up vote for that response if I could.

...are you benefiting from the years of education and experience you have?

Of course. We all are. Not benefiting from any education or experience you have oughta be a crime.

It's not like I can wake up tomorrow and choose to be an expert programmer.

Right. Give it a week or two. If you code as well as you comment here, you're probably way better than you give yourself credit for.

In the back of my mind, I thought there was a chance my remarks would be controversial when I first entered them. Sometimes it's fun to push the envelope here. (Remember, I'm in the middle of Day 4 of regression testing someone else's crap.) You proved me right.

As far as OP is concerned, I still think of frameworks and 4th generation languages as "crutches" for a lot of us. So they serve their purpose. But at a cost many others have talked about here.

Thanks for the great discussion, chez17. I'll make a point to look for you in future posts.

Re: Why I Hate Frameworks

#88
I feel the analogue here is a bit off.

I'd say a framework is more like a factory that produces a variety of fixed-size spice racks (among with other products). You have to learn what button to press to get the right ones, and the spice racks produced will never be exactly how you want them to be.

If you want to quickly generate lots of generic spice rack, then a spice rack factory is all you need. But if you want something really outstanding and unique, then a factory may be anti-productive, and you are better off building it with your own hands.

Re: Why I Hate Frameworks

#89
post #2

An oldie (2005) but goodie. Although it is less about frameworks and more about a disease which was largely contained to Java enterprise-y architecture stuff. (I say as a practitioner in that field... remind me why we are using the Factory pattern here, again?)

> remind me why we are using the Factory pattern here, again?

Because everything in J2EE, including design patterns, is driven by salivating greed, megalomania-level egos and lemming mentality (I have a similar comment in the original thread).

Re: Why I Hate Frameworks

#90

Earlier quoted context omitted.

Java is not the problem, the architecture is the problem. If you try hard enough, you can make something unwieldy and atrocious in ANY language. That's why enterprise architects get the big bucks.

That may be true, but it's a hell of a lot easier to make fugly spaghetti in something statically typed like Java (or C#, C++, and so on). After 8 years of Java, I personally found it really refreshing to build stuff in Python and Ruby.

I don't know. After seeing some pretty unbelievable crap in VB, php, and javascript, I bet it's more a matter of numbers. The kinds of people who program in Python or Ruby aren't off the assembly line because the industry demand isn't as high. If one of those languages manages to become as widely used as Java, plan on seeing fugly spaghetti.
Post reply on HN