<?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: Bless Darah Gah</title>
    <description>The latest articles on DEV Community by Bless Darah Gah (@blessdarah).</description>
    <link>https://dev.to/blessdarah</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%2F223873%2F22ab6bb9-ea99-4546-a3d6-1629a5eacdd4.jpg</url>
      <title>DEV Community: Bless Darah Gah</title>
      <link>https://dev.to/blessdarah</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/blessdarah"/>
    <language>en</language>
    <item>
      <title>Thinking Accessibility First!</title>
      <dc:creator>Bless Darah Gah</dc:creator>
      <pubDate>Tue, 10 Mar 2020 05:49:24 +0000</pubDate>
      <link>https://dev.to/blessdarah/thinking-accessibility-first-3ndd</link>
      <guid>https://dev.to/blessdarah/thinking-accessibility-first-3ndd</guid>
      <description>&lt;p&gt;After taking some time to do quite some research about web accessibility, I was smashed right in the face as I came to terms with myself not meeting a tonne of these requirements to make my projects accessible. You probably know the kind of feeling when they tell you &lt;em&gt;you're racist right?&lt;/em&gt; Yeah... that's how I felt. It seemed that I had left out many people from reaching and enjoying the same experience I've been wanting all my users to have. &lt;strong&gt;Fun fact: You too must have done the same or at least felt the same like me&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;In this post, I'm gonna try to echo why it is important to make your web content very accessible by sharing with you some tips (&lt;em&gt;of things you may know or not know were very applicable to web accessibility&lt;/em&gt;). It is often easier to skip the beginning. It is always important to start from there.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is Web Accessibility?
&lt;/h2&gt;

&lt;p&gt;According to &lt;a href="https://en.wikipedia.org/wiki/Web_accessibility"&gt;wikipedia&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Web accessibility is the inclusive practice of ensuring there are no barriers that prevent interaction with, or access to, websites on the World Wide Web by people with physical disabilities, situational disabilities, and socio-economic restrictions on bandwidth and speed.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;In short, if there be one thing you should learn from this post it should be the fact that:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Your websites should as much as possible include all class of users (be it disabled or not).&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Apart from someone being &lt;strong&gt;blind&lt;/strong&gt; or &lt;strong&gt;color blind&lt;/strong&gt; (&lt;em&gt;which is the first thing I always think when the topic is mentioned&lt;/em&gt;), there are other forms of disabilities which may affect a user's experience on the web such as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Neurological&lt;/li&gt;
&lt;li&gt;Physical&lt;/li&gt;
&lt;li&gt;Auditory and more...&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Tips to employ to make your website accessible
&lt;/h2&gt;

&lt;p&gt;Making your site accessible is not that difficult as you may think. The current standards of HTML5 makes it far more easier to achieve almost everything you will basically ever need to without doing lots of extra stuff. Here's what you should always consider:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Your DOM content order matters a lot&lt;/strong&gt;: I can't even stress this more. The way you organize your content on the DOM with your simple markup determines how the accessibility tree will be organized. Screen readers for instance, will only deliver this content in a sequential manner as opposed to users with a lot of visual acuity who have the advantage of scanning through the page within seconds. Having the right markup makes users with disabilities enjoy the same &lt;em&gt;integrity&lt;/em&gt; and flow of content as any other user should. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Do not tamper with tap order&lt;/strong&gt;: This follows from the previous. Your markup says this while your stylesheet says another. This means that, your style sheet should minimize the effect of moving elements around the page. If you're doing so, your markup in a way should express that as well.  Your tab order should be very intuitive as much as your page structure suggest.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Try as much as possible to make use of &lt;strong&gt;Semantic HTML tags&lt;/strong&gt; such as: &lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;header&lt;/li&gt;
&lt;li&gt;footer&lt;/li&gt;
&lt;li&gt;nav&lt;/li&gt;
&lt;li&gt;main&lt;/li&gt;
&lt;li&gt;section&lt;/li&gt;
&lt;li&gt;article and &lt;/li&gt;
&lt;li&gt;aside&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These tags already have built-in support for assistive technologies such as screen readers to know what they may mean.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Always add alt text to images&lt;/strong&gt;: Yeah you got me. Make sure to add descriptive &lt;strong&gt;alt attributes&lt;/strong&gt; to almost all of your images. What I mean here is, not all images will need this attribute for instance, when using an image within a button.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Implement keyboard traps correctly&lt;/strong&gt;: Another point to note is the issue of keyboard traps. Ensure that modals and popup windows do implement keyboard traps. This help assistive technologies to keep track of which element is/was active before/after the popup or modal window.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Label your form fields&lt;/strong&gt;: Labeling your form fields with the &lt;code&gt;label&lt;/code&gt; tag will add more meaning to your forms and will make it much more accessible. Try to make use of any of the following:&lt;br&gt;
&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight html"&gt;&lt;code&gt;   &lt;span class="c"&gt;&amp;lt;!-- User labels with a for to target input id --&amp;gt;&lt;/span&gt;
   &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"form__field"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
       &lt;span class="nt"&gt;&amp;lt;label&lt;/span&gt; &lt;span class="na"&gt;for=&lt;/span&gt;&lt;span class="s"&gt;"username"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Username&lt;span class="nt"&gt;&amp;lt;/label&amp;gt;&lt;/span&gt;
       &lt;span class="nt"&gt;&amp;lt;input&lt;/span&gt; &lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;"text"&lt;/span&gt; &lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;"username"&lt;/span&gt; &lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;"username"&lt;/span&gt; &lt;span class="nt"&gt;/&amp;gt;&lt;/span&gt;
   &lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;

   &lt;span class="c"&gt;&amp;lt;!-- Or simply put input fields within a label tag --&amp;gt;&lt;/span&gt;
   &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"form__field"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
       &lt;span class="nt"&gt;&amp;lt;label&amp;gt;&lt;/span&gt;
        Username &lt;span class="nt"&gt;&amp;lt;br&lt;/span&gt; &lt;span class="nt"&gt;/&amp;gt;&lt;/span&gt;
           &lt;span class="nt"&gt;&amp;lt;input&lt;/span&gt; &lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;"text"&lt;/span&gt; &lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;"username"&lt;/span&gt; &lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;"username"&lt;/span&gt; &lt;span class="nt"&gt;/&amp;gt;&lt;/span&gt;
       &lt;span class="nt"&gt;&amp;lt;/label&amp;gt;&lt;/span&gt;
   &lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;

