šŸ’­ Difficulties of design in open source

An additional complication is this debate is that ā€œdesign in open sourceā€ might be actually describing three different things:

  • Design using Free SW tools
  • Design Free SW systems and applications
  • Design in the open, as part of a community

An ideal project would enjoy all three. However, it might be interesting to think about situations where one or two of these characteristics are missing, and what does and does not qualify as ā€œdesign in open sourceā€ in those cases.

3 Likes

Howdy guys, Iā€™m new to the community. Just wanted to chime in.

I think the reasons listed by yaā€™ll in general are very good. I want to really back up two points though.

Iā€™m a designer who has been learning how to code. In the past year I dove into switching all my personal cloud services over to self hosted FOSS alternatives like Nextcloud (Howdy Jan! I believe weā€™ve talked on github a few times about the Nextcloud mobile app :smile: ) In getting more involved in these communities I consistently found that when I logged a story saying ā€œHey this thing could be better, respectfully hereā€™s my thoughtsā€ the response was usually ā€œItā€™s fine the way it isā€.

I think there may in fact be no easy solution to this problem, but I think this might point to a solution nonetheless.

I am a designer learning to code. I only do web stuff though. Web is a field of development which has a fairly integrated history between dev and design though, as a web designer and web developer were often the same person back in the day.

Just as I am a designer learning to code many developers are learning design. The gap between web stack and native has shortened with the advent of technologies like Electron and React Native etc. The advent of Design Systems and the focus on componentization of UI in frameworks like Vue/React has also lead to growth in design skills in the web development community.

I think in some ways the only way this will be solved is through some convergence of the two. This is one reason why as a designer one of my focuses in discussing development and design with other designers is encouraging a higher level of technical development knowledge. On the other hand when I am in open source circles I try to advocate for good design not just in presentation of the ā€œproductā€ but in improving the experience of using code itself.

An example of this latter ā€œimproving the experience of code itselfā€ is through the dotfiles community: https://dotfiles.github.io/

Dotfiles are configuration files for unix apps. It starts with something as simple as writing some easy aliases for your bash command line interface to make things easier to do. THAT IS UX! That UX via kaizen process.

Related to web based technologies you can see this same instinct playing out in how vscode


and hyper

image
have evolved rapidly in their design space largely due to the relative ease of writing extensions or plugins with only basic web stack knowledge.

And speaking of hyper above which is a command line interface app that is built using web stack technologies and runs on windows, linux, and Mac: UX isnā€™t limited to just graphics, it also is a part of text too. In the command line there have been several rather well designed command line interfaces developed in the last couple of years such as:

ranger

or zsh.
image
(zsh is actually much older but thereā€™s been an explosion in itā€™s use lately due to things like ā€œoh-my-zshā€ project. )

Now all these things are examples of improvement in design in code presentation, therefore text, so I still think there is some gap in translating the gains of the developer focused design to open source design as a whole.

But at least in one way it has made the user experience of learning to code a lot easier for me!

I think itā€™s also worth considering the ways in which innovations in CLI UX design is itself also comparable to the ideas that have been floating around in the world of ā€œconversational UIā€.

I think these distinctions here is a really smart addition.

On the subject of using free SW tools, I think the reason you donā€™t see a lot of use by designers is not simply because design schools teach Adobe or because they arenā€™t introduced to the ideas of FOSS (though this is true).

The reason isā€¦ because most FOSS design tools suck.

I have a Windows laptop and a Linux home server. I only ever have a mac when my company buys me one.

I have desperately been looking for a Sketch alternative. I have Adobe XD on my windows machine but itā€™sā€¦ not the best, and Iā€™d really like something that was open source.

There is however no active development projects to solve this use case.

And the mainline graphics software packages for open source areā€¦ largely pretty bad. Gimp and Inkscape are about 20 years out of date in a lot of their UI and functionality. Krita is honestly the only open source project really doing anything impressive right now I think.

