<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Sara Joy</title>
    <description>The latest articles on DEV Community by Sara Joy (@sarajw).</description>
    <link>https://dev.to/sarajw</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F836599%2F4000c25e-39cd-4e45-ab58-280800d99b33.jpg</url>
      <title>DEV Community: Sara Joy</title>
      <link>https://dev.to/sarajw</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/sarajw"/>
    <language>en</language>
    <item>
      <title>Job Application Tips</title>
      <dc:creator>Sara Joy</dc:creator>
      <pubDate>Fri, 09 Sep 2022 09:27:42 +0000</pubDate>
      <link>https://dev.to/sarajw/job-application-tips-1ib8</link>
      <guid>https://dev.to/sarajw/job-application-tips-1ib8</guid>
      <description>&lt;p&gt;&lt;em&gt;Photo by &lt;a href="https://unsplash.com/ja/@goian?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;Ian Schneider&lt;/a&gt; on &lt;a href="https://unsplash.com/s/photos/job-application?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;Unsplash&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;This blog post has been created from two &lt;a href="https://twitter.com/sarajwallen"&gt;twitter&lt;/a&gt; threads of mine, &lt;a href="https://twitter.com/sarajwallen/status/1552585642177183744"&gt;here&lt;/a&gt; and &lt;a href="https://twitter.com/sarajwallen/status/1552977575756136449"&gt;here&lt;/a&gt;:&lt;/p&gt;

&lt;h2&gt;
  
  
  How to score an interview:
&lt;/h2&gt;

&lt;p&gt;Be un-ignorable.&lt;/p&gt;

&lt;p&gt;No 'quick apply', no generic cover letter.&lt;/p&gt;

&lt;p&gt;Address the person hiring directly, write a friendly email, make the cover letter heavily reference the company.&lt;/p&gt;

&lt;p&gt;It is effort++, so you need to get picky!&lt;/p&gt;

&lt;p&gt;..OR..&lt;/p&gt;

&lt;p&gt;Have time &amp;amp; want to go the extra mile? Seen a job ad you REALLY like and want to give it your all?&lt;/p&gt;

&lt;p&gt;Especially if you're going for Frontend Development: Build a mini-site. It is your cover letter now. Style it to look a bit like their website.&lt;/p&gt;

&lt;p&gt;Any other job - do it no-code.&lt;/p&gt;

&lt;p&gt;I mean, why wouldn't you?&lt;/p&gt;

&lt;p&gt;It's more fun to do, and it's about as much effort now to build something fast and deploy it via &lt;a href="https://github.com/"&gt;GitHub&lt;/a&gt; to &lt;a href="https://netlify.com/"&gt;Netlify&lt;/a&gt; or &lt;a href="https://vercel.com/"&gt;Vercel&lt;/a&gt; or even via &lt;a href="https://www.wix.com/"&gt;Wix&lt;/a&gt;/&lt;a href="https://webflow.com/"&gt;Webflow&lt;/a&gt;, as it is to fire up Word, format a letter nicely and print it to PDF.&lt;/p&gt;

&lt;p&gt;If you're smart about doing this, you can make it easy to adapt for different job applications to different companies - but then do your very best not to be generic in your language.&lt;/p&gt;

&lt;p&gt;If you've been picky and found a job and company you're very keen on joining, get specific.&lt;/p&gt;

&lt;p&gt;Your aim is to make it impossible for them not to interview you.&lt;/p&gt;

&lt;p&gt;They might think you a bit zany (🤪) or try-hard, but so what? If it lands you the interview, that's all you need.&lt;/p&gt;

&lt;p&gt;I have won jobs by sheer enthusiasm in the past. They love it. It beats qualifications.&lt;/p&gt;

&lt;h2&gt;
  
  
  Smashing the interview:
&lt;/h2&gt;

&lt;p&gt;It's really worth preparing some answers you know you can go to, given the common HR style questions. Common ones are easy to find in listicles online!&lt;/p&gt;

&lt;p&gt;I personally always hated these questions.&lt;/p&gt;

&lt;p&gt;I found them to be always sort of insincere, but even though I could probably tell you several of the common questions, I never prepared answers. That was silly.&lt;/p&gt;

&lt;p&gt;I would end up flustered, and any negative thoughts I had about any past work would bubble up to the surface.&lt;/p&gt;

&lt;p&gt;So, you need to look up these questions, and formulate answers to them. Write them down. Be as positive as possible.&lt;/p&gt;

&lt;p&gt;Be real, sure, but be careful not to start talking your way into the negative self-story paths.&lt;/p&gt;

&lt;p&gt;Self-story? What's that?&lt;/p&gt;

&lt;p&gt;We all have stories about ourselves. They seem to explain how and why we are how we are.&lt;/p&gt;

