Bifurcated Rivets: From FB


Bifurcated Rivets: From FB


Bifurcated Rivets: From FB


Bifurcated Rivets: From FB


Bifurcated Rivets: From FB

Some of you will remember this I

MetaFilter: A Funny Thing Happened On The Way To The Forum

Stephen Sondheim was having another go. After his first show as lyricist/composer collapsed through no fault of his own, he retreated to lyrics-only for a while... West Side Story and Gypsy... I mean, ya know, as one does. But in 1962, one of the most successful Broadway shows of all time, with a book by Burt Shevelove and Larry Gelbart (M*A*S*H), A Funny Thing Happened On The Way To The Forum. Here's Zero Mostel, Jack Gilford, John Carradine, and others in the Original Broadway Cast Recording. [ link, streaming and download links]

We don't have much to document this actual production. That Cast Recording, Playbill did a Look Back earlier this year, a NYT review of the show, A souvenir program booklet [ link]. The production won Tony Awards for Best Musical, Best Actor, Best Book, Best Direction, but not for Best Score.

Well, also, you might be interested in the libretto, or even the piano/conductor score. Those are always fun too look at.

This program is also interesting. Maybe from a touring production? Still, fun to look at!

There is a "sort-of" document of the show. That would be the 1966 Film directed by Richard Lester (Beatles Movies, The 70s Musketeers movies), featuring many actors from the original stage show. Thanks to, you can watch it, with streaming or download links. The movie does away entirely with the vaudeville setting of the stage show (obviously) and instead uses the then-pioneering quick cuts and some slapstick. There are a lot more actual horse-drawn chariots in the movie, but a lot less of the really witty dialogue and basically half of the songs are utterly gone. If this is your only experience of this show, you've really not seen it. Go see it even in a community theater production. It's nearly foolproof, and it's a lot of fun, if you can sort of slide with the subject matter. (More of that later.)

Of interest is the Motion Picture Soundtrack album [ link, with streaming and download links], which has the songs from the movie and the main instrumental tracks. The Rescue Of Philia - Into - The Chase is an interesting mashup of Sondheim melody with.. Beethoven? (I guess because of Fantasia?) Regardless, the film won the Academy Award for Best Adapted Score.

Trying to read the libretto of the show while watching the movie is fascinating, but not for those short of patience (or short of familiarity with the material).

The West End production of 1963 has a cast recording [ link, streaming and download links] that is quite, quite fine. I encourage a listen.

The first Broadway revival was actually the first that was going to star its original, role-written-for star, Phil Silvers. Ducking out originally because he was afraid of performing without his glasses, he starred in this production (with glasses!) that was a giant hit, and won Silvers the Best Actor Musical Tony. This is even less documented than the first, because Silvers died only a few months after opening (replaced by Tom Poston) and closed before any cast album was recorded. This blog as a look at the Silvers-led production. Oh, and here's a NYT review, quite positive. I wish I could hear his performance, really.

Two songs from that first revival are the song Farewell (written for Nancy Walker but dropped), and Echo Song, dropped originally put back for this, not a standard part of the book. [These are not performances from productions, but they are performances of the songs. And I think Farewell does a good job of exhibiting the spirit of vaudeville that was intended for this piece.]

The show had a second revival on Broadway, in 1996, this time with Nathan Lane as Pseudelous. Mark Lynn-Baker (Perfect Strangers, Doonesbury musical) plays Hysterium. The Cast Album from that production [YT link] is, for my money, the best of these I've heard. [{psst here's the thing, the first 45m47s of this 1h48m video are the actual soundtrack in order. the rest of it, that's a distraction, if you know what I mean.}] Nathan Lane won Best Actor Musical Tony for his performance in this show. Oh, and while a part of this recording, Pretty Little Picture was dropped from the final version of this revival.