&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Do not disable focus&lt;/strong&gt;: This is crucial! Never you disable keyboard focus. Only disable the default browser styling and implement something better that works with your style guide or theme.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Use good colors and maintain the right contrast level&lt;/strong&gt;: Most people are color blind which is why you may want to always consider using colors that are friendly to all classes of users. Maintain good contrast with your colors, typography and button states. This will make it very user friendly.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Make your site responsive&lt;/strong&gt;: This one seems to be trivial but still worth mentioning. Take time to make sure your content can scale well on mobile, tablets and desktops. It shows that you have a taste for good things plus, it just makes the user experience better.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;So there we go... I can't even cover everything in this sphere of web accessibility but I think the concepts and tips presented here can make your site a whole lot better than it used to be. If you have been implementing this already then good work. If you haven't, start today and let's make the web better and healthy.&lt;br&gt;
&lt;em&gt;Be sure to drop in the comments what I missed so that we make this content even more engaging . Cheers!&lt;/em&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>ux</category>
      <category>html</category>
    </item>
    <item>
      <title>How will PWAs impact Africa?</title>
      <dc:creator>Bless Darah Gah</dc:creator>
      <pubDate>Tue, 18 Feb 2020 09:12:50 +0000</pubDate>
      <link>https://dev.to/blessdarah/how-will-pwas-impact-africa-3k4i</link>
      <guid>https://dev.to/blessdarah/how-will-pwas-impact-africa-3k4i</guid>
      <description>&lt;p&gt;I have been interested in the topic of progressive web apps for quite a while now, in fact, ever since I got into the Google Africa's Developers scholarship program in partnership with Andela and Pluralsight.  &lt;/p&gt;

&lt;p&gt;I was thrilled by this concept from the very word go! At first, I couldn't get my head around it but diving deeper makes me want to say that, there is a lot one can do with this knowledge.&lt;/p&gt;

&lt;p&gt;One of the most cherished things most communities in Africa would want to have is access to the internet. Access to the internet provides a whole world of opportunities for persons, businesses and organizations. Clearly, the possibilities themselves are endless. My goal is, therefore, to look at how progressive web apps can contribute to bridging the gap in areas or communities that may not have the luxury of enjoying the benefits of high-speed internet connectivity. To see this, we need to understand the new things PWAs bring to the table and how they can change lives:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;PWAs are basically websites but with the added advantage of being able to offer an offline experience or still function in areas of very limited internet connection.&lt;/li&gt;
&lt;li&gt;PWAs provide the same look and feel that native apps do offer. Perhaps they may be limited to only a couple of device features as opposed to native apps but that still can be overlooked as the main goal of PWAs is providing the most important information when there isn't good internet access.&lt;/li&gt;
&lt;li&gt;PWAs may have an &lt;strong&gt;install to home screen&lt;/strong&gt; concept to make it look like the whole app is being installed, but it really doesn't take up any space as most native apps will. This is a good thing because, users will not have to worry about device space or budgeting for an external &lt;strong&gt;SD Card&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Closely following from the above, we can implement push notifications with PWAs. This makes them very reliable.&lt;/li&gt;
&lt;li&gt;Personally, I think to build a website with a &lt;strong&gt;PWA-First Approach&lt;/strong&gt; (my own name entirely) forces developers to think on what is most important to the users under the worst-case scenario. This is also a good thing because not only will a UX Designer think things through to the end, the developers themselves will think not only in the &lt;strong&gt;Mobile-First Approach&lt;/strong&gt; but as well as in the &lt;strong&gt;Offline Case&lt;/strong&gt; approach, leading to a better experience entirely.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I honestly believe that many developers today can take the advantages that PWAs are presenting to them to build a better and richer product, to reach out to a wider scope of users and most importantly,  grow their skill set. Africa needs far more PWAs to help those who do not have the chance to fancifully enjoy the luxury of high-speed internet connection like others around the world. As technology evolves and continues to grow, so will PWAs grow and be even more inclusive with respect to its end users. Cheers!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>pwa</category>
    </item>
    <item>
      <title>My Journey towards MWS certification</title>
      <dc:creator>Bless Darah Gah</dc:creator>
      <pubDate>Thu, 06 Feb 2020 10:37:17 +0000</pubDate>
      <link>https://dev.to/blessdarah/my-journey-towards-mws-certification-2nhe</link>
      <guid>https://dev.to/blessdarah/my-journey-towards-mws-certification-2nhe</guid>
      <description>&lt;p&gt;&lt;em&gt;Disclaimer: As of this article, I am not yet certified. I am only recounting my journey towards this goal. It is my hope to come back and write about my success in this perspective.&lt;/em&gt; &lt;/p&gt;

