Today I Learnt

Sauce Analytics
Around the time of iOS 14 (Sept 2020), Apple and other companies started to crack down hard on user privacy and data use.
Read More…
Sauce VPN
We’ve talked about sorting out a VPN connection for Sauce Employees for a long time. The main reason is that creating a AWS Security Group set up for individual employee remote IP addresses is a lot of management.
Read More…
Tests Done Right With CircleCi
Tests Are Lame but they don’t have to be Ever since i started working with CircleCi at Sauce it bothered me that we don’t use what it has to offer to the fullest and this is especially so with tests circleCi has this really neat way of showing test results as shown below despite how nice doing this looks it also has another really useful feature it allows you to do splitting and parallelism on jobs this means jobs but specifically, a test can be split across say 4 machines and split up by the time it took to run the tests.
Read More…
Create a local unsigned apk
REQUIRED VERSION > 0.58 If you’re in the early stages of developing a react native app or just want a quick and easy way to share an apk with your QA or a client who has an android phone, you can easily generate a debug apk file which is unsigned.
Read More…
Speeding Up Cypress
By caching and restoring cookies, localStorage, and sessionStorage data using the cy.session() command my Cypress tests now run considerably faster.
Read More…
Karabiner
We spend so much time at our keyboards that it’s important that you feel comfortable when using them. There are certain keys that have always felt uncomfortable to me because I have to stretch my fingers to use them, or I have to put my hand in some weird position to press a combination of keys at once.
Read More…
Live Search Using Liveview
LiveView provides real-time user interaction within an application. Some use cases where LiveView fit excellently in an application are input validation, button click, autocomplete and live search.
Read More…
Filter with grep
Don’t fear the Terminal Learning Unix commands is a really useful for our sanity as developers. It’s often quicker to use terminal than using a GUI.
Read More…
What is tailwind just in time mode?
Tailwind comes with a bunch of variations of utilities out the box for example we can use w-2, h-8, left-0.5, rounded-sm and so on to style an elements dimensions, position and appearance.
Read More…
Ecto Multi
There are times when we need to do multiple operations at once on various database tables. For example, when creating a new entity, such as a user, we might want to also insert a related property in some other table, such as a table that holds the preferences of a user.
Read More…
You Can Leave but You Cant Come Back
The Problem The user is part way through completing a form or wizard and then the accidently click a link or trigger back on their browser… 😞 Their progress is lost and you have a frustrated user on you hands.
Read More…
Elixir Function Guards
Sometimes, we’d like to have function calls depending on certain conditions, such as whether the role of a user is admin or just a mere peasant.
Read More…
File Manipulation in Vscode
Many devs at Sauce are now using VSCode as their code editor of choice, including me (RIP Atom) I’m always looking for ways to keep my hands at the keyboard and not the mouse/trackpad.
Read More…
VSCode Basics
Here are some basic shortcuts you should learn for highly productive source code editing. 🧙 Multiple Selectors If there’s one shortcut to speed up your coding it’s mastering multiple selectors.
Read More…
Optional chaining - ?.
Good old undefined properties We’ve all been caught out by undefined properties in JavaScript. Below is a ridiculous example to really highlight the point.
Read More…