Blog

Man makes money buying his own pizza on DoorDash app

This is a repost promoting content originally published elsewhere. See more things Dan's reposted.

The owner of a pizza restaurant in the US has discovered the DoorDash delivery app has been selling his food cheaper than he does – while still paying him full price for orders.

A pizza for which he charged $24 (£20) was being advertised for $16 on DoorDash – and when he secretly ordered it himself, the app paid his restaurant the full $24 while charging him $16.

He had not asked to be put on the app.

This entire news story is comedy gold.

So it looks like food delivery network DoorDash try to demonstrate demand for their services by providing them even if you didn’t ask, then show you how popular they were. So if you run a pizza restaurant, they might start selling your pizzas as “deliveries” to customers, then come and pick them up as “collections” and deliver them. Because they’re trying to drum up support and show how invaluable they would be to you, they might even resell your product at a loss in order to get customers on-board early. It’s all pretty slimy, but I’m sure that wherever they’re operating (New York, in this case) they’ve had the common sense to make all the legal language line up.

(If you can’t see the problem with this model, remember that the customers will be reasonably assuming that the restaurant is involved, so when their pizza turns up cold they’ll phone the restaurant and complain and ask for their money back [or slate them in reviews online]. Plus, let’s not forget that this is a strongarm tactic: once a restaurant has been seen to be offering delivery, customers will be upset if you take the option away… even if you never actually offered it in the first place.)

Anyway: this guy noticed that his restaurant was on DoorDash without his consent, and that they were selling his pizzas for less than he did. So he ordered them from himself: he paid DoorDash $160 for the pizzas, DoorDash paid him $240 for the pizzas, DoorDash sent somebody around to pick them up from him and deliver them to his neighbour. Free money.

Pizza made of money

Next time he did it, the restaurateur didn’t even bother to put toppings on the pizzas. After all, he didn’t need to be eating them anyway! He was just paying DoorDash to pay him (more) to move them from place to place. The restaurateur and his friend pulled off several off these trades and DoorDash never seemed to catch on. With some investigation, they discovered that it was probably an imperfect scraper that had resulted in the price DoorDash advertised being lower than the price they would pay the pizzeria, which immediately makes me wonder whether you could honeypot it with deliberate scraper-traps… (Owing to various bits of work I’ve done in the past, I’m pretty well-versed in offensive and defensive screen scraper techniques.)

And to finish the news article off, we’re reminded about the attitude of Mosayoshi Son, the CEO of DoorDash’s parent company (which incidentally also tried to buy, and then got sued by, WeWork, demonstrating his financially-savvy). Recently, defending his company’s general trend to attract venture capital and then lose it very quickly, he compared himself first to Jesus, who was also a “high-profile visionary who was initially misunderstood”, and then to the Beatles, who “did not become a success overnight”.

Comedy gold I tell you. And now I want pizza. (Especially if I can persuade a stupid startup to pay me to make and then eat it myself.)

Scunthorpe Sans

This is a repost promoting content originally published elsewhere. See more things Dan's reposted.

 A s*** font that f***ing censors bad language automatically.

This is pretty beautiful, in a sick-and-wrong way. It’s a font which contains ligatures that can be automatically used by supported software. But instead of ligatures for things like æ and œ, this font replaces the letters of common swear words with a glyph that looks like a censor bar. So it’s an automatically-self-censoring font.

Better yet, the authors were aware of the Scunthorpe problem and attempted to mitigate it; this also provides the font’s name. Unfortunately it’s not possible to do so perfectly without adding ligatures for just about every dictionary word individually (now that would be a font) so words like shitake and cockerel still get censored. And even where the mitigation works, it produces other problems: e.g. the use of the ligature Scunthorpe means that the word cannot be broken e.g. hyphenated across two lines. Nor will letter counters work properly.

But I don’t think anybody’s suggesting that this font should actually see mainstream use. Right?

Why $FAMOUS_COMPANY switched to $HYPED_TECHNOLOGY

This is a repost promoting content originally published elsewhere. See more things Dan's reposted.

As we’ve mentioned in previous blog posts, the $FAMOUS_COMPANY backend has historically been developed in $UNREMARKABLE_LANGUAGE and architected on top of $PRACTICAL_OPEN_SOURCE_FRAMEWORK. To suit our unique needs, we designed and open-sourced $AN_ENGINEER_TOOK_A_MYTHOLOGY_CLASS, a highly-available, just-in-time compiler for $UNREMARKABLE_LANGUAGE.

