Designing Open Source
medium.com
medium.com
1. Python world has a documentation "standard" of a markdown language (ReSt) converts to HTML and LaTeX, usually through a preprocessing called sphinx that can link docs intelligently.
There are doc-a-likes in other languages (JS-docco) and they generally look boring and work-a-day.
Luckily they also have abstracted out most of the templating and css.
I suggest that initially try out writin some themes for a markdown output, but with the goal of agreeing target outputs - that is get the output from markdown for page footer to be standardised across all languages - and then there is a target HTML to aim CSS at - in the same way that there are a million themes for Wordpress because all Wordpress HTML output uses same conventions, so designers can iterate against same background, I would love to see a million themes for open documentation, knowing I could write comments and it would already be not ugly
2. Logos - yeah boring I know but everyone loves them. Offer one to any open source project and they will say yes. So run a gravatar of logos - store the png on (logotar) and link to it via the hash of the repo. Then all I need do is put link of logotar.com/md5hash.png and presto. You have a scorechart and a way to see who has logos for most popular repos and I have a logo in my readme
3. Wan to get more deeply involved in a project - do mood boards for their site or do button / widget themes (ie bootstrap alterations). In the end we developers need as much practise at getting it right as you guys
Brilliant decision to push on this - good luck
5. Build a real website, if the Github project page is the current website. You should probably contact them first to check for backend technology. Not every developer likes Wordpress.
6. Bug reports about smaller design issues. Graphic designer often have good testing skills (and infrastructure?) for multiple operating systems. You can probably suggest a solution already. Examples: "The website should specify the Frutiger font for OS X, because the sans-serif fallback mixes badly with the fixed-width font." or "The navigation menu is unuseable on smartphones. Add this CSS: ..."
7. Larger projects need to integrate multiple parts (wiki,forum,bugtracker,etc) in their website. Often there is no unified theme for all components.
Personally, I like lifeisstillgood's point 1 best, because you would help multiple projects at once. For example, Sphinx themes could definitely benefit from a graphic designer: http://sphinx-doc.org/theming.html
Buy, like I said: I want to follow this call to arms. Not because I "should" but because occasionally I see a lot of nice Open Source projects out there I'd like to be a part of. Or a great concept I'd like to design the logo, icon or UX for. Why? Because of the best motivator out there: ME. I want it for my own portfolio, or for my own network of cool-people-building-cool-stuff or just to learn and become better at some field. So if you want a designer, tell them you'll work with them and give them feedback, make them part of the team for a specific piece of the project.
I realize people are going to downvote me into the 7th ring of hell for this 'selfish' reply, but I'd like to see this happen and I hope this motivator helps.
Totally agree - I'm a crappy writer and I really hoped that sentiment didn't come across, but hey. Totally not what I meant :)
I've been burnt too by people not paying, people underpaying, and people not wanting to pay — but the big realisation I had before writing this was that these projects are not the same as someone wanting a full redesign of their new 'Airbnb for X' for £50; they're community things.
EDIT: Is there anything as developers that we can do to attract designers as contributors to our projects ?
The first one is a drive-by contribution. You're using project XY to help reach your goal but it wasn't perfect. The contribution is providing the fix for that. I guess the equivalent for you is that you see the website's using Helvetica and it hurts your eyes so you want to fix it. I would love that kind of contribution but never saw it happen.
The second one is a owned project. It's your baby. I have a couple of those, they're things I think are great and I would like to help them grow. For that I give some of my free time to nurture them. I would love to see a designer adopt them as well and have discussions on the content and form of the documentation or how we could improve the message by changing the design.
I'm not sure if I'm conveying the approach but what I want to say is that it's not really a task list. It should also be your drive-by contribution or a baby. Just choose what you want, no pressure. And let us know if there's anything that we're doing wrong that throws you off.
Just some last parting words: It also feels really empowering. You see something that is wrong, you can fix it. That is not something you can do with closed software, you have to cope with whatever the vendor has decided to handle the issue.
The closest I've seen to this in the design world is people doing site re-designs and posting them on their own blog. It shows the world an alternative to the existing design but then it's no a direct path to updating the actual site like we could do in software. I wish there was a solution for that.
EDIT: It reminds me, the Amaya browser which only a few have heard of supports of writing back the changes of a page if the server supports it: http://www.w3.org/Amaya/
This kind of thinking can be applied anywhere, not just to open source. Imagine how much good could be accomplished if the world were a more open, collaborative place.
A few months ago there was a thread about a new operating system some people wanted to develop that would rely heavily on aesthetics. The mockups/prototypes I saw for it were weak and mostly stolen concepts from OS X. When I asked - as a designer - how I would get involved in these projects before they begin (because designing after-the-fact is no fun for anyone), I was told simply to try to get in touch with someone on the existing project. Unfortunately, tearing up what they'd already done so far didn't really sound appealing to me as I did not want to ruffle any feathers with whoever was currently designing or developing it.
I'm a lot more interested in raising my hand before work is already underway to say "Hey, I'm here. Here's what I've done in the past and here's what I'm interested in doing in the future." To this point, I wish Github had a section for designers who truly want to contribute to open-source so people could get in touch with them right on the site they would be hosting those projects on. I guess I could put something in my Dribbble profile about that, but I don't think that's where devs wanting free work are looking.
I think 'not ruffling feathers' is sure to be one of the biggest challenges; we also have to figure out how to manage team size (if >1) and work load. In 'the real world' we have things like budgets to constrain them and I wonder how that translates to projects where, theoretically, anyone can get involved. It would be a step backwards if we ended up lots of mediocre design-by-committee.
That said, lots of the most impressive products in recent software engineering have been accomplished by remote, disparate groups of strangers. I think that's really cool and something we as designers should get over our egos and strive to be a part of :)
I've thought about this topic a lot and I honestly don't know how to involve more designers. My current stance is we need to figure out how to educate more engineers on how to make better interaction and product design decisions. It's a much bigger audience and if we can elevate the people writing code then we have a much better chance at creating better products.
A programmer does lots of design. She designs APIs, component architectures, network protocols, database schemas, etc. All of these have a great dose of subjectivity in them. Design by committee also has a bad image here.
You are probably talking about graphic and typographic design. What does a designer do?
In my opinion a big part of design activity is communication. As a graphic designer your job is to visualize other peoples vision. A programmer's job is implement other peoples business rules. Not to develop their own. You need to find out about the values, goals, process, and language of your client and maybe even his customers.
Then a designer goes back to his Mac and fires up his Adobe tools for the next iteration. A programmer goes back to her IDE for the next iteration. This is not in a group for either of them.
tl;dr I do not believe the difference is that big
One nice project that came up on HN recently, but people may have missed, is codetriage (http://http://www.codetriage.com/) which I have signed up for, but have yet to take any action on. It provides a gentle run-way into contributing to projects on github, by emailing you issues from projects you have expressed an interest in helping out with. Even if you are not so confident in your coding skills, there is still plenty of helpful work to be done here. From the emails codetriage sends out:
Goals of Triage
Help share the weight of maintaining a project
Minimize un-needed issues
Prevent stale issues
Encourage productive communication
Teach good citizenship
To become a better coder
How To Triage?
First, carefully read over the issue, title, and description, if there are any comments read over all the comments, carefully. If a member of this repo is engaging actively there is no need to do anything, leaving a comment in the issue would just add to the clutter.
If the issue hasn't been updated in awhile, or if no one has commented consider the issue, if it is a bug try to reproduce it. If it is a pull request consider what an alternate implementation might look like. If there is something you don't understand about the issue and feel others will have that same question please leave your question in the comments. Be as descriptive as possible. Comments like "I don't understand this" are not helpful and counter productive. A better comment might be "Can you help me understand a use case for this?".
If you can reproduce the issue or you believe it is a good pull request, add a comment and say why you think that is. Try to stay positive while triaging issues, ask questions before you :-1: something. If you do decide to :+1: or :-1: on an issue, leave a comment as to why you feel that way. Issues are for social coding, if you help someone make better issues, you're helping the community.
If the issue goes stale, leave a comment asking if it is still a problem. If you get no response for a number of days, you can leave another comment suggesting to the repo owner that they should close the issue.
Go forth and make the world a better place
My point is - I love the idea about contributing with design, but don't write off helping with code issues either! You may surprise yourself! Also worth bearing in mind other areas that may be lacking people-power - for example if you are multi-lingual, translations are another great way to contribute....Maybe I can't find it but there doesn't seem to be a place where open source projects can interactive with designers who are willing to contribute their time freely. Maybe something that could bridge the gap between a designer community site and something like github?
I'm curious - As a developer without design skills, I've used 99designs several times and was always happy with both the process and the results. Does it have a bad rep among designers? Why?
That's kind of the issue - before 99 designs I had to have no design or use my own abilities to get there. It was awful. Now 99designs has raised the awful to acceptable for merely 200 bucks. From my point of view that's great - but it seems there were a lot of people paying designers when they just wanted a logo and a theme
I should say that bootstrap and wordpress has done as much to take this source of incone away as 99deigns. There is now an automated bottom to the market. So it's harder now to find clients. Good designers need to show value add, like the rest of us. I would suggest they a lid the idea of a single site rewrite and join up with AB testers and offer site improvement services in a monthly payment cycle.
The top of the market through is still game change time
Since Bootstrap and other high-quality frameworks have been released I've noticed an all-around higher baseline quality of design (which is a good thing - I'm well aware that there's not always the time or money to involve a designer), and more importantly they provide a nice _baseline_ for developers to get more interested in honing their own design skills.
A parallel might be…say…Rails? I could never have dreamt of making my own web apps in Ruby without it - as a beginner things would have just been far too intimidating. Too many things to learn. But Rails quickly got me to a base level of competency from which I could add skills, and go back to basics (and write things in vanilla Ruby etc). A bit of hand-holding is great.
But yeah - as a craftsman who respects others I try to always employ highly-paid local engineers. That's kind of why we don't (always) like 99designs (but that's a different discussion for a different day I think)
I would suggest we are eliminating the basement level of incompetant design or development, at the cost of not having any basement level clients. This is again probably a good thing.
And yes discussion is going off on a tangent. Stopping now :-)
Edit : thinking it through I would say that the 99designs logo was actually unsatisfactory. It was not technically so (vector graphics, nice clean lines, looks vaguely cloud)
What it was not was anything to do with my business my values my goals or the clients I want to communicate with.
As such it was unsatisfactory - and I guess that's the pain point a good designer needs to beat. Just as I as a custom software developer needs to solve a clients actual problems to be more value than an off shelf product, same for designers.
Just wanted to point out the 99designs et al are not what I think a "designer" does.
ok now really stopping
The only "designers" really loosing work are people eho read 1 book about html and css and want to earn some "fast and easy" money as "designers".
Some people are always going to be at a skill level where 99designs is really the only chance they have to get paid for their work. These are people that despite all of their years, just don't have the eye or the execution to improve. At the same time, they're going to feel as if over these years, they'll have accumulated enough work and had enough experience to charge more for the same, crappy stuff, so you'll see people charging higher rates for subpar work simply based on the fact that they were able to get away with getting paid for crap to begin with. These same people, despite their work, will have attained high reputations and have more projects under their belt, which makes them look better on-paper than someone who is actually a better designer. Worse, there's a lot of folks like these who take someone else's initial submitted concept and run with that instead of iterating on an original idea. This gives them more time to work on the details of someone else's submission, thus looking more fleshed-out and more likely to be chosen.
For others, it is a jumping-off point, where they contribute to help get a feel for real-life projects, client interaction, and just to hone their skills. These are often teenagers, college students or people making a career switch. The difference between these and the above is that they do get better, but they might feel as if they're going to upset past clients if they begin charging what they're worth.
Additionally, there's no 99designs for a higher caliber of designers. There used to be a service called Arteis (a private subsidiary of Logoworks) that worked in a similar way to 99designs (crowdsource-to-one-on-one), but they would kick designers who they felt weren't quality enough, ignored the site or were rated poorly by multiple clients. A couple years ago, they closed the Arteis service down and made it so that you were either working internally for Logoworks or you were one of their on-call freelancers. I had friends that were making upwards of $30-50k a year off of this service who went from having a seemingly endless array of projects they could work on at their feet to having to hustle to get work at all (especially at the rates they were charging through Arteis, because being vetted by a company like that made clients feel more confident in the money they were spending).
This is the same problem 99designers often find themselves in, too.
And to your point about being happy with the results, I think that's subjective; if you're not a designer yourself, it's difficult to foresee the application of the logo working everywhere it will need to. Most 99designs logos are noticeably so, and honestly when I come across them in the wild, the company/project probably would have been better-served with just plaintext until they could afford a professional.