&lt;p&gt;Some of them are negative, "Oh yeah I always do X, it's so frustrating, that's why I'm Y." Some are more positive, "Oh man, I love being Z! It helps me do N."&lt;/p&gt;

&lt;p&gt;I needed help with mine.&lt;/p&gt;

&lt;p&gt;A friend can help you reformulate them, but sometimes it can really be worth talking to someone outside of your friends or family - therapy is good, yes, and so is coaching.&lt;/p&gt;

&lt;p&gt;Sometimes you can do with a little help from someone specialising in the things you struggle with :)&lt;/p&gt;

&lt;p&gt;I am friends with &lt;a href="https://twitter.com/talkwithecm"&gt;@talkwithecm&lt;/a&gt; and admittedly, I got mates' rates on her services.&lt;/p&gt;

&lt;p&gt;But I want to give back to her, because I believe she was instrumental in my recent interview success. She's not paying me: &lt;a href="https://go.talkwithecm.com/now"&gt;https://go.talkwithecm.com/now&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Other coaches are of course available!&lt;/p&gt;

&lt;p&gt;It's OK to seek extra help. Always. It's not cheating, it's helping you break out from traps you might otherwise have fallen into.&lt;/p&gt;

&lt;p&gt;Taking advice like this isn't only for just one interview - having my self story lifted out of negativity has been such a wonderful gift ❤️&lt;/p&gt;

&lt;h2&gt;
  
  
  Postscript
&lt;/h2&gt;

&lt;p&gt;There are so many different things you can do, to improve your chances - but I wanted to share these specific things that really helped me. I'm open to any questions!&lt;/p&gt;

&lt;p&gt;This advice does not include tips for technical parts of interviews, only the 'getting-to-know-you' kind, however the internet is full of &lt;a href="https://learntocodewith.me/posts/technical-interview/"&gt;great&lt;/a&gt; &lt;a href="https://www.freecodecamp.org/news/what-i-learned-from-doing-60-technical-interviews-in-30-days/"&gt;advice&lt;/a&gt; for this side of things :)&lt;/p&gt;

&lt;p&gt;Above all I wish you all the BEST OF LUCK!&lt;/p&gt;

</description>
      <category>interview</category>
      <category>jobs</category>
      <category>career</category>
      <category>applying</category>
    </item>
    <item>
      <title>Aspects of Accessibility (a11y) - Semantics, Contrast and... Anxiety?</title>
      <dc:creator>Sara Joy</dc:creator>
      <pubDate>Tue, 07 Jun 2022 10:21:25 +0000</pubDate>
      <link>https://dev.to/sarajw/aspects-of-accessibility-a11y-semantics-contrast-and-anxiety-eb</link>
      <guid>https://dev.to/sarajw/aspects-of-accessibility-a11y-semantics-contrast-and-anxiety-eb</guid>
      <description>&lt;p&gt;A caveat - I am learning while writing. My own homepage &amp;amp; portfolio need work too!&lt;/p&gt;

&lt;p&gt;I don't think anyone can know absolutely everything there is to know about web accessibility, because it covers the whole breadth of humanity and how we all go through life - offline and online - in different ways.&lt;/p&gt;

&lt;p&gt;But, we &lt;strong&gt;can&lt;/strong&gt; pledge to keep our minds open to inclusivity, and easily make reasonable accommodations in our code that can really help people out.&lt;/p&gt;

&lt;h2&gt;
  
  
  Apply accessibility methods as you learn
&lt;/h2&gt;

&lt;p&gt;Some of us developers start looking into accessibility and maybe have a little panic about the things we've been doing poorly, and the people we might therefore have inconvenienced, or shut out of the content we have been serving. There is a lot to take in. The temptation is to just carry on and pretend we didn't read that very confronting article making it clear we need to &lt;strong&gt;Do Better&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;I mean, yes, we do. But also, remember how we learn to code - step by step - many things are overwhelming until they aren't, and it's the same with a11y. We'll get there, keep improving the things we do as we go along, with awareness of all this humanity of which we are also a part :)&lt;/p&gt;

&lt;p&gt;This article is intended to be only a brief overview that covers a11y issues with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Page structure&lt;/li&gt;
&lt;li&gt;Contrast levels&lt;/li&gt;
&lt;li&gt;Anxiety-inducing design&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;...this is not at all an exhaustive list, but it's a good start. Let's go:&lt;/p&gt;

&lt;h2&gt;
  
  
  Page structure
&lt;/h2&gt;

&lt;p&gt;Do you use Word? If yes, do you remember when you discovered the automatic headings and styles, with automatic numbering at various heading depths, from which you could just wave a magic wand and create a Table of Contents of your whole essay or report? I like to think that a well structured page on a website would also make a sensible ToC after scraping the page's HTML.&lt;/p&gt;

