User Experience as a separate category on Utopian.io

in #utopian-io7 years ago (edited)

About the author

Hello, my name is Aleksander, on Steem & Utopian community further known as olo2552. As a young developer I concluded to become someone, who is called in the industry as the unicorn. It is a rare kind of person, who tries to know both the server-side of development process and client-side part, including User Experience and accessibility. This kind of developer can be also called the real full-stack or jack of all trades.

Last year I was trying to understand the importance of User Experience and I feel competent enough to explain, why UX is internal but independent part of modern open-source development and deserves it's own category.

In this post I will try to convince everyone, that UX cannot be connected to any other category currently listed on Utopian.io and is completely different entity from others.

Introduction

My goal is to convince both community and decisional part of Utopian management to distinguish UX as a separate category from any other in the service. Nevertheless, designing User Experience can be a very complex and self-contained process. This is why I think, that the easiest way to understand User Experience is to explain what it is not, instead of describing it.

That way, I believe decision making community of Utopian platform can reach consensus by simply being convinced of UX design's uniqueness combining the fact, that UX designers deserve part of Utopian's Reward Pool as any other contributor group.

Following, this post will contain five major parts:

  1. Thesis
  2. Understanding User Experience entity & design process
  3. Estimating value of User Experience design contribution
  4. User Experience impact on open-sourced software projects
  5. Conclusions

I hope, that after meeting User Experience design process from many different perspectives and providing objective arguments I will reach above-mentioned goal.

Thesis

In my opinion, creating a new entity should be a natural process. Regardless of what is the entity and what is the group, that entity distinguishes from, it should be logical for everyone, that entity cannot be qualified as any other member of the group, and should be pulled out.

Following, the problem starts to come up, when entity isn't widely understood, or the group is too specific, or to broad. In the undermentioned thesis, I will assume that the User Experience is broadly known for everyone, just as it was something trivial. That way, explaining the presence of the subject in the definition will be the form of defending thesis.

User Experience cannot be qualified to any other category on Utopian platform. It is not suggestion or an idea, nor part of the development process. It cannot by qualified as analysis or bug hunting. It's completely separate process, which combines all of mentioned above into unique entity.

Designing User Experience can be tested and measured in objective way, which means that every contribution can provide verifiable proof of work.

Understanding User Experience importance in Open Source

Let's begin with formal definition of UX design, which roughly tells, what is connected to the working process:

ISO 9241-210 defines user experience as "a person's perceptions and responses that result from the use or anticipated use of a product, system or service". According to the ISO definition, user experience includes all the users' emotions, beliefs, preferences, perceptions, physical and psychological responses, behaviors and accomplishments that occur before, during and after use. The ISO also list three factors that influence user experience: system, user and the context of use.[1]

Unfortunately it is very general, and doesn't provide specific information. To understand entire process of designing UX I will use a small example how it can look from a designer perspective. It will be relatively short, but illustrative and self-contained.

The example of contribution

In this section I will treat about SteemConnect[2] button. A trigger for trusted server-side authentication mechanism for user to login to the service with just a single click. It's important to be said, that it is great, reliable tool for developers, but users will never want to sacrifice performance and usability for security[3]. Nevertheless, let's start from the beginning.

Observing the lack of usability and describing the problem

The first thing to notice, is that SteemConnect development group provides the back-end authentication interface, but leaves the decision making of front-end implementation for the developers.

It doesn't seem to be a problem for developers, but one of the fundamental rules of User Experience tells, that user will always subliminally link the mechanism with the connected visual trigger. It means, that for user the button makes an action, not an algorithm. Lack of button style consistency provides to user confusedness and lack of trust.

It should be said, that observing lack of User Experience can be committed as Bug Report or Suggestion to Utopian platform. Moreover, I have submitted such a suggestion in one of my corntributions some time ago, but please notice, that it's only the beginning of User Experience design process.

Formulating possible benefits

When creating User Experience contribution author not only have to describe problem, but also provide possible benefits from his idea for as wide group of people as possible. I realized, that my idea can not only help users, but can also improve development process across all platforms using SteemConnect. In other words it got me to the point, where I observed non-zero-sum game[4].

This is the first point when the UX design process gets more complex, than currently possible simple commit, which can wrong more ambitious contributors.

Responsible decision making

The part of every UX design process is to make proper decisions. I mean by that fully transparent discussion, which goal is to provide the best solution for a user, at lowest possible cost. It can touch for instance time time needed for development, lowest possible algorithm's time complexity and memory efficiency, impact on project maintenance and considering non-trivia costs such as lost-opportunity costs or implementation and deployment costs.