Saagar Jha tells the now-familiar story of how a bunch of techbros solved their scaling problems by reinventing the wheel. And then, when that didn’t work out, moved the goalposts of success. It’s a story as old as time; or at least as old as the modern Web.

(Should’a strangled the code. Or better yet, just refactored what they had.)

Lucky Devil Eats

This is a repost promoting content originally published elsewhere. See more things Dan's reposted.

Lucky Devil Eats

The lockdown’s having an obvious huge impact on strippers, whose work is typically in-person, up close, and classed as non-essential. And their work isn’t eligible for US programmes to support furloughed workers. So Lucky Devil Lounge in Portland decided to adapt their services into one that is classed as essential by providing a drive-through food service. With strippers.

This is Erika Moen’s comic about the experience of visiting the drive-through. Her comics are awesome and I’ve shared them with you a few times before (I even paid for the product she recommended in the last of those), of course.

Dan Q found GC4PV7E BFG #3– The Black Hairstreak

This checkin to GC4PV7E BFG #3– The Black Hairstreak reflects a geocaching.com log entry. See more of Dan's cache logs.

I first came to this series in 2014 – seems like a lifetime ago! – but got called away by something (a problem with the beta of Three Rings‘ Milestone: Promethium) before I could find more than the first one. Today, under our recently reduced lockdown and in an effort to save the kids from crawling to the walls, we came out for a walk along this side of the woods and quickly found this cache. TFTC!

Note #17103

Chafed nipples. But we only have Frozen II-themed plasters in the house. So now I’m wearing an Elsa & Anna pasties. How did my life come to this?

×

Automattic Lockdown (days 79 to 206)

Since I accepted a job offer with Automattic last summer I’ve been writing about my experience on a nice, round 128-day schedule. My first post described my application and recruitment process; my second post covered my induction, my initial two weeks working alongside the Happiness team (tech support), and my first month in my role. This is the third post, running through to the end of six and a half months as an Automattician.

Always Be Deploying

One of the things that’s quite striking about working on many of Automattic’s products, compared to places I’ve worked before, is the velocity. Their continuous integration game is pretty spectacular. We’re not talking “move fast and break things” iteration speeds (thank heavens), but we’re still talking fast.

Graph showing Automattic deployments for a typical week. Two of the 144 deployments on Monday were by Dan.
Deployments-per-day in a reasonably typical week. A minor bug slipped through in the first of the deployments I pushed on the Monday shown, so it was swiftly followed by a second deployment (no external end-users were affected: phew!).

My team tackles a constant stream of improvements in two-week sprints, with every third sprint being a cool-down period to focus on refactoring, technical debt, quick wins, and the like. Periodic HACK weeks – where HACK is (since 2018) a backronym for Helpful Acts in Customer Kindness – facilitate focussed efforts on improving our ecosystem and user experiences.

I’m working in a larger immediate team than I had for most of my pre-Automattic career. I’m working alongside nine other developers, typically in groups of two to four depending on the needs of whatever project I’m on. There’s a great deal of individual autonomy: we’re all part of a greater whole and we’re all pushing in the same direction, but outside of the requirements of the strategic goals of our division, the team’s tactical operations are very-much devolved and consensus-driven. We work out as a team how to solve the gnarly (and fun!) problems, how to make best use of our skills, how to share our knowledge, and how to schedule our priorities.

Dan in front of three monitors and a laptop.
My usual workspace looks pretty much exactly like you’re thinking that it does.

This team-level experience echoes the experience of being an individual at Automattic, too. The level of individual responsibility and autonomy we enjoy is similar to that I’ve seen only after accruing a couple of years of experience and authority at most other places I’ve worked. It’s amazing to see that you can give a large group of people so much self-controlled direction… and somehow get order out of the chaos. More than elsewhere, management is more to do with shepherding people into moving in the same direction than it is about dictating how the ultimate strategic goals might be achieved.

Na na na na na na na na VAT MAN!

