Why You Should Give Away (Some) of Your Work

I am an ardent supporter of the open-source philosophy – but who isn’t? It is a safe assumption to make that just about anyone working on the web in some capacity (developer, designer, information architect, marketer, etc.) is taking advantage of free/open-source work in one way or another. The internet would not be the internet that we know without free and open-source projects moving it forward. With that in mind, I consider it the obligation of those who make a living on the internet to carry their share of the weight and offer up something in return.

As web-based bread-winners, we work in one of the few, if only, professions where it is common place for our peers to give away their hard work. Not only do many release their work, but tremendous effort is put forth to make it easy for others to use. When I try to explain this to friends/family who are unfamiliar to this environment, they think we are crazy. Honestly though, could you imagine what it would be without this reality? I think most web developers and designers want to release some of their work, if not for altruistic means then for promotional. The problem is the time and the effort it takes to actually release it can be substantial. I could lie and say that the effort is always immediately worth it and that it will always be appreciated – but we know better. There will be times where no one even seems to notice or care. That said, the web landscape depends on the contribution of publicly released projects to keep innovation chugging.

If you want to accomplish something in the world, idealism is not enough – you need to choose a method that works to achieve the goal.

So here’s the deal. I suggest you take something you have been tinkering with in your spare time and release it. Do you have something you have used or currently use which speeds up your workflow? Release it. However, simply releasing something for free is not good enough – license it under a GNU-related license or under Creative Commons. If you work on the web, you do having something that someone else could use. Whatever that is, release it. We are all beneficiaries of an individual or a group of individuals taking the time to do the same thing – why not do the same in return? There are plenty of obvious reasons to release your work which I do not feel the need to dwell on in this article. Rather, I want to spend some paragraphs discussing other reasons to offer up your work.

Your job exists on the fact that other people gave work away for free

The idea may be somewhat basic, but it is a point many overlook or take for granted. This site, along with many others, runs on WordPress and is being served by a LAMP-stack server. In addition, you are most likely viewing this site with Firefox or a WebKit-based browser. All the Javascript on this site is built on top of jQuery. This specific experience is more common than it is not and is almost entirely based on open source projects. If we did not have projects like Linux, Apache, WordPress, jQuery, Rails, Eclipse, Blueprint, etc., the process of creating quality websites would be more costly, less reliable and take more time. The fact that we rely so heavily on the hard work of others dictates the need to return the favor. Our aggregate effort really does make a difference.

Due to this open source platform, the software overhead of creating many websites is essentially nothing. If ramping up a web project necessitated buying licenses for Windows Server, an Oracle database, and commercial IDEs to develop in, the costs just to get started would prove too high for small businesses, hobbyists, young entrepreneurs or any other entity unable to absorb the initial investment. Just imagine if you had to pay for each instance of Rails or WordPress you ran on your server. The web would be a very different place and we would likely not see things like free email or small bootstrap startups. This low cost environment of building on the web allowed early and rapid adoption by entrepreneurs, developers and creators. Almost all the titans of the internet started as small startups with non-existant budgets but great concepts. Ideas drove innovation, not capital. Without that free and open foundation, this likely would not have happened. We would not have seen the anything close to the volume and diversity of sites. All web entities would have been much more business focused and likely more business-centric. It would have been horrible.

Commercial products fit an important purpose, make no mistake. However, I have observed that my suite of tools is moving more and more towards open-source projects. Not because of any idealistic preferences, but because they are simply better. Support is community driven and (for large products) both voluminous and granular. My experience is that finding specific solutions, work-arounds, tutorials and other informational documentation is generally easier for a strong open-source product than its commercial counterpart. Additionally, third-party development in the form of add-ons, plugins, etc. can easily dwarf that of closed-source/commercial competitors. The community-driven development of a product allows for individuals to build solutions for their niche needs that would otherwise may be passed up in the traditional commercial model. In the end, I find strong public projects to offer more features and have a better support platform due to the product’s community. I rely so heavily on public products nowadays that my workflow would essentially have to start from scratch if I could no longer use them.

Open source helps close the digital divide