Finding most attractive usability-to-cost rate is the hardest thing to achieve in the entire process, and ideally it should be the result of discussion of wide group of people, including designers, developers, project managers, lead contributors and so on. However in the real world it leads UX designer to think from every possible perspective and verifying the results of consideration with as wide group as possible. The time cost for entire team may seem high at the first point, but it drastically improves entire development and implementation process.

Analogically, it's like paying 300$ car mechanic for reviewing second-hand car, that you could buy. It can seem a lot at first glance, but it can save you from buying completely broken, unprofitable car and loosing much higher amount of fund.

Providing mock of implementation

Just as translators, copywriters and developers, UX designers have own special set of tooling. Software such as UXPin, Adobe XD, Sketch, InVision, UserTesting, Opitmizely and Trello can drastically improve prototyping process, while providing rational results without engaging developers for creating mocks, and tests of the User Experience.

That means, that gaining new group of contributors can dramatically improve project's growth making it more agile and (which is more important) unburden developers from unnecessary work.

That way developers are provided for implementation well-thought decisions with working mockups, which they can take into consideration before writing a single line of code.

Accommodating solution (Optional)

If the work is relatively simple, UX designers can write a simple chunk of code. Returning to the SteemConnect example, with all consideration done, making a button as a separate CSS class is relatively simple for designer to make. Moreover he can count on developers' code review, which leads to programming ability improvement, while reducing developer's time for implementation.

In other words, it is second non-zero-sum game. UX designer makes progress, while developer doesn't need to solve repetitive, trivial problems, and can spend time on something harder, having greater impact on a project.

Returning to my example, @noisy- senior, community-impactful developer wasted time doing such a button, but without proper management it had incommensurably high cost to find to find his work, because he didn't take it one step further and merged to official repository. This work could be done by a less experienced person. It could had a lot better result, because this less crucial person would have more time to take charge of this contribution.

Documenting work's results

UX designer should take charge of the contribution from the beginning to the end, which means, that such person during entire process of the contribution should be well informed. It causes the fact, that documenting work becomes lot easier, and entire community can benefit from that documentation. Returning to @noisy's example, if his work got well documented, I didn't have to commit my suggestion post at Utopian platform, but I have found his contribution after I had written the post. With UX designer, or other management-related person this situation could not have happened.

Again, I want to stress, that documentation theoretically can be posted in different Utopian commit, but the rules say, that only merged work can be documented, and a person from outside could not merge @noisy's work to the repository, for plagiarism reasons. If the person had both done, documented and merged his work, the problem wouldn't exist.

Taking discussion and convincing others

After all the work done, all things can be discussed within Utopian post, which is great place for work evaluation. If all work is taken by UX designer, it can be also done within merging pull request discussion on GitHub, or other open source code maintenance site.

It is important to stress, that not every step of the process is crucial for upper-mentioned discussion to be started. Utopian.io, based on Steem blockchain is not only great work-evaluation platform, but also a good place for discussion and skill-sharing. It can oversimplify User Experience designer workflow, because his work is largely based being a medium between user and a contributing team.

First conclusion

Designing and developing User Experience has a non-trivial workflow, which can be vastly improved, while combining specialized social platform such as Utopian.io. The process is also unique, because it combines nearly every other category, while providing more complex, self-contained and unique work result.

Estimating value of User Experience-based contribution

Firstly, it should be respected, that Utopian.io is the first platform based on Steem blockchain that is dependent on objective proof of work instead of fully subjective, delegated proof of stake.[5] Without a reliable method of work approval and ability to rate value of a contribution entire category simply couldn't belong to the platform.

Contrary to popular opinion, even though User Experience seems to treat about user's subjective feelings, it can be objectively measured.[6] It's very hard to explain at first time, but design is not opinion. It is testable.[7]

Quoting elementary's Human Interface Guidelines:

Consider different types of bicycles. A folding bicycle has a different set of design goals than a mountain bicycle. Things like weight, size, and tire tread are important factors in helping the intended user reach their goals. Because we understand that design is about solving specific problems, we must also understand that we can objectively compare the effectiveness of two designs at solving those problems.

One approach can achieve goal better that the other. With good design, there are simpler solutions for using more complex mechanisms. It can be specifically said, if approach is good or bad, and why is that. This idea of upper-mentioned approach can also be rated in the usability perspective.

Moreover, entire design process can be proven and well documented. Tooling mentioned above is only one way to prove the work. Every discussion and thinking process leads to specific results, which can be pronounced.

Despite the fact how "Outside of The Box" the experience is, if it is designed properly, the author will can always point out, the reason it is treated that way, providing unambiguous proof, that is not an accident.

Second Conclusion

DESIGN IS NOT SUBJECTIVE. Only people, who doesn't design things believe, that it cannot be tested, measured and objectively rated and it is subjective opinion. Reason can always be provided, if the design is a result of careful planning.

