Bwahahaha, these security folks have a great sense of humor! :-D Got a phishing test e-mail disguised as an overdue anti-phishing training e-mail: 
We receive these test phishing e-mails every now and then at work. When you follow the links and log in at the fake login, you probably get assigned another (real) training.
When I got this e-mail, I immediately thought of such a test. Since I actually do have some stupid training deadlines coming up soon, I wasnāt 100% sure, but still doubted that this was one of them. To make the timing even better, in the team meeting last week, our bosses reminded us to complete outstanding trainings before the deadlines. Ideally well in advance. Notifications about deadlines coming closer are sometimes not only sent to the individuals but also to the bosses and their bosses. And then things can get out of hands when somebody doesnāt read the e-mails properly and mistakes them for deadline exceeded reports.
Anyway, the URL also looked kinda legit. It really doesnāt help a single bit that domain names change all the fucking time. So, still with the test program in mind, I thought, I just give it a quick shot out of curiosity. Since I just had logged in before, the empty SSO username field was totally obvious then. Looking at the e-mail headers confirmed that this was indeed one of securityās field checks. :-)
@david@daiwei.me Itās truly mind-boggling. All the hand full of episodes Iāve seen so far on this channel are amazing. Totally worth tuning in. I have to catch up a lot. :-)
tt has a "draft" mode right? You didn't publish, then edit over and over did you? š
@prologic@twtxt.net Not sure if this really counts as a draft mode or this is what you had in mind. I just was in the editor for ages and didnāt close it. tt provides an integrated preview for the rendered message in there. It automatically updates every second.
Hereās a screenshot of the compose view with the conversation context on the top to which to reply to, the editor in the middle and the almost-live preview at the bottom, I hope itās big enough: 
But itās not like I hit the āAdd messageā button in the compose view (the one currently selected on the screenshot), see the message in the conversation tree and then come back into the compose view to continue editing. Thereās no edit functionality in tt. Once the message is appended to my twtxt.txt file on disk, all I can do is edit it with vim. The U+2028 line breaks are really annoying to deal with (Iām sure I could do something about that if I spent the time), so I try to avoid that at all costs.
Once new messages have been added to my local file, I then manually upload the file to my server in a separate terminal. Thereās no upload command integrated into tt. Right from my very first message in the beginning, Iāve always done it exactly like that. Iām used to this and it really doesnāt bother me. But I can see that others might not be fans of that at all. I might add an upload mechanism to tt at some point in the future.
@david@daiwei.me Please write an issue for this š I donāt mind which way we go!
Hurray, I can now press gg instead of g to go to the top in tt. Much better! :-) Other multi-key combinations are also easily possible now.
I should probably write a real article about this at some point, but here we go. The only downside with my new key binding system is that it breaks tviewās established pattern. Youāve got an InputHandler(), that is implemented using WrapInputHandler(ā¦). It typically then directly implements the switching logic depending on the key press. Something like this:
func (w *Widget) InputHandler() func(event *tcell.EventKey, setFocus func(p tview.Primitive)) {
// WrapInputHandler allows for intercepting key events with SetInputCapture(ā¦)
// from the outside for customization. This handles the default key bindings.
return t.WrapInputHandler(func(event *tcell.EventKey, setFocus func(p tview.Primitive)) {
switch event.Key() {
case tcell.KeyRune:
if event.Modifiers() == tcell.ModNone {
switch event.Rune() {
case 'k':
w.scrollUp()
return // we already handled the event, stop processing
case 'j':
w.scrollDown()
return
}
}
}
// We didn't handle the key event. Maybe the parent
// widget knows what to do with it.
if handler := w.parent.InputHandler(); handler != nil {
handler(event, setFocus)
}
})
}
From the outside, you can intercept and either stop or continue the widgetās original key handling with a potentially rewritten key event using SetInputCapture(ā¦):
w := NewWidget()
// customized or additional key bindings
w.SetInputCapture(func(event *tcell.EventKey) *tcell.EventKey {
switch event.Key() {
case tcell.KeyUp:
// Rewrite the event, so the "cursor up" key is an alias
// for the vim key binding "k", that is handled by the
// wrapped input handler above. (I know, I know, this is a
// completely unrealistic example, why would anyone use
// cursor keys when there are vim key bindings available?!)
return tcell.NewEventKey(tcell.KeyRune, 'k', tcell.ModNone)
case tcell.KeyRune:
if event.Modifiers() == tcell.ModNone {
switch event.Rune() {
case 'q':
app.Stop()
// we already handled the event, do not pass it
// to the wrapped input handler above
return nil
case 'r':
toggleMessageReadStatus()
return nil
}
}
}
// we didn't handle the event, pass it to the wrapped
// input handler above
return event
}
Since they all expect a single key, Iāve noticed that using multiple dedicated KeyBindings of mine on these different levels kinda breaks multi-key handling with common prefixes. The outer-most KeyBinding captures the prefix, but it canāt transfer it to the inner one if not handled by the outer one. At least not without some more (potentially ugly) changes. So, I now have to work with just a single KeyBindings object for the entire widget chain (if it consists of multiple other widgets or the regular input handler and input capture are in the game). The outside needs to register all its key bind customizations or extensions at the same level that the original widget handles its default ones. Doable by exposing the widgetās KeyBindings instance, but not pretty. You always have to keep this in mind.
With the KeyBindings, it will look like that:
type Widget struct {
parent tview.Primitive
// make it available to children or the outside either by
// direct field access or by providing a getter method
KeyBindings *bind.KeyBindings
}
func NewWidget() *Widget {
w := &Widget{KeyBindings: &bind.KeyBindings{}}
w.KeyBindings. // default key bindings
Bind0(bind.KeySequence('k', w.scrollUp).
Bind0(bind.KeySequence('j', w.scrollDown)
return w
}
func (w *Widget) InputHandler() InputHandler() func(event *tcell.EventKey, setFocus func(p tview.Primitive)) {
return t.WrapInputHandler(func(event *tcell.EventKey, setFocus func(p tview.Primitive)) {
// also note the missing support for focus transfer at the moment
event = w.KeyBindings.Capture(event)
if event == nil {
return
}
if handler := w.parent.InputHandler(); handler != nil {
handler(event, setFocus)
}
}
}
And then from the outside, or in a child widget:
w := NewWidget()
w.KeyBindings. // additional or customized key bindings
Bind1(bind.KeySequence(tcell.KeyUp), func(*tcell.EventKey) *tcell.EventKey {
return tcell.NewEventKey(tcell.KeyRune, 'k', tcell.ModNone)
}).
Bind0(bind.KeySequence('q'), app.Stop).
Bind0(bind.KeySequence('r'), toggleMessageReadStatus)
When directly working with tview primitives that are not part of custom widget implementations, the following works well so far:
textView := tview.NewTextView().
SetWordWrap(true).
SetText("ā¦")
SetScrollable(true)
textView.SetInputCapture((&bind.KeyBindings{}).
Bind0(bind.KeySequence('q'), app.Stop).
Bind1(bind.KeySequence('g', 'g'), func(*tcell.EventKey) *tcell.EventKey {
return tcell.NewEventKey(tcell.KeyHome, 0, tcell.ModNone)
}).
Capture)
I need to sleep on this some more.
Also, writing very long messages like this one is really not all that fun in ttās editor. I should absolutely provide a way to shell out to vim.
(Took me about one and a half hours to compose, holy crap. But not only because of not using vim. Although, that might have saved me a quarter hour or so for sure. Proof-reading this message also uncovered quite a few bugs in my real documentation. So, thatās a big win!) Good night!
@bender@twtxt.net I just couldnāt resist the temptation, now that my usal setup has started acting funny. But Iāll keep that in mind
@movq@www.uninformativ.de LOL. I canāt imagine a workplace using Matrix. It simply⦠boggles my mind.
@balloonfu-sen@yarn.girlonthemoon.xyz Do you mind git pull && make build and updating your yarnd instance so itās in-line with the new Hash v2 spec š
Apologies for the late #caturday post, but I figure itās more of a state of mind, like that time Shadow temporarily āborrowedā the dog bed (and discovered how comfy a blanket pile can be)ā¦
@movq@www.uninformativ.de Yes, thatās what I was thinking, too. For a moment, I wanted to suggest to use <ol> instead of <ul> to fix that. However, thatās only gonna work for the first level, but subsections then miss their parent level.
And it turns out that I was wrong. At least sort of. There are some CSS tricks to fix it: https://stackoverflow.com/a/26243681 Of course, with text or retro browsers, this is not gonna fly.
I also came across this interesting article. I just skimmed it and itās about real tables of contents with page numbers, so not what you have in mind, but cool nevertheless: https://css-tricks.com/a-perfect-table-of-contents-with-html-css/
@lyse@lyse.isobeef.org show us, Lyse, to put our minds at ease! šš»
What if an alien language activated inside your mind? š½ ā Read more
Short makes bold Commonwealth Games claim after having pizza and Hackett on his mind
Sam Short showed he is in scintillating form ahead of the Commonwealth Games and Pan Pacs by winning his fourth event at the Australian trials in Sydney. ā Read more
Mum of Gavin Preston killer used AI to ask the court for leniency
The mother of Jaedon Tito said her son had taken up colouring in to āclear his mindā in prison after he and another man were convicted of killing the underworld figure. ā Read more
Every Year After Boss on Why [Spoiler] Leaves, Talks Season 2 After Cliffhanger Ending
With the explosive ending of Every Year After, leaving a slew of questions in viewersā minds, showrunner Amy B. Harris has come out to shed light on the abrupt departure of Percy (Sadie Soverall) from Barryās Bay after falling apart with Sam (Matt Cornett). In a recent interview, she broke down the arcs of several [ā¦]
The post [Every Year After Boss on Why [Spoiler] Leave ⦠ā Read more
At 98, Peter Clemenger is not too old for one life-affirming revelation
The advertising executive was an industry giant who once child-minded the young Lachlan and James Murdoch. ā Read more
Port guide: Dubrovnik, Croatia
This Mediterranean port city is derided as an overcrowded medieval theme park, but never mind. Youāll probably love it. ā Read more
Show HN: ABC Classic 100 Rankings visualised
This weekend is the ABC Classic FM countdown, which prompted me to dust off an old un-published data visualisation of rankings from previous years.
Iāve considered adding a search function, but I also kind of like that it requires a bit of exploration in the current form.
Some of the code is a bit clunky and I wouldnāt mind refactoring it. Iām also not sure about browser compatibility - Iāve only got access to a couple of devices to test it on.
Comments URL: [https://news.yc ⦠ā Read more
Scary Movie 6 Isnāt the Only Sequel on Anna Farisā Mind: āThereās Interestā
Anna Faris teased the idea of reviving a cult favourite from 2008, apart from Scary Movie 6. The actress revealed that there is interest in bringing Shelley Darlingson back to the screen. Anna Faris talks about potential sequel to The House Bunny Faris, currently on the press circuit for her return to the horror-parody franchise [ā¦]
The post [Scary Movie 6 Isnāt the Only Sequel on Anna Farisā ⦠ā Read more
Please donāt mind the post-workout boob sweat, I doubt you would want it rubbed against your body ā Read more
Letās check what youāre capable of, keep in mind that Iāll be judging you quite strictly (Ķ ā ĶŹĶ ā)š ā Read more
Doctor Doomās Strange Recruit to New Avengers Team Highlights His Genius
Doctor Doom just confirmed his genius with an unlikely recruit to a new team of Avengers. As a sorcerer, scientist, and statesman, Doom is recognized as dangerous on many levels. However, it is the first member of the new team which showcases Doomās greatest asset; his strategic mind. The new Avengers of Doom were revealed [ā¦]
The post [Doctor Doomās Strange Recruit to Ne ⦠ā Read more
Would you mind getting these videos if you were my side-fuck? ā Read more
AI-Driven Security Disclosures, NVIDIA Vera & Linux 7.1 Features That Made An Exciting May
May 2026 is now in the books after writing 275 original Linux/open-source minded news articles and another 20 featured-length benchmark articles / Linux hardware reviews. There was a lot of exciting topics in May to keep the month interesting and as we approach the Phoronix 22nd birthday this week⦠ā Read more
@prologic@twtxt.net (I hope Iām not too incoherent. I didnāt sleep very well recently and have a lot of unrelated stuff on my mind. š¤£)
@bender@twtxt.net So yeah, no, I do not have an inner monologue at all. Most of the time my inner mind is busy just replaying music or visuals (or at least it used to before I lost my sight, these days it just replays visuals and sounds), but there is never a time when I ātalk to myselfā, ever, I donāt ever think through something, a problem or an activity and have self-arguments. I just do.
@bender@twtxt.net Fine, Let me answer properly and concretely š
Would you want your children not to learn anything, because āthey have AIā?
No, children still need to learn. That will never change. What they learn however will over time.
Are you OK with your children using the AI for all of their homework?
Yes, frankly I am. Why? Because much of what we teach them in school is utterly pointless.
For example, learning to read Shakespear never taught me anything useful in my life. I regret much of my school years to be honest.
I leanred to read and write, sure. But I learned Math, Science, Computing and how things work on my own by being very curious.
What sense will it make?
That assumes I answered ānoā, which I did not. So it all makes perfect sense :D
What kind of future would that bring for them?
This assumes I said āYesā, which I did :D It will be an itneresting future thatās for sure. I donāt think we can just bury our heads in teh sand and pretend itās all going to go away, It will not. It will make things very interesting for sure, as weāre already starting to see whatās possible and whatās changeing. For example; ordinary people are using these LLM(s) to write their legal suit and defense in courts with varying levels of success.
Even if AI were to become omniscient, what will it be of the human race then?
Iām not convinced it ever will. In fact, I am not convinced we know how to create true intellience at all.
What would we do?
What would be so different from say an Alien invasion from far superious beings?
What would we do that? Band together and defend humanity?
Serve the AI? Maintain the AI?
That assumes that āAIā will become intelligent and omniscient, which I donāt believe it ever will.
Would we have found the true meaning of life then?
If the meaning of life is to create our own sub-species liken to ourselves, sure, maybe. But is that even a reality? not sure, I doubt it. We barely understand ourselves at the best of times, let alone how our minds works.
To care for AI, Is that it?
How would this be different to caring for a friend, a family member If we could ever truly reate an actual sentient being with real feelings and intelligenace, is there any reason to worry? Could we not be freinds and have mutual goals and form relationships?
@movq@www.uninformativ.de I really like your style of writing, btw. Itās much calmer and less aggressive then mine. :-) When I turned my bullet points into paragraphs, I got a bit mad in the process.
Sure, feel free to include anything you want. Regarding citing, this is where twtxt falls short in my opinion. Especially with feed rotation, classic links die quickly. Message hashes only help so much. Nobody outside the twtxt universe knows how to deal with them. So, not perfect for inclusion on a web page. Linking to a thread or message on some yarnd instance might be the more user-friendly option. But the disadvantage is that itās ājustā a mirror, not the primary or original source. In all reality, this could be considered splitting hairs, though.
I should have probably written a proper article. That would have given me time to review the result more carefully, too. ;-) Perhaps thatās something for the future. But honestly, Iām not sure if I really want to waste my time and energy on that subject. So many other fun or useless things come to mind right away that I could do instead. 8-)
So, yeah, do whatever feels best to you. I donāt mind being cited or linked, but I also donāt mind not to be cited or not to be linked to. :-D Not a helpful answer, I know. Sorry. ;-) But anyway, thanks for asking, mate! I do appreciate it.
To finish my thought, linking to my frontpage is probably also useless, since I deliberatly do not have a table of contents there. In fact, my entire frontpage is rather silly.
To Land a Job in AI, Try Reading Kant
The worldās leading AI labs are hiring philosophers to think through ethical edge cases and grand questions of mind and morality. Are they another instrument of hype? ā Read more
[OC] ugh my tits caught a sunburn! mind rubbing aloe on them? ā Read more
I should have changed the key binding from Print to Shift+Print a long time ago to launch import and upload the screenshot to my server. I was constantly hitting that stupid key on accident when I actually wanted to press [AltGr].
If I only could map a key binding to slap these damn ThinkPad T15 keyboard layout designers at Lenovo remotely in the face. Seriously, who in their right mind puts Print (in German Druck) between AltGr and Ctrl at the bottom row to begin with?! Exactly. Nobody. What a horrible location.
Ah, thereās even a term for it:
https://en.wikipedia.org/wiki/Generation_effect
The generation effect is a psychological phenomenon whereby information is better remembered if it is generated from oneās own mind rather than simply read.
hfgl with your coding agents
Hope you donāt mind me keep posting my winter hotness ā Read more
What naughty things come to mind? ā Read more
OpenAI Co-Founder Andrej Karpathy Joins Anthropic
OpenAI co-founder Andrej Karpathy has joined rival AI lab Anthropic. āThe hire is a major coup for Anthropic in the high-stakes competition for elite AI talent ā and another sign the company is emerging as a magnet for some of the industryās most respected technical minds,ā reports Axios. From the report: Karpathy will start this week on Anthropicās pre-training team, which is re ⦠ā Read more
My natural curves have a mind of their own ā Read more
Best Indoor Security Cameras (2026): For Homes and Apartments
Cameras can offer peace of mind, but choose carefully before inviting one into your home. ā Read more
Trump goes āwokeā with a sudden change of mind
The AI alarm bells are ringing louder for Donald Trump, prompting an abrupt U-turn. ā Read more
@prologic@twtxt.net nice! Looks like a great place to be. I wouldnāt mind, just about now! How is the camper behaving? Got all your money worth already? Based on your light participation around here I am tempted to say yes. :-D
What the 1st thing that came to mind when you see my stacked? ā Read more
My tits got bigger over the winter. Hope you donāt mind ā Read more
@prologic@twtxt.net I am going to give it a more serious spin (meaning I am going to go read the help page). Iāve got to tell you though, most successful games do not need a help. But I am fully aware that there is a subset of gamers that would not mindāif not appreciateāa game with help, manual, and the likes.
Iām a shy girl⦠but my mind is anything but innocent ā Read more
Hope you dont mind they sag a little bit ā Read more
@movq@www.uninformativ.de Yup, Iāve also seen the floating point conversion happening with (1 << 63) - 1 yesterday night. But instead of pausing to think about it for a second, somehow all I had in mind was āgive me a better representation, aināt gonna have time for this shitā, so I turned it to hex. Beyond my comprehension what I was thinking there. O_o Thatās embarrassing, unbelievable. Well, I blame late oāclock where my brain had already quit on me and went to bed.
Very interesting data point you raise there. The fun part didnāt cross my mind yet or at least I couldnāt pinpoint it. In hindsight itās totally obvious, though. Past experience also tells me the exact same. Dealing with a problem and researching something myself is a so much more better teacher. The longer I faced up with a topic, the higher the chance to really manifest in long- or at least mid-term memory. If I just get told something, the odds are that itās completely erased from memory in a matter of days if not hours.
@lyse@lyse.isobeef.org Thatās crazy! If you donāt mind me asking, what browser are you using when you see this?
@bender@twtxt.net Glad to hear it, Iāve neglected a Safari test thus far.
Thank you both for checking.
@falsifian@www.falsifian.org Thanks, Iāll keep this in mind in case Iām ever around your neighborhood. ;-)
MidnightBSD 4.0.4 Released With Aged & Agectl For Age Verification/Attestation
MidnightBSD 4.0.4 is out today as the newest update to this desktop-minded BSD operating system. Notable with this update is introducing the Aged daemon and Agectl program for handling age verification and age attestation given the increasing number of US states pursuing laws around age verification at the OS user level⦠ā Read more
@lyse@lyse.isobeef.org Thank you for the suggestions. I will probably do some of that when I have time. For the thumbnails, Iām also thinking about trying the loading=ālazyā img attribute. Top on my mind is actually understanding why the big images donāt load. Maybe my VPSās network connection is saturated, for example. Iāve never needed to worry about such things until now. Iām looking forward to spending some time on it.
The absence of a āfollowā button isnāt enough to stop me! In fact, an even crazier plan is already forming in my mind, where the concepts of āfunā and āpointless, frustrating tech madness for the pure sake of itā a lot of times overlapā¦