<?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: Lopè Ariyo</title>
    <description>The latest articles on DEV Community by Lopè Ariyo (@lopeariyo).</description>
    <link>https://dev.to/lopeariyo</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%2F373387%2F0ec35318-86a6-47f7-92ea-81393f8f78f8.jpeg</url>
      <title>DEV Community: Lopè Ariyo</title>
      <link>https://dev.to/lopeariyo</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/lopeariyo"/>
    <language>en</language>
    <item>
      <title>An Introduction to Web Accessibility</title>
      <dc:creator>Lopè Ariyo</dc:creator>
      <pubDate>Sun, 21 Jun 2020 12:58:59 +0000</pubDate>
      <link>https://dev.to/lopeariyo/an-introduction-to-web-accessibility-3lo1</link>
      <guid>https://dev.to/lopeariyo/an-introduction-to-web-accessibility-3lo1</guid>
      <description>&lt;p&gt;I'll admit, I'm new to the world of accessibility. It's something that I had heard of and knew was important but I didn't actually know how to implement it. &lt;/p&gt;

&lt;p&gt;If you're a member of twitter and most especially the tech twitter community you'll have seen the recent voice feature that's been implemented as well as the backlash it has received. If not, the new feature allows users to record a tweet instead of typing it. This is really cool, right? It allows people to diversify how they communicate their thoughts. &lt;/p&gt;

&lt;p&gt;Well, the problem is, it excludes a whole community of users who have hearing difficulties. For platforms that rely on sound, there is usually an option for captions/subtitles so that no matter a user's situation, they can enjoy the provided content. So it is understandably upsetting that a global company like Twitter has left accessibility as an afterthought. &lt;/p&gt;

&lt;p&gt;Simply put, accessibility is a &lt;strong&gt;necessity&lt;/strong&gt;. As a developer at the beginning of my journey, these are practices I want to learn now, rather than correct later. I think it's important to have empathy at the forefront of the work you create because at the end of the day it makes a better product for everyone. &lt;/p&gt;

&lt;p&gt;What type of developer do you want to be? If you're like me then join me on this journey to learning about web accessibility and learning how to implement it. &lt;/p&gt;

&lt;p&gt;So, let's start from the beginning, what exactly is web accessibility?&lt;/p&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/MeOyHx7zSHrwyYZj8h/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/MeOyHx7zSHrwyYZj8h/giphy.gif" alt="I'll explain meme"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In a nutshell, web accessibility is providing a web app for a user that, regardless of whether or not said user has an impairment, enables them to access the app's content without any difficulties.&lt;/p&gt;

&lt;p&gt;"Surely, if a person can visit a website in the first place it's accessible". Well no, not really. A real-life example of this is where a wheelchair user wants to visit a restaurant because it's had such popular reviews and it advertises a 'No Booking Necessary' service. It turns outs, even though they can get into the restaurant, there isn't any seating area available for them because of the way the restaurant is laid out - all the chairs and tables are extremely close together. It should be obvious why this is a problem. A wheelchair user needs space to navigate around the restaurant before making it to and from their seat or the lavatory. Let's say they do manage to squeeze into a place, they're still not really able to enjoy the food because they're uncomfortable and the experience overall becomes a negative one. The head chef or restaurant owner probably never meant to discriminate against the wheelchair user, after all, they want everyone to experience their food. However, they did and whether or not the food was good it no longer matters because the overall experience and comfort for the wheelchair user were poor. &lt;/p&gt;