&lt;h3&gt;
  
  
  Semantic HTML
&lt;/h3&gt;

&lt;p&gt;Not only can we use various levels of heading (&lt;code&gt;&amp;lt;h1&amp;gt;&lt;/code&gt; to &lt;code&gt;&amp;lt;h6&amp;gt;&lt;/code&gt;) like in word-processing software to convey meaning and show which headings are sub-headings of others, HTML also has many tags which make clearer the broad nature what is inside of them - an example using these tags is below - not one &lt;code&gt;&amp;lt;div&amp;gt;&lt;/code&gt; in sight:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="cp"&gt;&amp;lt;!DOCTYPE html&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;html&lt;/span&gt; &lt;span class="na"&gt;lang=&lt;/span&gt;&lt;span class="s"&gt;"en"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;head&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;meta&lt;/span&gt; &lt;span class="na"&gt;stuff=&lt;/span&gt;&lt;span class="s"&gt;"goes here"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;title&amp;gt;&lt;/span&gt;Example Website&lt;span class="nt"&gt;&amp;lt;/title&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;body&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;header&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;h1&amp;gt;&lt;/span&gt;Website name&lt;span class="nt"&gt;&amp;lt;/h1&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;nav&amp;gt;&lt;/span&gt;
          &lt;span class="nt"&gt;&amp;lt;ul&amp;gt;&lt;/span&gt;
            &lt;span class="nt"&gt;&amp;lt;li&amp;gt;&lt;/span&gt;Home&lt;span class="nt"&gt;&amp;lt;/li&amp;gt;&lt;/span&gt;
            &lt;span class="nt"&gt;&amp;lt;li&amp;gt;&lt;/span&gt;Blog&lt;span class="nt"&gt;&amp;lt;/li&amp;gt;&lt;/span&gt;
            &lt;span class="nt"&gt;&amp;lt;li&amp;gt;&lt;/span&gt;Contact&lt;span class="nt"&gt;&amp;lt;/li&amp;gt;&lt;/span&gt;
          &lt;span class="nt"&gt;&amp;lt;/ul&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;/nav&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/header&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;main&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;section&amp;gt;&lt;/span&gt;
            &lt;span class="nt"&gt;&amp;lt;h2&amp;gt;&lt;/span&gt;Blog title&lt;span class="nt"&gt;&amp;lt;/h2&amp;gt;&lt;/span&gt;
            &lt;span class="nt"&gt;&amp;lt;article&amp;gt;&lt;/span&gt;
                &lt;span class="nt"&gt;&amp;lt;h3&amp;gt;&lt;/span&gt;Blog post title&lt;span class="nt"&gt;&amp;lt;/h3&amp;gt;&lt;/span&gt;
                &lt;span class="nt"&gt;&amp;lt;p&amp;gt;&lt;/span&gt;Blog post content&lt;span class="nt"&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;
            &lt;span class="nt"&gt;&amp;lt;/article&amp;gt;&lt;/span&gt;
            &lt;span class="nt"&gt;&amp;lt;aside&amp;gt;&lt;/span&gt;Interesting extra info&lt;span class="nt"&gt;&amp;lt;/aside&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;/section&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;section&amp;gt;&lt;/span&gt;
            &lt;span class="nt"&gt;&amp;lt;h3&amp;gt;&lt;/span&gt;Comments&lt;span class="nt"&gt;&amp;lt;/h3&amp;gt;&lt;/span&gt;
            &lt;span class="nt"&gt;&amp;lt;article&amp;gt;&lt;/span&gt;First!&lt;span class="nt"&gt;&amp;lt;/article&amp;gt;&lt;/span&gt;
            &lt;span class="nt"&gt;&amp;lt;article&amp;gt;&lt;/span&gt;Great post!&lt;span class="nt"&gt;&amp;lt;/article&amp;gt;&lt;/span&gt;
            &lt;span class="nt"&gt;&amp;lt;article&amp;gt;&lt;/span&gt;Very informative!&lt;span class="nt"&gt;&amp;lt;/article&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;/section&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/main&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;footer&amp;gt;&lt;/span&gt;Copyright Me, 2022&lt;span class="nt"&gt;&amp;lt;/footer&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;And the automatic output in the browser is already readable, if not very pretty:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--G4iQYRQd--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jky7u071q32gfqf560w2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--G4iQYRQd--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jky7u071q32gfqf560w2.png" alt="Screenshot of web page generated by the HTML code above" width="291" height="574"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Screen readers &amp;amp; Reader mode
&lt;/h3&gt;

