You're replying to a comment by Sean M.

Sean M Permalink
March 05, 2018, 17:34

Reading through most of the 2+ years of comments here, I'm struck with how the pro-framework people don't address the points made in the article. Rather, they bring up two basic points: 1) Initial software creation is faster with a framework, and 2) Tested code is better than untested code.

I think everyone would agree. However, that's not the point.

Example: I currently work for a group who started using Ruby on Rails in 2009. It was great. The developers here spun up 38 web applications in about two years. Those applications solved a lot of people's problems. The programmers had to hack ActiveResource and Rails core because back then SOA was one of those weird edgy things that Rails didn't support. But the hacking didn't take much time, and development was very quick. So far, so good.

Fast forward nine years. The development staff has rotated out twice. Rails has moved from version 2 to version 5, shedding its preferred JS framework (Prototype) along with making numerous large changes. Our development staffing levels are set in stone by budgetary constraints, and as those 38 initial apps were joined by eleven more, the time to maintain and support those applications has drowned out our groups ability to keep up with Rails core changes --- not due to negligence, laziness or stupidity, but rather due to the simple element of time.

Yes, frameworks save time up front. Yes, using code reviewed by hundreds of developers and tens of thousands of websites is safer than hand-coded. And then comes the part that is utterly miserable: maintaining it.

You may say: you'd have the same problem with handwritten code.

I answer: no, you wouldn't. Here's why: programmers who know the technologies they're using will create a system that solves the need of their users (and not fourty-thousand other users). They do this with a programming language. While that language will move underneath them at times, their code will not change without their consent. IF (and that's a big if) the programmer knows what they're doing, using targeted libraries where it makes sense, and using what every programmer should have a solid grounding in (security, design patterns, coding for future maintenance), then their code is orders of magnitude less complex, more secure due to lower security target area, and needs very light maintenance.

In short, using a framework is fine for freelancers who can walk away from a finished product, or for corporations who can hire n newly-minted CS grads to keep up with framework updates.

But for those of us who have to live for years with what we create, or have to assume the responsibilities of others who walked away, a framework is a sanity death sentence.

Reply To This Comment

(why do I need your e-mail?)

(Your twitter handle, if you have one.)

Type the word "quake3_508": (just to make sure you're a human)

Please preview the comment before submitting to make sure it's OK.