Searching txt.sour.is

Twts matching #thoughtful
Sort by: Newest, Oldest, Most Relevant
In-reply-to » Excellent article where you reflect on why it is important to write in your blog, even knowing that nobody will read it. https://andysblog.uk/why-blog-if-nobody-reads-it/ At least this article does.

@andros@twtxt.andros.dev The article is a good reminder of the true blogging mindset. But let’s try to think beyond. 2 ideas: (1) writing ā€œforces clarity, structures your thoughts, sharpens your perspectiveā€. But it also generates thoughts in the sense of Heinrich von Kleist (1805). (2) You’re writing for ā€œthe future you, one right person, one dayā€ but you are also writing for the AI. The idea of AI as an audience.

⤋ Read More
In-reply-to » ... 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.

@prologic@twtxt.net I’d stumbled upon #FrankenPHP while reading through #Caddy stuff and thought maybe it’s bit overkill for what i need it for but then again, it will be just a ā€œOne container in for two outā€, that’s win in my book šŸ˜†

⤋ Read More

i thought about making a chill little vlog putting together my new pi4 for KVM purposes but unless i make it go fast somehow i’d probably quickly exceed the 30 mins on the last mini DVD i have for recording lol

⤋ Read More

It turns out my ISP supports ipv6. After 4-5 months with only ipv4, I thought to ask customer support, and they told me how to turn it on. (I’m pretty happy with ebox so far. Low-priced fibre with no issues so far. Though all my traffic goes through Montreal, 500km away from me in Toronto, which adds a few ms to network latency.)

⤋ Read More

asciinema is really cool. thought about self hosting my own upload site which they have docs for but i don’t need to host everything even if it’d be a fun project. the default/main site is fine enough for me when i won’t be uploading a whole lot.

⤋ Read More

We had a faint yellow-orange-redish sky this evening. Only subtle, but it was actually one of those rare 360° sunsets. Just when I thought, that was it, it’s now over, the colors took off like crazy: https://lyse.isobeef.org/abendhimmel-2025-01-01/

Image

A much nicer start into the year than all the hell yesterday. However, just as I type this, there come also the next round of explosions as darkness falls. Those bloody fuckers, please blow yourselves up!

⤋ Read More

** Neon **
I was bemoaning the lack of color at my desk and a friend sent me this link to a place that makes custom neon signs. I am likely much to indecisive, and faaaar too cheap to actually order one, but I keep having intrusive thoughts about what I’d get if I were to get one.

I think the Yiddish phraseā€œzol er krenken un gedenkenā€ would be funny. It meansā€œlet him suffer and rememberā€ which is very melodramatic, but totally rife with so much meaning. ⌘ Read more

⤋ Read More
In-reply-to » @eapl.me A way to have a more bluesky'ish handles in twtxt could be to take inspiration from Bridgy Fed and say: If NICK = DOMAIN then only show @DOMAIN So instead of @eapl.me@eapl.me it will just be @eapl.me

I’m just having a similar issue with a podcast I just uploaded on Castopod (which supports ActivityPub).

My first thought was creating a subdomain with the name of the podcast mordiscos.eapl.me

Then I watched that the software allows many podcasts in the same domain, so I had to pick a handle:
https://mordiscos.eapl.me/@podcast

So now I have @podcast@mordiscos.eapl.me when this one is ā€˜more correct’ @mordiscos@podcast.eapl.me or it could even be @mordiscos.eapl.me
I wasn’t aware of all that when I setup Castopod (documentation might improve a lot, IMO)

My point here is that it’s something important to think from the start, otherwise is painful to change if it’s already being used like that.

⤋ Read More

I was today years old when I learned that Firefox supports custom per-domain CSS. Is this new? I thought I had tried a while ago and it only worked globally. šŸ¤”

@-moz-document domain(movq.de)
{
    div { border: 1px solid red; }
}

Either way, I love that I don’t need a plugin for that. 🄳

⤋ Read More
In-reply-to » @david How much of a computer does it have to be? Would a ZimaBoard do the trick? I don't have a wife, so I wouldn't know any better šŸ˜…

@aelaraji@aelaraji.com I thought I had replied to this, but don’t see it, so my apologies. I like macOS, and Apple machines are the only ones who can run it. Granted, there are Hackintoshes, but those are on the way out, sadly, because of Apple’s move to their own CPU chips. So, no, a ZimaBoard won’t do the trick. šŸ˜…

Wives are something else, my friend. ā€œHandle with careā€ applies all the time. 🤭

⤋ Read More
In-reply-to » So I've flattened my work and private email inboxes to single inbox folders and I don't even know anymore what I was thinking before trying frantically to organise everything in sub folders. Labels and search filters are the way forward.

Wouldn’t you rather have work and private seperated? Any thought behind this decission? I like tags, like Gmail does it. I still think mail needs a big rethink. It’s too prominent in life, to be this archaic.

⤋ Read More
In-reply-to » I'm looking to develop a static site for twtxt.dev -- A domain I own and have wanted to use for developer and specification docs for Twtxt.

@doesnm@doesnm.p.psf.lt Thanks! I’ve almost come up with my own theme already 🤣 I actually don’t really want to use Hugo at all, I find it too complicated. But it is pretty popular so I thought maybe I’d rip-off a nice theme… Hmmm 🧐

Anyway, What I really normally use for a lot of my static sites is zs

⤋ Read More

More thoughts about changes to twtxt (as if we haven’t had enough thoughts):

  1. There are lots of great ideas here! Is there a benefit to putting them all into one document? Seems to me this could more easily be a bunch of separate efforts that can progress at their own pace:

1a. Better and longer hashes.

1b. New possibly-controversial ideas like edit: and delete: and location-based references as an alternative to hashes.

1c. Best practices, e.g. Content-Type: text/plain; charset=utf-8

1d. Stuff already described at dev.twtxt.net that doesn’t need any changes.

  1. We won’t know what will and won’t work until we try them. So I’m inclined to think of this as a bunch of draft ideas. Maybe later when we’ve seen it play out it could make sense to define a group of recommended twtxt extensions and give them a name.

  2. Another reason for 1 (above) is: I like the current situation where all you need to get started is these two short and simple documents:
    https://twtxt.readthedocs.io/en/latest/user/twtxtfile.html
    https://twtxt.readthedocs.io/en/latest/user/discoverability.html
    and everything else is an extension for anyone interested. (Deprecating non-UTC times seems reasonable to me, though.) Having a big long ā€œtwtxt v2ā€ document seems less inviting to people looking for something simple. (@prologic@twtxt.net you mentioned an anonymous comment ā€œyou’ve ruined twtxtā€ and while I don’t completely agree with that commenter’s sentiment, I would feel like twtxt had lost something if it moved away from having a super-simple core.)

  3. All that being said, these are just my opinions, and I’m not doing the work of writing software or drafting proposals. Maybe I will at some point, but until then, if you’re actually implementing things, you’re in charge of what you decide to make, and I’m grateful for the work.

⤋ Read More
In-reply-to » This is only first draft quality, but I made some notes on the #twtxt v2 proposal. http://a.9srv.net/b/2024-09-25

Good writeup, @anth@a.9srv.net! I agree to most of your points.

3.2 Timestamps: I feel no need to mandate UTC. Timezones are fine with me. But I could also live with this new restriction. I fail to see, though, how this change would make things any easier compared to the original format.

3.4 Multi-Line Twts: What exactly do you think are bad things with multi-lines?

4.1 Hash Generation: I do like the idea with with a new uuid metadata field! Any thoughts on two feeds selecting the same UUID for whatever reason? Well, the same could happen today with url.

5.1 Reply to last & 5.2 More work to backtrack: I do not understand anything you’re saying. Can you rephrase that?

8.1 Metadata should be collected up front: I generally agree, but if the uuid metadata field were a feed URL and no real UUID, there should be probably an exception to change the feed URL mid-file after relocation.

⤋ Read More
In-reply-to » Okay folks, I've spent all day on this today, and I think its in "good enough"ā„¢ shape to share:

@prologic@twtxt.net Thanks for writing that up!

I hope it can remain a living document (or sequence of draft revisions) for a good long time while we figure out how this stuff works in practice.

I am not sure how I feel about all this being done at once, vs. letting conventions arise.

