Hacker News new | past | comments | ask | show | jobs | submit login

I don't remember ever being so utterly inexperienced so as to firstly adopt a platform like Ruby on Rails, and then follow it up by making an even worse mistake in adopting Node.js.

These platforms seem hip and cool but they actually need extreme levels of discipline, awareness and experience to actually use them in the correct way.

I don't think the guy is a perfectionist at all. Perfectionists deliver finished working products. Perfectionism is a state of mind of not knowing when you are actually "finished finished". Don't make the mistake of thinking your inability to deliver a product is because of some perfectionism trait. It very likely isn't. It's more likely to simply be caused by incompetence.




> Perfectionists deliver finished working products.

From the psychology definition of perfectionism, there's both the version that lets you accomplish a thing well and the version that hinders you from completing something.

Anecdote: When it comes to me doing anything remotely artistic, I get so bogged down in fixing the details that I ignore the big picture. In reality, trying to perfect the details means I'm focusing on things that are going to jump out at me, but not at other people.

"Perfect is the enemy of good" is a good proverb about this.


"These platforms seem hip and cool but they actually need extreme levels of discipline, awareness and experience to actually use them in the correct way."

Is there a platform for which this isn't true? Anyone doing anything novel spends most of their time doing things the wrong way.

And it's odd that you single out those platforms -- RoR is extraordinarily beginner friendly, and less than most other platforms helps you stop from shooting yourself in the foot. Node JS with express again is quite trivial. The platforms have literally nothing to do with their problem (the eager platform jumping is a symptom, not a cause), and they would be non-completionists in any other platform as well.


They are beginner friendly, sure. But that's almost a bad thing.

As this poor guy found out the hard way. Building what was presumably quite a large system inevitably turned into a sprawling mess that was hard to maintain and develop any further.

There is extreme levels of immaturity in the RoR and NodeJS communities (when it comes to the dissemination of good software engineering principles and practices) and unfortunately this often projects outward onto its users who don't know any better. Hell, it was only a few months ago the creator of RoR was poo-poo'ing the very concept of DI/IoC and therefore SRP. So it's no wonder the poor sods in that community that read his blog as though it's gospel end up producing unmaintainable heaps of crap that ends up having to be scrapped.


Building what was presumably quite a large system inevitably turned into a sprawling mess that was hard to maintain and develop any further.

I'm not trying to be difficult, but for which platform isn't that just as true? I have seen disastrous spawling messes in Java, .NET, PHP, RoR, JavaScript, C++, and on and on. Platforms have a minimal ability to control self-damage, and many of the worst disasters of achieve-nothing projects are built in Java, with all of the best intentions and best practices in the world.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: