tt
rewrite in Go and quickly implemented a stack widget for tview. The builtin Pages is similar but way too complicated for my use case. I would have to specify a mandatory name and some additional options for each page. Also, it allows me to randomly jump around between pages using names, but only gives me direct access the first, however, not the last page. Weird. I don't wanna remember names. All I really need is a classic stack. You open a new fullscreen dialog and maybe another one on top of that. Closing the upper most brings you back to the previous one and so on.
@doesnm@doesnm.p.psf.lt Iāll let you know once it reaches a point where it might be barely usable by someone else than myself. There are long ways to go, though. Right now, you donāt wanna even look at it. :-)
Iām continuing my tt
rewrite in Go and quickly implemented a stack widget for tview. The builtin Pages is similar but way too complicated for my use case. I would have to specify a mandatory name and some additional options for each page. Also, it allows me to randomly jump around between pages using names, but only gives me direct access the first, however, not the last page. Weird. I donāt wanna remember names. All I really need is a classic stack. You open a new fullscreen dialog and maybe another one on top of that. Closing the upper most brings you back to the previous one and so on.
The very first dialog I added is viewing the raw message text. Unlike in @arne@uplegger.euās TwtxtReader, Iām not able to include the original timestamp, though. I donāt have it in its original form in the database. :-/
Next up is a URL view.
How itās going? This is how itās going: https://movq.de/v/b744b63cc1/oh-fuck-sleep.mp4
ok, sounds like a ālargeā project to me.
Is it more an API (more oriented to developers), more oriented to UI/UX/Frontend? Perhaps both?
Iād go with prologicās advice of measuring and prioritizing. Perhaps you have a budget or at least something like āletās see how far can we reach in 6 monthsā, and possibly you wonāt finish in the time you have (just guessing).
Something that has helped me was defining āWhy do you we want to refactor this project?ā.
Could it be to make it compile on newer versions, or making it easier to grow and scale, or perhaps they are trying to sell that product to another company. Every reason has a different path, IMO.
Definitely something going on with replies. This one was replying to the wrong twt and even when I got clever and pasted the right hash it didnāt work.
i made a little twtxt feed fixer for when a feed uses other whitespace instead of tabs.
robots.txt
file. only noticed it because the OpenAI bot was hitting me with a lot of nonsensical requests. here is the list from last month:
(I keep thinking that going back go Gopher or Gemini might be a good idea at this point. They donāt care about that, probably. š«£)
Oasis: a small, statically-linked Linux system
You might think the world of Linux distributions is a rather boring, settled affair, but thereās actually a ton of interesting experimentation going on in the Linux world. From things like NixOS with its unique packaging framework, to the various immutable distributions out there like the Fedora Atomic editions, thereās enough uniqueness to go around to find a lid for every pot. Oasis Linux surely falls into this category. One of its main ⦠ā Read more
Holly Hill - Long run: 12.06 miles, 00:09:43 average pace, 01:57:15 duration
did not sleep last night. the bed was not too comfortable and i was burning up for some reason. the run went well. it was a decent temperature and i kept the pace pretty moderate (mainly around a 9:30). hit two bridges going back-and-forth between daytona. i did walk a bit around mile ten to recollect myself but a good run nonetheless.
my daughter got first all-around in her gymnastic meet and did really well on all events, too!
#running
@prologic@twtxt.net we need to remove: https://git.mills.io/yarnsocial/go-lextwt/src/branch/main/ast.go#L776-L784
apparently i canāt make the edit via gitea.. i am guessing its hitting one of your firewall rules.
Pinellas County - 6 mile run: 6.05 miles, 00:08:49 average pace, 00:53:18 duration
pretty good run. been tough logging this last week or so with all the work, but its going well. there was a lot of people waiting to get in to walsingham park today⦠probably the 5km event i saw posted a couple of weeks ago. i need to be better about planning these things.
#running
@<url>
. Submitting this writes @<domain url>
instead of @<nick url>
in the feed.
While I now have a somewhat working fix for it in yarnd (https://git.mills.io/yarnsocial/yarn/pulls/1232), I also have the feeling that I should fix literal formatting in lextwt as well. This also uncovered more bugs I believe: https://git.mills.io/yarnsocial/go-lextwt/pulls/28
But then there is also the question why the textarea is populated with @<url>
in the first place rather than @<nick url>
or yarndās own @nick@domain
/@nick
syntax. It indeed has to do something with whether I follow the mentioned feed or not.
Anyway, something to investigate for future Lyse or maybe @prologic@twtxt.net and/or @xuu@txt.sour.is. Gānight!
@<url>
. Submitting this writes @<domain url>
instead of @<nick url>
in the feed.
Righto, must be some caching thing thatās going on, too. Now, with JS enabled and a feed that I follow, hitting āReplyā actually automatically enters @nick@domain
in the textarea. Submitting it correctly writes ā@in the feed. Let's digā¦
@movq@www.uninformativ.de So true! Either Iām hanging around with my direct teammates socializing in person in a meeting room or some other workmates are making so much noise in the open-plan office that I cannot concentrate at all. In any case, completely unproductive. :-D Luckily, I very rarely have to go to the office.
Every time I go to the office, I get nothing done. Unbelievable.
@lyse@lyse.isobeef.org Thanks for sharing. I really enjoyed it. The beginning part about the history of life on Earth was fun to watch having just read Dawkinās old book The Selfish Geene, and now I want to read more about archaea. The end of the talk about what might be going on on Mars made me a bit hopeful someone will find some good evidence.
@prologic@twtxt.net Go just moved back to second place. :-)
View from my window last evening:
Moon, Venus, an airplane in the top left corner, wind parks in the distance.
(This is already too much for a standard camera. The moon is super bright, the rest is not. Guess I should go HDR some day?)
I think Iām going to move to opentofu
@lyse@lyse.isobeef.org The one in question is more like the javascript version for unwrapping errors when accessing methods.
const value = some?.deeply?.nested?.object?.value
but for handling errors returned by methods. So if you wanted to chain a bunch of function calls together and if any error return immediately. It would be something like this:
b:= SomeAPIWithErrorsInAllCalls()
b.DoThing1() ?
b.DoThing2() ?
// Though its not in the threads I assume one could do like this to chain.
b.Chain1()?.Chain2()?.End()?
I am however infavor of having a sort of ternary ?
in go.
PS. @prologic@twtxt.net for some reason this is eating my response without throwing an error :( I assume it has something to do with the CSRF. Can i not have multiple tabs open with yarn?
?
operator in Go š No. For so many reasons.
@prologic@twtxt.net Which one? I donāt mind the ternary operator at all. In fact, I often find myself missing it in Go. I donāt find the two alternatives particularly elegant:
foo := "eggs"
if bar {
foo = "spam"
}
Or:
var foo string
if bar {
foo = "spam"
} else {
foo = "eggs"
}
To my eye, this just would look a lot nicer:
foo := bar ? "spam" : "eggs"
Or at least as the Pythons do it:
foo = "spam" if bar else "eggs"
The ternary operator especially shines with relatively short expressions.
I want to propose my own counter-proposal to the discussion thatās ongoing with Go and error handling.
Here it is: https://docs.mills.io/ix4qDHMnQUSPxZ5tXz12Vg?view
Itās very rough and needs much more work, but essentially I want to propose the following change to the languageās grammar:
f := os.Open("foo.txt") or (e error) {
log.Fatal("error opening file; %s", e)
}
i upgraded my pc from lubuntu 22.04 to 24.04 yesterday and i was like āsurely there is no way this will go smoothlyā but no it somehow did. like i didnāt take a backup i just said fuck it and upgraded and it WORKED?!?! i mean i had some driver issues but it wasnāt too bad to fix. wild
My take on the discussion to introduce an ?
operator in Go š No. For so many reasons.
@andros@twtxt.andros.dev Sweeeeet! Just gave it a try, youāve done a wonderful work š«” I wanted to replay from there but couldnāt go past the first page of the feed. It kept freezing on me and complaining about some bad Url (as mentioned on the test twt), so Iāll have to dig through my follow list and see where I effed up this time. š
PebbleOS becomes open source, new Pebble device announced
Eric Migicovsky, founder of Pebble, the original smartwatch maker, made a major announcement today together with Google. Pebble was originally bought by Fitbit and in turn Fitbit was then bought by Google, but Migicovsky always wanted to to go back to his original idea and create a brand new smartwatch. PebbleOS took dozens of engineers working over 4 years to build, alongside our fantastic product and QA teams. Repro ⦠ā Read more
⦠Still reverse proxying an Nginx web server tho š
Skill Issues
of course, but thatās going away next as soon as I get my php-fpm shi_ together.
Osceola County - 5 mile run at pace: 5.04 miles, 00:08:20 average pace, 00:42:04 duration
whoa, was not expecting it to be that hilly. nice and cold and kept the pace up pretty steady. HR was mainly aerobic which was surprising since going up the hills i was expecting more spikes.
my daughter did great at her gymnastics meet, too⦠all-in-all a good day.
#running
Typical construction site: Absolutely nothing happened so far. If thereās still nothing going on by Monday, Iām putting some of the disks back in.
@prologic@twtxt.net I know! I know! 𤣠and it feels like I wonāt be either, at least for a while ⦠On the bright #Go side, Iām trying to switch everything (static web stuff and reverse-proxy) to #Caddy
@lyse@lyse.isobeef.org @prologic@twtxt.net š There was something weird going on with my #Timeline instance, the text input box was visible even though I was logged out and I was able to twt from it ⦠It has to do with cache because it wouldnāt disappear unless I whip my websiteās cache from the browser.
Poke @sorenpeter@darch.dk and @eapl.me@eapl.me I have no Idea how to reproduce this.
@prologic@twtxt.net @lyse@lyse.isobeef.org First, please leave me your comments on the repository! Even if itās just to give your opinion on what shouldnāt be included. The more variety, the better.
Second, Iām going to try to do tests with Elliptic keys and base64. Thanks for the advice @eapl@eapl.me
Finally, Iād like to give my opinion. Secure direct messages are a feature that ActivityPub and Mastodon donāt have, to give an example. By including it as an extension, weāre already taking a significant leap forward from the competition. Does it make sense to include it in a public feed? In fact, weāre already doing that. When we reply to a user, mentioning them at the beginning of the message, itās already a direct message. The message is within a thread, perhaps breaking the conversation. Direct messages would help isolate conversations between 2 users, as well as keeping a thread cleaner and maintaining privacy. I insist, itās optional, it doesnāt break compatibility with any client and implementing it isnāt complex. If you donāt like it, youāre free to not use it. If you donāt have a public key, no one can send you direct messages.
While the US politicians and tech billionaires are going full-on fascist mode, here is a reminder that there are European alternatives for many well known digital and online services: https://european-alternatives.eu
Introduction to GrapheneOS
GrapheneOS (written GOS from now on) is an Android based operating system that focuses security. It is only compatible with Google Pixel devices for multiple reasons: availability of hardware security components, long term support (series 8 and 9 are supported at least 7 years after release) and the hardware has a good quality / price ratio. The goal of GOS is to provide users a lot more control about what their smartphone is doing. A main profile is used by default (the owner ⦠ā Read more
MorphOS 3.19 released
Itās been about 18 months, but weāve got a new release for MorphOS, the Amiga-like operating system for PowerPC Macs and some other PowerPC-based machines. Going through the list of changes, it seems MorphOS 3.19 focuses heavily on fixing bugs and addressing issues, rather than major new features or earth-shattering changes. Of note are several small but important updates, like updated versions of OpenSSL and OpenSSH, as well as a ton of new filetype definitions ā and so much more. Havin ⦠ā Read more
@andros@twtxt.andros.dev Nope, unfortunately not. I took a look at Lisp last year (I think I used sbcl), but I havenāt done anything really useful with it. I still want to give it a proper go some time in the future. I do like how flexible it can be. Rather simple, but powerful basic concepts.
Whatās your favorite dialect?
@movq@www.uninformativ.de Neat, that sounds like a clever design with a table implementation. :-)
Oh, for sure! Complexity will definitely go through the roof and beyond with optimizations, no doubt. Maybe with the very simplest of the easy ones it might be still reasonably straight forward, but I also imagine that this has the potential to escalate very quickly. :-D
Cleaning up some of the 500 open tabs on my phone. I realized that if I donāt have some place to stash the good ones, I wonāt go through any. http://a.9srv.net/b/2025-01-16
I have no idea what happened in/around instagram but, Holly Shi_ !! People have been pouring out of it and into #Pixelfed for hours now. š way to go #Fedi
Alright, I have a little 8086 assembler for my toy OS going now ā or rather a proof-of-concept thereof. It only supports a tiny fraction of the instruction set. It was an interesting learning experience, but I donāt think trying to ācompleteā this program is worth my time.
The whole thing is just a learning project, I donāt want to actually make a usable OS. There are a few more things I want to have a look at and then Iāll eventually move on to 386/amd64 later this year (hopefully).
Walking those few hundred meters to the dentist and home took me at least three times as long as usual. Complete sheets of ice on the footpaths, definitely ice skating territory. The dentist was caught in a traffic jam and arrived about an hour late. On my morning journey I saw two ambulance operations, one on the way there and the other one when I returned. Just 200m apart. I fear itās going to be an exhausting day for all the rescue personell.
@johanbove@johanbove.info Way to go! ā what will you be reading? Got anything planned?
So Go lang is at a funny version huhā v1.23.4
will there ever be a v1.23.45678? š« š¤”
After I stripped off my clothes and turned around, I came to the conclusion that the plan to shower was cancelled at this moment. The faucet had broken right off and was laying in the tub. I noticed that the diameters of the hot and cold water pipes were surprisingly small, didnāt expect that. Since the pipes were broken flush with the wall, I couldnāt even determine if I had to remove the inner our outer threads, well, remains thereof, in order to attempt to repair this mess. Luckily, I was going to see a plumber mate at the christmas tree collection later anyway.
The first thing that came to mind when I woke up was that I didnāt catch the logical flaw in my dream: absolutely no water was coming out of the burst pipes. The whole scenario took place in summer, so the water couldnāt be frozen either.
Ugh! Not @david@collantes.us, but this one. I am going nuts. Well, I am nuts!
I am letting this domain go at the end of this year. Another of my alter ego feeds will be gone then. Oh, the humanity! š
@prologic@twtxt.net so i did a mistake that iāve done before and i think i just pulled from the main branch which is STUPID i KNOW and i donāt LEARN but whatever. i was having trouble with my go version and the makefile so i think i literally just ran it as my user with go in the path and redirected the binaries to go to a temporary directory i made and then moved them to /usr/bin lol. iām not sure what couldāve caused this! probably something in the pipeline of weirdness i just wrote out
@<url>
form of mentions. Strictly require that all mentions include a nickname/name; i.e: @<name url>
.
@prologic@twtxt.net If youāve got the feed URL in yarndās cache, you can easily look up a missing nick. If you canāt find it, just show the URL (or maybe just the domain name to be halfway consistent with this @nick@domain
thing that yarnd invented) and be done. Itās really that simple.
When yarnds peer with each other, the odds of actually having come across that feed URL in the past are higher than with traditional clients that only have their local set of subscribed feeds. One additional improvment would be to also look at all the mentions and see if somebody used a nick for that URL and go with that.
Yeah, yarnd currently renders some really weird shit when the mention contains just a URL, but Iād call that a bug for sure.
Personally, I do not like the @nick@domain
syntax at all. It looks silly to my eyes. What might have also contributed is the fact of this mentions syntax gotten screwed up so many times by yarnd in the past. But thatās a totally different topic.
@prologic@twtxt.net i thought i was going insane when i saw blank posts on my TL i was like is noscript fucking with me again but no itās you guys fucking around LOLLLL
@<url>
form of mentions. Strictly require that all mentions include a nickname/name; i.e: @<name url>
.
For the record; we consider the new authority on the Twtxt spec(s) going forward (has been for some years actually) to be implementers / primary maintainers of widely used clients. To date that is:
yarnd
@prologic@twtxt.net (me and others)
jenny
@movq@www.uninformativ.de
tt
@lyse@lyse.isobeef.org
Timeline
@darch@neotxt.dk / @eapl.me@eapl.me and others
twtxt-el
? ā @andros@twtxt.andros.dev
Full list of supported and widely used clients can be found at https://twtxt.dev/clients.html ā which I note a few above are actually missing from this page haha š¤£