In 2019 I forked Mastodon. In 2020 I built communities online. In 2021 I helped Donald Trump create Truth Social. In 2023 I built a bridge between Mastodon and Nostr. In 2024 I am building new Nostr infrastructure to spread freedom on the internet and beyond.
Public Key
npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Profile Code
nprofile1qqsqgc0uhmxycvm5gwvn944c7yfxnnxm0nyh8tt62zhrvtd3xkj8fhggpt7fy
Author Public Key
npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Show more details
Published at
2024-06-06 19:40:12 Event JSON
{
"id": "03e4d59c3977d2015ec8293eb95efc6276e3bb55705035b703112d0cc7a07a8e" ,
"pubkey": "0461fcbecc4c3374439932d6b8f11269ccdb7cc973ad7a50ae362db135a474dd" ,
"created_at": 1717695612 ,
"kind": 0 ,
"tags": [],
"content": "{\"about\":\"In 2019 I forked Mastodon. In 2020 I built communities online. In 2021 I helped Donald Trump create Truth Social. In 2023 I built a bridge between Mastodon and Nostr. In 2024 I am building new Nostr infrastructure to spread freedom on the internet and beyond.\",\"banner\":\"https://image.nostr.build/a4c135a3f13f0c91d152f1512da84f250bdf8d45dc36262243de5236a2a3cb28.jpg\",\"bot\":false,\"lud16\":\"[email protected] \",\"name\":\"Alex Gleason\",\"nip05\":\"[email protected] \",\"picture\":\"https://image.nostr.build/3320e9c4901646a3dd8b648d5414d8a01068e1498eb935a6b415f3a9465cdd3b.jpg\",\"website\":\"https://alexgleason.me/\"}" ,
"sig": "38d97b3a6c5c257e613d54b61a9505c45b8bff38624e52d17ece1e417da64df1a9832e2625ec1f2965d4bb5da8513c25437e8bb25fcc997245fa689718d90da5"
}
Last Notes npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason https://image.nostr.build/517d30d8f9fc469baeec02b1ae2b8d7ab50d1e80bb87269e21ff1faa38781556.jpg npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Yes! I'm by the live music npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason TIL you can force the SQL query planner to do two different steps if you use a CTE: > In PostgreSQL, a CTE (Common Table Expression) is an optimization fence, which means the query planner executes the CTE independently of the rest of the query and stores the result set in temporary memory (it essentially materializes the CTE). Then that result set is scanned one or multiple times depending on its use in the main query. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason I am a man broken by Postgres inner joins. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason https://image.nostr.build/d8e5f75dedec07b52dfd7d6f71e4c96364c2aaa9e089b21dd7bee0075174cf71.jpg npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Context https://earthstoriez.com/india-coconut-myth-folklore npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Doing surgery on the Ditto production database. Please be patient. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason There could be a lot more unity on the issue. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason They wanted mentions in the text. They got mentions in the text. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason You can scuba dive just a little bit. Skydiving is all or nothing. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason There's no way the DNC planted a 20 year old boy as their shooter. They would have hired an 89 year old man. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Pretty good, thanks. Check out ditto.pub 😂 npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason After 5 days, I am almost done creating the indexes needed on my giant Postgres Nostr database to just TEST whether it improves performance or not. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason I think it will work, but strfry is still forced to parse and process each message to some extent before it can reach the policy filter. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason It's just a kind range, so you should be able to block it. Rate limiting should work the same. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason There's a similar problem with draft events. I would say this problem is not about ephemeral events specifically. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Houston, TX be like: would you rather die from methane asphyxiation from city sewer gasses being pumped into your AC, or would you rather turn off the AC and die from heat? npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Ooooo. This is a good one. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason I think strfry should send a CLOSED here. As a client I wouldn't worry about this. I would send a patch to strfry if anything. As a client you need defensive measures anyway, like implementing a timeout. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Life hack: sometimes a round trip flight is significantly cheaper than a one way. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason But what is the error? npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Enjoying a nice #vegan meal. https://image.nostr.build/a9f81330f441008f51c2b9df4ec94a37c000fedc78c95c3b2f803f54de98c613.jpg npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason What is the error? Trying to understand why you would care as a client. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason If there's an error, close the subscription and use CLOSED. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason https://www.reddit.com/r/BikiniBottomTwitter/comments/1e8u0a4/my_sister_appears_to_be_having_some_sort_of/ npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason cc @npub1q46…nkqp npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Perfect, now people should use it. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Skydiving just seems like an unnecessary risk. No thank you, I don't want to pretend to die. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Why is there no standard Bitcoin invoice URI outside of Lightning? It's very awkward to pay an invoice by copy pasting the amount. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason y'all just tryna pretend you're special from each other but you really ain't https://image.nostr.build/bd6f553579fca5fbec342ea1fde1ab430f204f123f3daf01a1269f0039d87166.png npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Do you think Nancy Pelosi yelled at Joe Biden? npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Brothers, let us unite in the name of Barrack Hussein Obama, to elect the first woman president, Kam-Allah! ✊ 🇵🇸 npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Just fell out of the coconut tree npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason https://image.nostr.build/9e7ee7c9de257e3c38e445867430caa7421d750b6d9ccd41d53694ac67431810.jpg npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason There's a meme that techbros really want to just grow corn in the mountains, but I believe once you've been consumed by the void you can't escape the bits. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Did you know the False Potato Beetle has an evil twin called the Potato Beetle? Only the Potato Beetle is considered a serious pest. https://image.nostr.build/6a1047fb9ccde238834bf7fd6a174c4b9dfc5a641e50671337d244457f1f76fc.jpg https://image.nostr.build/56dd745dc6fadaceb000c006e3d4688cf373f3a30a703ec2e2e5e51d19f3085d.jpg npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Should we bring back Flash? npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason After Nostriga I heard they're going to do NostrWyoming. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Okay I'm starting to learn there is more than just time series line graphs. I can see the value in gauges for example. https://image.nostr.build/ce40889d4e5a24070cf462024512cdda020aa852a4b610d73885249f5bf23f04.png npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Grafana seems to be mainly for the "cool" factor, and in theory so you can identify problems at a glance. But Prometheus is really where it's at. You can use it on its own to identify issues. It has its own graphs. This is in fact why I'm asking the question. I'm not sure how to make Grafana truly useful. So far the main advantage is that I can tile the charts instead of being in rows like Prometheus does. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason I don't know, what client are you using? npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Here's mine: https://image.nostr.build/f4e302588a16cac314dec4344f76a25351001f37f7b04737eb039a523fdbdc5b.png https://image.nostr.build/679d4962c7098187e4967880834064f93624349c9bdabef4824b50fcf08e17d4.png npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Send a pic npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason How do I make a GOOD Grafana dashboard? What is the art of organizing visualizations? npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Check out gleasonator.dev npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Christ, this woman can barely get out a complete sentence either. https://www.telegraph.co.uk/us/politics/2024/07/20/kamala-harris-only-choice-to-replace-biden-as-time-runs-out/ npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Refreshing is the right workaround. The second time you load it's cached so it works, but the cache goes stale after like a minute so it gets slow again. The root cause is that tag queries are slow. I figured out it's because the query is trying to load all "p" tags EVER that reference your pubkey instead of just the ones it needs. This means it will retrieve 30,000+ tag rows just to render 20 events. So I am doing surgery on the database in production right now trying to resolve it, but creating the necessary indexes is taking several days. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Do your notifications load at least? This is the main thing I'm trying to improve right now. Performance of tag queries is bad. Once I sort that out, it will be 👌 npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason I might make a patch to Alby to improve it. What I'm doing is a little unusual but nothing bad. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason el gato pequeño dice "miau" npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Japanese hashtags are entire sentences, because why not. https://image.nostr.build/a4280dca402153c5f770e8c767e9e42742082e3027c0ef9ad529ba2249969e73.png npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason dónde está gato gigante? npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason I can't even understand what she's saying or why. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Congratulations!!!! 🥳 🎉 Well deserved! npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason The way I architected #Ditto is more like Primal. You just have a server that stores everything. This comes with it's own set of challenges, but I think they are easier to deal with. #note18uk…kfvz npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason The American people are even more retarded because they keep voting for them. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason This is genius. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason https://video.nostr.build/0f1c1ca6568730f74e8af06cf04e3139ea434be31c93087d29d10194ca3c0317.mp4 npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Use Linux, idiots. https://abcnews.go.com/US/american-airlines-issues-global-ground-stop-flights/story?id=112092372 npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason json accessors standardized as part of SQL 😃 they didn't use -> or ->> 🤨 they used dot syntax (which nobody implements) 🤦♂️ https://image.nostr.build/d456f301e5c5bcf3a03a88966b036a0573d605b8eb57e81ec4cbfe1bb1fb0111.png npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason my posts are disappearing into the void npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason hello npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason I saw a glimpse of a post about jsonb and gin. I figured out this actually can work if you structure the tags as key-value pairs like: { "p": ["abc", "def"], "e": ["ghi"] } This actually seems like the best solution, but I would have to give up compatibility with SQLite, which makes me sad. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason There's no way to index it. There's no jsonb operator that deals with tuples. I saw somebody once treated it as an FTS field, which is interesting, but seems insane and I doubt it would work better than just indexing all the columns. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason I have come to the conclusion that the only way to do fast tag filters in an SQL database is to duplicate the id, kind, pubkey, and created_at column of the event on EVERY SINGLE tag row, with ALL THE INDEXES of events. Because you need to be able to filter down the tags with the exact same filter you filter events. Joining the tables doesn't cut it. There is absolutely no way to make the query planner not pull out every single tag pair for a query even when you only need a couple events. Unless you filter it down yourself. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Still fighting with tag queries in Postgres npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason yolo npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason I fucked everything up, hang on npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason https://www.depesz.com/2013/04/27/explaining-the-unexplainable-part-2/ npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason I first tried to read a book on this, but it was so bad I ended up reading a 5 minute Medium article for better information. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason The main thing I'm working on right now is just trying to make tag queries fast on a 500GB Postgres database, lol. In order to really, truly do that, I have to first understand on a deep level what "nested loop bitmap heap scan recheck cond" means. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Lichess is a very cool piece of software. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason https://image.nostr.build/0335335d987bfef4d7dfeea9adf76cec8ffb927274e4ad490d1600e109bfcfa4.jpg npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason https://medium.com/geekculture/how-to-read-postgresql-query-plan-df4b158781a1 npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason But it doesn't have free speech. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Europe is better than Texas. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason >hello >are you single? Unhinged. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason inner join nostr_tags existential dread npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Even the liberal media is like: "We must protect Hitler Grandpa at all costs" npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Seen them live maybe 3 times, best shows ever. I don't know any of their music. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason You have the power to change it. You could be the mentally ill people on Nostr. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason They haven't found me yet, which is strange. I have a bad habit of rewarding these people because I see their humanity, so they flock to me like prostitutes to Jesus Christ. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Who would see that little twerp and be like "yep, he seems like the ideal candidate for our operation" npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Where are all the mentally ill people on Nostr? yall are lucky you don't have to deal with that yet. You've got like one guy. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason I don't want to be taxed and I don't want to have a boss. There is no reason to defend either of these systems. https://image.nostr.build/bf0b1803fb0059c9067440cfe8efb2115c5e7170ddaf5cfa70f9f5209dc2c841.jpg npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason JD Vance is a cross between JD Salinger from The Catcher and the Rye, and Bob Vance from Vance Refrigeration. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason I also have big plans for badges. I am delaying fun to improve stability. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason This is both genius and extremely retarded. Way to make your game rely completely on a proprietary third-party service you don't control. But boy do I love storing data in the wrong places. https://video.nostr.build/e5c6ae85d093f6c02ea813a74096292892f607b9701a1b81392f7e6586bdf4bb.mp4 npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason I have come to the same conclusion as nostr-rs-relay that there needs to be a `kind` and `created_at` columns on the tags table for performance to be good. #note1059…k7mv npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason "Alex, why are tag queries on Ditto slow?" "Because there's 34 million fucking tags" npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason mein gott https://image.nostr.build/e6d113e40b7ea06913b9ac70abb768345b7fe33c2cd7d54ced70025e390d7e32.png npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason River Flows in You. This song is a meme npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason This horror beyond comprehension is a crustacean, related to lobsters and crabs. https://image.nostr.build/205283fdeddb019f39ad3d3d071da25ab1e1937dd8983408e0e2bdc0a6cb0e92.gif npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Apparently the price of Bitcoin is directly correlated to whether or not Trump will win. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason We all love JK Rowling, especially the LGBT community. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason I was the "Head of Engineering" 😂 npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason They ripped all that code out. I had started adding it back in, but they thought I was crazy. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason No, they're obsessed with "fighting bots" and advertising revenue, and Devin Nunes is retarded. Nobody is saying anything particularly interesting there anyway, except Donald Trump. npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason Very nice! npub1q3sle0kvfsehgsuexttt3ugjd8xdklxfwwkh559wxckmzddywnws6cd26p Alex Gleason The dirty hack is to put a static file with a custodial endpoint in the callback: https://alexgleason.me/.well-known/lnurlp/alex