-
Notifications
You must be signed in to change notification settings - Fork 0
/
feed.xml
167 lines (115 loc) · 30.7 KB
/
feed.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="4.2.0">Jekyll</generator><link href="https://coppnic.cc/feed.xml" rel="self" type="application/atom+xml" /><link href="https://coppnic.cc/" rel="alternate" type="text/html" /><updated>2023-10-23T14:54:53+02:00</updated><id>https://coppnic.cc/feed.xml</id><title type="html">Coppnic</title><subtitle>< the personal Zen Garden of a 24/7 busy brain ></subtitle><entry><title type="html">Sustainable Design Thinking in Webdevelopment</title><link href="https://coppnic.cc/posts/susty/2021/06/13/sustainable-design-thinking.html" rel="alternate" type="text/html" title="Sustainable Design Thinking in Webdevelopment" /><published>2021-06-13T18:17:17+02:00</published><updated>2021-06-13T18:17:17+02:00</updated><id>https://coppnic.cc/posts/susty/2021/06/13/sustainable-design-thinking</id><content type="html" xml:base="https://coppnic.cc/posts/susty/2021/06/13/sustainable-design-thinking.html"><p><strong>Tech-knowledge needed:</strong> basic</p>
<p><em>In 2020 the carbon dioxide emissions of the world has raised to shocking 39.9 billion tons by year. Digital technologies account for 4% of the greenhouse gas emissions. That number is scaringly high, but we, the developers of this digital world, can do something against it by changing our design mindset. Here are a few ideas on how to approach this topic.</em></p>
<p><em>Be warned, this article is highly theoretical and was written to inspire you, not to lecture you on how to design. Tho, this article is part of my 2021 focus interest <strong>Maximum sustainability design-extremism</strong>. Here are some takes on how to design with sustainibility extremism in your mind. As I am a tech-lead with a webdesign and ‑developing background, let me show you a few web examples.</em></p>
<h3 id="design-useful-not-stylish">Design useful not stylish</h3>
<p>Don’t get me wrong, I do not want you to design ugly websites, systems or apps, but one of the most impactful ways to approach a cleaner internet is to design for the use and not for the style. The thumbrule I’ve soaked into my design process is <strong>“does the user gain information from this effect?”</strong>. You’d be surprised how often this question can be easily answered with <strong>no</strong>.</p>
<h4 id="javascript-effects">Javascript effects</h4>
<p>The biggest but also easiest to avoid impact is to reduce the extreme use of javascript effects. Reducing javascript effects does not only reduce the carbon footprint of your project, but it also reduces the chances of you, the designer, distracting your users from actually getting valuable information.</p>
<p>Swaying waves, moving textblocks and flashing images might look “cool” and “modern”, but they do not only distract the user but also come with multiple costs.</p>
<p><strong>The Code and it’s impact on you and the user</strong><br />
The code itself has a “weight” which we express as bytes. Every byte costs us CO2. It starts with the time we spend to write such effects, which results in longer computing and sitting-infront-of-the-computer time. That costs electricity for the computer, the monitor and also for ourselves. The CPUs of our computer and even of our body need to be “feed” energy. We can apply Einstein’s Mass–energy equivalence here. Everytime we hit a key on our keyboard, we burn energy. We think about what we code and our fingers execute that produced idea. The code itself is written on a computer. Each key stroke costs energy. Every file uses storage which is written, rewritten and read within miliseconds, writing and reading our hard-drives costs energy. And we aren’t even done yet. Saving these javascript files towards our host, you get it, costs energy. Running the host costs energy. When a user visits the website for the first time, transfering the data will cost energy. Executing the effect that has been written into the javascript uses the users CPU<sup id="fnref:1" role="doc-noteref"><a href="#fn:1" class="footnote">1</a></sup>, RAM and sometimes even the GPU and therefore: costs energy.</p>
<p>Wavy backgrounds animated in javascript (yes, and CSS, too) are processed every single time the state changes. So if you have a loop of a effect instead of an effect that only fires one time, you are forcing the user to waste energy as long as the user visits the website. You can check that in your DevTools in the <strong>Performance Monitor</strong> tool. I’ve used the (beautiful) website of Asana for example. They fire floating labels over the hero image via javascript, that float and float and float without ever stopping. Each frame of the effect is processing information and therefore using the users CPU which results in usage of energy.</p>
<p><img src="/pictures/sustainable-design-thinking/01-cpu-and-recalc.jpg" alt="The Devtools &quot;Performance Monitor&quot; on Asana's landingpage" title="Devtools Performance Monitor" /><br />
<em class="imglink"><a href="/pictures/sustainable-design-thinking/01-cpu-and-recalc.jpg" title="Devtools Performance Monitor" target="_blank">open image</a></em><br /></p>
<p>You might think I am counting peanuts here, and I might am, but there are milions of websites with a unimaginable amount of javascript effects that have no use at all. If you combine every miliseconds that are processed by useless effects, you will end up having a huge carbon footprint. If every designer would ask themself “does the user gain information from this effect?” more often and act accordingly, we could reduce carbon footprint globally. And this is just one measurement you can implement into your design thinking process. After two or three projects, you will act more responsible by default.</p>
<p><strong>Awesome sideffect</strong><br />
Using less useless javascript effects would not only result in lesser energy usage but also loads the website faster, it saves miliseconds of loading time and therefore also saves energy. You have a win-win-win situation here: You give the user a faster web experience and contribute to saving the enviroment by using less energy for the transfer of the files and save time coding that effect which results in faster delivery for your client and less needed energy of your body. And if you care about money, then it’s also a additional sideffect: you spend less money.</p>
<h3 id="pinpoint-redundancy-eradicate-repeats">Pinpoint redundancy, eradicate repeats</h3>
<p>One of the things most beginners and even some professionals do wrong is repeating stuff. I myself am a victim of lazyness and therefore sometimes include redundancy in projects. The biggest problem is the idea of “Ahh, no worries, I can fix that later!”. Based on my 10+ years of professional experience I can tell you that in most cases you will <strong>not</strong> have the time to fix things later on, as long as a client doesn’t see the need of the fix. It is about you to include that into your design thinking process. Here are two examples on my biggest mistakes.</p>
<h4 id="reusable-code-in-wordpress">Reusable code in Wordpress</h4>
<p><em>As over 50% of my projects are based on wordpress websites for SME, I am using this example. This can be replaced with most traditional CMS, headless CMS and modern package-based development styles.</em></p>
<p>Most websites have code snippets that are most likely to be re-used in the code design. This starts with wordpress’ own head and footer calls but doesn’t end there. Template parts<sup id="fnref:2" role="doc-noteref"><a href="#fn:2" class="footnote">2</a></sup> are a good example for re-usable code but are, based on my insight, mostly only used for loops. These template parts can also be used for repeatable code such as api-based forms, promotional sections and basically everything you use more than just once.</p>
<p>The biggest complaint I’ve heard from beginners or front-end developers is, that reusable code isn’t very flexible. While this might was true a few years ago, todays technology can help you with that. By designing your front-end with CSS Grid or Flexbox-Grids, you can re-arrange the content of the re-used code’s DOM as simple as 1234.</p>
<h4 id="reusable-css-or-scssless">Reusable CSS or SCSS/LESS</h4>
<p>The biggest problem in front-end design <strong>was</strong> re-using styling, as example, you had to re-define shadows for cards every single time you wanted to declare them. With the introduction of LESS and SCSS, reusable styling was introduced. While most beginners only use the variables to set colors, fonts or sizes, the actual gamechanger are so called <em>Mixins</em><sup id="fnref:3" role="doc-noteref"><a href="#fn:3" class="footnote">3</a></sup>. You can set multiple lines in mixins and reuse these lines in the styling process. This may not reduce the lines of css for the visitor of the project, but it reduces the lines you have to write and therefore reduces your usage of energy as mentioned in <strong>Javascript effects</strong> above.</p>
<p><strong>Example:</strong><br />
<img src="/pictures/sustainable-design-thinking/02-shadow.jpg" alt="The declaration of a Mixin in SCSS" title="Shadow Mixin" /><br />
<em class="imglink"><a href="/pictures/sustainable-design-thinking/02-shadow.jpg" title="Shadow Mixin" target="_blank">open image</a></em><br />
<img src="/pictures/sustainable-design-thinking/03-card.jpg" alt="Usage of the declared Mixin" title="Usage of Mixin" /><br />
<em class="imglink"><a href="/pictures/sustainable-design-thinking/03-card.jpg" title="Usage of Mixin" target="_blank">open image</a></em><br /></p>
<p>You can check out the example <a href="https://codepen.io/marvinpoo/pen/rNyQjeX" target="_blank">on codepen</a> . Mixins can technically be used for everything even though I would suggest using it for multi-line styling. It doesn’t have to be complex at all, but you can even create awesome mobile first responsive/fluid declarations as you can see at my (very old) <a href="https://github.com/marvinpoo/_marvli.scss" target="_blank">_marvli</a> preset.</p>
<h3 id="conclusion">Conclusion</h3>
<p>These are just some examples that would reduce your carbon footprint of your projects. It is about you to ask yourself: is it needed? Is it redundant? If we all absorb critical thinking about the usage of our code, we could reduce the impact on our environment, optimize the usage of recources and also save a lot of time and money.</p>
<p>We only have this one planet for now and therefore have to respect our home and it’s resources. It is easy and mostly comes with a lot of benefits. Now it is time for us to act accordingly. Together as humans we can solve human problems. After all we are one species.</p>
<hr />
<p><span class="notes">Footnotes</span></p>
<div class="footnotes" role="doc-endnotes">
<ol>
<li id="fn:1" role="doc-endnote">
<p>Learn more about CPU usage of Javascript animations <a href="https://javascript.info/js-animation" target="_blank">on Javascript Info</a>. <a href="#fnref:1" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
</li>
<li id="fn:2" role="doc-endnote">
<p>Code Reference of Template Parts <a href="https://developer.wordpress.org/reference/functions/get_template_part/" target="_blank">on Wordpress Dev Docs</a>. <a href="#fnref:2" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
</li>
<li id="fn:3" role="doc-endnote">
<p>Mixin and Include documentation <a href="https://sass-lang.com/documentation/at-rules/mixin" target="_blank">for SCSS/SASS</a>. <a href="#fnref:3" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
</li>
</ol>
</div></content><author><name>Marvin Borisch</name></author><category term="posts/susty" /><summary type="html">Tech-knowledge needed: basic</summary></entry><entry><title type="html">Accessibility on Social Media</title><link href="https://coppnic.cc/posts/a11y/2021/04/07/a11y-on-social-media.html" rel="alternate" type="text/html" title="Accessibility on Social Media" /><published>2021-04-07T00:49:52+02:00</published><updated>2021-04-07T00:49:52+02:00</updated><id>https://coppnic.cc/posts/a11y/2021/04/07/a11y-on-social-media</id><content type="html" xml:base="https://coppnic.cc/posts/a11y/2021/04/07/a11y-on-social-media.html"><p><strong>Tech-knowledge needed:</strong> basically none</p>
<p><em>Hey friends, every <strong>five seconds</strong> a human goes blind on planet earth. In fact, while you have read this sentence, another human has gone blind already. I have noticed that a lot of developers and website owners are not aware of how many people try to visit their websites and apps without the ability to even see the content. While this problem has been pushed more into the spotlight since laws have been passed around the world in the recent years, many people forget to apply that knowledge onto their social media accounts. As some of you know, this topic is a pretty important one to me for multiple reasons.</em></p>
<p><em>The main reason might be, that a good friend of mine was raised by a blind single mother. She has raised four children, all by herself. Now imagine how pissed you would be after a long day of taking care of your kids all by yourself and just wanting to check out what your friends are doing on social media but can not participate. That’s why I am writing this article. I hope everyone of you will gain some sensitivity to disabilities and how they affect the online-life of around 37.000.000<sup id="fnref:1" role="doc-noteref"><a href="#fn:1" class="footnote">1</a></sup> humans world wide.</em></p>
<h3 id="explanation">Explanation</h3>
<p>In this article I will focus on Twitter, but all big players on the social media market have similar functions. Feel free to ask me on a Twitter DM or give me a call if you need help finding the functions on other plattforms. The information I am providing here, even though they are based on Twitter, will give you a basic understanding on how to improve the online quality for your friends and followers with disabillities in general.</p>
<h3 id="viewing-disabillity">Viewing Disabillity</h3>
<p>Humans with viewing disabilities such as blindness, reduced view, contrast problems, color blindness and everything else I am not covering here, have a hard time getting informations out of your images and photos. You can cover most of their problems with two easy tricks.</p>
<h4 id="alt-tag--description">ALT-tag / Description</h4>
<p>The “ALT”-tag, or how twitter calls it “Description”, of a photo is a hidden text that can be read by machines. While a lot of shady and disgusting professional content creators abuse the function to push theirself further up on Google, it actually has a useful function. Blind people use so called <strong>screen readers</strong>. That can be a installable service that reads the text for you or even a machine that translates the displayed text into braile<sup id="fnref:2" role="doc-noteref"><a href="#fn:2" class="footnote">2</a></sup>. Without such ALT-tags, blind people won’t be able to consume your photos. So here is how to describe the photos to blind people. <span class="notes">The following example is for tweets, but you can add a ALT-description to “Fleets”, too.</span></p>
<p><img src="/pictures/a11y-on-social-media/01-upload.jpg" alt="Twitter Upload-mask with a &quot;Add Description&quot; link below the photo." title="Upload Mask" /><br />
<em class="imglink"><a href="/pictures/a11y-on-social-media/01-upload.jpg" title="Upload Mask" target="_blank">open image</a></em><br />
When you upload a photo to twitter, you can spot the little “Add Description” function below it. If you click that link, you will be prompted with a information from Twitter.</p>
<blockquote>
<p>You can add a description, sometimes called alt-text, to your photos so they’re accessible to even more people, including those who are blind or visually impaired. Good descriptions are concise, but present what’s in your photos accurately enough to understand their context.</p>
</blockquote>
<p>After closing that prompt from twitter, you can start describing the photo. Keep it compact but descriptive. On twitter you have 1.000 characters to describe your photo. If you feel you have described the picture good enough, hit the save button. If you have done everything correctly, you will see a “ALT” label on the left bottom corner and the excerpt of your description below of your photo preview. Finish your tweet and tweet it out to the world.</p>
<p><img src="/pictures/a11y-on-social-media/04-final-check.jpg" alt="The ALT-label is now showing on the left bottom corner of the photo preview." title="Upload Mask with Description" /><br />
<em class="imglink"><a href="/pictures/a11y-on-social-media/04-final-check.jpg" title="Upload Mask with Description" target="_blank">open image</a></em><br /></p>
<p>For all the (upcoming) nerds of you, I have <a href="/pictures/a11y-on-social-media/06-code.jpg" title="Code preview" target="_blank">a screenshot</a> of how the ALT tag will be inserted into twitters website. This is basically what screen readers will see. To check it yourself, right-click your photo and then hit “inspect” (or similar, based on your browser). This will open a window with a lot of eeky weeky code stuff and highlight the important shit.</p>
<p>Now you are ready to go. With that information, you can now describe your photos to everyone and, kind of, do some magic by making the blind “see” your photos. They will thank you, not by words, but by their hearts.</p>
<p><span class="notes"><strong>Note:</strong> Of course no one should feel obligated to add ALT-descriptions, it is a nice-to-have. But if you are a public figure, represent your enterprise, company, or some official position, you should consider adding ALT-descriptions for the sake of inclusion.</span></p>
<h4 id="contrasts">Contrasts</h4>
<p>The biggest mistake most designer do, even good ones, is forgetting to check the contrast ratio. While working with a lot of them in my career, I’ve learned that contrasts are way to underrated, even though they impact a way bigger amount of humans. And I am not only talking about visually impaired people. Bad contrasts can affect even you. Take my website for example. I have designed my website purely for me and no one else, that means I have used my main monitor<sup id="fnref:3" role="doc-noteref"><a href="#fn:3" class="footnote">3</a></sup> as the basic display instead of testing my design on multiple monitors. The contrast itself is perfectly fine on my main monitor, but if I use my secondary monitor, I have to focus much more to read my <span class="notes">article notes</span>.</p>
<p><img src="/pictures/a11y-on-social-media/07-contrast.jpg" alt="An example of different color contrasts based on my website design" title="Contrast examples" /><br />
<em class="imglink"><a href="/pictures/a11y-on-social-media/07-contrast.jpg" title="Contrast examples" target="_blank">open image</a></em><br /></p>
<p>Problems might occur due to a mix of size, weight (thickness) and the colors of the foreground and the background. That’s why some very clever people have agreed on principles for inclusive design<sup id="fnref:4" role="doc-noteref"><a href="#fn:4" class="footnote">4</a></sup>, but I do not expect you to read through all this. You can simply visit <a href="https://contrastchecker.com/" target="_blank">contrastchecker.com</a> and test if your colors meet the standards. But do not rely to much on it. Sometimes contrasts can appear better and sometimes worse than calculated. For example, yellow/orange and white <strong>can</strong> look like it is functioning for you, but based on the light source, it can turn bad really fast. On the other hand a medium-grey on a true black background might not fit all of the calculations for the AA/AAA standard, but is readable for a wide amount of humans in most light situations.</p>
<p><strong><em>“So, Marv, how can I optimize my social media contrast game?”</em></strong>, you migh ask. It’s pretty easy. Choose good color and hue contrast, and if you want to put some text on a nice photo of yours, make sure to either use a background behind the text or put it on a part of your image, that has a quite opposite color or hue. Always ask yourself “could my grandparents read it?”. Are you not sure if the answer is yes? Then the answer most likely will be “no”. One easy quick-tip that helps me a lot is, taking my phone in my hand, and move it as far away from my eyes as my arms reach. If you still can read everything without guesstimating, then you are ready to go.</p>
<h3 id="hearing-disabillity--audio-language-barriers">Hearing Disabillity &amp; Audio Language Barriers</h3>
<p>Based on statistics provided by the WHO<sup id="fnref:5" role="doc-noteref"><a href="#fn:5" class="footnote">5</a></sup>, over 5% of the world’s population require rehabilitation because of their disabling hearing loss. That’s over 430.000.000 humans. Yet a lot of social media content does not provide support for disabled people. Sadly, there aren’t many solutions on how to aid deaf, partially restricted and foreign humans. But available solutions are very powerful and surprisingly including.</p>
<h4 id="manual-subtitles">Manual Subtitles</h4>
<p>The easiest way to include humans with hearing disabilities is to add subtitles. Most plattforms, including Twitter, do not deliver platform-ready solutions for that. You are mostly restricted to manually add subtitles with third-party programms. As there are thousands of awesome and free to use programms, I will not recommend any specific ones, but a easy and quick online search for terms such as “(permanently) add subtitles on video” will throw out quite a handfull of awesome tools. Make sure to consider my tipps for contrasts as mentioned above.</p>
<h4 id="youtube-subtitles">Youtube Subtitles</h4>
<p>While most social media plattforms do not support subtitles in their standard functions, Youtube basically <del>is</del> was the queen of subtitles. Due to Youtube’s nature of providing video content to billions of humans world wide, they’ve almost perfectioned the subtitle game. They offer functions such as manually adding subtitles to your videos which can be shown and hidden, based on the user’s preference. But the most important functions might be auto-generated synchronization, auto-generated translations <del>and community-submitted subtitles</del>.</p>
<p><strong>Auto-generated Synchronization:</strong> If you provide a full transcript of the video, Youtube’s system will automatically place the timing-markes for you. No need to do all the handy work on your own.</p>
<p><strong>Auto-generated Translation:</strong> When you add subtitles by yourself, Youtube can automatically translate your video in any supported language. Tho, this function does not work for auto-generated syncronizations, it is still a very handy function.</p>
<p><strong>Legacy: Community-submitted Subtitles:</strong> In the beginning of the world wide Covid-19 pandemic, Youtube decided<sup id="fnref:6" role="doc-noteref"><a href="#fn:6" class="footnote">6</a></sup> to remove it’s function of community captions. As they have stated, this decision was made due to low usage and spam/abuse problems. Sadly, Youtube has not announced any replacement of this function. The a11y-community of Youtube has been suggesting replacements such as volunteer-created captions, which would have been a huge support for disabled content creators. It is little surprise that this sparked a backlash from the community.</p>
<blockquote>
<p>I told them for a full freakin’ hour why we need community contribution. Not just for deaf people so more channels will have captions, but for disabled creators who can’t manually do them or have the income to pay for them: which is most of us. They do not care about us.<br /><br />
¬ <cite> Rikki Poynter (<a href="https://twitter.com/rikkipoynter/status/1289004897371856898" target="_blank">@rikkipoynter</a>), July 31, 2020</cite></p>
</blockquote>
<p>Even though this sad downside, Youtube still offers good subtitle options for content creators, which will still help a lot of people to provide more accessible content for disabled or impaired humans. Due to it’s almost fully automatic nature, there is no reason <strong>not</strong> to provide subtitles for your friends and followers.</p>
<h3 id="its-about-you-help">It’s about you! Help.</h3>
<p>You will never know if you will ever be impacted by a disability in your future or if your friends and family will strugle from poor a11y-support, so it is about you to make this world a better place by supporting your fellow humans.</p>
<p>If you think I have been mistaken, forgotten a vital part or if you got some valuable insight to share, feel free to contact me via Twitter. I will be happily open to extend this post.</p>
<hr />
<p><span class="notes">Footnotes</span></p>
<div class="footnotes" role="doc-endnotes">
<ol>
<li id="fn:1" role="doc-endnote">
<p>37.000.000 humans world wide, that would be roughhhhly half the amount of the inhabitants in germany! Around 145.000 people in germany are fully blind. That’s more than half of the inhabitants of my district, Berlin Treptow-Köpenick. <a href="#fnref:1" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
</li>
<li id="fn:2" role="doc-endnote">
<p>Check out this video about a refreshable braille display for the iPad. <a href="https://www.youtube.com/watch?v=tVuLGrab9JA" target="_blank">YouTube Link</a> <a href="#fnref:2" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
</li>
<li id="fn:3" role="doc-endnote">
<p>As my main monitor I use a EIZO EV2336W, a monitor made for office works and designer with a modern and bright but economical background lighting. My secondary monitor is a old HP Compaq LA1951g in vertical mode with bad background lighting. <a href="#fnref:3" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
</li>
<li id="fn:4" role="doc-endnote">
<p>WCAG Contrast Minimum, by W3C. <a href="https://www.w3.org/WAI/WCAG21/Understanding/contrast-minimum.html" target="_blank">Read here</a> <a href="#fnref:4" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
</li>
<li id="fn:5" role="doc-endnote">
<p>World Health Organization: Deafness and hearing loss. <a href="https://www.who.int/news-room/fact-sheets/detail/deafness-and-hearing-loss" target="_blank">Read the full article</a> <a href="#fnref:5" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
</li>
<li id="fn:6" role="doc-endnote">
<p>Youtube about removing community captions. <a href="https://support.google.com/youtube/answer/6052538?hl" target="_blank">Read on Youtube Support</a> <a href="#fnref:6" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
</li>
</ol>
</div></content><author><name>Marvin Borisch</name></author><category term="posts/a11y" /><summary type="html">Tech-knowledge needed: basically none</summary></entry></feed>