Somewhere along the way, I somehow became my team’s live-in expert on tax. You know how it is: you solve a bug with VAT calculation in Europe… then you help roll out changes to support registration with the GST in Australia… and then one day you find yourself reading Mexican digital services tax legislation and you can’t remember where the transition was from being a general full-stack developer to having a specialisation in tax.

An Oxford coworking space.
Before the coronavirus lockdown, though, I’d sometimes find a coworking space (or cafe, or pub!) to chill in while I worked. This one was quiet on the day I took the photo.

Tax isn’t a major part of my work. But it’s definitely reached a point at which I’m a go-to figure. A week or so ago when somebody had a question about the application of sales taxes to purchases on the WooCommerce.com extensions store, their first thought was “I’ll ask Dan!” There’s something I wouldn’t have anticipated, six month ago.

Automattic’s culture lends itself to this kind of selective micro-specialisation. The company actively encourages staff to keep learning new things but mostly without providing a specific direction, and this – along with their tendency to attract folks who, like me, could foster an interest in almost any new topic so long as they’re learning something – means that my colleagues and I always seem to be developing some new skill or other.

Batman, with his costume's logo adapted to be "VAT man".
I ended up posting this picture to my team’s internal workspace, this week, as I looked a VAT-related calculation.

I know off the top of my head who I’d talk to about if I had a question about headless browser automation, or database index performance, or email marketing impact assessment, or queer representation, or getting the best airline fares, or whatever else. And if I didn’t, I could probably find them. None of their job descriptions mention that aspect of their work. They’re just the kind of people who, when they see a problem, try to deepen their understanding of it as a whole rather than just solving it for today.

A lack of pigeonholing, coupled with the kind of information management that comes out of being an entirely-distributed company, means that the specialisation of individuals becomes a Search-Don’t-Sort problem. You don’t necessarily find an internal specialist by their job title: you’re more-likely to find them by looking for previous work on particular topics. That feels pretty dynamic and exciting… although it does necessarily lead to occasional moments of temporary panic when you discover that something important (but short of mission-critical) doesn’t actually have anybody directly responsible for it.

Crisis response

No examination of somebody’s first 6+ months at a new company, covering Spring 2020, would be complete without mention of that company’s response to the coronavirus crisis. Because, let’s face it, that’s what everybody’s talking about everywhere right now.

Dan in a video meeting, in a hammock.
All workplace meetings should be done this way.

In many ways, Automattic is better-placed than most companies to weather the situation. What, we have to work from home now? Hold my beer. Got to shift your hours around childcare and other obligations? Sit down, let us show you how it’s done. Need time off for COVID-related reasons? We already have an open leave policy in place and it’s great, thanks.

As the UK’s lockdown (eventually) took hold I found myself treated within my social circle like some kind of expert on remote working. My inboxes filled up with queries from friends… How do I measure  output? How do I run a productive meeting? How do I maintain morale? I tried to help, but unfortunately some of my answers relied slightly on already having a distributed culture: having the information and resource management and teleworking infrastructure in-place before the crisis. Still, I’m optimistic that companies will come out of the other side of this situation with a better idea about how to plan for and execute remote working strategies.

Laptop screen showing five people videoconferencing.
Social distancing is much easier when you’re almost never in the same room as your colleagues anyway.

I’ve been quite impressed that even though Automattic’s all sorted for how work carries on through this crisis, we’ve gone a step further and tried to organise (remote) events for people who might be feeling more-isolated as a result of the various lockdowns around the world. I’ve seen mention of wine tasting events, toddler groups, guided meditation sessions, yoga clubs, and even a virtual dog park (?), all of which try to leverage the company’s existing distributed infrastructure to support employees who’re affected by the pandemic. That’s pretty cute.

(It might also have provided some inspiration for the murder mystery party I plan to run a week on Saturday…)

Distributed Work's Five Levels of Autonomy, by Matt Mullenweg.
Matt shared this diagram last month, and its strata seem increasingly visible as many companies adapt (with varying levels of success) to remote work.

In summary: Automattic’s still proving to be an adventure, I’m still loving their quirky and chaotic culture and the opportunity to learn something new every week, and while their response to the coronavirus crisis has been as solid as you’d expect from a fully-distributed company I’ve also been impressed by the company’s efforts to support staff (in a huge diversity of situations across many different countries) through it.

× × × × × × ×

Note #17091

