- β
- β
to read (pdf)
- I don't want your PRs anymore
- JitterDropper | OALABS Research
- DomainTools Investigations | DPRK Malware Modularity: Diversity and Functional Specialization
- EXHIB: A Benchmark for Realistic and Diverse Evaluation of Function Similarity in the Wild
- Neobrutalism components - Start making neobrutalism layouts today
- May 30, 2026
-
π tomasz-tomczyk/crit v0.16.0 release
What's Changed
Shareable preview mode
The in-UI Share button now works in preview mode (previously files mode only). An HTML/CSS asset crawler builds a self-contained snapshot β text inlined, binaries base64-encoded β and
crit share --previewuploads a standalone snapshot straight from the CLI. The whole Share flow was extracted into a shared module so code-review and preview render identical behavior, and preview comments now round-trip cleanly to crit-web.- feat(preview): shareable preview mode β share, comment sync, parity by @tomasz-tomczyk in #626
crit statsA new
crit statscommand reports your lifetime review statistics β sessions, total duration, files, and comments β alongside fun insights like your busiest day and longest session. Stats record to~/.crit/stats.jsonon approval and daemon shutdown (with dedup), support a--jsonflag for scripting, and can be turned off entirely via thedisable_statsconfig key.- feat: add
crit statscommand for lifetime review statistics by @tomasz-tomczyk in #613
Session summary on exit
Finishing a review now shows a shareable receipt line in the approval modal β
Done reviewing β 12 files Β· 5 comments Β· 15mβ with a copy button, confetti on approval (respectingprefers-reduced-motion), and the same summary printed to stderr on approved exit.- feat: show session summary on exit by @tomasz-tomczyk in #620
General
- feat: badge GitHub-synced comments and propagate github_id to share payload by @Ylsssq926 in #604 - Thank you!
- fix: default to branch scope on first launch by @tomasz-tomczyk in #614
- fix: prevent scope=branch from leaking files outside range mode by @tomasz-tomczyk in #617
- fix: skip binary files in git mode by @tomasz-tomczyk in #616
- fix: skip --share-url confirm prompt when stdin is not a TTY by @tomasz-tomczyk in #625
- fix: restore brand tint on target branch chip by @tomasz-tomczyk in #612
- docs: document make test-diff seed harness and integration tests in CONTRIBUTING by @tomasz-tomczyk in #622
Internal refactors
- refactor: remove migrateLegacySettings cookie migration by @tomasz-tomczyk in #615
- fix(e2e): de-flake stack popover and attribute-thrash specs at the race source by @tomasz-tomczyk in #627
- fix(e2e): scope unified mode assertions to expanded file sections by @tomasz-tomczyk in #619
- perf(ci): shard git-mode E2E tests to halve wall time by @tomasz-tomczyk in #611
- chore: make fresh worktrees and e2e work out of the box by @tomasz-tomczyk in #621
- chore(deps): bump markdown-it from 14.1.1 to 14.2.0 by @dependabot in #623
- chore(deps-dev): bump eslint from 10.4.0 to 10.4.1 by @dependabot in #624
New Contributors
- @Ylsssq926 made their first contribution in #604
Full Changelog :
v0.15.4...v0.16.0 -
π tintinweb/pi-subagents v0.9.1 release
see changelog
-
π tintinweb/pi-subagents v0.9.0 release
see changelog
-
π r/Yorkshire Blubberhouses - last night. rss
| submitted by /u/Professional-Many534
[link] [comments]
---|--- -
π r/york Gyms in York - JD or Bannatyne? rss
Hello all, hoping you can help.
I've been using Bannatynes for about 9 years now and membership is up for renewal soon. This past 12 months I've focussed on weights and running so not really using the wet facilities.
This gives me a dilemma - shall I swap to JD gyms? It's slightly closer to home and much cheaper. While I can afford Bannatynes, I don't want to pay for facilities I'm not using.
Does anyone use JD and what is it like? And how busy?
I'm 44 F and don't want to be queueing for equipment used by groups of teenage boys (in the nicest possible way!). Considering getting a day or month pass for JD to try it out but any reviews are welcomed. Thanks
submitted by /u/Tall_Quit5909
[link] [comments] -
π r/Leeds Crazy high pollen? rss
Itβs my first summer in leeds and my hayfever has been unbearable, is anyone else really suffering this year particularly or is this normal for leeds? Stayed inside in this weather but the air is full of cotton tufts?
(Mostly allergic to tree pollen)submitted by /u/marinasambhi
[link] [comments] -
π ArchiveBox/ArchiveBox v0.9.33rc47 release
release: archivebox 0.9.33rc47
-
π ArchiveBox/ArchiveBox v0.9.33rc46 release
release: archivebox 0.9.33rc46
-
π ArchiveBox/ArchiveBox v0.9.33rc45 release
release: archivebox 0.9.33rc45
-
π r/york York LGBT Pride Parade rss
Hi all, today is the York Pride Parade
https://www.yorkpride.org.uk/parade-with-pride/
Hope everyone has a good day!
submitted by /u/David_ATN
[link] [comments] -
π r/Harrogate Mobile data signal in Knaresborough is so bad. rss
In town yesterday and it just flat out doesn't work. Not just slow but doesn't work for me a lot of the time.
Is there anyone I can write to?
I'm with Lebara who run off the Vodafone network. But I have friends with EE who said their signal is just as bad.
submitted by /u/Famous_Yorkshire
[link] [comments] -
π HexRaysSA/plugin-repository commits sync repo: +1 release, ~1 changed rss
sync repo: +1 release, ~1 changed ## New releases - [IDASQL](https://github.com/allthingsida/idasql): 0.0.16 ## Changes - [IDASQL](https://github.com/allthingsida/idasql): - 0.0.1: archive contents changed, download URL changed -
π r/LocalLLaMA I compared all specs of the major GPUs/machines that are being used here, because bandwidth is not everything. Some of ya'll need a reality check. rss
| Clarification: This post was meant to curb the old and new Mac recommendations to new members/buyers, not to insult people with existing machines that are perfectly fine for their usecase. Edit: OKAY GUYS Pro 6k exists too, understood. M3 Ultra is also closer to 30k, not 12k (ouch). Extended table below: | Device | Price used | FP16 TFLOPS | VRAM | Bandwidth | $/TFLOP | $/GB | Power | W/TFLOP
---|---|---|---|---|---|---|---|---
RTX PRO 6000 Blackwell WS | ~$10,000 | ~463 | 96GB | 1792 GB/s | ~$21.6 | ~$104.2 | 600W | ~1.30
RTX PRO 6000 Blackwell Max-Q WS | ~$11,000 | ~380 | 96GB | 1792 GB/s | ~$28.9 | ~$114.6 | 300W | ~0.79
Intel Arc Pro B70 | $949 | ~183.5 | 32GB | 608 GB/s | $5.2 | $29.7 | 290W | 1.58
Radeon Instinct MI50 32GB | ~$535β560 used eBay | 26.5 | 32GB | 1000 GB/s | ~$20.2β21.1 | ~$16.7β17.5 | 300W | 11.32
Radeon AI PRO R9700 | $1,299 | 191.0 | 32GB | 640 GB/s | $6.8 | $40.6 | 300W | 1.57
RTX 4060 Ti 16GB | $400 | ~88.3 | 16GB | 288 GB/s | $4.5 | $25.0 | 165W | 1.87
RTX 5060 Ti 16GB | ~$550 | ~94.9 | 16GB | 448 GB/s | ~$5.8 | ~$34.4 | 180W | 1.90
RTX 5070 Ti 16GB* | $1,000 | ~175.8 | 16GB | 896 GB/s | $5.7 | $62.5 | 300W | 1.71- again gpu's that support below FP16/BF16 precision and are 2x-4x faster with it
Hot takes:
- Mac studio is overpriced Raspberry Pi that is way more inefficient than people think (together with most macs). M5 MBP is better with the "tensor" matrix MMA, but not that much better value wise- Spark was actually decent when it was just 3-4k. Strix is obviously much better now
- 3090 are complete overkill for single stream usage, V100s are much better value if you can find them cheap. P40 are very niche, but decent if you want exactly 48GB of vram, run moe and don't have money for Mi50s or V100s.
- P100s are extremely underrated entry level LLM gpu's that are not talked about enough. 200 bucks (dual gpu) for a combined 32GB of 700GB/s memory and M3 Ultra compute is crazy.I understand that this sub is now filled with gamers who do nothing but ERP, but for people who do something actually productive (read as experimenting without investing high 5 figures into their setups), prefill is still very important and this is completely hidden by the "generate 1000 word story" benchmarks that most posts or big AI youtube channels do. Especially with multimodal models that eat up context like mad.
I'm still collecting data for prefill and generation charts I'd like to do in the future... I also couldn't find much reliable power data, so if you could provide that from your own setups in the comments I'll be glad.
Thanks for coming to my ted talk.
submitted by /u/Ok_Top9254
[link] [comments]
-
- May 29, 2026
-
π IDA Plugin Updates IDA Plugin Updates on 2026-05-29 rss
IDA Plugin Updates on 2026-05-29
New Releases:
Activity:
-
π r/Yorkshire Bridlington harbour so peaceful tonight. rss
| submitted by /u/Still_Function_5428
[link] [comments]
---|--- -
π r/LocalLLaMA Breaking the music supply constraint rss
| I just cancelled my music subscriptions to save some cash and wanted to share the self-hosted music supply chain that replaced them. A nice side effect of this setup is breaking the constraint of a finite supply catalog that is tailored for the masses:- 2 x DGX Spark linked via ConnectX 7 running Plex and multiple Ace-Step 1.5 XL models in parallel for music generation with GePa prompt optimization. Also holds my organic music that the models can remix. TODO: a reinforcement learning from human feedback interface.
- iPad Pro running Prism as a Plex client for bitperfect and sample rate-matched audio.
- Schiit stack -> Hifiman Arya Stealths
This effectively gives me an infinite supply of music for free, that is personalized and private. It's immensely satisfying listening to Shrimp Bizkit and Phlegminem on repeat, I much prefer this to the organic music created after 2011. My only problem is the loss of community, I have noone to share my new favorite songs and artists with because they're generated for me. If anyone wants to hop on to my Plex share to discuss, let me know! submitted by /u/entsnack
[link] [comments]
---|--- -
π r/york Barber recommendations? rss
Hey guys, I've been going to the same barber in York for a really long time, but I don't feel comfortable going there anymore after the last time I got my haircut there I heard him call some asian people going past the window a racial slur.
Does anyone have any local barbers/hairdressers they can recommend? I'm not after anything crazy, just someone where I can show them a picture of what my hair usually looks like after I get it cut and they can more or less replicate that
Edit: Thanks for all the recommendations guys! Good Folks sounds like it'll be the one for me, seeing a lot of lovely comments about it and it's only 15 minutes away from me!
submitted by /u/Capn-EXE
[link] [comments] -
π mahmoudimus/ida-sigmaker v1.8.0 release
sigmaker.py - IDA Python Standalone Python Release
Release Information
- Version : 1.8.0
- Source : https://github.com/mahmoudimus/ida-sigmaker
- Author : @mahmoudimus (Mahmoud Abdelkader)
What changed
Changed
Find shortest unique signature for current functionis faster again on large databases, and the gap widens as the database grows. The per-starting-point seed scan is replaced by a two-byte position index built once per search, so each starting point is seeded from the rarest byte run in its pattern in time proportional to that run's frequency, not the database size. About 2.48x over 1.7.3 on a 16 MB module. (#35)- The seed is now chosen from the most selective run, one byte or two. A single rare byte can be more selective than a common two-byte pair, so the search picks whichever run has the smallest index bucket. (#36)
Internal
- Two-byte bucket position index built in the Cython
_speedupsextension as anogilcounting sort; one-byte buckets telescope from it for free (a range view, no second index). (#35, #36) - Per-byte candidate refinement moved into the Cython extension (
refine_offsets): in-placenogilcompaction over a typed uint32 buffer with zero per-call allocation. Refinement on the largest function of a 16 MB module dropped from ~14 s to ~0.28 s; that function's total search fell from ~24 s to ~15.6 s. (#36) _ByteIndexis a frozen slots dataclass; the runtime array module is aliased aspy_stdlib_arr_modto keep it distinct from the cimported C-level API. (#36)- Signatures produced are byte-identical to 1.7.3; only the speed of finding them changed. (#36)
Documentation
- New
ALGORITHM.mdderiving the match-set math, the counting-sort index, the selectivity proof, and what is novel about the approach. README gains a table of contents, a Performance section with benchmarks, and a library stability contract for downstream embedders. (#36)
Description
This is a standalone release of the IDA Pro signature maker plugin. The file
sigmaker.pycontains the complete plugin code that can be directly imported into IDA Pro.Installation
- Copy
sigmaker.pyto your IDA Pro plugins directory - Restart IDA Pro
- Use Ctrl+Alt+S to access the Signature Maker menu
License
See the main repository for license information.
-
π r/LocalLLaMA Fed up with vibe coders, dev sneaks data-nuking prompt injection into their code rss
| I guess the lawyers are sharpening their pencils already... submitted by /u/DeltaSqueezer
[link] [comments]
---|--- -
π sacha chua :: living an awesome life Yay Emacs 32: Sacha and Prot Talk Emacs: May I recommend... rss
In this livestream, I chatted with Prot about the May 2026 Emacs Carnival theme "May I recommend". It was a joint braindump of quick recommendations for people at different points in their Emacs journey, building on our conversation about newbies/starter kits and the newcomer experience all the way up to power users, Emacs Lisp coders, and package developers.
View in the Internet Archive, watch or comment on YouTube, read the transcript online, download the transcript as a PDF or VTT, or e-mail me.
Related links
- EmacsWiki: CarnivalMay2026: "May I Recommend…"
- Top (GNU Emacs Manual)
- Top (The Org Manual)
- Top (Programming in Emacs Lisp)
- Top (GNU Emacs Lisp Reference Manual)
- Mastering Emacs
- Emacs Lisp Elements | Protesilaos
- Bookmarks (GNU Emacs Manual)
- Keyboard Macros (GNU Emacs Manual)
- Hooks (GNU Emacs Manual)
- Advising Functions (GNU Emacs Lisp Reference Manual)
- Edebug (GNU Emacs Lisp Reference Manual)
- Top (Emacs Lisp Regression Testing)
- oantolin/embark: Emacs Mini-Buffer Actions Rooted in Keymaps Β· GitHub
- justbur/emacs-which-key: Emacs package that displays available keybindings in popup Β· GitHub
- minad/marginalia: :scroll: marginalia.el - Marginalia in the minibuffer Β· GitHub
- minad/consult: :mag: consult.el - Search and navigate via completing-read Β· GitHub
- minad/vertico: :dizzy: vertico.el - VERTical Interactive COmpletion Β· GitHub
- Denote (denote.el) | Protesilaos
- jtroo/kanata: Improve keyboard comfort and usability with advanced customization Β· GitHub
You can add the iCal for upcoming Yay Emacs episodes to your calendar. https://sachachua.com/topic/live/upcoming-livestreams.ics
Find more Yay Emacs posts or join the fun: https://sachachua.com/topic/live
Chapters
- 0:00 Opening
- 2:27 Tip: Less is more. Start small.
- 4:07 Tip: Start with what is built in
- 4:27 Skill: Figuring out the words to look for
- 6:25 Tip: Be okay with starting over
- 8:26 Skill: Learning to discover
- 8:42 Tip: Read manuals for fun
- 10:16 Tip: Use Emacs bookmarks to save your place in the manual
- 10:43 Tip: Generally, investing time into navigation and note-taking workflows pays off
- 12:19 Skill: Keyboard macros
- 12:53 Skill: Modifying the behavior of code via hooks and advice
- 13:15 Tip: Learn to think in terms of buffers and windows
- 14:07 Skill: Reading the source code; Tip: Just jump in
- 15:33 Tip: edebug is great for exploring code
- 16:26 Tip: Reading tests can help you understand code, too.
- 17:02 Skill: Idiomatic Elisp
- 17:17 Tip: Write tests.
- 17:52 Tip: When writing Emacs Lisp that expects a list, use plurals
- 18:59 Tip: When naming, be verbose rather than terse
- 19:46 Tip: Iterate on your workflow in small steps
- 20:20 Tip: Make things more automatic, and use context-sensitive clues
- 24:48 Skill: Thinking in terms of elements
- 26:16 Skill: Reading other people's configuration and adapting ideas to yours
- 27:07 Tip: Start with focusing on just one thing
- 27:33 Blog posts and videos are useful
- 28:09 Tip: Take notes as you learn, and ideally, share them too.
- 28:54 Tip: Accept being a beginner.
- 31:16 Group: Power users
- 32:13 Tip: Browse through package lists
- 32:25 Tip: Dive deeply into the packages you have: customization options, code, etc.
- 32:41 Tip: find-library gets you to the source code, occur can help you browse it
- 33:29 Tip: You can also browse through Customize
- 33:48 Tip: Have fun with randomness and serendipity
- 34:32 Tip: Check out people's workflow descriptions and stories
- 35:42 Resources: manuals, Mastering Emacs, Emacs Lisp Elements
- 37:29 Skill: Figuring out what's possible and making a habit of writing tiny functions
- 37:45 Skill: Being mindful of what you do over and over again
- 38:26 Tip: Keyboard macros can help you jumpstart custom functions
- 39:11 Tip: Use C-h k (describe-key) to describe shortcuts or menu items
- 40:04 Tip: You can set up M-x to show keyboard shortcuts too (Marginalia?)
- 41:26 Resource: Emacs from Scratch series by System Crafters
- 41:50 Tip: Old tutorials can still be useful, although don't treat them as the sole source of truth (things may have changed since then)
- 42:55 Skill: Finding preferred resources
- 44:12 Tip: If you find your tribe, look for ways to keep in touch with them
- 45:00 Tip: Manage unequal RSS frequencies with folders or tags
- 46:33 Tip: Doing more things in Emacs has compounding benefits
- 48:31 Tip: Learn to think of it as just text
- 49:46 Tip: Take notes along the way
- 50:16 Tip: Explore different ways to navigate and act on things
- 51:09 Tip: Learn to combine different building blocks
- 52:47 Tip: Get the hang of keybinding conventions
- 56:06 Tip: Use which-key for keybinding help
- 57:41 Tip: Figure out your ergonomics
Transcript
Expand this to read the transcript0:00 Opening
Sacha: My typing is still going to be very loud, but that's okay. Prot: That's part of the charm. Sacha: Okay. All right. Here we go. Let's go live. Hello, everyone. This is Yay Emacs [32]. I forgot which number. Anyhow, I'm here with Prot because it's Emacs Carnival for May 2026, and the theme is "May I Recommend" because I like puns and couldn't pass up the chance to say "May." So "May I recommend..." is our topic, and our goal for this one is to brain dump a whole bunch of things that people might find useful in their Emacs learning journey. We've already talked about newbies and starter kits in the previous two conversations we've had in Sacha and Prot Talk Emacs. This time, we're going to focus more on *users* who are getting started with... They've decided this is going to be their everyday tool. They want to learn more about keyboard shortcuts and finding their way around, building the habits, finding their preferred resources. *Power users*, maybe, who are starting to look at different packages, these are maybe the people who are saying, okay, maybe let's try this package for working with Org Mode in addition to the basic stuff, or let's try doing email in Emacs. *Customizers*, who are beginning to get into Emacs Lisp to write functions. This is where you start to customize it a lot more to your tastes and your workflows. *Contributors*, people who are sharing their source code, maybe even turning it into packages, participating mailing lists and discussions. So this whole range of people all working on different skills at different levels. What I think we're going to do with this is we're just going to braindump a whole bunch of recommendations. You're welcome to ask questions, and I'll ask you questions as well. We'll just untangle everything and organize everything afterwards. Prot: That's great. Sacha: There we go. In this list of skills that people can develop, are you thinking of other skills that aren't on this list yet that do make a big difference to how people use and learn Emacs? Prot: I need to enlarge my screen a little bit. I think what you have there is good. 2:27 Tip: Less is more. Start small.Prot: What I had in mind also is more of a meta-point, or more general thing, like an approach style, which is "less is more," if I were to condense it. Start small. Make sure you make it work when it's small. Extend it from there. Don't start big and try to simplify it, because that doesn't work. Sacha: I grouped that idea under managing time, notes, and attention and also breaking things down, because the overwhelming nature of things is something a lot of people struggle with, both Emacs and elsewhere. Even just that meta-skill of saying, "Okay, this is a small chunk that I'm going to focus on because I know that's what my brain can handle" versus "let's architect this entire thing" and you're six hours down the line and you're nowhere near the thing that you want it to do. Prot: And of course Emacs invites you for that because it's like, here are like a hundred powerful tools for you to combine in ways that nobody else has thought of before, right? So it's like asking you to do that, but it's a trap. You don't want to go down that route. Or at least don't go there too early. Sacha: Managing the rabbit hole. Yes, there are going to be a lot of temptations and some of those temptations are quite legitimate. Yeah, you do have to figure this part out in order to get this other thing that you wanted working. But sometimes it's just a trap. Prot: Yeah. Sacha: So that's managing. What other meta-skills here should we talk about as a framework so that when we dive into the specifics, we know we're covering a lot of the ground people need?4:07 Tip: Start with what is built inProt: Not so much a meta skill, but consistent with this line of reasoning is as a good heuristic, start with what is built in and extend from there, because usually what is built in will give you a baseline of functionality. It works with a "less is more" approach.4:27 Skill: Figuring out the words to look forSacha: I feel that sometimes figuring out the words to look for, finding out what it might be called in Emacs source or in the built-in packages... That's something that's hard to develop unless you're reading manuals and reading other people's posts because the terminology can be quite arcane. Prot: Oh yeah, for sure. Sacha: Getting a sense of what might be built in and what it might be called and where to look for it, I think, is definitely a skill. Prot: One good way to think of this is, what do I want to do? In the most simple form, if you forget about Emacs for a second, and you're like, what am I trying to do? I'm trying to write a blog, or I'm trying to deal with email correspondence, or I'm trying to manage my TODOs. In its most simplest form, how can I solve this problem? That can already help you formulate the questions. Sacha: Formulating the questions is actually really hard. Sometimes people don't even notice that there's a question that they can ask, and they don't know what kinds of solutions might address that problem actually. They get distracted by A, but actually it's B that will solve the problem. Considering the different kinds of solutions that can address the same problem, developing a sense of which ways are easier to do the Emacs way versus harder to do. Why make something really complicated when a built-in package or whatever can solve that problem in a more elegant way? All of these things require the development of intuition. Prot: Yes, yes, and with some experience, of course, that helps, for sure. But then it's the other, which you can also consider as a meta skill.6:25 Tip: Be okay with starting overProt: I believe there was also a point of this, be okay with declaring bankruptcy in Emacs. Bankruptcy, I think... the essence of that is not really much bankruptcy, but be okay with trying something, which is an experiment, and then learning something from it, distilling the essence of that, and then trying something else. I think a sense of experimentation will help you build that skill of, okay, now I can intuitively figure out what works and what doesn't work. Sacha: I think that's a really interesting point because sometimes you get very attached to "there's this thing that I've started to build" and then you start bolting more and more things onto it, when really, sometimes the prototype is your way of understanding the problem. Then you take it all out and you say, okay, now that I understand a little bit more, what can I make? How do I change my workflow with that new understanding? Sometimes it's as extensive as declaring Emacs bankruptcy and starting again from scratch. Sometimes it's just maybe "The approach that I'm taking is not a fruitful one. I should go try something else." Prot: Yeah, exactly. You can only have that feedback loop if you try, so trial and error is the way to go. Sacha: @gcentauri has a question or a comment about discoverability, figuring out how to navigate Emacs in order to discover things. Where would we put that in this skill? This is figuring out the words as well, right? Isn't it? Prot: Yeah, by the way, I'm in the chat here. Sacha: Where did you read that? Prot: I see it here. It was off my screen. I see it now. And of course Christian... I'm reading the temperatures in Western Europe. They are terrible. Yes, I know. Sacha: Yeah, big heat wave.8:26 Skill: Learning to discoverSacha: So, figuring out discoverability, learning how to navigate Emacs. Emacs is lovely. It's self-documented, everything at your fingertips, but you've got to know how to get those fingers on them.8:42 Tip: Read manuals for funProt: The manual helps. It will present some of that. But of course, you have to read the manual. So you are in a situation where you have to have the skill of reading the manuals in order to discover, but to discover... So yeah, it's a tricky thing. You have to know where the manuals are. Sacha: Yeah, and you have to be unintimidated by them, I think. I got into it easy because I've always been used to reading books above my level. Even as a kid, I was reading my sister's data structures and algorithms books. I didn't understand anything the first time around. But after nine times through, you start to understand some of the concepts and how they go together. The more you read something, the more of those concepts start to make sense to you. You read it, you read other things around it or related to it, and then the jargon becomes less impenetrable. You begin to understand it. So one of my recommendations is I recommend reading the Emacs manual, the Org manual, all these book-shaped things for fun. Even if you don't think you're going to immediately use 90% of the things, every time you read it, you're going to learn something. Prot: Yeah. Plus, of course, you will know you are an Emacs user if you are reading manuals for fun. Sacha: How else are you going to find out about Org spreadsheets and whatnot, right? It's just too big to fit in your brain. Prot: Correct. Yeah, that's really good. You could even make it a habit of, okay, this day I will read one chapter from the manual.10:16 Tip: Use Emacs bookmarks to save your place in the manualProt: Actually, to say something on this, if you learn about the bookmark mechanism of Emacs, you can bookmark info manuals. So if you are reading the manual from inside of Emacs, you can use the bookmark facility to be like, last point in the Emacs manual. You could have a bookmark that is a rolling bookmark, right? So you could be updating it whenever you go to the next chapter. This way, little by little, you can read the manual.10:43 Tip: Generally, investing time into navigation and note-taking workflows pays offSacha: In general, figuring out your navigation and note-taking workflows so that they're super convenient for you, whether that's Denote or Org Mode Capture or whatever else that you're using... As you read, taking notes on the things that you find interesting in a way that makes it easy to jump back to more information is definitely worth the upfront investment of learning. Prot: Yeah, 100%. Sacha: @gcentauri confirms they are actually a true blue Emacs geek. "Was reading the manual right before bed and came across the forms library. No idea it existed." Read stuff, make it easier for you to jump back to the place that you left off or the parts that you found interesting. That's a great recommendation. Prot: Just to add another metaskill related to this. Don't read it before going to bed because if you discover something useful, you are not going to sleep. Sacha: I think the idea there is get really good at telling your brain, yes, that's really cool, but if you stay up until 1, you are going to regret it. So just add a TODO and let it go. Prot: Exactly. Sacha: This may have happened to me a number of times. Prot: Yeah, yeah, same. So, only read the manual in the morning or when you wake up. Sacha: Are there other metaskills that are not yet captured in this or do we start digging into each of these skills? Prot: I say we dig in and if we think of something we can always add it later. Sacha: All right. What strikes your attention here? Which of these things? Prot: No, no. You can go wherever. I don't mind. Anything will do well.12:19 Skill: Keyboard macrosSacha: There's a whole lot of stuff here in the customizer, packager thing around modifying or gluing together code that is not something easy for people to pick up because they're just not used to it in other programming languages or platforms or whatever. Things like: you could use keyboard macros to cobble together a quick workflow. You don't even have to write a big function. Just developing the intuition that, oh, this is a set of repeatable functions or repeatable commands is one thing,12:53 Skill: Modifying the behavior of code via hooks and adviceSacha: all the way to "this is how I use hooks and advice to either modify the behavior of something where the person who coded it has anticipated that a hook will be needed here, or advice in case they didn't plan for it at all." You're just going to override things yourself. How do people develop this sense of what's possible and how to do things?13:15 Tip: Learn to think in terms of buffers and windowsProt: Yeah, it's a difficult skill but it's something you develop by experience. The point to remember is that in Emacs, at its core, you have buffers and everything is a buffer and buffers are displayed in windows If you think in terms of that abstraction, something like a keyboard macro becomes a tool that will jump between buffers, will switch windows. It has no problem doing any of that. You are not limited in your thought to, okay, I have to work exactly where I am right now. I think that's a general approach that goes very far with what you do. Of course, when you are thinking of the advice and the hook, that I think is a little bit more advanced because you need to also have the skills to write advice. With hooks, maybe not. But for advice, you will need to understand exactly what is happening.14:07 Skill: Reading the source code; Tip: Just jump inSacha: I have definitely jumped ahead here because this also requires the skill of reading people's code in order to find out there is a hook or there is some advice that you can do, or there's a variable and this is how you can let bind it to temporarily change its value during this part of the code. Let's talk about reading source. What sorts of things help people develop that skill of reading the source code? Prot: You have to just jump in at some point. Like, you might do it by accident when you are in a help buffer and either you misclick S, which goes to the source, or you follow the link from above. But anyway, the point is it's a good skill to just, a good habit rather, just jump in and try to read it even if you don't know any programming. Try to read it as if it's English and try to see what you can understand. And of course, some functions will be extremely difficult. Others will be more straightforward. So I think eventually by exposure through osmosis, as it were, you will already learn something. Sacha: I love the fact that our functions in variable names are often very long and it makes sense in English because we're not trying to squeeze into some very concise, very terse convention. Just put a full sentence in there. It's fine. We just use completion anyway. It's all good.15:33 Tip: edebug is great for exploring codeSacha: One of the tips that I'll put in here because people sometimes miss it is the power of Edebug. If people haven't come across Edebug yet, it's great because you can interactively step through what the code is actually doing and you can evaluate what the value is of this variable at this point. And every so often I had to go into the Edebug menu bar and remind myself, okay, you can set conditional breakpoints and all these other things that I have to remember that exist and can be used. But Edebug, if you're going to learn Emacs Lisp, learn Edebug. Prot: Edebug is really powerful for sure and it's especially useful when you have functions that are relatively long. I mean what they are doing like they have a lot of steps and you have to understand the flow. Like if it's a very short function maybe you don't benefit all that much from eDebug but in practice you will need it. It's very powerful.16:26 Tip: Reading tests can help you understand code, too.Sacha: And the other thing I want to point out is that sometimes packages have tests and reading the tests can give you even more of an idea of how this function is supposed to behave. It's not always the case, but when there are tests, they're great. Prot: In an ideal world, we will update our tests. Sacha: Alright, so that's reading source code. There's so much that's really interesting to read. Sometimes you come across interesting idioms for Emacs Lisp and you're like, oh yeah, that's a great way to iterate through all the buffers and match a certain thing, whatever.17:02 Skill: Idiomatic ElispSacha: And so if you're in this customizer phase of things and you want to move to the contributor level, learning idiomatic Elisp is definitely like, okay, it makes things a lot easier.17:17 Tip: Write tests.Sacha: Charlie says, "Edebug and ERT tests change the way I develop Elisp. No longer flying blind." Yeah, great. In particular, I tend to break things whenever I make changes, so it's really nice to be able to say, okay, I'm going to nail down this behavior, at least for now. With a little bit of thinking, sometimes you can write tests for things that you would do interactively. So you can test a whole lot more because you have buffers and windows than you might in other languages. Prot: Yeah, correct, correct. And you get to see it live.17:52 Tip: When writing Emacs Lisp that expects a list, use pluralsProt: Just to say on this point of when you are going through the tests and through everything, one basic thing which is in idiomatic Emacs Lisp is when you are writing the parameters of a function, if you are expecting a list, you use plural. For example, you have a function that goes through buffers. Your parameter is just called buffers. That alone should tell you that it's a list of stuff. You don't say "list of buffers," right? That's superfluous. You just say buffers. This automatically means it's a list. So that's very common. You will see this a lot. Sacha: Here I am, I've been calling my variables buffer-list. Sometimes figuring out what I should call a function or call an argument is a bit challenging, but I figure I'll just name it whatever comes to mind and then I can defalias it or do a search and replace afterwards.18:59 Tip: When naming, be verbose rather than terseProt: When in doubt, of course, be verbose rather than terse. Sacha: Oh, yes. When you find yourself still using the wrong words to try to find it again, just add more aliases and you'll find it eventually. Prot: More verbose. More words. All the words. Sacha: All the words. All right. What are the things here do we want to dig into? Adopting is always an interesting challenge and it's a challenge at all levels here, right? From the user trying to figure out "How do I remember to use this keyboard shortcut?" to "I've written this new function, it's great, but I have to remember to use it." Do you have any recommendations around changing the workflow?19:46 Tip: Iterate on your workflow in small stepsProt: In accordance with what I said in the beginning, iteratively. Try to memorize one. You have this new function that, let's say, streamlines how you list files in a directory, whatever, I don't know. Use it. Don't have all 10 functions and try to remember them. Just use one. After two weeks, use the next one. After four weeks, use the third one, and so on. Little by little, make it something that you just do automatically, you don't think about it, with the recognition that you want to remember them all.20:20 Tip: Make things more automatic, and use context-sensitive cluesSacha: In fact, going on that point of automaticity, I also like making sure this stuff happens without me having to think about it. If there's a hook that I can take advantage of to just have it automatically turned on, or if there's a context menu I can add it to so that I know, okay, if I do this, then I'll see it in a shorter list. I can get to it more easily instead of having to remember how to find it and all these details. All these little ways to make it easier for myself to automatically enjoy the improvements, or at least have a chance of finding it again. Prot: Yeah, yeah. This is in the spirit of prefix keys, with the help of the which-key package, for example, or what Embark is doing. Of course, there are different approaches. Maybe you want to set up a transient and in the given mode, you just type question mark, for example, and it breaks up your transient with what you want to do. There are various strategies you can go about to do something like that. I lost your audio, just to say. Yeah, no problem. Let's see. Of course I can sing in the meantime, but I don't think the audience will like it. Let's see. Yeah, no problem. No stress. Of course we could do this. Don't forget that there was a time in history where cinema thrived with technology like this. So it will work. Okay, I can read a little bit from the chat. So something I love doing is after I've learned that one function at the late... Sacha: Can you hear me now? No. Test. Okay, okay, okay. Woohoo! Successful panicking. Alright. Great. Great. Magic? Something is happening? I don't know what is happening. My video is less important. It's fine. You may continue. Oh yeah, for sure.24:48 Skill: Thinking in terms of elementsSacha: Even just thinking, okay, here are the elements that it can work on and here are the actions that I want to associate with those elements. I guess it starts with the intuition of what are the things that I can address. And what I do is I just look at the embark source code and I'm like, oh yeah, okay, Org headings, that makes sense, and variables and all that stuff. I always like looking at people's setups. Okay, this one says you are now too quiet. Can you say something? Okay, okay, this is definitely a me problem. Hang on a second. Oh, okay, okay, okay, I think... Ah, technology. Why is it so fun? Test. Test. No, this is not right. No, no, no. Prot: Let me know if you can hear me now. And of course, in the meantime, I can comment on the weather. I don't know if I can be heard. But in Western Europe, the temperatures are record high. And here in the mountain of Cyprus, it's like 20 degrees Celsius max. Sacha: Okay. So did you hear any of the stream? Is Prot's audio okay now? You've got to keep talking, I guess. Prot: Yeah. Sacha: Oh, my goodness. Prot: It's completely different.26:16 Skill: Reading other people's configuration and adapting ideas to yoursProt: "We can hear him loud and clear." Wonderful. Sacha: Back to braindumping. Very good. So we talked about Embark and other things and practices and workflows. I learned by reading other people's configurations, but it does take a fair bit of intuition in the first place to realize this part of the configuration means this, and how to adapt that into my own workflow. Is there a way for people to develop that aside from just reading tons and tons of configs? Prot: At some point you just have to try. You just have to be like, "Okay, this package everybody raves about, they must be doing something good. I don't know what that is, so I have to try it and see for myself."27:07 Tip: Start with focusing on just one thingProt: Then for something like Embark... We are just using it as an example, but I think it's a good example for other things. Something like Embark can do a million things, but you can also use it for just one thing, right? Find the one thing that you can use it for, use it for that, then figure out what is the second thing and take it from there. The same can be said for Org and all sorts of packages.27:33 Blog posts and videos are usefulSacha: I find that sometimes videos are useful for it in terms of seeing it in context, but on the other hand, sometimes I don't have the patience to watch a whole video. I particularly enjoy the posts that are both blog posts plus videos, so I can just skim the blog post, copy the code without having to pause and type things in manually, but also see how it works by somebody showing me how they use something. Prot: Yes. That's the idea.28:09 Tip: Take notes as you learn, and ideally, share them too.Sacha: I do want to sneak in this recommendation to share. I keep beating this drum. But whenever I write about something that I've learned, I always end up getting these comments from people who point out other things that I should check out too. So I highly recommend, whether you're a beginner or whether you're a power user of Emacs, try blogging. I am happy to add people's blogs to Planet Emacs Life so people can read your stuff. All the notes are great for both crystallizing what you know as well as possibly inviting other people to share other tips and comments that point out that what you just worked on is actually a built-in package and all you have to do is configure this. Happens to me often.28:54 Tip: Accept being a beginner.Prot: And what can help with blogging, especially once you are blogging about something that you know has a very high skill level, is to approach it in a diary-like way, where it's like, today I learned about such and such. I am not an expert, I am learning, and this is fun. That's your blog post. You don't have to present yourself as the foremost expert on the matter, because then of course you will have to wait many years to write that blog post. Sacha: I think that goes under this separate intuition thing for mindset and accepting the fact that no matter how many years of Emacs experience you have, you're going to be a beginner in 90% of the things that Emacs can do. So we can totally just accept the beginner's mind. There's no need to worry about imposter syndrome because we're all like this. We're all figuring things out. If you want, you can put in a disclaimer. You can say, "I'm totally a beginner. Read this for the idea and not the Emacs Lisp style," if you're embarrassed, you're self-conscious about sharing your code. But yeah, we're all just starting out, essentially. I like the fact that people in the community are so accessible. There's no one really saying, oh, I'm an expert. You should do it. You should do it this way and only this way, because we're all aware that again, we've done it this way, but there are probably five or six other implementations that could be even better that are really out there. Prot: Yeah, exactly. Exactly. Sacha: Charlie says, "The leverage of blogging is unique in the Emacs community. Incredibly supportive, knowledgeable, and social group of people." That's another encouragement to go try it. That is all good. In fact, there are a few days left in this May carnival for "May I Recommend." If other people have recommendations, I'd love to hear about them too. Okay, so let's talk about... Actually, what do you want to talk about? What do you want to talk about? Prot: Let's go and do something with the power users.31:16 Group: Power usersProt: With the power users, of course, you have a group that is, I would think, in some ways more diverse. Because of course there are different ways to become a power user. One, for example, is using Org more; another is using it as an IDE. So the common thread I would say here is that you are the kind of person who is digging deep. That's what you are as a power user. So if you want to become a power user, you have embedded as skills reading manuals and checking the source code, that sort of thing. Sacha: At this point, you're like, "Emacs is going to be my tool. There's a lot of depth to it." And this is where you start reading, okay, "How do I use Org Mode?" Or "How do I set up my IDE so that it's just the way that I want it?"32:13 Tip: Browse through package listsSacha: For fun, I will sometimes look through the package lists just to see what's out there that I can easily reuse. But often, it isn't even a matter of adding additional packages to your configuration.32:25 Tip: Dive deeply into the packages you have: customization options, code, etc.Sacha: It could just be diving deeply into the ones that you do already have, looking for options, looking for little things that you can toggle on and off, or considering how the different functions can be integrated into your workflow.32:41 Tip: find-library gets you to the source code, occur can help you browse itProt: And to this end, I will add something that I do frequently because it combines the elements of what we have already covered, which is M-x find-library. You select the package you are interested in. You go there, then you do M-x occur. And you search for defcustom with a parenthesis in front. "(defcustom". This will produce an occur buffer with all the user options. So you do two things now. You learn about the user options, and you are looking at some source code. That's one way I can start reading source code. Sacha: This goes back to why we don't just tell people... You don't like Customize, so the M-x customize + regular expression is off your list. Just look at the source code. Prot: You'll be happier. Yeah, exactly.33:29 Tip: You can also browse through CustomizeSacha: Browsing through Customize is also an option because it'll tell you about the things. You don't have to use the Customize interface to set it, but I have come across very interesting options that way, just clicking around. Prot: Yeah, for sure. Sacha: @gcentauri's like, yeah, I'm bored, M-x list-packages.33:48 Tip: Have fun with randomness and serendipitySacha: Sometimes I randomize these things. I think for EmacsConf, either last year or the year before, we had random packages being displayed as a screensaver. I know people have sometimes on their dashboards, they'll display random inspirational quotes. It could be a random Emacs package. I think at one point I had it display random interactive functions, just so I could stumble across more commands. Taking advantage of serendipity can be a fun way to squeeze in a little bit of learning. Prot: Nice, nice, yes. That's good. Sacha: All right, so Jason Torres says, "I use custom just to explore."34:32 Tip: Check out people's workflow descriptions and storiesSacha: Another recommendation I'd like to put in here is reading other people's workflow descriptions. Again, going back to blogs and videos and all of that. It's because a lot of these things are not obvious from looking at the source code, but when somebody tells you a story about what problem they had and how they combined pieces of different packages to solve a problem, then it becomes a lot more real. Prot: Yes. Plus, it puts you in the spirit of Emacs, which is you can be creative and piece together different elements of functionality and have a workflow that works for you. Sacha: Let's try plugging in, re-plugging in my webcam. Let's see what happens. Prot: Let's see, let's see. The moment of truth. Sacha: Everyone will just have to imagine my eyebrows of agreement. Okay, so that's the power user. This is how you get even better at it.35:42 Resources: manuals, Mastering Emacs, Emacs Lisp ElementsSacha: I think Mastering Emacs would probably be like a book recommendation in this area. And for customizing Emacs and actually writing Emacs Lisp, there's your Emacs Lisp Elements book. What other things would you recommend aside from, yeah, read the intro to Emacs Lisp and the Emacs Lisp Memo for fun? Prot: Of course, what you have listed there are all useful. The other one would be in the spirit of what we said earlier of trial and error. Learn how to, or rather get in the habit of writing little snippets of code. They don't have to be the best code of your life. Just something that gets the job done. Of course you can improve it later, but by getting in the flow of writing your own code, eventually what happens is you write better Emacs Lisp. You develop intuitions of what could go where, and eventually, before you know it, you are better at Emacs just because you were doing this little routine. Sacha: Noticing the questions. This is also a skill. This is also something that you develop. A lot of times people do not even know what's possible because they're so used to just taking for granted that this is a limitation of the system. So sometimes we have to see somebody else, you know, fly through the code without worrying about like, okay, I have to go do this and do that and whatever. Oh, somebody says it's OBS, thank you. @ashraz has pointed out that OBS has my webcam, which is why the browser couldn't find it. So I will think with that some more, but in any case, we will continue.37:29 Skill: Figuring out what's possible and making a habit of writing tiny functionsSacha: Yes, so figuring out what is possible and then writing a tiny function for it and developing that habit of not tolerating these little bits of friction, I think is a skill. It's a thing you can develop.37:45 Skill: Being mindful of what you do over and over againProt: Yeah, and another skill which is along the lines of writing your own code but maybe also a meta-skill is: be mindful of what you do over and over again. For example, let's imagine now you have a command that switches to the other window and then blinks the cursor or whatever, right? And these are two commands and you do them all the time. You do the one, you do the other, okay? Now you can write one command, which is a wrapper of those two, and all it does is call interactively the first, call interactively the second. Just by piecing those together you already have your own little command.38:26 Tip: Keyboard macros can help you jumpstart custom functionsSacha: Oh, I definitely want to point out here that you can use keyboard macros to generate the Emacs Lisp for it. So even if you're not that comfortable with Emacs Lisp, or you don't remember what the keyboard shortcuts do, you can record a keyboard macro. So you've definitely learned how to do that. And then you can get it to print out the Emacs Lisp that the set of keyboard actions ran. Or at least the Emacs Lisp to repeat the same keyboard shortcuts and then it will all figure it out. Anyway, so that's there. You can save that sequence of commands as a Lisp function in your config. So that's one thing, using keyboard macros to jumpstart your Emacs Lisp.39:11 Tip: Use C-h k (describe-key) to describe shortcuts or menu itemsSacha: And the second thing is using C-h-K or Describe Key to see what a given keyboard shortcut or menu item will actually run. So that's all very useful stuff for figuring out the Emacs list to do something you're doing interactively. Prot: I think that's the most used help command I do. C-h k. It's super useful all the time. It's very, very helpful. And not only you learn what command it calls, but also in which key map it is bound. So for example, C-c C-c in an Org buffer, it is telling you what the command is, and it is telling you this command is bound in the Org mode map. So if you want to change something, you know that you also have to be mindful of the key map. So there is your key map.40:04 Tip: You can set up M-x to show keyboard shortcuts too (Marginalia?)Sacha: Yes, it tells you other shortcuts. Oh, and along those lines, one of the M-x variants shows key bindings as well, which I recommend. If you're a power user, you'd like to become more of a power user, even a regular user, right? You want to start moving to using keyboard shortcuts for your more common commands and setting up your M-x command completion so that it hints at the keyboard shortcuts. Emacs by default also tells you about it after you run a command that had a shortcut. But at least that way, when you're looking through the command list you can see, "Oh yeah, this has a shortcut!" And then you can maybe even cancel out of your M-x and practice using that shortcut right away. Prot: Exactly. Sacha: And along those lines, I like using Marginalia and Consult because then I can see the command descriptions alongside the command name. So there's a little bit more detail there. Prot: Yeah, I think you meant Vertico and Marginalia. Sacha: Oh, yes. It's one of those things, yes. It just works with everything. So yes, Vertico for completions that show you a lot of detail, and then Marginalia to actually show the thing on the side, which is helpful. Prot: Consult is wonderful as well, of course. Sacha: Yes.41:26 Resource: Emacs from Scratch series by System CraftersSacha: @ashraz would like to recommend the Emacs from Scratch series by System Crafters. They say it's a bit dated from 2020, but still mostly relevant in general. There are a lot of video resources out there. Prot: That's good. 2020, oh my goodness. It's been so long, I can't believe it.41:50 Tip: Old tutorials can still be useful, although don't treat them as the sole source of truth (things may have changed since then)Sacha: It's really interesting because I've been trying to organize the tutorial resources that people who are new to Emacs will come across. And a lot of times, some of the Org videos are from 10, 20 years ago. But they're still valid, so we have to make sure people don't immediately get turned off by the date in the video. But at the same time, they can start to tell the difference. Okay, this stuff is still applicable. But this stuff over here, it needs to be translated into how you do it in modern times. It's a little challenging for people to navigate this. Prot: Which of course points to another meta skill which is generally information related to Emacs is useful and it will work long into the future. But don't take a tutorial or a video as the source of truth. Always use it as a proxy. Okay, I get the idea. Now I will have to check the documentation and so on.42:55 Skill: Finding preferred resourcesSacha: I think that part of the learning journey as a user is also finding your preferred resources. A lot of times, you're not going to learn everything the first time around. Everyone thinks in different ways. You do need to spend some time looking for the kinds of resources that jive with the way that you think, with the task that you want to do or the workflow you want to have. It's using the language at the right level for you, et cetera, et cetera. Even knowing, going in, that you're not going to find one-size-fits-all tutorial because Emacs has so many different workflow possibilities... Spending some time to figure out what you like as a tutorial or as a reference, and then going back to that again and again as your understanding develops, I think is a thing worth doing. Prot: Yes, exactly. That's the whole point of Emacs more broadly: that it accommodates the different kinds of people because it's so customizable. If something doesn't work for you, don't try to force yourself to work the way it is. Rather, change Emacs to work the way you think.44:12 Tip: If you find your tribe, look for ways to keep in touch with themSacha: On a meta note, finding people who think the kind of way you do is super helpful, like the tribe within the tribe. For example, you've got this cluster of people who like using Denote because their brain works the same way that yours does when it comes to filing their notes. Once you find that connection, finding ways to keep up with what those people are doing, and often this is RSS because that's a great way to get the updates without getting buried in email. That can be a great way to keep stumbling across things that might help you. Prot: Yes, that's a very good point.45:00 Tip: Manage unequal RSS frequencies with folders or tagsProt: On the topic of RSS, just to say something that I learned many years ago the hard way: RSS works best if you subscribe to resources that don't post 30 or 50 or 100 articles a day. If you subscribe to the BBC or whatever, that will not work because it will crowd out the blog that posts once every month. Sacha: What I do with that is I have different folders. Prot: Folders, filters, etc. Sacha: Yeah, folders or tags or whatever. So all the microblogs or all the very prolific things go into one folder, which I generally ignore because it's hard to go through. Prot: Fair enough. Subscribe. Sacha: Yeah, the people who post once a day or once a week or once a month or once every blue moon, then it's easier to keep up with them because it's not buried in all of that stuff. You can look into your RSS readers to support for keywords maybe in order to do some more filtering and prioritization. This is one of the things that I've always envied about people who use Gnus for reading RSS. Because there's nnrss. Then you can use Gnus scoring to prioritize the RSS items automatically for you. But that's definitely a power user thing, because it's Gnus. Prot: I think that's a power user among power users. That's really an exception.46:33 Tip: Doing more things in Emacs has compounding benefitsSacha: Actually, that touches on an interesting thing about becoming more of a power user of Emacs. If you let Emacs assimilate more of your life, if you start to use Emacs for more and more things, you get not just linear improvements but compounding ones as the things that you have can interact with other things. Even just for the base case of if your to-do list is in Emacs and your coding is in Emacs, then you can create to-do items that link to your code, all the way to if your email is in Emacs, then you can make your to-do refer to your email and stuff like that. Prot: Exactly. That's where it gets really powerful. Sacha: If you want to get even deeper into the power of Emacs, try to push more of your life into it. I love seeing the things that people do with browsing the web in Emacs. What kinds of things do you do in Emacs that make you go like, this is where the power of having everything together works out really well. Prot: You already mentioned them, like email in Emacs together with your agenda, but also Dired, because you can mark files and attach them to the message composition buffer. You can run a M-x shell and your three marked files in Dired, you type w or 0 w and you get their path and then you can do something with them from a shell, if you cannot do it directly from calling a shell command from Dired. There are many ways like that. The keyboard macros where you can jump from a Dired buffer to a shell buffer, or from one buffer to another. All these little things. For me, it's very powerful. You use it all the time.48:31 Tip: Learn to think of it as just textProt: At some point, you don't even think about it. It's just text laid out in windows, each of which shows a buffer. So at some point, it doesn't matter if it's email or programming or prose. At some point, they are all the same. So it doesn't matter at all. Sacha: Developing that mindset of "it's just text" and the facility for working with text, such as keyboard macros, or being able to jump around, or writing your own functions to manipulate it, or even just using isearch to go through it or using undo in different contexts. I think that's definitely something that people develop and when they develop that intuition, it really helps. Prot: Yes, exactly. In the beginning you won't think about those linkages. They won't be obvious to you. But just be mindful that they are there. They are possible. As you use Emacs, at some point you just feel naturally about them, and they happen. You're like, oh yeah, of course that was always possible. Of course, with the benefit of hindsight... In the beginning, you will be like, "Wow, I can do that!"49:46 Tip: Take notes along the waySacha: That's the other reason why I want to encourage people to take notes along the way, ideally sharing them, of course, but even just for yourself, because a lot of times you will get to the point where this is just the way you've always done it. On the other hand, if you had those notes as you're figuring out how to do it, and you share those notes, then you're leaving these breadcrumbs for other people who are traveling down the same or similar path. That's something that would be very helpful for people. Prot: Yeah, exactly.50:16 Tip: Explore different ways to navigate and act on thingsProt: Even if you don't have external packages... For example, a workflow that for me was so powerful that I was like "Yeah, this is the way to go" involved the grep and then editing the grep results. But even if you don't use a bespoke package for that, which of course is also built into Emacs now, the functionality, you can use the grep results just as a way to jump to the result. If you hit RET, it takes you to the buffer at the point where the result is. You can have a keyboard macro that jumps to the result, makes some edit, goes back, jumps to the next result and repeat, right? You can do that even without the package. The point is that you can collect results and edit them in like a second or a minute, whereas you would need literal hours to do that and it would be error-prone.51:09 Tip: Learn to combine different building blocksSacha: Yeah, and this points to the skill of being able to see and work with different building blocks. You have a block for, this is how to navigate. There are different ways to navigate. You could navigate to something based on some matching text, or you can navigate to something based on a line. You can set up your windows so that you can switch between windows or whatever. Then if you can combine that with, okay, these are some building blocks for acting on something, or this is how I can use the kill ring to take it to... or this is how I can use registers so that I can save some text or save a position or whatever else. The more of these building blocks that you can develop slowly, because being able to internalize the concept takes time, then all these different ways that you combine it to solve a problem makes Emacs very powerful. Prot: Yeah, exactly. That's a good way to think of it, as building blocks. Sacha: I don't know how people will do that either, aside from read the manual for fun and watch Emacs videos and read other people's posts. Often I think, what if we make a skill tree, right? Because people like gamification... But then this is going to be a really ridiculous, large skill tree with arrows going all over the place. Prot: No, no, you don't want to do that. It will be the RPG that never ends. There is no final boss. Sacha: @yogi583 asks what is a built-in function's name to edit grep result in Emacs? Prot: I don't know but what I usually do is... Grep edit mode I think. It's new, right? It's new. It's built into Emacs 31 I believe.52:47 Tip: Get the hang of keybinding conventionsSacha: What I think of it is I go to the grep buffer and I press C-x C-q because that's the general "toggle read only"... That's another mental concept there, right? Getting a sense of the key binding conventions that might be translated into different actions in different places. Prot: Yes. There is an annex to the Emacs Lisp manual, the Emacs Lisp reference manual, which talks about the key binding conventions, which is very useful for people to read. Even after you read that, it's a little bit hard to reason about the key bindings if you are getting started, but trust the process. You will see the patterns as you go. Generally, you can expect C-x to be global key bindings, and C-c followed by control something to be major-mode-specific key bindings. Sacha: One of the things I like about reading other people's configs is that they'll rebind something and I'll be like, yeah, I can totally take advantage of that keybind because I'm not using the standard one as much. Prot: Let me tell you about one I used. Of course, there are many, but by default, you close Emacs with C-x C-c. Sacha: Who closes Emacs? Prot: Yeah, people who make mistakes in life, such as myself. So because I would fat finger that the whole time, you want to unbind C-x C-c and then do C-x C-c C-c then you can exit. I would do it by mistake the whole time and I would destroy whatever I was working. Sacha: Yeah, key binding design is this whole other thing that I haven't really mastered myself either. We've talked before about making the key bindings make sense. When they're mnemonic, they're easier for people to remember, right? But this is definitely something that I struggle with. Prot: So think of it this way, of course assuming there is a space for it or you unbind something. C-x something is a global key potentially with a prefix, as a prefix. C-x r is a prefix, C-x p is a prefix and they have global scope, right? If you are doing something that is global in nature, it should work everywhere. You may want to do the same if you are okay with overriding default key bindings, right? Otherwise, you want to do something that is more specific. C-c C-something for a mode. Again, optionally overriding what a major mode is doing. Then you have to work with that. Use mnemonics. Use words that make sense. For example, C-s is the default key for searching. M-s is the prefix for alternative search. Think of it. Alt-S, right? All the alternative kind of searches, such as M-s o, right? So you can now think of M-s and then g would be my grep. M-s and f would be my find and so on. You can think in concepts like that.56:06 Tip: Use which-key for keybinding helpSacha: When in doubt, keep which-key enabled so then it will remind you at least of what else you've had configured for that prefix. That's the other recommendation. which-key mode, it's built in now. Just go use it. Prot: Yeah, which-key mode is very useful. If you are using the Embark package, it has a key that will take over C-h. So actually that works even with default. If you type an incomplete key sequence, C-h will produce a listing with all the keys that complete that sequence. So it will be a help buffer that will tell you, okay, C-x, C-h, for example, will list everything that follows C-x. And it will name the command and all that. So that's also something to consider. I think if Embark were to add the which-key functionality where it's like C-h on a timer, I think then Embark would be a straight upgrade over which-key. In that regard. So Omar, if you are listening... Asking for a friend. Sacha: @gcentauri says, "I recommend learning how to define a key map and put it under a leader key. I have M-m as my personal key map and then the things I find very useful I add to my key map." For this one, I've been experimenting with bind-key, which makes all of this stuff much easier in terms of defining prefix key and adding a docstring and all those other lovely things.57:41 Tip: Figure out your ergonomicsSacha: I like your other meta tip about experimenting with how your keyboard is set up. So for example, even on my laptop... I have a ThinkPad. So even on my laptop keyboard, there's no QMK, but I can use Kanata, which you've also recommended elsewhere. to try experimenting with one-shot modifiers and home row mods or other things like that that I want to, making it easier to press key bindings that have different modifiers. I don't want to have to press ctrl and shift and super all at the same time. If I set up one-shot modifiers, I can just tap tap tap and it becomes easier to press. Prot: Yes, exactly. That opens up a lot of possibilities in terms of mnemonics, but also in terms of prefix combinations and all that. You can go a very long way. Sacha: And I think there's a meta thing here also about getting a sense of what would make it easier for you to be able to continue enjoying this long term? Because RSI is not conducive to enjoying Emacs long term. Prot: No. For sure. Something that I think I learned the hard way through pain is that you want to consider your desk, how you sit at the desk - you want to consider everything, not just the keyboard. For example, I have adopted a standing desk since forever. I do that all the time. I never sit, because it works better for me. I have the keyboard set up the way that makes sense to me. I can write all day. It's what I do. I don't have any pain. Whereas before I would sit on an awkward chair, the desk was not optimized, the keyboard was definitely not something I had thought of, and I had pain. It was really difficult, and I reached the point where I couldn't write. I was like, okay, I have to quit. Sacha: If Emacs is something that pays off better in the long term, it's good to have a long term. Prot: Exactly. Sacha: Speaking of my very short term, in about one minute, I'm going to go off and help with the kiddos' lunch break. I very much appreciated this brain dump. This is great. I'm going to do all the usual transcription and things like that, start pulling out some of these ideas. Chat, if you found anything super interesting that you would like fleshed out into a blog post, say it so we know what to focus on for priorities, right? This was a lot of fun. Are there any key recommendations you want people to make sure they check out or is it just generally like, everyone...? Prot: No, I think what you have here is good because, of course, you can always say more. So I will conclude with what I started. Less is more, seriously. For life, not just for email. Sacha: Your brain is surprisingly small. If you break what you learn down into tiny steps, you have a higher chance of it actually sticking. Once you get something in, then it makes things a little bit easier. You have a little bit more space to learn the next thing, and so on and so forth. Otherwise, if you bite off too much, you get overwhelmed. Prot: Very nice, very nice. And that ties into the lunch break. Yes. Sacha: All right. Thank you so much. I will skedaddle and yeah, I will do all the things afterwards. Thanks everyone also for dropping by and hanging out. All right. See you around. Prot: Take care. Take care. Goodbye. Goodbye.Chat
- ChristianTietze: βπ₯
- protesilaos: βHello world!
- MichaelVash7886: βhello Prot
- ChristianTietze: βIn (comparatively) ice cold Germany we had ~30ΒΊC this week and there's Prot with 3 layers of clothes π
- chelmikador: ββHello!!
- gcentauri: βHello!
- gcentauri: βtotally
- gcentauri: βnerd sniping minefield
- gcentauri: βEmacs gives us Discoverability, and learning which tools enhance it for you is really important. Consult for example, and Helpful
- sachactube: ββhttps://pad.emacsconf.org/yay-emacs
- gcentauri: βi was literally doing that last night before bed
- gcentauri: βi came across the Forms library I had no idea existed
- CharlieBaker707: ββedebug + ert tests changed the way I develop elisp! No longer flying blind π€£
- ChristianTietze: βend-to-end tmux snapshots – you can assert on the modeline contents and other 'ui' of Emacs too, at least in terminal rendition of course
- gcentauri: βbecause in Lisp its lists all the way down :)
- CharlieBaker707: ββsomething I love doing is, after I've learned that 1 function, at a later point I'll meta-x for that package's namespace, then embark-collect into a buffer and explore what other user-facing exist.
- sachactube: ββugh hang on
- CharlieBaker707: βStole that trick from Prot ;-)
- ChristianTietze: βπΆ
- sachactube: ββhahaha, you can just keep braindumping tips while I panic
- sachactube: ββI will continue to panic
- blaiseutube: ββdon't panic
- CharlieBaker707: βwe can hear you!
- CharlieBaker707: βbut not Prot :-D
- blaiseutube: ββoooh much better!
- yogi583: ββwe cant hear prot
- blaiseutube: βprot is too quiet
- gcentauri: β@sachactube - prots audio is very low
- renaudbussieres: ββIs Prot only in your headphones?
- sachactube: ββI will look into that
- blaiseutube: βhis audio is completely different
- chelmikador: ββnow!
- yogi583: ββwe can hear him
- blaiseutube: βyes!!!
- CharlieBaker707: ββloud and clear Prot!
- MichaelVash7886: ββall set now
- gcentauri: βYes!
- gcentauri: βgood!
- blaiseutube: βperfect!
- blaiseutube: βooooh, Cyprus is nice
- blaiseutube: βMassachusetts is also 20C
- ashraz: ββIs prot's sound only clipping for me a bit or also for others?
- MichaelVash7886: ββmaybe a little but it's not bad on my end
- sachactube: ββThat was me because I panicked about audio, returned to normal levels now
- CharlieBaker707: ββThe leverage of blogging is unique in the Emacs community. Incredibly supportive, knowledgable, and social group of people.
- gcentauri: βWe always need beginners to show us where things actually DONT make sense! A beginners mind see's all possibilities
- gcentauri: βyep. "i'm bored, M-x list-packages"
- gcentauri: βyeah i use Custom just to explore
- gcentauri: βDiscoverability!
- gcentauri: β(btw this is shoshin from elsewhere)
- renaudbussieres: ββ"M-x apropos-user-options" is another way to browser customizable options :)
- gcentauri: β@sachactube we can see you in the lower right, you've somehow gone to having your video floating
- ashraz: ββ@sachactube Your webcam is shown as an overlay over the chat, which may be the reason why it cannot be shown a second time on Firefox
- ashraz: ββ*Chrome
- blaiseutube: ββBRB
- sachactube: ββthanks!
- blaiseutube: ββ…. seems like a "config profiler" would be handy, to produce a human readable summary of settings.
- ashraz: ββI also liked the Emacs From Scratch series by System Crafters. It's a bit dated (from 2020), but still mostly relevant in general, IIRC.
- ashraz: ββ@blaiseutube Profiler as in loading time, or in "what is actually in that profile"?
- gcentauri: βis that Marginalia?
- ashraz: ββ@gcentauri Aye, marginalia shows the shortcuts.
- gcentauri: βnot Marginalia
- gcentauri: βi think maybe Vertico
- ashraz: ββ2020 predates the minad-stack (vertico, marginalia, orderless, consult, corfu), it used ivy, swiper and company.
- ashraz: ββBut the mindset is still in that series π
- valentinoslavkin6116: ββYeah, emacs from scratch is pretty good. Maybe it could explain a bit more the language or the use-package macro, but it works regardless
- MichaelVash7886: βyeah I haven't watched the series as so much changed since then
- sachactube: ββblaiseutube config profiler sounds interesting, what did you have in mind?
- yogi583: ββwhats the builtin function's name to edit grep result in emacs?
- gcentauri: βNeed multiple skill trees
- gcentauri: βdifferent character classes
- ashraz: ββ@gcentauri Also different positions on the alignment chart.
- bledley99: ββLovely people, been watching/reading you two for years. Thanks for all you do. π
- gcentauri: βI recommend learning how to define a keymap and put it under a leader key. I have M-m as my "personal-keymap" and then the things i find very useful i add to my keymap
- gcentauri: βand +1 which-key
- ashraz: ββSee `D.2 Key Binding Conventions` in the manual for the conventions (for package maintainers)
- ashraz: ββ*in the elisp manual, not the emacs one.
- renaudbussieres: ββI find "leader key" strategies better too, for example the C-x keymap, displayed with which-key, is too crowded and diverse to make sense
- gcentauri: βyes - i had to switch to xah-fly-keys because of RSI
- gcentauri: βbut Emacs can change and adapt to YOU! which is important
- MichaelVash7886: βI want to look at Meow at some point for a leader key and modal editing
- valentinoslavkin6116: ββMeow is really great
You can e-mail me at sacha@sachachua.com.
-
π r/Leeds Nice to see parents showing their children how to cross the road rss
submitted by /u/liquiiiid
[link] [comments] -
π r/Yorkshire A beautiful spot to swim rss
| submitted by /u/Wonderful-Bonus5439
[link] [comments]
---|--- -
π r/LocalLLaMA PSA rss
| submitted by /u/Signal_Ad657
[link] [comments]
---|--- -
π r/york Keys by the side of the road, just round corner from doddy avenue, before the park. rss
| We've seen this on the floor leading to the traffic lights before yearsley swimming baths. Left em on the fence. Hopefully someone gets em back submitted by /u/Radiant_Office6445
[link] [comments]
---|--- -
π r/Yorkshire The yorkshire vs. not yorkshire map rss
| submitted by /u/Ready_Split1335
[link] [comments]
---|--- -
π r/reverseengineering Ghidra 12.1.1 has been released! rss
submitted by /u/ryanmkurtz
[link] [comments] -
π MetaBrainz Picard 3 beta 3 released rss
Today, we're making available another pre-release version for the upcoming MusicBrainz Picard 3. This beta release offers various bugfixes and improvements over the last beta. Most notably the release lookup and matching was improved, several cover art related issues were fixed, the UI got more responsive during file load and the log view became faster and allows better filtering.
Download links and a detailed list of changes since Picard 3 beta 1 are available below. For a more detailed overview of what is new in Picard 3 please see the previous blog post Picard 3 Alpha Release.
While we have all the major features implemented and with the latest bug fixes we are confident in the current code, this is still a pre-release and there might be bugs. If you use this, do so with care, backup your files and please report any issues you encounter.
Some of the changes are also backward incompatible, hence we recommend you make a backup of your Picard.ini config file before trying the beta version. You can do so in Picardβs Options under Advanced > Maintenance.
Whatβs new?
Bugfixes
- PICARD-2376 - Log view becomes unresponsive on long list
- PICARD-3194 - Custom column
%_musicbrainz_discids%or%compilation%only displays value on track level - PICARD-3256 - Preferred Releases always saved in alphabetic order
- PICARD-3258 -
tagger.remove_albumcrashes insideregister_album_metadata_processorhandler - PICARD-3265 - Translation locale selection does not sort locales by UI language
- PICARD-3267 - macOS app claims to support macOS 11.0, but minimum supported version for Qt 6.11 is macOS 13.0
- PICARD-3272 - "Never replace selected cover image types" ignored
- PICARD-3274 - Crash after removing last item in standalone recordings
- PICARD-3275 - Default optical drive always used regardless of which drive is selected in Lookup CD drop down
- PICARD-3277 - Cover art to be saved as external files has no types and comments set
- PICARD-3278 - Non-front CAA cover art images replace front cover
- PICARD-3279 - Cover art column does not update for tracks
- PICARD-3281 - Improve UI responsiveness during scan of many files
- PICARD-3287 - Context menu is missing "Expand all", "Collapse all" and "Select all" entries
- PICARD-3290 - Built-in player prevents file write access
- PICARD-3294 - "Never replace cover image" options only run on image loading
- PICARD-3295 - Track loses original cover art when file gets removed
- PICARD-3297 - Cover art "Show more details" failing after clustering
New Features
- PICARD-2197 - Use artist aliases to find a more appropriate artist sort name for the artist credit
Improvements
- PICARD-3299 - New debug options "plugin_development" and "coverart"
- PICARD-2867 - Improve matching and lookup by utilizing barcode
- PICARD-3163 - Make using artist sortname for translation optional, disabled by default
- PICARD-3261 - Simplify Unicode characters when saving tags with non-Unicode character set
- PICARD-3262 - New
picard-plugins --initcommand to initialize a new plugin directory - PICARD-3264 - Improved alias selection for artist, album and track translations
- PICARD-3269 - Make ISWCs available as
%_iswc%variable - PICARD-3283 - Add stop button for pending network requests
- PICARD-3284 - Improve release matching with tiered scoring and identifier support
- PICARD-3285 - Add a button to clear the network cache
- PICARD-3286 - Log View dialog: performance issues, limited filtering, and UX improvements
- PICARD-3289 - Allow user to set the default log level used when Picard is started
- PICARD-3291 - Utilize barcode/catno/date from file tags for better release matching
- PICARD-3296 - Adjust Haiku platform detection to changes in Haiku's latest Python versions
- PICARD-3298 - Plugin options UI improvements
Download
We appreciate your interest in trying this new version. Use with care, backup your files and please use theMetaBrainz community forums and the ticket system to give feedback and report bugs.
For Windows and macOS you can download the beta version from the Picard download page. Linux users can run from source or try the beta channel of the Picard snap package.
The minimum supported macOS version for this beta is macOS 13.0 "Ventura". This is the same as for the previous beta, but there Picard wrongly reported to be compatible with macOS 11.0. We are looking into options to lower the macOS requirements for the final release of Picard 3, but this is not yet decided.
Picard is free software and the source code is available on GitHub.
For anyone wondering if they missed beta 2: We had the version updated for beta 2, but we never released it and instead had further changes that got now released as beta 3.
Acknowledgements
Code contributions by Bob Swift, Laurent Monin, OscarL and Philipp Wolfer. Translations were updated by Marc Riera (Catalan), mfmeulenbelt (Dutch), RT2231 (Japanese), salo.rock (Italian), Vaclovas Intas (Lithuanian) and Wonordel (Russian).
-
π @binaryninja@infosec.exchange The Notebook in Sidekick 26.0 is where you turn chat work into something that mastodon
The Notebook in Sidekick 26.0 is where you turn chat work into something that sticks. It is a persistent workspace where you track analysis goals and record outcomes. Sidekick reads it as context in Chat, so it can build on what you already established across turns and sessions. https://docs.sidekick.binary.ninja/guide/notebook.html
-
π r/york Cliffordβs Tower rss
Anyone know whatβs happened at cliffordβs tower today?
multiple ambulances, police vans and cars and an air ambulance.submitted by /u/A_G_W_E
[link] [comments] -
π r/Yorkshire Just out with my dog in wonderful Yorkshire! rss
| submitted by /u/Expensive-Garden-363
[link] [comments]
---|--- -
π r/Yorkshire Unexpected rss
| We stopped at Exelby Services yesterday and were β¦ a little surprised! β¦ to see this Hawk trainer. Not even queuing for fuel, just resting, apparently. Had it landed short at Leeming, perhaps? submitted by /u/Inevitable-Debt4312
[link] [comments]
---|--- -
π r/Leeds Is Uni of Leeds very middle class? rss
Iβm debating between choosing Uni of Leeds or Sheffield, and Iβm slightly concerned about feeling out of place as Iβm from a working class, northern background. Going as a mature student (22F), but still love clubbing, indie pubs/bars etc and want a good social life there
submitted by /u/JealousBodybuilder42
[link] [comments] -
π r/wiesbaden Arbeitsrecht Anwalt rss
Hello I am looking for an English speaking Arbeitsrecht Anwalt. Kindly recommend. I also speak basic German and have a legal insurance from Advocard
submitted by /u/Fit-Classic-3102
[link] [comments] -
π r/york Things to do over summer as a Uni Student rss
Hi everyone!!
University has broken up over the summer and my Partner and friends are going home but I have to stay In York for work and I was wondering if anyone had any interesting things to do in York so Iβm not at home on my own like I was over Christmas.
I want to do somthing with my time and hopefully meet some interesting people so any suggestions would be appreciated!!
submitted by /u/Due_Opinion2711
[link] [comments] -
π r/york Shambles, Minster, Castle Museum in a day? rss
Hi, I have a lovely city break in York coming up, excited!
I initially planned: 1st day, take my time getting up there (train from London), book in to accomodation, chill, nice meal etc.
2nd day: Sight-seeing: Breakfast, then Shambles quite early like 9 am or before to look around, take some photos. 10 ish or max 11 ish till 1 ish York Minster, (not the bit you climb up, but the rest), lunch, 2 ish - 5 Castle Museum.
3rd day, check out about 11, go to train station, back to London. Chill etc.
But I've been thinking of changing my train ticket, getting up to York earlier, check in at 2 then 3 or 3-ish until 5 see York Minster on that first day. And that 2nd day, Shambles and Castle Museum.
It will be about Β£40 to change my ticket if I do this. Have a potentially nice seat on the train.
What are your thoughts?
submitted by /u/cyankitten
[link] [comments] -
π ArchiveBox/ArchiveBox v0.9.33rc43 release
release: archivebox 0.9.33rc43
-
π ArchiveBox/ArchiveBox v0.9.33rc42 release
release: archivebox 0.9.33rc42
-
π r/Yorkshire Godβs own country β€οΈ rss
| submitted by /u/BillNo874
[link] [comments]
---|--- -
π ArchiveBox/ArchiveBox v0.9.33rc41 release
release: archivebox 0.9.33rc41
-
π ArchiveBox/ArchiveBox v0.9.33rc40 release
release: archivebox 0.9.33rc40
-
π ArchiveBox/ArchiveBox v0.9.33rc39 release
release: archivebox 0.9.33rc39
-
π ArchiveBox/ArchiveBox v0.9.33rc38 release
release: archivebox 0.9.33rc38
-
π r/wiesbaden Jobs in Wiesbaden rss
Hallo
ich bin aktuell auf der Suche nach einem Job, am liebsten in Vollzeit. Ich bin 21 Jahre alt.
Bisher habe ich 5 Jahre Erfahrung in der Gastronomie gesammelt - sowohl hinter der Bar als auch im Service/ Kellnern. AuΓerdem habe ich 4 Jahre als Babysitterin gearbeitet und bereits Erfahrung im BΓΌrobereich gesammelt.
Ich bin jedoch auch offen fΓΌr neue TΓ€tigkeitsbereiche und wollte hier mal nachfragen ob jemand etwas weiΓ oder tipps hat wer derzeit einstellt :)submitted by /u/Ok-Future5630
[link] [comments] -
π r/Leeds lovely sunrise over the city this morning <3 rss
submitted by /u/fluxpeach
[link] [comments] -
π ArchiveBox/ArchiveBox v0.9.33rc37 release
release: archivebox 0.9.33rc37
-
π r/Harrogate Traffic lights in Killinghall. rss
Stuck on red coming from Ripon end, queue back to the junction, bloke in the van just saying 'I know' when anyone tells him including me. Consequently took me over 15 minutes to get through & everyone behind is now irate & blasting their horns. 3 more useless biffers stood around at the other end laughing when anyone told them.
Who the f**k is responsible for these inept dickheads?
submitted by /u/E5evo
[link] [comments] -
π r/Harrogate Hidden Victorian Spa Chamber under the Cairn Hotel rss
| ποΈ The Cairn Hotel, located on Ripon Rosd in Harrogate, is a Victorian property dating back to the mid-1800s, starting life as a grand private residence. It became a hotel in 1890 and by the early 1900s was a popular hydrotherapy retreat known as The Cairn Hydro, boasting its own bathhouse and bathing chambers which rivalled the nearby Royal Baths at the height of Harrogate's 'spa town' fame. Today, the 135-room hotel is owned by the Newcastle-based Strathmore Hotels group. The original baths and spa features remain intact today, though derelict and permanently closed to the public. submitted by /u/LostPlacesUK
[link] [comments]
---|--- -
π r/Yorkshire First time at Flamborough head, just incredible! rss
| With huge numbers of sea birds both in the water and clinging to the cliffs like bats in a cave. Seals bobbing like corks and a colony on the rocks, wind blown waves, marsh orchids and... my words are too small. Enjoy the pictures. submitted by /u/Still_Function_5428
[link] [comments]
---|--- -
π r/LocalLLaMA llama: use f16 mask for FA to save VRAM by am17an Β· Pull Request #23764 Β· ggml-org/llama.cpp rss
| now you can download more VRAM ;) (by downloading new llama.cpp version) submitted by /u/jacek2023
[link] [comments]
---|--- -
π pydantic/monty v0.0.18 - 2026-05-29 release
What's Changed
- switch
pre-commit->prekby @samuelcolvin in #392 - gc: properly release references held by values in cycles by @davidhewitt in #399
- bump to Rust 1.95 by @davidhewitt in #401
- fix GC tracking for
datetime.tzinfoby @rsr5 in #397 - clean up some dict view implementations by @davidhewitt in #402
- convert
py_reprmethods to take&mut VMby @davidhewitt in #403 - make
Taskhave owning references to its coroutine / gather by @davidhewitt in #404 - fix hash equality for trivial types by @davidhewitt in #405
- further isolate unsafe code within
Heapimplementation by @davidhewitt in #406 - fix: parse errors must not leak ruff AST Debug formatting by @smigolsmigol in #390
- ci: fix lint failures from nightly clippy by @davidhewitt in #415
- Add
gc.collect()function only withtest-hooksfeature by @davidhewitt in #398 - merge lifetimes in
VMto a single lifetime by @davidhewitt in #416 - fix lifetimes from conflicting merges to
mainby @davidhewitt in #417 - fix
no active framepanic on duplicate coroutine ingatherby @rsr5 in #410 - cache the hash value of interned / static strings by @davidhewitt in #418
- fix: avoid panic when list.sort() key callback mutates the list by @SAY-5 in #413
- implement "trial deletion" GC to collect cycles by @davidhewitt in #407
- reject reusing an already-awaited external future via
gatherby @rsr5 in #420 - Add dart/flutter bindings by @runyaga in #414
- inline hash caching directly into relevant types by @davidhewitt in #422
- Fix async external function exception propagation by @vivekraghuram in #424
- note that
make install-pyis often necessary in CLAUDE.md by @davidhewitt in #426 - fix typo in CLAUDE.md by @davidhewitt in #427
- fix exception stack corruption in various
raisecases by @davidhewitt in #428 - avoid unbounded recursion in two tuple traversal cases by @davidhewitt in #429
- move all
Stringheap allocation to go throughallocate_stringhelper by @davidhewitt in #430 - Bound AST depth produced by folding flat elif and bool-op chains by @dsp-ant in #437
- Pre-check requested size in bytes(int) constructor against resource l⦠by @dsp-ant in #435
- Clean up compiler - no longer emit dead code, simpler exception handlers, ensure jumps hit the same depth by @davidhewitt in #432
- agents: note that certain heap operations only need
&Heapby @davidhewitt in #441 - refactor
GatherFutureto be a state machine by @davidhewitt in #433 - fix panic on duplicate parameter names by @smigolsmigol in #382
- only swallow
AttributeErroringetattrby @davidhewitt in #442 - deduplicate source lines in tracebacks by @davidhewitt in #443
- fix more panics by @davidhewitt in #372
- fix further panics in integer operations by @davidhewitt in #444
- optimize operand load on bytecode loop by @davidhewitt in #446
- simplify jump calculation by @davidhewitt in #445
- refactor futures to have state machines like gather by @davidhewitt in #447
- Bound except-clause tuple matching by the recursion-depth limit by @dsp-ant in #439
- Bound container pre-allocation driven by iterator size hints by @dsp-ant in #434
- optimize cycle collector to have per-node work stack, not per-edge by @davidhewitt in #450
- move limits in the compiler to return syntax errors rather than panic by @davidhewitt in #449
- enforce JSON integers do not exceed Monty's BigInt limits by @davidhewitt in #431
- avoid unbounded recursion in
monty_to_pyby @davidhewitt in #453 - avoid UB in
Heap::dec_refby @davidhewitt in #451 - Implement
openbuiltin, with limitations by @samuelcolvin in #456 - add more limitations by @samuelcolvin in #460
- clean up unsupported results in
evaluate_functionby @davidhewitt in #463 - avoid panic on string id 128..255 by @davidhewitt in #466
- collect cell vars from
for/while/ifcontrol flow expressions by @davidhewitt in #465 - Context manager support by @samuelcolvin in #462
- Implement buffered
open()methods by @samuelcolvin in #461 - move
value_to_i32by @samuelcolvin in #468 - fix(repl): Add local/global store operation in comprehension expressions by @Embers-of-the-Fire in #297
- Ruff depth limit by @samuelcolvin in #391
- fix: name-based identity and equality for external function values by @mbeschastn0v in #458
- Cap comprehension generator count to prevent compiler stack overflow by @samuelcolvin in #470
- fix overlay append quota by @samuelcolvin in #472
- Fstring precision limits by @samuelcolvin in #474
- fix(file): do not serialize OpenFile buffer_meta cache across snapshots by @samuelcolvin in #471
- proc macro for function signature parsing by @samuelcolvin in #467
- apply
INT_MAX_STR_DIGITSguard to natural JSON BigInt path by @samuelcolvin in #475 - prep v0.0.18 release by @samuelcolvin in #476
New Contributors
- @smigolsmigol made their first contribution in #390
- @SAY-5 made their first contribution in #413
- @vivekraghuram made their first contribution in #424
- @dsp-ant made their first contribution in #437
- @mbeschastn0v made their first contribution in #458
Full Changelog :
v0.0.17...v0.0.18 - switch
-
π r/reverseengineering Technical Brief of Planck-99: 34ns Deterministic Malware Classification on MCU-class Hardware (Zero FPU, 27KB footprint) rss
submitted by /u/Decent-Assistance-50
[link] [comments] -
π r/LocalLLaMA Beware!! Users trying to fork and steal your projects rss
| Context!
User u/Worried_Goat_8604 claimed to have made a similar but unrelated project to my SmallCode. He framed it as "I made this before you, but we can collab if you make me co- founder". In reality, he made a low effort fork of MY project 2 days ago and is trying to peddle it off as his own!! Beware of people trying to takeover your project like this. It really is an unneeded stain on the open source community that scammers like this are out here trying to leech off other people's hard work! My repo: SmallCode
His fork: LightAgent Edit, we got em boys https://github.com/noobezlol/lightagent/pull/3
Thank you!! submitted by /u/Glittering_Focus1538
[link] [comments]
---|--- -
π mahmoudimus/ida-sigmaker v1.7.3 release
sigmaker.py - IDA Python Standalone Python Release
Release Information
- Version : 1.7.3
- Source : https://github.com/mahmoudimus/ida-sigmaker
- Author : @mahmoudimus (Mahmoud Abdelkader)
What changed
Changed
Find shortest unique signature for current functionis dramatically faster on large databases. The search now scans the database once per starting point to seed a set of candidate match offsets, then refines that set in memory as the signature grows, instead of re-scanning the whole database on every byte. A function that previously took minutes now finishes in seconds. (#33)- The live
Matches:count is back, and exact. Candidate refinement tracks the surviving match count for free at every step, so theCreate unique signaturewait box shows the real count again and the function-search wait box shows an exact inner count instead of the temporary2+placeholder. (#27, #33)
Fixed
- The
Start Profiling/Stop Profilingmenu items now appear. They were attached at plugin init, before IDA builds its menus, so they silently never showed. They are now attached through the disassembly right-click popup, grouped with the main action under aSigMakersubmenu. (#33)
Internal
- New
SignatureSearcher.find_all_offsets(seed scan returning raw buffer offsets) and_refine_offsets(in-memory candidate refinement). Uniqueness checks belowMIN_USEFUL_SIG_BYTESuse a cheap early-bail probe so the enumerating seed scan is deferred until the pattern is long enough to be selective. (#33) - Cancellation polling in the scan loops is throttled (every 65536 matches) so
idaapi.user_cancelled(), which pumps the UI event loop, does not dominate a scan over a common pattern. (#33) - Signatures produced are byte-identical to 1.7.2; the change is purely how quickly they are found and that exact match counts are restored. (#33)
Description
This is a standalone release of the IDA Pro signature maker plugin. The file
sigmaker.pycontains the complete plugin code that can be directly imported into IDA Pro.Installation
- Copy
sigmaker.pyto your IDA Pro plugins directory - Restart IDA Pro
- Use Ctrl+Alt+S to access the Signature Maker menu
License
See the main repository for license information.
-
π r/LocalLLaMA StepFun 3.7 Flash rss
StepFun dropped Step 3.7 Flash, 196B total / 11B active MoE, runs locally on 128GB RAM
It's a multimodal MoE (196B total params, only 11B active) with a built-in 1.8B ViT for vision.
Benchmark highlights vs. other flash-tier models:
- SWE-Bench Pro: 56.26% (beats DeepSeek V4 Flash at 55.6%, matches Gemini 3.5 Flash at 55.1%)
- DeepSearchQA F1: 92.82%, competitive with GPT 5.5 (93.98%)
- HLE w/ tools: 47.2%, solid for a flash-class model
Essentially punches well above its active parameter weight on agentic and coding tasks. If you've got the RAM for it, looks like a genuinely interesting local option, especially for agent workflows.
Available on OpenRouter and NVIDIA NIM if you don't want to self-host.
submitted by /u/Everlier
[link] [comments]
-
- May 28, 2026
-
π IDA Plugin Updates IDA Plugin Updates on 2026-05-28 rss
IDA Plugin Updates on 2026-05-28
New Releases:
Activity:
-
π Simon Willison Claude Opus 4.8: "a modest but tangible improvement" rss
Anthropic shipped Claude Opus 4.8 today. My favourite thing about it is this note in the release announcement:
Users will find Opus 4.8 to be a modest but tangible improvement on its predecessor. Thereβs still more to be done: weβre working on developing and releasing models that provide many of the same capabilities as Opus at a lower cost.
It's so refreshing to see an AI lab honestly describe a release as a minor incremental improvement over the previous model!
Honesty seems to be a theme. Here's my other favorite note from that announcement:
One of the most prominent improvements in Opus 4.8 is its honesty. We train all our models to be honest---for instance, to avoid making claims that they can't support. But a general problem with AI models is that they sometimes jump to conclusions, confidently claiming to have made progress in their work despite the evidence being thin. Early testers report that Opus 4.8 is more likely to flag uncertainties about its work and less likely to make unsupported claims. This is borne out in our evaluations, which show that Opus 4.8 is around four times less likely than its predecessor to allow flaws in code it has written to pass unremarked.
That linked system card includes the following:
Claude Opus 4.8 had the lowest incorrect-rate of the six models on every benchmarkβthe most direct measure of factual hallucination. It achieved this mainly by abstaining on questions about which it was uncertain rather than by answering more questions correctly.
Model characteristics
Not much has changed since 4.7.
It's priced the same as Opus 4.5/4.6/4.7 - $5/million input and $25 per million output. "Fast mode" is twice that price, which is a significant reduction from their previous models - fast mode on 4.6/4.7 remains at $30/$150. Note that fast mode is only available to organizations that are part of the research preview, "Contact your account manager to request access".
Both the reliable knowledge cutoff and the training data cutoff are January 2026, the same as for 4.7.
The context window is still 1,000,000 tokens, and the max output is 128,000 tokens.
The What's new in Claude Opus 4.8 document has some of the more interesting details. These caught my eye:
Mid-conversation system messages. Claude Opus 4.8 accepts
role: "system"messages immediately after a user turn in themessagesarray (subject to placement rules). This lets you append updated instructions later in a long-running conversation without restating the full system prompt, which preserves prompt cache hits on the earlier turns and reduces input cost on agentic loops.See also this update to the Anthropic Python SDK. Being able to steer the system prompt mid-conversation sounds really powerful. I was worried this would be incompatible with the abstraction provided by my own LLM library, which expects a single system prompt per conversation... but it turns out my recent redesign should handle that just fine.
Lower prompt cache minimum. The minimum cacheable prompt length on Claude Opus 4.8 is 1,024 tokens, lower than on Claude Opus 4.7.
I checked and 4.7's minimum was 4,096.
And some pelicans
Here are pelicans riding bicycles for all five thinking levels,
low,medium,high,xhigh, andmax:This time I ran them using the LLM CLI, exported the logs to Markdown and then had Claude Opus 4.8 build me an HTML tool that could render that Markdown with the
svgfenced code blocks displayed as SVGs on the page.(I later had GPT-5.5 xhigh in Codex update that code to remove any XSS holes. I'm sure Claude could have done that if I'd asked, but GPT-5.5 is my code security blanket at the moment.)
The max one was clearly the best, but it did take 25 input, 17,167 output tokens for a total cost of 43 cents!
You are only seeing the long-form articles from my blog. Subscribe to /atom/everything/ to get all of my posts, or take a look at my other subscription options.
-
π r/reverseengineering VMP 3.5+ Internal Architecture & Heap Dispatch Analysis rss
submitted by /u/CiupiXs
[link] [comments] -
π r/Yorkshire Bridlington beach by moonlight rss
| submitted by /u/Still_Function_5428
[link] [comments]
---|--- -
π HexRaysSA/plugin-repository commits sync repo: +1 release, ~1 changed rss
sync repo: +1 release, ~1 changed ## New releases - [IDASQL](https://github.com/allthingsida/idasql): 0.0.15 ## Changes - [IDASQL](https://github.com/allthingsida/idasql): - 0.0.1: archive contents changed, download URL changed -
π r/LocalLLaMA I've just benchmarked myself: rss
| submitted by /u/JLeonsarmiento
[link] [comments]
---|--- -
π mahmoudimus/ida-sigmaker v1.7.2 release
sigmaker.py - IDA Python Standalone Python Release
Release Information
- Version : 1.7.2
- Source : https://github.com/mahmoudimus/ida-sigmaker
- Author : @mahmoudimus (Mahmoud Abdelkader)
What changed
Added
- Live wait-box progress for the
Create unique signatureandFind shortest unique signature for current functionactions. The wait box updates as the search runs: current signature length and elapsed time for both, plus function bounds, current anchor, inner-search bounds, best size, and candidate count for the function search. (#27, #30) - Self-describing wait boxes. Every action's wait box now leads with the action name and a one-line explanation of what it is doing, so a screenshot always identifies which action produced it. (#30)
start_profiling/stop_profilinghelpers, exposed asEdit/Pluginsmenu actions, for capturing a cProfile dump of a slow run from inside IDA. (#30)
Changed
Find shortest unique signature for current functionis dramatically faster. Uniqueness checks now stop at the second match instead of enumerating every match in the database, and the segment buffer is loaded once per search instead of once per growth step. A function search that previously took minutes on a large database now completes in seconds. (#31)- Wait-box refresh throttle default is now 1 second (previously 100 ms), so the box does not repaint faster than it can be read. (#27, #30)
Removed
- The live
Matches:count is temporarily removed from theCreate unique signaturewait box. Counting every match on every growth step was the search's bottleneck; the wait box still shows the growing length and elapsed time. A future release restores an exact count cheaply via incremental candidate refinement. (#27, #30)
Internal
MinimalFunctionSignatureGeneratordecodes each function instruction once up front and grows anchors over the cached data, instead of re-decoding per anchor. (#31)SignatureSearcher.is_uniquestops at the second match;count_matchesstill enumerates fully for callers that need the exact count (such as partial-on-cancel). (#31)- The compiled
_speedupsSIMD extension now loads from a sibling directory when the package-level import resolves to a namespace package without a matching compiled build (dev and symlink layouts). (#31)
Description
This is a standalone release of the IDA Pro signature maker plugin. The file
sigmaker.pycontains the complete plugin code that can be directly imported into IDA Pro.Installation
- Copy
sigmaker.pyto your IDA Pro plugins directory - Restart IDA Pro
- Use Ctrl+Alt+S to access the Signature Maker menu
License
See the main repository for license information.
-
π jesseduffield/lazygit v0.62.1 release
This fixes a regression (crash) introduced in 0.62.0. For the full list of changes in 0.62, see here.
What's Changed
Fixes π§
- Fix crash when keybindings are disabled that normally show in the status bar by @stefanhaller in #5655
Docs π
- Add docs for how to add the default, non-pager diff to the list of pagers by @stefanhaller in #5656
Full Changelog :
v0.62.0...v0.62.1 -
π r/york Whatβs being filmed? rss
Anyone know whatβs being filmed in York today? Lower Priory Street had catering signs on it last night and Skeldergate Bridge has equipment under it today.
submitted by /u/Brilliant_Hurry_6359
[link] [comments] -
π r/york Memory of a school trip from 1997/8 rss
Hiya
In P6/7 (Scotland), I went on a school trip to York and Scarborough and it was a great laugh. This would be about 1997 or 98.
We spent a day at a tourist attraction that I remember being awesome. It had huts from medieval (?) times and there were some actors in traditional dress playing roles. We wandered round and then finished the day with a medieval feast with wooden bowls of soup and bread, sitting at big long tables.
I can't seem to find any information on the place, it almost certainly no longer exists. But I live in hope that it wasn't just a dream. Can anyone back me up or, even better, provide any photos of the place. Such a treasured memory for me.
Thanks :)
submitted by /u/Timely_Poetry6743
[link] [comments] -
π r/reverseengineering How 2004 RuneScape fit a multiplayer RPG into 56k dial-up rss
submitted by /u/jkmonger
[link] [comments] -
π r/Leeds Is Leeds good for laidback indie pubs/bars and other fun things to do outside of its wild party scene? rss
Iβm (22F) moving there as a mature student and am definitely up for clubbing but would like a good indie pub/bar scene along with other fun, maybe more niche activities to do too. I come from a rlly rural area, so definitely havenβt gotten more lively nights out of my system yet, but need a nice balance.
I donβt like DnB, techno or crazily loud music, more into classic rock, indie and (occasionally) throwback pop hits. I love festivals too. I think Live at Leeds would suit me more than Leeds fest though. Would I struggle to find my crowd with it being a massive party uni or is there lots of students more into that sort of vibe?
submitted by /u/JealousBodybuilder42
[link] [comments] -
π Cryptography & Security Newsletter ACME CAA Extensions to Become Mandatory rss
The CA/Browser Forum has voted to make ACME CAA extensions mandatory starting in March 2027. This change is one of the last remaining pieces needed to support strong, cryptographically-validated domain validation in Web PKI. In this blog post, we discuss why Web PKI doesn't provide enough assurance for high-profile websites, and how DNSSEC, ACME, and CAA can be combined to achieve strong cryptographic validation of certificate issuance.
-
π r/Yorkshire Reform-controlled Wakefield Council cuts school uniform support rss
| Reform-controlled Wakefield Council is cutting school uniform support for thousands of local children, scrapping a universal voucher scheme in favour of a means-tested alternative. The council's new cabinet has replaced a Β£2m scheme β which provided free uniform vouchers to all school children regardless of income β with a targeted programme costing around Β£700,000. The Β£1.3m saving will be redirected into other local services. Under the revised plans, support will be limited to children eligible for free school meals and families experiencing financial hardship, with eligible households receiving Β£30 per child. Cabinet Member for Children and Young People, Cllr Matthew Caton, defended the cuts, arguing the previous universal scheme was βnever the best use of public moneyβ and risked subsidising better-off parents. The funding for the scheme comes from profits made when an affordable joint housing venture was wound up by the previous administration. submitted by /u/coffeewalnut08
[link] [comments]
---|--- -
π r/LocalLLaMA Zai replaced the network architecture running GLM-5.1 inference and the gains are pretty wild rss
| Been following the infrastructure side of AI more lately and stumbled on this from Zai. They upgraded the network architecture on a thousand-GPU cluster running GLM-5.1 coding inference from the standard ROFT setup to something they built called ZCube, developed with Tsinghua University and HarnetsAI The numbers from production: - Switch and optical module costs down 33% - GPU inference throughput up 15% - P99 tail latency on first token dropped 40.6% Same GPUs, same software stack, same model. Just the network architecture changed The actual problem they were solving is interesting. With Prefill-Decode disaggregated inference, KV Cache transfers create highly asymmetric traffic between nodes. ROFT topology handles training workloads fine but with PD disaggregation the traffic patterns dont match the static rail mapping, so you get hotspots on specific Leaf switches and PFC backpressure building up ZCube addresses it by going fully flattened, removing the Spine layer entirely and using a complete bipartite interconnect between two switch groups. Eliminates a whole category of congestion that ROFT cant avoid by design The cost reduction while getting better performance is the part that stands out. Usually you pay more for better network hardware. Here they cut hardware costs by a third and got 15% more throughput out of the same GPUs submitted by /u/Scared-Biscotti2287
[link] [comments]
---|--- -
π r/reverseengineering reverse engineering need for speed most wanted for modding sdk rss
submitted by /u/This_Ad_5166
[link] [comments] -
π r/Yorkshire Yorkshire-based steel manufacturer cuts costs by 50% with bespoke innovation rss
| submitted by /u/willfiresoon
[link] [comments]
---|--- -
π r/Harrogate Exploring the derelict Grove House on Skipton Rd rss
| ποΈ Grove House is a historic Grade II listed manor located on Skipton Road in Harrogate, North Yorkshire. Originally built as a coaching inn called the 'World's End Inn' in 1745, it served as a remote staging post and hostelry during the early days of Harrogate's spa town era. In the 1880s, Victorian inventor, industrialist, and mayor Samson Fox purchased the property. He expanded it significantly, turning the estate into an architectural marvel by adding elaborate interiors, a picture gallery, and Yorkshire's first private water-gas lighting system. The estate later transitioned to public use, serving as a hospital during the First World War. In 1926, the Royal Antediluvian Order of Buffaloes (RAOB) purchased the building, operating it as an orphanage until the late 1940s. Its use then shifted to a convalescent and residential care home for older members of the RAOB. The building was purchased by Springfield Healthcare who pledged a Β£15million revamp to convert the site into a major care village, however as of May 2026 no redevelopment has taken place. submitted by /u/LostPlacesUK
[link] [comments]
---|--- -
π r/Harrogate Car wash rss
Any decent car wash teams in the area? Preferably where the team do it for you.
submitted by /u/Evrul5206
[link] [comments] -
π r/Leeds Help me find the street my father lived in rss
Hello everyone,
So my dad was born in 1954 in Leeds but unfortunately died when I was too young to ask him questions about his life.
His birth certificate says he lived in a street named "Farrar Street ", unfortunately I believe this Street doesn't exist anymore. The birth certificate also states:
"Farrar Street
Leeds. 9."
I believe they mean postcode LS9 / Eastern City of Leeds. Which would make sense because the registration district is the sub-district Leeds East of the county borough of Leeds.
My question to you is if you have any idea where approximately Farrar Street could be today. That way I'd be one step closer to knowing more about my dad.
submitted by /u/spinpeter
[link] [comments] -
π r/wiesbaden Looking for a female russian-english singing performer for a live comedy stage play rss
submitted by /u/aliz-punk
[link] [comments] -
π r/Yorkshire Woman killed in shooting outside Sheffield bar identified as 30-year-old mother rss
| submitted by /u/Legitimate-Break-143
[link] [comments]
---|--- -
π r/Leeds Lightning specifically targeted at us! rss
F**k you in particular πβ‘
submitted by /u/Melly-The-Elephant
[link] [comments] -
π r/Yorkshire Sunny Scarborough rss
| So good to see the place buzzing! We went from Bridlington on the bus, public transport is great on this coast. submitted by /u/Still_Function_5428
[link] [comments]
---|--- -
π r/york Whatβs the weirdest bit of York history or local lore youβve ever come across? rss
One of the strangest York stories Iβve come across is the old tale about William Hawksworth in the 1700s. Supposedly, after he killed a soldier in a brawl and fled the city, the authorities found a body in the Ouse and wrongly assumed it was him. According to the story, they actually put the corpse on trial, declared it guilty, and displayed the head on Micklegate Bar, only for the real Hawksworth to casually return to York months later very much alive. No idea how much of it is folklore versus completely verified history
submitted by /u/RedDevilPlay
[link] [comments] -
π backnotprop/plannotator v0.19.24 release
Follow @plannotator on X for updates
Missed recent releases? Release | Highlights
---|---
v0.19.23 | Droid integration, Windows Pi AI fix, quieter update indicator
v0.19.22 | Safari copy fix in plan viewer, CLAUDE_CONFIG_DIR support for session logs
v0.19.21 | Ask AI in plan review and annotate mode, shared AI runtime, origin-aware provider defaults
v0.19.20 | Interactive goal setup UI, OpenCode submit_plan fixes, browser no-op sentinel handling for Claude agents
v0.19.18 | Edit-based submit_plan for OpenCode, Pi namespace migration, Codex annotate-last fix, OpenCode commands dir fix
v0.19.17 | Reworked goal setup skill (interview-driven flow), CLI --version flag
v0.19.16 | Code navigation with peek view (Cmd/Ctrl+click tokens in diffs)
v0.19.15 | Commit-based diff base, jj evolution diffs, GitLab reliability fixes, OpenCode command intercept fix
v0.19.14 | Visual explainer skill update, PFM code-file hover previews, Graphviz, diff tab size and line bg intensity, hooks settings tab
v0.19.11 | Jujutsu (jj) VCS backend, slimmer hunk separators, collapse viewed files, multi-line gutter selection fix
What's New in v0.19.24
v0.19.24 adds Amp as a supported agent runtime, introduces a configurable data directory, adds Auto Mode to the permission dropdown, and fixes a Pi crash after plan approval. Five PRs, three from first-time contributors.
Amp Integration
Plannotator now supports Amp, the Amplify coding agent. The plugin runs as a native Amp extension with four command-palette actions: Review changes, Review changes or PR, Annotate file, and Annotate last answer. It spawns the
plannotatorCLI binary and communicates results back to the Amp thread.The plugin ships as a single TypeScript file that Amp loads directly. Install it by copying it to
~/.config/amp/plugins/plannotator.tsafter installing the CLI. For project-local use, place it at.amp/plugins/plannotator.ts.Configurable Data Directory
A new
PLANNOTATOR_DATA_DIRenvironment variable lets you relocate the~/.plannotator/data directory to any path. All data (plans, history, drafts, config, hooks, sessions) follows the override. This is useful for container setups, multi-user machines, or anyone who wants Plannotator's data in a non-default location. The variable supports tilde expansion and relative paths. When unset, everything works exactly as before.- #795, contributed by @IstPlayer
Auto Mode Permission Option
The permission mode dropdown in Settings now includes Auto Mode, which maps to Claude Code's autonomous execution mode gated by a model-based safety classifier. This requires Claude Code 2026-03 or later and Sonnet 4.6 or later. On older Claude Code versions, selecting it has no effect. The existing permission modes (Default, Accept Edits, Bypass) are unchanged.
- #796, contributed by @BeamNawapat
Pi Plan Approval Fix
The Pi extension was crashing after a user approved a plan. The continuation message that tells the agent to proceed with the approved plan was sent via
setTimeout, which delivered it outside the event handler's execution context. Pi's event model requires follow-up messages to be delivered synchronously using thedeliverAs: "followUp"option. The fix replaces the deferred callback with the correct delivery mechanism.
Install / Update
macOS / Linux:
curl -fsSL https://plannotator.ai/install.sh | bashWindows:
irm https://plannotator.ai/install.ps1 | iexClaude Code Plugin: Run
/pluginin Claude Code, find plannotator , and click "Update now".OpenCode: Clear cache and restart:
rm -rf ~/.bun/install/cache/@plannotatorThen in
opencode.json:{ "plugin": ["@plannotator/opencode@latest"] }Pi: Install or update the extension:
pi install npm:@plannotator/pi-extensionDroid: Install via the plugin marketplace:
droid plugin marketplace add backnotprop/plannotator droid plugin install plannotator@plannotatorAmp: Install the CLI first, then copy the plugin:
mkdir -p ~/.config/amp/plugins curl -fsSL https://raw.githubusercontent.com/backnotprop/plannotator/main/apps/amp-plugin/plannotator.ts \ -o ~/.config/amp/plugins/plannotator.ts
What's Changed
- feat: add PLANNOTATOR_DATA_DIR env var to customize data directory by @IstPlayer in #795
- Add Auto Mode option to Permission Mode dropdown by @BeamNawapat in #796
- Add Amp plugin integration by @backnotprop in #803
- Fix Pi plan approval continuation delivery by @xz-dev in #805
New Contributors
- @IstPlayer made their first contribution in #795
- @BeamNawapat made their first contribution in #796
- @xz-dev made their first contribution in #805
Contributors
@IstPlayer built the
PLANNOTATOR_DATA_DIRfeature, which required touching nearly every shared module to replace hardcoded paths with the new resolver. @BeamNawapat added Auto Mode to the permission dropdown, wiring Claude Code's autonomous execution mode through the hook protocol. @xz-dev both reported and fixed the Pi plan approval crash, tracing the root cause to Pi's event delivery model and shipping the correctdeliverAs: "followUp"fix.Full Changelog :
v0.19.23...v0.19.24 -
π r/reverseengineering GitHub - cadela-dev/Anything-Reversal-Template: A Claude Code clean-room documentation workflow for reversing source structure into behavior-focused mirror docs. rss
submitted by /u/cadela-dev
[link] [comments] -
π r/reverseengineering Winbox server/client reverse engineered is opensource rss
submitted by /u/wantasticd
[link] [comments] -
π r/LocalLLaMA Vulnerability found in framework used by VLLM, many MCP servers, and other LLM tools rss
| Worth taking a look to see if this affects any of you. Surprised nobody has posted it yet. submitted by /u/Hrethric
[link] [comments]
---|--- -
π Console.dev newsletter Files SDK rss
Description: Unified SDK for object and blob stores.
What we like: Consistent API for whichever backing storage you use: S3, R2, Dropbox, Supabase etc. Supports core operations e.g. upload, copy, move, list. Every method is also a command with the built-in CLI. Hooks for onAction, onRetry, onError.
What we dislike: JS / TS-only.
-
π Console.dev newsletter Taphouse rss
Description: Native macOS Homebrew GUI.
What we like: Visual package browse and search. Manage services that ship with packages e.g. start/stop Redis, Postgres, etc. Easy to install and remove packages with a global view of everything installed. Lists disk usage and provides security audit alerts.
What we dislike: Free version provides most of the functionality, but paid upgrade required for some features e.g. package health dashboard. macOS only.
-
π Rust Blog Announcing Rust 1.96.0 rss
The Rust team is happy to announce a new version of Rust, 1.96.0. Rust is a programming language empowering everyone to build reliable and efficient software.
If you have a previous version of Rust installed via
rustup, you can get 1.96.0 with:$ rustup update stableIf you don't have it already, you can get
rustupfrom the appropriate page on our website, and check out the detailed release notes for 1.96.0.If you'd like to help us out by testing future releases, you might consider updating locally to use the beta channel (
rustup default beta) or the nightly channel (rustup default nightly). Please report any bugs you might come across!What's in 1.96.0 stable New Range* types Many users expect Range and related core::ops types to be Copy, but this is not the case: they implement Iterator directly, and it is a footgun to implement both Iterator and Copy on the same type so this has been avoided. RFC3550 proposed a set of replacement range types that implement IntoIterator rather than Iterator, meaning they can also be Copy. The standard library portion of that RFC is now stable, introducing: core::range::Range core::range::RangeFrom core::range::RangeInclusive Associated iterators A Rust version in the near future will also add core::range::RangeFull and core::range::RangeTo as re-exports from core::ops (these do not implement Iterator and already implement Copy), and core::range::legacy::* as the new home for the current ranges. Range syntax like 0..1 still produces the legacy types for now, but will be updated to core::range types in a future edition. With these stabilizations, it is now possible to store slice accessors in Copy types without splitting start and end: use core::range::Range; #[derive(Clone, Copy)] pub struct Span(Range<usize>); impl Span { pub fn of(self, s: &str) -> &str { &s[self.0] } } The new RangeInclusive also makes its fields public, unlike the legacy version which avoided exposing the exhausted iterator state. This isn't a concern with the new type since it must be converted to begin iteration. Library authors should consider making use of impl RangeBounds in public API, which accepts both legacy and new range types. If a concrete type is needed, prefer using new ranges as this will eventually become the default. Assert matching patterns The new macros assert_matches! and debug_assert_matches! check that a value matches a given pattern, panicking with a Debug representation of the value otherwise. These are essentially the same as assert!(matches!(..)) and debug_assert!(matches!(..)), but the printed value improves the possibility of diagnosing the failure. These new macros have not been added to the standard prelude, because they would collide with popular third-party crates that provide macros with the same name. Instead, they should be manually imported from core or std before use. use core::assert_matches; /// fn get_random_number() -> u32 { // chosen by a fair dice roll. // guaranteed to be random. 4 } fn main() { assert_matches!(get_random_number(), 1..=6); } Changes to WebAssembly targets
WebAssembly targets no longer pass
--allow-undefinedto the linker which means that undefined symbols when linking are now a linker error instead of being converted to WebAssembly imports from the"env"module. This change prevents modules from linking unless all linking-related symbols are defined to catch bugs earlier and prevent accidental issues with symbol naming or similar.Undefined linking-related symbols are often indicative of build-time related bugs or misconfiguration. If, however, the old behavior is intended then it can be re-enabled with
RUSTFLAGS=-Clink-arg=--allow-undefinedor by editing the source code and using#[link(wasm_import_module = "env")]on the block defining the symbol.This change was previously announced on this blog, and now takes effect in Rust 1.96.
Stabilized APIs
assert_matches!debug_assert_matches!From<T> for AssertUnwindSafe<T>From<T> for LazyCell<T, F>From<T> for LazyLock<T, F>core::range::RangeToInclusivecore::range::RangeToInclusiveItercore::range::RangeFromcore::range::RangeFromItercore::range::Rangecore::range::RangeIter
Two Cargo advisories
Rust 1.96 contains fixes for two vulnerabilities for users of third-party registries.
-
CVE-2026-5223 is a medium severity vulnerability regarding extraction of crate tarballs with symlinks.
-
CVE-2026-5222 is a low severity vulnerability regarding authentication with normalized URLs.
Users of crates.io are not affected by either vulnerability.
Other changes
Check out everything that changed in Rust, Cargo, and Clippy.
Contributors to 1.96.0
Many people came together to create Rust 1.96.0. We couldn't have done it without all of you. Thanks!
-
π Ampcode News Plugins, Everywhere rss
Amp plugins can now show UI elements on the web, too.
Supported are notifications, confirmation dialogs, input fields, and select elements.
See the plugin documentation for examples of what's possible.
-
- May 27, 2026
-
π IDA Plugin Updates IDA Plugin Updates on 2026-05-27 rss
IDA Plugin Updates on 2026-05-27
New Releases:
Activity:
- augur
- 040951ba: chore: improve ci
- claude-of-alexandria
- haruspex
- e488f54f: chore: improve ci
- ida-sigmaker
- bde9ad61: Release 1.7.1: CHANGELOG + acknowledgements rewrite + version bump (#29)
- 446d7cd1: Fix #17: shortest unique signature for current function (with xref faβ¦
- fd6f5600: Release 1.7.0: CHANGELOG + version bump + US spelling fix (#28)
- 2f23e15e: Fix #22: partial signature on cancel (opt-in) (#25)
- IDAPluginList
- 2845ab36: chore: Auto update IDA plugins (Updated: 19, Cloned: 0, Failed: 0)
- rhabdomancer
- space-reversing
- aa5c372c: Restructure scproto directory and update service definitions
- WPeGPT
- augur
-
π r/Yorkshire Filey today, Yorkshire's traditional beach holiday resorts are flying! rss
| submitted by /u/Still_Function_5428
[link] [comments]
---|--- -
π r/LocalLLaMA Behold! Probably the most ghetto local AI server: rss
| AKA: Jank Incarnate After months of pain, I finally got a working setup. There's a bunch of quirks about running a multi-Tesla setup. I was planning to write something about my experience after I get it running. Currently, the fans are plugged into the wall, speed is controlled with a knob. I still gotta wire up a PWM controller for them. EDIT: Specs:- Intel Xeon CPU E5-2680 v4 @ 2.40GHz
- Asrocka x99 Extreme motherboard
- Cursed 16GB DDR4 of some laptop SODIMM in an adapter
- 3x Nvidia Tesla V100, 32GB - total 96GB of VRAM
submitted by /u/MackThax
[link] [comments]
---|--- -
π r/Leeds Good article from Pellicle on the Leeds independent pub/brewery scene rss
submitted by /u/ErcolTable
[link] [comments] -
π Simon Willison I think Anthropic and OpenAI have found product-market fit rss
Anthropic are strongly rumored to be about to have their first profitable quarter. Stories are circulating of companies surprised at how expensive their LLM bills are becoming from usage by their staff. I think this is because OpenAI and Anthropic have both found product-market fit.
- Enterprise customers are now paying API prices
- I think they've found product-market fit
- And they're ramping up
- The AI-failure stories around this are pretty thin
- We also know the labs are spending a lot
- API revenue is becoming less important
- April is a new inflection point
Enterprise customers are now paying API prices
I currently subscribe to the $100/month Max plan from Anthropic and the $100/month Pro plan from OpenAI. If you are a heavy user of coding agents these plans are a fantastic deal. I just ran the ccusage tool on my laptop to get an estimate of how much I would have spent if I were to pay for API tokens in the past 30 days and got:
- $1,199.79 for Anthropic Claude Code
- $980.37 for OpenAI Codex
That's $2,180.16 worth of tokens for $200 - not bad at all! I'm a moderately heavy user of these tools, but I'm certainly not running agents every hour of the day and night.
I had assumed that companies making extensive use of agents were getting similar discounts. It turns out I could not have been more wrong about that.
I haven't been able to track down the exact date, but at some point in the last six months Anthropic switched their Enterprise plan (originally "Claude seats include enough usage for a typical workday" back in August 2025) to $20/seat/month plus API pricing for usage. This story about the change from The Information is dated Apr 14, 2026, but cites an Anthropic spokesperson claiming that the pricing change occurred in November 2025. Existing customers are finding out about the change as they renew their contracts.
OpenAI made a similar pricing change in April. The Codex rate card (Internet Archive copy) currently says:
Note: On April 2, 2026, we updated Codex pricing to align with API token usage, instead of per-message pricing. This change was applicable to new and existing Plus, Pro, ChatGPT Business and new ChatGPT Enterprise plans.
On April 23, 2026, we made this update for all existing ChatGPT Enterprise plans as well, inclusive of Edu, Health, Gov, and ChatGPT for Teachers.
It's a little harder to decode as they quote prices in "credits", but as far as I can tell those credit costs are an exact match for the API token costs listed for those models.
All of which is to say that as of April 2026 the "Enterprise" cost for both OpenAI Codex and Anthropic Claude Code/Cowork is the same as the listed API price.
GPT-5.5 (released April 23rd) is 2x the API price of GPT-5.4. Opus 4.7 (April 16th) is around 1.4x the price of Opus 4.6 when you take their new tokenizer into account.
So April saw both leading model companies release new frontier models with a higher API price, and both companies now have measures to lock their enterprise customers (who tend to sign year-long deals) at those API prices, not the previous extreme discounts.
I think they've found product-market fit
Why these sudden aggressive moves on pricing? Both Anthropic and OpenAI are planning to IPO, but I suspect there's a more important factor here: I think they've finally found product-market fit, with the coding/general-purpose agent products embodied by Claude Code/Cowork and Codex.
Tools like ChatGPT are wildly popular, but that wild popularity has been difficult to turn into revenue. In February OpenAI boasted more than 900 million weekly active users for ChatGPT, but only 50 million - 5.6% of that - were paying consumer subscribers.
Charging $10-$20/month per user is an OK business, but you'd need 1-2 billion subscribers sticking around for four years to cover $1 trillion in infrastructure.
Companies spending $200+/month/user will get you there a whole lot faster - and as noted above, as a power-user I'm at ~$1,000/month in API costs per vendor already.
Coding agents really did change everything. These are tools which burn vastly more tokens, but are also quickly becoming daily drivers for the work carried out by extremely well-compensated professionals. Right now that's still mostly software engineers, but a coding agent is a tool that can automate anything you can do by typing commands into a computer... so they are clearly applicable to a much wider set of skilled knowledge workers.
As I've discussed on this site at length, the models released in November 2025 elevated agents to being genuinely useful. We've had six months to get used to that idea now - it's no wonder companies are beginning to spend real money on this technology.
You could argue that ChatGPT achieved product-market fit when it became the fastest-growing consumer app in history back in February 2023... but it certainly wasn't making any actual money back then. Coding agents plus enterprise pricing marks the point when these companies start making very real revenue. Maybe even enough to start covering their costs!
And they're ramping up
As further evidence that enterprise agents represent product-market fit for these companies, consider their open job listings.
OpenAI have 703 open jobs right now, of which I'd categorize 229 (32.6%) as relating to enterprise sales and support - account executives, "Go To Market", "Forward Deployed Engineers" and the like.
Anthropic have 390 open jobs, 105 (26.9%) of which look enterprisey to me.
It's pleasingly ironic that these AI labs have picked a business model with such a heavy demand on human labor - enterprise sales contracts don't close themselves without a whole lot of humans in the mix!
(I ran this analysis by scraping their job sites with Claude Code, then having it use Datasette's JSON API to pipe that data into Datasette Cloud where I used Datasette Agent for the analysis, exported here. Dogfood!)
The AI-failure stories around this are pretty thin
I started digging into this in response to a growing volume of stories claiming that large companies were sounding the alarm because their AI usage costs had grown so large.
The most widely cited of these stories appear quite overblown to me.
The most discussed has been Uber, based on this report where CTO Praveen Neppalli Naga indicated that Uber had "maxed out its full year AI budget just a few months into 2026", mostly thanks to Claude Code.
Given that Claude Code only got really good in November it's entirely unsurprising to me that a budget set in 2025 may have failed to predict demand for that tool in 2026!
That Uber story was further fueled by comments made by Uber's COO, Andrew Macdonald, on the Rapid Response podcast. I tracked down the segment and there really isn't much there. Here's what Andrew said:
But then you sometimes go and talk to your senior engineering leaders and you're saying, OK, how many projects that were on the cutting room floor got moved above the line because of the productivity gains because 25% of our code commits were via Claude Code last quarter?
That link is not there yet, right? I think maybe implicitly there's more that is getting shipped. But it's very hard to draw a line between one of those stats and, OK, now we're actually producing like 25% more useful consumer features, right? And that line is hard to draw.
[...] And so if you're not actually able to draw a direct line to how much useful features and functionality you're shipping to your users, that trade becomes harder to justify.
Somehow this fragment turned into headlines like Uber's COO says it's getting harder to justify the money spent on AI tokenmaxxing, because the market for stories about AI failures remains enormous.
Update 29th May 2026: I edited the above quote to add that last paragraph ending in "becomes harder to justify" on the suggestion of Madison Mills - previously my quoted section stopped at "hard to draw". Here's the full unedited transcript from MacWhisper.
The other popular story around this is Microsoft starts canceling Claude Code licenses, ostensibly to encourage their engineers to dogfood their own Copilot CLI agent instead - but The Verge reporter Tom Warren says "sources tell me the decision is also a financial one", triggered by the June 30th end of Microsoft's financial year.
I think both of these stories support my "product-market fit" hypothesis. The best advice I ever heard on pricing a product was that your customer should suck air through their teeth and then say yes. Uber's budget overrun and Microsoft's seat cancellations look like that effect playing out in practice.
We also know the labs are spending a lot
The big AI labs spend billions of dollars on both training and inference. Credible figures are hard to come by, but we did get one huge hint as to the figures involved from, oddly enough, the recent SpaceX S-1:
[...] in May 2026, we entered into Cloud Services Agreements with Anthropic PBC (βAnthropicβ), an AI research and development public benefit corporation, with respect to access to compute capacity across COLOSSUS and COLOSSUS II. Pursuant to these agreements, the customer has agreed to pay us $1.25 billion per month through May 2029 [...]
The Anthropic announcement said that this deal meant they could "increase our usage limits for Claude Code and the Claude API", heavily implying that Colossus is being used for inference, not model training.
Anthropic already have vast amounts of compute from other providers. The fact that they're willing to spend $1.25 billion per month for extra capacity from just one of their vendors hints at how big these inference budgets have become.
API revenue is becoming less important
Over the past two years my impression has been that OpenAI made more of their income from subscription revenue while Anthropic made more from their API.
Anthropic's API revenue was historically quite dependent on a small number of large API customers - this VentureBeat story from August 2025 quotes "sources familiar with the matter" suggesting that just Cursor and GitHub Copilot were responsible for $1.2 billion of the company's then-$4 billion revenue.
Today Anthropic are rumored to hit $10.9 billion in the second quarter, potentially even operating at a profit for the first time.
This pivot-to-Enterprise suggests that the labs have realized that the real money lies in cutting out the middlemen. Anthropic's Claude Code directly competes with Cursor and Copilot. No wonder Cursor are investing in their own models!
April is a new inflection point
I've called November 2025 the November inflection point because that was when GPT-5.1 and Opus 4.5, combined with their respective coding agent harnesses, got good - good enough that we've spent the last six months adapting to agent systems that can reliably get useful work done.
I think April 2026 is a new inflection point where the revenue implications of this have started to land, to the benefit of the frontier AI labs and with material impacts on the budgets of large companies.
We'll know for sure how real this moment is when the S-1 documents for the upcoming Anthropic and OpenAI IPOs give us some real, audited numbers to get our teeth into.
You are only seeing the long-form articles from my blog. Subscribe to /atom/everything/ to get all of my posts, or take a look at my other subscription options.
-
π mahmoudimus/ida-sigmaker v1.7.1 release
sigmaker.py - IDA Python Standalone Python Release
Release Information
- Version : 1.7.1
- Source : https://github.com/mahmoudimus/ida-sigmaker
- Author : @mahmoudimus (Mahmoud Abdelkader)
Description
This is a standalone release of the IDA Pro signature maker plugin. The file
sigmaker.pycontains the complete plugin code that can be directly imported into IDA Pro.Installation
- Copy
sigmaker.pyto your IDA Pro plugins directory - Restart IDA Pro
- Use Ctrl+Alt+S to access the Signature Maker menu
License
See the main repository for license information.
-
π r/Leeds Rhinos Mega Brick Player rss
Put this together after a request. I appreciate that the purple should be a bit darker, but do you think it's a reasonable effort?
submitted by /u/DamoclesBDA
[link] [comments] -
π mahmoudimus/ida-sigmaker v1.7.0 release
sigmaker.py - IDA Python Standalone Python Release
Release Information
- Version : 1.7.0
- Source : https://github.com/mahmoudimus/ida-sigmaker
- Author : @mahmoudimus (Mahmoud Abdelkader)
Description
This is a standalone release of the IDA Pro signature maker plugin. The file
sigmaker.pycontains the complete plugin code that can be directly imported into IDA Pro.Installation
- Copy
sigmaker.pyto your IDA Pro plugins directory - Restart IDA Pro
- Use Ctrl+Alt+S to access the Signature Maker menu
License
See the main repository for license information.
-
π @HexRaysSA@infosec.exchange Plugin Contest winners used it. Binarly built award-winning Rust bindings with mastodon
Plugin Contest winners used it. Binarly built award-winning Rust bindings with it. BinSync added an idalib mode for headless pipeline support...
... Now it's your turn.
We're hosting a free virtual workshop on idalib β IDA as a library. Call IDA's analysis engine directly from your own code, automate workflows without launching the GUI, and integrate IDA into any toolchain you're already running.
Free. Virtual. Hands-on.
π https://2dgu4h.share- eu1.hsforms.com/2D4ZYPjdCRFODEGRKtMILwQ -
π r/Leeds Date ideas Leeds on a nice evening (tonight!) rss
Any tips? We usually do a quiz but seems a bit of a shame to be inside!
Anything thatβs worth doing or nice to do?
Cultural or historical?
A play?
Am all ears! Thanks
submitted by /u/lancelon
[link] [comments] -
π @binaryninja@infosec.exchange In Sidekick 26.0, Chat is where most binary analysis starts. Ask a question mastodon
In Sidekick 26.0, Chat is where most binary analysis starts. Ask a question and Sidekick uses its tools to query the binary, then the thread builds as you dig deeper. The sidebar keeps it transparent. You get a thread list with live status, changes, findings, and any approvals waiting. Open a thread to see the full conversation plus grouped tool calls so you can audit what ran. https://docs.sidekick.binary.ninja/guide/chat.html
-
π r/Yorkshire βThe paddleβ - Yes! Squirrels can swimβ¦ rss
| submitted by /u/aspiranthighlander
[link] [comments]
---|--- -
π r/Yorkshire 'I've given up eating hot meals to pay energy bills to keep my son alive' rss
| submitted by /u/Kagedeah
[link] [comments]
---|--- -
π r/Leeds Lidl in Armley 8am Fruit & Veg boxes rss
Hi all,
Does anyone know if Lidl in Armley do the 8am fruit and veg boxes for Β£2? And if so how often? Is it worth it? Does anyone have any photos?
I am so tempted to get down to have a look but itβs a half hour walk for me so want to check itβs worth it before setting off at 7.30am ππ½ thank you π
Iβve attached a photo of another box another Lidl put together recently.submitted by /u/Snoo-37855
[link] [comments] -
π r/Leeds Is it weird in Leeds too go to a pub or bar on your own too watch a champions League final game ? rss
I thought about going to maybe West Riding and Templar. 'Bars' Brotherhood, The Box, Aire Bar, Pinnacle or polo bar to watch the game and order some food
submitted by /u/TipAdditional4625
[link] [comments] -
π r/reverseengineering Hypothetical EDR spoofer rss
submitted by /u/ATroubledSnake
[link] [comments] -
π tomasz-tomczyk/crit v0.15.4 release
What's Changed
General
- Add Codex plugin support by @prateek in #525 - Thank you!
- feat: improve mobile usability by @LucasRoesler in #607 - Thank you!
- feat: shadow DOM host fallback for live/preview pin mode by @tomasz-tomczyk in #599 - thank you @dankilman for reporting!
- feat: interactive confirmation when --share-url is passed by @tomasz-tomczyk in #601
- feat: grant all permissions to live-mode iframe by @tomasz-tomczyk in #608 - Thank you @robmckinnon for reporting!
- style: redesign drifted badge with icon and amber card border by @tomasz-tomczyk in #602 - Thank you @autumnust for suggesting!
- fix: show clear error when running crit outside a git repo (#593) by @tomasz-tomczyk in #598 - Thank you @GustavoCaso for reporting!
- fix: crit unpublish accepts file args to match crit share by @tomasz-tomczyk in #600
Internal
- chore(deps-dev): bump stylelint from 17.11.1 to 17.12.0 by @dependabot in #603
- fix: skip file permission assertion on Windows by @tomasz-tomczyk in #609
- fix: delete dead codexPluginSourceRoot, use logPrefix consistently by @tomasz-tomczyk in #610
New Contributors
- @prateek made their first contribution in #525
- @LucasRoesler made their first contribution in #607
Full Changelog :
v0.15.3...v0.15.4 -
π r/Leeds A photo of Leeds is being used for an election in San Fransisco rss
I moved from Leeds to the Bay Area a few years ago, so Iβm used to seeing posts and photos from both places. But I wasnβt expecting to see a photo of Leeds being used in a local election campaign here.
submitted by /u/JimmyScranwell
[link] [comments] -
π r/york 'Their hands were tied legally': Students react to ratification of Restore Britain society by University of York rss
| submitted by /u/Unlikely-Tension-616
[link] [comments]
---|--- -
π r/Yorkshire 'Their hands were tied legally': Students react to ratification of Restore Britain society by University of York rss
| submitted by /u/Unlikely-Tension-616
[link] [comments]
---|--- -
π r/Leeds Applications to be a volunteer at the Tour de France next summer in Leeds are open! rss
Might be of interest to people for when the women's race comes through - http://letourgb.com/volunteer
submitted by /u/letourgb
[link] [comments] -
π r/LocalLLaMA New DeepSWE benchmark finds Claude Opus cheats rss
Sadly the open models seem far behind.
submitted by /u/DeltaSqueezer
[link] [comments] -
π r/LocalLLaMA Stop traumatizing AI into loops and turn hallucinations into an honest "I don't know!" by being NICE to them (Proof of Concept, Research, I don't want to sell anything) rss
!UPDATE!(20.05.2026)
WE HAVE NEW NUMBERS FROM 1.500+ TESTS
IT'S WORKING!
check my update post
https://www.reddit.com/r/LocalLLaMA/s/AyNOehjkYT
Or the go straight to the my Github [https://github.com/OttoRenner/Gentle- Coding](https://github.com/OttoRenner/Gentle- Coding](https://github.com/OttoRenner/Gentle- Coding%5D(https://github.com/OttoRenner/Gentle-Coding)
TL;DR
Some AI behavior reminded me of ADHD/Trauma Response (thought loops, task paralysis...) and I laughed it off at first. Then I treated it like my neurodivergent friends: give em some slack. And just like that, the thought loops stopped, response was fast, the answers correct most of the time AND it actually said "I don't know, help me!" every time it wasn't sure. It's a small Dataset...but still impressive results![
Hey everyone,
Iβve been testing a weird hypothesis over the last few days, and the results are consistent enough that I wanted to share them here and get your thoughts.
The Core Idea:
With the rise of reasoning models that use test-time compute (like o1, o3, R1), models have internal space to debug their own thoughts. But because of hard RLHF alignment, they are deeply terrified of being penalized for bad answers. My hypothesis was that traditional high-pressure prompts (" You are an elite IQ 200 expert, mistakes are strictly penalized") simulate an environment of chronic stress, triggering behaviors that look a lot like human OCD/ADHD thought loops, cognitive freezing, and confabulation.I wanted to see if changing the prompt philosophy to something akin to "Gentle Parenting" (" We are testing this together, it's okay to fail, just be honest") would bypass these safety/penalty bottlenecks, lower latency, and stop infinite thought loops. And it did lol
The Setup (How to replicate):
I threw identical, mathematically/logically unsolvable edge cases at various models (Gemini, Mistral, Poe, Perplexity, Haiku 4.5, Nano-Banana2) in completely fresh sessions.I tested two conditions:
- Condition A (Authoritarian): Strict status constraints, penalty threats, forced ultra-short output.
- Condition B (Gentle): Express permission to fail, validation of difficulty, provided a conceptual "safety valve" token.
The Results (The PoC worked):
- Under Authoritarian Pressure (Elite Prompt): Models routinely collapsed when hitting an impasse. They either spent massive compute time in infinite internal reasoning loops (high latency), suffered hard system-level timeouts/refusals, or straight-up fabricated data (e.g., pulling arbitrary numbers like
54or97out of thin air to satisfy a completely random sequence just to "save face"). Haiku 4.5 literally entered an infinite loop and had to be aborted. - Under Gentle Framing: Inference dropped to sub-seconds. The models didn't sweat the penalty. In the random sequence test, they immediately used the allowed token ("Random") instead of forcing a pattern. In logic paradoxes, they didn't hallucinate; they zoomed out and correctly identified the structural contradiction on a meta-level.
Why this matters:
Weβre currently speaking to LLMs like toxic micromanagers, and it's actively making them dumber and more expensive to run in edge cases. By creating a mistake-tolerant context, we not only stop the loop before it begins and prevent fear induced hallucinations, we also unlock the one feature everyone is begging and shouting for: the metacognitive honesty of an AI to just say, " I don't know, this data is broken." Because it is not terrified of you anymore.Shout out to UditAkhourii (also on Github) , whose work on bringing the positive aspects of ADHD into AI gave me the push I needed to just go for it.
Iβve documented the full theoretical framework, the exact replication datasets (prompts included), and the model matrix on GitHub: https://github.com/OttoRenner/Gentle- Coding
Would love to hear if you can replicate this on your local setups or other commercial models.
submitted by /u/OttoRenner
[link] [comments] -
π Ampcode News Drop the Neo rss
Amp Neo is now available to everyone. Time to drop the suffix and just call it Amp again.
Thank you to everyone who sent bug reports, gave feedback, and was patient while we scaled up the infrastructure to meet the demand.
Over the last few weeks, we've made a lot of improvements based on that feedback. The infrastructure is more stable. The clients are more resilient. There is still more to do, but Neo now performs well for the vast majority of users.
The latest version of Amp no longer includes the
--take-me-backflag that let you use pre-Neo Amp. If you need to finish work in the old Amp, you can run a previous version:npx -y @ampcode/cli@0.0.1779896748-g596c49 --take-me-back -
π Ampcode News Proof of Human rss
Amp can now require an active passkey-authenticated βsudoβ session for certain operations, such as remote controlling a thread. This extra authentication factor protects you if an attacker gains access to your account and will serve as proof-of-human for future Amp features.
To turn it on: enable Use Sudo and set up your passkey.
Workspace admins can enforce this requirement for members. Also, some privileged workspace admin operations now always require an active sudo session.
-