&lt;p&gt;In almost mid-2019, Google together with Andela and the online learning platform Pluralsight launched Africa's Developers scholarship program's 4th Edition. This is part of Google's goal to swell up the number of developers in Africa, whether &lt;em&gt;Android, Mobile Web or Cloud-based&lt;/em&gt;. Their main goal together with Andela is to create the right set of teams, equipped with the best skills and more effectively, growing a healthy community.&lt;/p&gt;

&lt;p&gt;Within the periods of June moving forward, I had no idea that my journey within this program will be leading me to be amongst the top 1000 devs, especially when I had considered the mammoth population size of 30,000 devs selected at the beginning of the program all across Africa. &lt;/p&gt;

&lt;h3&gt;
  
  
  Just a little bit about my program of choice
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--bDq1g8DZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/qh1zy4h9quxxx89yumpi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--bDq1g8DZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/qh1zy4h9quxxx89yumpi.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
If you are the &lt;strong&gt;self-taught&lt;/strong&gt; type of dev like me, you must know what it feels like to be less confident about yourself and in your abilities. This is what we sometimes cleverly call the impostor syndrome.&lt;/p&gt;

&lt;p&gt;Interestingly, failure can prepare you even better for greater achievements when you receive it with the right mindset. Not being able to go through this same program in 2018 when Google partnered with &lt;strong&gt;Udacity&lt;/strong&gt; made me learn a million things along the way.&lt;/p&gt;

&lt;p&gt;As a matter of fact, that was only the beginning. I firmly promised myself to go through the program if given another chance and fortunately 2019 brought it right to my doorsteps. Who on earth will let go on a second chance? I enrolled in the &lt;strong&gt;Mobile Web Specialist Track&lt;/strong&gt; just as I did the last time. Here are some reasons why:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;I am very passionate about building websites and applications that run on the web.&lt;/li&gt;
&lt;li&gt;Familiarity with content can give you an upper hand. So I decided to explore more and grow my skills as a Javascript developer.&lt;/li&gt;
&lt;li&gt;Last year's program introduced me to a very new concept called &lt;strong&gt;Progressive Web Apps&lt;/strong&gt;. I had never heard this before. This made me even more curious to get to the bottom of this, plus, I thought it was way cooler for me to build a site that worked like a mobile app. In that way, I would not have to kill myself of ever wanting to learn about app development at least.&lt;/li&gt;
&lt;li&gt;Android development is very resource-intensive especially when it comes to installing &lt;em&gt;Android Studio&lt;/em&gt; and again, I didn't just want to hold on to Java(no hard feelings here). My hardware wouldn't be sufficient enough to sustain me as compared to Javascript where all I needed was just a simple text editor and a web browser.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;There are obviously more reasons but I would say it was worth it. I hope to bring you into my world of trial and error, successes and failure, challenges and breakthroughs within the subsequent posts.&lt;br&gt;
In the meantime, my goal is to prepare hard and succeed in this exam scheduled for March 2020. It will definitely be a dream come true. &lt;/p&gt;

</description>
      <category>pwa</category>
      <category>javascript</category>
      <category>webdev</category>
    </item>
    <item>
      <title>How to contribute to Open Source</title>
      <dc:creator>Bless Darah Gah</dc:creator>
      <pubDate>Tue, 26 Nov 2019 04:54:55 +0000</pubDate>
      <link>https://dev.to/blessdarah/how-to-contribute-to-open-source-ia1</link>
      <guid>https://dev.to/blessdarah/how-to-contribute-to-open-source-ia1</guid>
      <description>&lt;h3&gt;
  
  
  I've been having this question all through my mind for a while.
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;How can I really contribute to Opens Source?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;I quite good in javascript and it has even given me a job but I still feel like I 'm lacking in the area of Open Source participation or contribution. Can someone help me out on how to go about this? I really need to see how I can contribute to the vast majority of things that are out there in the world and just get something done!.&lt;br&gt;
Thanks.&lt;/p&gt;

</description>
      <category>opensource</category>
      <category>development</category>
    </item>
  </channel>
</rss>
