Avatar
Alex Gleason
79c2cae114ea28a981e7559b4fe7854a473521a8d22a66bbab9fa248eb820ff6
I create Fediverse software that empowers people online. I'm vegan btw. Note: If you have a question for me, please tag me publicly. This gives the opportunity for others to chime in, and bystanders to learn.

You know what I don't understand. People who build complex software AND have a life. When I'm building software I'm NOT doing anything else. I have to block out weeks at a time, to build software. I am incapable of socializing with people during this time. Even something small like going to the store is a major disruption. I plan my life around major blocks of software development time, and reluctantly carve out blocks here and there for seeing friends and family. Bigger trips are expensive in terms of software development time. But apparently some people are capable of being software developers and somehow having a life within the same day. For me it's either a software week or it's not.

I restored an old blog post to my new site. This one was good enough to keep: https://alexgleason.me/blog/run-your-own-server/

Real vegans use SQLite, not Postgres.

There was a scientist who categorized a lot of species of fish, and his name was Gill. https://en.wikipedia.org/wiki/Theodore_Gill

One of my favorite vegan restaurants in Philly was apparently protested by "The Philadelphia Free Palestine Coalition" simply for serving Israeli food. https://www.cnn.com/2023/12/04/us/palestinian-protest-philadelphia-solomonov/index.html

They chanted "Goldie, Goldie, you can’t hide. We charge you with genocide."

Used to go there and get falafel sandwiches all the time.

When I was coding on Elixir people would say: "You know I'd love to contribute to your Open Source projects, but why did you have to choose a fucking esoteric language that literally nobody understands? Do you even want people to contribute? You should kill yourself."

Now coding in TypeScript, people say: "God I hate JavaScript. I hate the web. I am suffering existential dread about society and the internet 24/7 and I'm going to kill myself."

Which is it???

This song got automatically recommended to me through YouTube's algorithm. https://youtube.com/watch?v=pKQp61e94VE

Danny Devito and Joe Pesci are secretly the same person.

I got Ditto doing SQLite queries in a Web Worker now so it doesn't block the main thread: https://gitlab.com/soapbox-pub/ditto/-/merge_requests/57

To achieve it, I had to update my kysely-deno-sqlite library to accept a more generic adapter: https://gitlab.com/soapbox-pub/ditto/-/merge_requests/57

Any time somebody chooses their gender on the internet, and they enter "non-binary", it just gets stored as binary data.

Good morning. I procured a copy of Animal Forest on Nintendo 64, and instead of erasing the save file I'm joining as a new resident of the town last played in 2004.

Nerds online are driving up the price of CRTs because they want to play blurry Mario like it's 1990 again.

Rubber duck:

We're doing a weird trick with Nostr+HTTP in Ditto, which follows these steps:

1. Client hits the API, eg POST /api/v1/statuses

2. Ditto sends a WebSocket message to the client, asking it to sign the Nostr event.

3. The client signs the Nostr event, using NIP-07, a stored key, or whatever other method it wants to use, then sends it back over the WebSocket.

4. All this time, the HTTP request from step 1 still hasn't received a response. But now that the backend (Ditto) is finished, it delivers the response.

Here is the problem: sometimes that takes more than 60 seconds. It's no issue for Deno, which is very efficient at dealing with idle HTTP connections, but most webservers such as Nginx and anything on top, will cut the request off at 60 seconds.

60 seconds is a reasonable amount of time to wait for a user to sign an event. But now I'm introducing proof-of-work requirements, some of which are designed to not finish in less than 60 seconds on purpose.

So now I need to rethink this. I originally chose this design because Mastodon clients already rely on the HTTP response to show toasts such as "Post successfully submitted! [View]" and "Internal Server Error". By keeping the connection open, we can submit the correct response code when it's ready, avoiding a broken UX.

So the question is how to extend the duration of the request. Or how to prepare the information needed before making the request.