&lt;p&gt;These semantic tags are better picked up by screen readers for the visually impaired, and if the site has the right properties*, a stripped-back 'reader mode' may be unlocked (depending on the browser), so that users can choose to read it in their chosen style and colour of font and background.&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;What exactly is needed for a browser to offer up reading mode on a website is somewhat unclear, unfortunately. Articles speak of semantic HTML, but that seems to be not all that is required. Any more information on this is welcome!&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Commenting out or disabling the CSS (or other methods of styling) on your site to see what is generated by the bare HTML, is good way to get a baseline idea as to whether your site is readable for those not seeing all the styling and layout for any reason.&lt;/p&gt;

&lt;p&gt;It's worth having a play with your OS screen reader (in Windows it's called Narrator, VoiceOver on iOS and macOS, TalkBack on Android) or downloading a popular free one like NVDA. If the readers jump around erratically, miss out chunks of text, link or button names, or include things you wish to be hidden - then you know immediately which sections you need to work on.&lt;/p&gt;

&lt;p&gt;There are more tools that let us check out how well-structured and accessible our sites are, which I'll go into in more depth in the next blog post in this series :)&lt;/p&gt;

&lt;h3&gt;
  
  
  Focus order
&lt;/h3&gt;

&lt;p&gt;Later, after you add links, buttons, and other functionality, they need to be focusable by the browser for someone not using a mouse or a touch screen. It's worth returning to the plain unstyled, unformatted mode to check that the Tab key goes to each focusable element on the page in a sensible order.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--rilLVwtJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uyh2pz7inx714eiyly6r.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--rilLVwtJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uyh2pz7inx714eiyly6r.png" alt="Sample HTML code on the left, this time with links - output on the right, with 4th focusable link highlighted" width="880" height="1086"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If this is OK, the next job is to see that it still retains that order once all the styling and any JavaScript functionality is reapplied.&lt;/p&gt;

&lt;h3&gt;
  
  
  Responsivity to font size
&lt;/h3&gt;

&lt;p&gt;Hopefully you've already designed your page to work well on mobile devices, so changing the font size on your desktop monitor or laptop to 200% doesn't destroy your website - but this is worth checking.&lt;/p&gt;

&lt;p&gt;How about on a smaller device? Do you allow zooming? And if you change the mobile browser font size to 200%, how does that change your pages? What about flipping the phone into landscape mode?&lt;/p&gt;

&lt;h2&gt;
  
  
  Contrast levels
&lt;/h2&gt;

&lt;p&gt;Generally we only hear about contrast levels in terms of a 'high contrast mode' for people with visual impairments, who sometimes need it to see elements and text more clearly. But, this is really only a very small part of the whole story.&lt;/p&gt;

&lt;p&gt;It can actually be rather tiring on the eyes to read completely black text on a completely white background. Many websites use a shade of grey for the text, and/or a light grey for the background (vice-versa for dark mode). In some cases a too-high-contrast &lt;a href="https://blog.tiia.rocks/web-apps-why-offering-a-low-contrast-mode-makes-you-more-accessible-not-less"&gt;can even trigger pain&lt;/a&gt; in some people.&lt;/p&gt;

&lt;p&gt;In fact reader modes are often a variation on this theme by default; an off-white background with not-quite-black text. We think of physical book pages as black and white, but in real life we have shadows. A book printed on very white paper is actually quite difficult to read in blazing sunshine. The dev.to editor's text colour has a lightness of over 40% up from solid black.&lt;/p&gt;

&lt;h3&gt;
  
  
  Migraines
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://twitter.com/TiiaAurora"&gt;@Tiia&lt;/a&gt; made me aware of &lt;a href="https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4011802/"&gt;a study of migraine sufferers&lt;/a&gt; where their aversion to contrast and the movement of a grating pattern was tested. A very brief summary of the results is tabulated below:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Table 1&lt;/strong&gt;: Mean (standard deviation) percent contrast of the grating at which the participant chose to abort the trial. The data are shown separately for migraineurs and controls for each type of grating (static, drifting and vibrating).&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;Static&lt;/th&gt;
&lt;th&gt;Drifting&lt;/th&gt;
&lt;th&gt;Vibrating&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;strong&gt;Control&lt;/strong&gt; (N=25)&lt;/td&gt;
&lt;td&gt;90.69 (15.87)&lt;/td&gt;
&lt;td&gt;65.40 (27.26)&lt;/td&gt;
&lt;td&gt;70.00 (27.78)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;strong&gt;Migraine&lt;/strong&gt; (N=18)&lt;/td&gt;
&lt;td&gt;82.82 (16.27)&lt;/td&gt;
&lt;td&gt;49.95 (22.88)&lt;/td&gt;
&lt;td&gt;54.03 (24.49)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;It's a little unclear to me how their calculated contrast percentages line up with other contrast metrics we use online.&lt;/p&gt;