For example, even today I could reply to twt abc1234 with ā€œ(#abc1234) Edit: ā€¦ā€ and I think all you humans would understand it as an edit to (#abc1234). Maybe eventually it would become a common enough convention that clients would start to support it explicitly.

Similarly we could just start using 11-digit hashes. We should iron out whether it’s sha256 or whatever but there’s no need get all the other stuff right at the same time.

I have similar thoughts about how some users could try out location-based replies in a backward-compatible way (append the replyto: stuff after the legacy (#hash) style).

However I recognize that I’m not the one implementing this stuff, and it’s less work to just have everything determined up front.

Misc comments (I haven’t read the whole thing):

  • Did you mean to make hashes hexadecimal? You lose 11 bits that way compared to base32. I’d suggest gaining 11 bits with base64 instead.

  • ā€œClients MUST preserve the original hashā€ — do you mean they MUST preserve the original twt?

  • Thanks for phrasing the bit about deletions so neutrally.

  • I don’t like the MUST in ā€œClients MUST follow the chain of reply-to referencesā€¦ā€. If someone writes a client as a 40-line shell script that requires the user to piece together the threading themselves, IMO we shouldn’t declare the client non-conforming just because they didn’t get to all the bells and whistles.

  • Similarly I don’t like the MUST for user agents. For one thing, you might want to fetch a feed without revealing your identty. Also, it raises the bar for a minimal implementation (I’m again thinking again of the 40-line shell script).

  • For ā€œwho followsā€ lists: why must the long, random tokens be only valid for a limited time? Do you have a scenario in mind where they could leak?

  • Why can’t feeds be served over HTTP/1.0? Again, thinking about simple software. I recently tried implementing HTTP/1.1 and it wasn’t too bad, but 1.0 would have been slightly simpler.

  • Why get into the nitty-gritty about caching headers? This seems like generic advice for HTTP servers and clients.

  • I’m a little sad about other protocols being not recommended.

  • I don’t know how I feel about including markdown. I don’t mind too much that yarn users emit twts full of markdown, but I’m more of a plain text kind of person. Also it adds to the length. I wonder if putting a separate document would make more sense; that would also help with the length.

⤋ Read More
In-reply-to » @falsifian Do you have specifics about the GRPD law about this?

@movq@www.uninformativ.de @falsifian@www.falsifian.org @prologic@twtxt.net Maybe I don’t know what I’m talking about and You’ve probably already read this: Everything you need to know about the ā€œRight to be forgottenā€ coming straight out of the EU’s GDPR Website itself. It outlines the specific circumstances under which the right to be forgotten applies as well as reasons that trump the one’s right to erasure …etc.

I’m no lawyer, but my uneducated guess would be that:

A) twts are already publicly available/public knowledge and such… just don’t process children’s personal data and MAYBE you’re good? Since there’s this:

… an organization’s right to process someone’s data might override their right to be forgotten. Here are the reasons cited in the GDPR that trump the right to erasure:

  • The data is being used to exercise the right of freedom of expression and information.
  • The data is being used to perform a task that is being carried out in the public interest or when exercising an organization’s official authority.
  • The data represents important information that serves the public interest, scientific research, historical research, or statistical purposes and where erasure of the data would likely to impair or halt progress towards the achievement that was the goal of the processing.

B) What I love about the TWTXT sphere is it’s Human/Humane element! No deceptive algorithms, no Corpo B.S …etc. Just Humans. So maybe … If we thought about it in this way, it wouldn’t heart to be even nicer to others/offering strangers an even safer space.
I could already imagine a couple of extreme cases where, somewhere, in this peaceful world one’s exercise of freedom of speech could get them in Real trouble (if not danger) if found out, it wouldn’t necessarily have to involve something to do with Law or legal authorities. So, If someone asks, and maybe fearing fearing for… let’s just say ā€˜Their well being’, would it heart if a pod just purged their content if it’s serving it publicly (maybe relay the info to other pods) and call it a day? It doesn’t have to be about some law/convention somewhere … 🤷 I know! Too extreme, but I’ve seen news of people who’d gone to jail or got their lives ruined for as little as a silly joke. And it doesn’t even have to be about any of this.

P.S: Maybe make X tool check out robots.txt? Or maybe make long-term archives Opt-in? Opt-out?
P.P.S: Already Way too many MAYBE’s in a single twt! So I’ll just shut up. šŸ˜…

⤋ Read More
In-reply-to » @falsifian Do you have specifics about the GRPD law about this?

@prologic@twtxt.net I have no specifics, only hopes. (I have seen some articles explaining the GDPR doesn’t apply to a ā€œpurely personal or household activityā€ but I don’t really know what that means.)

I don’t know if it’s worth giving much thought to the issue unless either you expect to get big enough for the GDPR to matter a lot (I imagine making money is a prerequisite) or someone specifically brings it up. Unless you enjoy thinking through this sort of thing, of course.

⤋ Read More

isn’t the benefit of blake2b that it is a more efficient algo than sha1 and has the same or similar entropy to sha3? i thought we had partially solved this with some type of expanding hash size? additionally we could increase bit density by using base36 or base64/url-safe…

⤋ Read More
In-reply-to » @prologic Some criticisms and a possible alternative direction:

@lyse@lyse.isobeef.org This looks like a nice way to do it.

Another thought: if clients can’t agree on the url (for example, if we switch to this new way, but some old clients still do it the old way), that could be mitigated by computing many hashes for each twt: one for every url in the feed. So, if a feed has three URLs, every twt is associated with three hashes when it comes time to put threads together.

A client stills need to choose one url to use for the hash when composing a reply, but this might add some breathing room if there’s a period when clients are doing different things.

(From what I understand of jenny, this would be difficult to implement there since each pseudo-email can only have one msgid to match to the in-reply-to headers. I don’t know about other clients.)

⤋ Read More
In-reply-to » @movq Is there a good way to get jenny to do a one-off fetch of a feed, for when you want to fill in missing parts of a thread? I just added @slashdot to my private follow file just because @prologic keeps responding to the feed :-P and I want to know what he's commenting on even though I don't want to see every new slashdot twt.

@prologic@twtxt.net I guess I thought they were search engines. Anyway, the registry API looks like a decent one for searching for tweets. Could/should yarn.social pods implement the same API?

⤋ Read More

** Constants, variable assignment, and pointers **
After reading my last post, a friend asked an interesting question that I thought would also be fun to write about!

They noted that in the reshape function I declared the variable result as a constant. They asked if this was a mistake? Because I was resigning the value iteratively, shouldn’t it be declared using let?

What is happening there is that the constant is being declared as an array, so the reference … ⌘ Read more

⤋ Read More
In-reply-to » @lyse so, is it safe to assume you occasionally, but carefully, vet your feeds, and have contingencies in place to not keep requesting a seemingly dead feed over and over?

Correct, @bender@twtxt.net. Since the very beginning, my twtxt flow is very flawed. But it turns out to be an advantage for this sort of problem. :-) I still use the official (but patched) twtxt client by buckket to actually fetch and fill the cache. I think one of of the patches played around with the error reporting. This way, any problems with fetching or parsing feeds show up immediately. Once I think, I’ve seen enough errors, I unsubscribe.

