Gnarly Learnings from October
Published: 2021-11-01 12:46:41

##

We love reading, watching, and listening to constantly update our skills and learn new perspectives. Here are some of the exciting pieces we learned from this month.

##[Web Accessibility Guidelines: Modals (Dialog Windows)](http://web-accessibility.carnegiemuseums.org/code/dialogs/)

Accessibility on the Web is important for everyone, but some things, like modal windows, just don't seem like they can be. Well, here is a good rundown of how to make sure your markup changes so all the accessibility-related attributes get set up in a way to highlight the content you want the user to focus on, while also lessening their attention on the content they don't need to care about right in that second.

##[Better StimulusJS](https://www.betterstimulus.com/)

Patterns are hard! StimulusJS does a lot to streamline and simplify the work of implementing strong, consistent patterns using modern JS, but it's still (VERY) possible to write yourself into a corner. This site provides clear, accessible Stimulus patterns with proven utility, and also demonstrates some less-than-ideal approaches. By explaining issues, providing links, and demonstrating best practices, it does a lot to make Stimulus more enjoyable to write.

##[Why We Killed Our End-to-End Test Suite](https://building.nubank.com.br/why-we-killed-our-end-to-end-test-suite/)

We enjoy learning about the challenges larger organizations encounter within their engineering team. In this post, Nubank quantifies their upcoming end-to-end testing challenges and then built out an ambitious solution by using contracts. While this approach isn't practical for every project, it illustrates some pain points they ran into and goes into detail on how they attempted to solve them. Nubank also happens to have a world class engineering team so any solution they propose is likely going to be legit and worth a read!

##[How We Got to LiveView](https://fly.io/blog/how-we-got-to-liveview/)

Even if, and perhaps especially if, you haven't followed the progression of the Phoenix web framework built on top of the Elixir programming language, tracking the evolution of the framework as summarized to date by its creator is an interesting read.

##[7 useful HTML attributes you may not know](https://learnpine.com/blog/7-useful-html-attributes-you-may-not-know)

It's always important to revisit even our most well-worn tools to see if there is more we can do with them. Which of these HTML attributes have you used before, and which are new?

##[Advanced Active Record: Using Subqueries in Rails](https://pganalyze.com/blog/active-record-subqueries-rails)

Even though we may spend more time utilizing ORMs and other abstractions to handle accessing data from our database, it's important to consider how those tools translate what we're asking them to do into SQL and determine if that is doing that in the way we'd expect.

##[Modern Unix](https://github.com/ibraheemdev/modern-unix)

If you're searching to replace a tool that you wish was just a little different or better, or you're just interested in perusing different command-line tools that exist, this README has a great summary.

##[Tips for creating accessible SVGs](https://www.sitepoint.com/tips-accessible-svg/)

Adding graphics to UIs help bring them to life. SVGs are a great way to do this because the graphic will stay sharp if a user needs to view the page zoomed in. This article goes over some accessibility and usability considerations when using SVGs to ensure all users can get the most out of your UI.

##[3 TypeScript Tricks I wish I knew when I learned TypeScript](https://www.cstrnt.dev/blog/three-typescript-tricks)

Here at The Gnar Company, we love TypeScript and the security it provides in our applications. This article details 3 tricks (or treats) that we would have loved to have known when we first started working with TypeScript. `Readonly` was especially interesting because it was new to many of us.

## Contributors

- [Ethan Fertsch](https://github.com/efertsch)
- [Jon Yurek](https://github.com/jyurek)
- [Kevin Murphy](https://github.com/kevin-j-m)
- [Nick Maloney](https://github.com/ngmaloney)
- [Nick Marshall](https://github.com/nialbima)
- [Will Mahoney](https://github.com/WMahoney09)

_Learn more about how The Gnar [builds software](https://www.thegnar.com/software-development)._