&lt;p&gt;What is clear however, is that the more something moves the less contrast we like, both for people who get migraines and people who don't. I find it interesting that drifting is less tolerated at higher contrasts than vibrating - especially as we usually scroll down websites, in a rather drifty sort of way.&lt;/p&gt;

&lt;h3&gt;
  
  
  Case study: Ravelry
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://www.ravelry.com/"&gt;Ravelry&lt;/a&gt; is a very popular website with knitters and crocheters. It's an impressive database into which people put their projects; the yarn they're using, what colour it is, the stitch style, the pattern (instructions), photos of progress and finished articles - the joy of looking for a pattern and seeing how hundreds of other people have made the same article is great!&lt;/p&gt;

&lt;p&gt;However, they got into some hot water a while ago, when they launched a redesign.&lt;/p&gt;

&lt;p&gt;Ravelry is &lt;a href="https://www.newyorker.com/magazine/2021/03/29/how-politics-tested-ravelry-and-the-crafting-community"&gt;no stranger to (political) controversy&lt;/a&gt;, however this time there was uproar, with many users complaining of pain and sickness upon viewing the site. Some speculate that the turbulent times surrounding the redesign may have made people more sensitive to the changes:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;It was mid-June, about three months into the pandemic and three weeks after the killing of George Floyd. The redesign, meant to lift the spirits of its users and improve the low-vision and mobile-user experience, was not well received by all. Some longtime users reported that the site was now triggering seizures and migraines.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;em&gt;(This is from &lt;a href="https://www.newyorker.com/magazine/2021/03/29/how-politics-tested-ravelry-and-the-crafting-community"&gt;an article in the New Yorker&lt;/a&gt; - for the redesign-specific text, start from the bottom and scroll up to the paragraph starting with the large L.)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Whether this is true or not, Ravelry did go from having soft, muted-grey 3D buttons and table borders, to a more &lt;a href="https://hype4.academy/articles/design/neubrutalism-is-taking-over-web"&gt;Neubrutalistic&lt;/a&gt; style with dark, solid borders and solid black shadows on a white background:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--BYDjO3Lg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ddzs5m9i6ozx6a4snwpb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--BYDjO3Lg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ddzs5m9i6ozx6a4snwpb.png" alt="Ravelry login screen, before and after redesign. The new login panel has a solid black border." width="801" height="1028"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And when scrolling through hundreds of projects as one does when using Ravelry, we start to see that maybe all these hard black lines moving up the page might start to resemble a high-contrast drifting grating, as used in the migraine study:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--b3AibLZL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3duajvkf4fujxpn97993.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--b3AibLZL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3duajvkf4fujxpn97993.png" alt="A page on Ravelry showing many project 'cards' on screen, before and after the redesign. Every project, user icon and 'More' button now has a solid black border." width="800" height="1136"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;More before and after images can be seen &lt;a href="https://imgur.com/a/QXXxsau"&gt;here on Imgur&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The intention may have been to use such a high-contrast on purpose for those with visual impairments, however it clearly - however much the responses were wrapped up in the heightened feelings felt worldwide at that time - isn't comfortable viewing for all.&lt;/p&gt;

&lt;p&gt;I've mentioned Neubrutalism or Neo-Brutalism in web design - &lt;a href="https://www.google.com/search?q=neo-brutalism+web+design&amp;amp;tbm=isch"&gt;a quick google&lt;/a&gt; will show you lots of eye-popping design! There's definitely a place for pushing the boundaries, as long as people are &lt;em&gt;given the choice&lt;/em&gt; not to have their eyes popped, and to be able to view the content without discomfort or pain. Methods for how to offer this choice is something I'll come to later in this series of articles.&lt;/p&gt;

&lt;h2&gt;
  
  
  Anxiety-inducing design
&lt;/h2&gt;

&lt;p&gt;We come to the last aspect of accessibility I intend to cover in this article, which while new to me is at the same time so very unsurprising:&lt;/p&gt;

&lt;p&gt;Some user interfaces can heighten anxiety and panic in users.&lt;/p&gt;

&lt;p&gt;Sometimes accidentally. Sometimes on purpose.&lt;/p&gt;

&lt;h3&gt;
  
  
  Accidentally anxious
&lt;/h3&gt;

&lt;p&gt;In most cases I believe this to be unintentional.&lt;/p&gt;

&lt;p&gt;Designers and developers are usually just trying to deliver information in what they believe to be the best way possible, or in other cases they're in a hurry building an MVP (a Minimum Viable Product, that's "good enough for now") and haven't thought through the whole UX (User eXperience) yet.&lt;/p&gt;

&lt;p&gt;Such a website might include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;High density of information&lt;/li&gt;
&lt;li&gt;Endless scrolling (of which you can never get to the 'end')&lt;/li&gt;
&lt;li&gt;Glitchy animations&lt;/li&gt;
&lt;li&gt;Unclear paths&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That last part, unclear paths - this is when it can really get frustrating and even worrying for people.&lt;/p&gt;