[Ed. Note: This is ridiculous, but Jason Alexander performed Company Tonight in a f'n REVUE show, and he won a Tony for his performance. Do the Gods smile on this show, or what? Much more than on The Frogs!] (Also, if this is the original staging of the number, it gives you a good glimpse of the vaudeville nature of the show. I wish we had more.)

Now, look. Forum is horribly sexist. Horribly horribly so. It also has slavery, but the male slaves have a lot of agency while the female slaves are, well, they are property, and are trained to be property. Plautus, the source playwright of the three plays sourced for this show lived 254 – 184 BC. So, let's just say norms were different then. The questions about whether it's okay to find jokes from THEN funny NOW are kind of a thing with this play. The 1996 revival toned down some of the "stuff". One 2015 production tried to go back to ancient times to resolve some issues -- all the parts are played by men. (Article and video in link.)

Anyway, zillions have been in productions of Forum, and a lot of people know the songs. Or THINK they know the songs. Here's a real test: instrumental tracks for the show! (Libretto and score are linked above. p.s. the show song are not the same as the movie songs)

One tiny last note: the original opening song for Forum was Love Is In The Air (sung here by Sondheim). It wasn't working, and after a couple of attempts he came up with Comedy Tonight, and the show became a giant success.

Recent additions: flatparse

Added by AndrasKovacs, 2021-10-16T12:28:27Z.

High-performance parsing from strict bytestrings

MetaFilter: A zeal to dazzle the state of of Maryland - continued

Everything We Know About the Maryland Zebras On the Run | On Aug. 31 three zebras somehow escaped from an 80-acre farm owned by Jerry Holly in Upper Marlboro, a city that is about 21 miles from the White House [Previously]. At first it was believed that five zebras escaped—a trio and a duo—but that turned out to be wrong. Let's get into it:

- Why are there zebras running around Maryland?
- People can own zebras in Maryland?
- Is the state's climate and landscape even hospitable to them?
- So the zebras broke free in late August and none have been caught?
- How did one of the zebras die?
- I can't imagine the internet has been quiet about this!
- When do authorities expect to finally capture the zebras?

Whether you want to tweet, make a costume or get the t-shirt, learn the latest about these fugitive free-grazers.

Recent additions: taskwarrior

Added by maralorn, 2021-10-16T11:25:01Z.

Types and aeson instances for taskwarrior tasks

Hackaday: Unique Seven-Segment Display Relies on FR-4 Fluorescence

PCB fluorescent 7-segment display

It’s interesting what you see when you train a black light on everyday objects. We strongly suggest not doing this in a hotel room, but if you shine UV light on, say, a printed circuit board, you might see what [Sam Ettinger] did, which led him to build these cool low-profile seven-segment fluorescent PCB displays.

UV light causing FR4 to fluoresceAs it turns out, at least some FR-4 PCBs fluoresce under UV light, giving off a ghostly blue-green glow. Seeing the possibilities, [Sam] designed a PCB with cutouts in the copper and solder mask in the shape of a traditional seven-segment display. The backside of the PCB has pads for UV LEDs and current-limiting resistors, which shine through the board and induce the segments to glow. Through-slots between the segments keep light from one segment from bleeding over into the next; while [Sam] left the slots unfilled, they could easily be filled with solder. The fluorescent property of FR-4, and therefore the brightness and tint of the segments, seems to vary by board thickness and PCB manufacturer, but it looks like most PCBs will show pretty good results.

We’d say the obvious first improvement might be to cover the back of the display with black epoxy, to keep stray light down, and to improve contrast. But they look pretty great just as they are. We can also see how displays with other shapes, like icons and simple symbols. Or maybe even alphanumeric characters — say, haven’t we seen something like that before?

Recent additions: flatparse

Added by AndrasKovacs, 2021-10-16T10:57:34Z.

High-performance parsing from strict bytestrings

Recent CPAN uploads - MetaCPAN: Module-Generic-v0.16.2

Generic Module to inherit from

Slashdot: Epic Says It's 'Open' To Blockchain Games After Steam Bans Them

Epic tells The Verge that it's "open to games that support cryptocurrency or blockchain-based assets" on its game store, unlike its competitor Valve which has banned games that feature blockchain technology or NFTs from Steam. From the report: When we asked about allowing games that featured NFTs, Epic told us there'd be some limitations, but that it's willing to work with "early developers" in the "new field." Epic says that the games would have to comply with financial laws, make it clear how the blockchain is used, and have appropriate age ratings. It also says that developers won't be able to use Epic's payment service to accept crypto; they would have to use their own payment systems instead. Epic's CEO Tim Sweeney has said that the company isn't interested in touching NFTs, but that statement now appears to only apply to its own games. Epic tells The Verge that it will clarify the rules as it works with developers to understand how they plan to use blockchain tech in their games.

Read more of this story at Slashdot.

Recent CPAN uploads - MetaCPAN: WebSocket-v0.1.0

WebSocket Client & Server

Recent additions: llvm-tf

Added by HenningThielemann, 2021-10-16T09:34:43Z.

Bindings to the LLVM compiler toolkit using type families.

MetaFilter: The Idris Elba Effect

The coolest man on the planet won't be shaken from his master plan. But after a bruising 18 months, the multitalented Englishman, who acts, deejays, and podcasts, and this month stars in the all-Black Western, The Harder They Fall, wants to clear up a few things. [Esquire/Pandemic related/]

Recent additions: llvm-ffi 9.1.1

Added by HenningThielemann, 2021-10-16T09:09:58Z.

FFI bindings to the LLVM compiler toolkit.

Hackaday: The Pi 400 As A PC Peripheral

The Raspberry Pi 400 all-in-one computer is a neat little unit that is powerful enough to take on most humdrum computing tasks while doing an excellent job of freeing up valuable desktop space. But what about those moments when both the Pi and a PC are needed on the same desktop? How can the Pi and the bulky PC keyboard share the same space?

[Gadgetoid] may have the answer, with a clever bit of software that presents the Pi’s mouse and keyboard as peripherals on its USB-C power port. If your PC has a high-power USB socket that can run the Pi then it can use the small computer’s input devices just as well as the Pi itself can. It’s fair to say that the Pi 400’s keyboard is not it’s strongest point, but we can see some utility in the idea.

Running it is simply a case of running an executable from the Pi. Control can be wrested back to Raspberry Pi OS with a simple keystroke. Perhaps it’s not the ultimate desktop experience, but if you’re a die-hard Pi-head there’s plenty of appeal.

Within a few weeks, it’s a year since the launch of the Pi 400. We’ve not seen as many of them as the other Pi models, but you might find our original review to be of interest.

Thanks [Itay] for the tip.

Recent CPAN uploads - MetaCPAN: Redis-Fast-0.32

Perl binding for Redis database

Changes for 0.32 - 2021-10-16T06:06:31Z

  • Fixing segmentation faults when trying to connecting to unreachable hosts #120 (thanks @pepl)
  • bump hiredis v1.0.2

Recent CPAN uploads - MetaCPAN: HTTP-Request-FromCurl-0.27

create a HTTP::Request from a curl command line

Changes for 0.27 - 2021-10-15

  • Add HTTP::Request::FromWGet
  • HTTP::Request::FromFetch now optionally takes named arguments
  • Curl seems to URL-encode differently between versions - we adapt our tests to ignore the difference, but we use the "old" style of URL-encoding The curl versions making the change seem to be 7.74 (%) and 7.78 (+)

Slashdot: Astronomers Spot First Known Exoplanet To Survive Its Dying Star

"In our new paper, published in Nature, we report the discovery of the first known exoplanet to survive the death of its star without having its orbit altered by other planets moving around -- circling a distance comparable to those between the Sun and the Solar System planets," writes one of the study's authors, Dimitri Veras, in an article for The Conversation. From the report: This new exoplanet, which we discovered with the Keck Observatory in Hawaii, is particularly similar to Jupiter in both mass and orbital separation, and provides us with a crucial snapshot into planetary survivors around dying stars. A star's transformation into a white dwarf involves a violent phase in which it becomes a bloated "red giant," also known as a "giant branch" star, hundreds of times bigger than before. We believe that this exoplanet only just survived: if it was initially closer to its parent star, it would have been engulfed by the star's expansion. When the Sun eventually becomes a red giant, its radius will actually reach outwards to Earth's current orbit. That means the Sun will (probably) engulf Mercury and Venus, and possibly the Earth -- but we are not sure. Jupiter, and its moons, have been expected to survive, although we previously didn't know for sure. But with our discovery of this new exoplanet, we can now be more certain that Jupiter really will make it. Moreover, the margin of error in the position of this exoplanet could mean that it is almost half as close to the white dwarf as Jupiter currently is to the Sun. If so, that is additional evidence for assuming that Jupiter, and Mars, will make it. So could any life survive this transformation? A white dwarf could power life on moons or planets that end up being very close to it (about one-tenth the distance between the Sun and Mercury) for the first few billion years. After that, there wouldn't be enough radiation to sustain anything. [...] The new white dwarf exoplanet was found with what is known as the microlensing detection method. This looks at how light bends due to a strong gravitational field, which happens when a star momentarily aligns with a more distant star, as seen from Earth. The gravity from the foreground star magnifies the light from the star behind it. Any planets orbiting the star in the foreground will bend and warp this magnified light, which is how we can detect them. The white dwarf we investigated is one-quarter of the way towards the centre of the Milky Way galaxy, or about 6,500 light years away from our Solar System, and the more distant star is in the centre of the galaxy.

Read more of this story at Slashdot.

Disquiet: Quiet Zone

Tell me more about becoming an official quiet zone, please.

Hackaday: Learn DMX512 Basics

If you’ve done anything with modern lighting effects, you’ve probably heard of DMX, also known as DMX512. Ever wonder what’s really happening under the hood? If so, then you should have a look at [EEForEveryone’s] video on the topic, which you can see below.

At the core, the DMX512 uses RS485, but adds software layers and features. The video uses the OSI model to show how the system works.

Of course, RS485 is just a physical layer like a serial port. The DMX standard defines an actual protocol. If you haven’t used RS485 before, there’s a good explanation of differential signaling and why it is important when you have high data rates or long signal paths. There’s also a discussion of alternate physical layers such as networked DMX512 and wireless DMX.

The 512 part of the name refers to the maximum number of devices on the bus. However, with the networked variation you can use a single Ethernet cable to connect up to 400 DMX busses to one network device. That’s quite a few DMX channels. Each channel is a byte, so a typical RGB LED, for example, consumes three channels.

We’ve seen DMX in a backpack. If you do it right, the DMX can not only react to music, it can be part of the instrument that creates it, too. Comic for 2021.10.16

New Cyanide and Happiness Comic

Slashdot: Drones Have Now Been Used To Deliver Lungs For Medical Transplant

An anonymous reader quotes a report from ExtremeTech: The world's first drone delivery of lungs has gone down in history as a success. Unither Bioelectronique, a bioengineering firm focused on organ transportation, recently completed a "proof-of-concept" flight in which a pair of human lungs were shipped via drone to the transplant site in about six minutes. The lungs were flown from the Toronto Western Hospital to Toronto General Hospital, where Dr. Shaf Keshavjee, surgeon-in-chief of Canada's University Health Network, received the cargo at about 1 a.m. He needed the lungs for a transplant he was performing that very day on a male engineer who'd soon become the first transplant patient to receive his "new" lungs by drone. Though the circumstances of the trip were urgent, the trip itself was 18 months in the making. Organs have been shipped by drone before, but lungs are particularly sensitive to environmental shifts during transport, with a majority of donated lungs rendered unusable by insufficient oxygenation. In order to make the trip worthwhile, engineers at Unither Bioelectronique had to design a lightweight carbon fiber shipping container that could withstand vibrations and in-flight changes in elevation and barometric pressure. Preparation involved practice flights and drop tests using simulation lung packages. The drone and its container counterpart were fitted with a parachute and an advanced GPS system, as the drone would fly through the air unmanned. "This innovation in the transportation of organs has the potential to significantly increase the transfer efficiency between donors and recipients, especially in congested urban areas," Unither Bioelectronique says of the trip on their website. "Through this project, we have established an important stepping stone for future organ delivery that ultimately will open the door for large-scale adoption of larger fully autonomous, electrically-powered, environmentally-friendly drones... for transplant across trans-continental distances."

Read more of this story at Slashdot.

Recent CPAN uploads - MetaCPAN: JavaScript-Minifier-XS-0.15

XS based JavaScript minifier

Changes for 0.15 - 2021-10-15T20:21:23-07:00

  • GH#8 - preserve newlines when collapsing whitespace; if a block of whitespace contains a newline, then when collapsing we collapse to a newline character, not just "the first whitespace char we found"

MetaFilter: David Anthony Andrew Amess (March 26, 1952 – October 15, 2021)

The killing of Conservative MP Sir David Amess has been declared a terrorist incident by police. [BBC]

Sir David, 69, who represented Southend West, was holding a constituency surgery - where voters can meet their MP and discuss concerns - at Belfairs Methodist Church on Friday when he was attacked at 12:05 BST.

Sir David had been an MP since 1983 and was married with five children. He is the second serving MP to be killed in the past five years, following the murder of Labour MP Jo Cox in 2016.

'It will shatter the community': constituents remember MP David Amess – video [The Guardian]

He was "so kind to everyone" said Rofique Ali, a local Conservative Party member, who described the MP as his best friend in the world. [BBC]

Kim Leadbeater, the MP whose sister Jo Cox was murdered in 2016, has paid tribute to David Amess. [BBC, video]

One of MP Amess's last tweets [Twitter]

MetaFilter: On her 12th birthday, Yoyoka covers Deep Purple (slyt)

Deep Purple - Burn / YOYOKA's 12th Birthday Session. Previously. More Previously.

Slashdot: Researchers Show Facebook's Ad Tools Can Target a Single User

A new research paper written by a team of academics and computer scientists from Spain and Austria has demonstrated that it's possible to use Facebook's targeting tools to deliver an ad exclusively to a single individual if you know enough about the interests Facebook's platform assigns them. TechCrunch reports: The paper -- entitled "Unique on Facebook: Formulation and Evidence of (Nano)targeting Individual Users with non-PII Data" -- describes a "data-driven model" that defines a metric showing the probability a Facebook user can be uniquely identified based on interests attached to them by the ad platform. The researchers demonstrate that they were able to use Facebook's Custom Audience tool to target a number of ads in such a way that each ad only reached a single, intended Facebook user. The research raises fresh questions about potentially harmful uses of Facebook's ad targeting tools, and -- more broadly -- questions about the legality of the tech giant's personal data processing empire given that the information it collects on people can be used to uniquely identify individuals, picking them out of the crowd of others on its platform even purely based on their interests. The findings could increase pressure on lawmakers to ban or phase out behavioral advertising -- which has been under attack for years, over concerns it poses a smorgasbord of individual and societal harms. And, at the least, the paper seems likely to drive calls for robust checks and balances on how such invasive tools can be used. The findings also underscore the importance of independent research being able to interrogate algorithmic adtech -- and should increase pressure on platforms not to close down researchers' access.

Read more of this story at Slashdot.

Hackaday: Better History Through X-Rays

Even if you aren’t a giant history buff, you probably know that the French royal family had some difficulties in the late 1700s. The end of the story saw the King beheaded and, a bit later, his wife the famous Marie Antoinette suffered the same fate. Marie wrote many letters to her confidant, and probable lover, Swedish count Axel von Fersen. Some of those letters have survived to the present day — sort of. An unknown person saw fit to blot out parts of the surviving letters with ink, rendering them illegible. Well, that is, until now thanks to modern x-ray technology.

Anne Michelin from the French National Museum of Natural History and her colleagues were able to foil the censor and they even have a theory as to the ink blot’s origin: von Fersen, himself! The technique used may enable the recovery of other lost portions of historical documents and was published in the journal Science Advances.

Michelin’s team used X-ray fluorescence spectroscopy and found that the author of the letter used ink of one composition, and the censor used another that was quite different. The different fluorescence under X-ray allowed recovery of some of the hidden letters. Further data analysis allowed the interpretation of much of the text.

One interesting result: the ink in the blots matched closely with von Fersen’s ink, so the researchers think he blotted out the passages himself. Small wonder since they included lines from the Queen like:

I will finish not without telling you my dear and loving friend that I love you madly and that I can never be a moment without adoring you.”

Probably not something you’d want the King to read later.

Granted, most of us don’t have X-ray spectrometers laying around. But this is an interesting technology detective story and who knows? Maybe it will inspire a hacker-developed spectrometer build. After all, you can build an X-ray machine. You can even make your own tube if you want to go that far.

Slashdot: Former Boeing 737 MAX Chief Technical Pilot Indicted For Fraud

Mark Forkner, Boeing's 737 Max chief technical pilot during the aircraft's development, has been charged with misleading aviation regulators about safety issues blamed for two fatal crashes of the 737 Max. According to the U.S. Department of Justice, "he faces a maximum penalty of 20 years in prison on each count of wire fraud and 10 years in prison on each count of fraud involving aircraft parts in interstate commerce." Slashdot reader McGruber shares an excerpt from the press release: A federal grand jury in the Northern District of Texas returned an indictment charging Mark A. Forkner, former Chief Technical Pilot for The Boeing Company (Boeing), with deceiving the Federal Aviation Administration's Aircraft Evaluation Group (FAA AEG) in connection with the FAA AEG's evaluation of Boeing's 737 MAX airplane, and scheming to defraud Boeing's U.S.based airline customers to obtain tens of millions of dollars for Boeing. As alleged in the indictment, Forkner provided the agency with materially false, inaccurate, and incomplete information about a new part of the flight controls for the Boeing 737 MAX called the Maneuvering Characteristics Augmentation System (MCAS). Because of his alleged deception, a key document published by the FAA AEG lacked any reference to MCAS. In turn, airplane manuals and pilot-training materials for U.S.-based airlines lacked any reference to MCAS -- and Boeing's U.S.-based airline customers were deprived of important information when making and finalizing their decisions to pay Boeing tens of millions of dollars for 737 MAX airplanes. On or about Oct. 29, 2018, after the FAA AEG learned that Lion Air Flight 610 -- a 737 MAX -- had crashed near Jakarta, Indonesia, shortly after takeoff and that MCAS was operating in the moments before the crash, the FAA AEG discovered the information about the important change to MCAS that Forkner had withheld. Having discovered this information, the FAA AEG began reviewing and evaluating MCAS. On or about March 10, 2019, while the FAA AEG was still reviewing MCAS, the FAA AEG learned that Ethiopian Airlines Flight 302 -- a 737 MAX -- had crashed near Ejere, Ethiopia, shortly after takeoff and that MCAS was operating in the moments before the crash. Shortly after that crash, all 737 MAX airplanes were grounded in the United States.

Read more of this story at Slashdot.

Schneier on Security: Security Risks of Client-Side Scanning

Even before Apple made its announcement, law enforcement shifted their battle for backdoors to client-side scanning. The idea is that they wouldn’t touch the cryptography, but instead eavesdrop on communications and systems before encryption or after decryption. It’s not a cryptographic backdoor, but it’s still a backdoor — and brings with it all the insecurities of a backdoor.

I’m part of a group of cryptographers that has just published a paper discussing the security risks of such a system. (It’s substantially the same group that wrote a similar paper about key escrow in 1997, and other “exceptional access” proposals in 2015. We seem to have to do this every decade or so.) In our paper, we examine both the efficacy of such a system and its potential security failures, and conclude that it’s a really bad idea.

We had been working on the paper well before Apple’s announcement. And while we do talk about Apple’s system, our focus is really on the idea in general.

Ross Anderson wrote a blog post on the paper. (It’s always great when Ross writes something. It means I don’t have to.) So did Susan Landau. And there’s press coverage in the New York Times, the Guardian, Computer Weekly, the Financial Times, Forbes, El Pais (English translation), NRK (English translation), and — this is the best article of them all — the Register. See also this analysis of the law and politics of client-side scanning from last year.

Hackaday: OAK-D Depth Sensing AI Camera Gets Smaller and Lighter

The OAK-D is an open-source, full-color depth sensing camera with embedded AI capabilities, and there is now a crowdfunding campaign for a newer, lighter version called the OAK-D Lite. The new model does everything the previous one could do, combining machine vision with stereo depth sensing and an ability to run highly complex image processing tasks all on-board, freeing the host from any of the overhead involved.

Animated face with small blue dots as 3D feature markers.
An example of real-time feature tracking, now in 3D thanks to integrated depth sensing.

The OAK-D Lite camera is actually several elements together in one package: a full-color 4K camera, two greyscale cameras for stereo depth sensing, and onboard AI machine vision processing with Intel’s Movidius Myriad X processor. Tying it all together is an open-source software platform called DepthAI that wraps the camera’s functions and capabilities together into a unified whole.

The goal is to give embedded systems access to human-like visual perception in real-time, which at its core means detecting things, and identifying where they are in physical space. It does this with a combination of traditional machine vision functions (like edge detection and perspective correction), depth sensing, and the ability to plug in pre-trained convolutional neural network (CNN) models for complex tasks like object classification, pose estimation, or hand tracking in real-time.

So how is it used? Practically speaking, the OAK-D Lite is a USB device intended to be plugged into a host (running any OS), and the team has put a lot of work into making it as easy as possible. With the help of a downloadable application, the hardware can be up and running with examples in about half a minute. Integrating the device into other projects or products can be done in Python with the help of the DepthAI SDK, which provides functionality with minimal coding and configuration (and for more advanced users, there is also a full API for low-level access). Since the vision processing is all done on-board, even a Raspberry Pi Zero can be used effectively as a host.

There’s one more thing that improves the ease-of-use situation, and that’s the fact that support for the OAK-D Lite (as well as the previous OAK-D) has been added to a software suite called the Cortic Edge Platform (CEP). CEP is a block-based visual coding system that runs on a Raspberry Pi, and is aimed at anyone who wants to rapidly prototype with AI tools in a primarily visual interface, providing yet another way to glue a project together.

Earlier this year we saw the OAK-D used in a system to visually identify weeds and estimate biomass in agriculture, and it’s exciting to see a new model being released. If you’re interested, the OAK-D Lite is available at a considerable discount during the Kickstarter campaign.

ScreenAnarchy: LAST STOP ON THE NIGHT TRAIN: Aldo Lado's Revenge Horror Out Now From TetroVideo

If there is one thing you can say about TetroVideo it is even though their extreme content may not be for everyone, for a boutique label they impress with their efforts to really max out the quality of their releases.    Today they are releasing the Italian rape&revenge film Last Stop on the Night Train from director Aldo Lado. This is a Blu-ray release with a restored transfer from the uncensored negative. The Limited and Numbered Editions, 200 in total, also come with a CD soundtrack by the legendar composer himself, Ennio Morricone.   Head on over to TetroVideo and order your copy now!   TetroVideo is proud to announce the release of the famous Last Stop on the Night Train (aka Night Train Murders,...

[Read the whole post on]


ScreenAnarchy: Montreal Nouveau 2021 Review: AFTER BLUE, Succumb to the Desiring Nightmare

Paradis Sale, the original french title of Bertrand Mandico's sophomore feature, translates as 'Dirty Paradise'. And this place isn't exactly a paradise, nor is it dirty. But it is most definitely strange and surreal, filled with intoxication and eroticism, and highly dangerous. After his first feature about wild boys, it seems Mandico (a prolific filmmaker of shorts) wanted to take a proverbial (and literal) walk on the wild side with women. Humans have long since left the earth, finding a new planet to colonize, which they name 'After Blue'. But the planet, it turns out, is hostile to men, and only women (or those with ovaries) survive. The species is maintained through artificial insemination, but society itself has become both beautiful and at times cruel,...

[Read the whole post on]

ScreenAnarchy: NIGHTSTREAM 2021 Announces Audience Awards, THIS IS GWAR Wins Top Honors

Huh. Who knew the Nightstream audience were such softies for heavy metal monster bands? Nightstream wrapped up a couple days ago so all that was left was to tally the votes and announce the audience awards!    The documentary This is Gwar took top honors this year, winning the audience award in the feature film category. Another documentary, Kier-La Janisse’s doc, Woodlands Dark and Days Bewitched: A History of Folk Horror got a runner-up nod, along with Japanese sci-fi comedy Beyond the Infinite Two Minutes.    In regards to the shorts, two films shared top honors this year, Ghost Dogs, from Joe Cappa and Guts from Chris McInroy.    Congrats to all the winners and congrats to the National Alliance To End Homelessness and climate change advocacy...

[Read the whole post on]

Greater Fool – Authored by Garth Turner – The Troubled Future of Real Estate: Not there yet

Friday update. Buckle up.

The cost of money.
Mortgage brokers say the banks are swinging the hammer. Five-year rates will increase to between 2.2% and 2.44%. No big surprise, given the spike in bond yields lately (we showed you the chart two days ago). So, VRMs remain the best deal – at least for a year or so.

But here’s the worry: mortgage volumes exploded by more than 40% year/year in the first half of 2021. Even scarier, the biggest debt swallowers are those with the least financial history – kiddos. The GenZ gang. Mortgage applications from them have doubled. Clearly the newbie buyers are banking on the big price gins of the past five years continuing, to paper over their borrowing binge.

Maybe it’ll happen. Um, maybe not. But the reality is all these folks will have to renew their loans at some point within the next 60 months Rest assured it will not be at 2%. As yammered about here yesterday, inflation is igniting. Wow, look at oil today. Five bucks more than 24 hours ago. Gold is tanking. BTC gamblers are going nuts. Puppies are on sale. What a messed-up world.

High inflation will bring higher rates. As the labour market tightens, wage demands will ensure it. Average families cannot afford average houses, while food and basic essentials are spiraling. Workers at John Deere in the US just figured out that a busted supply chain is their best friend. They’re on strike for a sizeable wage gain, which is likely to be offered. It’s turning into a bad time to be a boss. Employees are so irritating.

So the bond market says six or seven Bank of Canada increases are coming within the next 36 months, adding about 1.5% to existing rates. The prime and HELOCs will be circa 4%, VRMs will clock in at 3.5% and fixed fivers north of that. That will sure makes a difference if you just borrowed $1.4 million to buy a so-so house in the GTA for $2.2 million, after putting almost a million down.


The markets.
Mr. Market went on a tear this week after a few losing sessions. Gone are worries about the supply chain, China, inflation, corporate revenues, Biden’s big-tax agenda, Covid or the S&P at 36 times earnings. It’s the reopening trade, baby. Only 30% of the world has been vaxed, and investors figure the post-pandemic recovery will keep giving for years more.

It’s Q3 earnings season now and Goldman’s profits were squid-sized ginormous. The betting is that oversized demand for goods – houses, appliances, EVs, lumber, electronics – that the virus brought to North America will be replaced with an even bigger appetite for services as Delta retreats. As mentioned here yesterday, the service sector accounted for 70% of the US economy and 60% of Canada’s GDP pre-Covid. Then it collapsed. Now it’s coming back. The sight of 18,000 screaming hockey fans in Toronto the other night is visual proof.

The pandemic is over in Mr. Market’s mind. If you think the Dow at 35,000 is a nosebleed, break out the oxygen. Call the Sherpas! We’re going up.

T2 & the Freelanders
Ten more sleeps until Mr. Socks unveils his new federal cabinet. We know Chrystia will be our non-financial finance minister. We know ministers will be picked carefully by gender, geography and diversity. And we know there will be roughly $80 billion in additional federal spending in the next fiscal year.

Parliament will be recalled in the third week of November. Then a Throne Speech. Then a holiday break. Then the budget. And more taxes.

Blog dog Jesse has a question:

If there is indeed an increase to the cap gains inclusion rate announced early next year, how soon would that go into effect? And thus when would be the optimal time to try and realize any cap gains?

An increase in the capital gains inclusion rate is widely expected by the Street and accountants everywhere. It’s something the NDP has been pushing, and the Libs are philosophically aligned with. Currently half of a gain is tax-free and the rest is added to taxable income. That’s meant the highest rate (for people making $250,000 or more in a single year) has been 26%. So earning in the form of capital gains has been an investment pillar.

What’s likely? Maybe 60%. Or 75% as the new inclusion rate. The actual amount of additional revenue raised by the feds would be modest, since the top 10% of tax filers (by income) account for 70% of the tax raised this way – and because investors can just decide not to crystallize gains.

But it’s the kind of eat-the-rich symbolism that politicians love.

The answer, Jesse: the change would be effective on the day of the budget. Now, never make an investment decision based solely on the potential of a tax change. Instead, act in the pursuit of your goals. But if you plan on cashing in some chips anyway, the next 70 days might be a wise choice.

About the picture: “Please find attached a picture of our fur children,” writes Tim, from Hamilton. “On the left is Henry, a 2 year old Lab / Border Collie mix (so we were told).  On the right is Sophie, an 8 year old St. Bernard / Beagle mix (again so we were told). Thanks again for all of your help over the years.”

Colossal: An Immense New Book Surveys the Work of More Than 300 African Artists

Zanele Muholi, Bhekezakhe, Parktown (2016), gelatin silver print, 50 × 35.9 centimeters. Photo © Zanele Muholi. Stevenson, Amsterdam, Cape Town and Johannesburg, and Yancey Richardson, New York

One of the most expansive volumes of its kind, African Artists: From 1882 to Now compiles a broad sampling of works from more than 300 modern and contemporary artists born or living on the continent. Within its 350-plus pages, the massive text spans a range of mediums and aesthetics, from Mary Sibande’s sprawling postcolonial installations and Wangechi Mutu’s fantastical watercolor collages to the cotton-embroidered photographs by Joana Choumali. The forthcoming volume follows the publisher’s 2019 book Great Women Artists, which gathers works from 400 artists from 54 countries across 500 years, and it’s available for pre-order from Phaidon and Bookshop.


Papa Ibra Tall, “La semeuse d’étoiles (‘The Star Sower’)” (undated), tapestry, 201 × 298 centimeters. Photo © the artist

Kwesi Botchway, “Green Fluffy Coat” (2020), acrylic on canvas, 78.7 × 78.7 centimeters. Photo © the artist, courtesy of Gallery 1957, Accra

Mary Sibande, “A Reversed Retrogress: Scene 1” (2013), lifesize fiberglass mannequins and cotton textile, 180 × 120 × 120 centimeters. Photo © the artist, courtesy of the artist

Michele Mathison, “Breaking Ground” (2014), steel and enamel, 203 × 104 × 40 centimeters. Photo © the artist, courtesy Michele Mathison and WHATIFTHEWORLD

Eddy Kamuanga Ilunga, “Fragile 5” (2018), acrylic and oil on canvas, 187 × 196 centimeters. Photo © the artist, courtesy of the artist and October Gallery, London

John Akomfrah. “Vertigo Sea” (2015). Photo © the artist and Smoking Dogs Films, courtesy of Smoking Dogs Films and Lisson Gallery

Schneier on Security: Friday Squid Blogging: New Giant Squid Video

New video of a large squid in the Red Sea at about 2,800 feet.

As usual, you can also use this squid post to talk about the security stories in the news that I haven’t covered.

Read my blog posting guidelines here.

Saturday Morning Breakfast Cereal: Saturday Morning Breakfast Cereal - Codes

Click here to go see the bonus panel!

Wow, I didn't even have to escalate to the pooping one.

Today's News:

ScreenAnarchy: Friday One Sheet: THE SPINE OF NIGHT

The neo-psychedelic, pink and blue poster for The Spine of Night hits kind of a Twilight Zone on Acid vibe, with a hint of Krull.  Morgan Galen King and Philip Gelat's rotoscoped ultra-violent fantasy film is coming to the end of its festival run, where it recently screened at the Sitges International Film Festival, and about to head to Shudder, where it will likely find the perfect audience for its particular brand of bombast and mayhem. This new key art for the film, follows a trend of weird genre films embracing a neon colour palette. Here fading from space purple to tropical aquamarine. While the poster does not hint at the copious amounts of blood and gore in the film, it still gives of a...

[Read the whole post on]

Colossal: 12,000 Sheets of Wrinkled Rice Paper Drape Around a Monumental Installation by Zhu Jinshi

“Boat” (2015), Xuan (rice) paper, bamboo, cotton threads, 18 x 7 meters. All images courtesy of the artist and Pearl Lam Galleries, shared with permission

More than 12,000 sheets of delicate Xuan paper form the ruffled exterior of Zhu Jinshi’s suspended “Boat” sculpture. The renowned artist, who’s currently living and working in his hometown of Beijing, is widely regarded for pioneering Chinese abstract art, and this monumental installation from 2015 is a reflection of his conceptual, meditative practice.

Spanning 18 meters long and seven meters wide, “Boat” is comprised of wrinkled paper layers draped around bamboo frames. Countless thin cotton threads hold the individual components in place and intersect the curved, tunnel-like form with straight lines that extend vertically to the ceiling. Bisected with a central space for viewers to pass through, the metaphorical work considers the passage of time and space and is an extension of Zhu’s 2007 installation “Wave of Materials” (shown below), which features a single, halved form anchored to the gallery floor with stones.

The artist is exhibiting at West Bund Art and Design 2021 next month and is opening a solo in Shanghai at the end of the year. Until then, explore an archive of his works at Pearl Lam Galleries and on Artsy.


“Boat” (2015), Xuan (rice) paper, bamboo, cotton threads, 18 x 7 meters

Detail of “Boat” (2015), Xuan (rice) paper, bamboo, cotton threads, 18 x 7 meters

Detail of “Boat” (2015), Xuan (rice) paper, bamboo, cotton threads, 18 x 7 meters

“Wave of Materials” (2007), Xuan paper, cotton thread, bamboo, and stones

“Wave of Materials” (2007), Xuan paper, cotton thread, bamboo, and stones

The Universe of Discourse: Calendars change too

I had a conversation with a co-worker about the origin of his name, in which he showed me the original Hungarian birth record of one of his ancestors. (The sample below does not include the line with that record.)

Top top third
of a page from a 19th-century birth register.  The page is ruled into
six labeled columns, and under this three entries are written in
cursive, in Hungarian.  A notation, in the upper left, is written in
print capitals “KULA, HUNGARY”. The scan is high-resolution, but
smudgy and speckled.

I had a fun time digging through this to figure out what it said. As you see, the scan quality is not good. The person writing the records has good handwriting, but not perfect, and not all the letters are easy to make out. (The penmanship of the second and third lines is noticeably better than the first.) Hungarian has letters ö and ő, which are different, but hard to distinguish when written longhand. The printed text is in a small font and is somewhat smudged. For example, what does this say?

A little square box
that reads something like “A' fel adott kéreszt- ségnek”

Is the first letter in the second line an ‘f’ or a long ‘s’? Is “A’” an abbreviation, and if so what for? Is that a diacritical mark over the ‘e’ in the third line, or just a smudge? Except for the last, I don't know, but kereztségnek is something about baptism, maybe a dative form or something, so that column is baptism dates. This resolves one of the puzzles, which is why there are two numbers in the two leftmost columns: one is the birth date and one is the baptism date, and sometimes the baptism was done on a different day. For example, in the third line the child Mátyás (“Matthew”) was born on the 5th, and baptized on the 6th.

But the 6th of what? The box says “1845 / something” and presumably the something is the name of the month.

A little square
box with handwritten cursive Hungarian that reads something like “1845
Bójkelo kó 2 2”

But I couldn't quite make it out (Bójkeló kó maybe?) and Google did not find anything to match my several tries. No problem, I can go the other direction: just pull up a list of the names of the months in Hungarian and see which one matches.

That didn't work. The names of the months in Hungarian are pretty much the same as in English (január, február, etc.) and there is nothing like Bójkeló kó. I was stuck.

But then I had a brainwave and asked Google for “old hungarian month names”. Paydirt! In former times, the month of February was called böjt elő hava, (“the month before fast”; hava is “month”) which here is abbreviated to Böjt elő ha’.

So that's what I learned: sometime between 1845 and now, the Hungarians changed the names of the months.

This page at fromhungarywithlove says that these month names were used from the 16th century until “the first third of the 20th century”.

[ The “Hungarian Puzzle” you may have seen mentioned in the subject line has been postponed until tomorrow's article. ]

Planet Haskell: Mark Jason Dominus: Calendars change too

I had a conversation with a co-worker about the origin of his name, in which he showed me the original Hungarian birth record of one of his ancestors. (The sample below does not include the line with that record.)

Top top third of a page from a 19th-century birth register.  The page is ruled into six labeled columns, and under this three entries are written in cursive, in Hungarian.  A notation, in the upper left, is written in print capitals “KULA, HUNGARY”. The scan is high-resolution, but smudgy and speckled.

I had a fun time digging through this to figure out what it said. As you see, the scan quality is not good. The person writing the records has good handwriting, but not perfect, and not all the letters are easy to make out. (The penmanship of the second and third lines is noticeably better than the first.) Hungarian has letters ö and ő, which are different, but hard to distinguish when written longhand. The printed text is in a small font and is somewhat smudged. For example, what does this say?

A little square box that reads something like “A' fel adott kéreszt- ségnek”

Is the first letter in the second line an ‘f’ or a long ‘s’? Is “A’” an abbreviation, and if so what for? Is that a diacritical mark over the ‘e’ in the third line, or just a smudge? Except for the last, I don't know, but kereztségnek is something about baptism, maybe a dative form or something, so that column is baptism dates. This resolves one of the puzzles, which is why there are two numbers in the two leftmost columns: one is the birth date and one is the baptism date, and sometimes the baptism was done on a different day. For example, in the third line the child Mátyás (“Matthew”) was born on the 5th, and baptized on the 6th.

But the 6th of what? The box says “1845 / something” and presumably the something is the name of the month.

A little square box with handwritten cursive Hungarian that reads something like “1845 Bójkelo kó 2 2”

But I couldn't quite make it out (Bójkeló kó maybe?) and Google did not find anything to match my several tries. No problem, I can go the other direction: just pull up a list of the names of the months in Hungarian and see which one matches.

That didn't work. The names of the months in Hungarian are pretty much the same as in English (január, február, etc.) and there is nothing like Bójkeló kó. I was stuck.

But then I had a brainwave and asked Google for “old hungarian month names”. Paydirt! In former times, the month of February was called böjt elő hava, (“the month before fast”; hava is “month”) which here is abbreviated to Böjt elő ha’.

So that's what I learned: sometime between 1845 and now, the Hungarians changed the names of the months.

This page at fromhungarywithlove says that these month names were used from the 16th century until “the first third of the 20th century”.

[ The “Hungarian Puzzle” you may have seen mentioned in the subject line has been postponed until tomorrow's article. ]

ScreenAnarchy: Interview: Bruce Campbell Might Be the Hardest Working Actor in Hollywood

Bruce Campbell is that rare breed of actor who has the looks of a classic matinee idol but the soul of a character actor. In a career that has spanned over four decades, he has conquered every genre you can think of; there is nothing he can’t do. At age 63, when most people are planning their retirement, Campbell is reinventing himself. Not one to sit idle, he has been extremely busy throughout the pandemic working on various productions. Over the summer of 2020, he did voicework on Dan Mirvish’s darkly comedic Watergate era thriller, 18 1/2 .The actor portrayed President Richard M. Nixon for the indie film director. Following that experience, he landed a role in Casey Tebo’s upcoming holiday horror flick, Black Friday,...

[Read the whole post on]

Penny Arcade: News Post: Shot Caller

Tycho: Somebody claiming they aren't going to the thing I specifically disinvited them from isn't some kinda savvy rhetorical judo. I've read a lot of stuff about vaccines online - I've seen several extended club remixes of paranoid conspiracy, ones that begin by scaffolding out some reasonable concept until it curdles about thirty percent of the way through into Space Lizards or Neuralink or some shit. It sounds stupid, and when the middle part of your mail is a different font size because you pasted in a bunch of International Laws I'm supposedly breaking I'm not…

Penny Arcade: Comic: Shot Caller

New Comic: Shot Caller

Colossal: Drawings and Paintings by Pat Perry Reinterpret American Stories with Tender Absurdity

“Recital XII” (2021), acrylic on panel, framed, 26 x 48 inches. All images courtesy of Hashimoto Contemporary, shared with permission

In Pat Perry’s Sensemaking, there’s no rubric for telling a story. In quiet scenes framed through roadside vantage points and performances of costumed figures and contemporary symbols, the Detroit-based artist (previously) considers the deeply American tendency to configure the world with single, flat narratives. Perry takes an opposing approach, though, and instead layers his pieces with contradiction, complexity, and unusual details that reflect the current moment.

Rendered in subtle color palettes, his drawings and paintings pull from the visual lexicon of Midwestern life (i.e. children playing on pipe abandoned in a field or a lone figure sitting at a card table on the sidewalk), although they contain imaginative twists and nuanced social commentary: swimming pools sit below an underpass, banners display Craigslist ads, and fleeting social media trends are printed on large posters. “These paintings and drawings offer a joyful glimpse into an invented world; one that’s closely related to the one right in front of us; one that we so often struggle to see clearly and make sense of,” a statement about the series says.


Sensemakers” (2021), acrylic on panel, framed, 48 x 57 inches

In a lengthy essay published by Juxtapoz back in August, Perry elaborates on the impetus for his latest works, which center around a broad theme of flawed logic. He revists his attempts to understand the world through the lens of his religious childhood in Michigan and later, the anarchic ideologies that guided his early adult years, and the two conflicting narratives profoundly impact the artist’s approach today. “Chapter Three of my life so far has had something to do with recognizing that truly lessening suffering maybe has less to do with understanding the world, or playing an oversized role in it. It may not be about constantly ‘using my voice,'” he writes.

Sensemaking, which features dozens of new paintings, charcoal drawings, and works in acrylic and pen, is on view from October 6 through November 16 at Hashimoto Contemporary in New York, and you can follow Perry’s work on Instagram.


“Recital XIII” (2021), acrylic on panel, framed, 48 x 54 inches

“River Friends” (2021), acrylic on panel, framed, 49 x 64 inches

“Black Square” (2021), acrylic on panel, framed, 42 x 48 inches

“Video Wishing Well” (2021), acrylic on panel, framed, 20 x 20 inches

“NPC Melek Taus” (2021), acrylic on panel, framed, 29 x 54 inches

“Indexers 1” (2021), acrylic, pencil, and pen, framed, 22 x 30 inches

“Glossary” (2021), acrylic, pencil, and pen, framed, 22 x 30 inches

“Indexers 2” (2021), acrylic, pencil, and pen, framed, 22 x 30 inches

Tea Masters: Shan Lin Xi winter petals

Later today (Friday 9:30 PM US Eastern), I will do a second tea class about the scents of tea. For this time, I will focus on the scents of the brew. What are the different techniques to smell the brew? How you can use the scent of the brew to improve your brew? What are the different moments we can smell the brew?.... If you can't attend my live class, I hope you'll enjoy the replay on my YouTube channel.
Speaking of tea fragrances, if you are looking for a fresh Oolong where the scents prevail over the taste, I recommend this Shan Lin Xi Dong Pian (= winter petals). This high mountain Oolong is the product of a rare event: a late harvest after the regular winter crop. This is pretty common in lower elevations in Taiwan, thanks to its subtropical climate. However, the higher we go, the colder it gets and the more difficult it is for tea leaves to grow during the cold months of the year. Shan Lin Xi Dong Pian is so rare that it's the first batch I ever selected in my online boutique!
As you can see in these pictures taken outdoors, in the Lin Garden of Banciao, the color of the brew is mesmerizingly clear and shiny! The brew has fresh fragrances of osmanthus flowers. And it tastes wonderfully pure and sweet. And these light, natural scents are very persistent. After almost a year of storage in vacuum sealed bags, the freshness is still 100% there! Despite this fact, I have reduced the price by 10% and this exceptional tea is now sold at only 10,8 USD for 25 grams! In a world where everything is becoming more and more expensive, I'm doing my best to bring you the best quality in teas from Taiwan at competitive prices! 
Enjoy the scents of Taiwan and the energy of the high mountain of Shan Lin Xi!

Charles Petzold: Concert Diary: Brahms and the Schumanns with the New York Philharmonic


... more ...

Ideas: Tangled Roots: A History of Black Hair

From pre-colonial Africa till now, Black hair has shifted in its meaning and become highly politicized, particularly in Western society. And today, Black women's hair continues to have an enormous bearing on how they are able to move through the world. IDEAS looks back on the story of Black hair, and what it tells us about the Black female experience throughout history. *This episode originally aired on January 28, 2021.

Open Culture: A Sneak Peek of Peter Jackson’s New Beatles Documentary Get Back: Watch the New Trailer

In much the same way David Lynch gave us way more Twin Peaks than we’d ever hoped for in 2017, Peter Jackson and the Beatles are giving us nothing like the little seen and quickly shelved Let It Be documentary from 1970, but a full six hours of the final musical works of the Beatles. Premiering on Disney Plus (yes, I know, you gotta pay money to the Mouse) over three days after Thanksgiving, this six-hour series is the big one fans of the various remasters, repackages, and remixes have been waiting for.

The Get Back sessions have long been a sour note in a career that was mostly joyous. Appearing over and over again in bootleg form, the various jam sessions, cover versions, and rehearsals through the songs that would turn up on Abbey Road and Let It Be can be grim listening. (I know, I’ve listened to a lot of it. The Beatles practicing is just as tedious as any other band working through songs.) The general narrative is that the acrimony among the band members, the wraith-like presence of Yoko Ono, and Paul’s relentlessly upbeat badgering of everybody else caused the world’s most famous band to break up. Abandoning the project, they performed some of the songs on a Saville Row rooftop, and the rest was left up to the lawyers (and Phil Spector) to sort out.

Jackson’s Get Back, made with the blessings of the surviving Beatles, intends to upend that narrative.

“The thing is, when the film was released, The Beatles were breaking up, but they weren’t breaking up when they were making Let It Be, which was recorded a year earlier,” Jackson told GQ Magazine. “So I suppose it would have been odd to release a film where they are all enjoying each other’s company.”

The acrimony only set in later, when Allen Klein became their manager, he added.

This is Beatles as a family, and families argue, joke about, and get down to family business.

Honing the techniques Jackson used to bring to life old World War I footage in They Shall Not Grow Old, the film takes the 57 hours of footage shot by Michael Lindsay-Hogg and makes it look like it was shot yesterday. The colors you see in the trailer, however, have not been altered. “I mean, it does make you jealous of the 1960s, because the clothing is so fantastic,” Jackson said.

The album Let It Be always had the shadow of a bad breakup over it, but for newer generations, that may no longer be the case after this documentary drops next month.

Related Content:

The Beatles’ 8 Pioneering Innovations: A Video Essay Exploring How the Fab Four Changed Pop Music

A Virtual Tour of Every Place Referenced in The Beatles’ Lyrics: In 12 Minutes, Travel 25,000 Miles Across England, France, Russia, India & the US

How Peter Jackson Made His State-of-the-Art World War I Documentary, They Shall Not Grow Old: An Inside Look

Ted Mills is a freelance writer on the arts who currently hosts the Notes from the Shed podcast and is the producer of KCRW’s Curious Coast. You can also follow him on Twitter at @tedmills, and/or watch his films here.

A Sneak Peek of Peter Jackson’s New Beatles Documentary Get Back: Watch the New Trailer is a post from: Open Culture. Follow us on Facebook and Twitter, or get our Daily Email. And don't miss our big collections of Free Online Courses, Free Online Movies, Free eBooksFree Audio Books, Free Foreign Language Lessons, and MOOCs.


BOOOOOOOM! – CREATE * INSPIRE * COMMUNITY * ART * DESIGN * MUSIC * FILM * PHOTO * PROJECTS: “Girl Talk” by Photographer Reese Herrington

Open Culture: The Bombing of Pompeii During World War II

In 79 AD, 17-year-old Gaius Plinius Caecilius Secundus, known as Pliny the Younger, gazed across the Bay of Naples from his vacation home in Misenum and watched Mount Vesuvius erupt. “Darkness fell, not the dark of a moonless or cloudy night,” Pliny wrote in his eyewitness account — the only surviving such document — “but as if the lamp had been put out in a dark room.” Unbeknownst to Pliny and his famous uncle, Pliny the Elder, admiral of the Roman navy and revered naturalist, hundreds of lives were also snuffed out by lava, clouds of smoke and ash, and temperatures in the hundreds of degrees Fahrenheit. The Elder Pliny launched ships to attempt an evacuation. In the morning, he was found dead, likely from asphyxiation, along with over two thousand residents of Pompeii and Herculaneum.

When the buried town was first unearthed, a new cycle of witness, death, and resurrection began. “Since its rediscovery in the mid-18th century,” writes National Geographic, “the site has hosted a tireless succession of treasure hunters and archeologists,” not to mention tourists — starting with aristocratic gentlemen on their Grand Tour of Europe. In 1787, Goethe climbed Vesuvius and gazed into its crater. “He recorded with disappointment that the freshest lava was already five days old, and that the volcano neither belched flame nor pelted him with stones,” writes Amelia Soth in an article about “Pompeii Mania” among the Romantics, a passion that culminated in Edward Bulwer-Lytton’s 1834 potboiler, The Last Days of Pompeii, “hands-down the most popular novel of the age.”

Bulwer-Lytton’s book “had such a dramatic impact on how we think about Pompeii,” the Getty writes, that the museum named an exhibition after it that features — unlike so many other histories — Pompeii’s 20th century “apocalypse”: an Allied bombing raid in the autumn of 1943 that damaged nearly every part of the site, including “some of Pompeii’s most famous monuments, as well as its museum.” As Nigel Pollard shows in his book Bombing Pompeii, over 160 Allied bombs hit Pompeii in August and September. Few tourists who now flock to the site know how much of the ruins have been rebuilt since then. “Only recently have the literature and the scientific community paid due attention to these dramatic events, which constitute a fundamental watershed in the modern history of the site,” writes archeologist Silvia Bertesago.

A Pliny of his time (an Elder, given his decades of scientific accomplishment), Pompeii’s superintendent, archeologist Amedeo Maiuri, “accelerated the protection of buildings and moveable items” in advance of the bombing raids. But “who will save monuments, houses and paintings from the fury of the bombardments?” he wrote. Maiuri had warned of the coming destruction, and when false information identified the slopes of Vesuvius as a German hideout, the longest-running archeological excavation in the world became “a real target of war…. The first bombing of Pompeii took place on the night of August 24 1943…. Between August 30 and the end of September, several other raids followed by both day and night…. No part of the excavations was completely spared.”

Maiuri chronicled the destruction, writing:

It was thus that from 13 to 26 September Pompeii suffered its second and more serious ordeal, battered by one or more daily attacks: during the day flying low without fear of anti-aircraft retaliation; at night with all the smoke and brightness of flares […]. During those days no fewer than 150 bombs fell within the excavation area, scattered across the site and concentrated where military targets were thought to be.

Himself wounded in his left foot by a bomb, Maiuri helped draw up a list of 1378 destroyed items and over 100 damaged buildings. Hasty, emergency rebuilding in the years to follow would lead to the use of “experimental materials” like reinforced concrete, which “would later prove incompatible with the original materials” and itself require restoration and repair. The ruins of Pompeii were rebuilt and resurrected after they were nearly destroyed a second time by fire from the sky — this time entirely an act of humankind. But the necropolis would have its revenge. The following year, Vesuvius erupted, destroying nearly all of the 80 B-25 bombers and the Allied airfield at the foot of the mountain.

In the video above, you can learn more about the bombing of Pompeii. See photographs of the destruction at Pompeii Commitment and at the Getty Museum, which features photos of Pompeiian sites destroyed by bombing side-by-side with color images of the rebuilt sites today. These images are dramatic, enough to make us pay attention to the seams and joints if we have the chance to visit, or revisit, the famous archeological site in the future. And we might want to ask our guide if we can see not only the ruins of the natural disaster, but also the multiple undetonated bombs from the “apocalypse” of World War II.

Related Content

Watch the Destruction of Pompeii by Mount Vesuvius, Re-Created with Computer Animation (79 AD)

Pompeii Rebuilt: A Tour of the Ancient City Before It Was Entombed by Mount Vesuvius

A Drone’s Eye View of the Ruins of Pompeii

Josh Jones is a writer and musician based in Durham, NC. Follow him at @jdmagness

The Bombing of Pompeii During World War II is a post from: Open Culture. Follow us on Facebook and Twitter, or get our Daily Email. And don't miss our big collections of Free Online Courses, Free Online Movies, Free eBooksFree Audio Books, Free Foreign Language Lessons, and MOOCs. Comic for 2021.10.15

New Cyanide and Happiness Comic

Disquiet: Disquiet Junto Project 0511: Freeze Tag

Each Thursday in the Disquiet Junto group, a new compositional challenge is set before the group’s members, who then have just over four days to upload a track in response to the assignment. Membership in the Junto is open: just join and participate. (A SoundCloud account is helpful but not required.) There’s no pressure to do every project. It’s weekly so that you know it’s there, every Thursday through Monday, when you have the time.

Deadline: This project’s deadline is the end of the day Monday, October 18, 2021, at 11:59pm (that is, just before midnight) wherever you are. It was posted on Thursday, October 14, 2021.

These are the instructions that went out to the group’s email list (at

Disquiet Junto Project 0511: Freeze Tag
The Assignment: Consider freezing (and thawing) as a metaphor for music production.

Step 1: One secret to cooking is freezing. Certain things, like chili for example, often taste better after spending time in the freezer. Technically, it isn’t just freezing that can intensify the flavors. It’s the thawing, too. Think about how that freezing (and thawing) might be employed metaphorically as a music production process.

Step 2: Record a new piece of music or rework an existing one based on your consideration of freezing (and thawing) as a metaphor in Step 1 above.

Seven More Important Steps When Your Track Is Done:

Step 1: Include “disquiet0511” (no spaces or quotation marks) in the name of your tracks.

Step 2: If your audio-hosting platform allows for tags, be sure to also include the project tag “disquiet0511” (no spaces or quotation marks). If you’re posting on SoundCloud in particular, this is essential to subsequent location of tracks for the creation of a project playlist.

Step 3: Upload your tracks. It is helpful but not essential that you use SoundCloud to host your tracks.

Step 4: Post your track in the following discussion thread at

Step 5: Annotate your track with a brief explanation of your approach and process.

Step 6: If posting on social media, please consider using the hashtag #DisquietJunto so fellow participants are more likely to locate your communication.

Step 7: Then listen to and comment on tracks uploaded by your fellow Disquiet Junto participants.

Note: Please post one track for this weekly Junto project. If you choose to post more than one, and do so on SoundCloud, please let me know which you’d like added to the playlist. Thanks.

Additional Details:

Deadline: This project’s deadline is the end of the day Monday, October 18, 2021, at 11:59pm (that is, just before midnight) wherever you are. It was posted on Thursday, October 14, 2021.

Length: The length of your finished track is up to you. Depends if you use a microwave.

Title/Tag: When posting your tracks, please include “disquiet0511” in the title of the tracks, and where applicable (on SoundCloud, for example) as a tag.

Upload: When participating in this project, be sure to include a description of your process in planning, composing, and recording it. This description is an essential element of the communicative process inherent in the Disquiet Junto. Photos, video, and lists of equipment are always appreciated.

Download: It is always best to set your track as downloadable and allowing for attributed remixing (i.e., a Creative Commons license permitting non-commercial sharing with attribution, allowing for derivatives).

For context, when posting the track online, please be sure to include this following information:

More on this 511th weekly Disquiet Junto project — Freeze Tag (The Assignment: Consider freezing (and thawing) as a metaphor for music production) — at:

More on the Disquiet Junto at:

Subscribe to project announcements here:

Project discussion takes place on

There’s also a Disquiet Junto Slack. Send your email address to for Slack inclusion.

The image associated with this project is by Jay Wilson, and used thanks to Flickr and a Creative Commons license allowing editing (cropped with text added) for non-commercial purposes:

Open Culture: William Shatner in Tears After Becoming the Oldest Person in Space: ‘I’m So Filled with Emotion … I Hope I Never Recover from This”

Yesterday Star Trek‘s William Shatner, now 90 years old, finally became a Rocket Man, taking a trip to space. And upon his return he said: “I hope I never recover from this.” “I’m so filled with emotion about what just happened. It’s extraordinary, extraordinary. It’s so much larger than me and life. It hasn’t got anything to do with the little green men and the blue orb. It has to do with the enormity and the quickness and the suddenness of life and death.” “To see the blue color whip by you, and now you’re staring into blackness … everybody in the world needs to do this. Everybody in the world needs to see this.” What. A. Trip.

Would you like to support the mission of Open Culture? Please consider making a donation to our site. It’s hard to rely 100% on ads, and your contributions will help us continue providing the best free cultural and educational materials to learners everywhere.

Also consider following Open Culture on Facebook and Twitter and sharing intelligent media with your friends. Or sign up for our daily email and get a daily dose of Open Culture in your inbox. 

Related Content

A Cult Classic: William Shatner Sings Elton John’s “Rocket Man” at 1978 SciFi Awards Show

Watch City Out of Time, A Short Tribute to Venice, Narrated by William Shatner in 1959

William Shatner Narrates Space Shuttle Documentary

William Shatner in Tears After Becoming the Oldest Person in Space: ‘I’m So Filled with Emotion … I Hope I Never Recover from This” is a post from: Open Culture. Follow us on Facebook and Twitter, or get our Daily Email. And don't miss our big collections of Free Online Courses, Free Online Movies, Free eBooksFree Audio Books, Free Foreign Language Lessons, and MOOCs.

Planet Lisp: TurtleWare: How do you DO when you do DO?

In this short post I'll explain my understanding of the following quote describing the iteration construct do:

The Common Lisp do macro can be thought of as syntactic sugar for tail recursion, where the initial values for variables are the argument values on the first function call, and the step values are argument values for subsequent function calls.

-- Peter Norvig and Kent Pitman, Tutorial on Good Lisp Programming Style

Writing a recursive function usually involves three important parts:

  1. The initial values - arguments the programmer passes to the function
  2. The base case - a case when function may return without recurring
  3. The step values - arguments the function passes to itself when recurring

An example of a recursive function is this (inefficient) definition:

(defun fib (n)
    ((= n 0) 0)
    ((= n 1) 1)
    (t (+ (fib (- n 1))
          (fib (- n 2))))))

The initial value here is n, base cases are (= n 0) and (= n 1) and step values are (- n 1) and (n 2).

To make a function tail-recursive there is one more important requirement: the subsequent function call must be in a tail position, that is it must be the last function called. The definition above is not tail-recursive, because we first need to call the function and then add results. A proper tail-recursive version requires little gimnastic:

(defun fib* (n)
  (labels ((fib-inner (n-2 n-1 step)
             (if (= step n)
                 (+ n-2 n-1)
                 (fib-inner n-1
                            (+ n-2 n-1)
                            (1+ step)))))
      ((= n 0) 0)
      ((= n 1) 1)
      (t (fib-inner 0 1 2)))))

The initial values are 0, 1 and 2, the base case is (= step n) and the step values are n-1, (+ n-2 n-1) and (1+ step). The function fib-inner is in tail position because there is no more computation after its invocation.

A quick remainder how do works:

(do ((a 1 (foo a))
     (b 3 (bar b)))
    ((= a b) 42)
  (side-effect! a b))

First assign to a and b the initial values 1 and 3, then check for the base case (= a b) and if true return 42, otherwise execute the body (side-effect! a b) and finally update a and b by assigning to them the step values (foo a) and (foo b). Then repeat from checking the base case. The last step could be equaled to an implicit tail-call of a function. Let's put it now in terms of the function we've defined earlier:

(defun fib** (n)
    ((= n 0) 0)
    ((= n 1) 1)
    (t (do ((n-2 0 n-1)
            (n-1 1 (+ n-2 n-1))
            (step 2 (1+ step)))
           ((= step n)
            (+ n-2 n-1))))))

This do form is a direct translation of the function fib-inner defined earlier.

I hope that you've enjoyed this short explanation. If you did then please let me know on IRC - my handle is jackdaniel @

Quiet Earth: Bruce Willis Stars in Scifi Actioner APEX [Trailer]

Check out the debut trailer for Apex, a new sci-fi re-imagining of The Most Dangerous Game starring Neal McDonough and Bruce Willis.

Serving a life sentence for a crime he didn’t commit, ex-cop Thomas Malone is offered a chance at freedom if he can survive a deadly game of Apex.

Six hunters pay for the pleasure of hunting another human on a remote island, but once Malone arrives all hell breaks loose. Laying traps and playing mind games, Malone tries to turn the tables and fight for his life and his future.

The film hits theaters and on Demand and Digital - November 12, 2021.

[Continued ...]

Quiet Earth: Trailer for Harrowing Kidnapping Thriller SHUT-IN

Shut-In, the hotly anticipated new thriller from DJ Caruso (Disturbia and Eagle Eye) has debuted a new trailer.

This film is based on a Black List script from Melanie Toast and was produced by Bone Tomahawk's Dallas Sonnier.

The riveting thriller stars Rainey Qualley as a young single mother who is held captive along with her two children by a violent ex as she plots their escape before it’s too late.

Check [Continued ...]

Open Culture: 136 Paintings by Gustav Klimt Now Online (Including 63 Paintings in an Immersive Augmented Reality Gallery)

At the end of World War II the Nazis burned an Austrian castle full of masterpieces, including three paintings by Gustav Klimt entitled Philosophy, Medicine, and Jurisprudence. Called the “Faculty Paintings,” these were commissioned by the University of Vienna for the ceiling of its Great Hall in 1900, then, upon completion seven years later, were deemed pornographic and never exhibited. Until now, they were preserved for posterity only in black and white photographs.

Thanks to cutting edge art restoration AI, the monochromatic images of Klimt’s Faculty Paintings have been reconstructed in color. They are now on display in an online gallery of 130 paintings, plus a virtual exhibition of 63 of the artist’s works, all brought together by Google Arts & Culture and appropriately called Klimt vs. Klimt. It’s a retrospective exploring the artist’s many contradictions. Was he a “scholar or innovator? Feminist or womanizer? Famous artist or humble craftsman? The answer, in most cases, is both,” notes Google. There’s more, of course, given the venue, as Art Daily explains:

The exhibition features an immersive Augmented Reality Pocket Gallery, which digitally organizes 63 of Klimt’s masterworks under a single roof. Audiences can virtually walk the halls of the gallery space at scale and zoom in on the paintings’ fine ornamentation and pattern, characteristic of Klimt’s practice, made possible by the digitization of his iconic artworks in ultra-high resolution.

With respect to the first pair of oppositions (that is, scholar or innovator?), Klimt was assuredly both, though not exactly at the same time. Trained as an architectural painter at the University of Applied Arts in Vienna, his early work is solidly academic — realist, formal, classical and conservative.

So conservative an artist was Klimt, in fact, he was elected an honorary member of the University of Munich and the University of Vienna, and in 1888 Klimt received the Golden Order of Merit from Austrian Emperor Franz Josef I … before, that is, his work was judged obscene — a judgment that did surprisingly little to hinder Klimt’s career.

At the end of the 19th century, Klimt abruptly shifted focus, particularly after the death of his artist brother Ernst and his father, a gold engraver, in 1892. He became a founding member of the Vienna Secession movement, producing some of his most famous Symbolist works during his “Golden Phase,” when many of his works contained real gold leaf in tribute not only to his father but to the Byzantine art he saw during visits to Venice and Ravenna. This was the height of Klimt’s career, when he produced such works as The KissThe Embrace, and Fulfillment and Expectation, “probably the ultimate stage of my development of ornament,” he said.

In many ways, Klimt embodied contradiction. An admirer of society and luxury, he also spurned company, turned away all visitors, and spending so much time painting landscapes during summer holidays that locals called him Waldschrat, “forest demon.” Renowned for his sexual adventurousness (he supposedly fathered 14 children), Klimt was also an intensely focused and isolated individual. In a piece entitled “Commentary on a Non-Existent Self-Portrait,” he writes:

I have never painted a self-portrait. I am less interested in myself as a subject for a painting than I am in other people, above all women… There is nothing special about me. I am a painter who paints day and day from morning to night… Whoever wants to know something about me… ought to look carefully at my pictures.

Look carefully at an online gallery of Klimt’s works here. And see the immersive Augmented Reality gallery here.


Related Content: 

Gustav Klimt’s Masterpieces Destroyed During World War II Get Recreated with Artificial Intelligence

Gustav Klimt’s Iconic Painting The Kiss: An Introduction to Austrian Painter’s Golden, Erotic Masterpiece (1908)

Gustav Klimt’s Haunting Paintings Get Re-Created in Photographs, Featuring Live Models, Ornate Props & Real Gold

Josh Jones is a writer and musician based in Durham, NC. Follow him at @jdmagness

136 Paintings by Gustav Klimt Now Online (Including 63 Paintings in an Immersive Augmented Reality Gallery) is a post from: Open Culture. Follow us on Facebook and Twitter, or get our Daily Email. And don't miss our big collections of Free Online Courses, Free Online Movies, Free eBooksFree Audio Books, Free Foreign Language Lessons, and MOOCs.

Greater Fool – Authored by Garth Turner – The Troubled Future of Real Estate: The fade

In a normal world (remember that?) 70% of the economy is derived from spending on services. But when a virus hits and lockdowns happen, everything can change. And it did.

The last 18 months brought serious nesting, home renos, new hot tubs, boxes of stuff from Amazon and Wayfair, furniture buys, electronics and (especially) laptops, computerized kitchen appliances and puppies. Lots and lots of puppies. The amount we shoveled into restaurants, airlines, child care, haircuts and clothing stores plunged.

Now the pandemic is ending. The supply chain is a mess. Factories that had to close for a while because of Covid can’t keep up with demand. Look at semiconductors. The car guys can’t get enough to make vehicles. Apple just announced iPhone production will drop by ten million units. No chips. No phones.

Demand is shifting back into services and prices are exploding there, too. Lumber and golden retrievers may cost less than last year, but energy is surging. So food will cost more, along with gasoline, natgas and everything made from oil. The implications for your finances, portfolio and retirement are growing more profound. Are you ready?

It continues. Oil is over $80 a barrel and on its way to a hundred bucks, many believe. Gasoline prices have hit all-time highs in much of the country. There’s an acute shortage of natural gas as the global recovery sucks off supplies. Electricity costs are going up, since these fuels (and coal) are used to make it. Energy is one of the biggest components of inflation. It’s bordering on being out of control.

And look at China. The world’s biggest exporter. Second-largest economy. Power shortages there cut factory production in 20 provinces last month. Prices are rising at the fastest clip in 26 years. Bad news for Wal-Mart shoppers. Official inflation in the States is 5.4% and in Canada’s it’s at 4.2% – far above the Bank of Canada’s target rate of 1-3%.

Economists here figure our CB will let inflation run hot since ruining the fortunes of retirees is less of a danger than crippling the post-Covid economic recovery. The Bank of Canada’s cryptic boss, Tiff Macklem, has downplayed the surge, saying this is all ‘transitory.’ This week the head of RBC disagreed. No wonder. At over 4% inflation is the highest in two decades and, in reality, the sting is far worse than that. Look at housing prices. Insurance rates. A litre of gas. Tomatoes.

The central bank’s mandate is being renewed this year and the T2 gang has to decide to up the inflation ceiling or leave it be (at 2%). In other words, should the BoC let inflation rage in order to assure more growth and jobs, or start chilling with rate hikes? If you’re retired and living on fixed income – like a DB pension or GICs – it’s a simple ask. Quell prices and grow interest. But for working and mortgaged Canadians the desire is for exactly the opposite.

The bottom line is simple. Inflation erodes the value of money. Your income buys less. Purchasing power is destroyed. The ‘inflation protection’ baked into pensions, union contracts, CPP or OAS is a joke, based on the official estimates. So far it looks like Tiff will turn a blind eye to this. CB rate hikes are not expected to click in until the second half of next year.

What to do about it?

Crypto and Bitcoin have been on a tear while the supply chain flounders and inflation rages. But these assets are backed by nothing, are prone to fraud, essentially unregulated and immensely volatile. Many believe BTC will ultimately go to nothing and be the world’s biggest financial scam. Put your pennies here in retirement? Fuggedaboutit.

Gold has been a traditional inflation edge, but bullion pays neither interest nor dividends and has performed poorly during the entire pandemic. Oil’s proven to be a far better bet as the world economy rekindles, and a decent way to gain exposure is through an ETF that owns the Toronto stock market – where commodity exposure is high.

Real estate has inflated wildly, but more due to emotion, FOMO and WFH than demand as a hedge against rising costs. The threats are current over-valuations and the certainty of higher mortgage rates in the next few years. Unless there’s a big move up in incomes, there could be a serious correction in house values.

Equities give excellent inflation protection, but also being danger. For example, the FAANG guys are intensely interest-rate sensitive and could be impacted as CBs eventually more to normalize rates. Banks, on the other hand, like hikes in interest. Overall, having a broad diversification, through ETFs that own an entire market (like the S&P500) is a wise move in times like these. Ditto for REITs. Real estate investment trusts offer the intrinsic inflation-protection of that asset class, along with tax-advantaged distributions.

And speaking of tax, these are the days to ensure no room in a TFSA or RRSP goes unfilled. Remember if inflation is 4% and you need 4% growth to fund your needs, then assets must grow by 8%. So shelter them from tax. Income-split with your squeeze. Fund your adult kids’ tax-free accounts. Have a spousal RRSP. Considering investing some home equity with tax-deductible interest.

GICs and HISAs? Nope, Losers. Move some of that loot into preferred shares instead. The rate reset kind, through an ETF. They rise in value as interest rates increase. More stable than common stock. They pay a regular dividend two or three times greater than a GIC. And you get a tax credit. Everything but a hug & a tickle, both of which are apparently now illegal.

About the picture: “I’m a long time reader if your blog. Thanks for continuing to beat the B&D drum,” writes Michael. “Every time I get the itch to day trade or pour all of my money into bitcoin, your latest post appears and reminds me to stay the sensible course. I’ve attached a picture of Hutch, my wonderful Great Dane who left us yesterday after 9.5 years. This photo is from years ago. When we took him for what would be his last trip to the vet, he was clumsy, drooly and gassy – and I miss him terribly. The house just isn’t the same without him. I would be honoured to have his picture appear on your blog. “

Colossal: Fantastical Digital Paintings Position Wildlife in Unnaturally Colorful Environments

All images courtesy of Grove Square Galleries, shared with permission

Photographic artist Jim Naughten casts a fantastical, candy-colored lens over luxuriant ecosystems and surreal animal portraits in Eremozoic, a solo exhibition on view at Grove Square Galleries through November 18. Comprised of digitally altered compositions, the series centers on rhinos, manatees, and myriad wild animals in strange, unearthly settings: a tall brown bear stands on its hind legs in a field of bright pink grass, a gorilla rests in similarly vibrant foliage, and orangutans swing through leafy branches in shades of blue.

While the animals usually are isolated in true color, the backdrops evoke infrared photography, and Naughten’s unnatural alterations tinge the otherwise realistic imagery with magical elements. The artist says the manipulations convey humanity’s ever-growing disconnect with the environment, which he explains in a statement:

I’m interested in how, in the evolutionary blink of an eye, humans have come to dominate and overwhelm the planet and how far our relationship with the natural world has fundamentally and dangerously shifted from that of our ancestors. I hope the work will create awareness and discourse about this disconnection, our fictionalized ideas about nature and possibilities for positive change.

Although the pieces venture into a strange realm of kaleidoscopic details, they have biological reality at their core, and the exhibition title, Eremozoic, refers to the current era of the earth’s evolution. Biologist and writer E. O. Wilson introduced the term to characterize this “period of mass extinction due to human activity. The Eremozoic Age is alternatively referred to as The Age of Loneliness, and this sense of dislocation and disorientation is captured in Naughten’s depiction of nature as an unfamiliar, unnatural realm.”

In addition to the collection shown here, Naughten shares a variety of otherworldly renderings on his site and Instagram. (via Creative Boom)


Planet Haskell: Brent Yorgey: Competitive programming in Haskell: BFS, part 1

In a previous post, I challenged you to solve Modulo Solitaire. In this problem, we are given a starting number s_0 and are trying to reach 0 in as few moves as possible. At each move, we may pick one of up to 10 different rules (a_i,b_i) that say we can transform s into (a_i s + b_i) \bmod m.

In one sense, this is a straightforward search problem. Conceptually, the numbers 0 through m-1 form the vertices of a graph, with a directed edge from s to t whenever there is some allowed (a_i, b_i) such that t = (a_i s + b_i) \bmod m; we want to do a breadth first search in this graph to find the length of a shortest path from s_0 to 0. However, m can be up to 10^6 and there can be up to 10 rules, giving a total of up to 10^7 edges. In the case that 0 is unreachable, we may have to explore every single edge. So we are going to need a pretty fast implementation; we’ll come back to that later.

Haskell actually has a nice advantage here. This is exactly the kind of problem in which we want to represent the graph implicitly. There is no reason to actually reify the graph in memory as a data structure; it would only waste memory and time. Instead, we can specify the graph implicitly using a function that gives the neighbors of each vertex, which means BFS itself will be a higher-order function. Higher-order functions are very awkward to represent in a language like Java or C++, so when I solve problems like this in Java, I tend to just write the whole BFS from scratch every single time, and I doubt I’m the only one. However, in Haskell we can easily make an abstract interface to BFS which takes a function as input specifying an implicit graph, allowing us to nicely separate out the graph search logic from the task of specifying the graph itself.

What would be my ideal API for BFS in Haskell? I think it might look something like this (but I’m happy to hear suggestions as to how it could be made more useful or general):

data BFSResult v =
  BFSR { level :: v -> Maybe Int, parent :: v -> Maybe v }

bfs ::
  (Ord v, Hashable v) =>
  [v] ->                      -- Starting vertices
  (v -> [v]) ->               -- Neighbors
  (v -> Bool) ->              -- Goal predicate
  BFSResult v

bfs takes a list of vertices to search from (which could be a singleton if there is a single specific starting vertex), a function specifying the out-neighbors of each vertex, and a predicate specifying which vertices are “goal” vertices (so we can stop early if we reach one), and returns a BFSResult record, which tells us the level at which each vertex was encountered, if at all (i.e. how many steps were required to reach it), and the parent of each vertex in the search. If we just want to know whether a vertex was reachable at all, we can see if level returns Just; if we want to know the shortest path to a vertex, we can just iterate parent. Vertices must be Ord and Hashable to facilitate storing them in data structures.

Using this API, the solution is pretty short.

main = C.interact $ runScanner tc >>> solve >>> format

data Move = Move { a :: !Int, b :: !Int } deriving (Eq, Show)
data TC = TC { m :: Int, s0 :: Int, moves :: [Move] } deriving (Eq, Show)

tc :: Scanner TC
tc = do
  m <- int
  n <- int
  TC m <$> int <*> n >< (Move <$> int <*> int)

format :: Maybe Int -> ByteString
format = maybe "-1" showB

solve :: TC -> Maybe Int
solve TC{..} = level res 0
    res = bfs [s0] (\v -> map (step v) moves) (==0)
    step v (Move a b) = (a*v + b) `mod` m

We run a BFS from s_0, stopping when we reach 0, and then look up the level of 0 to see the minimum number of steps needed to reach it.

In part 2, I’ll talk about how to implement this API. There are many viable implementation strategies, but the trick is getting it to run fast enough.

Planet Haskell: Gabriel Gonzalez: Advice for aspiring bloggers


I’m writing this post to summarize blogging advice that I’ve shared with multiple people interested in blogging. My advice (and this post) won’t be very coherent, but I hope people will still find this useful.

Also, this advice is targeted towards blogging and not necessarily writing in general. For example, I have 10 years of experience blogging, but less experience with other forms of writing, such as writing books or academic publications.


Motivation is everything when it comes to blogging. I believe you should focus on motivation before working on improving anything else about your writing. In particular, if you always force yourself to set aside time to write then (in my opinion) you’re needlessly making things hard on yourself.

Motivation can be found or cultivated. Many new writers start off by finding motivation; inspiration strikes and they feel compelled to share what they learned with others. However, long-term consistent writers learn how to cultivate motivation so that their writing process doesn’t become “feast or famine”.

There is no one-size-fits-all approach to cultivating motivation, because not everybody shares the same motivation for writing. However, the first step is always reflecting upon what motivates you to write, which could be:

  • sharing exciting new things you learn
  • making money
  • evangelizing a new technology or innovation
  • launching or switching to a new career
  • changing the way people think
  • improving your own understanding by teaching others
  • settling a debate or score
  • sorting out your own thoughts

The above list is not comprehensive, and people can blog for more than one reason. For example, I find that I’m most motivated to blog when I have just finished teaching someone something new or arguing with someone. When I conclude these conversations I feel highly inspired to write.

Once you clue in to what motivates you, use that knowledge to cultivate your motivation. For example, if teaching people inspires me then I’ll put myself in positions where I have more opportunities to mentor others, such as becoming an engineering manager, volunteering for Google Summer of Code, or mentoring friends earlier in their careers. Similarly, if arguing with people inspires me then I could hang out on social media with an axe to grind (although I don’t do that as much these days for obvious reasons…).

When inspiration strikes

That doesn’t mean that you should never write when you’re not motivated. I still sometimes write when it doesn’t strike my fancy. Why? Because inspiration doesn’t always strike at a convenient time.

For example, sometimes I will get “hot” to write something in the middle of my workday (such as right after a 1-on-1 conversation) and I have to put a pin in it until I have more free time later.

One of the hardest things about writing is that inspiration doesn’t always strike at convenient times. There are a few ways to deal with this, all of which are valid:

  • Write anyway, despite the inconvenience

    Sometimes writing entails reneging on your obligations and writing anyway. This can happen when you just know the idea has to come out one way or another and it won’t necessarily happen on a convenient schedule.

  • Write later

    Some topics will always inspire you every time you revisit them, so even if your excitement wears off it will come back the next time you revisit the subject.

    For example, sometimes I will start to write about something that I’m not excited about at the moment but I remember I was excited about it before. Then as I start to write everything comes flooding back and I recapture my original excitement.

  • Abandon the idea

    Sometimes you just have to completely give up on writing something.

    I’ve thrown away a lot of writing ideas that I was really attached to because I knew I would never have the time. It happens, it’s sad when it happens, but it’s a harsh reality of life.

    Sometimes “abandon the idea” can become “write later” if I happen to revisit the subject years later at a more opportune time, but I generally try to abandon ideas completely, otherwise they will keep distracting me and do more harm than good.

I personally have done all of the above in roughly equal measure. There is no right answer to which approach is correct and I treat it as a judgment call.

Quantity over quality

One common pattern I see is that new bloggers tend to “over-produce” some of their initial blog posts, especially for ideas they are exceptionally attached to. This is not necessarily a bad thing, but I usually advise against it. You don’t want to put all of your eggs in one basket and you should focus on writing more frequent and less ambitious posts rather than a few overly ambitious posts, especially when starting out.

One reason why is that people tend to be poor judges of their own work, in my experience. Not only do you not know when inspiration will strike, but you will also not know when inspiration has truly struck. There will be some times when you think something you produce is your masterpiece, your magnum opus, and other people are like “meh”. There will be other times when you put out something that feels half-baked or like a shitpost and other people will tell you that it changed their life.

That’s not to say that you shouldn’t focus on quality at all. Quite the opposite: the quality of your writing will improve more quickly if you write more often instead of polishing a few posts to death. You’ll get more frequent feedback from a wider audience if you keep putting your work out there regularly.

Great writing is learning how to build empathy for the reader and you can’t do that if you’re not regularly interacting with your audience. The more they read your work and provide feedback the better your intuition will get for what your audience needs to hear and how your writing will resonate with them. As time goes on your favorite posts will become more likely to succeed, but there will always remain a substantial element of luck to the process.


Writing is hard, even for experienced writers like me, because writing is so underconstrained.

Programming is so much easier than writing for me because I get:

  • Tooling support

    … such as an IDE, syntax highlighting or type-checker

  • Fast feedback loop

    For many application domains I can run my code to see if it works or not

  • Clearer demonstration of value

    I can see firsthand that my program actually does what I created it to do

Writing, on the other hand, is orders of magnitude more freeform and nebulous than code. There are so many ways to say or present the exact same idea, because you can vary things like:

  • Choice of words

  • Conceptual approach

  • Sentence / paragraph structure

  • Scope

  • Diagrams / figures

  • Examples

    Oh, don’t get me started on examples. I can spend hours or even days mulling over which example to use that is just right. A LOT of my posts in my drafts have run aground on the choice of example.

There also isn’t a best way to present an idea. One way of explaining things will resonate with some people better than others.

On top of that the feedback loop is sloooooow. Soliciting reviews from others can take days. Or you can publish blind and hope that your own editing process and intution is good enough.

The way I cope is to add artificial constraints to my writing, especially when first learning to write. I came up with a very opinionated way of structuring everything and saying everything so that I could focus more on what I wanted to say instead of how to say it.

The constraints I created for myself touched upon many of the above freeform aspects of writing. Here are some examples:

  • Choice of words

    I would use a very limited vocabulary for common writing tasks. In fact, I still do in some ways. For example, I still use “For example,” when introducing an example, a writing habit which still lingers to this day.

  • Sentence / paragraph structure

    The Science of Scientific Writing is an excellent resource for how to improve writing structure in order to aid reader comprehension.

  • Diagrams / figures

    I created ASCII diagrams for all of my technical writing. It was extremely low-tech, but it got the job done.

  • Examples

    I had to have three examples. Not two. Not four. Three is the magic number.

In particular, one book stood out as exceptionally helpful in this regard:

The above book provides several useful rules of thumb for writing that new writers can use as constraints to help better focus their writing. You might notice that this post touches only very lightly on the technical aspects of authoring and editing writing, and that’s because all of my advice would boil down to: “go read that book”.

As time went on and I got more comfortable I began to deviate from these rules I had created for myself and then I could more easily find my own “voice” and writing style. However, having those guardrails in place made a big difference to me early on to keep my writing on track.


Sometimes you need to write something over an extended period of time, long after you are motivated to do so. Perhaps this because you are obligated to do so, such as writing a blog post for work.

My trick to sustaining interest in posts like these is to always begin each writing session by editing what I’ve written so far. This often puts me back in the same frame of mind that I had when I first wrote the post and gives me the momentum I need to continue writing.


Do not underestimate the power of editing your writing! Editing can easily transform a mediocre post into a great post.

However, it’s hard to edit the post after you’re done writing. By that point you’re typically eager to publish to get it off your plate, but you should really take time to still edit what you’ve written. My rule of thumb is to sleep on a post at least once and edit in the morning before I publish, but if I have extra stamina then I keep editing each day until I feel like there’s nothing left to edit.


I’d like to conclude this post by acknowledging the blog that inspired me to start blogging:

That blog got me excited about the intersection of mathematics and programming and I’ve been blogging ever since trying to convey the same sense of wonder I got from reading about that.

Colossal: An Exhibition of 50 Piñatas Explores the Cultural Significance of the Festive Object

Installation view of Roberto Benavidez’s sculptures (front) and Isaias Rodriguez, “resilience” (2021) (back). Photo by Madison Metro, Craft in America. All images courtesy of Craft in America, shared with permission

A ubiquitous decoration at birthdays and family celebrations, piñatas are conventionally associated with fun, festivity, and of course, their potential to split open and release candy and other treats. Now on view at Craft in America, a group exhibition re-envisions the party staple by connecting it with contemporary practices that extend the playful artform’s capacity for social and political commentary.

Piñatas: The High Art of Celebration features approximately 50 works from Mexico- and U.S.-based artists and collectives, who explore the evolution of traditional construction techniques and the object’s broad cultural significance that reaches beyond its Mexican heritage. The fantastical creatures of Roberto Benavidez’s illuminated manuscript series, for example, encapsulate questions about race and sin, while Justin Favela (previously) translates the confrontation between American pop culture and Latinx experiences into fringed, abstract landscapes. Other works include a massive COVID-19 vaccine bottle by Lisbeth Palacios, Diana Benavidez’s motorized cars that speak to issues at the San Diego/Tijuana border, and a swarm of tiny suspended monarchs by Isaias Rodriguez.

If you’re in Los Angeles, stop by Craft in America before December 4 to see the exhibition in person or take a virtual tour on the nonprofit’s site.  (via Hyperallergic)


Roberto Benavidez, “Illuminated Hybrid No. 3” (2019). Photo by the artist

Detail of Isaias Rodriguez, “resilience” (2021). Photo by Matthew Hermosillo

Justin Favela, “Baño de los Pescaditos (after José María Velasco)” (2019). Photo courtesy of the artist

Left: Lorena Robletto (Amazing Piñatas), “Alebrije Installation” (2021). Photo by Madison Metro, Craft in America. Right: Lorena Robletto (Amazing Piñatas), “Seven Point Star Installation” (2021). Photo by Madison Metro, Craft in America

Roberto Benavidez, “Illuminated Hybrid No. 5” (2018). Photo by Madison Metro, Craft in America

Left: Giovanni Valderas, “No Hay Pedo (Canary)”  (2016). Photo by Giovanni Valderas. Right: Lisbeth Palacios (All Party Art), “COVID Vaccine” (2021). Photo by Madison Metro, Craft in America

Diana Benavidez, installation view of “Border Crosser” and “La Pinche Migra” (from Vehículos Transfronterizos series) (2021). Photo by Madison Metro, Craft in America

Schneier on Security: Recovering Real Faces from Face-Generation ML System

New paper: “This Person (Probably) Exists. Identity Membership Attacks Against GAN Generated Faces.

Abstract: Recently, generative adversarial networks (GANs) have achieved stunning realism, fooling even human observers. Indeed, the popular tongue-in-cheek website, taunts users with GAN generated images that seem too real to believe. On the other hand, GANs do leak information about their training data, as evidenced by membership attacks recently demonstrated in the literature. In this work, we challenge the assumption that GAN faces really are novel creations, by constructing a successful membership attack of a new kind. Unlike previous works, our attack can accurately discern samples sharing the same identity as training samples without being the same samples. We demonstrate the interest of our attack across several popular face datasets and GAN training procedures. Notably, we show that even in the presence of significant dataset diversity, an over represented person can pose a privacy concern.

News article. Slashdot post.

Saturday Morning Breakfast Cereal: Saturday Morning Breakfast Cereal - Life of a Salesman

Click here to go see the bonus panel!

It's time for a play about how wait a minute middle class life was okay.

Today's News:

Planet Lisp: Joe Marshall: Update October 2021

Here's a few things I've been playing with lately.

jrm-code-project/utilities has a few utilities that I commonly use. Included are utilities/lisp/promise and utilities/lisp/stream which provide S&ICP-style streams (lazy lists). utilities/lisp/utilities is a miscellaneous grab bag of functions and macros.

jrm-code-project/homographic is a toolkit for linear fractional transforms (homographic functions). In addition to basic LFT functionality, it provides examples of exact real arithmetic using streams of LFTs.

jrm-code-project/LambdaCalculus has some code for exploring lambda calculus.

jrm-code-project/CLRLisp is an experimental Lisp based on the .NET Common Language Runtime. The idea is that instead of trying to adapt a standard Lisp implementation to run on the .NET CLR, we just add a bare-bones eval and apply that use the CLR reflection layer and see what sort of Lisp naturally emerges. At this point, it only just shows signs of life: there are lambda expressions and function calls, but no definitions, conditionals, etc. You can eval lists: (System.Console.WriteLine "Hello World."), but I haven't written a reader and printer, so it is impractical for coding.

Lambda the Ultimate - Programming Languages Weblog: Latent Effects for Reusable Language Components

Latent Effects for Reusable Language Components, by Birthe van den Berg, Tom Schrijvers, Casper Bach Poulsen, Nicolas Wu:

The development of programming languages can be quite complicated and costly. Hence, much effort has been devoted to the modular definition of language features that can be reused in various combinations to define new languages and experiment with their semantics. A notable outcome of these efforts is the algebra-based “datatypes "a la carte" (DTC) approach. When combined with algebraic effects, DTC can model a wide range of common language features. Unfortunately, the
current state of the art does not cover modular definitions of advanced control-flow mechanisms that defer execution to an appropriate point, such as call-by-name and call-by-need evaluation, as well as (multi-)staging. This paper defines latent effects, a generic class of such control-flow mechanisms. We demonstrate how function abstractions, lazy computations and a MetaML-like staging can all be expressed in a modular fashion using latent effects, and how they can be combined in various ways to obtain complex semantics. We provide a full Haskell implementation of our effects and handlers with a range of examples.

Looks like a nice generalization of the basic approach taken by algebraic effects to more subtle contexts. Algebraic effects have been discussed here on LtU many times. I think this description from section 2.3 is a pretty good overview of their approach:

LE&H is based on a different, more sophisticated structure than AE&H’s free monad. This structure supports non-atomic operations (e.g., function abstraction, thunking, quoting) that contain or delimit computations whose execution may be deferred. Also, the layered handling is different. The idea is still the same, to replace bit by bit the structure of the tree by its meaning. Yet, while AE&H grows the meaning around the shrinking tree, LE&H grows little “pockets of meaning” around the individual nodes remaining in the tree, and not just around the root. The latter supports deferred effects because later handlers can still re-arrange the semantic pockets created by earlier handlers.

Penny Arcade: News Post: Race Night!

Gabe: Tonight the Penny Arcade iRacing league is headed to USA International (the dirt oval) and we'll be racing the dirt street stocks. Join us in the pit crew at 7:30 PST over on Twitch for the chaotic opening to season 8! Oh and if you aren't familiar with the PA league check out this awesome hype video with footage from last season! -Gabe out

Open Culture: Archaeologists Discover 1300-Year-Old Pair of Skis, the Best-Preserved Ancient Skis in Existence

Surfing is generally believed to have originated in Hawaii and will be forever associated with the Polynesian islands. Yet anthropologists have found evidence of something like surfing wherever humans have encountered a beach — on the coasts of West Africa, in the Caribbean, India, Syria, and Japan. Surfing historian Matt Warshaw sums up the problem with locating the origins of this human activity: “Riding waves simply for pleasure most likely developed in one form or another among any coastal people living near warm ocean water.” Could one make a similar point about skiing?

It seems that wherever humans have settled in places covered with snow for much of the year, they’ve improvised all kinds of ways to travel across it. Who did so with the first skis, and when? Ski-like objects dating from 6300-5000 BC have been found in northern Russia. A New York Times article recently described evidence of Stone Age skiers in China. “If skiing, as it seems possible,” Nils Larsen writes at the International Skiing History Association, “dates back 10,000 years or more, identifying a point of origin (or origins) will be difficult at best.” Such discussions tend to get “bogged down in politics and national pride,” Larsen writes. For example, “since the emergence of skiing in greater Europe in the late 1800s” — as a sport and purely recreational activity — “Norway has often been considered the birthplace of skiing. Norway has promoted this view and it is a point of national pride.”

Despite its earliest records of skiing dating millennia later than other regions, Norway has some claim. The word ski is, after all, Norwegian, derived from Old Norse skíð, meaning “cleft wood” or “stick.” And the best-preserved ancient skis ever found have been discovered in a Norwegian ice field. “Even the bindings are mostly intact,” notes Kottke. The first ski, believed to be 1300 years old, turned up in 2014, found by the Glacier Archeology Program (GAP) in the mountains of Innlandet County, Norway. The archaeologists decided to wait, let the ice melt, and see if the other ski would appear. It did, just recently, and in the video above, you can watch the researchers pull it from the ice.

Photo: Andreas Christoffer Nilsson,

“Measuring about 74 inches long and 7 inches wide,” notes Livia Gershon at Smithsonian, “the second ski is slightly larger than its mate. Both feature raised footholds. Leather straps and twisted birch bark bindings found with the skis would have been attached through holes in the footholds. The new ski shows signs of heavy wear and eventual repairs.” The two skis are not identical, “but we should not expect them to be,” says archaeologist Lars Pilø. “The skis are handmade, not mass-produced. They have a long and individual history of wear and repair before an Iron Age skier used them together and they ended up in the ice.”

The new ski answered questions the researchers had about the first discovery, such as how the ancient skis might have maintained forward motion uphill. “A furrow on the underside along the length of the ski, as you find on other prehistoric skis (and on modern cross-country skis), would solve the question,” they write, and the second ski contained such a furrow. While they may never prove that Norway invented skiing, as glacier ice melts and new artifacts appear each year, the team will learn much more about ancient Norwegian skiers and their way of life. See their current discoveries and follow their future progress at the Secrets of the Ice website and on their YouTube channel.

Related Content: 

Archaeologists Find the Earliest Work of “Abstract Art,” Dating Back 73,000 Years

Watch an Archaeologist Play the “Lithophone,” a Prehistoric Instrument That Let Ancient Musicians Play Real Classic Rock

Medieval Tennis: A Short History and Demonstration

Josh Jones is a writer and musician based in Durham, NC. Follow him at @jdmagness

Archaeologists Discover 1300-Year-Old Pair of Skis, the Best-Preserved Ancient Skis in Existence is a post from: Open Culture. Follow us on Facebook and Twitter, or get our Daily Email. And don't miss our big collections of Free Online Courses, Free Online Movies, Free eBooksFree Audio Books, Free Foreign Language Lessons, and MOOCs.

Ideas: Don't Look Back: The Myth of Orpheus

The myth of Orpheus is the oldest love story, from ancient Greece — it's the story of the power of art, a story told through opera and film, and poetry. Two thousand five hundred years later, IDEAS contributor Tom Jokinen explores why the myth of Orpheus still has such a hold on us?



things magazine: Thursday ephemera trawl

A collection of things. Jarvis Cocker’s Aline, Aline, a video directed by Wes Anderson. See also Anderson’s train carriage for British Pullman / farewell to Rick Jones of Fingerbobs / 2001 A Space Odyssey: Dubstep re-edit. See also 2001: A … Continue reading

Disquiet: Why, Hello There

Planet Haskell: Well-Typed.Com: Remote Interactive Course on Type-level Programming with GHC

We are offering our “Type-level programming with GHC” course again this autumn. This course is now available to book online on a first come, first served basis. If you want to book a ticket but they have sold out, please sign up to the waiting list, in case one becomes available.

Training course details

This course will be a mixture of lectures, discussions and live coding delivered via Google Meet. The maximum course size is deliberately kept small (up to 10 participants) so that it is still possible to ask and discuss individual questions. The course will be led by Andres Löh, who has more than two decades of Haskell experience and has taught many courses to varied audiences.

Type-level Programming with GHC

An overview of Haskell language extensions designed for type-level programming / how to express more properties of your programs statically

8-10th November 2021, 1930-2230 GMT (3 sessions, each 3 hours)

Other Well-Typed training courses

If you are interested in the format, but not the topic or cannot make the time, feel free to drop us a line with requests for courses on other topics or at other times. We can also do courses remotely or on-site for your company, on the topics you are most interested in and individually tailored to your needs. Check out more detailed information on our training services or just contact us.

Quiet Earth: Famous First Films: Before DUNE Denis Villeneuve made his Debut "REW FFWD"

Before he became the world renowned director of Blade Runner 2049, Polytechnique and now DUNE, French Canadian director Denis Villeneuve directed his documentary short called REW FFWD for the National Film Board in 1994.

A young photographer is on assignment in Jamaica. It's a cultural shock. First anguished, he later becomes quite fascinated by the people he meets, their neighborho [Continued ...]

50 Watts: Tomi Ungerer's Nonstop

(Find me at 50 Watts Books.)

How it begins

From Tomi Ungerer's final picture book, Nonstop, published by Phaidon in 2020. Find it at 50 Watts Books or on (I'm a regular affiliate there, not a bookstore affiliate).

My summary: Vasco's shadow helps guide him through a crumbling world where "birds, butterflies, and rats were gone" and "flowers had turned into memories." Along the way he rescues Poco, the little green child of Nothing, and they eventually find a gigantic cake in the desert (a happy ending!). I love this book.

How it ends

Saturday Morning Breakfast Cereal: Saturday Morning Breakfast Cereal - October 13

Click here to go see the bonus panel!

My alternate version of this was giant aliens putting humans in food slurry so that their excreta would cause it to be fluffy, but honestly that felt weird.

Today's News:

Greater Fool – Authored by Garth Turner – The Troubled Future of Real Estate: The contest

Populated as it is by cowboy astronaut warrior microaggressive cisgendered Alpha males, this blog’s comment section bristles with competition. The stock jockeys arrive to belittle to ETFers. The Bitcoin turks and bullion lickers show up to dis fiat money-holders. Everybody piles on the GIC wimps. And, right on cue, the 20x-leveraged property pimps strut and preen with each real estate board report.

But wait. Is any of this healthy? Is investing really a contest?

Of course not. In endless, boring, nauseating posts this site has said people should buy houses if they need one and can afford it without gutting personal finances or putting a family at risk. We’ve also reminded you of the greatest risk – running out of money, not losing it. And this: you can always rent a roof, but never can you lease cash flow. Remember these things. Then find the path that best suits your life, job, obligations and heart.

Having said that, let’s tackle one myth – that buying a house in a hot market always beats investing in a boring B&D financial portfolio. Comparisons are dangerous. After all, you can live in real estate and harness huge debt to own it. But it costs a ton to carry – financing, property taxes, condo fees, maintenance, insurance and large acquisition and selling charges. A portfolio of ETFs usually involves little or no leverage. You can’t inhabit it, either. But the ownership costs are negligible. Both a house and a portfolio can yield tax-free gains.

They’re wildly different things. Only a fool would dare compare. So let’s do it.

The GreaterFool B&D, all ETF-based, hormone-free portfolio of 40% fixed income (safe) stuff and 60% global growth assets has a 10-year track record of 7.1%. (Actually higher because of the last six months, but we’ll stick with the conservative number.)

This means $500,000 invested in 2011, with no income taken, no more cash invested and routine rebalancing, would have grown to be $992,806. If the funds were in RRSPs, RRIFs, TFSAs or other registered accounts, no tax would be payable in this period. So over the decade, total growth equals 98.5%. Embedded fund fees and occasional trading costs would be minimal.

How about a Toronto property? This is now the sexiest real estate market in the country. The Covid rush and mortgage rate collapse resulted in the greatest price gains in Canadian history. Surely it would cream the performance of a basket of exchange-traded funds.

Let’s see. The average 416 property cost $536,128 in 2011. Last month that had climbed to $1,136,280 amid bidding wars, extreme increases in household debt and overt speculation. That’s a 10-year gain of 120%. So real estate wins! Sucks to Garth!

Whoa. A more accurate comparison would reflect that buying that property in 2011 involved paying land transfer tax of $14,400, raising the invested amount to $550,528. Additionally, the increase in equity cannot be realized without turning the asset liquid, which involves a 5% realtor commission. So the realized value after a decade would be $1,079,466, for a 10-year cumulative gain of 96.07%. Ooops. B&D takes it.

Now, remember. Contests like this are odious, misleading and silly. Real estate provides shelter. Financial assets give you money to live on. In an ideal world, you should own both. And let’s not forget current conditions won’t last. Interest rates will augment – reducing bond prices and hiking mortgage rates. Current tax levels will not be maintained – short-term real estate ownership will be penalized and capital gains inclusion rates may increase. Inflation’s a wild card impacting the cost and value of all assets. Meanwhile pensions are eroding for most people and the pandemic has swollen both house prices and job insecurity.

So, it’s not really about who wins the most. It’s more about who best corrals risk. Being leveraged is risky. Believing loan rates will never rise is a risk. Flipping stocks is pure risk. Not investing, failing to use your TFSA or putting your family’s future ahead of your own greed (a house instead of RESPs) brings risk. Taking your investment (or vaccine) advice from some dude on Facebook, MSM media headlines, Re/Max ‘reports’ or a pathetic blog is risky. FOMO brings the ultimate risk, and sadly it’s everywhere these days.

So keep in mind there is no correct path forward. No silver bullets are left in the chamber. There’s no shame in renting. No intrinsic glory in owning. No wisdom in timing markets. And everybody – bar none – needs liquid wealth as the years peel away. So, keep yer pants on.

About the picture: “This is the latest addition to our family, Mabel,” writes Dan. “At just about 5 months old she shows us every day what it’s like to be thankful for the joy of living! This little Beagle sees every moment as a new adventure! We should all learn to live in the moment like she does. Time is the most precious commodity of all!”

Quiet Earth: Ethan Hawke is a Killer in BLACK PHONE [Trailer]

Ethan Hawke and Scott Derrickson (Sinister) re-team for new Blumhouse horror movies Black Phone. The film is based a story by Stephen King's son, author Joe Hill ("The Fireman").

The first trailer has dropped at the film looks freeeeaky.

After five children go missing in a suburban Colorado town in the 1970s, Finney Shaw (Mason Thames) soon becomes the sixth victim when he is kidnapped by a serial killer and is placed inside of [Continued ...]

Tea Masters: Quelle attitude face au thé du passé?

Ni nostalgique, ni révolutionnaire. La nostalgie voudrait qu'on veuille préparer son thé exactement comme il y a 200 ou 500 ans! Ou bien qu'on n'utilise que des accessoires antiques et qu'on dédaigne ce qui est fait de nos jours. Dans cet état d'esprit, chaque compromis avec la modernité est une blessure, une faute pour laquelle on demande pardon ou bien on se cherche des excuses. Dans un monde en constante mutation, on aimerait bien qu'une chose reste pareille, notre thé.

J'adore utiliser des antiquités pour bien sentir le temps qui passe et le lien entre le passé et le présent, mais je ne considère pas les accessoires modernes comme nécessairement inférieurs. Après tout, même dans le passé, la qualité d'une porcelaine guan yao, d'un four impérial, dépassait celle d'un min yao, four populaire. Le passé n'est pas un gage automatique de qualité supérieure. Et pour chauffer l'eau, le gaz ou les plaques électriques sont quand même bien plus pratiques et sûres que le charbon de bois dans un Nilu! Mais le meilleur argument est qu'une pratique qui n'évolue pas est une pratique morte. Chez tous les maitres de thé, la manière de préparer le thé n'est pas la même à 20, 40 ou 60 ans. Plus ils apprennent, plus ils expérimentent, plus leur pratique s'affine, s'enrichit. 
Le thé n'a pas non plus vocation à être révolutionné et réinventé de A à Z. Puisque nous avons la chance que le Chinois boivent du thé depuis les Tang, nous pouvons nous aider de cette longue histoire pour notre pratique et non détruire les acquis du passé. Par exemple, les objets du passé étaient toujours en harmonie avec leur utilisation. Or, de nos jours, certaines créations sont tellement bizarres qu'elles ne sont quasiment pas utilisables. Les harmonies les plus basiques ne sont pas toujours respectées par des artistes qui veulent faire des pièces hors du commun.  

Ni nostalgique, ni révolutionnaire. La voie du milieu, pour moi, c'est un sentiment de gratitude pour le passé dont nous avons tant à apprendre. Le mieux est donc de commencer par l'étude des classiques, des différentes méthodes de préparation du thé au long de l'histoire. Et seulement ensuite, il est possible d'innover avec l'inspiration des anciens et notre créativité. Ainsi, cela peut sembler accessoire, mais l'ajout du Chabu sous les accessoires est un bon exemple d'innovation qui ne coupe pas avec le passé, mais permet de l'enrichir et de le réactualiser.

Le passé peut nous guider sur la voie de la beauté!

Schneier on Security: Suing Infrastructure Companies for Copyright Violations

It’s a matter of going after those with deep pockets. From Wired:

Cloudflare was sued in November 2018 by Mon Cheri Bridals and Maggie Sottero Designs, two wedding dress manufacturers and sellers that alleged Cloudflare was guilty of contributory copyright infringement because it didn’t terminate services for websites that infringed on the dressmakers’ copyrighted designs….

[Judge] Chhabria noted that the dressmakers have been harmed “by the proliferation of counterfeit retailers that sell knock-off dresses using the plaintiffs’ copyrighted images” and that they have “gone after the infringers in a range of actions, but to no avail — every time a website is successfully shut down, a new one takes its place.” Chhabria continued, “In an effort to more effectively stamp out infringement, the plaintiffs now go after a service common to many of the infringers: Cloudflare. The plaintiffs claim that Cloudflare contributes to the underlying copyright infringement by providing infringers with caching, content delivery, and security services. Because a reasonable jury could not — at least on this record — conclude that Cloudflare materially contributes to the underlying copyright infringement, the plaintiffs’ motion for summary judgment is denied and Cloudflare’s motion for summary judgment is granted.”

I was an expert witness for Cloudflare in this case, basically explaining to the court how the service works.

Penny Arcade: News Post: Tooth Serum

Tycho: The story in the strip is mostly exact; I did invent a sedative when in truth regular, human sedatives were sufficient. Even if they did inspire some amateur Krav Maga. The nurses thought it was pretty funny, apparently. They see people overcome by these chemicals on the daily - God only knows what they've seen, when a person has their carefully curated exterior boiled away by drugs and the naked human BIOS is exposed. I do think it's interesting that at the baseline, in the animal catacomb that sprawls beneath the Wild West facade, Gabriel's instinct is to rage, rage against…

Penny Arcade: Comic: Tooth Serum

New Comic: Tooth Serum

Arduino Blog: Connect your space heater to the Arduino Cloud and control it via Alexa

Being able to design your own custom smart home device is a great way to both have fun experimenting with various hardware/software and to escape the walled IoT device ecosystems that so many users find themselves trapped within. One maker who goes by mrdesha came up with a smart heater solution that utilizes the new Arduino Oplà IoT Kit to provide voice functionality to their room heater. 

In terms of hardware, mrdesha’s project is quite simple as it just needs a few parts to function. The main component is the MKR IoT Carrier board from the Oplà Kit, along with the MKR WiFi 1010 that fits into it. Because the Oplà has two relays onboard, a pair of buttons on the heater’s remote were connected to the common (COM) and normally closed (NC) terminals, allowing for a single GPIO pin to digitally “press” each button. 

Over in the Arduino Cloud, three variables were created that control various aspects of the heater, including on/off, set high-power mode, and set low-power mode. These variables are also all compatible with the Alexa integration, meaning that a user can simply tell their smart home speaker to adjust the heater automatically. 

For more details about the project, you can view mrdesha’s write-up here and a demo of it in the video below.

The post Connect your space heater to the Arduino Cloud and control it via Alexa appeared first on Arduino Blog.

Ideas: Margaret Atwood and Omar El Akkad: Beyond Dystopia

Dystopian versus utopian. Description versus prescription. Ideology versus art. As geopolitical and climate crises deepen, what role should writers play? A conversation with novelists Margaret Atwood and Omar El Akkad as part of the first annual PEN Graeme Gibson Talk.

Planet Lisp: Thomas Fitzsimmons: Mezzano on Librebooted ThinkPads

I decided to try running Mezzano on real hardware. I figured my Librebooted ThinkPads would be good targets, since, thanks to Coreboot and the Linux kernel, I have reference source code for all the hardware.

On boot, these machines load Libreboot from SPI flash; included in this Libreboot image is GRUB, as a Coreboot payload.

Mezzano, on the other hand, uses the KBoot bootloader. I considered chainloading KBoot from GRUB, but I wondered if I could have GRUB load the Mezzano image directly, primarily to save a video mode switch.

I didn’t want to have to reflash the Libreboot payload on each modification (writing to SPI flash is slow and annoying to recover from if something goes wrong), so I tried building a GRUB module “out-of-tree” and loading it in the existing GRUB. Eventually I got this working, at which point I could load the module from a USB drive, allowing fast development iteration. (I realize out-of-tree modules are non-ideal so if there’s interest I may try to contribute this work to GRUB.)

The resulting GRUB module, mezzano.mod, is largely the KBoot Mezzano loader code, ported to use GRUB facilities for memory allocation, disk access, etc. It’s feature-complete, so I released it to Sourcehut. (I’ve only tested it on Libreboot GRUB, not GRUB loaded by other firmware implementations.)

Here’s a demo of loading Mezzano on two similar ThinkPads:

GRUB Mezzano module demo

For ease of use, mezzano.mod supports directly loading the mezzano.image file generated by MBuild — instead of requiring that mezzano.image be dd‘d to a disk. It does so by skipping the KBoot partitions to find the Mezzano disk image. The T500 in the video is booted this way. Alternatively, mezzano.mod can load the Mezzano disk image from a device, as is done for the W500 in the video. Both methods look for the Mezzano image magic — first at byte 0 and, failing that, just after the KBoot partitions.

I added the set-i8042-bits argument because Coreboot does not set these legacy bits, yet Mezzano’s PS/2 keyboard and mouse drivers expect them; at this point Mezzano does not have a full ACPI device tree implementation. Comic for 2021.10.13

New Cyanide and Happiness Comic

Disquiet: Genre Chatter

“That’s not ambient.”

“No, it’s not. It’s ambient music.”

“But it’s not ambient.”

“Yeah, ambient is an adjective here, not a category, more a tag. It’s not ambient. It’s ambient music. Music with an ambient quality.”

“So, it’s not ambient music. It’s ambient music.”


Planet Haskell: Well-Typed.Com: GHC activities report: August-September 2021

This is the eighth edition of our GHC activities report where we describe the work on GHC and related projects that we are doing at Well-Typed. The current edition covers roughly the months of August and September 2021.

You can find the previous editions collected under the ghc-activities-report tag.

A bit of background: One aspect of our work at Well-Typed is to support GHC and the Haskell core infrastructure. Several companies, including IOHK, Facebook, and GitHub via the Haskell Foundation, are providing us with funding to do this work. We are also working with Hasura on better debugging tools. We are very grateful on behalf of the whole Haskell community for the support these companies provide.

If you are interested in also contributing funding to ensure we can continue or even scale up this kind of work, please get in touch.

Of course, GHC is a large community effort, and Well-Typed’s contributions are just a small part of this. This report does not aim to give an exhaustive picture of all GHC work that is ongoing, and there are many fantastic features currently being worked on that are omitted here simply because none of us are currently involved in them in any way. Furthermore, the aspects we do mention are still the work of many people. In many cases, we have just been helping with the last few steps of integration. We are immensely grateful to everyone contributing to GHC. Please keep doing so (or start)!


Currently, Ben Gamari, Andreas Klebinger, Matthew Pickering and Zubin Duggal are working primarily on GHC-related tasks. Sam Derbyshire has just been joining the team at the start of October.

Many others within Well-Typed, including Adam Gundry, Alfredo Di Napoli, Alp Mestanogullari, Douglas Wilson and Oleg Grenrus, are contributing to GHC more occasionally.

Haskell Implementor’s Workshop

A few from our team presented various facets of their work at the Haskell Implementor’s Workshop in late August. More discussion of these presentations can be found in a previous HIW recap post on this blog.

Release management

  • Ben has been handling backports and release planning for the 9.2.1 and 9.0.2 releases.

  • Zubin fixed some bugs with LLVM version detection in the HEAD and 8.10.5 releases (#19973, #19828, #19959).

  • The bindists produced by hadrian now have a very similar structure to the ones produced by make (Matt, !6345, !6349).

Compiler error messages

  • Alfredo continued working on the conversion of GHC diagnostic messages from plain structured documents to richer Haskell types. After porting some errors in the driver code (!6249) he turned his attention to the modules in GHC’s typechecker (!6414), and he’s currently converting GHC’s typeclass-derivation code to use the new diagnostic infrastructure (!6561).


  • Matt has been fixing a number of bugs discovered after recent driver refactoring. Hopefully everything works as before in the 9.4 release! (!6508, !6507, !6412)

  • Matt attempted to implement the splice imports proposal but the specification didn’t correctly enforce level invariants. The latest idea is to introduce a complementary “quote” import to distinguish imports allowed to be used in quotations.

Haddock and documentation

  • Zubin has been finishing up the the long-pending hi Haddock work, which should allow Haddock to generate documentation using only GHC interface (.hi) files (!6224). This greatly simplifies Haddock’s implementation, and allows it to skip parsing, renaming and type-checking files if the appropriate information already exists in the interface files, speeding it up greatly in such cases. This also reduces Haddock’s peak memory consumption. Identifiers in Haddock comments will also be renamed by GHC itself, and the results are also serialized into .hi files for tooling to make use of. A number of Haddock bugs were fixed along the way (#20034, haddock #30, haddock #665, haddock #921).

Profiling and debugging

  • Andreas continued looking into using the machine stack register for the haskell stack. blog post. While we have a branch that uses the machine stack register there are issues with perf not unwinding properly as well as issues related to llvm compatibility. For these reasons we will likely stop looking into this for the time being.

Compiler performance

  • Matt has been investigating several compiler performance regressions when compiling common packages (#19478, #19471).

  • Andreas landed a few performance improvements in !6609.

  • Andreas improved further on tag inference in !5614. As it stands it improves compiler performance while also improving runtime for most programs slightly.

  • During investigation of some edges of the tag inference work Andreas found some edge cases in GHC’s current code generation (#20334, #20333, #20332).

  • Adam has been working on a new approach to improving compilation performance for programs with significant use of type families. The key idea is to introduce a more compact representation of coercions in Core, which will occupy less space and be faster to traverse during optimisation (#8095, !6476).

Runtime performance

  • Matt diagnosed and found an interesting recent regression in the text package benchmarks due to code generation using 8-bit instructions which causes partial register stalling (#20405).

Compiler correctness

  • Ben added build system support for multi-target native toolchains (e.g. clang), allowing GHC to be used robustly on platforms which may run code for multiple platforms (#20162).

  • Ben fixed numerous linking issues affecting musl-based platforms, enabling static linkage on Alpine.

  • Ben fixed a number of build system bugs pertaining to libffi linkage affecting Darwin.

  • Ben fixed a Hadrian bug causing binary distribution installation to use platform parameters from the build environment instead of the installation environment (#20253).

Runtime system

  • Ben found and fixed a few tricky write barrier issues in the non-moving garbage collector (#20399).

CI and infrastructure

  • At the request of Richard, Matt has reduced the default verbosity levels of the Hadrian build output (!6584, !6545).

  • Ben refactored GHC’s CI infrastructure on Darwin platforms, eliminating several sources of fragility in the process.

Quiet Earth: Abel Ferrara's ZEROS AND ONES Trailer!

Abel Ferrara's (Ms. 45, Bad Lieutenant) new thriller starring Ethan Hawke just played at Lacarno. Called Zeros and Ones, the spy thriller is about an American soldier stationed in Rome with the Vatican blown up, who embarks on a hero's journey to uncover and defend against an unknown enemy threatening the entire world.

An American soldier stationed in Rome with the Vatican blown up, embarks on a hero's journey to uncover and defend against an unknown enemy threatening the entire world.

The film also stars ristina Chiriac, Phil Neilson, Valerio Mastandrea, Dounia Sichov, Korlan Mad [Continued ...]

Charles Petzold: Concert Diary: Tuesday Matinees with Violinist Daniel Kurganov


... more ...

new shelton wet/dry: Every day, the same, again

23.jpgPolice find accused prosthetic leg thief with leg strapped to head

Demi Lovato thinks the term ‘aliens’ is ‘derogatory’ to extraterrestrials

Psychedelic use associated with lower odds of heart disease and diabetes, study finds [full study]

studies have demonstrated a decrease in brain pH (meaning the conditions are more acidic) in neuropsychiatric disorders

Do the easy boring job regularly, instead of the hard scary job in a panic

Already own a trained arabian hunting falcon? Collateralize it. Secure a loan financing another falcon. That falcon? Collateralize it too. They can be trained to disarm an active shooter.

It’s our cashier, Sheila’s, birthday today!

50 Watts: Marina Shirakawa's Yokai Picture Book

(Find me at 50 Watts Books.)

Details from a book collection of Marina Shirakawa's yokai drawings. Shirakawa (1944-2000) also features prominently in an anthology of mushroom-themed manga from the same Japanese published, ele-king books/P-Vine.

Jesse Moynihan: Forming 336

Saturday Morning Breakfast Cereal: Saturday Morning Breakfast Cereal - Perception

Click here to go see the bonus panel!

I would be OVER THE MOON to have you void your colon thoroughly!

Today's News:

Schneier on Security: Airline Passenger Mistakes Vintage Camera for a Bomb

I feel sorry for the accused:

The “security incident” that forced a New-York bound flight to make an emergency landing at LaGuardia Airport on Saturday turned out to be a misunderstanding — after an airline passenger mistook another traveler’s camera for a bomb, sources said Sunday.

American Airlines Flight 4817 from Indianapolis — operated by Republic Airways — made an emergency landing at LaGuardia just after 3 p.m., and authorities took a suspicious passenger into custody for several hours.

It turns out the would-be “bomber” was just a vintage camera aficionado and the woman who reported him made a mistake, sources said.

Why in the world was the passenger in custody for “several hours”? They didn’t do anything wrong.

Back in 2007, I called this the “war on the unexpected.” It’s why “see something, say something” doesn’t work. If you put amateurs in the front lines of security, don’t be surprised when you get amateur security. I have lots of examples.

Ideas: The University Crisis

Universities in the 21st century face a host of challenges, from bloated budgets to overworked contract faculty. And in a competitive economy, many students are wondering if a B.A. is still worth the time and money. IDEAS considers the idea of universities in crisis, what can be done to make them better and whether the system — as we know it — is worth saving.

OCaml Weekly News: OCaml Weekly News, 12 Oct 2021

  1. Release of ocaml-sf/learn-ocaml:0.13.0
  2. Release of odoc 2.0.0
  3. The road to OCaml 5.0
  4. Become an Outreachy Mentor: support the growth and diversity of the OCaml community
  5. Windows-friendly OCaml 4.12 distribution 2nd preview release (0.2.0)
  6. first release of osh:
  7. first release of pyast
  8. Multiple open positions (postdoc, PhD, intern) on runtime verification at CEA LIST, France
  9. Postdoc position in Effect Handler Oriented Programming
  10. OCaml compiler development newsletter, issue 3: June-September 2021
  11. Odig 0.0.7, lookup documentation of installed OCaml packages
  12. OCaml Café: Wed, Oct 13 @ 1pm (U.S. Central)
  13. Multicore OCaml: September 2021, effect handlers will be in OCaml 5.0!
  14. Alcotest 1.5.0
  15. Other OCaml News

Planet Lisp: Vsevolod Dyomkin: Watching a Model Train

Last week, I did a quick hack that quite delighted me: I added a way to visually watch the progress of training my MGL-based neural networks inside Emacs. And then people on twitter asked me to show the code. So, it will be here, but first I wanted to rant a bit about one of my pet peeves.


In the age of Jupyter and TensorBoard, adding a way to see an image that records the value of a loss function blinking on the screen — "huh, big deal" you would say. But I believe this example showcases a difference between low-tech and high-tech approaches. Just recently I chatted with one of my friends who is entering software engineering at a rather late age (30+), and we talked of how frontend development became even more complicated than backend one (while, arguably, the complexity of tasks solved on the frontend is significantly lower). And that discussion just confirmed to me that the tendency to overcomplicate things is always there, with our pop-culture industry, surely, following it. But I always tried to stay on the simple side, on the side of low-tech solutions. And that's, by the way, one of the reasons I chose to stick with Lisp: with it, you would hardly be forced into some nonsense framework hell, or playing catch-up with the constant changes of your environment, or following crazy "best practices". Lisp is low-tech just like the Unix command-line or vanilla Python or JS. Contrary to the high-tech Rust, Haskell or Java. Everything text-based is also low-tech: text-based data formats, text-based visualization, text-based interfaces.

So, what is low-tech, after all? I saw the term popularized by Kris De Decker from the Low-Tech Magazine, which focuses on using simple (perhaps, outdated by some standards) technologies for solving serious engineering problems. Most people, and the software industry is no exception, are after high-tech, right? Progress of technology enables solving more and more complex tasks. And, indeed, that happens. Sometimes, not always. Sometimes, the whole thing crumbles, but that's a different story. Yet, even when it happens, there's a catch, a negative side-effect: the barrier of entry rises. If 5 or 10 years ago it was enough to know HTML, CSS, and JavaScript to be a competent frontend developer, now you have to learn a dozen more things: convoluted frameworks, complicated deploy toolchains, etc., etc. Surely, sometimes it's inevitable, but it really delights me when you can avoid all the bloat and use simple tools to achieve the same result. OK, maybe not completely the same, maybe not a perfect one. But good enough. The venerable 80% solution that requires 20% effort.

Low-tech is not low-quality, it's low-barrier of entry.

And I would argue that, in the long run, better progress in our field will be made if we strive towards lowering the bar to more people in, than if we continue raising it (ensuring our "job security" this way). Which doesn't mean that the technologies should be primitive (like BASIC). On the contrary, the most ingenious solutions are also the simplest ones. So, I'm going to continue this argument in the future posts I'd like to write about interactive programming. And now, back to our hacks.

Getting to Terms with MGL

In my recent experiments I returned to MGL — an advanced, although pretty opinionated, machine learning library by the prolific Gabor Melis — for playing around with neural networks. Last time, a few years ago I stumbled when I tried to use it to reproduce a very advanced (by that time's standards) recurrent neural network and failed. Yet, before that, I was very happy using it (or rather, it's underlying MGL-MAT library) for running in Lisp (in production) some of the neural networks that were developed by my colleagues. I know it's usually the other way around: Lisp for prototyping, some high-tech monstrosity for production, but we managed to turn the tides for some time :D

So, this time, I decided to approach MGL step by step, starting from simple building blocks. First, I took on training a simple feed-forward net with a number of word inputs converted to vectors using word2vec-like approach.

This is the network I created. Jumping slightly ahead, I've experimented with several variations of the architecture, starting from a single hidden layer MLP, and this one worked the best so far. As you see, it has 2 hidden layers (l1/l1-l and l2/l2-l) and performs 2-class classification. It also uses dropout after each of the layers as a standard means of regularization in the training process.

(defun make-nlp-mlp (&key (n-hidden 100))
  (mgl:build-fnn (:class 'nlp-mlp)
    (in (->input :size *input-len*))
    (l1-l (->activation in :size n-hidden))
    (l1 (->relu l1-l))
    (d1 (->dropout l1 :dropout 0.5))
    (l2-l (->activation d1 :size (floor n-hidden 2)))
    (l2 (->relu l2-l))
    (d2 (->dropout l2 :dropout 0.5))
    (out-l (->activation d2 :size 2))
    (out (->softmax-xe-loss out-l))))

MGL model definition is somewhat different from the approach one might be used to with Keras or TF: you don't imperatively add layers to the network, but, instead, you define all the layers at once in a declarative fashion. A typical Lisp style it is. Yet, what still remains not totally clear to me yet, is the best way to assemble layers when the architecture is not a straightforward one-direction or recurrent, but combines several parts in nonstandard ways. That's where I stumbled previously. I plan to get to that over time, but if someone has good examples already, I'd be glad to take a look at those. Unfortunately, despite the proven high-quality of MGL, there's very little open-source code that uses it.

Now, to make a model train (and watch it), we have to pass it to mgl:minimize alongside with a learner:

(defun train-nlp-fnn (&key data (batch-size 100) (epochs 1000) (n-hidden 100)
                       (random-state *random-state*))
  (let ((*random-state* random-state)
        (*agg-loss* ())
        (opt (make 'mgl:segmented-gd-optimizer
                   :termination (* epochs batch-size)
                   :segmenter (constantly
                                (make 'mgl:adam-optimizer
                                      :n-instances-in-batch batch-size))))
        (fnn (make-nlp-mlp :n-hidden n-hidden)))
    (mgl:map-segments (lambda (layer)
                         (mgl:nodes layer)
                         :stddev (/ 2 (reduce '+ (mgl:mat-dimensions (mgl:nodes layer))))))
     `((:fn mgl:reset-optimization-monitors :period ,batch-size :last-eval 0)
       (:fn draw-test-error :period ,batch-size)))
    (mgl:minimize opt (make 'mgl:bp-learner
                            :bpn fnn
                            :monitors (mgl:make-cost-monitors
                                       fnn :attributes `(:event "train")))
                  :dataset (sample-data data (* epochs batch-size)))

This code is rather complex, so let me try to explain each part.

  • We use (let ((*random-state* random-state) to ensure that we can reproduce training in exactly the same way if needed.
  • mgl:segmented-gd-optimizer is a class that allows us to specify a different optimization algorithm for each segment (layer) of the network. Here we use the same standard mgl:adam-optimizer with vanilla parameters for each segment (constantly).
  • The following mgl:map-segments call is performing the Xavier initialization of the input layers. It is crucial to properly initialize the layers of the network before training or, at least, ensure that they are not all set to zeroes.
  • The next part is, finally, responsible for WATCHING THE MODEL TRAIN. mgl:monitor-optimization-periodically is a hook to make MGL invoke some callbacks that will help you peek into the optimization process (and, perhaps, do other needful things). That's where we insert our draw-test-error function that will run each batch. There's also an out-of-the-box cost-monitor attached directly to the mgl:bp-learner, which is collecting the data for us and also printing it on the screen. I guess, we could build the draw-test-error monitor in a similar way, but I opted for my favorite Lisp magic wand — a special variable *agg-loss*.
  • And last but not least, we need to provide the dataset to the model: (sample-adata data (* epochs batch-size)). The simple approach that I use here is to pre-sample the necessary number of examples beforehand. However, streaming sampling may be also possible with a different dataset-generating function.

Now, let's take a look at the function that is drawing the graph:

(defun draw-test-error (opt learner)
  ;; here, we print out the architecture and parameters of
  ;; our model and learning algorithm
  (when (zerop (mgl:n-instances opt))
    (describe opt)
    (describe (mgl:bpn learner)))
  ;; here, we rely on the fact that there's
  ;; just a single cost monitor defined
  (let ((mon (first (mgl:monitors learner))))
;; using some of RUTILS syntax sugar here to make the code terser
    (push (pair (+ (? mon 'counter 'denominator)
                   (if-it (first *agg-loss*)
                          (lt it)
                (? mon 'counter 'numerator))

(defun redraw-loss-graph (&key (file "/tmp/loss.png") (smoothing 10))
  (adw-charting:with-chart (:line 800 600)
    (adw-charting:add-series "Loss" *agg-loss*)
     (fmt "Smoothed^~a Loss" smoothing)
     (loop :for i :from 0
           :for off := (* smoothing (1+ i))
           :while (< off (length *agg-loss*))
           :collect (pair (? *agg-loss* (- off (floor smoothing 2)) 0)
                          (/ (reduce ^(+ % (rt %%))
                                     (subseq *agg-loss* (- off smoothing) off)
                                     :initial-value 0)
    (adw-charting:set-axis :y "Loss" :draw-gridlines-p t)
    (adw-charting:set-axis :x "Iteration #")
    (adw-charting:save-file file)))

Using this approach, I could also draw the change of the validation loss on the same graph. And I'll do that in the next version.

ADW-CHARTING is my goto-library when I need to draw a quick-and-dirty chart. As you see, it is very straightforward to use and doesn't require a lot of explanation. I've looked into a couple other charting libraries and liked their demo screenshots (probably, more than the style of ADW-CHARTING), but there were some blockers that prevented me from switching to them. Maybe, next time, I'll have more inclination.  

To complete the picture we now need to display our learning progress not just with text running in the console (produced by the standard cost-monitor), but also by updating the graph. This is where Emacs' nature of a swiss-army knife for any interactive workflow came into play. Surely, there was already an existing auto-revert-mode that updates the contents of a Emacs buffer on any change or periodically. For my purposes, I've added this lines to my Emacs config:

(setq auto-revert-use-notify nil)
(setq auto-revert-interval 6)  ; refresh every seconds

Obviously, this can be abstracted away into a function which could be invoked by pressing some key or upon other conditions occurring.

Jesse Moynihan: Better Tarot News

So the bad news is it looks like I really got scammed out of $7000 by this guy Carlos who has dropped off the planet with my money. I left him a threatening phone message but I think that’s probably the end of that story. The good news is I have a friend who just […]

Disquiet: About Today Comic for 2021.10.12

New Cyanide and Happiness Comic

Saturday Morning Breakfast Cereal: Saturday Morning Breakfast Cereal - Which

Click here to go see the bonus panel!

Unfortunately it's often just a local optimum.

Today's News:

Tea Masters: How to smell tea?

In case you missed it, here is the video of my tea class this weekend. The subject of the scents of tea leaves has generated a lot of interest. So, I will do a part 2 the coming weekend and focus on how we smell the tea brew!

Tea leaves are usually smelled in 3 different places:
- on a plate,
- in the preheated teapot,
- in a jar.

The worst place to smell a tea is in a plastic foil and that's why I don't even mention this possibility! Some plastic bags can have a strong plastic smell, and even if they don't, I find that they contribute to diminish the intensity of the scents of the dry leaves. So, what is the best place to smell the dry leaves? I would say on a glazed porcelain plate, because you get to combine the senses of sight and smell, and because the tea won't be too much impacted by the quality of the plate. However, if the question is what is the place that brings out the best, the finest, the most intense fragrances of tea leaves, I would not hesitate and say a traditional porcelain tea jar, glazed inside and outside, of high quality.
This Jingdezhen qinghua jar from the 1980s is like a thin wine glass. The glazed porcelain is the best material to handle the light scents of tea with precision. The round shape concentrates the aromas at the opening and this adds intensity.

The effects of this jar are almost magical. The tea seems so much better and purer than on a plate or in a bag. Especially with roasted Oolongs, it helps to reduce the overly roasted aromas within minutes. It works like a decanter for a young red wine! If you want to show how important the right accessories are, just compare the scent of the same tea in its plastic foil and in this jar! Some of the people who made this experience with me wondered if it was really the same tea they were smelling!

And for the long term, this qinghua jar also protects the leaves from humidity and helps them to improve slowly, but surely. Comic for 2021.10.11

New Cyanide and Happiness Comic

Ideas: An Evening with Chickens

Chickens have followed humankind around the world, giving us eggs and meat, and also spiritual and social comfort. And it’s the living animal who stars in this podcast by IDEAS producer, Tom Howell. Spend an hour with this helpful creature and hear its tales of adventure from dinosaur times to the modern city. *Originally aired on October 19, 2020.

The Shape of Code: Two failed software development projects in the High Court

When submitting a bid, to be awarded the contract to develop a software system, companies have to provide information on costs and delivery dates. If the costs are significantly underestimated, and/or the delivery dates woefully optimistic, one or more of the companies involved may resort to legal action.

Searching the British and Irish Legal Information Institute‘s Technology and Construction Court Decisions throws up two interesting cases (when searching on “source code”; I have not been able to figure out the patterns in the results that were not returned by their search engine {when I expected some cases to be returned}).

The estimation and implementation activities described in the judgements for these two cases could apply to many software projects, both successful and unsuccessful. Claiming that the system will be ready by the go-live date specified by the customer is an essential component of winning a bid, the huge uncertainties in the likely effort required comes as standard in the software industry environment, and discovering lots of unforeseen work after signing the contract (because the minimum was spent on the bid estimate) is not software specific.

The first case is huge (BSkyB/Sky won the case and EDS had to pay £200+ million): (1) BSkyB Limited (2) Sky Subscribers Services Limited: Claimants – and (1) HP Enterprise Services UK Limited (formerly Electronic Data Systems Limited) (2) Electronic Data systems LLC (Formerly Electronic Data Systems Corporation: Defendants. The amount bid was a lot less than £200 million (paragraph 729 “The total EDS “Sell Price” was £54,195,013 which represented an overall margin of 27% over the EDS Price of £39.4 million.” see paragraph 90 for a breakdown).

What can be learned from the judgement for this case (the letter of Intent was subsequently signed on 9 August 2000, and the High Court decision was handed down on 26 January 2010)?

  • If you have not been involved in putting together a bid for a large project, paragraphs 58-92 provides a good description of the kinds of activities involved. Paragraphs 697-755 discuss costing details, and paragraphs 773-804 manpower and timing details,
  • if you have never seen a software development contract, paragraphs 93-105 illustrate some of the ways in which delivery/payments milestones are broken down and connected. Paragraph 803 will sound familiar to developers who have worked on large projects: “… I conclude that much of Joe Galloway’s evidence in relation to planning at the bid stage was false and was created to cover up the inadequacies of this aspect of the bidding process in which he took the central role.” The difference here is that the money involved was large enough to make it worthwhile investing in a court case, and Sky obviously believed that they could only be blamed for minor implementation problems,
  • don’t have the manager in charge of the project give perjured evidence (paragraph 195 “… Joe Galloway’s credibility was completely destroyed by his perjured evidence over a prolonged period.”). Bringing the law of deceit and negligent misrepresentation into a case can substantially increase/decrease the size of the final bill,
  • successfully completing an implementation plan requires people with the necessary skills to do the work, and good people are a scarce resource. Projects fail if they cannot attract and keep the right people; see paragraphs 1262-1267.

A consequence of the judge’s finding of misrepresentation by EDS is a requirement to consider the financial consequences. One item of particular interest is the need to calculate the likely effort and time needed by alternative suppliers to implement the CRM System.

The only way to estimate, with any degree of confidence, the likely cost of implementing the required CRM system is to use a conventional estimation process, i.e., a group of people with the relevant domain knowledge work together for some months to figure out an implementation plan, and then cost it. This approach costs a lot of money, and ties up scarce expertise for long periods of time; is there a cheaper method?

Management at the claimant/defence companies will have appreciated that the original cost estimate is likely to be as good as any, apart from being tainted by the perjury of the lead manager. So they all signed up to using Tasseography, e.g., they get their respective experts to estimate the amount of code that needs to be produce to implement the system, calculate how long it would take to write this code and multiply by the hourly rate for a developer. I would loved to have been a fly on the wall when the respective IT experts, all experienced in provided expert testimony, were briefed. Surely the experts all knew that the ballpark figure was that of the original EDS estimate, and that their job was to come up with a lower/high figure?

What other interpretation could there be for such a bone headed approach to cost estimation?

The EDS expert based his calculation on the debunked COCOMO model (ok, my debunking occurred over six years later, but others have done it much earlier).

The Sky expert based his calculation on the use of function points, i.e., estimation function points rather than lines of code, and then multiply by average cost per function point.

The legal teams point out the flaws in the opposing team’s approach, and the judge does a good job of understanding the issues and reaching a compromise.

There may be interesting points tucked away in the many paragraphs covering various legal issues. I barely skimmed these.

The second case is not as large (the judgement contains a third the number of paragraphs, and the judgement handed down on 19 February 2021 required IBM to pay £13+ million): SCIS GENERAL INSURANCE LIMITED: Claimant – and – IBM UNITED KINGDOM LIMITED: Defendant.

Again there is lots to learn about how projects are planned, estimated and payments/deliveries structured. There are staffing issues; paragraph 104 highlights how the client’s subject matter experts are stuck in their ways, e.g., configuring the new system for how things used to work and not attending workshops to learn about the new way of doing things.

Every IT case needs claimant/defendant experts and their collection of magic spells. The IBM expert calculated that the software contained technical debt to the tune of 4,000 man hours of work (paragraph 154).

If you find any other legal software development cases with the text of the judgement publicly available, please let me know (two other interesting cases with decisions on the British and Irish Legal Information Institute).

LaForge's home page: First steps towards an ITU-T V5.1 / V5.2 implementation

As some of you may know, I've been starting to collect "vintage" telecommunications equipment starting from analog modems to ISDN adapters, but also PBXs and even SDH equipment. The goal is to keep this equipment (and related software) alive for demonstration and practical exploration.

Some [incomplete] information can be found at

Working with PBXs to simulate the PSTN (ISDN/POTS) network is fine to some extent, but it's of course not the real deal. You only get S0-buses and no actual Uk0 like actual ISDN lines of the late 80ies and 90ies. You have problems with modems not liking the PBX dialtone, etc.

Hence, I've always wanted to get my hand on some more real-world central-office telephone network equipment, and I finally have a source for so-called V5.1/V5.2 access multiplexers. Those are like remote extension boxes for the central office switch (like EWSD or System 12). They aggregate/multiplex a number of analog or ISDN BRI subscriber lines into E1 lines, while not implementing any of the actual call control or ISDN signalling logic. All of that is provided by the actual telephone switch/exchange.

So in order to integrate such access multiplexers in my retronetworking setup, I will have to implement the LE (local exchange) side of the V5.1 and/or V5.2 protocols, as specified in ITU-T G.964 and G.965.

In the limited spare time I have next to my dayjob and various FOSS projects, progress will likely be slow. Nonetheless I started with an implementation now, and I already had a lot of fun learning about more details of those interfaces and their related protocols.

One of the unresolved questions is to what kind of software I would want to integrate once the V5.x part is resolved.

  • lcr would probably be the most ISDN-native approach, but it is mostly unused and quite EOL.

  • Asterisk or FreeSWITCH would of course be obvious candidates, but they are all relatively alien to ISDN, and hence not very transparent once you start to do anything but voice calls (e.g. dialup ISDN data calls in various forms).

  • yate is another potential candidate. It already supports classic SS7 including ISUP, so it would be a good candidate to build an actual ISDN exchange with V5.2 access multiplexers on the customer-facing side (Q.921+Q.931 on it) and SS7/ISUP towards other exchanges.

For now I think yate would be the most promising approach. Time will tell.

The final goal would then be to have a setup [e.g. at a future CCC congress] where we would have SDH add/drop multiplexers in several halls, and V5.x access multiplexers attached to that, connecting analog and ISDN BRI lines from individual participants to a software-defined central exchange. Ideally actually multiple exchanges, so we can show the signaling on the V5.x side, the Q.921/Q.931 side and the SS7/ISUP between the exchanges.

Given that the next CCC congress is not before December 2022, there is a chance to actually implement this before then ;)

Charles Petzold: Concert Diary: Baritone Will Liverman


... more ...

The Universe of Discourse: More words change meanings

“Salient” seems to have lost its original meaning, and people mostly use it as if it were synonymous with “relevant” or “pertinent”. This is unfortunate. It's from Latin salīre, which is to jump, and it originally meant something that jumps out at you. In a document, the salient point isn't necessarily the one that is most important, most crucial, or most worth consideration; it's the one that jumps out.

It is useful to have a word specifically for something that jumps out, but people no longer understand it that way.

Cognates of salīre include “assail" and “assault”, “salmon” (the jumping fish), and the mysterious “somersault”.

The Universe of Discourse: Words change meanings

This Imgur gallery has a long text post about a kid who saw the movie Labyrinth) in London and met David Bowie after. The salient part was:

He seemed surprised I would want to know, and he told me the whole thing, all out of order, and I eked the details out of him.

This is a use of “eke” that I haven't seen before. Originally “eke” meant an increase, or a small addition, and it was also used in the sense of “also”. For example, from the prologue to the Wife of Bath's tale:

I hadde the bettre leyser for to pleye, And for to se, and eek for to be seye

(“I had more opportunity to play, and to see, and also to be seen.”)

Or also, “a nickname” started out as “an ekename”, an also-name.

From this we get the phrase “to eke out a living”, which means that you don't have quite enough resources, but by some sort of side hustle you are able to increase them to enough to live on.

But it seems to me that from there the meaning changed a little, so that while “eke out a living” continued to mean to increase one's income to make up a full living, it also began to connote increasing one's income bit by bit, in many small increments. This is the sense in which it appears to be used in the original quotation:

He seemed surprised I would want to know, and he told me the whole thing, all out of order, and I eked the details out of him.


Searching for something in a corpus of Middle English can be very frustrating. I searched and searched the University of Michigan Corpus of Middle English Prose and Verse looking for the Chaucer quotation, and couldn't find it, because it has “to se” and “to be seye”, but I searched for “to see” and “to seye”; it has “eek” and I had been searching for “eke”. Ouch.

In the Chaucer, “leyser” is “leisure”, but a nearly-dead sense that we now see only in “complete the task at your leisure”.

new shelton wet/dry: Every day, the same, again

Artist who squirts paint with his eyes destroys canvases to create NFTs

We trained two monkeys to play the Pac-Man

They fed forty ducks a diet of commercial duck mash salted with powdered depleted uranium. None of the ducks died of it, or got sick, or even lost weight. Moreover, the researchers reported, the ducks “were in fair to excellent flesh” when slaughtered.

Forty-one percent of children claimed that bacon came from a plant

Norway to hit 100 per cent electric vehicle sales early next year

Johns Hopkins researchers find thousands of unknown chemicals in electronic cigarettes

Italian sailors knew of America 150 years before Christopher Columbus, new analysis of ancient documents suggests

Compared to vegans, meat consumers experienced both lower depression and anxiety

How to Grow Your Bangs Out So Much You Escape the Surveillance State [Thanks Tim]

Porn star Belle Delphine makes $1.2 million in a month with OnlyFans. Delphine is perhaps best known for her “gamer girl bathwater” stunt where she sold $30 jars of her own used bathwater

Charles Petzold: Concert Diary: “Boris Godunov” at the Metropolitan Opera


... more ...

Jesse Moynihan: Forming 335

The Universe of Discourse: Diminishing resources in the Korean Language

Hangul, the Korean alphabet, was originally introduced in the year 1443. At that time it had 28 letters, four of which have since fallen out of use. If the trend continues, the Korean alphabet will be completely used up by the year 7889, preceded by an awful period in which all the words will look like

앙 앙앙앙 앙앙 앙 앙앙앙앙 앙

and eventually


Tea Masters: The TeaMasters tea classes continue

If you like the tea class I made last week on Lu Yu above, I hope you'll join a little bit at 9:30 Eastern today on Facebook for a new topic: How to smell tea leaves? Joining the class live is free and enables you to ask me questions during the class. The answers I give at the end of the class are not posted on YouTube (to keep the videos short). This is an incentive for you to join live and share your passion with other tea fans.

Arduino Blog: Instantly test your cables by plugging them into this device

Cables come in a wide variety of styles and attempting to diagnose a potential fault in one of their tiny wires can be tricky, especially without access to fancy test equipment. To combat this problem, TechKiwiGadgets created a small device called the Touch Screen Cable Tracer, which has several varieties of connectors on both ends that allow for a USB or RJ45 cable to be plugged in and subsequently tested. 

The board selected for this project was an Arduino Mega due to its large amount of RAM and GPIO pins. Placed on top of this was an ILI9325 2.8” TFT screen, which shows the menu for the cable tracing device and the current state of the attached cable. TechKiwiGadgets also designed, fabricated, and assembled a custom cable tracer shield that snaps onto the Arduino and exposes a mirrored set of connectors on either end. 

After putting the Touch Screen Cable Tracer together and placing it into a custom enclosure, it was time to test it out. There are two modes (auto and manual) that can be used to select the type of cable being used. Once the cable has been detected, the Mega attempts to pass current through the wires and read it on the other end. If a fault has occurred, it shows up on the screen as a missing conductor. 

If this unit looks familiar, that’s because it was based on an earlier version previously covered on our blog. However, the Touch Screen Cable Tracer is 70% smaller than its predecessor and employs the custom shield and snap-together parts to eliminate meticulous soldering. More details on the device can be found in TechKiwiGadgets post here.

The post Instantly test your cables by plugging them into this device appeared first on Arduino Blog.

new shelton wet/dry: Among competing hypotheses to explain events, go with the simplest, the one that requires the least number of assumptions, until that hypothesis is proven wrong


new shelton wet/dry: Every day, the same, again

2.jpgOld NY mobsters fear handing over the reins to the new generation of mafiosi because they’re softer and dumber —and are too obsessed with their cellphones

US man sues ‘Psychic Love Specialist’ for fraud, seeks US$25,000 in damages. He paid her US$5,100 to remove spell by witch hired by ex-girlfriend.

Stare at a blank wall in any room, and you are unlikely to learn much more than the paint color. But a new technology can inconspicuously scan the same surface for shadows and reflections imperceptible to the human eye, then analyze them to determine details, including how many people are in the room—and what they are doing.

Because single-use plastics are largely derived from petroleum, by 2050 plastics might account for 20% of the world’s annual oil consumption. Reducing our dependence on plastics, and finding ways to reuse the plastic that’s already out in the world, could greatly reduce emissions. Right now, only about 15% of all plastics worldwide are collected for recycling each year.

We’ve long assumed that one of the fundamental functions of the brain is its ability to store memories, thus allowing animals, including humans, to alter behaviour in light of past experience. If the seat of all memory was truly the brain, then to ensure long-term stability of stored information, the brain cells and their circuits would need to remain stable, like the books on your bookshelf. If someone started to tear pages out from these books, not only would the books be seriously damaged but you would have lost forever these books’ contents. Yet, animals such as the planaria that exhibit a remarkable capacity to quickly regrow new body parts, including their brains, confront us with a fascinating question: how can fixed memories persist when bodies and even brains do not? […] Some biologists have succeeded in chopping up one planarian into 279 pieces. Each tiny piece eventually formed a miniature complete worm, which grew in time to its normal size of up to ¾ inches, depending on the species and the availability of food.

Birds Have a Mysterious ‘Quantum Sense’. Scientists Have Now Seen It in Action

Hundreds of three-eyed ‘dinosaur shrimp’ emerge after Arizona monsoon — Their eggs can stay dormant for decades, waiting for water

Disney cancels Siamese cats from Lady and the Tramp reboot

A week in Lagos — The Nigerian megacity is a massive experiment – unregulated and wild, with endless traffic jams, waterfront slums and an impressively resilient population.

Offshore havens and hidden riches of world leaders and billionaires exposed in unprecedented leak [More]

The documents reveal a company [Facebook] worried that it is losing power and influence, not gaining it, with its own research showing that many of its products aren’t thriving organically. Instead, it is going to increasingly extreme lengths to improve its toxic image, and to stop users from abandoning its apps in favor of more compelling alternatives. […] What I’m talking about is a kind of slow, steady decline that anyone who has ever seen a dying company up close can recognize. [NY Times]

i have stolen over 4 terabytes of NFTs via the little known hacker technique known as “right click -> save as”. my collection has a net estimated value of over 8 trillion dollars

things magazine: Truth or bear

A Place Like No Other: the mysteries of Suffolk Pink / a new book about Mid-Century British architecture / Berlin U-Bahn Architecture & Design Map (via Wallpaper*) / a review of ‘The Great Beanie Baby Bubble’ by Zac Bissonnette. At … Continue reading

Jesse Moynihan: The Latest Tarot Fiasco

Okay y’all this really stinks. So the guy who was helping me print my tarot cards has officially split town. I think he has blocked me on email. It looks like I’m out $7000 unless I try taking him to small claims court. I talked to the printing house he was working with and they […]

Arduino Blog: Duco is a wall-climbing robot that paints circuit murals

When we think of circuits, we tend to picture wires or PCB traces. But a circuit is anything that conducts electricity between components. Today we have more options than ever before thanks to material like conductive ink and thread. Utilizing conductive ink on a large scale, Duco is an open source wall-climbing robot that brings interactivity to vertical everyday surfaces.

Duco’s inspiration came from Sandy Noble’s fantastic Polargraph, which was a hanging pen plotter robot that could draw large images. But those images didn’t serve any purpose beyond visual appeal. Duco takes the Polargraph idea into a whole new direction. By swapping between special pens, Duco can draw conductive, dielectric, cleaning, or decorative lines on walls. Those combine to create multilayer functional circuits.

An Arduino Uno board controls Duco through a motor shield. It has two stepper motors, a servo motor, a linear actuator, and a UV light. It is capable of switching between two different pens — normally the conductive and dielectric ink. The UV light cures the ink after Duco applies it to a wall. Most of Duco’s frame parts were 3D-printed.

In one demonstration, Duco drew a working piano circuit onto a wall. Once the components, including control boards and speakers, were added to the circuit, people could play the piano by touching the conductive pads. In another demonstration, Duco turned a wall into a large capacitive touch sensor grid similar to a massive track pad. Duco’s creators even experimented with a laser module add-on, which let the robot cut the circuit “substrate” material.

The post Duco is a wall-climbing robot that paints circuit murals appeared first on Arduino Blog. / 2021-10-16T12:57:39