I think our local red kites were mostly living on roadkill, and the lockdown means they’re not getting fed. They’ve also forgotten how to hunt: this afternoon I watched one get its ass handed to it by a medium-sized crow.

Thursday

This is a repost promoting content originally published elsewhere. See more things Dan's reposted.

Today is Thursday. YOU MUST NOT GO OUTSIDE!

  1. Ordnance Survey, the national mapping agency for Great Britain, is set to publish revised maps for the whole of the British isles in the wake of social distancing measures. The new 1:50,000 scale maps are simply a revision of the older 1:25,000 scale map but all geographical features have been moved further apart.

Gareth’s providing a daily briefing including all the important things that the government wants you to know about the coronavirus crisis… and a few things that they didn’t think to tell you, but perhaps they should’ve. Significantly more light-hearted than wherever you’re getting your news from right now.

The next time we want to import a horse to Russia it will be a doddle

This is a repost promoting content originally published elsewhere. See more things Dan's reposted.

This is the best diplomatic report I’ve read in a long time. A real gem. Recounts the story of the horses gifted by Saparmurat Niyazov (Turkmenbashi) to the British government. A fantastic snapshot of life in the FSU in the early 1990s. Posting the whole thing – enjoy the read.

Telegram page 1.Telegram page 2Telegram page 3Telegram page 4

Also worth seeing: (then Prime Minister) John Major’s official response.

×

Visitors, Developers, or Machines

This is a repost promoting content originally published elsewhere. See more things Dan's reposted.

The performance tradeoff isn’t about where the bottleneck is. It’s about who has to carry the burden. It’s one thing for a developer to push the burden onto a server they control. It’s another thing entirely to expect visitors to carry that load when connectivity and device performance isn’t a constant.

This is another great take on the kind of thing I was talking about the other day: some developers who favour heavy frameworks (e.g. React) argue for the performance benefits, both in development velocity and TTFB. But TTFB alone is not a valid metric of a user’s perception of an application’s performance: if you’re sending a fast payload that then requires extensive execution and/or additional calls to the server-side, it stands to reason that you’re not solving a performance bottleneck, you’re just moving it.

I, for one, generally disfavour solutions that move a Web application’s bottleneck to the user’s device (unless there are other compelling reasons that it should be there, for example as part of an Offline First implementation, and even then it should be done with care). Moving the burden of the bottleneck to the user’s device disadvantages those on slower or older devices and limits your ability to scale performance improvements through carefully-engineered precaching e.g. static compilation. It also produces a tendency towards a thick-client solution, which is sometimes exactly what you need but more-often just means a larger initial payload and more power consumption on the (probably mobile) user’s device.

Next time you improve performance, ask yourself where the time saved has gone. Some performance gains are genuine; others are just moving the problem around.

The Board Game Remix Kit

This is a repost promoting content originally published elsewhere. See more things Dan's reposted.

New rules for old games! The Board Game Remix Kit is a collection of tips, tweaks, reimaginings and completely new games that you can play with the board and pieces from games you might already own: MonopolyCluedo, Scrabble and Trivial Pursuit.

The 26 rule tweaks and new games include:

  • Full Houses: poker, but played with Monopoly properties
  • Citygrid: a single-player city-building game
  • Use Your WordsScrabble with storytelling
  • Them’s Fightin’ Words: a game of making anagrams, and arguing about which one would win in a fight
  • Hunt the Lead Piping: hiding and searching for the Cluedo pieces in your actual house
  • Guess Who Done It: A series of yes/no questions to identify the murderer (contributed by Meg Pickard)
  • Zombie Mansion: use the lead piping to defend the Cluedo mansion
  • Judy Garland on the Moon with a Bassoon: a drawing game that uses the answers to trivia questions as prompts

The Board Game Remix Kit was originally released in 2010 by the company Hide&Seek (which closed in 2014). We are releasing it here as a pdf (for phones/computers) and an epub (for ereaders) under a CC-BY-SA license.

If you enjoy the Kit and can afford it, please consider a donation to the World Health Organisation’s COVID-19 Response Fund.

Confined to your house? What a great opportunity to play board games with your fellow confinees.

Only got old family classics like Monopoly, Cluedo and Scrabble? Here’s a guide to mixing-them-up into new, fun, and highly-playable alternatives. Monopoly certainly needs it.