teleren/devto huggingface dataset:
Myth: Accessibility is for blind people
Tags: a11y, webdev
Published: 2021-09-10 21:37:52

---
title: Myth: Accessibility is for blind people
published: true
description: There are many misconceptions surrounding Web Accessibility, most of the times fueled by lack of knowledge (or interest) in the matter. This article is a collection of some of those accessibility misconceptions or myths.
tags: a11y,webdev
cover_image: https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5hehcxw23j2eoyq2n2ep.jpg
canonical_url: https://alvaromontoro.com/blog/67989/myths-about-web-accessibility#accessibility-is-for-blind-peoplescreen-readers
series: Myths about Web Accessibility
---

<aside><blockquote><small><strong>There is an <a href="https://dev.to/alvaromontoro/myths-about-web-accessibility-237k">all-in-one article including every part from this series</a> (if you want prefer to read it all at once instead of "by installments")</strong></small></blockquote><hr/></aside>

With the most popular assistive technologies being focused on people with visual disabilities, it is _tempting_ to think that accessibility is mainly for blindness.

But there's more to it:

- Deaf or deaf-blind people,
- People using automatic page-turners, adaptive pencil grips, or assistive pointer devices,
- People with vestibular disorders,
- Keyboard users, braille devices users, sip-and-puff device users, to name a few.

The people who require Web Accessibility are not a homogeneous group. Therefore, we cannot apply a one-size-fits-all type of solution and move forward with it.

Take the online controversy that happened not so long ago as an example: a blind person organized a ClubHouse meeting about Web Accessibility. Soon, he got some backlash from the Deaf community as ClubHouse is a notoriously inaccessible platform, and the gathering excluded people with hearing problems.

Is it really possible to talk about accessibility while focusing only on visual disabilities? Without including all people involved? The answer is no.
Myth: Accessible websites are ugly
Tags: a11y, webdev
Published: 2021-09-10 21:36:30

---
title: Myth: Accessible websites are ugly
published: true
description: There are many misconceptions surrounding Web Accessibility, most of the times fueled by lack of knowledge (or interest) in the matter. This article is a collection of some of those accessibility misconceptions or myths.
tags: a11y,webdev
cover_image: https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5hehcxw23j2eoyq2n2ep.jpg
canonical_url: https://alvaromontoro.com/blog/67989/myths-about-web-accessibility#accessible-websites-are-ugly
series: Myths about Web Accessibility
---

<aside><blockquote><small><strong>There is an <a href="https://dev.to/alvaromontoro/myths-about-web-accessibility-237k">all-in-one article including every part from this series</a> (if you want prefer to read it all at once instead of "by installments")</strong></small></blockquote><hr/></aside>


Nothing could be further from the truth. Accessibility doesn't determine if a website is ugly or not. There are beautiful, accessible websites and really ugly non-accessible websites. Accessible websites will be as ugly (or as beautiful) as they are designed to be. Like any other website!

This myth has gone a long way. It has existed since Web Accessibility is a thing (which means, basically since the beginning of the Internet) and it is rooted in a misconception. Before, the idea of accessibility was linked to no styles, no animations, no images, no videos... no nothing. A bland, dull, ugly site. But that doesn't have to be the case.

Some of the accessibility requirements will indeed limit the creativity of designers and developers (e.g., sometimes finding an accessible color palette can be a challenge), but there are many tools online that will help with that. Plus, the different standards have evolved to include many accessibility features.

We need to ditch the idea of building a website and then uglifying it to make it accessible. That's an old-school mentality. Accessible websites can be visually striking, animated, fun, interactive sites from the start. And good designers are doing a great job at infusing inclusiveness and accessibility out of the box.
Myth: Accessibility is difficult
Tags: a11y, webdev
Published: 2021-09-10 21:34:33

---
title: Myth: Accessibility is difficult
published: true
description: There are many misconceptions surrounding Web Accessibility, most of the times fueled by lack of knowledge (or interest) in the matter. This article is a collection of some of those accessibility misconceptions or myths.
tags: a11y,webdev
cover_image: https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5hehcxw23j2eoyq2n2ep.jpg
canonical_url: https://alvaromontoro.com/blog/67989/myths-about-web-accessibility#accessibility-is-difficult
series: Myths about Web Accessibility
---

