This weekend, WordPress Lead Developer Andrew Nacin shared a link to a short, but interesting article from the CEO of Slack.
Though the article, in its entirety, is worth a read, one of the biggest points made in the article (and in the associated tweet) is:
I feel that what we have right now is just a giant piece of shit. Like, it’s just terrible and we should be humiliated that we offer this to the public. Not everyone finds that motivational, though.
For anyone who has worked in software for long enough to release something to be public (be it 100 users or 100,000 users), this statement is kinda validating isn’t it?
That is, for the majority of the programmers that I know (including myself) both online and offline, I rarely hear any of them talk about how proud they are of the entire architecture of their application. Sure, some talk about parts they are proud of, but more often than not, it’s more about the general problems they have with the current state of the entire system.
The interesting bit is that for those who care about what we’re doing, we try to read books, blogs, articles and discuss topics that go into building quality software. And software, in this sense, isn’t limited to a desktop application – this can be a mobile app, a web application, a web site, a WordPress theme, or even a small JavaScript application that runs in the context of a larger site.
Regardless, it’s easier to talk about how things should be rather than writing things how they should be. Good thing we have that whole refactoring bit, right?
But that’s beside the point of what I’m actually getting at. Instead, the point I’m trying to make is that I think open source software often times is far more harshly criticized than its closed source counterpart.
And why shouldn’t it be?
Continue reading