Bifurcated Rivets: From FB

Pick yourself up

Bifurcated Rivets: From FB


Bifurcated Rivets: From FB

More deserted houses

Bifurcated Rivets: From FB


Bifurcated Rivets: From FB

Unit 7

Recent CPAN uploads - MetaCPAN: Thrift-0.15.0

Apache Thrift is a software framework for scalable cross-language services development.

Recent CPAN uploads - MetaCPAN: Thrift-0.14.2

Apache Thrift is a software framework for scalable cross-language services development.

Recent CPAN uploads - MetaCPAN: Thrift-0.14.1

Apache Thrift is a software framework for scalable cross-language services development.

Slashdot: After 47 Years, US Power Company Abandons Still-Unfinished $6 Billion Nuclear Power Plant

America's federally-owned electric utility, the Tennessee Valley Authority, has spent billions of dollars with nothing to show for it, reports the Chattanooga Times Free Press. "Nearly 47 years after construction began on the Bellefonte Nuclear Power Plant in Northeast Alabama, the Tennessee Valley Authority is giving up its construction permit for America's biggest unfinished nuclear plant and abandoning any plans to complete the twin-reactor facility..." Giving up the construction permit at Bellefonte signals the end of any new nuclear plant construction at TVA with only seven of the 17 nuclear reactors the utility once planned to build ever completed.... Since the 1970s, a total of 95 nuclear reactors proposed to be built by U.S. utilities have been canceled due to rising construction costs, slowing power demand and cheapening power alternatives. The NRC now regulates 93 remaining commercial nuclear reactors at 56 nuclear power plants, including TVA's Sequoyah and Watts Bar nuclear plants in East Tennessee and the Browns Ferry nuclear plant in Athens, Alabama. Collectively, those nuclear plants provide more than 40% of TVA's power and over 20% of the nation's electricity supply... TVA spokesman Jim Hopson said in the past two decades, the growth in power demand in the Tennessee Valley has continued to slow as more energy efficiency measures have been adopted and the price of natural gas, solar power and additional hydroelectric generation has declined in competition with nuclear. Thanks to long-time Slashdot reader The Real Dr John for sharing the story. And today the Chattanooga Times Free Press opinions editor offered this suggestion: TVA still owns the 1,600-acre site, as well as the plant that has never — and likely now will never — generate the first spark of nuclear-produced electricity. But that doesn't mean it can't make power some other way. A gas plant? Uggh. A wind field? Seems unlikely given the stillness of North Alabama. A solar plant? That could be more of a possibility. All of the transmission equipment and the electrical grid is at the ready... By now — after siting, building, scrapping, building again, abandoning, putting up for sale, agreeing to sell for pennies on the dollar and finally going to court to defend not selling the Bellefonte Nuclear Plant — TVA ratepayers and taxpayers have lost somewhere between $6 billion (according to TVA) and $9 billion (according to a 2018 letter from five congressmen)... TVA spokesman Jim Hopson said Wednesday that TVA is making no decisions immediately. "But we're not taking anything off the table," he added... Hopson said TVA's May 2021 "strategic intent and guiding principles" notes the utility has solar commitments to date of more than 2,300 megawatts of solar capacity expected to come online by the end of 2023. Including those projects, TVA expects to add 10,000 megawatts of solar power by 2035 — a 24-fold increase from today. That 10,000 megawatts of solar power would be equal to more than eight would-be Bellefonte reactors.

Read more of this story at Slashdot.

Hackaday: Elderly Remote Keeps Things Simple

If you are lucky, you’ve never experienced the heartbreak of watching a loved one lose their ability to do simple tasks. However, as hackers, we have the ability to customize solutions to make everyday tasks more accessible. That’s what [omerrv] did by creating a very specific function remote control. The idea is to provide an easy-to-use interface for the most common remote functions.

This is one of those projects where the technology puzzle is now pretty easy to solve: IR remotes are well-understood and there are plenty of libraries for recording and playing back signals. The real work is to understand the user’s challenges and come up with a workable compromise between something useful and something too complex for the user to deal with.

Fortunately, with all the prototyping tools readily available now, it is easy to experiment with different setups to see what would work best. Larger keys? Color coding? A different arrangement of buttons? All of those things are easy to experiment with and, of course, what works for one person might not work for another. Even given time, it is possible that different configurations will work better or worse for the same person.

It isn’t likely that you’d duplicate [omerrv’s] remote directly. It may not work for your purpose. But it is a good inspiration on how we can use our ability to create customized hardware to improve the quality of life for those who need help.

We’ve seen similar projects — each one is a bit different. We wonder if old-fashioned remotes with their natural limitations would be a bit easier for people to handle?

Recent CPAN uploads - MetaCPAN: App-DBBrowser-2.284

Browse SQLite/MySQL/PostgreSQL databases and their tables interactively.

Changes for 2.284 - 2021-09-26

  • Attached databases: do not allow 'main' and 'temp' as alias names.
  • Code refactoring.

Recent additions: seonbi 0.2.3

Added by hongminhee, 2021-09-26T10:36:35Z.

SmartyPants for Korean language

MetaFilter: Canada, China and US were all doomed to lose in Meng Wanzhou's case

The deal allowing Meng Wanzhou to return home to China (The Guardian) nearly three years after her arrest will come as a relief to all the participants in a saga that rapidly turned from a narrow legal dispute into an escalating geopolitical battle.

Donald Trump made the case explicitly political by saying he would intervene to drop the charges if he thought it would help US-China trade negotiations.

It was highly unusual for the prosecution to be directed at the chief finance officer personally and not at the corporation. Last year, Airbus agreed to pay $4bn in penalties to resolve a bribery case. In 2015, Deutsche Bank was fined $258m for violating Iran- and Syria-related sanctions. But no executives were detained in either case.

Indeed, at a hearing in August, the judge in the case said that the case against Meng seemed very unusual. No one lost money, the allegations were several years old, and the intended victim, a global bank, knew the truth even as it was allegedly being lied to.

Heather Holmes, associate chief justice, asked: "Isn't it unusual that one will see a fraud case with no actual harm many years later? And one in which the alleged victim, a large institution, appears to have had numerous people within the institution who had all the facts that are now said to be misrepresented?"

Hours later it was announced that Michael Spavor and Michael Kovrig, accused of espionage by China in the same year, were flying home to Canada. (BBC)

Beijing denies detaining the Canadians in retaliation for Ms Meng's arrest. But critics have accused China of using them as political bargaining chips.

Recent CPAN uploads - MetaCPAN: Geonode-Free-ProxyList-0.0.4

Get Free Geonode Proxies by using some filters

Changes for 0.0.4 - 2021-09-26

  • Bump up required perl version to 5.010.

Recent additions: ascii

Added by chris_martin, 2021-09-26T08:56:00Z.

The ASCII character set and encoding

Recent additions: ascii

Added by chris_martin, 2021-09-26T08:21:10Z.

The ASCII character set and encoding

Recent additions: ascii

Added by chris_martin, 2021-09-26T08:13:42Z.

The ASCII character set and encoding

Recent additions: ascii-char

Added by chris_martin, 2021-09-26T08:13:29Z.

A Char type representing an ASCII character

Hackaday: Reinforced Concrete: Versatile At Any Size?

In our community we’re no strangers to making things, and there are plenty among us who devote their efforts to modelmaking. It’s uncommon, though, for a scale model of something to be made using the exact same techniques as whatever it’s copying. Instead a model might be made from card, foam, glassfibre, or resin. [tiny WORLD] takes an opposite tack, building scale model civil engineering projects just as they would have been for real. (Video, embedded below.)

Here, a scale model of the Hoover Dam bypass bridge is made as the original, from reinforced concrete. In place of rebar is a wire grid in place of wooden shuttering is what looks like foam board, the concrete is a much smoother mortar, but otherwise it’s the real thing. We see the various bridge parts being cast in situ, with the result being as strong as you’d expect from the original.

We can see that this is a great technique for modelling concrete buildings and structures, but it’s also a material that we think might have other applications at this scale. How would the rigidity, strength, and mass of small-scale reinforced cement compare to 20-20 extrusion, 3D-printed plastic, or wood, for example? Regardless, it’s interesting to watch, as you can see from the video below the break.

Thanks [Michael Field] for the tip.

Slashdot: Facing Post-Brexit Petrol Shortage, UK Issues Emergency Visas for EU Truck Drivers

Slashdot reader AleRunner tipped us off to some excitement in the UK: The British government said on Friday it may draft in the army to help deliver gas after shortages caused by a scarcity of truck drivers forced the closure of stations across the country. The haulage industry said there was a shortfall of some 100,000 drivers, and that could also lead to shortages of turkeys and toys this Christmas. Some 25,000 drivers returned to Europe after Brexit, and the pandemic halted the qualification process for new workers... Gas is just the latest thing that people in the U.K. are finding hard to come by after its departure from the European Union. Previously McDonald's has been forced to take milkshakes off the menu, KFC has run short on chicken and supermarket shelves have been left bare. The crisis is already beginning to bite in other areas of life, with 18 percent of adults saying they have been unable to buy essential food items in the past two weeks, according to the U.K.'s Office for National Statistics. The pandemic means that many countries are facing supply chain problems, as manufacturing centers in Asia are hit by continuing cases and restrictions. Now the Associated Press reports the government has decided to issue thousands of emergency visas to foreign truck drivers: Post-Brexit immigration rules mean newly arrived EU citizens can no longer work visa-free in Britain, as they could when the U.K. was a member of the trade bloc. Trucking companies have been urging the British government to loosen immigration rules so drivers can more easily be recruited from across Europe... One cause of the trucker shortage is a backlog caused by the suspension of driver testing for months during Britain's coronavirus lockdowns. The government has already increased testing capacity, as well as extending the number of hours that drivers can work each week, prompting safety concerns. The government said military driving examiners would be pulled in to further boost civilian testing capacity.

Read more of this story at Slashdot.

MetaFilter: Many Amen breaks, and other breaks, and arps, and other 90s things

A two hour DJ set by Four Tet, recorded at the Lost Village Festival on August 28th, 2021. (Rough set list at MixesDB)

MetaFilter: Netflix Cowboy Bebop adaptation releases opening credits

Netflix releases the opening credits (Tank!) for the new adaptation, which comes out in November. Original here, for comparison

I'm curious what others think. I'm torn! I really want this adaptation to be good! I'm generally down with the casting (honestly my favorite choice thus far is Jet, he looks awesome). The style they are going for in the credits reminds me of Sin City or something...which is good and bad? It seemed like their plan was not to be too tied to the original, which I thought was smart...TV isn't anime, and has its own strengths and weaknesses (anime fans be damned). But this makes it look like they are trying really hard to have a more "anime-esque" TV show...which makes me a little worried. It's entirely possible they just played that up to make the opening credits match up with the original, though (which honestly is what I hope!)

That said, I'm glad Mushroom Samba made it. The casting for the characters looks great and that's a really fun episode from the original.

Honestly the think I'm most excited about, by far, is that they got Yoko Kanno to work with them. If we get some new music out of this then the rest be damned, it will have been worth it...

MetaFilter: Skoilet

Rob Sheridan: Many of you sent me this viral photo of a skull toilet - a "Skoilet," if you will - and I am very grateful, because this is of course Extremely My Shit. I had to know more, and I ended up down a rabbit hole into the fascinating world of luxury European designer skoilets. THREAD / Threadreader

Hackaday: COVID Green Pass Validator with Raspberry Pi

A Raspberry Pi-based COVID Green Pass validator verifies a QR code on a phone.

It seems like every nation is dealing with the plague a little differently. In June, the EU instated a COVID Green Pass which comes in the form of a paper or digital QR code. It was designed to grease the wheels of travel throughout Europe and allow access to nursing homes. As of early August, the Green Pass is now required of those 12 and older in Italy to gain access to bars and restaurants, museums, theaters, etc. — anywhere people gather in sizeable groups. The Green Pass shows that you’ve either been vaccinated, have had COVID and recovered, or you have tested negative, and there are different half-lives for each condition: nine months for vaccinated, six for recovered, and just forty-eight hours for a negative test.

[Luca Dentella] has built a Green Pass validator using a Raspberry Pi and a Raspi camera. Actual validation must be done through the official app, so this project is merely for educational purposes. Here’s how it works: the user data including their status and the date/time of pass issuance are encoded into a JSON file, then into CBOR, then it is digitally signed for authenticity. After that, the information is zipped up into a base-45 string, which gets represented as a QR code on your phone. Fortunately, [Luca] found the Minister of Health’s GitHub, which does the hard work of re-inflating the JSON object.

[Luca]’s Pi camera reads in the QR and does complete validation using two apps — a camera client written in Python that finds QRs and sends them to the validation server, written in Node.js. The validation server does formal verification including verifying the signature and the business rules (e.g. has it been more than 48 hours since Karen tested negative?) Fail any of these and the red LED lights up; pass them all and you get the green light. Demo video is after the break.

Are you Canadian? Then check this out, eh?

Slashdot: 26,000 and Counting: America is Installing Hundreds More Bitcoin ATMs Each Week

The cryptocurrency-ATM company Coinmover has over 100 machines in stores in Massachusetts, New Hampshire, Connecticut, and Washington state — and plans to have 1,250 machines in 18 states by the end of the year, reports the Boston Globe. Right now each machine is selling "an average of about $40,000 in cryptocurrency each month." There's a nationwide surge in easier ways to buy cryptocurrencies, with bitcoin ATMs leading the way. According to the industry tracking site Coin ATM Radar, there were about 6,000 such machines in the U.S. at this time last year, but over 26,000 today, with hundreds more installed every week. And that only counts "pure" bitcoin ATMs, the ones that only sell cryptocurrency. In addition, thousands of traditional cash-vending ATMs have been modified to support crypto purchases as well. Then there's Coinstar, which makes the coin-counting machines found in many US supermarkets. About 7,500 of these machines now sell bitcoin, and that number is expected to reach 10,000 by year's end. Researchers at a different site, How Many Bitcoin ATMs, have added these hybrid machines to the mix, and estimate there are over 42,000 bitcoin vending machines in the US today.... Financial technology giant NCR has entered the game. Last month NCR acquired Boston-based LibertyX, one of the first bitcoin ATM companies. These days, LibertyX mainly makes software to add crypto vending capabilities to standard ATMs and retail point-of-sale devices — the modern equivalent of cash registers. NCR is one of the world's leading makers of ATMs and point-of-sale devices. The LibertyX acquisition doesn't just mean thousands more crypto-capable ATMs. It could also mean that thousands of retail stores could sell crypto just like candy bars. It's already happening. LibertyX has deals with retailers CVS, Rite Aid, and 7-Eleven to enable bitcoin purchases at selected stores. A customer uses a LibertyX smartphone app to punch in the amount he or she wants to buy, up to $500 per day. A barcode appears on the phone's screen. A clerk scans the barcode and the customer hands over the cash. It's instantly added to the customer's bitcoin account, less a $4.95 transaction fee. LibertyX claims this service is now available at over 20,000 retail stores... According to a survey from the University of Chicago, 13 percent of US adults bought or sold cryptocurrency during the past year. That's nearly 33 million people. How many more will buy in, when thousands of retail stores and ATMs become bitcoin trading posts? We're about to find out.

Read more of this story at Slashdot.

ScreenAnarchy: Fantastic Fest 2021 Review: BABY ASSASSINS, Girls Just Want to Have Fun

Akari Takaishi and Saori Izawa star in a killer action comedy, directed by Hugo Sakamoto.

[Read the whole post on]

Hackaday: The Simplest FT8 Transceiver You’ll Ever Build

Probably the most interesting facets of amateur radio in 2021 lie in the realm of digital modes. Using the limitless possibilities of software defined radios has freed digital radio communication from the limits of what could be done with analogue electronics alone, and as a result this is a rare field in which radio amateurs can still be ahead of the technological curve. On of these newer digital modes is FT8 created by the prolific [Joe Taylor K1JT].

And it’s for this  mode that [Charles Hill] has created an easy-to-build transceiver. Its brains are aTeensy 3.6, while the receive side is a Si4735 receiver chip and the transmitter is a Si5351 programmable clock chip driving a Mini-Circuits GVA84 power amplifier with an appropriate filter. The interface is via a touchscreen display. It relies on existing work that applies a patch on-the-fly to the Si4735 receiver chip for SSB reception, and another project for the FT8 software.

The charm of this transceiver is that it can be assembled almost in its entirety from modules. Some radio amateurs might complain that homebrew radios should only use the most basic of components assembled from first principles, but the obvious answer to that should be that anything which makes radio construction easier is to be welcomed. If the 100 mW output power seems a bit low it’s worth remembering that FT8 is a weak signal mode, and given the right propagation conditions the world should be able to hear it despite the meagre output.

We’ve featured quite a few radios using the Si47XX series, which can be made into very tidy receivers indeed.

Disquiet: Home, Rain, Insects

I do this manually each Saturday, collating most of the tweets I made the past week at, which I think of as my public notebook. Some tweets pop up in expanded form or otherwise on sooner. It’s personally informative to revisit the previous week of thinking out loud.

▰ Dust never sleeps

▰ 2021 is, in part, sitting alone in two different virtual conference tools associated with a single meeting’s calendar invitation, and waiting to see which (or if, yes, either) will turn out to be where the meeting will take place.

▰ Hometown telephone pole graffiti

▰ I did make it to Escape Pod Comics. If only this place existed when I was a kid.

▰ You can go home again, and you can learn things about your home in the process.

▰ Sometimes I stare at the crates of records against a wall near my desk and think: that exact space could hold an upright piano, and if there were a piano, it could (eventually) play more music than all these LPs combined. (I kept the LPs and bought a guitar instead, but yeah.) I’m actually 3,000 miles from my desk at the moment, but in a way that lends perspective.

▰ Pro tip: turn off the ceiling fan before conducting the interview you intend to record. (Turning off the rain is another story.)

▰ Fairly certain this week’s Disquiet Junto project has the best/worst pun in the 508 consecutive weeks to date.

▰ If you’ve been living in a rain-starved region for years, waking up to (from?) the sound of the roof being pummeled by a storm feels somehow wasteful. (It also sounds like thousands of tiny horses are rushing past frantically overhead.)

▰ The sheer volume of insect noise in my hometown is insane.

And now I have Hall and Oates in my head. “They only come out at night …”

And now maybe you do, too.

Slashdot: Battles Week-Long Sustained DDoS-for-Ransom Attack

Slashdot reader Striek writes:, a Canadian VoIP provider [also serving the US], has been under a sustained, and presumably massive DDoS attack which started on the September 16th, 2021. The attack has been disruptive enough to be covered by major media outlets, including Hacker News, ZDNet, Ars Technica, BleepingComputer, CTV News, and The Toronto Star. They have so far refused to pay a ransom demand, which has grown from 1 bitcoin at the outset ($45,000 USD at that time), to 100 bitcoin now, or $45 million. Similar attacks have occurred recently on several UK based VOiP providers. With DDoS attacks against VOiP infrastructure difficult to defend against — or at least more difficult than your bog-standard denial of service, this may be setting a worrying trend. Bleeping Computer reported Monday that the attack was "severely disrupting the company's operation: As customers configured their VoIP equipment to connect to the company's domain name, the DDoS attack disrupted telephony services, preventing them from receiving or making phone calls. As DNS was no longer working, the company advised customers to modify their HOSTS file to point the domain at their IP address to bypass DNS resolution. However, this just led the threat actors to perform DDoS attacks directly at that IP address as well. To mitigate the attacks, moved their website and DNS servers to Cloudflare, and while they reported some success, the company's site and VoIP infrastructure still have issues due to the continued denial-of-service attack. ZDNet has been following the story: In an update on Wednesday, apologized to customers and confirmed it was still being targeted by what it described as a 'ransom DDoS attack' . says it has over 80,000 customers in 125 countries. And in addition, this afternoon the company's Twitter account announced that "Our main U.S. upstream carrier is currently experiencing major issues on their network affecting inbound and outbound calls and messaging to US numbers. We have already been in contact with their senior leadership team and they are on it along with their whole NOC."

Read more of this story at Slashdot.

Planet Haskell: Chris Smith 2: September Virtual CoHack Recap

The September chapter of the Virtual Haskell CoHack is now past. Here’s how it went:

  • We had 12 people in attendance overall, ranging from experienced Haskell programmers to the novice and intermediate level. We had a great time getting to know each other and hearing each other’s Haskell stories.
  • One group worked on getting started with the implementation of the lambda cases GHC proposal. They made significant progress on lexing and parsing work to implement the feature.
  • Another group worked on explainable-predicates, implementing a number of minor feature requests and culminating in the implementation of qADT, a powerful Template Haskell combinator for convenient matching of algebraic data types with predicates for the fields. A new version has been released.
  • Yet another group worked on documentation for Data.Foldable, focusing on making the documentation more precise, accessible, and helpful with examples and clear language.