As hardware costs decline, commercial software costs are becoming the major impediment for lower-income households. Access to technology is not enough – the technology needs to be fit in their budget. Free and open software helps ensure that individuals across all income levels, ages and geographical regions have the same access as those more privileged. This has left an indelible mark on the internet since there is little to no monetary overhead for developing web applications, publishing information or creating media. The rich ecosystem of the internet would otherwise be stagnant if we strictly relied on commercial solutions. Yes, free software which is not open source achieves the same goals in the short term. However, free but closed-source projects can many times die on the vine if the creator(s) stop working on it or stop supporting it. Open source ensures that products continue to live as long as the public feels it serves a need.

Closing the digital divide is not just some charity-case; it is beneficial for everyone. By giving a larger swath of the population access to open and accessible technology/content, we are all able to reap the rewards of millions more potential developers, publishers and content-creators. You may end up using something that one of those people helped release to the public. We all benefit by a more open and inclusive environment.

The effort it takes to get your work ready for public consumption will make it a better product

Make no mistake whatsoever, the creation a good product can be significantly easier than the process of publishing it. For instance, by the time I released coordy, I ended up spending more time getting it ready for public use than I did actually coding it. For code-based projects, you need to spend time commenting your code, writing documentation, cleaning up poorly-written or unused code, creating examples, unit-testing (if you are hardcore), installation notes, I could go on… These are all crucial to a public release, but they are rarely done for oneself. Additionally, when you need to take other people’s use-cases into consideration, it forces you to think about new features, functionality and overall improvements that may currently be unimportant to yourself, but immediately vital to others. By taking the time to make a project usable for the public, you are inherently making the project better for yourself.

The very process of publishing your work is a learning process

Prior to coordy, there was no need for me to write documentation as the code I wrote was primarily for myself. Like many other people, I tend to learn things on a need-to-know basis, therefore documentation was not something I had any experience with. While I cannot attest to being someone who writes exceptional documentation, it is something I am working on and hope to improve at. Besides the obvious tasks for publishing work, even things such as clearly describing what your project is and how it works can be something that we do not necessarily have experience in. How about creating workflows and tools to make the process of packaging up the final product more efficient? These are all invaluable skills that we otherwise may pass on if our project never sees the light of day.

There’s a good chance it is not worth selling

Despite what music companies would like to you believe, just because someone is interested in your work, it does not necessarily mean they are willing to buy it. This does not mean that it is worthless but rather due to the fact that many products are valuable due entirely to the fact that they are free. Open source projects succeed when a large developer community exists around it to provide support, improvements and add-ons to the codebase. I am a firm believer that most web-based products are not worth the time, effort and support it would take to properly sell it. Can you imagine anyone paying for a PHP framework, an Actionscript library or a pixel icon set? Outliers do exist, yes, but they seem to be few and far between. For many, there is far more karma to be gained by offering up work for free than dollars to be gained by selling it.

Open source is not just about code

I firmly believe the notion of open source needs to move beyond source and into other sectors. It is happening, but very slowly. Designers on the web medium will soon not have the luxury of ignorance when it comes to development. As this happens and our future designers have a more intimate relationship with code, development and all that comes with it. I predict that due to this progression, we will see a stronger embrace of the idea of open source among the design community, culminating with a growth in open source fonts, design templates, assets, etc. Open source, when boiled down, has never been about code – it has simply been about sharing ones work to make the larger community a little richer. It sure, seems like something worthwhile, wouldn’t you think?

The Discussion

16 Comments

  • Shameless self promotion but also relevant…

    I’ve just released my first project for the design / development community and I’m really happy about it! I studied print design at university and over the last year or so I’ve been teaching myself web design, I feel privileged to be able to make a living off something that was taught to me for free, from various blogs and resources across the internet, and it’s the least I can do to try and give something back.

    It’s a little web app called http://www.wpfill.me …Instead of being *another* lorem ipsum generator, it generates all the HTML mark up it’s possible for clients to create using WordPress’s Tiny MCE editor. Allowing for quick, full and accurate theme testing. I hope it’s of use to somebody!

1 2

Leave a Comment

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>