Image for post
Image for post
Photo by Rodion Kutsaev on Unsplash

Don’t live in a simulation

I know, I know… your web app looks ✨ pixel perfect ✨ when you test mobile responsiveness with the device simulator in Chrome DevTools (which — don’t get me wrong — is awesome), but even Google’s docs call Device Mode an “approximation” of how your app will render on a phone or tablet. And trust me… (if you only take away one thing from this article, please let it be this) there will be inconsistencies between your web app running on your development machine and other machines. This is why we do cross-browser testing — because (we hope) the same…


CODEX

Image for post
Image for post
Photo by Federico Beccari on Unsplash

Good APIs are hard to come by. Here are 3 developer-friendly APIs that are all accessible from the client-side of your applications. Each of these APIs are easy enough for API newbies to get started with and extensible enough to keep the most advanced developers occupied. I hope you can use all of them to build some sweet apps or just to have some fun with.

1. Spotify

https://developer.spotify.com/

The Spotify API is the clear winner of the “Most Fun API to Use Where Did My Time Just Go” award. It’s awesome. First of all, music is just a fun topic…


Image for post
Image for post
Photo by WonHo Sung on Unsplash

Recursion is a tricky concept that some JS developers will just avoid if they can (and they likely can) — but it can be a super useful pattern, especially when writing performant utility functions. It’s a subject that’s often introduced to developers like they’re suppose to just “get it”… which is likely why some developers just stare blankly at it for a few minutes and move on. Let’s remove the mystery and chat about writing recursive functions in JavaScript. …


Image for post
Image for post
Photo by Fran . on Unsplash

After building and shipping a component library at my company, I gained a new appreciation for all the amazing open-source component libraries available to us in the React ecosystem. It takes a lot of work and a lot of good, intentional decisions to create a cohesive and functional component library. Whether you use one out-of-box, extend one, or roll your own, please use a component library for your project. Your users will thank you. 🙃

I have used, explored, and evaluated dozens of component libraries on the following criteria:

  1. Quality & scope of components
  2. Accessibility
  3. Open-sourced-ness
  4. Documentation
  5. Extensibility
  6. React-ness

These…


Image for post
Image for post
Photo by Yancy Min on Unsplash

It’s your worst nightmare. Getting a little too confident, running a few git commands in quick succession, and suddenly… your meticulously coded contributions are gone. For most developers, using Git to add changes is second nature. Make a change, stage, commit, push, sip coffee, done. However, for some developers, using Git to remove changes brings paralyzing terror. It shouldn’t. Git reset allows us to unstage, uncommit, and, if we need to, discard changes forever. Here are five ways to git reset.

1. Unstage Changes

git reset

If you’ve staged changes (git add) that have not been committed to your local branch and you…


Image for post
Image for post
Photo by Matthew Kane on Unsplash

While developing a chat feature in a React Native app, I was attempting to create a TextInput component that would clear automatically after a submit button was pressed. It appears some methods included with React Native are not functioning correctly in certain environments when it comes to this task. Since I could not find an appropriate solution elsewhere, I figured I’d share my work-around for this problem.

For the tl;dr crowd, here’s the solution:

submitAndClear = () => {
this.props.writeText(this.state.text)
this.setState({
text: ''
})
}

Getting Started

Let’s start by setting up a simple app that allows a user to enter text that gets displayed in the app.

We’ll…

Joseph Emswiler

Software Engineer

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store