<aside><blockquote><small><strong>There is an <a href="https://dev.to/alvaromontoro/myths-about-web-accessibility-237k">all-in-one article including every part from this series</a> (if you want prefer to read it all at once instead of "by installments")</strong></small></blockquote><hr/></aside>

We often hear this term when a project is at an advanced stage and not accessible. "Accessibility is difficult!" As if it was a justifiable reason because of all the delays they are experiencing. 

But there's nothing further from the truth. **Accessibility is not difficult.** Do you know what's difficult? Running at an Olympic level. Even more, just running is difficult. A baby needs 12 months to start crawling, walking, and finally running. It's a slow process that requires strengthening the muscles, getting coordination, practice, practice, and more practice.

<figure>
![A young woman and a young man athletes prepare to run in a training hall](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ya5i5avoenellymas9xo.png)
<figcaption>Alt text is difficult? Try running 100m in under 10 seconds (picture: <a href="https://www.pexels.com/photo/young-athletes-preparing-for-running-in-training-hall-3764014/">
Andrea Piacquadio</a>)<br/>&nbsp;</figcaption>
</figure>

On the other hand, a Web Developer can learn *at least* the basics of Web Accessibility within hours, practice within days, and have a good grasp within weeks. Of course, they won't be experts. Still, they would be able to fix and prevent many of the issues highlighted in the [WebAIM Million report](https://webaim.org/projects/million/) and avoid the main accessibility issues that plague the Internet nowadays.

Obviously, there are more things to Web Accessibility than just the basics. Learning and mastering more advanced approaches takes time, but a good enough level is possible within a reasonable time.
Myths about Web Accessibility (Intro)
Tags: a11y, webdev
Published: 2021-09-10 21:32:07

---
title: Myths about Web Accessibility (Intro)
published: true
description: There are many misconceptions surrounding Web Accessibility, most of the times fueled by lack of knowledge (or interest) in the matter. This article is a collection of some of those accessibility misconceptions or myths.
tags: a11y,webdev
cover_image: https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5hehcxw23j2eoyq2n2ep.jpg
canonical_url: https://alvaromontoro.com/blog/67989/myths-about-web-accessibility#intro
series: Myths about Web Accessibility
---

<aside><blockquote><small><strong>There is an <a href="https://dev.to/alvaromontoro/myths-about-web-accessibility-237k">all-in-one article including every part from this series</a> (if you want prefer to read it all at once instead of "by installments")</strong></small></blockquote><hr/></aside>

Web Accessibility is a must in every web development project, yet it seems to remain a mystery for many web developers. Like it's something legendary instead of an essential skill needed for the job.

There are many misconceptions surrounding Web Accessibility, most of the time fueled by a lack of knowledge (or interest) in the matter. This article is a collection of some of those accessibility misconceptions or myths.

Content of the series:

- Accessibility is difficult
- Accessibility is expensive
- Accessible websites are ugly
- Accessibility is for blind people/screen readers
- Accessibility is for people with disabilities
- Automatic tests are enough for accessibility
- Accessibility overlays are enough to ensure Web Accessibility
- HTML is accessible by default
- No ARIA > Bad ARIA
- Prefers reduced motion means no motion

-----