&lt;p&gt;If you apply this example to an actual website, the 'No Booking Necessary' service is equivalent to saying "Anyone can use this site". The chairs and tables are the structure of the website. The food being served is the website's content and of course, the head chef or restaurant owner is the developer. Each and every part contributes to the user experience. There's an important lesson here. It's also a simple one. Try to think about and accommodate for all possible types of users who may wish to have access to your website. You don't want to leave a user frustrated.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/nkLB4Gp8H6hFe/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/nkLB4Gp8H6hFe/giphy.gif" alt="Frustrated User"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Typically, there are many types of impairments people can have, and three levels of severity. An impairment, in terms of web development, can be classified as: &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; Sensory (mostly vision and hearing)&lt;/li&gt;
&lt;li&gt; Motor / Physical &lt;/li&gt;
&lt;li&gt; Cognitive. &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The severities in which they are categorized are: &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Situational (based on the current environment)&lt;/li&gt;
&lt;li&gt;Temporary (most likely stemming from an injury)&lt;/li&gt;
&lt;li&gt;Permanent (a continuing condition either from birth or through injury).
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;An app's accessibility can be implemented through focus, semantics, and visual design. Focus is typically looking at where the user is located on the app and how to help the user know where they are and what they are on. Semantics dives into how to logically layout an app so that it makes sense to a user who may not be navigating through the app in a 'traditional' way. The visual design aspect relates almost entirely to CSS. Can it be viewed on any browser? Is it responsive? Is there suitable contrasting throughout the app? Can text be read properly?&lt;/p&gt;

&lt;p&gt;I'll be covering these topics in more depth in later posts once I learn more. For now, one thing to be aware of is some of the assistive technologies out there to help implement these features. Assistive technology includes but is not limited to screen readers, braille displays, magnifiers, voice control, and eye-tracking. &lt;/p&gt;

&lt;p&gt;That's it for now! Here is a small list of some of the resources I (currently) have and will be using to understand and implement accessibility. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.udacity.com/course/web-accessibility--ud891"&gt;Udacity Web Accessibility Free Course&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://a11yproject.com/"&gt;The a11y Project&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="http://web-accessibility.carnegiemuseums.org/"&gt;Carnegie Museum's Web Accessibility Guidlines&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://jfhector.github.io/accessibility-guidelines/index.html"&gt;JFHector(and others)'s Guide&lt;/a&gt;&lt;/p&gt;

</description>
      <category>a11y</category>
      <category>webdev</category>
      <category>html</category>
      <category>codenewbie</category>
    </item>
    <item>
      <title>How I’ve Adapted my VSCode Workspace</title>
      <dc:creator>Lopè Ariyo</dc:creator>
      <pubDate>Mon, 15 Jun 2020 15:46:28 +0000</pubDate>
      <link>https://dev.to/lopeariyo/how-i-ve-adapted-my-vscode-workspace-4nn0</link>
      <guid>https://dev.to/lopeariyo/how-i-ve-adapted-my-vscode-workspace-4nn0</guid>
      <description>&lt;p&gt;Have you ever come across a person who feels like they can’t work when things aren’t in sync with each other visually? Well… that’s me! So, now that I’ve become comfortable with what I expect from my workspace, here’s my small guide on how to make your VS code workspace work for you.&lt;/p&gt;

&lt;p&gt;First things first, choose a theme…. There’s so many different ones out there and this blog has done a great job of curating the most popular.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;a href="https://dev.to/thegeoffstevens/50-vs-code-themes-for-2020-45cc"&gt;&lt;strong&gt;50 VS Code themes for 2020&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;small&gt;If you're looking for a new theme to change up your code editor in the new year, I'm here to help! Check out a variety of stylish themes with unique color palettes-from sleek to snazzy to vibrant and everything in between-to see what works best for you.&lt;/small&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;In addition, &lt;a href="https://vscodethemes.com/"&gt;https://vscodethemes.com/&lt;/a&gt; list themes for VSCode that are trending which you.&lt;/p&gt;

&lt;p&gt;I currently love using Panda Theme because of how colorful it is, though I’ve found it can be a lot for others.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;a href="https://marketplace.visualstudio.com/items?itemName=tinkertrain.theme-panda"&gt;&lt;strong&gt;Panda Theme&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;small&gt;A Superminimal, dark Syntax Theme. This is the latest version of the Panda Syntax theme. It's a dark syntax theme crafted especially for Visual Studio Code [New Version], with subtle colors that are meant to be easy on the eyes. The font in the screenshot is Operator Mono.&lt;/small&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Once I downloaded my theme I used Apple’s Digital Colour Meter to find out what colours I was working so that I could adapt the rest of my visual enhancements to match. Colour Meter gives you the RGB codes however you’ll also need the hex code to change some visual enhancements. &lt;a href="https://convertingcolors.com/"&gt;https://convertingcolors.com/&lt;/a&gt; is great for this!&lt;/p&gt;

