The problem with software is that it is too easy to get it working. If you would do completely stupid shit while designing an analog electronic circuit you would get completely stuck in your "inventions" very soon and would not be able to deliver anything working beyond the simplest stuff, the difficulty would just force you to adapt a sensible design approach or resign from doing any electronics in the first place.…
All of your examples don't exactly make the point you're trying to make: Ask anyone who's had to debug game engine code, compilers, operating systems, or the worst of the lot, scientific code. Most of those systems would actually benefit from proper design and architecture, but people like you decrying their "wankery" have relegated such introspection to the dustbin. And that attitude is why software engineering is m…
Poof and then Rails was gone
21–30 of 66 posts
Re: Poof and then Rails was gone
#22Poof and your site hosting is gone
Re: Poof and then Rails was gone
#23Earlier quoted context omitted.
I don't understand how anything on HN that discusses a more complex software architecture is immediately called J2EE/enterprisy and dismissed. Is this because the majority of the community is self thought? Or is this because most of you only build MVPs which are mostly CRUD apps (and therefore don't know from first hand experience the benefits of a modular system)? The constant negative reaction to anything a little…
If simple MVP CRUD apps are one end of the spectrum, then there is the other end which looks a bit like this: https://plus.google.com/+aerotwist/posts/1QhcnQizuPc description: "Convenient proxy factory bean superclass for proxy factory beans that create only singletons." http://docs.spring.io/spring/docs/2.5.x/api/org/springframew...
Re: Poof and then Rails was gone
#24The problem with software is that it is too easy to get it working. If you would do completely stupid shit while designing an analog electronic circuit you would get completely stuck in your "inventions" very soon and would not be able to deliver anything working beyond the simplest stuff, the difficulty would just force you to adapt a sensible design approach or resign from doing any electronics in the first place.…
All of your examples don't exactly make the point you're trying to make: Ask anyone who's had to debug game engine code, compilers, operating systems, or the worst of the lot, scientific code. Most of those systems would actually benefit from proper design and architecture, but people like you decrying their "wankery" have relegated such introspection to the dustbin. And that attitude is why software engineering is m…
KISS applies to scientific code in spades. The concepts are hard enough to get right without all sorts of meta-logic muddling your thinking. Only when applications are truly trivial (i.e. "boring") do developers go on architecture spaceflights to keep themselves entertained.
Re: Poof and then Rails was gone
#25Earlier quoted context omitted.
All of your examples don't exactly make the point you're trying to make: Ask anyone who's had to debug game engine code, compilers, operating systems, or the worst of the lot, scientific code. Most of those systems would actually benefit from proper design and architecture, but people like you decrying their "wankery" have relegated such introspection to the dustbin. And that attitude is why software engineering is m…
That might be fine if the majority of software developers worked on game engines, compilers, or operating systems. But we're talking about Rails applications here.
If you want to make the argument that shitty Rails hairballs that don't scale aren't a problem, because they fulfill a business need and fill it quickly, I'll agree.
That said, that's a business decision, not a technical one.
Re: Poof and then Rails was gone
#26So... poof, and then Rails was J2EE? I have a deep dislike for overabstracting a system merely because someone has a list of hypothetical use cases. And make no mistake: it is always about supporting the hypotheticals, never about supporting what's actually really needed by the system. Down this road lie dozens of layers of abstracted factories and strategy implementations which exist just in case someone wants to "p…
I don't understand how anything on HN that discusses a more complex software architecture is immediately called J2EE/enterprisy and dismissed. Is this because the majority of the community is self thought? Or is this because most of you only build MVPs which are mostly CRUD apps (and therefore don't know from first hand experience the benefits of a modular system)? The constant negative reaction to anything a little…
I had come to the same conclusion regarding Hacker News. It's like bunch of kids chasing the newest trend in fashion.
Hey guys RoR is so cool. Check it out what it can do. As if people just find out what MVC pattern is and wow Scala what a great language. Hey guys let's all switch over to this new hottness then you check out what all these start ups is doing and it just another CRUD app or so call Email killer app. It's fun to watch these kids chasing the new hot trend like the fashion industry.
Re: Poof and then Rails was gone
#27So... poof, and then Rails was J2EE? I have a deep dislike for overabstracting a system merely because someone has a list of hypothetical use cases. And make no mistake: it is always about supporting the hypotheticals, never about supporting what's actually really needed by the system. Down this road lie dozens of layers of abstracted factories and strategy implementations which exist just in case someone wants to "p…
I don't understand how anything on HN that discusses a more complex software architecture is immediately called J2EE/enterprisy and dismissed. Is this because the majority of the community is self thought? Or is this because most of you only build MVPs which are mostly CRUD apps (and therefore don't know from first hand experience the benefits of a modular system)? The constant negative reaction to anything a little…
The lighter-weight frameworks we have now in languages like Ruby and Python do have abstraction to deal with changing out bits of technology, but they've reached a point where they abstract only the things that experience has shown are likely to change, and support only the changes that are likely to happen.
Nobody in the real world is suddenly going to decide to "persist" their employee records to volatile local memory instead of something permanent like a database. Introducing new layers of abstraction -- with the attendant increase in complexity and potential abstraction leak -- to support those types of contrived hypotheticals is how overabstracted systems like J2EE come to be.
Re: Poof and then Rails was gone
#28Re: Poof and then Rails was gone
#29Earlier quoted context omitted.
That might be fine if the majority of software developers worked on game engines, compilers, or operating systems. But we're talking about Rails applications here.
Yes, Web applications are somehow magically exempt from sound engineering practices. If you want to make the argument that shitty Rails hairballs that don't scale aren't a problem, because they fulfill a business need and fill it quickly, I'll agree. That said, that's a business decision, not a technical one.
Once again, Java is a great example. For over a decade, Java developers have piled on more and more "sound engineering practices." Maybe it's just me, but these Java applications are not easy to extend or modify in any way.
Re: Poof and then Rails was gone
#30So... poof, and then Rails was J2EE? I have a deep dislike for overabstracting a system merely because someone has a list of hypothetical use cases. And make no mistake: it is always about supporting the hypotheticals, never about supporting what's actually really needed by the system. Down this road lie dozens of layers of abstracted factories and strategy implementations which exist just in case someone wants to "p…
I don't understand how anything on HN that discusses a more complex software architecture is immediately called J2EE/enterprisy and dismissed. Is this because the majority of the community is self thought? Or is this because most of you only build MVPs which are mostly CRUD apps (and therefore don't know from first hand experience the benefits of a modular system)? The constant negative reaction to anything a little…
> Or is this because most of you only build MVPs which are mostly CRUD apps (and therefore don't know from first hand experience the benefits of a modular system)?
This is what I use Rails for, and its entire reason for existing. It's a set of conventions for CRUD apps, not a general-purpose language for building distributed databases and coordinating space missions.
The problem with these complex software architectures is that they're decoupling Rails from the database, but why in the world would you want to do that? Rails is great because it manages the the meeting point between web requests and relational databases in an elegant, repeatable, commonly-understood way. If you need a complex, general-purpose system that only sometimes will talk to a database for persistence, why in God's name did you use Rails?