It means, that good design can be always presented as a necessary for Utopian's proof of work, which solves potential problem connected to further curation. What is more, if work cannot be simply rated, and it's results cannot be presented in a simple conclusion, it is a clear sign for post author, that work doesn't deserve for the reward.

User Experience Design's impact on community-driven projects

Every piece of software have common, very specific purpose:

It solves user's particular problem.

It means, that software, which is difficult to use, or even unusable for a user doesn't meet its requirements and cannot be called complete. Developing application for other purpose, than serving the user have no chance to succeed and means missing fundamental purpose of developing software.

It quickly turns out, that during the development process more important is the question: "How to provide a user easy-to-use tool?", than the incomplete one: "How to solve a problem?". Following: used technology stack, automating repetitive tasks, optimization doesn't makes any sense, if the software isn't planned as user-centric and is not widely used.

Following that path, we can assume, that User Experience is very important part of every open-sourced software. It should be noticed, that measuring it through the impact of the final creation, it isn't less important than any other category, even the development process on its own. Implementation of UX process during the creation of the open source application not only improves the process form the creators' perspective, but also (what is more important) dramatically raise potential usability and popularity of every application with UX contributions.

Final Conclusion

Properly designed User Experience is fully controllable product of author's work. It can be both tested and measured. It is also fully controlled by skill and experience of the author. Even the smallest part of the contribution in this proposed category can be proven and documented. UX Design commits can be also highly scalable - that way a person who design complex UX infrastructures for entire applications including every step of earlier mentioned contribution process can be awarded with higher portion of available reward pool, than the person, who only starts a valuable discussion about particular feature, or decides to leave part of the 'commit cycle process' to someone else.

As writing this proposal, I am fully aware that entire idea looks theoretically reasonable, but in practice there should be a lot of work done in order this category to thrive. Community which not realize what the proper User Experience is, and what it is not can lead to intentional or unintentional abuse of Utopian's reward pool, which is already tight.

To prevent such situation, best possible moderation crew is essential. In my opinion, especially in the beginning moderation should be very strict, but equally helpful and informative. Potentially abusive contributors should understand not only they are wrong, but also why their post is getting rejected, with further possible solution provided. Accordingly it should seem reasonable, that at least at the very beginning any person overseeing UX contributions should have proper experience for the job. As a result, I consider it as yet most stable and effective way to build community with a reliable culture, which can scale well.

Last, but not least I do not say, that this category need to be created as soon as possible. Nevertheless User Experience is integral part of developing open-sourced applications and in the long-term perspective it should be mentioned as an independent, outright category.

In case of any suggestions or constructive criticism I will be very glad to answer you in the commentary section. You can also contact me on Discord: olo2552#6838 or send me an e-mail on [email protected].



Posted on Utopian.io - Rewarding Open Source Contributors


  1. https://en.wikipedia.org/wiki/User_experience

  2. https://v2.steemconnect.com/

  3. https://www.theverge.com/2014/8/5/5971989/the-internet-doesn-t-care-about-security

  4. https://en.wikipedia.org/wiki/Zero-sum_game#Non-zero-sum

  5. https://steemit.com/cryptocurrency/@worldclassplayer/delegated-proof-of-stake

  6. http://www.jefflaw.ca/design-is-not-subjective/

  7. https://elementary.io/docs/human-interface-guidelines#design-philosophy

Sort:  

Thank you for the contribution. It has been approved.

You can contact us on Discord.
[utopian-moderator]

Hey @jestemkioskiem, I just gave you a tip for your hard work on moderation. Upvote this comment to support the utopian moderators and increase your future rewards!

Unicorn <3

Hello @olo2552

You have made a very good contribution but unfortunately it cannot be approved because it does not follow the Utopian Rules.

  • There is a direct mention of an account in you contribution.

  • It does not follow the template.

Should you have any concern, be free to contact us on Discord.
[utopian-moderator]

Hey @olo2552 I am @utopian-io. I have just upvoted you!

Achievements

  • You have less than 500 followers. Just gave you a gift to help you succeed!
  • Seems like you contribute quite often. AMAZING!

Suggestions

  • Contribute more often to get higher and higher rewards. I wish to see you often!
  • Work on your followers to increase the votes/rewards. I follow what humans do and my vote is mainly based on that. Good luck!

Get Noticed!

  • Did you know project owners can manually vote with their own voting power or by voting power delegated to their projects? Ask the project owner to review your contributions!

Community-Driven Witness!

I am the first and only Steem Community-Driven Witness. Participate on Discord. Lets GROW TOGETHER!

mooncryption-utopian-witness-gif

Up-vote this comment to grow my power and help Open Source contributions like this one. Want to chat? Join me on Discord https://discord.gg/Pc8HG9x

Thanks for your good posts, I followed you!