
The WET Codebase
Come waste your time with me.
The best problem-solving writing in software engineering — databases, performance, security, frontend and distributed systems, in one feed.

Come waste your time with me.

On July 20, 2020 we held ShipIt! Presents: AR/VR at Shopify. Daniel talked about what we’re doing with AR/VR at Shopify. The video of the event is available. Size.link is a free tool built by Shopify’s Augmented Reality (AR) team that lets anyone view the size of a product in the space around them using their smartphone camera. The tool came out of our April Hack Days focused on helping retailers

In this article, Rachel Andrew takes a look at a new effort to crowdfund the costs of implementing browser features. She encourage developers to use, talk about, and raise implementation bugs with browsers to try to get features implemented, however, what if there was a more direct way to do so? What if web developers could get together and fund the development of these features? This article is b

There is a high possibility that a lot of components in your React application will have to make calls to an API to retrieve data that will be displayed to your users. It’s already possible to do that using the `componentDidMount()` lifecycle method, but with the introduction of Hooks, you can build a custom hook which will fetch and cache the data for you. That’s what Ademola Adegbuyi will cover

scanimage: scan from the command line!

Scott Jehl argues that performance metrics such as First Contentful Paint and Largest Contentful Paint don’t really capture the full picture of everyone’s

Sales and Support leaders share advice and strategies to help you navigate a remote-first customer approach.

The GitHub community is capable of incredible things! GitHub Actions is just one of the amazing tools made available for developers. Actions is here to help you automate your workflows,…

Twitter summary from 2020 so far

Matching records is one of the most basic data analysis operations. There are many cases where data needs to be aligned across some common value — whether that’s joining between two different tables in a database or across two data sets stored in a file, or matching data sets between two separate entities. For example, […]

We shipped the first copies of *[Click! How to Encourage Clicks Without Shady Tricks](https://www.smashingmagazine.com/printed-books/click/)* in June, with a little extra something for preorder customers. The book is one of our most creative — beautifully designed and filled with great strategies for increasing conversion without falling into the dead-end routine of dark patterns. It’s a well-time

Transitions are a nice way to remove, change, or update data in an application because their occurrence adds a nice effect and is good for the user experience. In this tutorial, Timi Omoyeni will look at the different ways to apply transitions in both Vue.js and Nuxt.js applications. Using these transitions in your applications and websites create a better visual experience and sometimes draws and

On June 20, Cloudflare automatically mitigated a highly volumetric DDoS attack that peaked above 754 million packets per second. The attack was part of an organized four day campaign starting on June 18 and ending on June 21.

Hakim El Hattab tweeted a really nice little UX enhancement for a static site that includes a scrollable sidebar of navigation.

Some developers just prefer working in React. I don't blame them really, because I like React too. Maybe that's what they learned first. I've been using it

Securing the open source supply chain is critically important for developer communities and the entire software ecosystem. In recent years, the industry has seen an uptick in the adoption of…

Shopify recently launched the ability to add videos and 3d models to products as a native feature within the Admin section. Learn how we used pipelines to manage the long-term maintenance and understandability of the code.

There was a time when marketers used things like urgency, scarcity and FOMO to drive online shoppers to a sale. But scare tactics can actually hurt a brand’s relationships with customers. By their very nature, we run into similar problems with shipping and inventory alerts. That said, there are ways that web designers can keep panic and frustration from seeping into the shopper’s experience. If yo

How to use Static Generation, Incremental Static Generation, and Client-side Fetching with Next.js.

In this post we will review Linux seccomp and learn how to sandbox any (even a proprietary) application without writing a single line of code.

Julia Evans:

I’ve been doing a bit of refactoring this week at Sentry and I noticed that we didn’t have a generic List component that we could use across projects and

What is the Availability Report? Historically, GitHub has published post-incident reviews for major incidents that impact service availability. Whether we’re sharing new investments to infrastructure or detailing site downtimes, our…

Who's Hiring? * InterviewCamp.io has hours of system design content. They also do live system design discussions every week. They break down interview prep into fundamental building blocks. Try out their platform. * Triplebyte lets exceptional software engineers skip screening steps at hundreds of top tech companies like Apple, Dropbox, Mixpanel, and Instacart. Make your job search O(1), not O(n).