brewster kahle was in the chat telling joanne to get her publisher to sell
archive.org the book so they could lend it
i haven't read the book yet because i'm still reading the deficit
myth
i listened to the song wounded by the
cookies
a lot. it's on our morning sunshine pop playlist. it's really good
when the first gulf war began the bbc banned
69
songs including Blondie's Atomic and Boom Bang-a-Bang by Lulu
we went to Westfield on Saturday. it was really busy, but we had a good time.
we bought a pretty mancala set from flying tiger and after lunch we played a
few rounds on a grassy knoll
I spent some time this week reading about twitter's
bluesky project trying to understand why jack
wants Twitter to be a client of a decentralized social media protocol.
At first I thought: Jack doesn't want to be responsible for speech, he wants to
surf. He's banking on Twitter remaining the primary interface for most people
and hoping the network will take care of moderation and he won't be phoned by
senators anymore saying โwhy haven't u blocked alex jones yetโ
This would help with his moderation problem, and his monetization
problem. Interfaces earn bitcoin for having users, users earn bitcoin for
retweets, that drives up the price of bitcoin and jack gets rich while he surfs.
Maybe it would be something less rainforest-burny like FileCoin or
whatever. I'll bet Bitcoin is jack's preference, but it doesn't even matter if
it's a brand new currency. jack would instantly have a huge amount of it, and
its value would skyrocket.
I hope I don't think about it anymore this week.
yahoo answers shuts down in a few days. you can help archive it by running a
warrior
we received an e-mail from the thirty days of art
project we did in April telling us that they'd be
deleting all our work on the 7th of May. so I have a few shell loops running
submitting everyone's artist pages to archive.org
Cuba has created at least two potentially viable vaccines, because they knew
they wouldn't be able to afford to compete with richer countries to buy
them. Cuba needs syringes. It can't trade easily because of USA, and it is
currently not making much money from tourism.
We found a lovely online
cafรฉ nearby that does
gluten free brunches delivered in lovely boxes
I've been sick all week, and now Abe seems to have got whatever I've had. It's a
really annoying fever-y thing.
Last night I had a dream where I was working on a garden with somebody from
work. We were laying bricks and digging holes at the bottom of a residential
hill. There were other people from work beside us working on different
gardens. I looked up, there was an aeroplane flying overhead. It seemed to be
hanging heavily to one side, and I saw steam or smoke escaping from areas other
than the exhausts.
"is that okay?" i asked
"yeah, i think that's normal" said my colleage
"i really don't think that's OK," i thought (and didn't say)
Then the aeroplane swung dramatically to the right, up to the top of the
hill. It was coming down at us very fast now, parts of it breaking off and
nearly hitting folks who jumped out of the way at the last moment.
I looked over at my colleague, who was looking but didn't seem to have
registered that we were going to die. Then I looked back at the aeroplane and
woke up.
Originally it was just a few HTML files, but when it started to take shape I
wrote some scrappy JavaScript to generate the pages from a JSON file.
But that meant it was a manual process to put something live, or even preview a
pairing.
So then I put together an app to manage the page. It takes uploaded media and
puts it in Linode Object Storage (which is like S3 but without giving money
to jeff).
There are three concepts. **sounds**, **pictures** and **days**.
sounds
The page for sounds shows a grid of every sound that isn't part of a day.
you can click one to preview it, and you can drag a .flac file onto the window
to upload a new one. It'll get a random name like spooky ocean. (adjectiveish noun).
pictures
The pictures page is a grid of all the pictures, paired or not.
This is where you add the alt text, and also where you can select the Make a day of it button.
make a day of it
The make a day of it page is where you can preview how a particular picture
will work with each available sound.
When you find something that works, you can give it a name and it will be the
new homepage the very next moment.
days
The days page shows a grid of every day there's ever been.
danger mode
It's scary to have delete buttons lying around, so those are hidden behind
DANGER MODE, which can only be activated by manually adding ?danger=danger
to the URL.
After deleting anything, you're redirected back to the non-danger page.
DISCLAIMER: Sorry, this post is about boring code shit i just don't want to
learnt to do again later. It's only a few things but it took me days to get a
handle on.
Using cmake instead of the arduino ide is really nice, it works well in both
text editors (emacs and vscode) and you get context-aware completion, hover
docs, etc.
cmake_minimum_required(VERSION 3.19.0)project(cool_project CXX)add_executable(cool_project main.cc)
# `AUTO_PUBLIC` will automatically find and link the right libraries
# from your installed arduino libraries, just like the arduino IDE!target_link_arduino_libraries(bleepbloopmachine AUTO_PUBLIC)
# this will add an `upload` target that you can use to build &
# upload to the microcontroller
target_enable_arduino_upload(bleepbloopmachine)
3. Use cmake!
$ mkdir build
$ cd build
$ cmake -DCMAKE_TOOLCHAIN_FILE=$HOME/projects/Arduino-CMake-Toolchain/Arduino-toolchain.cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=1..
This will generate a compile_commands.json file that your editor can use to
give you completion hints and docs.
(change the toolchainFile path to the correct path for wherever you cloned
the cmake arduino toolchain to in the very first step)
Run the command CMake: Select A Kit and select Arduino toolchain from the
drop-down
Now you can use CMake: Build (F7) and CMake: Build Targetupload to
build and upload things to the microcontroller!
getting the upload target working
Set the environment variable SERIAL_PORT_FILE to ttyACM0 (or whatever the
microcontroller's serial port is on your computer) in the workspace's
cmake.buildEnvironment setting: