
Designing Open Source - jongold
https://medium.com/words-about-design/e3adc220cfa7
======
lifeisstillgood
Ok, suggestions:

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

~~~
qznc
4\. Make an infographic about the project. Could be advertisement, which
compares it to competitors. Could be a Tutorial. Could be a cheetsheat.

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>

------
digitalengineer
Yes, I am a designer and I have thought about this as well. _However_ stating
your message as _We/you should be giving back_ is not going to resonate with a
lot of designers. Let me tell you why: Most designers fight of the "why-dont-
you-design-a-logo-for-free-for-my-business-because-you-like-to-design" for
years. Even though I say "no" most of the time, I still spend a lot of nights
designing free stuff for a lot of people.

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.

~~~
zimbatm
Agreed, as a developer we also get the occasional "code for free" pitch but I
find it much more satisfying to code for free on things I've decided. I would
love to see more designers come and help us make open source look great.

EDIT: Is there anything as developers that we can do to attract designers as
contributors to our projects ?

~~~
digitalengineer
Is there a hotlist of projects you developers like? A description and what
team is building it? Add a few keywords on what is missing (design-wise) for
the project and let me reply on the keyword.

~~~
zimbatm
Not really. We all have our source of hot new projects (eg:
<http://thechangelog.com/>) but things we end up using usually come from our
own projects / work. From my point of view I see two types of contributions.

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.

~~~
digitalengineer
Good insights. Never thought of it that way, but you're right. Thanks for the
changelog link. I'll bookmark it and perhaps I'll contribute. Oh, and great
name for a url: <http://drivebydesign.com> Too bad some squatter already holds
it.

~~~
zimbatm
Yeah too bad for the domain.

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/>

------
night_fury
I like this, a lot.

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.

------
mnicole
Great post, Jon.

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.

~~~
jongold
Thanks :)

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 :)

------
nthnb
Designers shouldn't look at Open Source as some kind of charity or that they
owe something. Most of the best open source work is done out of necessity. If
you believe in a product and it's something you need then contribute something
that improves everyone's lives.

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.

------
skimmas
I think the design process is completly different from coding, and I don't
think the right tools for effective collaboration have already been built.
Sometimes I wonder if that's even possible. Design seems to work best when
it's a one two persons vision than something made with a group, since it lack
the level of objectivity found in coding. Stuff like twitter bootstrap might
be pointing in the right direction... o modular base that a lot of people can
agree uppon and that can be easily changed or themed.

~~~
qznc
What kind of design are we talking about?

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

------
tfinch
Great article. As a developer I have very similar feelings, I imagine there
are more like me. Often the perceived barriers are very similar to the ones
mentioned here (not feeling smart enough, not knowing where to start, etc.)

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....

------
misterdai
I think this is a great idea. My own little open source projects have always
suffered on the frontend design site due to my lack of skills. Having people
with those skills contributing can sometimes make a huge difference to a
project , especially as most would be unable to validate paying for design
work for something they're producing for free.

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?

------
trusche
> As designers we’ve been put off of ‘work we don’t get paid for’ by clients-
> from-hell, 99designs & eLance

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?

~~~
lifeisstillgood
As a developer I have used 99designs and was able to find something
acceptable. I have however worked with designers of real and rare skill, and
they do work that inspires and changes the direction of my development. That's
stuff if I could do I would not do for 200 bucks.

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

~~~
jongold
Bootstrap is a great example of something that might have taken _some_ work
away from _some_ designers, but the whole it contributes back to is much
richer as a result.

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)

~~~
lifeisstillgood
I don't really know the designer market, but I was not arguing that bootstrap
was overall a bad thing, but I get the impression that you don't need a
designer to get a basic site off the ground, much like php or rails means you
don't need a developer to get off the ground.

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