&lt;p&gt;Imagine navigating the path to a purchase, maybe an expensive one - and you're not perfectly sure that you chose all the correct options (i.e. dates for travel, number of people and their details, anything else that might make the purchase wrong in some way). Then imagine that the purchase flow isn't assuring you that you'll get a chance to confirm or change all the details before committing to the spend.&lt;/p&gt;

&lt;p&gt;I've certainly cancelled payment in order to go back and double-check before. This can often confuse the payment systems depending on how they have been invoked. We need such paths to be crystal clear and reassuring.&lt;/p&gt;

&lt;h3&gt;
  
  
  Anxiety aware: Dark patterns
&lt;/h3&gt;

&lt;p&gt;What I mean by this is not that the designers of the site are aware of anxiety and trying to mitigate it, but quite the opposite.&lt;/p&gt;

&lt;p&gt;Imagine a website that involves booking things - trips, hotel rooms, experiences, etc. Maybe there are a limited number of these things available. Maybe, if the user is made to feel like they are running out of time, or that the availability is low, they might pay more. There are plenty of sites that leverage these anxieties to score a sale.&lt;/p&gt;

&lt;p&gt;The methods use range from quite innocent descriptions, to outright stressful UX:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"Only 3 left!"&lt;/li&gt;
&lt;li&gt;"In the baskets of 10 other users"&lt;/li&gt;
&lt;li&gt;"You have 5 minutes to complete your purchase"&lt;/li&gt;
&lt;li&gt;"5 other users are considering this booking"&lt;/li&gt;
&lt;li&gt;Countdown timers on the contents of the basket&lt;/li&gt;
&lt;li&gt;Pop-ups and modal windows - "Wait, before you go!"&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Some of these even appear just as you mouse up to the tab:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--yYCOUpvd--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ymtxmkk7lwcs1evec8zl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--yYCOUpvd--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ymtxmkk7lwcs1evec8zl.png" alt="An 'exit modal' that appeared just as I was about to close the tab" width="880" height="664"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;These are all designed to make a person anxious, in order to complete a sale, and are examples of several different kinds of "dark pattern" often seen on the web. Look out for them - the more you know that even friendly looking sites are looking to trick you into divulging information or giving them money, the more often you can see the tricks for what they are.&lt;/p&gt;

&lt;h3&gt;
  
  
  How is this related to accessibility?
&lt;/h3&gt;

&lt;p&gt;Whether they have and haven't been clinically diagnosed as anxious, many people will avoid certain websites or completing certain higher-stakes or higher-cost actions online, for fear of being conned, doing something wrong, or having their payment details stolen.&lt;/p&gt;

&lt;p&gt;This is common - and if someone is too frightened to access a service, then clearly it is just as big an a11y problem (if not worse than) as poor semantic HTML!&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Like I said near the top - this is no exhaustive list, but I hope it's given you something to chew on.&lt;/p&gt;

&lt;p&gt;Generally if anything on a page is even slightly uncomfortable for a user with no known disabilities, then there will be people for whom that page is unusable.&lt;/p&gt;

&lt;p&gt;That's not to say that all apps and websites need to be calm, zen-like spaces - many people gravitate to things that look more exciting! For example, if we consider a design showcase that offers no services, then there is rather less of a reason to tone it down. Some games are known for eliciting a fear response, designed to make your heart race, this is art - like a good horror movie.&lt;/p&gt;

&lt;p&gt;But we really don't need our daily tools and services to cause us headaches and stress.&lt;/p&gt;

&lt;h2&gt;
  
  
  References, a.k.a. Further reading:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://blog.tiia.rocks/web-apps-why-offering-a-low-contrast-mode-makes-you-more-accessible-not-less"&gt;Why Offering A Low Contrast Mode Makes You More Accessible, Not Less&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4011802/"&gt;Cortical hyperexcitability in migraine and aversion to patterns&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.newyorker.com/magazine/2021/03/29/how-politics-tested-ravelry-and-the-crafting-community"&gt;How Politics Tested Ravelry and the Crafting Community&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://hype4.academy/articles/design/neubrutalism-is-taking-over-web"&gt;Neubrutalism is taking over the web&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;A web of anxiety: accessibility for people with anxiety and panic disorders

