Frustrated with Open Source
The problem is not open source as a whole, the problem is with the way I’m trying to use it. I stand my belief that products like Joomla and WordPress are phenominal systems for putting together a website or an MVP version of a web application. I have a great appreciation for the communities that support them on a continuous basis for the benefit of developers worldwide.
The thing with these sorts of Open Source systems is that they are toted as being dead simple, out of the box solutions by designers, developers and bloggers – including myself. But what happens when they stop working? This is where my frustration begins.
As noted in previous posts, I’m working on a fun little project called SecretPo.st. I’m using a Joomla/Seblod combo to build out the functionality, which includes a membership system that allows users to send out time-locked messages. It’s not that difficult to put together and customization has been taking time. As an MVP, the job is basically done. I recently logged in to discover that significant CSS files are no longer being called. This wouldn’t normally be an issue except for the fact that I hadn’t made any changes. Something broke, but I didn’t do anything to break it…or did I?
I began tracing back the actions I had took. I had updated unrelated CSS to fix up the design, primarily with the purpose of creating a better user experience. This is a very part-time project, so I usually only work on it for an hour or two, once or twice a week. Every time I make a change, I make sure to back it up, and then I generally do not view the site again for another few days. What could have broken my site? My mental list consisted of the following:
- The backup system, which is a Joomla component, may have somehow reverted certain files back to an older version. Or perhaps corrupted other files.
- Perhaps I’ve been hacked.My love for Israel is not a secret and this wouldn’t be the first time Anti-Israel hackers attempted to damage a site of mine.
- Maybe I had broken it a while ago, but the super cache I had activated to speed up the site hid this from me until the cache was manually cleared.
At the end of the day, I don’t know why it broke (yet). But it did strengthen a thought I’ve had for a while. I see two ways to look at Open Source:
1. A compliment to my work, built by a community to which I would like to contribute
2. An easy way out of doing hard work because someone else did it for me
I’ve been looking at Open Source from the second perspective. I don’t know why my site broke because I never bothered to figure out why or how it worked in the first place. I’ve been using code I don’t understand. This is very common – how many of us drive cars we know nothing about? For that matter, how many of us really understand how our bodies work? The difference is that I want to change how this code works, I want to use it to my advantage. It’s like buying a car and expecting to be able to make it go twice as fast, without understanding why it goes at it’s current speed in the first place.
I’m frustrated with Open Source because I need to strengthen my foundation and fundamental understandings. I’ll continue to log my journey of MVPs using Open Source code because I still believe there is no reason to reinvent the wheel – Open Source can save valuable time. But I’m now also going to be a stronger advocate of learning about the code you’re using. And the more you know, the more you can contribute.