tt is just a viewer into the cache. The read statuses are stored in a separate database file.

It also happened a few times, that I thought some feed was permanently dead and removed it from my list. But then, others mentioned it, so I resubscribed.

⤋ Read More

Watch Steve Jobs Speak at the 1983 International Design Conference
The Steve Jobs Archive, which was launched by Laurene Powell Jobs, Tim Cook, and Jony Ive, has shared an hour-long video of a then 28 year old Steve Jobs speaking in Aspen at the 1983 International Design Conference, as well as some thoughts from Jony Ive, and a nice collection of old photographs and Apple … [Read More](https://osxdaily.com/2024/07/27/watch-steve-jobs-speak-at-the-1983-international-d … ⌘ Read more

⤋ Read More

Apple’s M4 iPad Pro vs. Samsung’s Galaxy Tab S9 Ultra
With the introduction of OLED displays, a thinner design, and more in the M4 iPad Pro, we thought it was worth taking another look at Samsung’s flagship OLED tablet, the Galaxy Tab S9 Ultra, to see how the two compare and which one might be the better purchase for you.

_Subscribe to the MacRumors YouTube channel for more videos._

Both … ⌘ Read more

⤋ Read More

** One trip to the beach inspired me to make two programs this weekend **
This weekend we traveled 20 minutes to a sort of secret beach. It was a grey, overcast day, and we timed our trip to line up with low tide so that we could walk waaaaaaay far out into the ocean all the way to some little islands. It was fun, and we saw some neat birds, including an Oyster Catcher. While on this adventure I took a picture. Later at home I thoughtā€œit’d be nice to dither this!ā€ I usually reach for [Dit … ⌘ Read more

⤋ Read More

Hands-On With the iPad Pro’s Nano-Texture Glass - Is It Worth the Upgrade?
The M4 iPad Pro models that Apple released earlier this year have a display upgrade option that allows you to purchase nano-texture display glass, which is supposed to cut down on glare.

_Subscribe to the MacRumors YouTube channel for more videos._

We’ve already reviewed the ā€ŒiPad Proā€Œ, but we thought we’d revisit t … ⌘ Read more

⤋ Read More

** books, the end of winter, video games and javascript **
Since my last update I’ve read a handful of books. Some standout reads include Tales from Earthsea, The Other Wind and The Left Hand of Darkness, all by Ursula K. Le Guin. I’d read them all before, accepted for The Other Wind. I thought I’d read The Other Wind, but hadn’t! Chaos: Making a New Science by James Gleick was also a fun read. I liked it for the rabbit holes it invited me down; I’ve been thinking a lot … ⌘ Read more

⤋ Read More

Somewhere I read that changing location, like entering a room, can rejigger neural pathways so that some thoughts and memories are somehow associated with the space. It’s the same for me when picking up a laptop. My purpose feels clear until I open a blank web browser window and my mind goes blank, too. In all the moments where I’m drawing a total blank, and then suddenly the thoughts come easily again: maybe that’s my brain looking for the room it was in before.

⤋ Read More

ā€˜No finishing line’ for veteran Aussie star
Usman Khawaja is giving no thoughts to potential retirement ahead of the Test series against New Zealand, adamant the next two matches are the only ones that matter and ā€œthere is no finishing lineā€ in sight. ⌘ Read more

⤋ Read More

ā€˜Look what we can do’: Motorola unveils new bendable smartphone
Motorola is doing something people ā€œnever thought imaginableā€, says EFTM Editor Trevor Long.

His comments follow the company’s unveiling of a new bendable smartphone.

ā€œI don’t know why you’d want this,ā€ Mr Long told Sky News Australia.

ā€œBending it was the most mind-blowing thing I’ve ever done because it felt like I was breaking it, but I wasn’t.

ā€œThe idea here is to sho … ⌘ Read more

⤋ Read More

Navalny was close to being freed in prisoner swap, ally says
Russian opposition politician Alexei Navalny was ā€œkilledā€ because he was close to being freed in a prisoner swap and President Vladimir Putin could not tolerate the thought of him being released, a close ally alleged on Monday (February 26). Lauren Anthony reports. ⌘ Read more

⤋ Read More

Locals in Nikki Haley’s hometown share thoughts on former South Carolina governor
Sky News Washington Correspondent Annelise Nielsen has visited Nikki Haley’s hometown of Bamberg to explore why many voted for Donald Trump in the South Carolina primary.

Haley became governor with a key endorsement from Sarah Palin, but the deeply conservative part of the south is now all-in for Trump.

ā€œTrump’s such a booming figure … s … ⌘ Read more

⤋ Read More
In-reply-to » (#fytbg6a) What about using the blockquote format with > ?

@eapl.me@eapl.me this is interesting. Is the square bracket something used in the wild for multilingual twts?

@prologic@twtxt.net what are your thoughts? Should we extend the parser to handle [lang] and [boost] ? Or a generic attribute spec. Single word is a boolean attribute. And one with an = is a string key/value.

⤋ Read More

Status 2024-01-29
Friday is my day off from work, as usual. So when I’m typing this I’m
in front of the hackstation (not a battlestation, obviously) with my
third cup of coffee, writing an update again.

I’ve been doing these status updates on my Gemini log, but I’m
increasingly aware of the dropping amounts of traffic, so I’m thinking
about doing them on the blog instead, but see below for some thoughts
on Gemini.

Abstract

In which I speak about an intense week, feeling good(?), spending … ⌘ Read more

⤋ Read More

wow, we got about 30\40cm of snow last night, and when I woke up we could not even look out the window because of the snow storm, thought the kids would not get to school, but right before they left for the bus it cleared up. Got rid of the snow outside after work today, so now it’s clear skies and nice out :)

⤋ Read More
In-reply-to » Holy moly, this is a fantastic 37C3 talk about security researchers getting attacked and they reverse-engineer and fully disclose the entire – very advanced – attack. Operation Triangulation: What You Get When Attack iPhones of Researchers Very impressive!

@lyse@lyse.isobeef.org I have read the white papers for MLS before. I have put a lot of thought on how to do it with salty/ratchet. Its a very good tech for ensuring multiple devices can be joined to an encrypted chat. But it is bloody complicated to implement.

⤋ Read More

Obligatory Twtxt post: I love how I can simply use a terminal window and some very basic tools (echo, scp, ssh) to publish thoughts, as they pop up, onto the Internet in a structured way, that can be found and perhaps even appreciated.

⤋ Read More

Celebrating the GitHub Awards 2023 recipients šŸŽ‰
The GitHub Awards recognizes and celebrates the outstanding contributions and achievements in the developer community, honoring individuals, projects, and organizations for their impactful work, innovation, thought leadership, and creating an outsized positive impact on the community.

The post Celebrating the GitHub Awards 2023 recipients šŸŽ‰ appeared first on [The … ⌘ Read more

⤋ Read More
In-reply-to » How are you all doing today? :)

@lyse@lyse.isobeef.org @movq@www.uninformativ.de Oh, I had a experience this weekend as well, a dog was barking in the forest, sounded like something was wrong (it’s a fairly public area), I then continued my walk, and Nanook got more and more nervous, I then continued the walk, and Nanook froze. I could still hear the dog barking quite close. And then someone shot a rifle. I’m glad I did not walk up to where that dog was, I kinda wanted too, because I first thought maybe something was wrong. But it honestly weirded me out that they did this in such a place as they did, almost called the cops to be honest to check with them, but I did not at the time..

⤋ Read More

Run Threads on Desktop with Mac, Windows PC, Linux
Threads, the social network microblogging Twitter/X competitor launched by Meta (Facebook), is typically thought of as a mobile only experience, with users having the Threads app on their iPhone or Android device. But, if you have a Mac, Windows PC, or Linux computer, and you want to use Threads on your desktop computer, you can … Read More ⌘ Read more

⤋ Read More
In-reply-to » What if I run my Gitea Actions Runners on some Vultr VM(s) for now? At least until I get some more hardware just for a "build farm" šŸ¤”

How much CPU you got in the server farm? I thought you had a whole rack.

⤋ Read More

I’m curious. How many people truly believe blockchain social networks are the future?

NFTs, tokens, monetization, revenue…

I’m sorry, but how are your random social media blabbers worth any money?
Unless you’re Shakespeare or Einstein or some philosophical or scientific genius, I don’t see why anyone would want to read your posts, let alone cash out some ā€œcryptoā€ from some ā€œwalletā€.

And that applies to most people. Sure, your lifestyle and your thoughts may be interesting. But who’s going to start paying to view what’s going on in your life?

As if likes, upvotes, hearts, and subscriptions weren’t narcissistic enough, let’s make people think someone wants to pay them with crypto to view their random posts online.

⤋ Read More

Release Radar Ā· Spring 2023 Edition
It’s been a while since we’ve published our Release Radar. You can blame IRL conferences coming back, getting influenza, and being struck down by the weather. But those are just me problems. While I’ve been down or travelling, the community has been hard at work shipping new releases and new projects. So, we thought we’d […] ⌘ Read more

⤋ Read More
In-reply-to » I've been thinking in the back of my mind for a while now, that the Yarn.social / twtxt + ActivityPub integration was a mistake and a. bad idea. I'm starting to consider it a complete failure.

I understand your thoughts on this, but I would not call it a failure - because you learned a lot from it, and lots of things worked as well.
And there are alternatives for those who needs\wants activitypub, so I think also yarn\twtxt benefits from you focusing on that instead of dealing with the frustrations of activitypub integration. And maybe it’ll feel a bit better to put that on the backburner? :)

⤋ Read More

Question to all you Gophers out there: How do you deal with custom errors that include more information and different kinds of matching them?

I started with a simple var ErrPermissionNotAllowed = errors.New("permission not allowed"). In my function I then wrap that using fmt.Errorf("%w: %v", ErrPermissionNotAllowed, failedPermissions). I can match this error using errors.Is(err, ErrPermissionNotAllowed). So far so good.

Now for display purposes I’d also like to access the individual permissions that could not be assigned. Parsing the error message is obviously not an option. So I thought, I create a custom error type, e.g. type PermissionNotAllowedError []Permission and give it some func (e PermissionNotAllowedError) Error() string { return fmt.Sprintf("permission not allowed: %v", e) }. My function would then return this error instead: PermissionNotAllowedError{failedPermissions}

At some layers I don’t care about the exact permissions that failed, but at others I do, at least when accessing them. A custom func (e PermissionNotAllowedError) Is(target err) bool could match both the general ErrPermissionNotAllowed as well as the PermissionNotAllowedError. Same with As(…). For testing purposes the PermissionNotAllowedError would then also try to match the included permissions, so assertions in tests would work nicely. But having two different errors for different matching seems not very elegant at all.

Did you ever encounter this scenario before? How did you address this? Is my thinking flawed?

⤋ Read More

** of array programming, lightsabers and some thoughts on permacomputing **
A bit of this and that, some kind of mishmosh.

Over the last few weeks I’ve been reading a lot about array programming systems like J, K, Q, APL, and BQN. I’ve been intending to add a page to the wiki about them, but havent gotten to that yet. Consider this a little promise that I’ll do that sometime soon. I’m interested in array programming less because I think it’s particularl … ⌘ Read more

⤋ Read More
In-reply-to » The code for the desktop client is now public here: https://github.com/stig-atle/YarnDesktopClient , I will create tickets for the known things I need to fix and such later today.

@lyse@lyse.isobeef.org valid points and noted. šŸ˜€
It will improve shortly. I had not thought about quotes in password, so that was a nice catch that needs to be fixed.

⤋ Read More

I played around with parsers. This time I experimented with parser combinators for twt message text tokenization. Basically, extract mentions, subjects, URLs, media and regular text. It’s kinda nice, although my solution is not completely elegant, I have to say. Especially my communication protocol between different steps for intermediate results is really ugly. Not sure about performance, I reckon a hand-written state machine parser would be quite a bit faster. I need to write a second parser and then benchmark them.

lexer.go and newparser.go resemble the parser combinators: https://git.isobeef.org/lyse/tt2/-/commit/4d481acad0213771fe5804917576388f51c340c0 It’s far from finished yet.

The first attempt in parser.go doesn’t work as my backtracking is not accounted for, I noticed only later, that I have to do that. With twt message texts there is no real error in parsing. Just regular text as a ā€œfallbackā€. So it works a bit differently than parsing a real language. No error reporting required, except maybe for debugging. My goal was to port my Python code as closely as possible. But then the runes in the string gave me a bit of a headache, so I thought I just build myself a nice reader abstraction. When I noticed the missing backtracking, I then decided to give parser combinators a try instead of improving on my look ahead reader. It only later occurred to me, that I could have just used a rune slice instead of a string. With that, porting the Python code should have been straightforward.

Yeah, all this doesn’t probably make sense, unless you look at the code. And even then, you have to learn the ropes a bit. Sorry for the noise. :-)

