4 ms·
The solution the article is proposing isn't realistic. You can't reach anything resembling "craftmanship" without a lot of failed projects preceding it. Craftma
by blixt 12y ago
The solution the article is proposing isn't realistic. You can't reach anything resembling "craftmanship" without a lot of failed projects preceding it. Craftmanship or quality is not a binary state, it evolves organically. A lot of projects are shit, and then there's a few golden nuggets that outcompete the shit. This applies to life in general and also local fields, like programming.
JavaScript has turned out to be one of the most versatile programming environments for this "evolution" to happen. Yes there's a thousand ways of doing things, and maybe only 10 of them are good, and maybe those are difficult to find. But the solution isn't to shut down the shit so that there are only 10 things created instead of 1000. That's just stunting growth, and instead of 10 great things you might just end up with 1 because there was no creative competition (or at least inspiration) in the environment.
So to hell with this thinking, you can't expect to be able to control and lock down a vibrant creative environment and expect the same amount of golden nuggets to come out of it.
I've been writing JavaScript code for 15 years now and the things people are making with it are greater than ever, and many of those things have been reborn out of great ideas implemented poorly. With some kind of "craftmanship" standard, those poor implementations would never have come to exist, and there would be less great ideas in the world.
For the sake of being a bit more constructive in my own rant, I think our efforts should be put into guiding people and helping them find the golden nuggets. And this is happening. There's a lot of tutorials out there. Granted, even the tutorials suffer from the same shit:golden ratio, but finding the golden nuggets is what communities are for.
- coldtea 12y ago>* The solution the article is proposing isn't realistic. You can't reach anything resembling "craftmanship" without a lot of failed projects preceding it.* And yet older generations of programming seem to have managed it. >Craftmanship or quality is not a binary state, it evolves organically I don't thing code grows into craftmanship, much less organically -- either you have craftmanship as an attitude from the beginning of writing something or not.
- blixt 12y agoI believe the only reason you think that previous generations managed it is because previous generations of programming were tremendously less open in terms of visibility. I would even go as far as to say that if you could collect and objectively grade all code in the world 10 years ago and today, the collective code today might actually be of higher quality, simply because code is shared much more today. This leads to more knowledge, which leads to higher quality. In the past, that code was simply left behind on someone's hard drive. Code itself doesn't grow into craftmanship, because craftmanship is what a person does. A person gets better with experience (both from doing and from observing) and inspiration. Greater visibility and sharing of code means better experience (through observation) and better inspiration (from people sharing their great ideas). If you think I'm wrong, the alternative solution isn't difficult: you can avoid shared code repositories altogether and instead write more code from scratch. If you still want code sharing, you can start your own online repository where only thoroughly vetted code is allowed in. The important value to me is that people are not encouraged to censor themselves, but that we push ourselves harder to increase quality, by sharing both our knowledge and our work even more. If navigation is an issue, we need to build better tools. Multiple choices, competition, and organic growth is healthy for the system – enforcing artificial limits believing it'll increase quality is not.