We’ve already got the next Virtual Haskell CoHack scheduled, so go ahead and sign up if you’d like to join the fun next time around.

Hackaday: Making Linux Offline Voice Recognition Easier

For just about any task you care to name, a Linux-based desktop computer can get the job done using applications that rival or exceed those found on other platforms. However, that doesn’t mean it’s always easy to get it working, and speech recognition is just one of those difficult setups.

A project called Voice2JSON is trying to simplify the use of voice workflows. While it doesn’t provide the actual voice recognition, it does make it easier to get things going and then use speech in a natural way.

The software can integrate with several backends to do offline speech recognition including CMU’s pocketsphinx, Dan Povey’s Kaldi, Mozilla’s DeepSpeech 0.9, and Kyoto University’s Julius. However, the code is more than just a thin wrapper around these tools. The fast training process produces both a speech recognizer and an intent recognizer. So not only do you know there is a garage door, but you gain an understanding of the opening and closing of the garage door.

In addition, the tools are all made to work in Unix-style pipelines which is refreshing. Here’s an example configuration from the project’s website:

open the garage door
close the garage door

turn on the living room lamp
turn off the living room lamp

There are templating features so you can specify optional words and alternative words in a single rule. There are other features like mapping an object like living room lamp into something more computer-friendly.

Overall, this looks like a fun tool to have in your kit. If you do something interesting with it, be sure to drop us a tip so we can cover it. Meanwhile, we’ve been watching Linux speech for quite a while. Of course, what we really want is speech commands like the USS Enterprise, and we have to admit it is getting closer.

Slashdot: 110,000 Affected by Epik Breach - Including Those Who Trusted Epik to Hide Their Identity

Epik's massive data breach is already affecting lives. Today the Washington Post describes a real estate agent in Pompano Beach who urged buyers on Facebook to move to "the most beautiful State." His name and personal details "were found on invoices suggesting he had once paid for websites with names such as,, and". The real estate brokerage where he worked then dropped him as an agent. The brokerage's owner told the Post they didn't "want to be involved with anyone with thoughts or motives like that." "Some users appear to have relied on Epik to lead a double life," the Post reports, "with several revelations so far involving people with innocuous day jobs who were purportedly purveyors of hate online." (Alternate URL here.) Epik, based outside Seattle, said in a data-breach notice filed with Maine's attorney general this week that 110,000 people had been affected nationwide by having their financial account and credit card numbers, passwords and security codes exposed.... Heidi Beirich, a veteran researcher of hate and extremism, said she is used to spending weeks or months doing "the detective work" trying to decipher who is behind a single extremist domain. The Epik data set, she said, "is like somebody has just handed you all the detective work — the names, the people behind the accounts..." Many website owners who trusted Epik to keep their identities hidden were exposed, but some who took additional precautions, such as paying in bitcoin and using fake names, remain anonymous.... Aubrey "Kirtaner" Cottle, a security researcher and co-founder of Anonymous, declined to share information about the hack's origins but said it was fueled by hackers' frustrations over Epik serving as a refuge for far-right extremists. "Everyone is tired of hate," Cottle said. "There hasn't been enough pushback, and these far-right players, they play dirty. Nothing is out of bounds for them. And now ... the tide is turning, and there's a swell moving back in their direction." Earlier in the week, the Post reported: Since the hack, Epik's security protocols have been the target of ridicule among researchers, who've marveled at the site's apparent failure to take basic security precautions, such as routine encryption that could have protected data about its customers from becoming public... The hack even exposed the personal records from Anonymize, a privacy service Epik offered to customers wanting to conceal their identity.

Read more of this story at Slashdot.

Arduino Blog: An Arduino-powered underwater ROV made out of PVC pipe

Exploring the vast underwater world is exciting, and personal breathing devices such as SCUBA allow for people to descend far further than usual. However, robots can be even better since they can operate much longer and more efficiently than a person. And because these underwater remotely operated vehicles (ROVs) can be so expensive, Ranuga Amargasinghe wanted to construct his own DIY version that costs less. 

The chassis of the ROV was fashioned from a series of 50mm PVC tubes that vary in size from 70mm all the way up to 450mm in length. A rectangular base acts as a skid and helps prevent rough landings from injuring the robot. Above that is a small box which houses a 12V lead-acid battery, along with the electronics. Commands are sent from the surface control box via UART to the Arduino Nano within the ROV, which in turn activates a bank of relay modules that turns on both the vertical and horizontal thrusters for planar movements. 

Back on the surface, Amargasinghe built a small controller that has four buttons for adjusting the thrust vector of the robot by checking if certain combinations are pressed. There is also a central rocker switch for telling the robot to shutdown immediately if the user needs it to. Once the camera and a couple of white LEDs were attached to the front of the ROV, it was tested in a small pool of water and balanced based on the results of those tests. 

To read more about how this DIY underwater ROV was created, you can check out Amargasinghe’s write-up here on Instructables.

The post An Arduino-powered underwater ROV made out of PVC pipe appeared first on Arduino Blog.

50 Watts: Imiri Sakabashira's Letterpress Monsters

(Find me at 50 Watts Books.)

Three details from a little letterpressed book by Imiri Sakabashira, published by the Trance Pop gallery in Japan.

ScreenAnarchy: Fantastic Fest 2021 Review: CANNON ARM AND THE ARCADE QUEST, With Friends Like These

Director Mads Hedegaard documents an endearing Danish superhero and his friends.

[Read the whole post on]

MetaFilter: Impressive Cheekbones If Nothing Else

Netflix has released the first footage from the upcoming adaptation of Neil Gaiman's "Sandman"

ScreenAnarchy: New York 2021 Review: THE TSUGUA DIARIES, Coping with Covid Lockdown

Wryly reflecting the nature of 'expect the unexpected' in both life and filmmaking, Maureen Fazendeiro and Miguel Gomes create a delightful little summer movie.

[Read the whole post on]

Saturday Morning Breakfast Cereal: Saturday Morning Breakfast Cereal - Lesion

Click here to go see the bonus panel!

I was compelled to make this by unpopular request.

Today's News:

Daniel Lemire's blog: New release of the simdjson library: version 1.0

The most popular data format on the web is arguably JSON. It is a simple and convenient format. Most web services allow to send and receive data in JSON.

Unfortunately, parsing JSON can be time and energy consuming. Back in 2019, we released the simdjson library. It broke speed records and it is still one of the most efficient and fast JSON parsing library. It makes few compromises. It provides exact float parsing, exact unicode validation and so forth.

An independent benchmark compares it with other fast C++ libraries and demonstrates that it can use far less energy.

simdjson 2.1 J
RapidJSON 6.8 J
C++ for Modern C++ 41 J

We have recently released version 1.0. It took us two years to get at that point. It is an important step for us.

There are many ways a library can give you access to the JSON data. A convenient approach is the DOM tree (DOM stands for document object model). In a DOM-based approach, the document is parsed entirely and materialized in an in-memory construction. For some applications, it is the right model, but in other instances, it is a wasteful step.

We also have streaming-based approaches. In such approaches, you have an event-based interface where the library calls user-provided function when encountering different elements. Though it can be highly efficient, in part because it sidesteps the need to construct a DOM tree, it is a challenging programming paradigm.

Another approach is a simple serialization-deserialization. You provide a native data structure and you ask the library to either write it out in JSON or to turn the JSON into your data structure. It is often a great model. However, it has limited flexibility.

In simdjson, we are proposing a new approach which we call On Demand. The On Demand approach feels like a DOM approach, but it sidesteps the construction of the DOM tree. It is entirely lazy: it decodes only the parts of the document that you access.

With On Demand, you can write clean code as follows:

