The build relies on the Retro-Go firmware for ESP32 devices, which can emulate a range of machines, from the Nintendo NES and Game Boy to the NEC PC Engine, Atari Lynx, and, yes, Doom itself. It can even run Doom mods, via the WAD architecture used by the game.
It was a simple matter of porting Retro-Go to run on the tiny QT Py ESP32 Pico board, and everything fell into place. With six tactile buttons, it’s capable of not just running Doom, but running it at full playable speeds including that classic soundtrack. The 1.3″ 240×240 screen looks surprisingly crisp and does a great job of displaying the game while keeping everything readable.
It’s one of the smaller Doom-capable portables we’ve seen; we reckon you could stuff this in the change pocket in your jeans if you tried hard enough. We’ll never quite get over seeing the world’s most loved FPS running on commercial kitchen hardware, though. Video after the break.
She was known, back then, as Susan Thunder. For someone in the business of deception, she stood out: she was unusually tall, wide-hipped, with a mane of light blonde hair and a wardrobe of jackets embroidered with band logos, spoils from an adolescence spent as an infamous rock groupie. Her backstage conquests had given her a taste for quaaludes and pharmaceutical-grade cocaine; they’d also given her the ability to sneak in anywhere.
Susan found her way into the hacker underground through the phone network. In the late 1970s, Los Angeles was a hotbed of telephone culture: you could dial-a-joke, dial-a-horoscope, even dial-a-prayer. Susan spent most of her days hanging around on 24-hour conference...
Agatha Christie’s autobiography, published posthumously in 1977, provides a fascinating window into the economic life of middle-class Britons a century ago. The year was 1919, the Great War had just ended, and Christie’s husband Archie had just been demobilized as an officer in the British military.
The couple’s annual income was around around £700 ($50,000 in today’s dollars)—£500 ($36,000) from his salary and another £200 ($14,000) in passive income.
They rented a fourth-floor walk-up apartment in London with four bedrooms, two sitting rooms, and a “nice outlook on green.” The rent was £90 for a year ($530 per month in today’s dollars). To keep it tidy, they hired a live-in maid for £36 ($2,600) per year, which Christie described as “an enormous sum in those days.”
The couple was expecting their first child, a girl, and they hired a nurse to look after her. Still, Christie didn’t consider herself wealthy.
“Looking back, it seems to me extraordinary that we should have contemplated having both a nurse and a servant,” Christie wrote. “But they were considered essentials of life in those days, and were the last things we would have thought of dispensing with. To have committed the extravagance of a car, for instance, would never have entered our minds. Only the rich had cars.”
In 1919, Ford’s Model T cost £170—around $12,000 in 2022 dollars. So a car was worth about three months of income for the Christie family—but almost five years of income for their maid!
By modern standards, these numbers seem totally out of whack. An American family today with a household income of $50,000 might have one or even two cars. But they definitely wouldn’t have a live-in maid or nanny. Even if it were legal today to offer someone a job that paid $2,600 per year, nobody would take it.
The price shifts Christie observed during her lifetime continued to widen after her death. Here’s a chart (from last Thursday’s “18 charts that explain the modern economy”) that illustrates the phenomenon:
As you can see, cars aren’t the only things that get cheaper over time. In the last 30 years, clothing, children’s toys, and televisions have all gotten steadily cheaper as well—as have lots of other products not on the chart.
In her autobiography, Christie notes that when she was a kid, “girls had usually not more than three evening dresses, and they had to last you for some years.” And by “girls” she meant girls in families well-off enough to have a couple of servants. Today, girls in affluent families tend to have closets overflowing with clothes.
It’s one of the most important economic mysteries of the modern world. While the material things in life are cheaper than ever, labor-intensive services are getting more and more expensive. Middle-class Americans today have little trouble affording a car, but they struggle to afford a spot in day care. Only the rich have nannies.
Who is to blame? Some paint the government as the villain, blaming excessive regulations and poorly targeted subsidies. They aren’t entirely wrong. But the main cause is something more fundamental—and not actually sinister at all.
Back in the 1960s, the economist William Baumol observed that it took exactly as much labor to play a string quartet in 1965 as it did in 1865—in economics jargon, violinists hadn’t gotten any more productive. Yet the wages of a professional violinist in 1965 were a lot higher than in 1865.
The basic reason for this is that workers in other industries were getting more productive, and that gave musicians bargaining power. If an orchestra didn’t pay musicians in line with economy-wide norms, it would constantly lose talent as its musicians decided to become plumbers or accountants instead. So over time, the incomes of professional musicians have risen.
Today economists call this phenomenon “Baumol's cost disease,” and they see it as one of the most important forces driving the price trends in my chart above. I think it’s unfortunate that this bit of economics jargon is framed in negative terms. From my perspective as a parent, it might be a bummer that child care costs are rising. But my daughter’s nanny probably doesn’t see it that way—the Baumol effect means her income goes up.
Rising productivity in one industry not only drives higher wages in that industry, it puts upward pressure on wages across the economy. When you put it that way, the phenomenon doesn’t seem so much like a “disease.” It might be better if we talked about the “Baumol bonus” workers get when other workers become more productive.
Moreover, there are good reasons for some industries to be resistant to the kind of automation that drives down prices. Child care is the most obvious example. Even if someone managed to invent a robot nanny that kept kids safe as well as a human being, I wouldn’t want it to take care of my baby. I bet you wouldn’t either.
Or take the coffee industry. We already have machines that make coffee. Someone could probably design a robot to automatically brew Starbucks-caliber coffee, potentially putting baristas out of work.
But Starbucks would never adopt such a robot, because they know customers wouldn’t like it. A decade ago, the Wall Street Journal reported that Starbucks was “telling its harried baristas to slow down.” The company had been getting complaints that the company had “reduced the fine art of coffee making to a mechanized process with all the romance of an assembly line.” So baristas were “told to stop making multiple drinks at the same time.”
Inefficient use of labor helps to make a visit to Starbucks a luxury experience. As Americans get wealthier, we spend more money on luxuries like this. That will cause the official inflation rate to be higher than it would have been otherwise. But that’s not a sign that Starbucks is doing something wrong—the company is giving customers what they want.
Many people who see the first chart in this article immediately notice that the highest-cost industries are the ones with the most government involvement. Health care and education are two of the most heavily subsidized and regulated industries. Child care is subject to extensive regulation as well.
So how much blame do governments deserve? To help answer this question, I created another version of the chart that shows college tuition, medical care, and child care services alongside a bunch of other labor-intensive services:
Every one of these industries has grown in price faster than the overall price level. None of them has a trajectory like televisions, getting cheaper each year. In some cases—as with child care and haircuts—that’s because they inherently require direct interaction between customers and service providers. In other cases—like lawn care and dry cleaning—you could imagine automating more of the work, but for whatever reason there hasn’t been much progress.
At the same time, I would not say this chart provides strong evidence for the thesis that cost increases are primarily driven by government policies. For example, the government doesn’t regulate or subsidize veterinary services nearly as much as it does health care services. Yet veterinary services have had a high inflation rate over the last 25 years. Veterinarians do need a license to practice in most states, but that’s also true for salons and barbershops, an industry that has had less inflation than restaurants or lawn care services.
So what does explain the rather different trajectories of these services? I suspect that rising wealth—and, to some extent, rising income inequality—plays a big role.
Take college tuition. Wealthy American parents are willing to pay a lot of money to get their kids into the best university. And the “best university” isn’t just about the quality of instruction; it’s also about prestige and the caliber of the other students. This means that the supply of “good schools” is inelastic. Anybody can start a new university, but even a well-funded school would start out near the bottom of the rankings and take decades to work its way up.
I do think government policy probably contributes to rising college costs with subsidized loans and rules preventing student loans from being discharged in bankruptcy. These measures enable students to borrow more—and hence enable schools to charge more tuition than they would otherwise. But even without those policies, the rising incomes of affluent parents would probably be pushing tuition upward faster than inflation.
Similarly, I think veterinary care is getting more expensive because people are becoming more and more willing to spend lavishly to take care of their pets when they get sick. Last year, Marketplace talked to one expert who said that she was “seeing a spike in cancer diagnoses in pets.” She noted that “the full treatment, including surgery and chemotherapy, can reach between $8,000 and $10,000 for a dog or cat.” Spending on veterinary care doubled between 2010 and 2021, even after adjusting for inflation. This partly reflects a cultural shift where more people treat their pets like members of the family. But they couldn’t do that unless they had $8,000 to $10,000 to spare.
Here, too, government may play a role, since state licensing rules may be limiting the number of people who can become veterinarians. But it’s not clear the industry could keep up with rapid demand growth even without those restrictions. It takes a long time to expand the training pipeline for a skilled profession like veterinarians.
At the start of this piece, I stated that the Christies’ income of £700 was equivalent to $50,000 in today’s dollars. But price comparisons like this over long periods of time are (in the words of my colleague Alan Cole) “at least a little bit made up.”
To get that $50,000 figure, I used the Bank of England’s inflation calculator to convert 1919 pounds to 2020 pounds and got £36,962.56—$50,000 at current exchange rates. But there’s reason to be skeptical of inflation conversions like this—or at least to treat them as rough approximations.
To compute an inflation index, government statisticians survey consumers and develop a representative list of the goods and services the typical consumer buys. Then they determine the price of each item on the list from one year to the next, and add all these prices up.
The problem with doing this over long time periods—like between 1919 and 2020—is that the things families buy in the two periods are radically different. A family in 1919 bought relatively few clothes, and a lot of them were hand-tailored. A wealthy family in 1919 purchased a lot of housecleaning labor, but likely did not own a vacuum cleaner, dishwasher, washing machine, or other household appliances. Most families didn’t own a car. They definitely did not own a smartphone, a personal computer, or a television.
So when I say Agatha Christie and her husband had an income equivalent to $50,000, that doesn’t mean they had exactly the same lifestyle as a modern American family with that income. In some ways, the Christies lived much better. For example, Christie notes that having servants made it easy to throw elaborate multi-course dinner parties.
On the other hand, the Christies in 1919 lacked access to modern medicine. They couldn’t take a flight across the Atlantic at any price. They couldn’t watch television or look anything up on the internet. If a 1919 family had a car, it was slow, unreliable, dangerous, and lacked modern features like an automatic transmission, power steering, or air conditioning. They likely would not have had access to fresh fruit and vegetables year-round, as Americans and Britons do today.
Ultimately, whether £700 in 1919 is worth more or less than $50,000 in 2020 is not a purely objective question. The 1919 income provides a better lifestyle in some respects and a worse lifestyle in others.
This is relevant for contemporary debates about how the standard of living has changed in recent decades. You’ll sometimes see pundits declare that American workers haven’t seen their standards of living improve since the 1960s. Economists can and do debate the methodology underlying such claims. But we should bear in mind that this is ultimately not just a statistical question.
If you want to argue that workers were better off in the 1960s, you can focus on the rising cost of health care, child care, and education. If you want to make the case that workers live better today, you can point to the falling cost of food and clothing, as well as the dramatically better value provided by cars, televisions, and other manufactured goods.
There’s no purely objective way to decide between these two perspectives. Different people place different importance on different goods and services. I think average American workers today are substantially better off today than they were in 1962. But that’s at least partly a matter of opinion, not something that I’ll ever be able to prove objectively.
What we can say, however, is that there are far more people who make $50,000 in today’s America than earned £700 in 1919 Britain. Agatha Christie claimed she wasn’t rich, but her income was far above average in 1919. In contrast, most American households earn more than $50,000.
Very few Americans have maids today because we don’t have a substantial labor force willing to work for a few thousand dollars a year. That in itself is a clear sign that living standards have risen substantially, even if reasonable people can disagree about exactly how large the improvement has been.
The movie Sideways, a comedy about a neurotic novelist on a soul-searching trip through California’s wine country, became a bit of a sensation among a certain class of Americans in 2005. It took in over $100 million at the box office and won a whole bunch of awards. It’s best remembered today for an iconic scene in which Paul Giamatti’s main character goes on a brief expletive-ridden tirade against Merlot right before a high-stakes dinner date.
These roughly five or six seconds of dialogue had a profound effect on popular perceptions of Merlot and, in turn, on the entire California wine industry. According to a new study published in the Journal of Wine Economics (no, I did not make that up), in the years following Sideways’ release the price of Merlot fell and California wineries converted thousands of acres of Merlot grapes into the varietal preferred by Giamatti’s character in the film: Pinot Noir.
The effects are plain enough to see in the chart above. Prior to the movie’s release in 2005 Pinot noir and Merlot were on similar growth trajectories. The authors also tracked a third red variety, Cabernet Sauvignon, as a kind of simple control.
But by 2010 Merlot’s growth trend had fully reversed, while Pinot Noir plantings accelerated. Cabernet Sauvignon, which wasn’t prominently discussed in the film, was essentially flat. Those trends continued for the next five years as well.
These long time horizons are important, the study authors explain, because it typically takes around five years between when a wine grower decides to plant a new variety, and when those vines bear fruit that’s ready for market. The industry doesn’t turn on a dime, even if consumer preferences do.
The net result is a radically different California wine industry. In 2005, for instance, growers produced nearly five times as many Merlot grapes as Pinot. By 2017, Pinot Noir production surpassed Merlot for the first time and hasn’t fallen behind it since.
The study underscores how real-world economic markets have to shift in response to irrational consumer behavior: in reality there’s nothing inherent to the varieties that makes one “better” than the other. They’re just two different types of grapes, with marginally different flavor profiles. Repeated studies have shown that “wine experts,” when administered blind tests, are unable to distinguish between cheap and expensive bottles, or different varieties of the same color wine, or even whether the wine they’re drinking is red or white. In the end it’s all just fermented grape juice.
At any rate we’re 17 years out from the movie now, long enough for the pendulum of consumer preference to start swinging the opposite way: Merlot is back on the menu.
Last week I got a message from my dad (who works with me at a client's office) with an image attached.
I asked him to unplug it, store it in a safe location, take photos of all parts and to make an image from the SD card (since I mostly work remote). I have worked on many Raspberry Pi projects and I felt confident I could find out what it does.
At this point nobody thought it was going to be malicious, more like one of our staffers was playing around with something.
There were 3 parts:
A Raspberry Pi b first generation
a mysterious USB dongle
a 16GB sd card (a fast one)
The number of people who can access this small cabinet is very limited. Only 4 people have a key for this room:
None of them knew anything about this so I asked my IT colleagues and they were as baffled as I was. I heard of people getting paid to put things like this in places they shouldn't and for this reason I was very interested in finding out what it actually does.
To help me solve this mistery I asked reddit and surely enough they identified the dongle as a microprocessor, almost as powerful as the Rasberry Pi itself: the nRF52832-MDK. A very powerful wifi, bluetooth and RFID reader.
This was - no doubt - to give the old Raspberry Pi a wifi and bluetooth connection. Great so now this thing has wifi too..
The SD card has a few partitions. Most ext4 (linux) and one fat16 (boot)
Great, time to mount it.
My debian box told me the first big clue: It's a resin installation
Resin also installs a VPN on the device so the collected data is transferred securely. Obviously this device was meant to be picked up again since it leaves a trail as the service is a paid one.
Closer look at the partitions
First partition is called "resin-boot"
See something that catches your eye? We got a config.json. Quick jackpot?
What we can extract from this file:
The application deployed to this resin device is called "logger". Not a good sign
We got a username. This seems to be the username for the resin account associated with this device
Confirmation that the device used a VPN via Port 443
A registration date. It was registered (or first deployed or set up?) on May 13th 2018
About that username..
When I googled the username found in the config.json file I found a person in the same town where this Pi was found. The company then checked their records for this person but found nothing.
Oddly enough I found a website from 2001 where parents of "gifted children" write articles about them and for some reason sign those articles with their home address and phone numbers. So I have a name and the address of this whole family.
This could be a wrong lead as usernames tend to be used by multiple people but let's just keep that name in mind.
The data directory didn't have any data stored (as in: collected data) but there was a nodejs app which was heavily obfuscated and to this day I can't tell exactly what it was doing. It seems to talk via a serial connection to the dongle but I can't extract what data is actually collected. I can only assume that it collected movement profiles of bluetooth and wifi devices in the area (around the Managers office) and maybe raw wifi packets.
But I found something much more interesting: a LICENSE.md file
Odd.. Why would this nodejs app include a confidential piece of software? I googled the company from the copyright header and guess what?
It is beyond me why a co-founder of a company would distribute these devices around town but well..
Getting the attackers home address
Another very interesting thing I found was a file on the third partition (resin-state) in the path /root-overlay/etc/NetworkManager/system-connections/. The file is called resin-wifi-01 and guess what it contains?
It contains the wifi credentials to the wifi that was used to set the device up (or to test it). Definitely not the wifi of the company. And what do we do, when we want to find out a location associated with a wifi name? We go to wigle.net, enter the SSID (=wifi name) and it tells us where on the world it is found.
And guess what? The address we found of that gifted persons parents? That's exactly where our Pi was set up according to Wigle.net
How and when did the Pi even get there?
I checked the DNS logs and found the exact date and time when the Pi was first seen in the network. I checked the RADIUS logs to see which employee was at the premises at that time and I saw multiple error messages that a deactivated account tried to connect to wifi.
That deactivated account belongs to an ex employee who (for some reason) made a deal with management that he could still have a key for a few months until he moved all his stuff out of the building (don't ask..).
Legal has taken over, I did my part and the rest is over my pay grade.
For me it was a very interesting challenge and I'd like to thank every person on reddit who helped me with one piece of the puzzle.
If you imagine a world where the sum of all things you can do with a computer is exactly matched, and locked down for all time with what you can do inside a browser, then the arguments for the web are persuasive. Why write for a specific platform when you can write for all platforms at once and gain the other advantages as well?
The error is in disregarding the many unmatchable attractions of “the desktop.”
But if I want to write a truly great app, it has to be a desktop app. And this will be true forever, or until there is no difference between the web and the desktop.
Apple fixed the hardware problems with the Mac, now they must address software. We need M1-level software platform differentiation, and three competing app frameworks won’t create it. Are they even aware how tentative their footing in consumer software is? They’re not showing it.
12 years ago, I wrote “Can’t Catch Me”, wherein I proclaimed with confidence that the Mac would continue to outpace web platforms. That cockiness presupposed a much greater level of commitment from Apple than we’ve seen.
Since then, Apple has slowed the pace of improvements to the frameworks for writing native Mac apps. It added technical (sandboxing, TCC, SIP, kernel extension restrictions) and policy (App Review) roadblocks that make it harder to develop apps that go beyond what can be done with Web technologies. Apple switched to an annual release cycle, increasing the proportion of time native developers spend testing and working around bugs. For the most part, that doesn’t affect Electron apps, which are insulated from the OS with a layer of middleware, or apps that don’t take advantage of OS-specific features. And it doesn’t affect apps that run purely in the browser. So it has the effect of holding back the types of apps that push the envelope, that increase the distance between Web and desktop.
Meanwhile, Apple is no longer leading by example, at least not in a good way, as its recent Mac apps have been Catalyst ports or weirdhybrids that feel more Web or iOS than Mac. Former role model apps were rewritten for iOS, then brought back to the Mac, losing features and desktop-oriented design in the process.
Automation has been a major platform-specific advantage. We once hoped for a successor to AppleScript; now we are grateful that it is at least still on life support. Automator never got much follow-through. Shortcuts for Mac is finally here but is currently rough and lacking some capabilities of the iOS version. The Mac’s Unix layer hasbeenwithering, and built-in scripting languages are beingremoved. Developer tools used to come free on a CD with the OS. Now, you need a paid account to ship an app that isn’t accompanied by a malware warning, and even then you have to upload each build to Apple first. Web app developers don’t need permission to deploy their code.
Apple stopped maintaining an online directory of Mac apps, so it’s harder for customers to find what’s available if it’s not in the Mac App Store. The more distance there is between your app and what a Web app could do, the less likely it is to be allowed in the store. (Even for apps in the store, browsing is more difficult than with the old directory.) Apple also stopped offering affiliate commissions on apps, reducing the incentives for third-party coverage that would help people find a Mac-only app. Web apps, however, get to share marketing across multiple platforms, and they don’t have to pay Apple 30%.
In short, it feels like the distance has closed somewhat since 2010. This is partially because Web technologies got better, but also because of inattention and poor incentives from Apple.
To head off any critics who might ask, “OK, smartass, what would YOU do to improve the Mac as a platform?” I say: I don’t know, I look to historic innovators like Apple for that. I would probably start by picking three intrinsic advantages of web apps and strategize against them.
provide means for updating/crash catching of non-MAS apps
provide means for paying/licensing of non-MAS apps
make cross-device document storage suitable for shoebox-style apps the default (indexing, full text search, conflict handling just work)
Isn’t it ironic how the Mac App Store promised a quick, secure, and easy way for developers to get their apps discovered, installed, and paid for - and it turned out to be the exact opposite with its sandboxing requirements, malware infestation, and bogus review process.