I know this sounds insane, but it will be so worth it.

Visiting a Mostr URL from a web browser (ie navigating from ActivityPub/Mastodon) will now redirect to a human-readable page where you can view the discussion in a Nostr client of your choice.

https://media.gleasonator.com/c49d51d9ce23f72aa71db52f70112f8ab2aa3a743cc51dd66918b3717986c039.mp4

Replying to Avatar The Nostr Report

THE NOSTR REPORT

FIX FAMILY, AND JOMO

Nov 28, 2023

Block Height: 818,866

Moscow Time: 26:77 ⚡/ $

V4V: 7 zaps ⚡ 1,600

Top Zapper: nostr:npub1s3yptktr667ty4fpvrxkcf0z4y8hps7p0q7hjny9xtevlrr0zkzsu6zzry (⚡1,010)

Nostr Report is committed to V4V, thank you to our supporters.

https://nostr.report

—--------------------------

🎙️Quote of the Day🎙️

—--------------------------

“Fix the family, fix the world.”

nostr:npub1faz07cnvk3mphja8g5fxrw8lxkme34ucuyj8f4d24kxwj5t2un9q0atu9c

nostr:note1texj5a5m4uf54ryx60yacdkea5lmzq5h2l6cg3wehzt86smx6vtqh9vgqq

—--------------------------

🚨Headline Nostr News🚨

—--------------------------

nostr:npub1v0lxxxxutpvrelsksy8cdhgfux9l6a42hsj2qzquu2zk7vc9qnkszrqj49 Other stuff - Now including Nostr based torrents 🏴‍☠️ https://dtan.xyz

nostr:note12uxq40nttesy2fgu2dtxmh5zlgwxt7dje7wea3hd4s6pzapzrkgq9usnfr

nostr:npub1hxjnw53mhghumt590kgd3fmqme8jzwwflyxesmm50nnapmqdzu7swqagw3 - DEMAND launches the first Stratum V2 solo mining pool ⛏️

nostr:note13lvl8zdr2ktv903af4ygeg9jtq48jaz5jv8jnc6387z5x9uuc3cs0njfs2

nostr:npub1qtvl2em0llpnnllffhat8zltugwwz97x79gfmxfz4qk52n6zpk3qq87dze The #FutureofBitcoinMining conference is today. Livestream begins at 10:30a EST (3:30p UTC) with special announcement from nostr:npub1lh273a4wpkup00stw8dzqjvvrqrfdrv2v3v4t8pynuezlfe5vjnsnaa9nk at 2:15 followed by a Q&A with Luke and nostr:npub1sg6plzptd64u62a878hep2kev88swjh3tw00gjsfl8f237lmu63q0uf63m

https://ocean.xyz/event?nostr

nostr:note1l9h39u8hfpzevue53ssjg22tylp07m6g93zvz8w8tvxnvcw0lfsqkrtlud

nostr:npub1hklphk7fkfdgmzwclkhshcdqmnvr0wkfdy04j7yjjqa9lhvxuflsa23u2k Check out this cool data visualization of BTC percentual change from https://hodl.camp

nostr:note1szns0fkt30hjvpw4rcfp4uxw678s2dwkwd24fd0fren97tgwgq2sf09ysv

nostr:npub1rxysxnjkhrmqd3ey73dp9n5y5yvyzcs64acc9g0k2epcpwwyya4spvhnp8 shares a video on operating in a high-fee environment. Reduce on-chain fees, stack & spend efficiently. https://youtu.be/5kNMJd-Ts2c

nostr:note1vlxd0yrfufenqjqwzygljwwqwuz53epz9a94hn0c0657cz0r02ls0k0elg

nostr:npub1z8gtve683pa6nfknfv37kvfgwd6tgkc6rvtpatz5evvrc5lqpmmszk36vw Domain names paid for anonymously. https://njal.la/

