Re-examining great design and technology end-of-life support.
This post originally appeared on lucasmcgartland.com
Apple’s announcement to discontinue the original HomePod hardware yesterday was jolting, but not surprising for many HomePod owners. This was a moment expected from the beginning.
Launched in 2018, the original HomePod smart speaker had limitations that only the most loyal Apple fans accept. Apple’s subscription music service, Apple Music, and AirPlay (a closed-source, proprietary P2P streaming protocol), were the only two ways to play audio on HomePod, with no way to connect an aux or Bluetooth input. …
Beats Music, we hardly knew ye. A music streaming service ahead of its time, Beats Music was unceremoniously replaced by Apple Music after Apple acquired Beats in 2014. I’m a huge fan of the design and user experience, and I think it holds up well despite being nearly four years old.
For a talk I recently gave about developing user interfaces with React, I thought it would be fun to use React Native to recreate the Beats Music interface, specifically the “Sentence” feature.
GraphQL is an amazing way to query and manipulate data. You describe your data, ask for what you want, and get predictable results. The problem is, GraphQL only handles serializable data out of the box—there’s no way to upload files directly as part of your mutations.
But what if there were a way to combine the power of GraphQL with the ease of uploading files in a multi-part request? @jaydenseric has come up with a solution: graphql-multipart-request-spec
Note: This guide assumes you’re living in the walled garden of Apple and are using macOS and iOS devices, but the principles are the same for Windows and Linux.
If you’re like my amazing friend Sarah Kassel and hosting your own Facebook Live comedy show — sometimes a single smartphone camera setup for Facebook Live isn’t enough. What if you want to show different camera angles, cut to the audience, or overlay graphics? Using open source software, you can create a studio level experience and increase the production value of your Facebook Live streams.
Imagine this: You’re an engineer at a small startup. You’re in charge of both designing and developing the front-end user interface for your product. And your product relies on being available to everyone on every device as part of its value prop. How are you supposed to build a platform with so many targets?
The Bee App is a digital VIP pass for your favorite brands. It allows brands to deliver stories, host contests, and release exclusive products directly to their top tier fans (think the Nike app for every brand).
Regardless of how a user accessed Bee, our…
If you use GraphQL, you’ve probably heard of Apollo Client. Apollo is fantastic for React projects because it can be incrementally adopted, has a great community, and great documentation. However, with the release of Apollo Client 2.0, there were some breaking changes, including the method of extending the interface to support your own access token/refresh token authentication flows.
A common method of authentication on the web is JSON Web Tokens (JWT). A user logs in using their username and password, and gets an access token and refresh token in response. The client then uses the access token for any requests…
In previous versions of Apollo, a Redux store could be used as the caching layer for Apollo Client. However, this no longer works with Apollo Client 2.0 as Redux support was dropped as to remove the dependency for developers who didn’t want to have to use it. You can read more about that decision here.
To use Redux and Apollo Client 2.0 together, you simply have to wrap your Apollo Provider with a Redux Provider like this:
You can use a Higher Order Component (HOC) to reuse the logic wrapping your component with…
One of my favorite features of my phone is that it automatically measures my steps without me ever having to open an app. Recently though, I’ve been wanting a metric for measuring upper body activity and performance that can be automatically counted like pedometers can for steps. I use a lot of bodyweight exercises in my workouts and realized an automatic counter for push-ups and pull-ups would be extremely helpful for tracking my progress. Thus went the ideation for “Swole”, a pedometer for pushups. …