#include <iostream>
#include "simdjson.h"
using namespace simdjson;
int main(void) {
    ondemand::parser parser;
    padded_string json = padded_string::load("twitter.json");
    ondemand::document tweets = parser.iterate(json);
    std::cout << uint64_t(tweets["search_metadata"]["count"]) << " results." << std::endl;

In such an example, the library accesses only the content that you require, doing only minimal validation and indexing of the whole document.

With On Demand, if you open a file containing 1000 numbers and you need just one of these numbers, only one number is parsed. If you need to put the numbers into your own data structure, they are materialized there directly, without being first written to a temporary tree. Thus we expect that the simdjson On Demand might often provide superior performance, when you do not need to intermediate materialized view of a DOM tree. The On Demand front-end was primarily developed by John Keiser.

In release 1.0 of the simdjson library, the On Demand frontend is our default though we also support a DOM-based approach.

Release 1.0 adds several key features:

  1. In big data analytics, it is common to serialize large sets of records as multiple JSON documents separated by while spaces. You can now get the benefits of On Demand while parsing almost infinitely long streams of JSON records. At each step, you have access to the current document, but a secondary thread indexes the following block. You can thus access enormous files while using a small amount of memory and achieve record-breaking speeds.
  2. Given an On Demand instance (value, array, object, etc.), you can now convert it to a JSON string using the to_json_string method which returns a string view in the original document for unbeatable speeds.
  3. The On Demand front-end now supports the JSON Pointer specification. You can request a specific value using a JSON Pointer within a large document.

The release 1.0 is robust. We have extended and improved our documentation. We have added much testing.

The simdjson library is the result of the work of many people. I would like to thank Nicolas Boyer for working with me over the summer on finishing this version.

You can find simdjson on GitHub. You can use it by adding two files to your project (simdjson.h and simdjson.cpp), or as a CMake dependency or using many popular package managers.

ScreenAnarchy: FilmSharks Finds International Homes For LatAm Titles VIRTUAL REALITY And MACABRE

Variety reported a couple days ago that our friends at FilmSharks in Buenos Aires continued their winning ways this week, selling more rights for Latin American genre titles to more territories.    On top of selling the rights for Ghosting Gloria and Come Play With Me to Korean distributors FilmSharks earlier this week they also sold the rights for the Argentine thriller Virtual Reality and Brazilian horror thriller Macabre.    Macabre sold to French speaking territories run by Koba Films. Virtual Reality has found a home in Korea with the same company that got the right for Come Play With Me earlier this week, Laon-I Distribution. FilmSharks also sold it to Cinecolor films in Colombia for a theatrical release in February next year.    Directed by...

[Read the whole post on]

ScreenAnarchy: FilmSharks Closes Deals in Korea For GHOSTING GLORIA And COME PLAY WITH ME

Some news earlier this week from our friends at FilmSharks in Buenos Aires. Deadline reported that the sales company locked in deals with Korean distributors for the Uruguayan spiritual rom-com Ghosting Gloria and for the Mexican horror flick Come Play With Me, directed by Adrian Garcia Bogliano.  Ghosting Gloria had its world premiere at Fantasia this Summer. It was, cute, like if Rob Reiner directed Ghost. Come Play With Me premiered on home turf at Morbido and was quickly scooped up and made available on Amazon Prime here in the Americas.  FilmSharks has also sold the remake rights for Ghosting Gloria to Korea, the U.S. and Mexico. They are currently negotiating Spanish remake rights. ...

[Read the whole post on]

Greater Fool – Authored by Garth Turner – The Troubled Future of Real Estate: What to do with cash?

RYAN   By Guest Blogger Ryan Lewenza

I’ve been writing research reports and blog posts for a long time now and sometimes I get my best ideas from the readers. Recently I had a good suggestion from a blog dog to cover the topic of what to do with cash given the very low interest rate environment. Unfortunately with yields so low there are few good options, but I’ll do my best to examine the landscape and the different options.

There has never been a better time to be borrowing gobs of money. With the Covid-19 outbreak and ensuing deep recession, central banks have slashed benchmark interest rates to rock bottom levels. Currently, the Bank of Canada (BoC) overnight rate sits at a previously unheard level of 0.25%. While millennials love these low rates, retirees, generally, loath these record low levels.

Why? Because they’ve worked hard to accumulate wealth and financial assets and now they are retired and need income from the portfolios to live off, so they are getting hosed by these low interest rates.

BoC has cut rates to rock-bottom lows of 0.25%

Source: Bloomberg, Turner Investments

Let’s first look at the safest investments you can own – Canadian government bonds. Below I plot the yields of different government bond maturities, also known as the yield curve. With our benchmark rate at 0.25% this has brought down yields across the entire curve. Currently 1-year T-bills are yielding a paltry 0.25%, with 2 and 5-year yields at 0.4% and 0.8%, respectively.

Even longer term maturities are yielding around just 1.5%. That’s not going to provide enough income to pay for a trip to Europe, much less a pitcher of beer!

Canadian Yield Curve

Source: Bloomberg, Turner Investments

Next up are GICs, a traditional safe haven for retirees. Below is a sample of current GIC rates from various financial institutions. Looking at the top-tier issuers like the banks, they’re paying roughly 0.4% for 1 year, 0.8% for 2-years and they finally get to 1% at a 3-year term. And you’re locked into these so you better not need the funds before the maturity date.

Current GIC Rates

Source: Turner Investments, Raymond James

Next up I reviewed some of the prominent money market funds and high interest savings accounts (HISAs). Currently they range from 0.7% to 1.35% and the benefit of these products is the ease to get in and out with little to no cost. We like to use these HISA ETFs and money market funds for this reason.

Now if roughly 1% yields does not pique your interest then you need to consider moving up on the risk curve by looking at short-term and corporate bond funds. Short-term bond ETFs are currently yielding around 2-2.5% while corporate bond ETFs are yielding around 3%. Not bad yields but these come with additional risk if interest rates rise or if we see a big risk-off event, which would cause credit spreads (yield differential between government and corporate bonds) to blow-out.

Lastly, investors could look at preferred shares, which pay higher yields and are dividends so they are more tax efficient. Many of the main preferred share ETFs are yielding around 4%. Now these are not GICs or government bond substitutes as they come with higher volatility. But, when adjusted for the different tax rates between dividends and interest income, at a roughly 6% interest-equivalent yield, they could be an option for those investors who can handle the additional volatility. Of course within a diversified and balance portfolio.

So looking at the different options, I believe the best options for investors looking to invest cash in a lower risk vehicle, are the high interest savings accounts and short-term bond ETFs. There you would be looking at yields of roughly 1-2%. While not great, and definitely losing purchasing power after adjusting for inflation, they are the best options (of a bad bunch) if looking for higher yields than your typical GICs.

And final point. All those adverts you see for 8% returns and no risk. Bupkis! There is a reason why they are paying you 8% and the banks are paying you 0.5%. Whether it’s income trusts, Yellow Pages, or asset-backed commercial paper, there is always more risk than investors anticipate and the ‘reach for yield’ often ends in tears. So know what you’re investing in!

Yields of various shorter-term investments

Source: Turner Investments, Company Websites
Ryan Lewenza, CFA, CMT is a Partner and Portfolio Manager with Turner Investments, and a Senior Vice President, Private Client Group, of Raymond James Ltd.


MattCha's Blog: 2021 Tea Encounter Yiwu Guoyoulin: Big Qi, Big Size!

The website was late to put up any sort of description of this 2021 Tea Encounter Yiwu Gouyoulin that goes for $141.42 or $0.35/g so I basically tired this free sample only knowing the price and general location as there is lots of Yiwu Guoyoulin with lots of different Yiwu Guoyoulin character.  One thing that I noted was that Tiago pressed this into both 250g and 400g sizes- I applaud the initiative to offer both a small more accessible size and a big ass old school size!  This way everybody is happy… hahahhah…

Okay let’s get into it here…

Dry leaves are a thick obvious layered sweetness with some forest gamey odours in the distance.  The look of the long leaves with the smell of the dry leaf is decidedly Yiwu Gushu.

The first infusion has a gamey foresty taste.  This tastes a lot like boarder tea to me with its very gamey barnyard tastes.  It’s a faint tasting thing with primarily a long barnyard taste with just a slight suggestion of grassy almost melon creamy sweetness.  The sweetness only really hints in the aftertaste.  A barnyard finish is in order here.  I can feel some faint body sensations in the face right off the bat as well as a subtle floating sensation.

The second infusion has a gamey barnyard with a sweet straw-mushroom like grassy taste initially.  The sweetness stretches its legs in the aftertaste amid barnyard and grassy tastes.  The mouthfeeling is watery.  A cup of cooled liquor has an oily and viscus creamy grassy sweetness with long barnyard base taste.

The third infusion has a pungent forest grassy and hay onset with an oily texture over a watery faint mouthfeeling and mid-deep faint throat opening.  There is some faint coolness there and an expanding faint creamy sweetness over the barnyard and forest tasting base layer.  The cool menthol forest taste lingers in the mouth over a faint watery sort of faint sandy mouthfeeling.

The fourth infusion has a straw barnyard onset with a slow underlying emerging sweetness that expands in the mouth and returns alongside menthol cooling notes and the steady barnyard notes.  There is a melon creamy sweet barnyard woody finish minutes later.  The tastes are really clear and pure.  The Qi has lots of little bodyfeeling things going on especially releasing and tingling the neck. 

The 5th is a spicy slightly bitter and astringent woody barnyard condensed onset with an emerging sweet taste that pairs with a strong menthol taste and expands in the mouth.  My empty stomach can feel some astringency here.  There are some spacy Qi feelings which are quite strong now and some neck releasing.  There is a long and strong menthol barnyard sort of faint underlying creamy melon sweetness.  The Qi here is really powerful and pushes my mind into a Spacy floating state!

The 6th infusion has a dense spicy pungent woody barnyard note initially with a lesser sweetness that grows out of this, pairs with the menthol tastes and is a faint creamy under menthol, barnyard, and woody taste.  This Qi is really big here, beating the heart slowly with a Spacy feeling and neck sensations here.  Some face tingling as well.  A stickier mouthfeeling is emerging with some throat mild stimulation happening.

7th is left to cool down and tastes of dense barnyard woody taste with some emerging lesser creamy sweetness that comes with a menthol barnyard coolness.  The aftertaste is a strong menthol barnyard faintly sweet and mainly.  Nice strong spaced out Qi with neck and face bodyfeelings.

The 8th is a watery spicy woody pungent foresty that turns menthol and a bit sweet.  There is a mainly woody barnyard bland taste in the aftertaste with not that much sweetness at all here.  Nice spacy Qi with face numbness.  The mouthfeeling is a faint kind of watery empty with dry edges, teeth, and upper throat.

9th has a almost bitter woody barnyard taste with just edges of faint corn like sweetness.  The aftertaste is a menthol barnyard faint corn sweetness.  Big spacy Qi with facefeelings.

10th infusion has a dense woody barnyard slightly bitter onset with a pear edge of sweetness that comes along with the cooling menthol finish.  There is a pungent cool menthol taste that even trails into the aftertaste with barnyard and dry wood and only harder to grasp edges of pear sweetness now.  The Qi is big and I sigh and feel a useless relaxation wash over me.  The mouthfeel is sort of empty with these dry edges to it.

The 11th infusion has a mainly woody bitter onset with a bit of brackish dirt barnyard underneath that develops a kind of coolness in the mouth.  There is a bland barnyard forest woody aftertaste to it with a menthol edge.  Qi is spacy still.

12th is a bitter woody barnyard menthol experience still.  The flavours are stable throughout the infusions and still give a lot here but the sweetness has completely dropped off now.  Big Qi pushes me into a sweat.  Spacy.

13th is becoming more bitter and woody with still some faint edges of barely sweetness and barnyard with menthol finish.

I mug steep the rest of this out…

The taste is a nice forest deep menthol foresty gushu taste more smooth in the mug and deeper more complex tasting here.  Edges of creamy sweetness are found here over the chalky mouthfeeling.  This mug steeping is pretty nice with a strong relaxing and spacy feeling still.

The overnight steeping is a thin oily with edges of sweet creamy faint tastes with pungent foresty barnyard nuances.  There is a pop of melon fruity sweetness in the retuning taste with a subtle floral nuance here.  The profile is still deep and long here.  The stamina of these leaves is notable.

I like this one…

This is one of those obvious Yiwu Gushu’s probably the clearest and purist Gushu example in the Tea Encounter’s 2021 catalogue.  It is also one of those Yiwu gushu puerh that isn’t very sweet which is the reason why it isn’t a few hundred dollars more in price.  However, it does have a deep foresty gamey barnyard profile that is common among some gushu in Yiwu and its taste and profile is reasonably dense and long but just not very sweet.  Its Qi, on the other hand, the bodyfeels in the neck and deep spacey almost feel good spacey qi that doesn’t bother to slow or sedate- it is something you can find in a premium gushu offering… its really good… but it’s just not that sweet.  In some ways it’s like the 2020 Tea Encounter Walong Guoyoulin which had a very deep profile and deep qi but not as overtly tasty but much more Gushu than the other 2020 Tea Encounter offerings… its just not that sweet.

This one actually reminds me a bit of 2013 Tea Urchin’sSnake blend in the fact it’s not overly sweet.  It also reminds me of the blended 2019 Tea Encounter Laos Gushu.

….But oh man that Qi…

Peace Comic for 2021.09.25

New Cyanide and Happiness Comic

Disquiet: Travel Sound Journal

▰ The commonality of squealing tires as car drivers in all manner of settings assert themselves.

▰ The myriad new squeaks and burbles and vibrations from an entirely new phone, after the previous one was no longer eligible for software upgrades and had not only lost much of its tactile quality, but had begun to really fail for conversations.

▰ Main Street so barren at night, so quiet, that multiple crosswalk sounds can be heard from several directions at the same time.

▰ Passing by a hospital where your high school choir once sang, and hearing in your head some of the crusty old repertoire.

Arduino Blog: AugLimb is the extra arm you didn’t know you needed

As a maker, you probably have a third hand for your soldering station. They come in handy when you need to hold a component, PCB, solder, and soldering iron all at the same time. But an extra hand would be useful for a wide range of other everyday activities. That’s why this team of researchers created a compact robotic third arm called AugLimb.

While robotic augmentations aren’t a new idea, they aren’t often as usable as AugLimb. This robotic arm is lightweight and compact, making it comfortable to wear. It can’t lift much weight, but it is very dexterous thanks to seven degrees of freedom and an extendable gripper. It attaches to the wearer’s bicep and folds up when not in use. When it is time for action, AugLimb unfolds and reaches further than the user’s own arm.

An Arduino Mega board drives AugLimb’s various motors. Those include two shoulder servos, an elbow servo, two wrist servos, a scissor extension motor, and two gripper servos. The scissor extension increases reach by up to 250mm. At this time, a second human operator has to control AugLimb’s movement. But the team hopes to introduce control schemes that let the user operate the robotic limb on their own.

AugLimb is a prototype, but Haoran Xie, a member of the team behind the project, said “We believe that AugLimb will be as popular as smart watches in the near future, as anyone from an elder to a child can comfortably wear it for the whole day.”

Image: Haoran Xie / Zeyu Ding

The post AugLimb is the extra arm you didn’t know you needed appeared first on Arduino Blog.

Colossal: Tainted with Manufactured Objects, Slime Molds and Spores Grow Into Unnaturally Striking Compositions

All images © Dasha Plesen, shared with permission

Moscow-based artist and mold enthusiast Daria Fedorova intervenes in natural decomposition processes, accentuating textures and colors and pushing the boundaries of science and art. The artist, who works as Dasha Plesen, laces petri dishes with various bacterias and other organisms before placing extra elements like fluffy balls, sugars, and sprinkles in the container. These manufactured additions impede the growths to produce myriad shades and structures and cultivate otherworldly compositions of unnaturally saturated colors, patches of fuzz, and flared coils of slime all within in a single vessel.

Forgoing antibiotics or other treatments that would save the fungi and spores from ruin, Plesen’s works take between three and four weeks to materialize. She tells Colossal that the ongoing project began with “the idea of microbiological mapping of our surroundings,” explaining:

We are all swimming in the ocean of tiny spores and organisms, breathing them in, and carrying them on the top of our skin and inside the body. I was interested in this parallel between the physical world we can see and touch and also another physical world, which also presents, but is kind of metaphysical, invisible, somewhere between the air layers, vibrations, energies, nature.

Whether displaying stacked rows of spores or a bubbly rim, the resulting studies are ripe with questions about human imposition, the artificial, cyclical processes, and the inherent beauty of decay. Explore a larger collection of Plesen’s works on Behance and Instagram. (via Trendland)



We’ve had a lot of people asking us when our next Bingo game was going to start, so without further ado, Booooooom Bingo is BACK! We’re extremely excited to announce the third edition of Booooooom Bingo with a new sponsor and a whole bunch of new prizes from some talented artists and photographers!

We’re thrilled to have .ART as our partner for this one! They have made it possible to commission artist Lydia Ortiz to design us our new amazing custom bingo cards and also help support the creative community by scooping up some awesome new product. So as usual, there’s a lot of cool stuff to win (and it’s entirely free to play!).

If you don’t know anything about .ART, they are the largest domain for the creative community. To date, .ART counts over 150 thousand artists, museums, organisations and creatives from all walks of life globally. It is in the top-25 biggest selling and top-10 fastest growing gTLD among 1226 domain zones on the global ranking, continually improving its position. .ART is a domain zone for everyone, since creativity is, in fact, an inherent feature waiting to be explored. The mission of .ART is to foster a community of like-minded creative individuals and serve as a technological platform providing them with the necessary products and services.

Whether you excel at iPhone photography, sell T-shirts with your designs online or have dived into the world of digital art and NFTs, you’re an artist. Life is an art form, and we all find our way of expression, differently. And yet, we are all in it together. Get your .ART and join the creative digital community.

OK, how does it work? All you have to do is sign up below and in a week or two we’ll send you your own Booooooom BINGO card. Once the game begins, we’ll start releasing Bingo numbers every week in our Secret Email Club newsletters until all the prizes are claimed. You can print off your sheet and stick it on your fridge, or save it to your phone to mark X’s on the numbers.

There will be prizes for 1-LINE, 2-LINES and 3-LINES. All 4 cards on each person’s sheet are played at once (to win, all lines must be on the same card). Middle square is free. As soon as you have a winning card, snap a photo of it (include the card# at the bottom) and email us. We’ll announce winners each week as prizes are claimed.

So who wants to play some BINGO with us over email?! It’s FREE to play and there are lots of PRIZES!

Full Prize list (see images down below):

1x Handmade CD Rug by Sean Brown
1x ‘Hanging by a string – Whistle’ Print from Vicki Ling
1x ‘Stack of Graph Paper’ print by Ryan Carl
1x ‘Never Crashing’ Print by Tim Lahan
1x ‘Bitch Face Bucket Hat’ by Kristina Micotti
1x ‘Flower Pot’ print by Marcello Velho
2x ‘Vibin’ Totes’ from Jocelyn Tsaih
1x CELLYBRAIN book from Hamburger Eyes
1x ‘Magic Bandana’ by Hugo B
5x ‘Bone Pen’ by Evah Fan
3x Booooooom ‘Hidden Talent Counts for Nothing’ T-Shirts
2x Tomorrow’s Talent Vol. II Books
2x Magic Hour Books

Open Culture: Watch a Gripping 10-Minute Animation About the Hunt for Nazi War Criminal Adolf Eichmann

In February 2018, the Conference on Jewish Material Claims Against Germany conducted interviews with 1,350 American adults, aged 18 and up.

Their findings, published as the Holocaust Knowledge and Awareness Study, reveal a sharp decline in Americans’ awareness of the state-sponsored extermination of six million Jewish men, women, and children by Nazi Germany and its collaborators.

This knowledge gap was particularly pronounced among the millennial respondents. Sixty-six percent had not heard of Auschwitz — the largest of the German Nazi concentration camps and extermination centers, where over a million perished. Twenty-two percent of them had not heard of (or were unsure if they had heard of) the Holocaust.

This is shocking to those of us who grew up reading The Diary of Anne Frank and attending assemblies where Holocaust survivors — often the older relative of a classmate — spoke of their experiences, rolling up their sleeves to show us the serial numbers that had been tattooed on their arms upon arrival at Auschwitz.

The study did make the heartening discovery that nearly all of the respondents — 93% — believed that the Holocaust should be a topic of study in the schools, many citing their belief that such an education will prevent a calamity of that magnitude from happening again.

(In defense of millennials, it’s worth noting that in the decades since 1977, when more than half of the country tuned in to watch the miniseries Roots, the Civil War and the horrors of slavery had all but disappeared from American curriculums, a direction the Black Lives Matter movement is fighting to redress.)

The Holocaust is such a huge subject that there is a question of how to introduce it, ideally, in such a way that young people’s interest is sparked toward continuing their education.

The Driver is Red, Randall Christopher‘s animated short, above, could make an excellent, if somewhat unusual, starting place.

The film’s text is drawn from Israeli Mossad Special Agent Zvi Aharoni’s first person account of the successful manhunt that tracked Adolf Eichmann, a member of Heinrich Himmler’s inner circle and architect of the Nazi’s “final solution,” to Argentina.

This event transpired in 1960, fifteen years after Soviet troops liberated Auschwitz.

Aharoni, voiced by actor Mark Pinter, recalls receiving the tip that Eichmann was living in Argentina under an assumed name, and locating him in a modest dwelling on the outskirts of Buenos Aires.

Filmmaker Christopher builds the tension during the ensuing stakeout with effective, noir-ish, pencil sketches that take shape before our eyes, mapping surveillance points, a couple of happy accidents, and one harrowing moment where Aharoni feared his foreign accent might give him away.

There’s more to the story than can be packed in a fourteen minute film, but those fourteen minutes are as gripping as any tightly plotted spy movie.

Christopher is less interested in directing the next James Bond flick than putting Holocaust education back on the table for all Americans.

2016 New York Times article about the handwritten letter Eichmann sent Israeli President Yitzhak Ben-Zvi, begging for clemency, paved the way for the film by motivating Christopher to fill in some gaps in his education with regard to the Holocaust.

As the then-46-year-old told Leorah Gavidor of The San Diego Reader in 2018:

I (felt) so dumb, so ignorant, being an adult in America and not knowing the history of it.

My friends, people I told this story to, they were fascinated. They would start listening very carefully when I started to talk about this Nazi from Germany that was found 15 years after the war, halfway around the world. They didn’t know anything about it. That’s how I knew I was on to something.

Before the film was completed, Christopher staged a live reading of the script at San Diego’s Verbatim Books, then passed the mic to Holocaust survivor Rose Schindler, who told the audience about surviving Auschwitz.

As Christopher recalled:

People were tripping. There’s three lines about Treblinka in the film, and this Nazi war criminal, and then they see someone there, with the tattoo on her arm, in front of them, who experienced this firsthand.

Mrs. Schindler became a Holocaust educator in 1972, when her son’s teacher invited her to share her story with his middle school classmates.

She is now 91.

via The Atlantic

Related Content:

Holocaust in Film and Literature: A Free Online Course from UCLA 

Holocaust Survivor Viktor Frankl Explains Why If We Have True Meaning in Our Lives, We Can Make It Through the Darkest of Times

96-Year-Old Holocaust Survivor Fronts a Death Metal Band

100-Year-Old Holocaust Survivor Helen Fagin Reads Her Letter About How Books Save Lives

Ayun Halliday is an author, illustrator, theater maker and Chief Primatologist of the East Village Inky zine.  Follow her @AyunHalliday

Watch a Gripping 10-Minute Animation About the Hunt for Nazi War Criminal Adolf Eichmann 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.

Charles Petzold: Reading “Harlem Shuffle”


... more ...

s mazuk:


Agus Suwage (Indonesian, b. 1959), Self Portrait as Nero V, 2004. Acrylic on canvas, 150 x 199.5 cm.

Colossal: Seven Origami Animals Transform New York City’s Garment District into a Vibrant Menagerie

All images by Alexandre Ayer/Diversity Pictures for the Garment District Alliance, shared with permission

Thanks to Gerardo Gomez-Martinez (aka Hacer), the public plazas on Broadway in New York City’s Garment District are now a zoo of origami-style animals. The Mexican-American artist installed a series of powder-coated steel sculptures that loom over dining areas and walkways as part of Transformations. Commissioned by The Garment District Alliance, the project consists of seven creatures that vary in size, including a yellow dog, a magenta elephant,  a green bear cub, and two turquoise rabbits and coyotes, one of which extends 14 feet from nose to tail.

If you’re in Manhattan, stop by the plazas between 36th and 39th streets before November 23 to see the bold animals in person. (thnx, Laura!)


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

Stanley thinks his nephew’s an idiot. “Actually,” he adds, “the guy and his wife are the classic couple you often describe in the blog.”

So this is a tale about pandemic real estate. A Covid classic. The virus changed the way many people think, as we all now realize. The bug locked down society, which led to WFH, crashing loan rates and urban flight. That begat aggressive nesting, a quest for personal space, then a real estate rush and escalating values amid buyer competition. After a while the health emergency was just wallpaper for a speculative frenzy as buyers panicked at the thought they’d be priced out forever. Then along came the Justin & Erin show to emphasize the “housing crisis” and assure everyone they’d never let real estate fail. Bingo.

Here’s Stan’s recounting of his relative’s experience…

“They’re in their thirties with two kinds, one two years old and the other one two months. They moved from Toronto to Mississauga in May because they wanted a bigger house and more property – and because of FOMO. The considered Oakville, but could not make a deal there, so ended up in Mississauga – paying $1.8 million. Big mortgage.

“Here’s the thing – they bought with no conditions. Of course. Like everyone. The house was renovated in 2015, not by the recent seller but the seller before him. The place was built in the early 1970s with a very compartmentalized layout, so the reno had opened up the entire main floor, giving an open concept kitchen.”

By the way, the realtor benchmark (Frankenumber) for Mississauga properties is now $1.11 million, which is up 20% year/year, and reflects the numbing impact of the pandemic. As anyone who lives in the western burbs knows, this is a car-centric place with dodgy public transit and the need to burn a litre of gas to get a litre of milk. But housing has been hot. The average detached home costs $1.365 million, compared with $1.674 in the city itself where services abound. Over the last year 416 real estate appreciated 11.2%. In Mississauga the gain was 25.6%.

The tale continues…

“For weeks now they have noticed many cracks in the ceilings. While my wife was visiting, my nephew’s wife showed her the damage. When she came home and told me, I immediately contacted n client of mine who is an architect. He visited the house and said there are issues with the renovations so, in turn, he brought in an engineer. That expert determined that the beams used when the bearing walls were removed are undersized. It’s important to note the renovations were completed without a permit. At this time the estimated cost to rectify the problem is approx. $40,000.

“This young couple purchased an expensive home, had to buy it without conditions for home inspections and are now having big repair bill. Why? Two reasons: the housing market, of course, and the absolute whore’s business that is residential real estate. Agents never want to take the time to do anything that could jeopardize a deal. Granted, my nephew agreed to table an unconditional offer and I am sure there are numerous situations of buyers ending up with unintended consequences of unconditional offers. But the 40k they will have to spend could have been used toward the kids’ RESP or their own TSFAs.”

A certain pathetic blog has moaned and vexed about the impact of the pathogen on housing for the last 18 months. And it just gets worse. Not only have buyers forgotten that pandemics always end, normalcy eventually returns and WFH will turn into a brutal commute for most, but FOMO made them do stupid things. Move to a higher-cost area, for example (suburbs suck money). Compete for real estate in a bidding war. Or spend $1.8 million with no safeguards and inadequate research.

There are rules to remember to help avoid this kind of heartbreak and financial setback (not to mention having to move out of your house while structural repairs are done).

First, don’t buy in a war. Chill. Conditions will change. Other properties will come to market.

Second, scout out listings that have languished on the market for a while. Maybe they have some hair on them. Perhaps they need renos. Maybe they were overpriced at first and have become stale. But don’t fall for the ‘hot new listing’ hype and the competition that ensues.

Bidding wars? Fuggeddaboutit. Walk away from properties where sellers and their agents are ‘holding offers’ until a certain hour on a certain day. Be especially wary when the listing price is less than area comparables since that suggests a blind auction is being engineered. Choose peace instead.

Never buy without some layer of protection. A home inspection is de rigueur for first-time buyers who have no experience with furnaces, electrical panels, basement moisture, drainage, asphalt roofs, insulation or sewer connections. If you are dumb enough to be in a multiple-offer situation, hire an inspector to visit before making your bid.

Get pre-approved for financing. Then be aware in a competitive market you risk paying more than the bank will finance if the sale price exceeds the appraised value. Then you know what a heart attack feels like.

Include the right to visit the property two or three times prior to closing. Use those sessions to ensure you made the right choice. There are always options for abrogating a deal (none of them cheap). Engage an experienced local realtor to help research homes and represent you when an offer’s made. Get sold comparisons plus the price history of the property. Look for red flags. Quick renos and flips. Buy title insurance when the deal closes. Hire a lawyer who specializes in real estate transactions, not an ambulance-chaser or the guy who did your mom’s will. And lock in the loan rate.

Or, eschew debt, save and invest your money. Be mobile, fluid and financially free. What a radical thought.

About the picture: “A am a regular reader of yours – thanks for sticking with it despite the commentary you must see,” writes Tom. “You’ve positively influenced many of our decisions over the years. This is Harvey, waiting for my daughter at the end of a school day.  He is a Labradoodle who loves long walks and lazing about.  Feel free to use.” (If you have a pooch to share, let me know –

Schneier on Security: Friday Squid Blogging: Person in Squid Suit Takes Dog for a Walk

No, I don’t understand it, either.

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.

Schneier on Security: I Am Not Satoshi Nakamoto

This isn’t the first time I’ve received an e-mail like this:

Hey! I’ve done my research and looked at a lot of facts and old forgotten archives. I know that you are Satoshi, I do not want to tell anyone about this. I just wanted to say that you created weapons of mass destruction where niches remained poor and the rich got richer! When bitcoin first appeared, I was small, and alas, my family lost everything on this, you won’t find an apple in the winter garden, people only need strength and money. Sorry for the English, I am from Russia, I can write with errors. You are an amazingly intelligent person, very intelligent, but the road to hell is paved with good intentions. Once I dreamed of a better life for myself and my children, but this will never come …

I like the bit about “old forgotten archives,” by which I assume he’s referring to the sci.crypt Usenet group and the Cypherpunks mailing list. (I posted to the latter a lot, and the former rarely.)

For the record, I am not Satoshi Nakamoto. I suppose I could have invented the bitcoin protocols, but I wouldn’t have done it in secret. I would have drafted a paper, showed it to a lot of smart people, and improved it based on their comments. And then I would have published it under my own name. Maybe I would have realized how dumb the whole idea is. I doubt I would have predicted that it would become so popular and contribute materially to global climate change. In any case, I did nothing of the sort.

Read the paper. It doesn’t even sound like me.

Of course, this will convince no one who doesn’t already believe. Such is the nature of conspiracy theories.

Schneier on Security: The Proliferation of Zero-days

The MIT Technology Review is reporting that 2021 is a blockbuster year for zero-day exploits:

One contributing factor in the higher rate of reported zero-days is the rapid global proliferation of hacking tools.

Powerful groups are all pouring heaps of cash into zero-days to use for themselves — and they’re reaping the rewards.

At the top of the food chain are the government-sponsored hackers. China alone is suspected to be responsible for nine zero-days this year, says Jared Semrau, a director of vulnerability and exploitation at the American cybersecurity firm FireEye Mandiant. The US and its allies clearly possess some of the most sophisticated hacking capabilities, and there is rising talk of using those tools more aggressively.


Few who want zero-days have the capabilities of Beijing and Washington. Most countries seeking powerful exploits don’t have the talent or infrastructure to develop them domestically, and so they purchase them instead.


It’s easier than ever to buy zero-days from the growing exploit industry. What was once prohibitively expensive and high-end is now more widely accessible.


And cybercriminals, too, have used zero-day attacks to make money in recent years, finding flaws in software that allow them to run valuable ransomware schemes.

“Financially motivated actors are more sophisticated than ever,” Semrau says. “One-third of the zero-days we’ve tracked recently can be traced directly back to financially motivated actors. So they’re playing a significant role in this increase which I don’t think many people are giving credit for.”


No one we spoke to believes that the total number of zero-day attacks more than doubled in such a short period of time — just the number that have been caught. That suggests defenders are becoming better at catching hackers in the act.

You can look at the data, such as Google’s zero-day spreadsheet, which tracks nearly a decade of significant hacks that were caught in the wild.

One change the trend may reflect is that there’s more money available for defense, not least from larger bug bounties and rewards put forward by tech companies for the discovery of new zero-day vulnerabilities. But there are also better tools.

Penny Arcade: News Post: Finding Out

Tycho: Apple's reprisal against Epic's weird-ass gambit was a foregone conclusion. The Gambit, just so we're clear, was to sneak in a parallel payment system that privileged itself over Apple's, and then when Apple responded by ejecting them from their ecosystem - as Epic knew they would - to then release a video they'd apparently already made to suggest that adhering to the contractual obligations that had made them hundreds of millions of dollars up to that point was now tyranny. Don't even start me on the Orwell shit. I think the idea was that this maneuver was…

Penny Arcade: News Post: Birthday Stream!

Gabe: Tomorrow is my birthday and I’m getting the best gift, an ASUS x Gundam PC, built by my son Gabe!  Join us live on stream at 11am PST as we put this together with guidance from Jerry as well as Chris from ASUS ROGNA.  I promise I'll do my best to keep the PC destroying rays my body naturally emits contained.   -Gabe out

Penny Arcade: Comic: Finding Out

New Comic: Finding Out

Open Culture: A Gigantic Violin Floats Down Venice’s Grand Canal with a String Quartet on Top

It looks like something out of a Fellini movie: a string quartet floating down the canals of Venice on a gigantic violin. Not a boat masquerading as a violin, like when you dress up your pet for Halloween and just slap some funny ears and coat on it, but an actual 39-foot long violin, made of several kinds of wood and metal by master boatbuilder/wood sculptor Livio De Marchi.

“Noah’s Violin,” as it is called, did have a tiny motor inside to propel it, and its trip down the Grand Canal was intended as a portent of a post-COVID world. De Marchi told the New York Times that the violin was a “sign of Venice restarting,” and like Noah’s Ark, would bring hope after the deluge.

Musicians on board played works by Vivaldi, who was also an inspiration to the woodworker/boatmaker, and who was likewise born in Venice. The surprise is not so much that a string quartet is playing on top of the violin, but that it all seems so sturdy and safe. There are no hand rails or life jackets to be seen. (According to the Times, wind blew some of the score into the canal, where it was quickly rescued).

De Marchi has made several surreal boats, starting with a large wooden replica of a paper ship, a floating origami crane, a large high-heeled shoe, and recently an all-wood recreation of a Ferrari that puttered up and and down the canal.

The violin boat was followed by crowds in gondolas and other tourist boats, floated about for an hour, and then was docked, where it was blessed by a priest. A museum in China and an Italian company expressed interest in finding the violin-boat a home.

Who knows what might happen to it, but why not strap some powerboat motors on it, hire Apocalyptica and let ‘er rip?

Related Content:

How Venice Works: 124 Islands, 183 Canals & 438 Bridges

A Relaxing 3-Hour Tour of Venice’s Canals

The Authentic Vivaldi’s The Four Seasons: Watch a Performance Based on Original Manuscripts & Played with 18th-Century Instruments

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 Gigantic Violin Floats Down Venice’s Grand Canal with a String Quartet on Top 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.

Colossal: Ghostly Aerial Photos Frame Isolated and Abandoned Houses Scattered Across North America

All images © Brendon Burton, shared with permission

In his ongoing series titled Thin Places, Portland-based photographer Brendon Burton documents battered houses that stand alone in barren fields, amidst an encroaching marsh, or at the edge of the mountain. The decrepit structures have been Burton’s preferred subject matter since 2011 when he began seeking abandoned buildings across the continent that exude a sense of impermanence and the uncanny. “This series is for the sake of satisfying my curiosity about the past and exploring isolated parts of North America. It mixes archeology with fantasy,” he says.

Derived from Celtic culture, Thin Places refers to locales “where heaven and earth grow thin,” Burton says. “Traditionally, the term was meant as a place one would feel closer to God, or something otherworldly. In a more modern sense, it’s a form of liminality, areas that feel transitory.” Each property is shot with a drone, offering a detached view of the once-occupied spaces and a brief encounter with their former use. “What makes people leave, and what keeps things standing? How much of a life gets left along with it?” he asks.

Burton plans to visit Appalachia next, and you can follow his travels on Behance and Instagram. (via This Isn’t Happiness)


Saturday Morning Breakfast Cereal: Saturday Morning Breakfast Cereal - Doom

Click here to go see the bonus panel!

While showing off bits of this I found out about Foone who is trying to run Doom on their brain.

Today's News:

Ideas: Body Language | The Right to Sex

'Incel' violence is a clear example of the lethal danger of believing that anyone is entitled to sex. But feminist philosopher Amia Srinivasan argues who is and is not sexually desired can still be an issue of political injustice. She speaks with host Nahlah Ayed about autonomy, preference, entitlement, and the moral and political complexities of sexual desire. The fifth in our series Body Language.

Open Culture: View 103 Discovered Drawings by Famed Japanese Woodcut Artist Katsushika Hokusai

When westerners first discovered the work of Japanese woodcut artist Katsushika Hokusai, it was primarily through his late-career print The Great Wave off Kanagawa and the series from which it came, Thirty-Six Views of Mount Fuji, after the opening of Japan to international trade and the mass consumption of Japanese art in the late 19th century. Impressionists like Claude Monet and Vincent van Gogh went wild for Japanese prints; Claude Debussy composed La mer; artists, artisans, and architects on both sides of the Atlantic fell for all things Japonisme.

Hokusai died in 1849 and did not live to see this newfound international admiration. When he completed The Great Wave, he was in his seventies — a master of his craft who had himself absorbed significant influence from western painters.

During his “formative experience of European art,” John-Paul Stonard writes at The Guardian, Hokusai “learnt from European prints brought into Japan by Dutch traders.” He took these lessons in directions all his own, however. His Mount Fuji prints “could not have been further from anything being made in Europe at the time.”

Hokusai’s European and American enthusiasts saw only the barest glimpse of his body of work, which we can now fully appreciate in exhibitions in person and online. And we can now appreciate a series of drawings that have been hidden away for over seventy years and were hardly seen at all in the 200 years since their creation. Made for an unpublished encyclopedia titled Banmotsu eon daises zu (The Great Picture Book of Everything), “The drawings were long thought forgotten,” Valentina Di Liscia writes at Hyperallergic, “last recorded at an auction in Paris in 1948 before they resurfaced in 2019.”

Made sometime between 1820 and the 1840s, “the meticulous, postcard-sized works are known as hanshita-e, a term for the final drawings used to carve the key blocks in Japanese woodblock printing.” These are usually destroyed in the process, but since the prints were never made, for reasons unknown, “the delicate illustrations remained intact, mounted on cards and stored in a custom-made wooden box.” The drawings depict everything from “the typical inhabitants of lands in East, Southeast, and Central Asian and beyond” to one of the 33 manifestations of the bodhisattva Avalokite?vara, “Dragon head Kannon.”

At the top, curator Alfred Haft walks us through his favorite drawings from the set, and you can see all 103 of the diminutive illustrations online at the British Museum. Formerly owned by the collector and Art Nouveau jeweler Henri Vever, the prints could have inspired many a western artist, but it seems they were hidden away and have been seen by very few eyes. Discover them yourself for the first time here.

Related Content: 

The Great Wave Off Kanagawa by Hokusai: An Introduction to the Iconic Japanese Woodblock Print in 17 Minutes

Thirty-Six Views of Mount Fuji: A Deluxe New Art Book Presents Hokusai’s Masterpiece, Including “The Great Wave Off Kanagawa”

The Evolution of The Great Wave off Kanagawa: See Four Versions That Hokusai Painted Over Nearly 40 Years

Hokusai’s Iconic Print, “The Great Wave off Kanagawa,” Recreated with 50,000 LEGO Bricks

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

View 103 Discovered Drawings by Famed Japanese Woodcut Artist Katsushika Hokusai 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.



Arduino Blog: The first Arduino Education Inspiration Lab

Arduino Education is delighted to announce its very first Inspiration Lab, in partnership with Technobel in Belgium.

What is an Arduino Education Inspiration Lab?

Inspiration Labs are an exciting new concept designed for students and educators to get hands-on experience. with the joy of making new discoveries. They’ll explore, design and learn electronics, coding, and programming with real-world connections. It’s all about enhancing future skills, having fun, and the joy of making new discoveries.

Technobel is a training and vocational center in Ciney, Belgium. Together we’ve created a dedicated space for teachers and students to learn with the full range of Arduino Education products in an engaging, exciting environment.

Arduino and Technobel Inspiration Lab

What can you do at the Inspiration Lab?

There’s something for everyone at the Inspiration Lab.

  • A dedicated space within Technobel, accessible to the public.
  • Teacher training with workshops on Arduino Education solutions; on demand, and on- or off-site.
  • Teacher coaching on how to create new lessons, with an emphasis on community sharing.
  • Specialized courses for 15 to 18-year-old students with official Arduino certification.

What can you Learn at the Inspiration Lab?

As well as exploring, designing, discovering and learning electronics, coding and programming, the Inspiration Lab offers the following.

  • Promote a culture of technological innovation and development.
  • Create an advanced technology facility that supports product innovation and design.
  • Provide mentorship and certification programs for teachers and students.
  • Help develop design-focused thinking, product design and innovation skills through technical support and training.
  • Incubate product ideas to help realize them as real-world commercial products.
  • Prepare students to participate and compete in Arduino Technology challenges and competitions across the globe.

Find out more and to book your space, visit the website now.

The post The first Arduino Education Inspiration Lab appeared first on Arduino Blog. Comic for 2021.09.24

New Cyanide and Happiness Comic

Arduino Blog: Arduino Nicla Sense ME makes sense of the world

Arduino Nicla Sense ME

Nicla is Arduino Pro’s new family of modular, intelligent products that are easy to use, versatile and accessible – whether you are an advanced user working on industrial applications or a budding maker looking to prototype your first intelligent solution. No wonder it’s named after the Greek word for “victory of the people!” 

To herald the range, we have just released the Nicla Sense ME: a tiny but mighty board, co-developed with Bosch Sensortec to enable sensing and intelligence on the edge. With low-power sensors, a high-performance processor and small footprint, it offers a winning combination that can answer our community’s and clients’ needs and open up to opportunities for infinite new solutions.

What makes the Nicla Sense ME so special? Let’s dive into some details. 

Sense motion and the environment

At the Sense ME’s heart, you’ll find Bosch Sensortec’s BHI260AP AI sensor system with integrated motion sensor, BMM150 magnetometer, BPM390 pressure sensor, and the unique BME688 4-in-1 gas sensor with AI and integrated high-linearity, and high-accuracy pressure, humidity and temperature sensors. 

In short: it’s everything you need to monitor and interact with any type of motion and environment – hence, the “M” and “E” in the name.

Double the innovation

The Sense ME is the first product in Arduino Pro’s Nicla line, as well as the first product to introduce Bosch Sensortec’s new sensors on the market. So if you like innovation, you’ll love this little board.

Low power, high performance

The Sense ME’s Cortex-M4 nRF52832 CPU is capable of hosting intelligence on the edge, bringing AI and machine learning anywhere you need it – even off the grid, because it can be powered by battery as a completely standalone solution.

Made to fit in

The Nicla Sense ME is a mere 22.86×22.86 mm packed with features. The whole Nicla family is based on our smallest form factor to date, yet is compatible with both MKR and Portenta products – effectively leveraging the combined power of Arduino’s ecosystem. 

Ready now, ready for the future

Versatile, easy to configure, quick to set up: you can integrate the Nicla Sense ME in the solution you are designing or the one you already have in place. And because it’s designed with Bosch Sensortec’s industrial-grade, state-of-the-art components, it’s ready to explore any application in the emerging IIoT, AI and ML fields.

Arduino Pro Nicla Sense ME

Small, smart, and ready to deploy constant data monitoring and AI capabilities anywhere, for anyone.

Here are just a few examples of the applications we can already envision the Nicla Sense ME will enable.

  • Monitor environmental parameters, from humidity and CO2 in your home to toxic substances released by industrial processes such as dry washing. Monitor air quality and safeguard people’s health. 
  • Capture the information embedded in motion: from person-down systems and avalanche warnings that save lives, to fitness apps that check your posture to make sure your exercise routine gives you results as soon as possible. 
  • Let the different sensors in the Nicla ME bring together a variety of data for complex solutions: stabilize robots and rovers, ensure safety working with cobots, make your home more comfortable with automation, accelerate physical rehabilitation and much, much more.

What will you create, develop and deploy with the new Nicla Sense ME?

The Nicla Sense ME is available on the Arduino Store for €59/US$70.

For more information and complete technical specs, please visit:

The post Arduino Nicla Sense ME makes sense of the world appeared first on Arduino Blog.

Disquiet: Disquiet Junto Project 0508: Germane Shepard

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, September 27, 2021, at 11:59pm (that is, just before midnight) wherever you are. It was posted on Thursday, September 23, 2021.

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

Disquiet Junto Project 0508: Germane Shepard
The Assignment: Use the Shepard tone to create a piece of music.

Many thanks to Robert Precht for having proposed this project.

There’s just one step: Use the Shepard tone to create a piece of music.

More on the Shepard tone at

Seven More Important Steps When Your Track Is Done:

Step 1: Include “disquiet0508” (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 “disquiet0508” (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 per 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, September 27, 2021, at 11:59pm (that is, just before midnight) wherever you are. It was posted on Thursday, September 23, 2021.

Length: The length of your finished track is up to you. Given the topic, it may sound like it goes on forever …

Title/Tag: When posting your tracks, please include “disquiet0508” 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 508th weekly Disquiet Junto project — Germane Shepard (The Assignment: Make music with 10 acoustic instrument samples all in a shared key) — at:

Many thanks to Robert Precht for having proposed this project.

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 Chris, and used thanks to Flickr and a Creative Commons license allowing editing (cropped with text added) for non-commercial purposes:

Planet Haskell: Brent Yorgey: Swarm: preview and call for collaboration

For about a month now I have been working on building a game1, tentatively titled Swarm. It’s nowhere near finished, but it has at least reached a point where I’m not embarrassed to show it off. I would love to hear feedback, and I would especially love to have others contribute! Read on for more details.

Swarm is a 2D tile-based resource gathering game, but with a twist: the only way you can interact with the world is by building and programming robots. And there’s another twist: the kinds of commands your robots can execute, and the kinds of programming language features they can interpret, depends on what devices they have installed; and you can create new devices only by gathering resources. So you start out with only very basic capabilities and have to bootstrap your way into more sophisticated forms of exploration and resource collection.

I guess you could say it’s kind of like a cross between Minecraft, Factorio, and Karel the Robot, but with a much cooler programming language (lambda calculus + polymorphism + recursion + exceptions + a command monad for first-class imperative programs + a bunch of other stuff).

The game is far from complete, and especially needs a lot more depth in terms of the kinds of devices and levels of abstraction you can build. But for me at least, it has already crossed the line into something that is actually somewhat fun to play.

If it sounds interesting to you, give it a spin! Take a look at the README and the tutorial. If you’re interested in contributing to development, check out the CONTRIBUTING file and the GitHub issue tracker, which I have populated with a plethora of tasks of varying difficulty. This could be a great project to contribute to especially if you’re relatively new to Haskell; I try to keep everything well-organized and well-commented, and am happy to help guide new contributors.

  1. Can you tell I am on sabbatical?↩

things magazine: Collect the set

What would a flat earth really be like? / a new issue of Dirty Furniture is forthcoming / The Witching Museum / a new version of Jenni Sparks’ hand-drawn map of London / for Autumn, 56 trees in modern British … Continue reading

Colossal: An Origami Knight Equipped with a Sword and Shield Materializes from a Single Sheet of Paper

All images © Juho Könkkölä, shared with permission

Earlier this year, Finnish artist Juho Könkkölä folded an incredibly elaborate samurai from a single sheet of paper, and now he’s crafted another intricate warrior of his own design. Standing 18 centimeters tall, the sword- and shield-toting figure demanded 41 hours of work using wet and dry origami techniques.

Könkkölä started with a 68 x 68-centimeter sheet of Wenzhou rice paper that he scored and folded to capture the protective bands on the shoulders and hips and the exact placement of individual plates. “One of the greatest challenges in this figure was the stark contrast between the shield and the sword; the sword has over 50(!) layers inside the palm of the figure, whereas the shield has only one layer on a large surface,” he writes on Instagram.

Könkkölä also filmed his entire process, so you can watch the knight take shape in the timelapse video below.


Quiet Earth: Scott Cooper&rsquo;s new horror thriller ANTLERS gets a World Premiere

Searchlight Pictures and Beyond Fest announced today the World Premiere of Scott Cooper’s new horror thriller ANTLERS as the October 11th Closing Night selection of the 2021 Beyond Fest, presented in partnership with the American Cinematheque.

The premiere will launch a series of events leading up to the October 29th domestic theatrical release of the film, including a “Fantastic Fest Presents” Special Screening with Alamo Drafthouse Cinemas in San Francisco and Austin on October 11th; the International Premiere at the 54th Sitges International Film Festival (Festival Internacional de Cinema Fantastic de Catalunya) on October 13th; Closing Night of the 12th Annual Telluride Horror Show on October 17th ; and a special Drive-In Screening at the 57th Chicago Internationa [Continued ...]

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

As a certain pathetic blog has told you in the past, reverse mortgages are wonderful tools if you hate your children.

Apparently lots of people do. Volumes have been growing even faster than regular home loans, despite the fact interest rates on these things run four times higher. Why?

Simple. Real estate lust, WFH and the slimy little pathogen have driven house prices squirrely. But incomes have not gained. Especially for retirees, whose beloved GICs and HISAs are now cruel jokes. Nobody can live off interest or government pogey as corporate pensions disappear into the ether. So a lot of people – masses of them, in fact – take out a reverse mortgage, sucking equity from their properties to provide living capital.

The trouble is these mortgages (unlike normal ones) get bigger every year. Yes, the money received is tax-free. Yes, there are no payments. And, yes, the principal need never be repaid until you sell or (more likely) croak. So this means your heirs’ inheritance dwindles annually as the reverse mortgage debt grows. In general, these are bad ideas. Most seniors would be better off to get a secured LOC at a lower rate, with more flexibility, then invest in a balanced portfolio of ETFs for routine income (plus the interest-only monthly payments would be 100% tax-deductible).

Or, better yet, sell that inflated house, collect your windfall profits from the hides of some nice young couple willing to choke down dollops of debt, and rent a luxury condo, snickering at a world gone mad.

But wait. Seems a new driver of reverse mortgages is parental guilt. HomEquity Bank (the largest RM outfit, now with $4 billion in loans outstanding) says the wrinklies are Hoovering their homes for the benefits of kids. These folks are taking loans at an average of 5-6% (as opposed to sub-2% for traditional ones) to generate downpayments for the kiddos. Of course, this transfer of wealth – from paid-for real estate to leveraged real estate – just fuels the housing bubble, driving valuations higher. The parents take on a growing liability. Their offspring buy into an inflated market and shoulder epic debt.

Nobody wins. Except the reverse mortgage company. And now teachers.

So this week the Ontario Teachers Pension Plan Board bought HomeQ Corp, which owns HomeEquity Bank. It’s a brilliant move, even though the teachers probably paid through the nose (the price was not disclosed). Not only does this bolster the pension’s board’s stable of financial assets, but it takes shameless advantage of a global pandemic. Fear of the virus and of seniors’ homes has convinced a lot of oldies to stay in their houses…forever…and yet the death of pensions and the collapse in interest rates has caused a heap of financial stress. “Nobody wants to move and they certainly don’t want to move into some sort of group setting,” says the company.

This (plus gifting money to kids) helps explain why reverse mortgage volumes have tripled recently. So far in 2021 alone, HomeEquity has papered a billion in new loans. Because these are 100% secured by real estate and carry a fat rate, they are financial gold. The only risk is a real estate collapse which – after the Trudeau romp on Monday – looks remote in the next few years.

Now for the irony part.

The pension board buying up these reverse mortgages, which drain equity from seniors who are almost always in financial stress and succumb to the Faustian loan, will use them to fund the defined benefit pensions of public sector workers. Yup, the golden ones. Those DB pensions are for life, indexed, and provide a steady, no-surprises income stream which amounts to at least 60% of the cash flow members earned when working.

So, seniors funding seniors. From the troubled to the privileged. A nation fueled by ever-more debt and social obsession with a single asset. Don’t scorn the teachers, of course. Just be careful around them.

%     %     %

It’s a trope now in the comments sections that ‘rates can never rise.’ That’s bunk. They can. They will. CBs cannot leave the cost of money in the ditch since it would be reckless and dangerous to do so. Assets inflate. Debt spirals. Bubbles happen. Plus, when the next downturn occurs, central banks will be out of bullets, unable to drop borrowing costs to get things moving. So what you see is not what we will get.

This week the US Fed declared as much. The stimulus tap will start to turn off by the first week in November, a prelude to rate increases commencing in one year. The benchmark rate will rise by about a quarter point each three months and, yes, the Bank of Canada will follow. It always does. It has to, lest our currency plop and inflation fly.

“We’re seeing a Fed that is getting more hawkish,” said a prominent US analyst as the latest monetary policy report was tabled. Borrow accordingly.

About the picture: “I owe my financial independence to learning from my wise parents, and reading money books including all of yours. I am eternally grateful,” writes Dianne. “This is 3 year old Baylee, rescued and adopted by her big hearted single mom, Jane. Baylee has just had one hip replacement surgery with ensuing complications, and will still be needing her other hip replaced, as well. She’s such a sweet, sweet, girl. Unwilling to ask for help or handouts, Jane instead set up a small online business, under the name of FernwoodFashionista in an effort to fund Baylee’s surgeries and aftercare. She doesn’t know I’m making this request, but would you consider posting Jane’s business info, in case any of your dog loving followers would like to check out her Etsy store and help Baylee?”

Quiet Earth: There is more to fear than zombies in Aussie thriller LIFE AFTER MAN [Trailer]

In Gareth Carr's upcoming apocalypse thriller Life After Man, an infectious disease causing the dead to rise again has wiped out most of humanity. On a small outback farm in Australia, a young girl must protect her sister from more than just the dead.

The first thing that strikes us about this trailer is the cinematography. It looks very well shot and intense.

Check out the trailer below:

Recommended Release: The Tribe

[Continued ...]

Quiet Earth: Amazon's Apocalyptic GREENLAND is Getting a Sequel

Ric Roman Waugh is returning to direct a follow-up to the apocalyptic disaster movie Greenland with original screenwriter Chris Sparling (Buried, ATM) on board to write the script.

The film is currently titled Greenland: Migration and Gerard Butler will also reprise his role alongside co-star Morena Baccarin of Deadpool fame.

In the first film, Butler and Baccarin portrayed an estranged couple maki [Continued ...]

Saturday Morning Breakfast Cereal: Saturday Morning Breakfast Cereal - Lines

Click here to go see the bonus panel!

If you rotate your head about 30 degrees and cross your eyes a little, it should show up.

Today's News:

Planet Lisp: Eric Timmons: New Project: cl-tar

I have just published the first release of a new project: cl-tar. This was supposed to be my summer side-project, but it ran long as they often do :).

The goal of this project is to provide a Common Lisp interface to tar archives. It has its foundations in Nathan Froyd's archive library, but has been significantly extended and improved.


There are actually two subprojects under the cl-tar umbrella. The first is cl-tar-file, which provides the ASDF system and package tar-file. This project provides low-level access to physical entries in tar files. As a consequence, two tar files that extract to the same set of files on your filesystem may have two very different sets of entries of tar-file's point of view, depending on the tar format used (PAX vs ustar vs GNU vs v7).

The cl-tar-file project is technically a fork of archive. Except, all non-portable bits have been removed (such as code to create symlinks), better support for the various archive variants has been added, better blocking support added (tar readers/writers are supposed to read/write in some multiple of 512 bytes), cpio support removed, and a test suite added, along with other miscellaneous fixes and improvements.


The second sub project is cl-tar itself, which provides three ASDF systems and packages: tar, tar-simple-extract, and tar-extract.

The tar system provides a thin wrapper over the tar-file system that operates on logical entries in tar files. That is, a regular file is represented as a single entry, no matter how many entries it is composed of in the actual bits that get written to the tar file. This system is useful for analyzing a tar file or creating one using data that is not gotten directly from the file system.

The tar-simple-extract system provides a completely portable interface to extract a tar archive to your file system. The downside of portability is that there is information loss. For example, file owners, permissions, and modification times cannot be set. Additionally, symbolic links cannot be extracted as symbolic links (but they can be dereferenced).

The tar-extract system provides a more lossless extraction capability. The downside of being lossless is that it is more demanding (osicat must support your implementation and OS) and it raises security concerns.

A common security concern is that a malicious tar file can extract a symlink that points to an arbitrary location in your filesystem and then trick you into overwriting files at the location by extracting later files through that symlink. This system tries its best to mitigate that (but makes no guarantees), so long as you use its default settings. If you find a bug that allows an archive to extract to an arbitrary location in your filesystem, I'd appreciate it if you report it!

Also note that tar-extract currently requires a copy of osicat that has the commits associated with this PR applied.

next steps

First, close the loop on the osicat PR. It started off as a straightforward PR that just added new functions. However, when I tested on Windows, I realized I couldn't load osicat. So I added a commit that fixed that. There may be some feedback and changes requested on how I actually acomplished that.

Second, integrate tar-extract into CLPM. CLPM currently shells out to a tar executable to extract archives. I'd like to use this pure CL solution instead. Plus, using it with CLPM will act as a stress test by exposing it to many tar files.

Third, add it to Quicklisp. tar-extract won't compile without the osicat changes, so those definitely need to be merged first. Additionally, I want to have at least some experience with real world tar files before making this project widely available.

Fourth, add support for creating archives from the filesystem.

Fifth, add the ability to compile to an executable so you could use this in place of GNU or BSD tar :).

If the fourth and fifth steps excite you, I'd love to have your help making them a reality! They're not on my critical path for anything at the moment, so it'll likely be a while before I can get to them.

Colossal: A Photographer Captures a Dwindling Herd of Elephant Slides Across Taiwan

All images © Pi Cheng Hsiu, shared with permission

Wander into a playground in Taiwan, and you might stumble upon an elephant in the midst of basketball courts and swingsets. Vintage slides shaped like the lumbering animal were once popular in the country, and although the equipment is generally out of use because it doesn’t match current regulations, the eclectic designs remain a fixture in both abandoned and thriving playgrounds. Photographer Pi Cheng Hsiu documents these quirky creations by the hundreds—in addition to similarly shaped animals like seahorses and giraffes—and you can find a vast array of colors and styles on Instagram. You also might enjoy these elephants squeezed into tight spots. (via Present & Correct)


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

Men take vehicle with ‘free car’ sign, later find body in trunk

Polyglot parrots are receiving daily language lessons in preparation for addressing guests when their hotel home opens next June.

Man Ejaculates From Anus, Urinates Feces for Two Years Before Seeking Help

The smart toilet era is here! Are you ready to share your analprint with big tech?

Baby Poop Is Loaded With Microplastics

The pattern of music downloads after their release appears to closely resemble epidemic curves for infectious disease

Young investors have a new strategy: watching financial disclosures of sitting members of Congress for stock tips.

Apple memo from Tim Cook denouncing leakers gets leaked

Lab-grown meat is supposed to be inevitable. The science tells a different story.

Cognitive Boost Technology™

The most detailed image ever of a human cell- And we have trillions of these making up our body.

Open Culture: A Rare, Early Version of the King Arthur Legend Found & Translated

The stories of King Arthur and his court took shape over a period of a few hundred years; like most ancient legends, they evolved through many iterations — not a little like the stories in modern-day comic books. “The medieval Arthurian legends were a bit like the Marvel Universe,” explains Laura Campbell, a medieval language scholar at Durham University. “They constituted a coherent fictional world that had certain rules and a set of well-known characters who appeared and interacted with each other in multiple different stories.”

The first account of Arthur comes from a text in Latin called the Historia Brittonum, a compilation of sources assembled sometime in 829 or 830. Here, Arthur is mentioned as a historical figure, “variously described,” notes the British Library, “as a war lord (dux bellorum), as a Christian soldier who carries either an image of the virgin or Christ’s cross, and as a legendary figure associated with miraculous events.”

Merlin the magician — the figure we most associate with miraculous events in the Arthurian legends — doesn’t show up for another two hundred years or so, in Geoffrey of Monmouth’s History of the Kings of Britain. “After Geoffrey,” writes Kathryn Walton at, “Merlin becomes a fixture of the Arthurian legend and appears in all kinds of different versions of the story across the Middle Ages.” One Merlin story that appears in many versions involves a figure called Nimue, Viviane, and other names in French, English, and Welsh. (She is sometimes identified with the Lady of the Lake).

The Merlin and Vivien stories have “survived throughout the ages in a way that not many other stories have,” the University of Rochester’s Robyn Pollack writes, “because writers have found remarkable ways to transform the characters and the narrative over the centuries.” Now, scholars at the University of Bristol have announced, two years after its discovery, the authentication of a fragment containing yet another version of the story.

Found glued into the binding of a late 15th century book at the Bristol public library (one of the world’s oldest libraries), the seven fragments in Old French, dated between 1250 and 1275, contain the “most chaste version” of the Merlin and Viviane legend, says Leah Tether, co-author of the new English translation and commentary, The Bristol Merlin: Revealing the Secrets of a Medieval Fragment. “The most significant difference to be found in this particular set of fragments is where Viviane, the enchantress, casts a spell.”

In other versions, her magic inscribes three names on her groin, a spell that keeps Merlin away from the same area. In the re-discovered fragment, which shows evidence of two scribal hands, Viviane engraves the three names on a ring, thereby preventing Merlin from speaking to her. “With medieval texts there was no such thing as copyright,” says Campbell, one of the project’s translators and authors. “So, if you were a scribe copying a manuscript, there was nothing to stop you from just changing things a bit.”

Part of a collection of Arthurian stories known as the Vulgate Cycle, the fragment provides further evidence of the Merlin character’s evolution, and considerable softening, over time. At his first introduction, Merlin was the literal son of Satan, a kind of antichrist sent to earth to wreak havoc. Over the centuries, he became much less sinister, transforming into the wise advisor of the ideal English king, Arthur, a character who did a fair bit of transforming himself as his legend grew and changed.

via Atlas Obscura

Related Content:

King Arthur in Film: Our Most Enduring Popular Entertainment Franchise? Pretty Much Pop: A Culture Podcast #104

160,000 Pages of Glorious Medieval Manuscripts Digitized: Visit the Bibliotheca Philadelphiensis

Medieval Scribes Discouraged Theft of Manuscripts by Adding Curses Threatening Death & Damnation to Their Pages

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

A Rare, Early Version of the King Arthur Legend Found & Translated 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.

Schneier on Security: ROT8000

ROT8000 is the Unicode equivalent of ROT13. What’s clever about it is that normal English looks like Chinese, and not like ciphertext (to a typical Westerner, that is).

CreativeApplications.Net: State-of-the-art of live media performance – part 1#

State-of-the-art of live media performance – part 1#
The first post of a series on the state-of-the-art of live media performance curated by Federica Patti, focus on live stream. With three live shows to see and follow here.

Open Culture: Behold the Newly-Discovered Sketch by Vincent van Gogh Sketch, “Study for Worn Out” (1882)

Having been dead for more than 130 years now, Vincent van Gogh seldom comes up with a new piece of work. But when he does, you can be sure it will draw the art world’s attention as few works by living artists could. Such has been the case with the newly discovered Study for Worn Out, an 1882 sketch that recently came into possession of the Van Gogh Museum, according to Margherita Cole at My Modern Met, “when a Dutch family requested that specialists take a look at their unsigned drawing.” The figure in the drawing strongly resembles the one in van Gogh’s 1890 painting At Eternity’s Gate. But it took the experts at the museum to determine that the artist was none other than van Gogh himself.

“Today and yesterday I drew two figures of an old man with his elbows on his knees and his head in his hands,” wrote the 29-year-old van Gogh to his brother in a letter from 1882. “What a fine sight an old working man makes, in his patched bombazine suit with his bald head.” The immediate fruit of these labors was the pencil drawing Worn Out, for which “the artist employed one of his favorite models, an elderly man named Adrianus Jacobus Zuyderland who boasted distinctive sideburns (and who appears in at least 40 of van Gogh’s sketches from this period).” So writes’s Nora McGreevy, who adds that van Gogh revisited the work to adapt it as a painting “just two months before his death” in an asylum near Saint-Rémy-de-Provence.

“In drawings like these,”  says the Van Gogh Museum, “the artist not only displayed his sympathy for the socially disadvantaged — no way inferior in his eyes to the well-to-do bourgeoisie — he actively called attention to them too.” Another aim with Worn Out, adds McGreevy, was “to seek employment at a British publication, but he either failed to follow through on this idea or had his work rejected.” This would have counted as just another seeming instance of failure, the likes of which characterized the painter’s short life. Little could he, his correspondents, or his models have imagined that his works would one day become some of the most famous in the world — and certainly not that one of his sketches would go on to be enshrined well over a century later, as it has been since last Friday at the museum that bears his name.

via My Modern Met

Related Content:

1,000+ Artworks by Vincent Van Gogh Digitized & Put Online by Dutch Museums: Enter Van Gogh Worldwide

Download Hundreds of Van Gogh Paintings, Sketches & Letters in High Resolution

Rare Vincent van Gogh Painting Goes on Public Display for the First Time: Explore the 1887 Painting Online

Experience the Van Gogh Museum in 4K Resolution: A Video Tour in Seven Parts

Based in Seoul, Colin Marshall writes and broadcasts on cities, language, and culture. His projects include the Substack newsletter Books on Cities, the book The Stateless City: a Walk through 21st-Century Los Angeles and the video series The City in Cinema. Follow him on Twitter at @colinmarshall or on Facebook.

Behold the Newly-Discovered Sketch by Vincent van Gogh Sketch, “Study for Worn Out” (1882) 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: “Isolation Windows” by Artist Catherine Knight

Ideas: Body Language | Olivia Laing: Visions of the Free Body

Our bodies are vulnerable and powerful, says writer Olivia Laing. She reflects on the fight for bodily freedom, through polarizing figures such as psychoanalyst Wilhelm Reich and feminist Andrea Dworkin, in this rich conversation based on her book, Everybody.

Disquiet: Huntington

                          THe bank is for
       sale. Long ago I broUght rolls
                 of dimes iN; 
                         goT my  
                          fIrst check 
 book. The Greek place has New proprietors;
                     the avGolomeno soup is
            remarkable, besT ever.
                      And fOr my after-supper
                walk, the iNsects seem louder,
though it could be my ears.

Planet Haskell: Tweag I/O: Functional data pipelines with funflow2

As the data science and machine learning fields have grown over the past decade, so has the number of data pipelining frameworks. What started out largely as a set of tools for extract-transform-load (ETL) processes has expanded into a diverse ecosystem of libraries, all of which aim to provide data teams with the ability to move and process their data. Apache Airflow, Beam, Luigi, Azkaban — the list goes on and on.

As users of several of the above frameworks, Tweag has a special interest in data pipelines. While working with them, we have observed a few common shortcomings which make writing and debugging data pipelines more complex than it needs to be. These shortcomings include limited composability of pipeline components, as well as minimal support for static analysis of pipelines. This second issue can be especially annoying when executing pipelines in a machine learning context, where pipelines are often defined as a Directed Acyclic Graph (DAG) of long-running tasks (e.g. training a model). In these situations, early identification of a pipeline doomed to fail due problems like configuration errors can spare great waste of compute time and resources.

Additionally, while many data pipeline frameworks provide some support for choosing the execution environment of the pipeline (e.g. running locally vs. on a Spark or Kubernetes cluster), not all provide control over the execution logic of the tasks themselves. This is a common limitation of workflow-oriented frameworks, like Apache Airflow, that couple a task’s definition to its execution logic by combining them in a single class. This lack of modularity makes it difficult to do things like write integration tests for pipeline components.

Enter: funflow2

funflow2 is the successor of funflow, a Haskell library for writing workflows in a functional style. funflow2 makes use of kernmantle to offer several advantages over the original funflow including greater extensibility, additional type-level controls, and a more feature-rich interpretation layer for analyzing pipelines before execution.

An ICFP Haskell Symposium 2020 paper provides a deep dive into kernmantle’s design and features.

funflow2 aims to address the limitations we have observed in other data pipeline frameworks while providing a simple, high-level API to express pipelines in a functional style. Let’s take a closer look.


In funflow2, a pipeline is represented by a Flow data type. Flows have the nice property of being composable, which allows pipeline subcomponents to be recombined with other components to create new pipelines.

To illustrate this point, we will compare two simple Apache Airflow and funflow2 pipelines, each with three sequential tasks that execute a function. In Airflow, this can be written as follows.

from datetime import datetime

from airflow import DAG
from airflow.operators.python import PythonOperator

dag = DAG(
   default_args={"start_date": datetime(2021, 10, 1)},

gen_data = PythonOperator(
   python_callable=lambda: 1,

add_one = PythonOperator(
   python_callable=lambda x: x + 1,

print_result = PythonOperator(
   python_callable=lambda x: print(x),

In Airflow it’s simple to define a DAG of tasks, but it’s tricky to re-use it among pipelines. Airflow provides support for a SubDagOperator to trigger other DAGs, but in the end we end up with two completely separate DAG objects, forcing us to manage them individually.

With Funflow2 reusability is much simpler. Since Flows are designed to be composable with Arrows, we can just write:

{-# LANGUAGE FlexibleContexts #-}

import Funflow (pureFlow, ioFlow)
import Control.Arrow ((>>>))

-- Note: the >>> operator is used to chain together two Flows sequentially
genData = pureFlow (const 1)
addOne = pureFlow (\x -> x + 1)
printResult = ioFlow (\x -> print x)
example1 = genData >>> addOne >>> printResult

anotherFlow = example1 >>> pureFlow (\_ -> "anotherFlow")

It’s as simple as that!

Identifying errors early

One of the most frustrating things that can happen when executing a pipeline of long-running tasks is to discover that one of the tasks towards the end of the pipeline was misconfigured - leading to wasted developer time and compute resources. Our original funflow package sought to alleviate this pain point by emphasizing resumability. Resumability was achieved through caching results as pipeline execution proceeded. funflow2 supports resumability using the same caching approach as the original funflow.

The potential time and resource savings provided by caching are limited, however, in at least two ways. First, since pipeline tasks are structured as atomic units, a failed pipeline cannot recover the work that was successfully completed within a failing task before the failure occurred. Perhaps even more importantly, with resumability a failed pipeline may still cause lost efficiency due to mental context switching. For instance, maybe you start a pipeline run, switch to another project (perhaps over multiple days), and then find that your pipeline has failed. You might find yourself asking the question, “what was I trying to achieve in the task that failed?” Earlier discovery of errors is less wasteful with mental resources and less stressful for a pipeline user.

As a pipeline author it is useful to identify misconfigurations early in the development process, either through compilation errors or through early failures at run-time. While many pipelining frameworks divide a program’s lifecycle into compile-time and run-time, kernmantle (and thus funflow) distinguishes three phases: compile-time, config-time and run-time. In the intermediate config-time phase, the pipeline is interpreted and configured which allow for static analysis. As we’ll see below, funflow2 makes use of both compile- and execution-time phases to ensure early failure.

Type errors, detectable at compilation time

There are a number of ways in which a pipeline author can accidentally misconfigure a pipeline. One example of misconfiguration is when there’s a mismatch between a task’s input type and the type of argument passed by an upstream task. This kind of issue can plague pipelines built with a library written in a dynamically typed language like Python (e.g. Airflow). It’s less common of an issue, though, for pipelines written in statically typed languages like Java or Scala (e.g. scio). Since funflow2 pipelines are written in Haskell, the language’s static type checking allows us to catch issues like this at compile time.

For example, the following pipeline will fail to compile since flow3 attempts to pass the string output of flow1 as an input to flow2, which expects an integer.

-- Note: `const` is a built in function which just returns the
-- specified value
flow1 :: Flow () String
flow1 = pureFlow (const "42")

flow2 :: Flow Integer Integer
flow2 = pureFlow (+1)
flow3 = flow1 >>> flow2
Couldn't match type ‘Integer’ with ‘String’

Value errors, detectable at config time

A more subtle and less easily detectable kind of misconfiguration occurs when a task is configured in a way that passes compile-time type checks but is guaranteed to be invalid at runtime. Funflow2 is built on top of kernmantle, which provides us with a convenient layer for extracting static information from tasks in a pre-execution phase called config-time, after the pipeline has been loaded but before any task has run. This layer can be used for early detection of errors in a pipeline and ensuring early failure if something is awry. For example, let’s try running a Flow which attempts to run a Docker container with an image tag that does not exist. This pipeline can be compiled without complaint but is doomed to fail at run-time.

{-# LANGUAGE OverloadedStrings #-}

import Funflow (dockerFlow)
import Funflow.Tasks.Docker (DockerTaskConfig (..), DockerTaskInput (..))

failingFlow = dockerFlow $
  DockerTaskConfig {
    image = "alpine:this-tag-does-not-exist",
    command = "echo",
    args = ["hello"]

-- Flows created with dockerFlow expect a DockerTaskInput,
-- and we can just create an empty value for the sake of this
-- example.
emptyInput = DockerTaskInput {inputBindings = [], argsVals = mempty}

flow = ioFlow (\_ -> print "start of flow")
  >>> pureFlow (const emptyInput)          -- Constructs dockerFlow input
  >>> failingFlow
  >>> ioFlow (\_ -> print "end of flow")

Attempting to run this pipeline gives us the following error.

runFlow flow ()
Found docker images, pulling...
Pulling docker image: alpine:this-tag-does-not-exist
ImagePullError "Request failed with status 404: \"Not Found\" …"

Note that “start of flow” is never printed; the first task in the pipeline, which would print that, never actually executes. This is because funflow2’s default pipeline runner extracts the identifiers of all images required to run a pipeline at config-time and attempts to pull them before starting the actual pipeline run.

For another example of this fail-fast behavior when a pipeline is misconfigured, have a look at the configuration tutorial.

Aside: workflows and build systems

The connection between build systems and the kinds of task-based workflows / pipelines mentioned here is no secret and is a topic we have mentioned in previous blog posts. Despite serving different domains, workflow tools like funflow2 and build tools like Bazel or mill all seek to provide users with the ability to execute a graph of tasks in a repeatable way. Here we briefly consider a couple of key parallels between build systems and funflow2.

Early cutoff is a common property of build systems and refers to a build system’s ability to halt once it has determined that no dependency of a downstream task has changed since the most recent build1. While funflow2 is not a build system, it can be used to mimic one and even exhibits early cutoff, owing to its caching strategy using content-addressable storage. If the hash determined by the hash of a task and its inputs has not changed since a previous pipeline run, work need not be repeated.

Another property which disinguishes build systems is whether or not they support dynamic dependencies, or those for which the relationships themselves may vary with task output(s). This property depends on the build systems’ approach to modeling graphs of tasks, and in a functional paradigm is determined by whether or not tasks are modeled using monadic effects1. funflow2 uses arrows and not monads for composing its task graph and therefore falls within the camp of tools which do not support dynamic dependencies such as Bazel. The use of a static task graph is the key to pre-execution dependency collection and is what allows funflow2 to support the execution-free interpretation of tasks to detect invalid configuration. If tasks were linked in a monadic fashion, this would be impossible.


In addition to limited composability and fail-late behavior, tight coupling between a task and its execution logic is another common weakness among existing task-based data pipelining frameworks: the data defining a task is inseparably bound to the specific logic for how the task is executed. In a closely coupled context, altering task execution logic requires entire redefinition of the task itself, e.g. by subclassing. This confounds granular testing and nudges pipeline validation toward an end-to-end style. The resulting coarse resolution view of a test failure complicates diagnosis and remedy of a bug.

In funflow2, an interpreter defines task execution logic and is separate from the task definition itself. Effectively, an interpreter transforms a task, which is treated as data, into an executable action. Separating concerns this way allows development of custom interpreters for integration testing, project-specific execution requirements, and more. Using interpreters, you can do things like flip between test and deployment execution contexts while working with the same pipeline definition. Furthermore, this modularity allows for a greater static analysis, yielding enhanced fail-fast behavior.

While an example implementation is out of scope for this post, an example of custom tasks and interpreters is available in the extensibility tutorial on the funflow2 project website.

Similarities with funflow

funflow2 uses a completely new backend (kernmantle) and therefore has major API differences from the original funflow. Nonetheless, many of the useful features of funflow are available in funflow2:

Arrow syntax

The most immediately evident similarity between the original funflow and funflow2 is syntactic. Since funflow2 still models flows using arrows, Arrow syntax can still be used to define and compose flows.


Like its predecessor, the funflow2 project uses the cas-store package which provides caching functionality using content-addressable storage.


While funflow2’s API differs significantly from funflow, it provides a module with aliases for some of the core functions from funflow such as step and stepIO to help simplify migration. Many of the core example from funflow have also been ported to funflow2 such as the C compilation tutorial or custom make example discussed in an earlier blog post.

Next steps

Interested in trying out some hands-on examples? We’ve prepared a set of tutorials on the funflow2 website. Alternatively, each tutorial notebook can be run locally using the provided Nix shell. You may also initialize a funflow2 project using our cookiecutter template.

funflow2 is still in its early stages, and so far most of the development on it has focused on building the Flow API, along with a few tasks and interpreters. One area in which other data pipeline frameworks excel is in providing a high level of interoperability through a wide range of predefined tasks for common operations, including running database queries and uploading data to cloud storage. We would welcome external contributions to provide these and other common task types, so please open an issue or pull request if this interests you.

Thanks for reading, and stay tuned for future updates on funflow2!

  1. Refer to the paper “Build Systems a la Carte” for much more discussion of minimality, early cutoff, and other properties of build systems and pipelines.

Planet Haskell: Gil Mizrahi: A new project-oriented Haskell book

This is an announcement and a 'request for comments' for a new project-oriented, online, and free, Haskell book: Learning Haskell by building a static blog generator (or LHBG for short).

This book is yet another attempt of mine to try and help make Haskell a bit more approachable. I think Haskell is a great language and I've been enjoying using it for most of my projects for several years now.

I wanted to create a short book aimed at complete beginners to the language which focuses on the practice of writing Haskell programs, including idioms, techniques, and general software development, rather than the concepts and language features - for which there are many resources available.

This book is still pretty much in an 'alpha' kind of stage, meaning that it probably needs some feedback-driven editing, but I think it is ready to be shared. I hope this book will be useful to some people trying to learn Haskell and write programs with it.

Do let me know if you have any comments or feedback on it. Especially if you are a new Haskeller getting started with the language!

Charles Petzold: Concert Diary: Taka Kigawa Plays Ligeti and Boulez


... more ...

Quiet Earth: Trailer for Apple tv+'s Alien Invasion Series INVASION

Apple TV Plus has unveiled the trailer for Invasion, a sci-fi drama series from Simon Kinberg (X-Men, The Martian) and David Weil (Hunters, Solos) about aliens attacking Earth that is reminiscent of the Stephen Spielberg show Falling Skies.

"We are not alone. Extraterrestrial beings have made their way to Earth from across the universe. Civilization could collapse. And survival is up to you. Feel what it’s like to live thr [Continued ...]

Quiet Earth: All the Details for Folk Horror Doc "Woodlands Dark and Days Bewitched: A History of Folk Horror" + Massive Folk Horror Boxset From Severin

Clocking in at over 3 hours long, the new documentary WOODLANDS DARK AND DAYS BEWITCHED explores the folk horror phenomenon from its beginnings in a trilogy of films – Michael Reeves’ Witchfinder General (1968), Piers Haggard’s Blood on Satan’s Claw (1971) and Robin Hardy’s The Wicker Man (1973) – through its proliferation on British television in the 1970s and its culturally specific manife [Continued ...]

Arduino Blog: This robotic bartender serves up drinks using a Nano RP2040 Connect and the Arduino Cloud

Mixing up perfect, custom cocktails often requires months or even years of training, in addition to having to know a plethora of recipes. But Jithin Sanal wanted to pour his favorite drinks without spending the extra time and effort, so he concocted a robotic cocktail mixer to perform this task for him. It operates by using a series of ingredient reservoirs, pumps, an Arduino Nano RP2040 Connect, and a few relays to dispense a precise quantity of the desired ingredient into a container. Sanal also designed and fabricated his own PCB to connect each component together in a circuit.

Rather than having a bunch of physical buttons on the front of the robotic cocktail mixer, Sanal instead opted to use the Arduino Cloud with five virtual ones that each correspond to a single drink. When a button is pressed, a function is executed on the Nano RP2040 Connect that activates the correct pumps in the specified order for a certain duration. By utilizing this method, users can be confident their drink is perfectly made every single time. More drinks can be added to the system simply by adding another button within the Cloud and creating the associated function in the RP2040’s code. 

To see how Sanal brought this project to life in greater detail, you can view his write-up here or watch his video below.

The post This robotic bartender serves up drinks using a Nano RP2040 Connect and the Arduino Cloud appeared first on Arduino Blog.

MattCha's Blog: 2021 Tea Encounter Yi Shan Mo Gushu: Top Shelf Yi Shan Mo!

I was recently informed that much of what was previously Yi Shan Mo is now, considered a state protected forest area or as they say “GuoYouLin”.  This 2021 Tea Encounter Yishanmo Gushu($175.10 for 250g cake or $0.70/g) is Tea Encounter’s first pressing of the Yi Shan Mo area and it really impressed me..

The dry leaf has a deep gamey distinct wild floral sweet odour.  The smell is mysterious and deep but very inviting with that floral.  Pretty compressed and looks like the Bing hole…. Mmmm….

The first infusion has a clear wildflower watery profile almost like a tisane with a faint long cooling breath and woody wildflower finish.  There is not that much sweetness here but some edges in the aftertaste.  The mouthfeeling is a very mild lubricating with an open mid-throat.  The profile is a clear watery pure image.  Minutes later there is a kind of rubbery brackish taste in the mouth.

The second infusion has a woody spicy almost mild bitter and wildflower-like not that sweetness.  The initial taste is condensed and has a chalky cottony mouthfeeling and faint open mid-throat.  The aftertaste has a woody wildflower with a slight creamy sweet edge.  There is a subtle upper throat stimulation that makes it feel like a blob of saliva is caught there.  Nice calm and reflective feeling to the Qi.

The third infusion has a spicy pungent onset with a woody not really bitter nor that sweet distinct wildflower taste.  There is a nice oily and lubricating mouthfeeling and a slow release of strong wildflower finish.  The floral is not that sweet but very floral and expands into the aftertaste with edges of more candy and creamy sweet tastes over a faint cooling throat.  Not much for bodyfeelings but a nice calm reflective energy here.

The fourth infusion has a peachy woody spicy taste with the sweet peach taste coming through here over a thick oily mouthfeeling and open mid-throat.  There is a bit of a saliva gob at the back throat and a faint cooling where peachy woody and wildflower tastes seem to expand and grow in the viscus mouth.  The Qi is a really nice chill vibe with relaxing and easygoing feeling to it.

The fifth infusion has a peachy woody a bit spicy condensed taste onset which pop in the mouth and with a cooling mid-throat and saliva gob in the upper throat produces a full expanding peachy woody wildflower finish in the mouth.  Nice expansive relaxing.  Nice full oily lubricating mouthfeeling.  Clear, simple, condensed taste and oily rich feeling puts me at ease and seems to relax me deeper.

The sixth infusion is a pop of dense peachy woody with wildflower distinct finish over a lubricating mouthfeel and some faint cooling that has a bit of pungency to it and seems to expand the sweet peach but especially the wildflower taste in the mouth.  Nice relaxing chill vibes here. Subtle tingling in the face.

The 7th is a bit creamy sweet buttercup like floral sweetness there is a very mild spice initially then a cool throat with a dominating wild flower finish with some sweeter and woodier touches.  The mouthfeel is still quite oily and a bit chalky.  The aftertaste just sticks in there.  Nice happy chill feeling to this tea that I’m totally into today as the leaves start to change around me.

8th has a dense woody buttercup floral faintly peach not that sweet and not really bitter wildflower onset.  There is some throat cooling and a thick oily mouthfeeling then a returning stronger wildflower in the aftertaste.  Strong happy vibes to this puerh as well as this engaging relaxing that is deeply energizing like lying in the sun.

9th has a peachy woody floral onset with the spice note gone the last few infusions.  The initial condensed woody sweet floral rests on a lubricating mouthfeeling that is subtly mouthwatering but mainly just oily. The aftertaste shows some more clear sweetness but mainly more wildflower taste.  Nice Happy uplifting but not overtly or excessively energizing- a really happy smooth ride here.  There is some Abdominal opening body sensations which are really subtle.

10th has a condensed woody wildfloral and sort of not that sweet peachy taste.  There is some throat cooling and more of a dry sticky mouthfeeling.  Wildflower notes stick out in the aftertaste with a bit of woody and less sweet.  Nice strong deep happy feel good Qi with some Abdomen and rib spaciousness.

11th has a woody wildfloral onset there is some cooling throat then an expanding peachy wildflower woody sweetness in the aftertaste.  The thick somewhat lubricating mouthfeeling holds and so does the feel good Qi.

12th has a woody oily wildflower and almost faint mushroom taste.  The mouthfeeling is still somewhat oily and there is still some saliva producing effect.  The Qi is just really satisfying for me- deeply feel good Qi with some faint bodyfeeling opening lower ribs and abdomen.  Happy.

13th opens up with a floral almost peachy that ends in a woody taste.  The floral and peach is still quite satisfying to me still.  The mouthfeeeling is chalky.  Qi is feel good with stronger bodyfeelings as the session progresses.

14th has a similarly strong condensed onset… its weird that this tea seems to get better and better this late into the session.  The taste is almost but not really bitter and has a bit of a mushroom touch to it now.   Feelin’ Good.

15th has an almost sour fruitiness with woody and floral onset there is some faint mushroom… interesting things are coming out of this one.  The mouthfeel is still quite lube and strong cooling.  Feel good Qi… I’d hate to stop this session.

16th the next day has a more distinct but sweeter and clear pure floral onset with a melon edge of sweetness.  A brighter and fruitier floral today.  The mouthfeel is softy oily now with an expanding slow fade sweet melon floral.

17th was left to cool and gives off a woody floral with a more distinct melon sweetness over a chalky sticky mouthfeeling with some oily texture still.  The melon floral taste stretches in the aftertaste becoming the dominant note and devlopling a melon-creamy-sweet taste with floral, for the first time being secondary.  Nice feel good Qi in there today as well.

18th has a woody almost bitter wildflower onset there is not much coolness here but a retuning creamier sweetness with not much melon taste.  The mouthfeeling starts to become more gripping now.  Nice easy going Qi.

19th is left to cool but still pounds out very thick viscus and very flavourful taste.  Nice low sweet floral finish.  There are lots of puerh out there that won’t even taste this full, vibrant, and delicious in the first handful of infusions than this 19th! Infusion.  The stamina is very good and tastes very consistent but slowly and gently evolves throughout the session.

With how much I packed the pot with these leaves I’m convinced they could go on a lot longer at flash infusions… but I decided to mug steep out the rest of the leaves…

Very thick dense forest taste with a thick chalky mouthfeeling, still quite oily, with a distinct strong wildflower finish.  Not a bright sweet floral but more of an almost weedy floral wild flower taste to it. There are glimpses of melon, pear, and creamy sweet nuances as well as subtle mushroom- all notes that appeared in the session underneath.  Mild saliva returning here.  Nice almost euphoric feel good happy feeling.  Very dense and thick and powerful tastes and mouthfeeling and Qi in these longer infusions.  There are also abdomen opening and lower rib opening feelings in the body with some Heart and Chest expansion in these longer stronger infusions.  Super tasty and satisfying to me.

This is the nicest Yishanmo that I have sampled and for those who like this region, I can’t think of a better treat!  It is very condensed and clear in its taste, of note is the distinct wildflower note which usually shares a bit of space with some woody and some lesser fruity/creamy sweetness.  The taste expands nicely in the aftertaste as there is a bit of saliva returning but overall a very sturdy oily lubricating mouthfeeling for the flavours to hang out in.  The Qi is really wonderful here it has this strong happy feel good vibe to it that is a powerful mood enhancer.  There are some bodyfeelings that come out later in the session such as abdomen, lower ribs, and even Heart/Chest feelings.  The slow and steady evolution of narrow but engaging and dense tastes coupled with the buillding Qi and the powerful stamina of these leaves as well as the signature lubricating mouthfeeling make this the best Yishanmo I have yet to try.

Alex’s (Teanotes) Tasting Notes


Schneier on Security: FBI Had the REvil Decryption Key

The Washington Post reports that the FBI had a decryption key for the REvil ransomware, but didn’t pass it along to victims because it would have disrupted an ongoing operation.

The key was obtained through access to the servers of the Russia-based criminal gang behind the July attack. Deploying it immediately could have helped the victims, including schools and hospitals, avoid what analysts estimate was millions of dollars in recovery costs.

But the FBI held on to the key, with the agreement of other agencies, in part because it was planning to carry out an operation to disrupt the hackers, a group known as REvil, and the bureau did not want to tip them off. Also, a government assessment found the harm was not as severe as initially feared.

Fighting ransomware is filled with security trade-offs. This is one I had not previously considered.

Another news story.

Saturday Morning Breakfast Cereal: Saturday Morning Breakfast Cereal - Last Chance

Click here to go see the bonus panel!

Thanks everyone! Please make sure to see the double update by clicking back twice.

Today's News:


CreativeApplications.Net: – Superfluous (object) futures – Superfluous (object) futures
Created by Ignacio Pérez (ECAL MID), is a critical tool that questions our models of manufacturing and consumption, exploiting the control of creation algorithms in order to interrogate current patterns of design, production and legislation.

Saturday Morning Breakfast Cereal: Saturday Morning Breakfast Cereal - Pruney

Click here to go see the bonus panel!

Nope, not a BAHFest announcement - still waiting on the plague to end.

Today's News:

Penny Arcade: News Post: Cryptonym

Tycho: Gabe liked Destiny when it was very much not a cool thing to like. Kiko and I used to give him shit about it all the time. Kiko never got entirely wrapped up in it, but it had me pretty fucked up for a while - to the extent that I still maintain an active eye on lore developments even if I don't feel like grinding whatever new dust they've invented. I was just about to say that I never wrote any fics, thereby elevating me above Gabriel's more commonplace pursuits, but that's not even true. I definitely wrote fic, I just did it with him. And then, arguably, despite my…

Penny Arcade: Comic: Cryptonym

New Comic: Cryptonym

Ideas: Body Language | The Problem of Too Much Body

Fat acceptance — the idea that bodies come in all sizes and all bodies have equal value and deserve equal treatment. But socially, we remain deeply invested in diet and weight loss culture. Is it possible to get to a place where body size no longer matters? The third in our series Body Language.

Planet Haskell: Brent Yorgey: Competitive programming in Haskell: Codeforces Educational Round 114

Yesterday morning I competed in Educational Round 114 on, using only Haskell. It is somewhat annoying since it does not support as many Haskell libraries as Open Kattis (e.g. no unordered-containers, split, or vector); but on the other hand, a lot of really top competitive programmers are active there, and I enjoy occasionally participating in a timed contest like this when I am able.

WARNING: here be spoilers! Stop reading now if you’d like to try solving the contest problems yourself. (However, Codeforces has an editorial with explanations and solutions already posted, so I’m not giving anything away that isn’t already public.) I’m going to post my (unedited) code for each problem, but without all the imports and LANGUAGE extensions and whatnot; hopefully that stuff should be easy to infer.

Problem A – Regular Bracket Sequences

In this problem, we are given a number n and asked to produce any n distinct balanced bracket sequences of length 2n. I immediately just coded up a simple recursive function to generate all possible bracket sequences of length 2n, and then called take n on it. Thanks to laziness this works great. I missed that there is an even simpler solution: just generate the list ()()()()..., (())()()..., ((()))()..., i.e. where the kth bracket sequence starts with k nested pairs of brackets followed by n-k singleton pairs. However, I solved it in only four minutes anyway so it didn’t really matter!

readB = C.unpack >>> read

main = C.interact $
  C.lines >>> drop 1 >>> concatMap (readB >>> solve) >>> C.unlines

bracketSeqs 0 = [""]
bracketSeqs n =
  [ "(" ++ s1 ++ ")" ++ s2
  | k <- [0 .. n-1]
  , s1 <- bracketSeqs k
  , s2 <- bracketSeqs (n - k - 1)

solve n = map C.pack . take n $ bracketSeqs n

Problem B – Combinatorics Homework

In this problem, we are given numbers a, b, c, and m, and asked whether it is possible to create a string of a A’s, b B’s, and c C’s, such that there are exactly m adjacent pairs of equal letters. This problem requires doing a little bit of combinatorial analysis to come up with a simple Boolean expression in terms of a, b, c, and m; there’s not much to say about it from a Haskell point of view. You can refer to the editorial posted on Codeforces if you want to understand the solution.

readB = C.unpack >>> read

main = C.interact $
  C.lines >>> drop 1 >>> map (C.words >>> map readB >>> solve >>> bool "NO" "YES") >>> C.unlines

solve :: [Int] -> Bool
solve [a,b,c,m] = a + b + c - m >= 3 && m >= z - (x+y) - 1
    [x,y,z] = sort [a,b,c]

Problem C – Slay the Dragon

This problem was super annoying and I still haven’t solved it. The idea is that you have a bunch of “heroes”, each with a numeric strength, and there is a dragon described by two numbers: its attack level and its defense level. You have to pick one hero to fight the dragon, whose strength must be greater than or equal to the dragon’s defense; all the rest of the heroes will stay behind to defend your castle, and their combined strength must be greater than the dragon’s attack. This might not be possible, of course, so you can first spend money to level up any of your heroes, at a rate of one coin per strength point; the task is to find the minimum amount of money you must spend.

The problem hinges on doing some case analysis. It took me a good while to come up with something that I think is correct. I spent too long trying to solve it just by thinking hard; I really should have tried formal program derivation much earlier. It’s easy to write down a formal specification of the correct answer which involves looping over every hero and taking a minimum, and this can be manipulated into a form that doesn’t need to do any looping.

In the end it comes down to (for example) finding the hero with the smallest strength greater than or equal to the dragon’s defense, and the hero with the largest strength less than or equal to it (though one of these may not exist). The intended way to solve the problem is to sort the heroes by strength and use binary search; instead, I put all the heroes in an IntSet and used the lookupGE and lookupLE functions.

However, besides my floundering around getting the case analysis wrong at first, I got tripped up by two other things: first, it turns out that on the Codeforces judging hardware, Int is only 32 bits, which is not big enough for this problem! I know this because my code was failing on the third test case, and when I changed it to use Int64 instead of Int (which means I also had to switch to Data.Set instead of Data.IntSet), it failed on the sixth test case instead. The other problem is that my code was too slow: in fact, it timed out on the sixth test case rather than getting it wrong per se. I guess Data.Set and Int64 just have too much overhead.

Anyway, here is my code, which I think is correct, but is too slow.

data TC = TC { heroes :: ![Int64], dragons :: ![Dragon] }
data Dragon = Dragon { defense :: !Int64, attack :: !Int64 }

main = C.interact $
  runScanner tc >>> solve >>> map (show >>> C.pack) >>> C.unlines

tc :: Scanner TC
tc = do
  hs <- numberOf int64
  ds <- numberOf (Dragon <$> int64 <*> int64)
  return $ TC hs ds

solve :: TC -> [Int64]
solve (TC hs ds) = map fight ds
    heroSet = S.fromList hs
    total = foldl' (+) 0 hs
    fight (Dragon df atk) = minimum $
      [ max 0 (atk - (total - hero)) | Just hero <- [mheroGE] ]
      [ df - hero + max 0 (atk - (total - hero)) | Just hero <- [mheroLE]]
        mheroGE = S.lookupGE df heroSet
        mheroLE = S.lookupLE df heroSet

I’d like to come back to this later. Using something like vector to sort and then do binary search on the heroes would probably be faster, but vector is not supported on Codeforces. I’ll probably end up manually implementing binary search on top of something like Data.Array.Unboxed. Doing a binary search on an array also means we can get away with doing only a single search, since the two heroes we are looking for must be right next to each other in the array.

Edited to add: I tried creating an unboxed array and implementing my own binary search over it; however, my solution is still too slow. At this point I think the problem is the sorting. Instead of calling sort on the list of heroes, we probably need to implement our own quicksort or something like that over a mutable array. That doesn’t really sound like much fun so I’m probably going to forget about it for now.

Problem D – The Strongest Build

In this problem, we consider a set of k-tuples, where the value for each slot in a tuple is chosen from among a list of possible values unique to that slot (the values for a slot are given to us in sorted order). For example, perhaps the first slot has the possible values 1, 2, 3, the second slot has possible values 5, 8, and the third slot has possible values 4, 7, 16. In this case there would be 3 \times 2 \times 3 possible tuples, ranging from (1,5,4) up to (3,8,16). We are also given a list of forbidden tuples, and then asked to find a non-forbidden tuple with the largest possible sum.

If the list of slot options is represented as a list of lists, with the first list representing the choices for the first slot, and so on, then we could use sequence to turn this into the list of all possible tuples. Hence, a naive solution could look like this:

solve :: Set [Int] -> [[Int]] -> [Int]
solve forbidden =
  head . filter (`S.notMember` forbidden) . sortOn (Down . sum) . sequence

Of course, this is much too slow. The problem is that although k (the size of the tuples) is limited to at most 10, there can be up to 2 \cdot 10^5 choices for each slot (the choices themselves can be up to 10^8). The list of all possible tuples could thus be truly enormous; in theory, there could be up to (2 \cdot 10^5)^{10} \approx 10^{53}), and generating then sorting them all is out of the question.

We can think of the tuples as forming a lattice, where the children of a tuple t are all the tuples obtained by downgrading exactly one slot of t to the next smaller choice. Then the intended solution is to realize that the largest non-forbidden tuple must either be the top element of the lattice (the tuple with the maximum possible value for every slot), OR a child of one of the forbidden tuples (it is easy to see this by contradiction—any tuple which is not the child of a forbidden tuple has at least one parent which has a greater total value). So we can just iterate over all the forbidden tuples (there are at most 10^5), generate all possible children (at most 10) for each one, and take the maximum.

However, that’s not how I solved it! I started thinking from the naive solution above, and wondered whether there is a way to do sortOn (Down . sum) . sequence more efficiently, by interleaving the sorting and the generation. If it can be done lazily enough, then we could just search through the beginning of the generated ordered list of tuples for the first non-forbidden one, without having to actually generate the entire list. Indeed, this reminded me very much of Richard Bird’s implementation of the Sieve of Eratosthenes (see p. 11 of that PDF). The basic idea is to make a function which takes a list of choices for a slot, and a (recursively generated) list of tuples sorted by decreasing sum, and combines each choice with every tuple, merging the results so they are still sorted. However, the key is that when combining the best possible choice for the slot with the largest tuple in the list, we can just immediately return the resulting tuple as the first (best) tuple in the output list, without needing to involve it in any merging operation. This affords just enough laziness to get the whole thing off the ground. I’m not going to explain it in more detail than that; you can study the code below if you like.

I’m quite pleased that this worked, though it’s definitely an instance of me making things more complicated than necessary.

data TC = TC { slots :: [[Choice]], banned :: [[Int]] }

tc = do
  n <- int
  TC <$> (n >< (zipWith Choice [1 ..] <$> numberOf int)) <*> numberOf (n >< int)

main = C.interact $
  runScanner tc >>> solve >>> map (show >>> C.pack) >>> C.unwords

solve :: TC -> [Int]
solve TC{..} = choices . fromJust $ find ((`S.notMember` bannedSet) . choices) bs
    bannedSet = S.fromList banned
    revSlots = map reverse slots
    bs = builds revSlots

data Choice = Choice { index :: !Int, value :: !Int }

data Build = Build { strength :: !Int, choices :: [Int] }
  deriving (Eq, Show, Ord)

singletonBuild :: Choice -> Build
singletonBuild (Choice i v) = Build v [i]

mkBuild xs = Build (sum xs) xs

-- Pre: all input lists are sorted descending.
-- All possible builds, sorted in descending order of strength.
builds :: [[Choice]] -> [Build]
builds []     = []
builds (i:is) = chooseFrom i (builds is)

chooseFrom :: [Choice] -> [Build] -> [Build]
chooseFrom [] _  = []
chooseFrom xs [] = map singletonBuild xs
chooseFrom (x:xs) (b:bs) = addToBuild x b : mergeBuilds (map (addToBuild x) bs) (chooseFrom xs (b:bs))

addToBuild :: Choice -> Build -> Build
addToBuild (Choice i v) (Build s xs) = Build (v+s) (i:xs)

mergeBuilds xs [] = xs
mergeBuilds [] ys = ys
mergeBuilds (x:xs) (y:ys) = case compare (strength x) (strength y) of
  GT -> x : mergeBuilds xs (y:ys)
  _  -> y : mergeBuilds (x:xs) ys

Problems E and F

I didn’t even get to these problems during the contest; I spent too long fighting with problem C and implementing my overly complicated solution to problem D. I might attempt to solve them in Haskell too; if I do, I’ll write about them in another blog post! Comic for 2021.09.22

New Cyanide and Happiness Comic

Disquiet: Wandering in and About the Rain

Rain is something that can be thought of almost as an echo of itself. Like an extrovert who only exists when there is an audience to perform for, rain is not heard so much as it is heard in reaction to something: an umbrella, the ground, a window, or generally some other surface that it strikes. There is also the way rain combines with the sound of wind, and how cloud cover and other related factors can utterly alter the broader sonic environment: dulling edges, nurturing a sense of closed space, walling off further distant noises.

That’s a case made clear in this video from the always on the move Nomadic Ambience (834,000 subscribers on YouTube as of this writing), who wandered around Chicago on a rainy day and captured not just the rain as heard against the protective gear that keeps the camera lens dry, but also as it bounces off the sidewalk, and creates slick streets and shallow puddles that cars turn into sound sources as they pass by.

The video captures some thunderstorm noise, and various urban sounds, one highlight being a tour guide aboard a boat that passes under a bridge just as we, the viewer experiencing this all YouTube-vicariously, cross midway: “It’s a very well-designed building” goes the narration, before trailing off, absorbed by the whir of the rain.

Video originally posted at YouTube.

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

7.jpgThe companies polluting the planet have spent millions to make you think carpooling and recycling will save us

Manufacturers of soda pop and other fizzy beverages have “only a few days” of carbon dioxide left in reserve to produce stock, Britain’s Soft Drinks Association warned Monday, adding that 340,000 jobs in the industry could be affected by the United Kingdom’s ongoing gas shortage. Carbon dioxide is used in hundreds of products to add bubbles and extend shelf life. […] The impact of the cut to carbon dioxide supplies extends beyond drinks — it’s also used to package food and to stun animals before they are humanely slaughtered. [Washington Post]

Lawyers from top firms often work brief stints in the Treasury Department and then return to corporations with better titles and pay, public records reveal. The revolving door is viewed even by some industry veterans as part of the reason that tax policy has become so skewed in favor of the wealthy. [NY Times]

Zuckerberg agreed to not fact-check political posts if the Trump administration would steer clear of any “heavy-handed regulations,” Peter Thiel told an associate. Related: Facebook’s policy of pursuing profits regardless of documented harm — “We make body image issues worse for one in three teen girls.”

the root causes of the obesity epidemic are more related to what we eat rather than how much we eat

about 88% of recent viruses that have been sequenced belong to the Delta family. “Basically everything that is circulating is Delta, so then the only avenue for evolution becomes mutations on top of Delta” […] “I’m hoping the virus has gotten itself to a point where it’s basically trapped now. That it can’t get any better at transmission, and any adaptation it makes in the immune response is going to make it less transmissible.” […] “My expectation would be that it will become a seasonal respiratory disease […] something that circulates at three times the level of flu and has a similar [infection fatality rate] to flu. So maybe causing three times flu’s deaths every year.”

Did James Joyce invent oat milk?

Ideas: Body Language | Beyond Ugly: A documentary

For thousands of years, disability, disfigurement, or ugliness have been connected to evil. From the ancient world to modern time, this unsettling concept has survived the cultural narrative. As part of our series Body Language, this documentary explores the root of ugliness and unpacks the legacy that harms people today.

OCaml Weekly News: OCaml Weekly News, 21 Sep 2021

  1. opam-grep: search through the sources of all the packages in opam-repository
  2. Hardcaml MIPS CPU Learning Project and Blog
  3. Puzzling through some GADT errors
  4. Parany for multicore OCaml
  5. OCaml 4.13.0, second release candidate
  6. Unicode 14.0.0 update for Uucd, Uucp, Uunf and Uuseg
  7. Set up OCaml 2.0.0-beta4
  8. Become an Outreachy Mentor: support the growth and diversity of the OCaml community
  9. The OCaml 4.13 preview for Merlin is now available

Charles Petzold: Concert Diary: Tenor Paul Appleby


... more ...

The Sirens Sound: The Cool Indie Bands for Your Playlist

Music can be defined as one of the best exciting thing that always gets better and more interesting at the same time. So then, there are so many people that fall in love with music even if it is created in different genres and languages. Perhaps, it is the reason why there are so many talented cool indie bands really want to show their music. Many of them can offer you the awesome music to complete your playlist for sure. Well, in case you are so curious about those cook indie bands, it will so much better for you to keep reading below.

Big Thief
Big Thief is one of the cool indie bands that create remarkable songs since these few years. This astonishing band, which is from Brooklyn, New York USA, has the notable album “Capacity” (2017) that became their biggest project so far. This kind of album was such a big step to the band as it could steal the attention of the distinctive indie music. Actually, there is a song called “Shark Smile” which you can hear the perfect combination of the intimate folk rock and electricity. Yet, on the other hand, the lyrics of the song describe a tragedy with the disturbing force especially when you pay more attention to the catchiest part of the song. However, it is the unique side of the band that can make them get connected to anyone who love their music.

Ezra Collective
Moreover, Ezra Collective is the other cool indie band that you better add to your playlist. This British band, which made up of TJ Koleoso (bass), Femi Koleoso (drums), Dylan Jones (Trumpet), James Mollison (saxophone), and Joe Armon-Jones (keys), is an incredible music group that offer you the vibrant jazz inspired music you will adore so much. In the simple words, this band can play the versatile rooted music, and even combine it with some contemporary genres such as afrobeat and hip hop. Well, it has released its debut album “You Can’t Steal My Joy” in April 2019, with a new single called “Quest for Coin” and a collaboration with Jorja Smith as well. Additionally, all the members of the band always try to be honest and true to the beautiful diversity of London. They think that their home city is the nice place where you can listen any kinds of music on any part it has. Thus, it is no wonder if you find the kind of London vibe when you listen to them.

The post The Cool Indie Bands for Your Playlist first appeared on The Sirens Sound. Comic for 2021.09.21

New Cyanide and Happiness Comic

things magazine: Top of the pops

So where are the small slivers of optimism? / a universe in your browser (via b3ta) / The Myth of the Productive Commute / the Drone Photo Awards 2021 (via Kottke) / 24 underrated websites / Bespoke Synth, ‘an alarmingly … Continue reading

Michael Geist: The Law Bytes Podcast, Episode 101: OpenMedia’s Laura Tribe on Digital Policy and the 2021 Canadian Election

It is election day in Canada following a late summer campaign in which the focus was largely anything but digital issues: COVID, climate change, Afghanistan, and affordability all dominated the daily talking points. The digital policy issues that grabbed attention throughout the spring – Bill C-10, online harms, wireless pricing – were largely absent from the discussion and in some cases even from party platforms. Laura Tribe, the executive director of OpenMedia, joins the Law Bytes podcast to discuss digital policies and the 2021 election campaign. Our conversation walks through a wide range of issues, including the surprising omission of wireless pricing from the Liberal platform, the future of Bill C-10, and the failure of privacy reform to garner much political traction.

The podcast can be downloaded here, accessed on YouTube, and is embedded below. Subscribe to the podcast via Apple Podcast, Google Play, Spotify or the RSS feed. Updates on the podcast on Twitter at @Lawbytespod.


Global News, Canada Election: How are the Parties Planning to Tackle Cellphone Affordability

The post The Law Bytes Podcast, Episode 101: OpenMedia’s Laura Tribe on Digital Policy and the 2021 Canadian Election appeared first on Michael Geist.

MattCha's Blog: 2021 Tea Encounter Tongqinghe: Everything I’m looking for!

Okay, Essence of Tea says that the trendingTongqinghe production area that there is a large variation in the quality,purity, and price.  This 2021 TeaEncounter Tongqinghe is apparently a Zhongshu or middle aged trees production goes for $55.22 for 200g cake or $0.28/g.  I’m not too sure about what is going on in this area exactly but for that price and for what David said I’m thinking that it is either of a lower quality leaf or potentially blended with surrounding area stuff.  The proof Is in the cup, so let’s try this complimentary sample out…

The dry leaves smell of thick barnyard foresty deep odours… I think this is going to be good…

The first infusion has a watery buttery sweet onset with a nice pungent barnyard underbelly.  There is a soft icing sugar creaminess that is long on the breath.  Melon bread mild tastes reveal themselves minutes later.  The profile is quite delicate so far in this infusion but surprisingly long.  The mouthfeel is just mild mossy soft feeling.

The second infusion has a buttery bread sweet onset that is decently oily in texture with a strong saliva producing effect.  There is a faint throat opening with coolness and a roasted nutty bread melon sweetness that is really long on the breath.  The Qi gives me a sense of clam with some tingling behind the neck.  Nice soft chalky mouthfeeling and long delicate sweet flavor with strong expansive aftertaste that is nutty, sweet bread, melon… mouthwatering.  The sweet taste is constant throughout but also changing- butter-bread to nutty-bread to melon.

The third infusion has a juicy fruity pear and foresty taste that come initially then stretch into a cooling and then a beady-nutty creamy taste with a long melon breath.  The taste is really delicious clear and mouthwatering.  There is this nice calming mild Qi with a bit of Heart pounding now. 

The fourth infusion is left to cool and gives off a thicker spicy peppery sweet caramel with a long sweet caramel finish in the mouth.  The caramel sweetness is thick and long into the aftertaste.  There is some saliva producing as this puerh has a nice mouthwatering effect.  The mouthfeel is a pudding chalky mild but full texture.  The throat cooling is long.  There is a nice relaxing feeling to this puerh.

The fifth infusion has a juicy vibrant onset with a peppery note to it and a long bready melon that turns to caramel.  There is a nice velvety mouthfeeling and not too noticeable throatfeeling with a returning saliva thing happening.  There are some super mild neck tingles happening but overall just some solid relaxation happening. 

The sixth infusion has a buttery almost floral peppery onset that has an almost menthol like coolness and a sweet bready melon finish.  The texture is oily and the mouthfeeling is a velvety mossy feeling.  The sweetness really expands and lives long in the mouth- it’s a caramel melon type of sweetness there.  Nice relaxing and calming Qi feeling with very faint Heart/Chest sensations.  Almost a mild calm focused feeling.

The seventh infusion has a peachy but mainly pear like taste with hints of caramel there is a slight peppery onset with juicy viscus pear and a long cooling menthol.  The aftertaste is long and sweat with pear and slight melon nuances.  Nice mossy velvety soft mouthfeeling.  Not much going on in the throat but some oily saliva retuning.  No bitterness or astringency at all in these infusions.

The eighth infusion has a juicy pear woody-peppery onset with a coolness and long pear like finish in the mouth.  There is a chalky pear kind of finish with a melon that comes on in there as well.  The chalky velvety soft mouthfeeling is nice as is the nice relaxing feel to this one.

9th has a buttery almost peppery floral sweet bread onset there is a long coolness and a bready sweet caramel almost melon finish.  Nice chalky mouthfeeling with some teeth stickiness but not squeaky teeth feeling but more like chalky teeth.  Nice relaxing vibe.

10th infusion has a thick buttery faint peppery and more obvious caramel bready note.  There is some cooling throat and long sweet bread and almost mushroom like aftertaste.  There is still some saliva producing over the thickening chalky mouthfeeling.  Nice relaxing Qi in here although not much for bodyfeelings.

11th has a more woody almost fainter floral peppery onset there is still some cooling but not as much and much less sweetness here.  The sweetness mainly appears in the aftertaste as a bread melon type of thing.  This infusion has a manly woody-peppery-floral-mushroom kind of taste throughout.  The chalky mouthfeeling starts to develop dryness here.  Nice relaxing and even happy vibe to this puerh…

12th has a bitter, soapy, woody taste initially then there is some cooling then a mushroom bready melon kind of aftertaste.  The mouthfeel is becoming more drying and even a bit tight.

13th has a woody almost mushroom peppery floral then there is a coolness then a melon and bready sweetness.  The mouthfeel is a dry chalky now.  The Qi is beautifully relaxing and a bit focusing.

14th is a bit more sweet juicy pear initiailly but still quite woody-peppery.  There is a bit of cooling then some pear and melon sweetness but now mainly a dry woody taste in the mouth that matches the dryer woody mouthfeeling.

15th has a juicy and still somewhat oily pear onset with a woody-peppery base taste that carries the profile into the cool breath and mushroomy woody bread and kind of melon sweetness.  The taste profile is really enjoyable for me and the balance of tastes is something I enjoy.  The peppery woody taste is a bot unique.  Qi continues to please- very relaxing and focusing.

16th is still at a flash infusion which speaks to the stamina of this one going the distance.  It is more woody-peppery than melon bread sweet but the balance here continues to be quite enjoyable especially as there is not much if any bitter astringency.  The mouthfeel is chalky and there is a long melon sweetness in the breath minutes later.

I think this one could have kept going strong which is pretty amazing for its price…

I mug steep it out overnight…

It gives off a very very sweet melon fruity note to the point of Starbrust candy like vibrant sweetness upfront.  The texture is very viscus and oily here.  A sticky texture that sticks to the teeth. Very oily and lubricating feeling with lots of mouthwatering and retuning saliva.  Thick condensed candy sweetness.  Very delicious here.

Overall, this is another really good puerh for its price!  It has a nice relaxing Qi feeling with some neck releasing and tingling bodyfeelings.  The strong saliva producing effect as well as the very distinct delicious peppery and some times savoury mushroom with distinct Starburst candy sweetness  when it appears with notable oily texture makes this one super enjoyable for the price.

 Vs The 2021 Tea Encounter Gua Feng Zhai and this 2021 Tea Encounter Tong Qing He are maybe not the highest quality or purist or oldest of these areas but it can be sure that both of these really punch way above their weight and a very nice teas for their price… The both have the combo of sweetness, mouthfeeling/throatfeeling and Qi that very much make the experience worthwhile.  I already demolished these samples… too delicious to keep around…

I think They both have a similar feel overall - the Guafengzhai has more complexity and the Tongqinghe more depth.

Another good one without killing the bank account!

Peace Comic for 2021.09.20

New Cyanide and Happiness Comic

The Shape of Code: The Shape of Code is moving

This blog is moving to a new’ish domain (, and hosting company (HostGator). The existing url ( will continue to work for at least a year, and probably longer.

A beta version of the new site is now running. If things check out (please let me know if you see any issues), will become the official home next weekend, and the DNS entry for will be changed to point to the new address.

The existing website has been hosted by PowWeb since June 2005. These days few people will have heard of PowWeb, but in 2005 they often appeared in the list of top hosting sites. I have had a few problems over the years, but I suspect nothing that I would have experienced from other providers. Over time, the functionality provided by PowWeb has decreased, compared to what they used to offer and what others offer today. But since my site usage has been essentially hosting a blog, I have not had a reason to move.

While I have had a nagging feeling I ought to move to a major provider, it was not until a post caused the site to be taken off-line because of a page-views per-hour limit being exceeded, that I decided to move. The limit was exceeded because an article appeared on news.ycombinator and became more popular, more rapidly, than my previous article appearances on ycombinator (which have topped out at 20K+ hits). Customer support were very responsive and quickly reset the page counter, once I contacted them and explained the situation. But why didn’t they inform me (I rarely hear from them, apart from billing, and one false alarm about the site sending spam), and why no option to upgrade?

The screenshot below shows that the daily traffic is around 1K views (mostly from Google searches), with 20k+ daily peak views every few months (sometimes months after the article was posted):

Daily article counts for blog.

Eight months later, the annual fee is due; time for action. HostGator is highly rated by many hosting reviews, and offered site migration (never having migrated a website before, I did not know it was essentially ftp’ing the contents, and maybe some basic WordPress stuff). I signed up.

As you may have guessed, my approach to website maintenance is: If it’s not broken, don’t fix it. This meant the site was running the oldest version of WordPress (4.2.30) and PHP (5.2, which reached end-of-life 10 years ago) that PowWeb supported.

As I learned about website and WordPress migration, I thought: I can do that. My Plan B was to get HostGator to do it.

WordPress migration turned out to be straight forward:

  • export blog contents. WordPress generates an xml file,
  • edit the xml file, replacing all occurrences of by,
  • create WordPress blog on HostGator (to minimise the chance of incompatibilities I stayed with version 4, HostGator offers 4.9.18), selected a few options, and installed a few basic add-ons,
  • ftp directories containing images and code+data to new site,
  • import contents of xml file (there is a 512M limit, my file was 5.5M).

It worked 🙂

I was not happy with the theme visually closest to the current blog (Twenty Sixteen), so I tried installing the existing theme (iNove). Despite not being maintained for eight years, it works well enough for me to decide to run with it.

I’m hoping that the new site will run with minimal input from me (apart from writing articles) for the next 10-years.

Trivium: 19sep2021

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

2.jpgFinancial domination involves the payment of cash or gifts from a wish list by a money slave to a money mistress, financial dominatrix, or findomme. Although financial domination clearly elicits sexual arousal for clients, the relationship can also be exclusively psychological and focus on the relinquishing of control to a money mistress for a prescribed period.

American CEOs make 351 times more than workers. In 1965 it was 15 to one

What Scientists Saw When They Put a Crocodile in an MRI Scanner and Played Classical Music

Adult female giraffes who spend time in larger groups with other females live longer than less sociable individuals

Generic drugs are considered equal to and interchangeable with one another — and also with the name brand. This gospel has existed since 1984, when a law known as Hatch-Waxman was passed, allowing companies to make drugs that had gone off patent without having to replicate the same expensive clinical trials. For the most part, all they had to do was prove that the generic was manufactured using good practices and worked in the body in a similar way, within an acceptable range. […] Major companies have been caught faking and manipulating the data that is supposed to prove that drugs are effective and safe. Probable carcinogens have been discovered in the drug supply. [NY Times]

To understand why pathogens can spread through the air, it helps to understand just how much of it we breathe. “About eight to 10 liters a minute,” says Catherine Noakes, who studies indoor air quality at the University of Leeds, in England. Think four or five big soda bottles per minute, multiply that by the number of people in a room, and you can see how we are constantly breathing in one another’s lung secretions.

Pairs of electrons and positrons—particles of matter and antimatter—can be created directly by colliding very energetic photons, which are quantum “packets” of light. This conversion of energetic light into matter is a direct consequence of Einstein’s famous E=mc2 equation, which states that energy and matter (or mass) are interchangeable. Nuclear reactions in the sun and at nuclear power plants regularly convert matter into energy. Now scientists have converted light energy directly into matter in a single step.

When caterpillars of a beautiful butterfly were introduced on to the tiny island of Sottunga in the Åland archipelago, scientists hoped to study how the emerging butterflies would disperse across the landscape. But researchers did not realise that their introduction of the Glanville fritillary (Melitaea cinxia) led to the emergence of three other species on to the Baltic Sea island, which sprang out of the butterfly like Russian dolls. Some of the caterpillars contained a parasitic wasp, Hyposoter horticola, which bursts from the caterpillar before it can pupate and become a butterfly. Living inside some of these small wasps was another even tinier, rarer parasite, a “hyperparasitoid” wasp known as Mesochorus cf. stigmaticus. It kills the parasitic wasp around the same time as the wasp kills the caterpillar, and emerges 10 days later from the caterpillar’s carcass.

El Salvador’s Bitcoin Law: The system doesn’t work, the currency crashed, and the public hates it.

Your hedge fund is in the business of getting “edge.” It wants to know things that other people do not know, in order to buy the stocks that will go up. One way to get edge is to bribe the assistant treasurer of a public company to give you the company’s earnings release in advance, but this is strongly disfavored and your hedge fund has effective policies against it. Another way to get edge, quite popular these days, is to buy “alternative data.” Somebody has a satellite and they fly it over mall parking lots and count up the cars in front of each store, and you pay them and they give you those numbers, and then you buy the stocks of the stores with lots of cars in front of them, and then a month later those stores announce good earnings and you make a profit. The car-counting is a classic story of alternative data, but the way alternative data mostly works in practice is that a lot of people use apps on their mobile phones, and everyone involved in the mobile app business is harvesting data and frantically selling it to each other and to hedge funds.

I don’t expect this will be the next “big” search engine. This is and will remain a niche tool for a niche audience.

Daniel Lemire's blog: Science and Technology links (September 18th 2021)

    1. 4.5% of us are psychopaths.
    2. U.S. per capita CO2 emissions are lower than they were in 1918.
    3. 9/10 of People With Alzheimer’s Lose Some of Their Sense of Smell.
    4. Graphene-based hard drives could have ten times the storage capacity.
    5. Ageing yields improvements as well as declines across attention and executive functions.
    6. Progress toward an Alzheimer’s vaccine.
    7. The world’s first recorded case of an autonomous drone attacking humans took place in March 2020.
    8. Abstinence from alcohol is associated with an increased risk for all-cause dementia.

Jesse Moynihan: Forming 329

Sorry for the delay. I had to take on some freelance work that took 4 weeks as well as developing 3 pilot ideas.

Charles Petzold: Concert Diary: Bach at Noon


... more ...

Ideas: Music on Mars

If you thought space was silent, think again. NASA's latest Mars rover carries an acoustic microphone. For the first time, anyone can hear the sound of the Martian wind. IDEAS tunes in to the sounds of space and the people working to make music from the beauty of the cosmos. *This episode originally aired on May 17, 2021.

things magazine: 10 PRINT “RIP”, 20 GOTO 10

The Royal Institute of British Architects page at Arts and Culture / aerial photography by Brad Walls / Pelle Cass’ digitally manipulated sports photographs / Amelia, The Trilogy of Terror, fun short film from the 70s / China’s Ghost Cities. … Continue reading

50 Watts: Dard Hunter's Salome

(Find me at 50 Watts Books.)

Found in Dard Hunter: The Graphic Works by Lawrence Kreisman: "Dard's mastery of the elements of design that made Viennese modernism so dramatic culminated in this double title page created in 1903 for Oscar Wilde's Salome. It pictures Salome in profile, the tall robed figure on the left, holding up the severed head of John the Baptist. Dard's lettering breaks away from simple sans serif type with the addition of curling embellishments that are tied to the dress folds, the hair, and the beard on the facing page."
Publisher description: "The distinctive typography and elegant compositions designed by William Joseph 'Dard' Hunter (American, 1883–1966) have become icons of the American Arts and Crafts style and have established him as one of America's most influential graphic artists of the twentieth century."

MattCha's Blog: 2021 Tea Encounter Guafengzhai Gushu: Comparison of Tea Encounter Guafengzhai

This 2021 Tea Encounter Guafengzhai Gushu is from the Chaping garden of Guafengzhai and goes for $269.38 for 200g cake or $1.35/g.  I sampled last year’s version and liked it enoughto buy some when it was discounted on Black Friday of last year.  I hope to compare this free sample with some other guafengzhai from Tea Encounter..

Dry leaves smell of a deep pungent forest fresh odours with faint fruity sweetness.

The first infusion has a sweet deep forest taste initially with a pungent and gamey edge to it there is a deep throat coolness and a long slow releasing creamy corn, pumpkin, and sweet melon and floral sweetness that follows.  A creamy sweetness expands in the mossy mouthfeeling.  Nice euphoria feeling is detected early.

The second infusion has a juicy light splash of oily fruity sweetness which has a foresty faint pungent underbelly over a chalky mouthfeeling and deeper open throat.  A mild euphoric feeling and stronger clam washes over me.  There is a mild sticky sweet finish on the breath.  Strong deep Qi feeling of floating mind.

The third infusion has a strong juicy oily bready pumpkin muffin taste to it that has a faint foresty pungency but a strong thick sweet finish that evolves from a bready, fruity, then to a creamy sweetness over the chalky tonguecaoting and open throat.  Nice strong deep euphoria Qi feeling with strong mind floating.  There is a thick rich feeling to the liquour and taste and Qi.  Deep evolving Qi relaxing matches nicely to the thick oily sweet tastes.

The fourth infusion has a more spicy pungent sweetness initially with an oily texture that evolves into sweetness over a mossy and chalky mouthfeeling and deeper open throat.  There is a strong bready taste to the sweetness but it is layered over fruity tastes and creamy sweet finishes.  A strong deep relaxing takes hold with a euphoric feeling to it.  There is the sensation of an opening chest and dipapragm and some neck and shoulder release.

The 5th infusion has a sweet creamy fruity onset with a thick cottony fluffy mouthfeeling there are some vegetal hints as well as some foresty hints of flovours.  The vegetal sweetness turns to a subtle creamy sweetness in the mouth.  The strong deep relaxing takes hold.  Floating head feeling feels quite stoner feeling.  Chest open and shoulder and jaw relax.  Nice deep penetrating Qi.

The 6th has a spicy oily thicker sweetness, a pumpkin and bread sweetness with a deep throat cooling and emerging foresty taste.  There is a retuning creamy sweetness with some saliva producing effects.  A creamy cooling woody finish.  Minutes later tropical fruity tastes in the saliva.  Strong swaying body feeling euphoria.  Some faint woody astringency is building.  Nice banana finish.

The 7th is a cool thickish syrupy pear taste over woody notes and forest suggestions some deep pungency and some oily saliva returning.  Nice evolution with banana and woody pear sweet tastes left in the minutes long breath.  Nice deep relaxing.  With open chest and abdomen feeling.  Mild euphoria.  Long sweet aftertaste.

8th has a cool fruity and even a bit smoky taste to it initialy with woody, sweet, almost yeasty tsates to it.  The deep relaxation is nice as is the mild euphoria that follows.  Nice almost milky bready finish with a creamy sweet edge.

9th was left to cool and has a sour fruity almost citrus-mango like vegetal with a creamy cooling almost menthol finsh.  The mouthfeeling is less thick mossy here with still an open deep throat going on.  The flavor is mainly nuances of sweetness with some denser feeling to it in the form of faint forest and wood.  Nice relaxing euphoria.

10th is mainly a woody sweet pumpkin bread taste with still a strong cooling and returning creamy sweetness.  There is a lesser chalkier feeling in the mouth and still a deep throat of cool pungent taste.  More of a rubbery woody nuance to it now.  Nice relaxing chill.

11th infusion has a more dryer wood dominating mouthfeeling and taste with still a deep coolness but more of a bitter astgringent woody taste throughout with some returning creaminess.  The mouthfe puckering is noticed but a nice open throat feeling where less sweetness is pushed out.  Strong relaxing still.

12th has a bitter woody onset with a mossy pasty dryer mouthfeeling.  There are just edges of sweetness now whit a deep cooling. Some significant astringency.  Melon and creamy sweetness emerge under the bitterness at the end.

13th is left to cool and gives off a flat woody sweet sour fruity with some mild astringent bitterness over a chalky, slight dry mouth, and cooling throat.  The aftertaste is quite sweet woody melon. Quite enjoyable still.

14th is a sour bland sweet mango pear type sweetness with still nice deep throat cooling and long sweet finish.  Nice relaxing day today slight might euphoria and face tingling… its been a good day…

The mug steeping of spent leaves are deep and full in the mouth over a chalky oily texture with an initial forest pungent and subtle sweetness but a very deep cooling and stronger dense sweet retuning sweetness that lingers in the breath.  Thick feeling overall.  There is a strong base taste of bitter astringency underneath everything.

I did a comparison sampling of 2021 Tea Encounter GuafengzhiXiaoshu (above), 2021 Tea Encounter Guafengzhi (Chaping) Gushu (Middle), and 2020 Guafengzhi (Chaping) Gushu (below).

The 2021 Tea Encounter Guafengzhai Xiaoshu was surprisingly closer to the 2021 Tea Encounter Guafengzhi Gushu as far as value goes.  However, the xiaoshu didn’t have the enduring sweetness and deeper qi and unraveling complexity to it which is expected for something of that price.  I didn’t have any sample of the 2019 xiaoshu to compare because it is so effortlessly delicious I probably drank up the sample quickly.  It makes a bit of sense because the Gushus are not strong singular gushu’s here… but they have great appeal to me in their width, mouthfeeling/throatfeeling, and qi.  Last year’s 2020 Guafengzhi Gushu was much sweeter in taste with a more condensed intensity of taste.  This year’s 2021 Tea Encounter Guafengzhai Gushu is similar in its Qi, mouthfeeling/throatfeelng, and taste- a very nice package overall.

Alex’s (Teanotes) Tasting notes


Tea Masters: Lotus on porcelain

In my latest video, I introduce all the novelties and novel teas I have added to my boutique's selection since the start of the summer break. 

There were so many new items that I wanted to address them all in this new format. Writing product descriptions is not much fun, so I hope that a video can be a little bit more entertaining and interesting. In this video, I also answer the link between the pictures of lotus flowers I post and tea.
The direct link is that among the new tea ware are 2 lotus teapots: a blue on white teapot
and this polychrome teapot below. However, I forgot to mention something quite important about these new products in the English video. They are not so new, but were made around 20 years ago by my Taiwanese porcelain workshop. And the reason that I feature them now, in particular, is because this product line of hand painted porcelain ware is slowly but surely selling out. And, as is often the case, you only realize that something is special when it's about to disappear!

These wares are symbolic for an era and a philosophy. It was the era of new affluence when people had more time and money to spend on tea. And the philosophy was to make the beauty of a hand painted flower or landscape affordable and available to a large public without turning it into kitsch. The price was set higher than a similar plain ware, but not that much higher. Unlike Meissen or other luxury porcelain brands that charge a small fortune for their works, because they require a lot of detailed work, these porcelains were painted in large numbers with free brush strokes, like in ancient times. This is obvious when you compare these 2 teapots. 
Unfortunately, these wares didn't find a large market and the painters were let go long time ago. This means that what sells are the decorations that are reproduced by machines cheaply. Otherwise, if you want something painted by an artist, it will be priced accordingly as a piece of art. 
So, let's enjoy the flowers while we can.
Or hope that new seeds will be planted and flourish in the future.

MattCha's Blog: 2021 Tea Encounter Guafengzhai: A Bargain Favorite!

This is the third year in a row that Tea Encounter has produced this xiaoshu, small bush, Gua Feng Zhai (the 2019 and 2020 were pressed from the same batch of 2019 Maocha).  It was a good one especially for its price.  This 2021 Tea Encounter Guafengzhai was given as a free sample for review but usually goes for a crazy cheap $68.69 for 250 g cake or $0.27/g. 

The dry leaves smell of peppery sweet delicious fresh forest and barnyard odours… complex smelling…

The first infusion has a pungent/peppery onset with a creamy forest-barnyard with a faint cooling and subtle woody sweetness.  The tastes gloss over a watery and mildly lubricating mouthfeeling.  The aftertaste is mainly a foresty-barnyard- pungent that fades out in the mouth.

The second infusion has a robustly peppery pungent forest barnyard onset that has a subtle coolness then a woody almost dryness in the upper throat.  The mouthfeel is mossy with a subtle upper throat simulation.  The aftertaste is a more pungent peppery foresty fade out.  The infusion has a bit of salty tastes and almost a faint pasty dryness to the mouth.  The Qi congregates in the chest, races the heart a bit and provides an expansive mind feeling with a clear alertness. 

The third infusion comes with pungent peppery force and an almost melon sweetness there is a woody taste, foresty-pungent-barnyard taste with a cooling upper throat and mouth.  Very pungent tasting with layers of spicy coolness and warmer peppery spices.  There is a melon sweetness that starts to emerge from more salty and a lot of spicy tastes.  There is pasty mouthfeeling and upper-mid throat stimulating feeling.  The Qi is mildly euphoric and expansive and races the Heart and brings a stern clarity.  There is lots going on with this puerh… all good and complex thingys- mouthfeelings, Qi sensations, bodyfeelings, taste, aroma, … so good … tastes blended possibly or from a wide area of Guafengzhai or of layered processing… nicely complex for sure.

The fourth infusion has a spicy peppery pungent onset with forest barnyard and wood.  The taste imparts a strong cooling then a classic returning melon sweetness under layers of spicy cool and warm spice which stays strong throughout.  There is an upper throat stimulation thing happening with a very full pasty chalky mouthfeeling and gob of saliva producing.  The Qi is euphoric with a strong alerting and Heart racing, slightly warming and some face tingling sensations.  The concentrated aroma and taste and strong Qi and bodyfeeling- so good!

The fifth infusion has a woody pungent forest barnyard onset with a creamy melon finish.  Over a chalky full mouthfeeling and simulating upper throat.  There is a cooling then a returning creamy melon finish.  Big chest Heart feeling, alerted mind racing, some face tingling, energetic.  With no bitter or astringency this puerh also feels nice on the body.

The sixth infusion is left to cool and is quite sweet with a tropical fruity banana onset with notes of forest pungent coolness in the mid profile.  A long cool melon and tropical fruits finishes.  With a stronger chest and Heart feeling with strong alertness.

The seventh infusion has a condensed woody, banana, peppery, pungent coolness with a returning sweetness of woody and tropical fruits.  There is a salty, spicy and sweet combination here which is quite complex and seems like it must be blended.  I look into the pot and see lots of dark olive leaf mixed with lots of lime green clolours.  Could be a blend of different processing as well?   Its very satisfying to me.  Strong Heart racing and face tingling are interesting and paired with the strong energy push this puerh packs a punch.  The mouthfeeling is also quite thick chalky with some saliva returning and upper throat simulation.

The eighth infusion is left to cool and finishes really sweet with a tropical fruity full flavoured taste.  Nice sweet pops of flavor with a returning mouthfeeling that pushes a saliva taste of creamy rich sweetness banana tropics.  The mouthfeeling remains thick throughout- a chalky pasty sticky throughout. Nice energetic Qi.  A bit of upper throat simulation.

Day got crazy and I’m headed back for the 9thinfusion the next day…

The 9th has a thick melon onset over a lubricating mouthfeeling.  There is a nice dense flavor to this puerh- a beefy Guafengzhi type of thing.  The mouthfeeling is pasty chalky and full and the finish is slight cool with dense fruity oily finish in the mouth.  The Qi is energetic and alerting.

The 10th infusion has a thick oily melon sweetness with slight bready onset there is some faint woody and foresty-pungent tastes in there as well.  There is a thick pasty mouthfeeling and some upper throat simulation and mild saliva returning.  The aftertaste is kind of pungent-barnyard forest and sort of melon sweet.  There is a cool throat feelng minutes later.  A strong alerting energy with some haziness and face tingling.

The 11th infusion has a woody profile throughout with melon sweet onset with a puckering woody forest and pungent underbelly.  There is more puckering and astringency here in this infusion and it brings out the woody aspects of this puerh.  Strong alerting and slightly hypnotic energy now with some face tingling.

The 12th infusion has a woody taste with some subtle sweeter melon edges along with a pungent foresty taste.  There is a bit of cooing then a bit more melon sweetness under a puckering woody taste in the mouth.  Mouthfeeling is more puckering slightly and the taste becomes woodier now.

The 13th infusion has a woody sweet becoming a bit puckering slight grainy but still pretty flavourful taste. The taste is thinning a bit now it’s pretty much just the polarities of melon and wood with still nice throat stimulation and coolness with some fading melon wood finish.  Astringency builds a bit here.

The 14th is a creamy woody pungent foresty onset that is predominantly woody and with a puckering astringency to it now.  Some cool throat exists as well as faint melon breath…

The mug steeping of spent leaves pushes out very deep foresty pungent salty tastes that have a thick chalky oily texture and a long deep throat pungent coolness.

This is probably going to be the best 2021 puerh I try for this price or less.  It punches way above its weight.  Strong stoning Qi.  Recommend.

Peace / 2021-09-26T12:55:51