4 ms·
What framework, and what is it doing to help with maintenance? My experience has been that typical RoRish frameworks are so heavily concerned with trying to ma
by asdasf 13y ago
What framework, and what is it doing to help with maintenance? My experience has been that typical RoRish frameworks are so heavily concerned with trying to make the initial writing of the app easier that they actually hinder long term maintenance.
- agentultra 13y agoPick a framework, I've probably worked on an application that used it. what is it doing to help with maintenance? What frameworks do: impose structure and convention on the design of programs. In the case of web frameworks you provide some data, map URLs to functions, and hook into some helpers for managing sessions, caching, and the like. Haskell has them too. ...they actually hinder long term maintenance. I've found the opposite to be true in the general case. Disqus is probably the largest Django application out there that I know of (and note I have never worked there). From their technical talks and contributions to Django over the years it seems to me that Django has been a net-win for them, maintenance wise, over the years. I can't say what it's like maintaining a Django application like Disqus but it doesn't sound to me from what I know that Django is any hindrance to them.
- asdasf 13y ago>What frameworks do: impose structure and convention on the design of programs. So, nothing? Convention doesn't prevent things from breaking when you make changes. >Haskell has them too I know, I use two of them. And I haven't found any benefits to maintenance from them. I've found huge benefits to maintenance from haskell though. >it seems to me that Django has been a net-win for them Compared to what though? I didn't say frameworks are useless, I said they don't appear to do anything to aid in maintenance.
- agentultra 13y agoSo, nothing? Convention doesn't prevent things from breaking when you make changes. No, not nothing. Exactly what it says on the tin. Without a web framework what do you get? A few buffers to read/write some bytes to. Have fun writing your parsers, dispatchers, database connection pool handling, object relational mapper, etc, etc, etc... and especially have fun maintaining all of that. If you used a framework though, you wouldn't have to. It's already there and there's a community of people who work on that stuff for you. Awesome. First rule of maintenance: the code you don't write is the code you don't have to maintain. I don't see what Haskell is winning here in terms of maintenance. Without Yesod or any other framework you're in the same boat as someone starting with plain Java or Tcl or something. Unless of course you're referring to its masochistic type system that magically protects you from ever writing a bug ever. Good luck with that. My point was, originally, that a web developer that doesn't already know Haskell and hasn't convinced themselves to learn Haskell isn't going to look at some Haskell code and be converted. They're going to see StateT and monad combinators and the awful pain of IO in Haskell and go write their app in X.
- asdasf 13y ago>Without a web framework what do you get? A few buffers to read/write some bytes to. Have fun writing your parsers, dispatchers, database connection pool handling, object relational mapper, etc, etc, etc... and especially have fun maintaining all of that. Why would I write all of that myself rather than use libraries? You do realize that writing an application is not a binary choice between "use framework" and "write everything from scratch" right? >If you used a framework though, you wouldn't have to I don't have to anyways, a framework has nothing to do with it. >I don't see what Haskell is winning here in terms of maintenance Type safety. I can change my code, and every single thing I just broke is now specified for me, file and line, by the compiler. This is an absolutely massive difference compared to trying to rely exclusively on unit tests. You should really try it sometime. >Unless of course you're referring to its masochistic type system that magically protects you from ever writing a bug ever. Really, you should try it sometime. Or at least take the ignorant nonsense to reddit where it belongs. >My point was, originally, that a web developer that doesn't already know Haskell and hasn't convinced themselves to learn Haskell isn't going to look at some Haskell code and be converted And my point was that is exactly what happened with both me and my wife.
- agentultra 13y agoReally, you should try it sometime. Or at least take the ignorant nonsense to reddit where it belongs. I've read the papers and I've tried a bit of Haskell. I write lots of C++ too. I've tried different flavours of typing. I still prefer dynamic, strong-typing any day. Common Lisp or Python generally do the trick. And I've been programming for > 10 years. I'd appreciate it if you wouldn't assume I'm an ignorant dumbass because I don't agree with you. And my point was that is exactly what happened with both me and my wife. Does not imply it's true for everyone. Maybe I should quantify that my original point with most web developers using existing technologies aren't going to hop over to Haskell because of state transformation and combinator monads and strong typing.
- asdasf 13y ago>I write lots of C++ too I know, that's why you say completely backwards things like "masochistic type system". You are ignorant of haskell, and instead apply your experience with statically typed languages with inexpressive and awkward type systems to haskell. >And I've been programming for > 10 years. I'd appreciate it if you wouldn't assume I'm an ignorant dumbass because I don't agree with you. Ignorance has nothing to do with being a dumbass. You are ignorant. So am I. So is everyone else. The fact that modern type systems is one of the areas where you are ignorant does not make you stupid or a bad person. My suggestion that gaining knowledge and experience in that area could be beneficial to you is not an attack, it is a genuine suggestion. I used to be a programmer with 10 years experience who thought static typing was bad too. >Does not imply it's true for everyone I didn't claim it was. I pointed out that your broad claim is unsupported by evidence, and that my personal experience was directly contradictory.