nostr:note1yg5d3eaq9et8vx2zzxplpt86hkq2f3cm96pvkf0p4pc7lm79ge8sefuslf

nostr:npub1hqaz3dlyuhfqhktqchawke39l92jj9nt30dsgh2zvd9z7dv3j3gqpkt56s The Noncemeister Vignettes V: The Incontrovertible Truth

nostr:note1zlsc3aglr49u2p6wwluxqz8kl2x924ajj2psl29mjs48hz826l8sd035jg

—--------------------------

💻nostr Tech💻

—--------------------------

nostr:npub1gp4xzpmluelsakjtayc4wtzj97fhj5kakqjvsannu00xkdlf4x8s0xdqyq Check out the latest major release of the YANA client (Yet Another Nostr App) available at https://yana.do

See the release notes here: https://w3.do/Vk8r4HAC

nostr:npub1mutnyacc9uc4t5mmxvpprwsauj5p2qxq95v4a9j0jxl8wnkfvuyque23vg v0.4.38 update addresses a few things with channel reserves. Also, Mutiny+ price will remain lowered at 16k sats.

nostr:note10v4rm6psgr0z7uju4ccue5fn3xkek33qm8k5vvdsmzdkyp0rhvvqz06j4d

nostr:npub1xnf02f60r9v0e5kty33a404dm79zr7z2eepyrk5gsq3m7pwvsz2sazlpr5 v0.8.0-beta5 is now available features LND v0.17.2, dynamic LSP fees, tap to enlarge QRs, new sending lightning animation, express Graph Sync on by default, updated default LN fee limits, removed 50k onboarding limit and some other improvements.

nostr:note1sxnlnxtvg4rfsgy6pgpmyscxt4s5ul830dmzamuue2yxz2zx5a8sxchz9l

nostr:npub108pv4cg5ag52nq082kd5leu9ffrn2gdg6g4xdwatn73y36uzplmq9uyev6 New landing page for Mostr bridge with an input box. You can type a Fediverse name to find them on Nostr.

nostr:note16x2wrdfma3xsgxhfxxmw7p2y2vnmww2tcst6479kkyzftj6g934srdmzwl

nostr:npub1xtscya34g58tk0z605fvr788k263gsu6cy9x0mhnm87echrgufzsevkk5s shares that he is incorporating search capabilities into nostrdb 🔍

nostr:note17eugpp8mxgm54g9s4geafvwnd2d3kqq5mj6nu6w0su430p3aglwsevkfmq

nostr:npub1gzuushllat7pet0ccv9yuhygvc8ldeyhrgxuwg744dn5khnpk3gs3ea5ds nostree update v.0.1.5.4 maintenance and bug fixes.

nostr:note1nfa6qfxs68gnuauksk6ug4gadzvhvajddzlc7jnxkwgr8yguwzpsh9apv7

nostr:npub18k67rww6547vdf74225x4p6hfm4zvhs8t8w7hp75fcrj0au7mzxs30202m Wherostr update adds search for people by name and NIP-05 Nostr address, and more. See note for full details.

nostr:note1qqqq87kgrr07n5u5yseg9kezxnl90wm5m8a3nf6u2rn682cerwtqp74hgr

Is nostr:npub1l2vyh47mk2p0qlsku7hg0vn29faehy9hy34ygaclpn66ukqp3afqutajft the cause of the singularity?

nostr:note1sjd2esztdd9jmws3htq6x4jfqfgrmltquzne8ad2r88s7sm6kz7sq4uwpj

nostr:npub1v0lxxxxutpvrelsksy8cdhgfux9l6a42hsj2qzquu2zk7vc9qnkszrqj49 Run your own DTAN.

nostr:note1vqtt7x884rnh6k0uddfylj0r8zerq2rpch8txp4lyzxykvaz0gxsxsdmqy

nostr:npub1c878wu04lfqcl5avfy3p5x83ndpvedaxv0dg7pxthakq3jqdyzcs2n8avm New LNbits release v0.11.2 Leo adds support for Alby as a funding source, improved fee support, and more.