&lt;ol&gt;
&lt;li&gt;&lt;a href="https://www.tpgi.com/a-web-of-anxiety-accessibility-for-people-with-anxiety-and-panic-disorders-part-1/"&gt;Part 1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.tpgi.com/a-web-of-anxiety-accessibility-for-people-with-anxiety-and-panic-disorders-part-2/"&gt;Part 2&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>a11y</category>
      <category>anxiety</category>
      <category>contrast</category>
      <category>semantics</category>
    </item>
    <item>
      <title>How We All Benefit from Accessibility</title>
      <dc:creator>Sara Joy</dc:creator>
      <pubDate>Sat, 21 May 2022 11:58:22 +0000</pubDate>
      <link>https://dev.to/sarajw/how-we-all-benefit-from-accessibility-14o5</link>
      <guid>https://dev.to/sarajw/how-we-all-benefit-from-accessibility-14o5</guid>
      <description>&lt;h2&gt;
  
  
  Accessibility on the web (a.k.a. a11y)
&lt;/h2&gt;

&lt;p&gt;This is already a huge topic that I don't feel very confident on being authoritative about, but I'd like to bring some food for thought to the table! If you haven't already come across the idea of Accessibility online - well, just think about it a little:&lt;/p&gt;

&lt;p&gt;The physical world is still learning how to be accessible to everyone - a few existing things that improve accessibility include wheelchair ramps, teaching assistants in schools, braille on signs and buttons, allowing work from home, and many more accommodations. Some of these we take for granted now, others we definitely need to add or keep improving.&lt;/p&gt;

&lt;p&gt;So, the same goes for the web.&lt;/p&gt;

&lt;h2&gt;
  
  
  We all benefit
&lt;/h2&gt;

&lt;p&gt;What not everyone realises is how much accessibility improvements actually help us all. Wheelchair ramps? Also good for people pushing children in prams and buggies. Elevators/lifts? Saves you lugging that heavy suitcase up the stairs. Also some things that are just 'nice' for the rest of us can be very important for others - a quiet coach on a train? So relaxing. Also great for keeping overwhelming sounds down for people with auditory processing disorders.&lt;/p&gt;

&lt;p&gt;Ditto online - subtitles on videos? So useful if you want to watch a video quietly, or in a loud environment, or if you have no earbuds with you. Good, semantic HTML structure under a website? Great for screen readers and also makes for clear, well-structured visual user interfaces too. Dark mode websites? Nice to use in the evenings if you like to keep your surroundings dark or save your OLED-screened mobile phone battery, and also helpful if you suffer migraines and bright backgrounds trigger it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Visual UI (User Interface) accommodations
&lt;/h2&gt;

&lt;p&gt;That last thing really varies, though - different styles of user interfaces work best for different people. Some maybe visually-impaired people need very high contrast to be able to read well, some read better with a particular colour-cast over their reading material, others have difficulties when there is &lt;a href="https://blog.tiia.rocks/web-apps-why-offering-a-low-contrast-mode-makes-you-more-accessible-not-less"&gt;too &lt;em&gt;much&lt;/em&gt; contrast in the UI&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;In the fairly recent past - not that many people used this - it was possible to design your own user styles, in CSS, and have your browser apply them to every site. How well that worked I am not sure, and now that option is difficult to find unless you go rooting around in hidden folders. Plus, that's of course already not very accessible to people who aren't into coding!&lt;/p&gt;

&lt;p&gt;Now that Dark Mode has become a Thing across operating systems, apps and websites, there are many people breathing a great sigh of relief. And these are absolutely not just the people who would say they had any visual impairments or neurological issues - we all benefit. Where one person may say "I can't view this website or I will get a debilitating headache", another will only squint a little and say "oof, what a garish website". Both will benefit from there being a switch to change the UI into something more comfortable.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion, and watch this space...
&lt;/h2&gt;

&lt;p&gt;There's a whole bunch of new stuff coming to browsers soon (or even already working, some behind dev flags) that I'm very impatient for. The more I dig, the more I want, and the sooner I want it all to work properly!&lt;/p&gt;

&lt;p&gt;Now that I've written down the thoughts you see above, I'm preparing to dig deep into those to show you what I mean.&lt;/p&gt;

&lt;p&gt;The web is a great place for radical design! But it's also a great place for choice - and if we want to access all the excellent services available online, we should all be able to do so in peace and without pain.&lt;/p&gt;

&lt;p&gt;Stay tuned for the follow-up to this post...&lt;/p&gt;

</description>
      <category>a11y</category>
      <category>webdev</category>
      <category>irl</category>
    </item>
    <item>
      <title>Using &lt;details&gt; HTML tag as navigation</title>
      <dc:creator>Sara Joy</dc:creator>
      <pubDate>Fri, 25 Mar 2022 14:39:43 +0000</pubDate>
      <link>https://dev.to/sarajw/using-html-tag-as-navigation-56gl</link>
      <guid>https://dev.to/sarajw/using-html-tag-as-navigation-56gl</guid>
      <description>&lt;h2&gt;
  
  
  &amp;lt;details&amp;gt; ?
&lt;/h2&gt;

