7 ms·
Rails Has Turned Me Into a Cannibalizing Idiot
- navyrain 15y agoIn programming, pragmatism always beats dogma. The blog post to which this link responds was particularly venomous and unsubstantive, and is easily dismissed when you apply a modicum of reason. I'm a little surprised that rant even earned a response. Are current web frameworks perfect? No. Are we all in complete agreement about how to improve them? No. Ok, with that out of the way, lets keep this in mind during our collective disagreements: http://scienceblogs.com/startswithabang/upload/2009/08/weekend_diversion_how_to_argue/disagreement-hierarchy.jpg http://scienceblogs.com/startswithabang/upload/2009/08/weeke...
- dextorious 15y ago"""In programming, pragmatism always beats dogma.""" Yes, but also computer science theory --which is mostly infallible domain specific mathematics--, always beats idiotic industry practices and ignorant dismissal of theory. Pragmatism is: "2 + 2.0000000000001 = 4, for my purposes". It's not: "2 + 2 = 5, theoretical dogma be damned"
- navyrain 15y agoOf course, there are do exist hard laws in computer science; this is not in dispute. However, web programming is inherently not a ivory-tower mathematic art, as the objectives of the web programmer are different than those of computer science researcher. The researcher will prioritize scientific rigor, and the web programmer will prioritize practical use of resources during their implementation.
- dextorious 15y ago"""The researcher will prioritize scientific rigor, and the web programmer will prioritize practical use of resources during their implementation.""" Yes, but in the end, you can't escape theory, you have to know it, even if less rigorously and systematically. Consider the example of the web programmer that stores monetary transactions as floats in some db, blissfully unaware of the issues. Hilarity (or huge lawsuits) ensues...
- human_error 15y agoA friend of mine said similar thing about Django, mainly because of its ORM. He said I can't think out of the Django ORM's box.
- jim_kaiser 15y agoNice. An interesting read. I haven't used FubuMVC before but as for rails and other similar web frameworks, the principle is "Convention over Configuration", so you would have certain limits on the way you think. But the bright side is that this "Convention" has arose from identifying the common problems with web development and coming up with a standard solution which adheres to DRY principle which is another one of the Rails founding principles. The Convention also makes it easier for users to share code helping DRY again. So, if you prefer "Configuration over Convention", you are better off using something else.
- fadzlan 15y agoWhat is model based programming?
- deleted 15y ago[deleted]
- dextorious 15y agoFrom the article: """That a person can unequivocally declare every other web framework in the world as failures – is just precious."""" That a person cannot fathom that it's entirely possible that "we're (all) doing it wrong" is just priceless. How about the CGI era? Should we have all stuck with that, still using CGI interfaces in whatever language? Yeah, all or almost all solutions at the time were DOING IT WRONG. It's not even that uncommon. Take Java EE for another example. Almost all frameworks circa 2003-2006 were this bloated mess. Not only the official Sun EE frameworks but tons of libraries and additional third-party stuff was using the same bloated, messy, XML-laden, inefficient style. And they found out they were all DOING IT WRONG, and changed course. In general, the response article is mostly smart-assy ill attempts at humor.
- dlikhten 15y ago"I have a module called “Authenticatable” that handles membership for me. I can attach it to whatever model object I please (Customer, Account, User, whatever) and guess what it can do! Ruby is really a fascinating language when you take the time to understand it beyond a demo that makes you hate it. Did you know Ruby is older than C#? It is." I been doing this exact thing in my project. Core behaviors are now modules included in my AR classes. I can make anything authenticatable, or locatable, etc etc etc. One of my classes "extends" many modules, each one independently tested and gives some specific behavior to any object it takes. Granted, rails is not good as a long-term framework for long-lived projects. It's a great starting point. Eventually you will use less rails and more custom services. I think of rails like facebook thinks of PHP -- front end code.
- ewalk153 15y agoI especially enjoy the fact that Chad's preferred MVC framework, FubuMVC requires Ruby and Python to be installed to setup the development environment. > Where is CommonAssemblyInfo.cs? > > CommonAssemblyInfo.cs is generated by the build. The build > script requires Ruby with rake installed. > > Run InstallGems.bat to get the ruby dependencies (only > needs to be run once per computer) > open a command prompt to the root folder and type rake to > execute rakefile.rb