&lt;p&gt;Here’s what I was able to get:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Green(it’s really turquoise but whatever) — RGB (25,249,216) | HEX #19F9D8&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Pink — RGB (255,118,181)| HEX #FF76B5&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Light Purple — RGB(177,128,215) | HEX #B180D7&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Blue — RGB (111,193,255)| HEX #6FC1FF”&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Orange — RGB (247,179, 106)| HEX #F7B36A&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Light Pink — RGB (255,135,181)| HEX #FF87B4&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The semantics for the colour scheme are mentioned in it’s documentation:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;a href="https://github.com/tinkertrain/panda-syntax-vscode/blob/master/Color%20Semantics.md"&gt;&lt;strong&gt;tinkertrain/panda-syntax-vscode&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;small&gt;Some semantic meaning is intended for colors to help easily scan files. They are documented here for reference. Language keywords and component names are italicized for emphasis Green: Strings Pink: Logic Control Light Purple: Language access like module.exports, process.env Blue: Functions Orange: Variable assignments keywords Light Pink: Object access&lt;/small&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Now that you have the colours you need, you can access VSCode settings using &lt;code&gt;shift + cmd + P&lt;/code&gt; and then clicking on &lt;code&gt;Preferences: Open Settings (JSON)&lt;/code&gt; to modify any visual enhancements you have. Here’s how I changed mine.&lt;/p&gt;

&lt;h4&gt;
  
  
  Indent Rainbow
&lt;/h4&gt;

&lt;p&gt;I hate when my indents aren’t uniform so indent rainbow is a great tool for making sure I adhere to that. I made it so that the indent rainbow loops on five of my six theme colours with a transparency of 0.4 instead of it’s default colors. In addition, I gave it an error color of bright red so that it interupts how my theme looks and makes me want to correct it straight away.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--cgu93nqa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/978/1%2Af-sBTBjbJiMEEQ7cAcpgFA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--cgu93nqa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/978/1%2Af-sBTBjbJiMEEQ7cAcpgFA.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In this blog, they’ve used a single colour, and changed the transparencies of each indent to differentiate between them.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;a href="https://ihatetomatoes.net/useful-vscode-extensions-visual-enhancements/"&gt;&lt;strong&gt;Useful VSCode Extensions - Visual Enhancements - Petr Tichy - Front End Developer - Melbourne&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;small&gt;Are you looking for some useful VSCode extensions that could speed up your front-end development workflow? I have been building React and Angular projects in VSCode over the last few years and in the next few posts I will share with you my most popular VSCode extensions.&lt;/small&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h4&gt;
  
  
  Bracket Pair Colorizer 2
&lt;/h4&gt;