Thank you [Todd Libby](https://twitter.com/toddlibby), [Laurent Denoue](https://twitter.com/ldenoue), [Cristian Diaz](https://twitter.com/ItsCrisDiaz), [InHuOfficial](https://twitter.com/InHuOfficial), and [Maciej Pędzich](https://twitter.com/MaciejPedzich), for all your insights, feedback, and (constructive) criticism when writing the article.

Cover image by [Mike Hindle](https://unsplash.com/photos/YHR1vZ4-asY) on Unsplash.
Looking for advice about the first job after graduating
Tags: career
Published: 2021-09-10 21:27:39

Hello! I hope everybody is keeping safe and healthy. I'm graduating this December and accepted an offer from the company I was working part-time on while I was studying. For the country I am in, they gave a great offer to someone who is about to graduate. The company is a very small startup. The main reason I accepted it was I felt it was a good way to thank them, cuz they gave me an opportunity while I was still at Uni. Also, I read somewhere that it is a good way to grow on a codebase you worked on before. I wanna see the mistakes, the good decisions, essentially learn on the previous work I made while I was working part-time, well I hope I do see them :D

My question is should I have applied at other companies as well before accepting, because I have a good feeling I could've nabbed some offers on the well-known ones in our country (had commercial dev experience while studying, also a bit before studying. Had decent grades, had a non-trivial project from school - well for me it was).

There were a few companies that I felt were really good when they did that presentation thingys students attend.

Am I slowing my career growth? Because at the moment, this small startup is using older tech by web standards. Or is my previous reasoning better (grow on a codebase, give it some time, yada yada). I have a feeling I might not be able to go full on studying new tech to keep up outside of work, or is that a must anyways - essentially at most work places you will be working with old tech?. Seeking advice from experienced people, and thanks in advance for your time :)
GitUI - v0.17.1 emojis and fuzzy find files
Tags: github, terminal, productivity, rust
Published: 2021-09-10 20:46:34

[GitUI](https://github.com/extrawurst/gitui) is a terminal UI for git written in Rust. We aim to simplify common git tasks in a fast, keyboard-only and cross platform way without leaving your beloved CLI.

## Release Highlights

* fuzzy find any file in your repo
* support markdown emojis in commit messages
* [much more](https://github.com/extrawurst/gitui/releases/tag/v0.17.1)

Thanks for your interest and support!❤️
Testing Blade components in Laravel
Published: 2021-09-18 17:50:49

---
title: Testing Blade components in Laravel
published: true
date: 2021-09-10 20:43:09 UTC
tags: 
canonical_url: https://dcblog.dev/testing-blade-components-in-laravel
---

Laravel provides a range of methods to test parts of the framework, one of which is called blade() which allows you to test blade components work as expected.

Let's take a simple blade component:

```

@props([
    'type' => 'submit'
])

<div>
    <button type="{{ $type }}" {{ $attributes->merge(['class' => "btn btn-blue"]) }}>
        {{ $slot }}
    </button>
</div>

```

this creates a button with a type of submit by default which can be changed by using type="button" when calling the component:

```

<button type="button">Submit</button>
```

 Create a test to confirm the button contains Submit text:

```

/ **@test** /
public function button_can_submit(): void
{
    $this->blade('<x-form.button>Submit</x-form.button>')
    ->assertSee('Submit');
}
```

The test passes since the button does contain Submit.

Next test the type can be changed from the default of submit to button:

```

/ **@test** /
public function button_acts_as_a_button(): void
{
    $this->blade('<x-button type="button">Submit</x-button>')
    ->assertSee('type="button"', false);
}
```

In order to test the HTML type="button" the assertSee method needs to stop escaping the markup, this is down by passing false as a second param.

As you can see testing blade components is simple to do, let's do a final test to test the class 'btn btn-blue' exists 

```

/ **@test** /
public function button_has_class(): void
{
    $this->blade('<x-button>Submit</x-button>')
    ->assertSee('btn btn-blue');
}
```
Leap Year Calculator
Tags: python, programming, computerscience, functional
Published: 2021-09-10 20:06:09

```python
# leap_year_calc.py
#   This program calculates whether a year is leap year.
# by: Scott Gordon

def main():
    print("***** Welcome to The Leap Year Calculator *****\n")
    print("Enter a year in the (xxxx) format to check if it is a leap year.")
    year = int(input("Enter the year here: "))

    def check_leap(year):
        if((year % 400 == 0) or (year % 100 != 0) and (year % 4 == 0)):
            return True
        else:
            return False

    print(check_leap(year))


if __name__ == "__main__":
    main()
```
Photo by <a href="https://unsplash.com/@kidcircus?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Kid Circus</a> on <a href="https://unsplash.com/s/photos/leap?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>
Installing Kong's API Gateway with Docker
Published: 2021-09-10 19:57:32

[Kong Gateway](https://konghq.com/kong) is an API layer for managing APIs and microservices. The easiest way to get started running Kong Gateway is to use Docker.

[In this video](https://youtu.be/sJEID1xEZMg), I'll explain how to run Kong Gateway using Docker and Docker Compose.

<a href="https://youtu.be/sJEID1xEZMg
" target="_blank"><img src="https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2pk7203v19has9r4yk0z.jpg" alt="Installing Kong's API Gateway with Docker" width="240" height="180" border="10" /></a>
Frontend Mentor: First Challenge - First Solution
Tags: firstpost
Published: 2021-09-10 19:43:55

Hello dev.to community. I accidentally signed up for dev.to when I was trying sign up for Frontend Mentor. 🤷

This is my first FrontEnd mentor project and I really enjoy their platform. I didn't think I would but I really like crafting the README.md and reflecting on the challenges I faced during the project and how I overcame them.

I am test driving the free version but I think I might spring for the PRO version so I can use the Figma files and get more exact measurements from the comps.

Here is my [solution](https://www.frontendmentor.io/solutions/responsive-accessible-landing-page-using-semantic-html5-and-css3-Xo2uyKAPF): 

If you are on the platform, feel free to give me some feedback! 🙏
The Ultimate CSS Selectors Cheat Sheet for Web Scraping
Published: 2021-09-10 19:12:56

When creating a web scraper we always have a goal in mind. There are specific data points we want to collect in order to accomplish whatever we’re trying to achieve.

Whether it is to analyze trends, create a database of content for marketing purposes, build a repository with real estate listings, etc. The last thing we need is for our scraper to return huge amounts of unnecessary data, adding noise we then need to clean.

In other words, every web scraper needs a parser, and there’s no easier way to build one than using CSS selectors.
https://www.scraperapi.com/blog/css-selectors-cheat-sheet/
Web Applications with Express.js (Beginners)
Tags: javascript, node, express
Published: 2021-09-10 18:58:44

# Introduction

Node.js is a runtime environment used for server-side JavaScript. Express.js is a web framework used for server-side JavaScript. It is built on top of Node.js.

In this course, we will be building a simple CRUD web application using Express.js. CRUD stands for Create, Read, Update, Delete. 

This course is for beginners. No prior knowledge of Node.js or Express.js is required.

In the following section, we will look at some of the prerequisites for this tutorial.

# Prerequisites
The following are required to complete this tutorial:

- [Node.js](https://nodejs.org/en/) installed on your system.
- Sound knowledge of JavaScript and Nodejs.

## Getting Started
You must first create a directory, navigate to it in your shell, and then install Express with npm by running `npm install express —save`.

Make a file called index.js and add the following code to it, which will create an Express server and add one endpoint to it with the app.get method:

```JavaScript
const express = require('express');
const app = express();
app.get('/', (request, response) => {
 response.send('hello World');
});
app.listen(5000, 'localhost');


```
Use the following command in your shell to run your command script:

```JavaScript
node app.js
```
On port.0, your application will accept connections. If the hostname argument to `app.listen` is not specified, the server will accept connections on both the machine's IP address and localhost. If a port value is 0, the operating system will assign a port that is available.

Once your script is up and running, you can run it in a shell to ensure that you get the expected "Hello World" response from the server:

```JavaScript
curl http://localhost:5000
Hello World

```
Get Last Login Info of user in laravel
Tags: beginners, vue, womenintech, codenewbie
Published: 2021-09-10 18:55:08

Hello, in some of the cases we require to track the user's last login activity into our site for that we need to save there login details into our database. Login details can contains last login date/time, location, IP address and more.

So, in this blog we are going to save user's last login and its IP address into our database.

##### Steps to follow -
* Create Migrations
* Register Event/Listener
* Save/Display Last login info

First create a migration files:
```
php artisan make:migration add_last_login_at_column_to_users_table
php artisan make:migration add_last_login_ip_address_column_to_users_table
```
Write the below code in migration file
* for last login field
``$table->timestamp('last_login_at')->nullable();
``

* for last last_login_ip_address field
``$table->timestamp('last_login_ip_address')->after('last_login_at')->nullable();
``

I am  using Laravel default scaffolding which gives us login and registration blade.

Go to the Laravel documentation and search Authentication in that go to Event you will see the Login Event/Listener

```
'Illuminate\Auth\Events\Login' => [
        'App\Listeners\LogSuccessfulLogin',
    ],
```

We are going to create our own Listener, so that when user logged in we will save its login details. Register this Event in EventServiceProvider into ``$listen`` event listener mapping.

```
protected $listen = [
 'Illuminate\Auth\Events\Login' => [
        'App\Listeners\UserLoginAt',
  ],
]
```
After that run this command: It will create Listener file ``UserLoginAt``.

```
php artisan event:generate
```
Open UserLoginAt listener file and in handle method write the below code.

```
use Carbon\Carbon;

public function handle(Login $event)
{
    $event->user->update([
       'last_login_at => Carbon::now(),
       'last_login_ip_address' => request()->getClientIp()
    ]);
}
```

This is the simple code we require to store user login details into our database.

Now we can access this information anywhere into our project, by using below code. I am accessing it in dashboard.blade.php file

```
{{ auth()->user()->last_login_at->diffForHumans() }}
```

Thank you for reading. 😀😀
After upgrading Angular to latest version
Published: 2021-09-10 18:45:20

After upgrading angular cli(2.0) to latest version, it will giving following four different error on ng serve execute command.

./node_modules/@angular-devkit/build-angular/src/webpack/es5-polyfills.js - Error: Module build failed (from ./node_modules/@ngtools/webpack/src/ivy/index.js):
RangeError: Maximum call stack size exceeded
    at MetadataDtsModuleScopeResolver.resolve 


./node_modules/webpack-dev-server/client/index.js?http://0.0.0.0:0&sockPath=/sockjs-node - Error: Module build failed (from ./node_modules/@ngtools/webpack/src/ivy/index.js):
RangeError: Maximum call stack size exceeded


./src/main.ts - Error: Module build failed (from ./node_modules/@ngtools/webpack/src/ivy/index.js):
RangeError: Maximum call stack size exceeded
    at MetadataDtsModuleScopeResolver.resolve

./src/polyfills.ts - Error: Module build failed (from ./node_modules/@ngtools/webpack/src/ivy/index.js):
RangeError: Maximum call stack size exceeded
    at MetadataDtsModuleScopeResolver.resolve
Developer Diaries: Week 8 - Life happens
Tags: javascript, devjournal, typescript, react
Published: 2021-09-10 18:34:58

I'll be honest, I don't have a ton to write about this week, but I'm still trying to keep the weekly habit, so I'll say a few things quickly. 


# Life is distracting (that's okay)

I moved to Baton Rouge about a year and a half ago, and while hurricane season hits Lousiana, it doesn't seem to do too much to Baton Rouge, but Hurricane Ida was an exception. I usually don't worry too much about nearby hurricanes because I'm not on the coast, so there's not much to worry about. But this one turned out to be a pretty serious one and managed to inflict some damage pretty close to us. Thankfully my family and I were okay - didn't even have any power outages, but it's been pretty rough for Baton Rouge (a lot of the city has been without power), and for just about anything 20 minutes south of us has been straight up devastating with damages to homes and roads, traffic lights out, and water in more places than it should be. 

And then Ida had the nerve to keep going up north and devastate New York and New Jersey! Thinking of all the folks who've been impacted by this storm. Definitely has had me pretty distracted this week, and I wasn't even seriously impacted. Thankful for a team that's been very understanding and given me the space and time to check on my home and family/friends and be as available with them as I need to this week.

If you're able, [Gizmodo](https://gizmodo.com/how-to-help-hurricane-ida-victims-right-now-1847581474?utm_source=morning_brew) has compiled a list of places to give to help victims from these storms. _(I donated to Cajun Navy as I kept seeing them come up in a few of my searches.)_

# Testing 

This week I've been cleaning up some PRs I had out and incorporate some testing pieces in them. Sometimes, I'm like "yay testing, that's a great idea." And sometimes, I just get lazy. I'm working on having a better perspective and getting good at understanding what's good enough to move on, because it's easy to feel like you need to boil the whole ocean with testing. I create one test, then think of six more scenarios!

![Leslie Knope and dry erase board - overwhelmed](https://media.giphy.com/media/iF8IaDx2N6vfzS2k52/giphy.gif?cid=ecf05e47b9vrchlvyi3ed0np81wmj9xxnpmjx4jqcdlyh3zc&rid=giphy.gif&ct=g)

At the moment, my goal is to keep it roughly within the scope of the issue I'm solving for, but I'm excited for next sprint which will give me some dedicated issues to set up testing across our front end. It will nice for that to be the "main issue", rather than some extra work I'm having to do on top my initial issue.

# Everything's a sort function

I had a bit of a mind blowing moment this week when I realized a lot of functions are really just fancy "sort" functions that compare info and output something based on the comparison. 

That's all folks. Stay safe, hug your loved ones, and keep learning, even on the hard weeks.