&lt;p&gt;I thought this was the cutest thing; natively right out of the box, HTML provides us with a way to open and close an element on a click. Beautiful. People don't seem to have used it much! Odd, I thought.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;details&amp;gt;
  &amp;lt;summary&amp;gt;The bit you click goes in here&amp;lt;/summary&amp;gt;
  Once clicked, you get to see the rest of the stuff here
&amp;lt;/details&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;And it's pretty flexible, you can put whatever you want in there!&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;details id="nav"&amp;gt;
  &amp;lt;summary id="hamburger" role="button" aria-haspopup="menu"&amp;gt;
    &amp;lt;div&amp;gt;&amp;lt;/div&amp;gt;
    &amp;lt;div&amp;gt;&amp;lt;/div&amp;gt;
    &amp;lt;div&amp;gt;&amp;lt;/div&amp;gt;
  &amp;lt;/summary&amp;gt;
  &amp;lt;ul id="menu"&amp;gt;
    &amp;lt;li&amp;gt;&amp;lt;a href="#intro"&amp;gt;Intro&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
    &amp;lt;li&amp;gt;&amp;lt;a href="#stuff"&amp;gt;Stuff&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
    &amp;lt;li&amp;gt;&amp;lt;a href="#contact"&amp;gt;Contact&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
  &amp;lt;/ul&amp;gt;
&amp;lt;/details&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;So I had a play with it. It didn't take too long (I lie, I fiddle with CSS incessantly, even when doing something simple, just because it's fun) to style it into a nice enough looking hamburger-style menu with a drop down of links:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--rizPfiJ1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wlkf4s2v7f1yz12ig8gd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--rizPfiJ1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wlkf4s2v7f1yz12ig8gd.png" alt="details-nav screenshot" width="580" height="343"&gt;&lt;/a&gt;&lt;br&gt;
And it worked beautifully, click the hamburger menu icon and out pops a menu. Click it again and it goes away.&lt;/p&gt;
&lt;h2&gt;
  
  
  &amp;lt;/details&amp;gt;
&lt;/h2&gt;

&lt;p&gt;But, there was just one thing missing - and my muscle memory gave it away. It doesn't disappear when you click outside of the menu, and doesn't disappear automatically after you've clicked the thing you want to go to.&lt;/p&gt;
&lt;h2&gt;
  
  
  JS needed
&lt;/h2&gt;

&lt;p&gt;So, in we came with JavaScript. It took me a while to get to the right code to deselect the whole 'button' area (including the three dashes), while not also selecting the whole drop-down menu from the 'click-outside' area. Thank you .closest()!&lt;/p&gt;

&lt;p&gt;For a long time I was managing to get the click-anywhere-to-close thing to work, but when you clicked on the button itself it immediately reopened the menu. Sigh. Got there in the end, thanks to StackOverflow, of course:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;let menu = document.getElementById('nav');

//listen for clicks everywhere
window.addEventListener('click', function (event) {
  // if clicks are not on the menu button itself
  if (!event.target.closest('#hamburger')) {
    // Hide the menu if open.
    if (menu.open) { menu.removeAttribute('open'); }
  }
});
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Feel free to click away on this demo, and turn off JavaScript if you want to see it working with just HTML &amp;amp; CSS: &lt;a href="https://details-nav.netlify.app/"&gt;https://details-nav.netlify.app/&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Accessibility
&lt;/h2&gt;

&lt;p&gt;I don't know for sure whether using &amp;lt;details&amp;gt; this way is semantically problematic or not. And even if it isn't, it probably still needs role="button" and it could probably also do with aria-pressed and aria-expanded attributes being correctly set, which of course requires more JavaScript...&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;It seems like a cute short-cut. And it is to some degree, until you actually want to use it in a serious capacity, and have screen readers understand it, and for it to not frustrate people who have their muscle memory (like mine) trained by the modern web as we know it.&lt;/p&gt;

&lt;p&gt;As such you end up writing a bunch of JS anyway, and if you're going to do that - well, you may as well use &amp;lt;button&amp;gt; and go the (only very slightly) longer way round.&lt;/p&gt;

&lt;p&gt;Despite all this I think &amp;lt;details&amp;gt; is a useful tag to have in our HTML armoury, just not in this particular case.&lt;/p&gt;

&lt;h2&gt;
  
  
  P.S.
&lt;/h2&gt;

&lt;p&gt;I hope this is useful to anyone looking it up and thinking this could have been a handy way to do things!&lt;/p&gt;

&lt;p&gt;Also, I am really quite new to more modern web development and I have a LOT to learn, so any comments you have on this are very welcome!&lt;/p&gt;

</description>
      <category>html</category>
      <category>css</category>
      <category>javascript</category>
    </item>
  </channel>
</rss>
