You're viewing an email archive of The Hustle newsletter. Join free to receive the 5-minute newsletter keeping 2M+ innovators in the loop.

💬 Captions on, please

View Online

The Hustle

A Pennsylvania pizza spot featured on “The Office” is suing a man who left a generous $3k tip, then demanded it back three months later.

In today’s email:

  • Groceries: Back to the future.
  • Chart: The wild rise of captions.
  • Clearview AI: New tactics for a controversial company.
  • Around the Web: “Star Trek” furniture, decoding dipping sauce, feeling less cranky, and more cool internet finds.

🎧 On the go? Listen to today’s podcast to hear Jacob and Rob discuss Instacart’s big plan for the future of groceries, the wild rise of subtitles, Hilton’s space suites, and more.

The big idea
grocery cart

The future of groceries is… groceries?

Yesterday, Instacart expanded “the future of grocery” to mean a lot more than helping gig workers schlep around milk.

The company announced…

… Connected Stores, a tech suite to seamlessly bridge its operations software with new in-store products like:

  • Caper Cart: a cart with scales, sensors, and a screen so shoppers can order, navigate, and check out from the cart.
  • Carrot Tags: e-ink price tags with QR codes and LEDs for easy spotting.

You can see how some of this works in this clip from a very real looking store.

The company is far from the first to try its hand at smart cart gadgets and clever in-store gizmos, but they do have the full-service platform to create a great experience for both shoppers and retailers.

Where’s this all headed?

But of course, where all mass market tributaries flow — Amazon.

Amazon’s foray into food extends beyond its $13.7B acquisition of Whole Foods and deep into the shopping experience, delivery, and payments.

There’s also Swiftly, which raised $100m yesterday and offers an app building service for brick-and-mortar grocery stores that’s used by 10% of the US market.

Big picture: Instacart and Amazon, who pioneered online shopping in their own ways, are bullish on a future where you still hold your breath walking past the seafood counter.

Share on Facebook Share on Twitter Send as email to a friend View on our website

The FAA rejected a proposal that would cut the number of hours required to become a co-pilot in half. The rejection comes amid a massive pilot shortage that has led airlines to reduce routes.

An inspection of the iPhone 14 found Apple redesigned the internal pieces to make it easier to repair, likely a response to increasing momentum for “right to repair” legislation.

Opendoor, an iBuying pioneer, reportedly lost money on 42% of its resales in August amid the housing market’s slump.

Leak alert: An unauthorized party claiming to be the same 18-year-old who hacked Uber leaked gameplay footage of “Grand Theft Auto 6,” which isn’t expected to be released until 2025.

Tile released Lost and Found labels — scannable QR code stickers that can be placed on anything.

McDonald’s will reopen three locations in Kyiv this week with increased safety protocols. The company closed all 109 Ukrainian locations after Russia’s invasion, and pulled out of Russia entirely.

The US Department of Justice will offer its own arguments in the Apple v. Epic Games appeal. While it won’t take a side, it will present concerns over previous rulings.

Hilton will design astronaut suites for Starlab, a private space station being developed by Voyager Space Holdings and Lockheed Martin.

Bars, donuts, lines: God, we love a great chart. Visualize data deliciously with these free Excel graph generators. Just input the figures for up to five variables.

subtitle usage by generation

Singdhi Sokpo

Why do younger generations love subtitles?

Audio transcription tools have traditionally served two purposes:

  • Subtitles help viewers understand audio that’s spoken in a foreign language.
  • Closed captions help people with hearing loss understand what’s being said on the screen.

Recently, usage of both tools has skyrocketed among younger demographics, and often not for either of the reasons mentioned, per The Wall Street Journal.

The rise of captions…

… like many things, can be traced back to Netflix and TikTok.

  • Netflix has tried to make its captions more entertaining in recent years, leading to a 2x jump in the number of viewers using them since 2017.
  • TikTok creators have embraced captions as a medium for creativity, and a way to increase the accessibility of their videos.

This has helped make “captions on” the default setting for many young users, who claim there’s another big perk of using the tech — watching videos in public without ticking people off.

Share on Facebook Share on Twitter Send as email to a friend View on our website
Bots and Order
security camera

Clearview offers its controversial tech to lawyers

In 2019, a public defender asked controversial facial recognition company Clearview AI to find a witness who could prove his client wasn’t the driver in a fatal crash.

Clearview agreed, and an innocent man was cleared.

Now, Clearview will offer its tech — typically used by law enforcement — to certain public defenders and lawyers in what CEO Hoan Ton-That calls a move to “balance the scales of justice,” per The New York Times.

Clearview’s database…

… comes from billions of faces scraped from across the internet, meaning it could have your biometric data without your consent from photos you didn’t even take or upload.

While Clearview is banned in several countries — including Britain, France, Australia, and Canada — it claims 3.1k+ US agencies use it.

Privacy advocates say that’s bad because:

  • Nonsuspects essentially appear in virtual lineups
  • Facial recognition isn’t alway accurate — especially when identifying people of color — and could result in wrongful accusations or convictions

Does offering it to lawyers change anything?

Some critics told the NYT it feels like a PR stunt that doesn’t address concerns about privacy, accuracy, or transparency.

But others say a public defender still might use whatever tools are available to help their client, concerns aside.

Share on Facebook Share on Twitter Send as email to a friend View on our website

🏳️‍🌈 On this day: In 2011, the US government repealed “Don’t Ask, Don’t Tell,” a law forbidding gay military personnel from disclosing their sexual orientation.

😤 How to: Do you ever feel cranky when you’re supposed to be resting? There’s a reason for that.

🪐 That’s cool: Want to drink your Earl Grey tea like Captain Picard? Try this website devoted to identifying furniture and objects seen in “Star Trek.”

🍟 That’s interesting: What the sauce you dip your french fries in says about you and where you live.

🦎 Aww: And now, slurp!

Instacart meme

“They’re gonna think I’m so lazy.” (Source:

How did you like today’s email?
Today’s email was brought to you by Jacob Cohen, Juliet Bennett Rylah, and Rob Litterst.
Editing by: Jennifer “Captions on” Wang.

Was this email forwarded to you? Sign up here.

Facebook Youtube Instagram Twitter
25 FIRST ST. 2ND FLOOR, CAMBRIDGE, MA 02141, UNITED STATES   +1 888 482 7768
Never want to hear from us again? Break our hearts and unsubscribe.
The Hustle logo

Get the 5-minute roundup you’ll actually read in your inbox​

Business and tech news in 5 minutes or less​


How'd Bezos build a billion dollar empire?

In 1994, Jeff Bezos discovered a shocking stat: Internet usage grew 2,300% per year.

Data shows where markets are headed.

And that’s why we built Trends — to show you up-and-coming market opportunities about to explode. Interested?

[email-submission-form button-text="Join Free" include-trends-opt-in="true" success-url="" default-source="thehustleco" default-medium="home-exit-popup" default-campaign="home-page" form-id="exit-popup-general" optinmonster-conversion="true"]
<script type="text/javascript"> var onloadCallback = function() { grecaptcha.render('verify-your-humanity', { 'sitekey' : '6LdddrcZAAAAALyttpvOqiwQGwq5BNhgDz4tMQGE' }); }; function getCookieValue(a) { var b = document.cookie.match('(^|[^;]+)\\s*' + a + '\\s*=\\s*([^;]+)'); return b ? atob(decodeURIComponent(b.pop())) : ''; } function getCookie(name) { var cookieArr = document.cookie.split(";"); for(var i = 0; i < cookieArr.length; i++) { var cookiePair = cookieArr[i].split("="); if(name == cookiePair[0].trim()) { return decodeURIComponent(cookiePair[1]); } } return null; } function setHiddenFieldValue(wrappingDiv, searchParams, className, utmName, cookieName, defaultValue) { var el = wrappingDiv.getElementsByClassName(className)[0]; var existingVal = el.getAttribute('value'); if (utmName == 'ref') { var newVal = searchParams.get(utmName) || getCookie(cookieName); } else { var newVal = searchParams.get(utmName) || getCookieValue(cookieName); } if ((existingVal == null || existingVal == '' || existingVal == defaultValue) && (newVal != null && newVal != '')) { el.setAttribute('value', newVal); } } function setHiddenFieldValueFromUtm( wrappingDiv, searchParams, className, utmName, defaultValue ) { var el = wrappingDiv.getElementsByClassName(className)[0]; if (el != null) { var existingVal = el.getAttribute("value"); var newVal = searchParams.get(utmName); if (newVal != null && newVal != "") { el.setAttribute("value", newVal); } } } function initForm() { var wrappingDivs = document.getElementsByClassName('email-submission');,wrappingDiv => { var sp = new URLSearchParams(; setHiddenFieldValue(wrappingDiv, sp, 'funnel-source', 'utm_source', 'funnel_source', 'thehustleco'); setHiddenFieldValue(wrappingDiv, sp, 'funnel-campaign', 'utm_campaign', 'funnel_campaign', 'home-page'); setHiddenFieldValue(wrappingDiv, sp, 'funnel-medium', 'utm_medium', 'funnel_medium', 'home-exit-popup'); setHiddenFieldValue(wrappingDiv, sp, 'funnel-referral', 'ref', 'funnel_referral', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-a', 'a', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-c', 'c', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-o', 'o', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-oc', 'oc', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-e', 'e', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-f', 'f', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-r', 'r', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-t', 't', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-s1', 's1', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-s2', 's2', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-s3', 's3', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-s4', 's4', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-s5', 's5', ''); var error_message = getCookieValue('validate-email-message'); if (error_message && error_message.trim() != '') { var error = wrappingDiv.getElementsByClassName('funnel-error')[0]; var prev_email = getCookieValue('funnel_email'); error_message = prev_email + " is not valid. Please try again"; error.innerHTML = error_message; = ''; } }); if (false) { initCaptchaFormV2(); } } function initCaptchaFormV2() { var v3RecaptchaResponseEl = document.getElementById('recaptcha-response-v3'); v3RecaptchaResponseEl.parentNode.removeChild(v3RecaptchaResponseEl); var wrappingDiv = document.getElementById('email-submission'); var subForm = wrappingDiv.getElementsByClassName('email-submission')[0]; var captchaVersion = document.createElement('input'); captchaVersion.class = 'g-recaptcha hidden-input'; captchaVersion.type = 'hidden'; = 'g-recaptcha-response-v2'; captchaVersion.value = 'true'; subForm.appendChild(captchaVersion); var captchaEl = document.createElement('div'); = 'verify-your-humanity'; subForm.prepend(captchaEl); var captchaApiScriptEl = document.createElement('script'); captchaApiScriptEl.src = ''; captchaApiScriptEl.async = true; captchaApiScriptEl.defer = true; document.head.appendChild(captchaApiScriptEl); } window.addEventListener('DOMContentLoaded', (event) => { initForm(); }); if(typeof hp_interval == 'undefined') { var hp_interval = 0; var hp_ts = 0; var hp_try = 0; jQuery(document).ready(function ($) { hp_interval = setInterval(function(){ $('input.hp_ts').val(hp_ts); hp_ts += 1; if(hp_ts >= 180) { clearInterval(hp_interval); } },1000); $('.email-submission:not(.prevent-default)').submit(function (e) { var form = $(this); if(hp_ts < 3 && hp_try < 1) { e.preventDefault(); if (form.find('.email-form-submit-message').length < 1) { form.find('.email-form-wrap').after('<p class="email-form-submit-message" style="padding: 0em 1.5em;">Too fast! Are you a human? Try again please.</p>'); } hp_try += 1; hp_ts = 0; $('input.hp_try').val(hp_try); } }); }); } </script> <div class="email-signup" id=email-submission> <div class="funnel-error" style="display:none;"></div> <form class="email-submission " id="exit-popup-general" action="" method="post" autocomplete="email"> <div class="email-form-wrap"> <input class="funnel-source hidden-input" type="hidden" name="source" value="thehustleco"> <input class="funnel-campaign hidden-input" type="hidden" name="campaign" value="home-page"> <input class="funnel-medium hidden-input" type="hidden" name="medium" value="home-exit-popup"> <input class="funnel-form-id hidden-input" type="hidden" name="form-id" value="exit-popup-general"> <input class="funnel-referral hidden-input" type="hidden" name="referral_code"> <input class="funnel-fail-url hidden-input" type="hidden" name="fail_url" value=""> <input class="funnel-ip-country-wordpress hidden-input" type="hidden" name="ip_country_wordpress" value="DE"> <input class="funnel-submission-url hidden-input" type="hidden" name="submission_url" value="đź’¬-captions-on-please/"> <input class="funnel-a hidden-input" type="hidden" name="a" value=""> <input class="funnel-c hidden-input" type="hidden" name="c" value=""> <input class="funnel-o hidden-input" type="hidden" name="o" value=""> <input class="funnel-oc hidden-input" type="hidden" name="oc" value=""> <input class="funnel-e hidden-input" type="hidden" name="e" value=""> <input class="funnel-f hidden-input" type="hidden" name="f" value=""> <input class="funnel-r hidden-input" type="hidden" name="r" value=""> <input class="funnel-t hidden-input" type="hidden" name="t" value=""> <input class="funnel-s1 hidden-input" type="hidden" name="s1" value=""> <input class="funnel-s2 hidden-input" type="hidden" name="s2" value=""> <input class="funnel-s3 hidden-input" type="hidden" name="s3" value=""> <input class="funnel-s4 hidden-input" type="hidden" name="s4" value=""> <input class="funnel-s5 hidden-input" type="hidden" name="s5" value=""> <input class="funnel-success-url hidden-input" type="hidden" name="success_url" value=""> <input id="recaptcha-response-v3" class="g-recaptcha hidden-input" type="hidden" name="g-recaptcha-response" value=""> <div class="signup-icon" style="display:none;"> <svg width="24" viewBox="0 0 24 24" fill="none" xmlns=""><path d="M22 6c0-1.1-.9-2-2-2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6Zm-2 0-8 5-8-5h16Zm0 12H4V8l8 5 8-5v10Z" fill="#848B92"></path></svg> </div> <input type="hidden" name="hp_ts" class="hp_ts" value="0"> <input type="hidden" name="hp_try" class="hp_try" value="0"> <input type="text" name="first_name" placeholder="Enter your name" value=""> <input class="signup-email" type="email" name="email" placeholder="Your email address" required autocomplete="email"> <input class="email-submit om-trigger-conversion" type="submit" value="Join Free"> </div> <div class="validate-mistake-emails-message" style="display:none;"></div> <div class="form-options" style="display:none"> <div class="form-options-wrap"> <div class="trends-opt-in"> <input id="trends_opt_in_email_submission" class="trends-opt-in-checkbox" type="checkbox" name="trends_opt_in"> <label for="trends_opt_in_email_submission" id="trends_opt_in_label" class="trends-opt-in-text">Yes, I’d like to receive additional marketing emails on hot business opportunities from Trends, by the Hustle.</label> </div> <div class="privacy-text"> <p>We're committed to your privacy. The Hustle uses the information you provide to contact you about our relevant content and services. You may unsubscribe from these communications at any time. For more information, check out our <a href="">Privacy Policy</a>.</p> </div> </div> </div> <div submit-success> <template type="amp-mustache"> <p class="c-message c-message--success">Thank you for subscribing.</p> </template> </div> <div submit-error> <template type="amp-mustache"> <p class="c-message c-message--failed">Your submission failed. Please try again!</p> </template> </div> </form> </div>