&lt;p&gt;Bracket Pair Colorizer doesn’t allow you to change it’s colors but the second version does. As brackets only appear next to functions I chose the colours of my theme that contrast against Blue(that’s the colour functions appear in because of the Panda semantics. Alternatively, Rainbow Brackets can be used instead.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--jZ6CWLgf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/744/1%2Ar230m7ExW4P3c-yjPpOYzQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--jZ6CWLgf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/744/1%2Ar230m7ExW4P3c-yjPpOYzQ.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Bracket Padder
&lt;/h4&gt;

&lt;p&gt;Bracket padder doesn’t add colour, but instead as white space, which is great if you prefer your code spaced out and easier to read, as opposed to clunky,.&lt;/p&gt;

&lt;h4&gt;
  
  
  Highlight Matching Tags
&lt;/h4&gt;

&lt;p&gt;Highlight Matching Tags, for me, is essentially the tag version of bracket pair colorizer. The only downside (it seems) is that you can only have one color. Otherwise, it would be great to have that change color depending on their indents.&lt;/p&gt;

&lt;h4&gt;
  
  
  Auto Close Tag + Auto Rename Tag + HtmlTagWrap
&lt;/h4&gt;

&lt;p&gt;I feel like the above three extensions all work as one. The auto-close and auto rename tags are self-explanatory. Once you create an opening tag, a closing tag is automatically named for you and if you change the opening of an existing tag the auto-rename extension will change the closing tag accordingly. HtmlTagWrap allows you to highlight some html and then wrap it in a default tag (it’s automatically set to &lt;/p&gt;
&lt;p&gt;) using &lt;code&gt;opt + w&lt;/code&gt;. I find myself having to wrap existing html in &lt;/p&gt; tags often, so I changed it’s default accordingly, however if you wanted to leave the default as &lt;p&gt; Auto Rename is still there for you!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Pb7niGJl--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/512/1%2AM-ZIt-vPHKZBz8xlQnqWJw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Pb7niGJl--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/512/1%2AM-ZIt-vPHKZBz8xlQnqWJw.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Better Comments
&lt;/h4&gt;

&lt;p&gt;Better Comments can be modified by adding tags and then changing the colours within those tags. In this case tags are a keyword/letter that come after the comment notation for Better Comments to identify. I won’t go into how many tags I’ve got but I like to use backgroun colors to explain the type of comment and then use symbols to represent bullet points, again I’ve styled it to match my panda theme. TO-DO Highlight is another alternative to better comments.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ff9ZjOnC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/674/1%2AbFNpZeOhyzEeWFjy3TZoOQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ff9ZjOnC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/674/1%2AbFNpZeOhyzEeWFjy3TZoOQ.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Code Spell Checker
&lt;/h4&gt;

&lt;p&gt;I admit I specifically went looking for this after I failed a code challenge because I made a spelling error. Without realising it, I had spelt a model differently from how I spelt my controller in Ruby on rails and as a result I couldn’t get my code working. What was worse is I couldn’t actually see it! Code spell checker picks up code spelt in incorrectly and highlights it with a squiggly underline, so it’s great to avoid this type of situation!&lt;/p&gt;

&lt;h4&gt;
  
  
  Prettier
&lt;/h4&gt;

&lt;p&gt;Believe it or not, but even with all these extensions, I still can’t live without a code formatter. I think the best one is by far Prettier. I think of it as a final path to make sure my code is essentially “prettier”. I make sure it automatically formats my code on save and it’s tab width works in correlation as my rainbow-indent add on.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--XjPxVSCn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/1114/1%2ArtiarLGaWt0RPpG83FiDog.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--XjPxVSCn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/1114/1%2ArtiarLGaWt0RPpG83FiDog.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  IntelliSense(s) and Snippet Packs
&lt;/h4&gt;

&lt;p&gt;Not much to these but Intellisense add ons (there are hundreds! ) and Snippet packs (also hundreds!) are also useful tools for that help me avoid making silly mistakes.&lt;/p&gt;

&lt;p&gt;Intellisense works by autocompleting items based on what’s located in your workspace. I use Path IntelliSense which auto-completes file names, npm which auto-completes module names and CSS which auto-completes class names.&lt;/p&gt;

&lt;p&gt;Snippet packs usually work by creating a bunch of shortcuts so that when you’re typing you can make sure you put down the correct syntax. I have some installed for JS, ES6 React, React Native, Redux, ERB, Ruby on Rails(and I’ll be honest I don’t remember half the shortcuts but I hope to overtime)&lt;/p&gt;




&lt;p&gt;Unfortunately for me, I think add-ons have become an addiction at this point and I’m always on the lookout for more. Right now, I’m especially interested in ones that help me monitor my time when it comes to coding. What are some of your favourite VScode extensions?&lt;/p&gt;

</description>
      <category>vscode</category>
      <category>tutorial</category>
    </item>
  </channel>
</rss>