nostr:note1wuj3306vz3kylm2cqhcykr8rkcp326wfj32x377vs3v985gn4lys63dunv

—--------------------------

⚡nostr Business⚡

—--------------------------

"The Federal Reserve will need nearly four more years to cover a historic operating loss and start sending profits again to the U.S. Treasury, according to new research from the Federal Reserve Bank of St. Louis." https://w3.do/yKiYunHZ

Google set to begin deleting inactive personal accounts if they have not been used in the last 2 years. https://w3.do/x4HfnawV

nostr:npub18x5tzar4hcxmgn33870aqvhlmcvrez4avjvwfye2suenp5kdfp5q5stv0k New article from Cornell University — #Bitcoin could support renewable energy development

nostr:note18r0s2w3ehwuhqeyqn8uy4gzqdsrtsml0ejfgmxd8z8z3hrnghm7sk800mz

nostr:npub180cvv07tjdrrgpa0j7j7tmnyl2yr6yr7l8j4s3evf6u64th6gkwsyjh6w6 is looking for beta testers for jingle: a friendly customizable Nostr relay.

nostr:note16sncf2sdt59zwq3d44hnkvv0xjj2kc8nvl6us4r74hfwzmrhnh2qvplkad

nostr:npub1jg552aulj07skd6e7y2hu0vl5g8nl5jvfw8jhn6jpjk0vjd0waksvl6n8n shares resources for learning more about building with Nix Bitcoin and Core Lightning development.

nostr:note1dl04ty5lqp9059gtsu0qykjd6aznncuw0yc29pcx8zgyraefwjzs43ldel

nostr:npub1yaul8k059377u9lsu67de7y637w4jtgeuwcmh5n7788l6xnlnrgs3tvjmf will be speaking about Nostr at the Unconfiscatable Conference in Las Vegas Dec. 7-8.

nostr:note1rerermtnalyds789ydrv5r3t0vcmpyhut7rycck0hmurrfkp9hesqhp7s9

nostr:npub1sg6plzptd64u62a878hep2kev88swjh3tw00gjsfl8f237lmu63q0uf63m shares this video that lays out the essentials of power structure in mining, transacting, hodling and noderunning in the face of the adversarial stand off between #bitcoin and government. https://www.youtube.com/watch?v=X_xgmVLyB94

nostr:note1suzu8gdztsg7qclfvekdzgkflu9jgc0yglprp98rh5vf7twcg0sqpt2gmu

nostr:npub1dc9p7jzjhj86g2uqgltq4qvnpkyfqn9r72kdlddcgyat3j05gnjsgjc8rz shares kycnot.me - a site that aggregates different services that don’t require KYC. 🪪

nostr:note1vdsu9pd6p03kyxwj4nv2lgw9xlw9nlx452dwuydss4cy7csmnrgqh6463k

nostr:npub126ntw5mnermmj0znhjhgdk8lh2af72sm8qfzq48umdlnhaj9kuns3le9ll announces the Restart Program - they are acquiring batches of decommissioned corporate mini PCs for resale as personal Start9 servers. Get a 2TB Start9 server for $329. https://blog.start9.com/the-start9-restart-program/

nostr:note15wcm93daz3z3ufays0pv0y34nc2c4z0qkz4mt9h5twz69p3nncms88ca6h

—--------------------------

🔥🔥Meme of the Day🔥🔥

—--------------------------

nostr:npub1t3ggcd843pnwcu6p4tcsesd02t5jx2aelpvusypu5hk0925nhauqjjl5g4 JOMO

nostr:note1dxdsv2f0cffufefwg3de3ean4rzy20frh9cgh4shg2hmj37dw4zs2gvjyd

—--------------------------

Stay Classy, Nostr.

NostrReport does a better job figuring out what's going on that any journo I've ever seen.