⤋ Read More
In-reply-to » Posting from c++, fltk GUI.

Got some good progress on the GTK gui today, got the timeline to work!
Took some time to figure out how the UI layout stuff works, but it looks good now.
I will add the avatars next.

The way it is right now - I got this up and running in a couple of hours, instead of ā€˜days’ with FLTK.
So I’m glad I made the decision to switch to GTK,
Right now I’m doing all development on Trisquel OS, windows version will come later on.

Also - since I thought about the possibility that I wanted to switch early in the process the code that does all the work is UI independent, meaning this was easy to do. +1 for planning ahead.. :)
I will post a screenshot of the new UI soon, once it’s a bit polished.

⤋ Read More
In-reply-to » Q: Is anyone actually finding the activitypub experimental feature I've been working on (for those running main) actually useful? šŸ¤” (because I'm not and having second thoughts...)

@prologic@twtxt.net I like it, I get to follow some people I could not follow before, which I find useful.
But if you have second thoughts about it all - then I can understand that.
If you decide to pull the plug on it - then I’ll just get some additional activitypub service installed on my server and use that for that (I was thinking about installing this: https://github.com/tsileo/microblog.pub ) if needed.

⤋ Read More

Q: Is anyone actually finding the activitypub experimental feature I’ve been working on (for those running main) actually useful? šŸ¤” (because I’m not and having second thoughts…)

⤋ Read More

šŸ‘‹ Hey y’all yarners šŸ¤— – @darch@neotxt.dk and I have been discussing in our Weekly Yarn.social call (still ongoing… come join us! šŸ™) about the experimental Yarn.social <-> Activity Pub integration/bridge I’ve been working on… And mostly whether it’s even a good idea at al, and if we should continue or not?

There are still some outstanding issues that would need to be improved if we continued this regardless

Some thoughts being discussed:

  • Yarn.social pods are more of a ā€œfamilyā€, where you invite people into your ā€œhomeā€ or ā€œcommunityā€
  • Opening up to the ā€œFediviseā€ is potentially ā€œuncontrolledā€
  • Even at a small scale (a tiny dev pod) we see activities from servers never interacted with before
  • The possibility of abuse (because basically anything can POST things to your Pod now)
  • Pull vs. Push model polarising models/views which whilst in theory can be made to work, should they?

Go! šŸ‘

⤋ Read More

@stigatle@yarn.stigatle.no The reason I was thinking about a separate binary / project / service is to bring along our Twtxt friends like @movq@www.uninformativ.de and @lyse@lyse.isobeef.org and anyone else that self-hosted their Twtxt feed on their own. But this of course has added complexities like spinning up yanrd along with whatever this thing will be called configuring the two and connecting them. Fortunately however yarnd already does this with the feeds service and defaults to using feeds.twtxt.net – So we would so something similar there too. Further thoughts? šŸ¤”

⤋ Read More

** Accessibility and the product person **
This post is a slightly modified version of a talk I presented to the product practice at my work. It presents a few ways that product designers and managers can help to move accessibility forward. It is a little bit different than what I normally share, here, but, I thought it may be interesting to some folks.

[![Picture of a slide with the title ā€œWhy though?ā€ It also includes a quote from Kat Holmes’ book Mismatch. The quote reads: ā€œThere are many challeng … ⌘ Read more

⤋ Read More

** Accessibility updates **
I’m feeling pretty chuffed! Last week I wrote about my intention to make this website more accessible. My motivations were many-fold, but, primarily, mostly shame. I’ve worked as an accessibility specialist in the past, and now spend a bunch of my days at work looking for ways to make public infrastructure online more accessible. It seemed fitting to at least make sure the little bit I contribute to the web here is also accessible.

I thought it was going t … ⌘ Read more

⤋ Read More

** week notes **
It got a wee bit cold here in Maine this weekend. It was thankfully uneventful for us. We hung around inside and watched it get real cold outside. Our home faired pretty well, too. Honestly pleasantly surprised about that!

We picked this weekend to go all in on potty training — pantsless days, treats, rousing bouts of encouragement sung, and a lot of spot cleaning. Fueled by hubris, I thought we had this potty trainin … ⌘ Read more

⤋ Read More

H3: Instead of C3
[Updated with correct Gemlog link.]

A version of this was posted on on 2023-01-06 but I thought it might
also fit here. Go to my gemlog for somewhat more personal takes and
see what I publish first. IPv6 only!

gemini://gem.hack.org/mc/log/

As long-time readers know I have participated in the Chaos
Communication Congress (C3) in Germany every year since 2008.

Since C3 was cancelled this year I thought I’d arrange a very small
conference of my own. I would at least try to gather some friends and
acquaintances … ⌘ Read more

⤋ Read More

H3: Instead of C3
A version of this was posted on on 2023-01-06 but I thought it might
also fit here. Go to my gemlog for somewhat more personal takes and
see what I publish first. IPv6 only!

gemini://gem.hack.org/log/

As long-time readers know I have participated in the Chaos
Communication Congress (C3) in Germany every year since 2008.

Since C3 was cancelled this year I thought I’d arrange a very small
conference of my own. I would at least try to gather some friends and
acquaintances in chat and video conference and watch t … ⌘ Read more

⤋ Read More
In-reply-to » Trying to wrap my head around webfinger..

@prologic@twtxt.net That was exactly my thought at first too. but what do we put as the rel for salty account? since it is decentralized we dont have a set URL for machines to key off. so for example take the standard response from okta:

# http GET https://example.okta.com/.well-known/webfinger  resource==acct:bob
{
    "links": [
        {
            "href": "https://example.okta.com/sso/idps/OKTA?login_hint=bob#",
            "properties": {
                "okta:idp:type": "OKTA"
            },
            "rel": "http://openid.net/specs/connect/1.0/issuer",
            "titles": {
                "und": "example"
            }
        }
    ],
    "subject": "acct:bob"
}

It gives one link that follows the OpenID login. So the details are specific to the subject acct:bob.

Mastodons response:

{
  "subject": "acct:xuu@chaos.social",
  "aliases": [
    "https://chaos.social/@xuu",
    "https://chaos.social/users/xuu"
  ],
  "links": [
    {
      "rel": "http://webfinger.net/rel/profile-page",
      "type": "text/html",
      "href": "https://chaos.social/@xuu"
    },
    {
      "rel": "self",
      "type": "application/activity+json",
      "href": "https://chaos.social/users/xuu"
    },
    {
      "rel": "http://ostatus.org/schema/1.0/subscribe"
    }
  ]
}

it supplies a profile page and a self which are both specific to that account.

⤋ Read More

Trying to wrap my head around webfinger..

my first thoughts about it were that a subject of acct:me@sour.is would have a listing of rel’s for the different accounts that are related to me (ie. yarn, salty, twitter, mastodon, etc…)

but maybe my thinking is at the wrong level.. that each of those accounts would be on a subject level and the rels are describing different aspects of that account. so i would have salty:acct:xuu@sour.is, twitter:acct:xuu, mastodon:acct:xuu@chaos.social, yarn:acct:xuu@ev.sour.is and then i could have a main acct:me@sour.is that links them together as aliases.

I found okta will do something similar with its accounts to show as okta:acct:user@domain so maybe I am on to something?

⤋ Read More
In-reply-to » More specifically: Will this be expanded into something like Gitea with the concept of users and organizations, or will it stay with a simple flat repository model like upstream legit or cgit?

Huh. I thought I had that one. Must be an unteste regression. Will add it to the list!

⤋ Read More

** I read some books in 2022, and have some thoughts about computer science writing **
At the start of this year I set out to revive my long dead reading habit. After having kids it fell by the wayside. I’ve read 41 books so far this year. Mostly a mix of science fiction and nonfiction computer science books. Here’s the complete list of everything I’ve read. I’ve got mixed feelings about keeping track and sharing cou … ⌘ Read more

⤋ Read More

** Thoughts on accessibility in smol computing **
What follows is my attempt to spark a conversation in a few converging, but separate communities I lurk in.

I’ve already had a bunch of amazing conversations around this topic with a lot of people. Those conversations helped to shape what follows. Thanks to everyone who was willing to think this stuff through with me.

Before I get into it I want to say at the top this isn’t meant as an accusation against anyone in these communities, nor the goals of t … ⌘ Read more

⤋ Read More