And I think thatā€™s a damn shame. And this is itself probably a hard problem itself too. Graphics software isnā€™t easy to make. It requires more powerful hardware (gpu drivers have been an issue for linux until very recently and the FOSS OS community is primarily focused on making as compact and minimalist implementations of their desktop environments rather than powerful ones).

You could get the design community to use FOSS design tools if someone would actually make them.

The only alternatives I know of are:

Pencil

https://pencil.evolus.vn/

Hasnā€™t updated in over 2 years and honestly looks kinda ugly.

Vectr

This actually looks promising but itā€™s online only from what I can tell which Iā€™m not a fan of. That means that even if itā€™s open source to actually use it completely independently you have to self host which is a lot to ask a freelance designer to learn to do.

Also I found this on a list of open source projects but I donā€™t think itā€™s actually open source.

Gravit Designer

No longer open source. Also itā€™s a bit broader in scope than Sketch.

Alva

This actually looks cool but I think itā€™s really more like something like Webflow or Framer X which utilizes existing code components, which greatly limits the usefulness of this for designers.

Akira

Probably the closest thing to an actual Sketch competitor but it doesnā€™t look like itā€™s had a meaningful update in at least half a year or more. All the checkins I see on the github page look like theyā€™re basically formatting or build process updates.

So this problem is ripe for solving!

Itā€™s just, who will solve it? IDK.

2 Likes

Hi everyone! I wrote something about my journey being an open source designer- please shower some love here: Designing in the Open. Exploring open source design as anā€¦ | by Anushka Jain | Oct, 2022 | Prototypr :smiley:

4 Likes

Great article @likeanushkaa

" I had never heard of designers pursuing a career in open source and felt that design didnā€™t belong here."

Thereā€™s a great need for designers in the FOSS community. Many developers would love UX help. They too struggle with a similar question: ā€œHow do we interest designers to contribute to our projects?ā€. Many projects start as personal side-project, hobby-like, and then tend to get deep into technical reeds. Once projects grow in size and popularity thereā€™s dire need for UX improvement. But at this time thereā€™s a big pile of ā€œdesign debtā€ already. And the devs do not know how to communicate in a way thatā€™s most likely to interest a designer. Then thereā€™s tooling that doesnā€™t match up where devs vs. designers have their own preferences.

Eventually, my wish to contribute faded out because I couldnā€™t find the correct role for me in this open-source world.

Can fully understand. There needs to be a good process where design can transition towards code in a more natural way. Especially in FOSS these processes often do not exist, and many procedures are more informal or only include the tech-/coding-focused parts.

It is judged through the thought process behind each decision, making design inherently collaborative.

This is key. I am involved with starting, what we call, the Social Coding Movement where we want to look holistically at the entire process of ā€œforging free softwareā€ i.e. take the entire Free Software Development Lifecycle (FSDL) into account. And we want to emphasize these social aspects specifically and support them on the Fediverse (a decentralized social networking space).

If you or anyone else is interested, hop onto our Matrix chat. Social Coding is still in prep, but weā€™ll be kicking off for real in this Q4.


Btw, wrt bridging the divide between devs and designers Medium may not be the best choice. See this recent Poll: Is there a negative stigma toward articles written in Medium? | Hacker News

2 Likes

Thanks for sharing your experiences! A lot of it resonated with my own experiences as a designer and user researcher in open source projects. I like that you described the many ways in which you tried to connect your existing design practices to the way open source projects work ā€“ collaboration across disciplines is never easy but often rewarding and in a (tech-) culture that loves everything ā€œfrictionlessā€ I appreciate if such work is shown and explained.

Two small resources that might be interesting:

You asked:

Food for thought: How can open source reward contributions in design?

You might know this already ā€“ the allcontributors initiative is working on similar questions and suggest some ways to show non-code contributions.

You also suggested that

ā€¦ the world needs a shift in design as well, from a single-player designer to multiplayer collaborators.

I agree! And I think that Open Source Software is only one possible and imperfect model for that, since its strongly shaped by collaboration in source code. Other types of media (non-text, non program) might not work as well with the open source paradigm of collaboration. If you like academic research on this: see this paper on collaborating on computer games and this analysis of different open source-like projects