Searching yarn

Twts matching #US
Sort by: Newest, Oldest, Most Relevant

Iconography of the PuTTY tools
Ah, PuTTY. Good old reliable PuTTY. This little tool is one of those cornerstone applications in the toolbox of most of us, without any fuss, without any upsells or anti-user nonsense – it just does its job, and it has been doing its job for 30 years. Have you ever wondered, though, where PuTTY’s icons come from, how they were made, and how they evolved over time? PuTTY’s icon designs date from the late 1990s and early 2000s. They’ve never had a major stylistic redesign … ⌘ Read more

⤋ Read More
In-reply-to » I got a small desk calendar as advertising gift. It shows three months at once. I'm using this thing since the beginning of this year and I have to say that it turned out to be super useful. I'm happily surprised.

do you mind sharing a picture ?

I can’t find something similar here, but my wife gave this one last year, and I’ve been using it a bit. I’d say it’s useful as you’ve shared.

Image

We also have a shared calendar in the kitchen for family events, and it’s working great.

⤋ Read More

I got a small desk calendar as advertising gift. It shows three months at once. I’m using this thing since the beginning of this year and I have to say that it turned out to be super useful. I’m happily surprised.

It sits on my desk next to my rightmost monitor. I’ve set it up so that I can see the last, current and next months. Each morning, I advance the “today window” or whatever its proper name is. This gives me a sense of what date we have today and which I will have forgotten half a minute later already. At most. However, it’s easily at hand by turning my head just a few degrees.

With the last month still showing, I had several occasions so far where a date in the past popped up in a meeting. I could easily tell when something happened, how long ago that was. Or how many days or weeks are left until we have to deliver something, etc.

In hindsight, this is absolutely no surprise at all. But I still find it fascinating. I’m now actually wondering why I never had something like that before. How could I live without that thing? Sure, I pulled up a calendar on my computer, ncal -w3 or so. But I always hated the inverted ncal output, necessary for showing week numbers, though. Having a paper calander right next to my screen at all times is sooooo much more handy.

So, do yourself a favor and think about whether such a desk calendar might be useful to you.

The only annoying thing is that the “today window” moves too easily. It slips down by its own. I reckon it wants me to regularly interact with it, so that I memorize the current date.

⤋ Read More

‘I feel utter anger’: from Canada to Europe, a movement to boycott US goods is spreading
In Canada, where the American national anthem has been booed during hockey matches with US teams, a slew of apps has emerged with names such as “buy beaver”, “maple scan” and “is this Canadian” to allow shoppers to scan QR barcodes and reject US produce from alcohol to pizza toppings. In Sweden, more than 70,000 users have joined a Facebook group calling for a … ⌘ Read more

⤋ Read More
In-reply-to » What does the #twtxt community think about having a p2p database to store all history? This will be managed by Registries.

pls elaborate on a ‘p2p database’, ‘all story’ and ‘Registries’.

My first thought takes me to something like secure-scuttlebutt which it’s painful to sync data using clients, and too slow compared to downloading a text file.

Also I’d like for twtxt to avoid becoming an ActivityPub. Works well but it’s uses too many resources IMO.
https://kingant.net/2025/02/mastodon-the-cost-of-running-my-own-server/

I’m defending being able to self-host your Web client (like you’d do with a Wordpress, twtxt is a micrologging, at the end), instead of federated instances, so in a first thought I’d say Registries have many disadvantages being the first one that someone has to maintain them active.

⤋ Read More
In-reply-to » The other day, after a discussion online, we came to the conclusion that using awk+sed+tr could replace much of the development that requires a database. However, using SQLite to have a SQL syntax isn't a bad idea either. What do you think?

@prologic@twtxt.net We often turn to a database when we can use a plain text file, such as a CSV. With sed or awk, you can run simple queries without using a database.
Did I get the context right? 😀

⤋ Read More

Today I learned how to use TestCafé. It is a E2E framework.
I needed it because I wanted to write a script that would launch a browser in the background, log me in with a username and password, and return the cookie value with the token ID. The goal is to perform tests with the token.
https://testcafe.io/

⤋ Read More

The other day, after a discussion online, we came to the conclusion that using awk+sed+tr could replace much of the development that requires a database. However, using SQLite to have a SQL syntax isn’t a bad idea either. What do you think?

⤋ Read More

EU-US rift triggers call for made-in-Europe tech
The utter chaos in the United States and the country’s antagonistic, erratic, and often downright hostile approach to what used to be its allies has not gone unnoticed, and it seems it’s finally creating some urgency in an area in which people have been fruitlessly advocating for urgency for years: digital independence from US tech giants. Efforts to make Europe more technologically “sovereign” have gone mainstream. The European Commi … ⌘ Read more

⤋ Read More

Notes from setting up GlobalTalk using QEMU on Ubuntu
I signed up for GlobalTalk in 2024, but never found the time to get a machine set up. Fast-forward to MARCHintosh 2025 and I wasn’t going to let another year go by. This is a series of notes from my experience getting System 7.6 up and running on QEMU 68k on Ubuntu. Hopefully this will help others that might be hitting a roadblock. I certainly hit several! ↫ Cale Mooth A short and to-the-point guide for those of us who want … ⌘ Read more

⤋ Read More

whoa! esp32 = 29 undocumented commands, collectively characterized as a backdoor, that could be used for memory manipulation, MAC address spoofing and packet injection

⤋ Read More
In-reply-to » @prologic We can't agree on this idea because that makes things even more complicated than it already is today. The beauty of twtxt is, you put one file on your server, done. One. Not five million. Granted, there might be archive feeds, so it might be already a bit more, but still faaaaaaar less than one file per message.

@prologic@twtxt.net oops, I’m sorry to see disagreement leading to draining emotions.

It remind me a bit of the Conclave movie where every part wanted to defend their vision and there is only a winner. If one wins the other loses. Like the political side of many leaders and volunteers representing a broad community. I don’t think that’s the case here. Most of us (in not all) should ‘win’.

I can only add that isn’t nice to listen that ‘my idea and effort’ is not what the rest of the people expect. I personally have a kind of issue with public rejection, but I also like to argue, discuss and even fight a bit. “A gem cannot be polished without friction, nor a man perfected without trials,” they say.
This exercise and belonging to this community also brings me good feelings of smart people trying to solve a human and technical problem, which is insanely difficult to get ‘right’.

I genuinely hope we can understand each other, and even with our different and respectful thoughts on the same thing, we might reach an agreement on what’s the best for most people.

Good vibes to everyone!

⤋ Read More
In-reply-to » @prologic We can't agree on this idea because that makes things even more complicated than it already is today. The beauty of twtxt is, you put one file on your server, done. One. Not five million. Granted, there might be archive feeds, so it might be already a bit more, but still faaaaaaar less than one file per message.

@lyse@lyse.isobeef.org deeply honored to be used as an example, when illustrating things that will break! :-D <3

⤋ Read More

Brother denies using firmware updates to brick printers with third-party ink
Brother laser printers are popular recommendations for people seeking a printer with none of the nonsense. By nonsense, we mean printers suddenly bricking features, like scanning or printing, if users install third-party cartridges. Some printer firms outright block third-party toner and ink, despite customer blowback and lawsuits. Brother’s laser printers have historically worke … ⌘ Read more

⤋ Read More

Porting the curl command-line tool and library with Goa
For more than a decade, we have a port of the curl library for Genode available. With the use of Sculpt OS as a daily driver as well as the plan to run Goa natively on Sculpt OS by the end of the year, the itch to also port the curl command-line tool became irresistible. Of course this is a perfect territory for using Goa. In this article, I will share the process of porting the curl command-line tool and shared library … ⌘ Read more

⤋ Read More
In-reply-to » One of the biggest gripes of the community with the way the threading model currently works with Twtxt v1.2 (https://twtxt.dev) is this notion of:

Why not just use registry? It can be personal or hosted by someone like registry.twtxt.org. Just need to be adapt to support hashes

⤋ Read More
In-reply-to » @prologic We can't agree on this idea because that makes things even more complicated than it already is today. The beauty of twtxt is, you put one file on your server, done. One. Not five million. Granted, there might be archive feeds, so it might be already a bit more, but still faaaaaaar less than one file per message.

If we don’t keep insisting on simplify and “The beauty of twtxt is, you put one file on your server, done. One.”, then people should just use ActivityPub-based software like Mastodon, PixelFed, etc. which are getting a lot of attention and uses migrating to the fediverse from meta/x here in Denmark over the last couple of months.

⤋ Read More
In-reply-to » One of the biggest gripes of the community with the way the threading model currently works with Twtxt v1.2 (https://twtxt.dev) is this notion of:

@prologic@twtxt.net We can’t agree on this idea because that makes things even more complicated than it already is today. The beauty of twtxt is, you put one file on your server, done. One. Not five million. Granted, there might be archive feeds, so it might be already a bit more, but still faaaaaaar less than one file per message.

Also, you would need to host not your own hash files, but everybody else’s as well you follow. Otherwise, what is that supposed to achieve? If people are already following my feed, they know what hashes I have, so this is to no use of them (unless they want to look up a message from an archive feed and don’t process them). But the far more common scenario is that an unknown hash originates from a feed that they have not subscribed to.

Additionally, yarnd’s URL schema would then also break, because https://twtxt.net/twt/<hash> now becomes https://twtxt.net/user/prologic/<hash>, https://twtxt.net/user/bender/<hash> and so on. To me, that looks like you would only get hashes if they belonged to this particular user. Of course, you could define rules that if there is a /user/ part in the path, then use a different URL, but this complicates things even more.

Sorry, I don’t like that idea.

⤋ Read More
In-reply-to » Dang it! I ran into import cycles with shared test utilities again. :-( Either I have to copy this function to set up an in-memory test storage across packages or I have to put it in the storage package itself and guard it with a build tag that is only used in tests (otherwise I end up with this function in my production binary as well). I don't like any of the alternatives. :-(

re reading so NewRAMStorage(…) is just something that setups your storage and initial data.. that can probably live with storage/sqlite. The point is the storage package does not import the implementations of storage.Storage It just defines the contract for things that use that interface. Now storage/sqlite CAN import storage and not have a circle dep.

It kinda works in reverse for import directions. usually you have your root package that imports things from deeper in the directory structures.. but for the case of interfaces it reverses where the deeper can import from parents but parents cannot import from children.

- app < storage
      < storage/sqlite
      < controller < storage
                   < storage/sqlite
 
- sqlite < storage

- storage X storage/sqlite

⤋ Read More

Startup launches biological computer made of human brain cells
Melbourne start-up launches biological computer using human neurons; Novel immune system function reveals potential for antibiotic advancements; Australia reveals its oldest-known impact crater dating back 3.47 billion years ⌘ Read more

⤋ Read More
In-reply-to » Dang it! I ran into import cycles with shared test utilities again. :-( Either I have to copy this function to set up an in-memory test storage across packages or I have to put it in the storage package itself and guard it with a build tag that is only used in tests (otherwise I end up with this function in my production binary as well). I don't like any of the alternatives. :-(

@xuu@txt.sour.is My layout looks like this:

  • storage/
    • storage.go: defines a Storage interface
    • sqlite.go: implements the Storage interface
    • sqlite_test.go: originally had a function to set up a test storage to test the SQLite storage implementation itself: newRAMStorage(testing.T, $initialData) *Storage
  • controller/
    • feeds.go: uses a Storage
    • feeds_test.go: here I wanted to reuse the newRAMStorage(…) function

I then tried to relocate the newRAMStorage(…) into a

  • teststorage/
    • storage.go: moved here as NewRAMStorage(…)

so that I could just reuse it from both

  • storage/
    • sqlite_test.go: uses testutils.NewRAMStorage(…)
  • controller/
    • feeds_test.go: uses testutils.NewRamStorage(…)

But that results into an import cycle, because the teststorage package imports storage for storage.Storage and the storage package imports testutils for testutils.NewRAMStorage(…) in its test. I’m just screwed. For now, I duplicated it as newRAMStorage(…) in controller/feeds_test.go.

I could put NewRAMStorage(…) in storage/testutils.go, which could be guarded with //go:build testutils. With go test -tags testutils …, in storage/sqlite_test.go could just use NewRAMStorage(…) directly and similarly in controller/feeds_test.go I could call storage.NewRamStorage(…). But I don’t know if I would consider this really elegant.

The more I think about it, the more appealing it sounds. Because I could then also use other test-related stuff across packages without introducing other dedicated test packages. Build some assertions, converters, types etc. directly into the same package, maybe even make them methods of types.

If I went that route, I might do the opposite with the build tag and make it something like !prod instead of testing. Only when building the final binary, I would have to specify the tag to exclude all the non-prod stuff. Hmmm.

⤋ Read More
In-reply-to » lang=en @xuu gotcha! From that PR #17 I think it was reverted? We could discuss about metadata later this month, as it seems that I'm the only person using it.

it seems to be confused with the subject right next to it.. it works better at the end of the twt string.
Yarn won’t display anything. but the parser does add it to the AST in a way that you can parse it out using twt.Attrs().Get("lang")

https://git.mills.io/yarnsocial/go-lextwt/src/branch/main/ast.go#L1270-L1272

https://git.mills.io/yarnsocial/go-types/src/branch/main/twt.go#L473-L478

⤋ Read More

Zen and the art of microcode hacking
Now that we have examined the vulnerability that enables arbitrary microcode patches to be installed on all (un-patched) Zen 1 through Zen 4 CPUs, let’s discuss how you can use and expand our tools to author your own patches. We have been working on developing a collection of tools combined into a single project we’re calling zentool. The long-term goal is to provide a suite of capabilities similar to binutils, but targeting AMD microcode instead of CPU mach … ⌘ Read more

⤋ Read More

Dang it! I ran into import cycles with shared test utilities again. :-( Either I have to copy this function to set up an in-memory test storage across packages or I have to put it in the storage package itself and guard it with a build tag that is only used in tests (otherwise I end up with this function in my production binary as well). I don’t like any of the alternatives. :-(

⤋ Read More

it’s been while since I’d stopped #window-manager hopping and just settled with #Herbstluftwm but I’m NGL, the River #Wayland compositor is starting to grow on me… I’m still not sure if it’s just me but something about it feels clean and snappy. The shortcuts in the vanilla/example configuration feel a bit clunky, but then again, it’s just me being used to the same old ones I keep adopting and replicating across WMs. I’ve got 0 energy for ricing so I’ll just roll with the vanilla config as is (maybe add in a short-cut for a launcher but that will be it).

⤋ Read More
In-reply-to » @eapl.me There are several points that I like, but I want to highlight number 7. https://text.eapl.mx/a-few-ideas-for-a-next-twtxt-version #twtxt

looks good to me!

About alice’s hash, using SHA256, I get 96473b4f or 96473B4F for the last 8 characters. I’ll add it as an implementation example.
The idea of including it besides the follow URL is to avoid calculating it every time we load the file (assuming the client did that correctly), and helps to track replies across the file with a simple search.

Also, watching your example I’m thinking now that instead of {url=96473B4F,id=1} which is ambiguous of which URL we are referring to, it could be something like:
{reply_to=[URL_HASH]_[TWT_ID]} / {reply_to=96473B4F_1}
That way, the ‘full twt ID’ could be 96473B4F_1.

⤋ Read More
In-reply-to » @andros I've commented on the ticket: https://git.mills.io/yarnsocial/twtxt.dev/issues/14#issuecomment-19142

True. Though if the idea turns out to be better.. then community will adopt it.

if you look at the subject for that twt you will see that it uses the extended hash format to include a URL address.

⤋ Read More

We went up our backyard mountain again right after lunch. The sun peaked through the clouds sometimes. The 6°C felt much, much cooler with the northeast wind. We got lucky, though, it was dead calm at the summit. At least on the southwestern side, which is a few meters lower than the very top to the east. That was shielded absolutely perfectly from the wind (we were extremely surprised), so we sat down on a bench and could really enjoy the sun heating us up. Apart from the haze, the view was really nice.

There were even patches of snow left up top, that was unexpected. Also, somebody created a cool rock art piece on a tree stump. That one rock absolutely looked like a face. Crazy!

Image

Enjoy: https://lyse.isobeef.org/waldspaziergang-2025-03-01/

⤋ Read More

Netboot Windows 11 with iSCSI and iPXE
For the past several years my desktop has also had a disk dedicated to maintaining a Windows install. I’d prefer to use the space in my PC case for disks for Linux. Since I already run a home NAS, and my Windows usage is infrequent, I wondered if I could offload the Windows install to my NAS instead. This lead me down the course of netbooting Windows 11 and writing up these notes on how to do a simplified “modern” version. ↫ Terin Stock The setup Terin S … ⌘ Read more

⤋ Read More
In-reply-to » Question to the twtxt veterans, are we experiencing an explosion of clients or is this a regular occurrence?

@andros@twtxt.andros.dev I don’t see a burst of new twtxt clients popping up. Yeah, the most recent ones are TwtxtReader and twtxt-el. Did I miss one? I agree with @david@collantes.us, looks normal to me. :-)

I’m also working on my rewrite at the moment, but that started… *looking at the git history*… oh wow! O_o Over two years ago! I just implemented jumping to the next/previous unread message.

⤋ Read More

HeliBoard might be the first one of these fully open source Android keyboards, that doesn’t suck, idk, I’m still in the process of testing it, but I already like it a lot more than any of the ones I used before it.

Setting it up was somewhat clunky, but once you set it all up and dile in the settings, the keyboard itself, feels really great to use.

⤋ Read More

Mozilla deletes promise not to sell Firefox users’ data
The hits just keep on coming. Mozilla not only changed its Privacy Notice and introduced a Terms of Use for Firefox for the first time with some pretty onerous terms, they also removed a rather specific question and answer pair from their page with frequently asked questions about Firefox, as discovered by David Gerard. The following question and answer were removed: Does Firefox sell your personal data? Nope. Never have, … ⌘ Read more

⤋ Read More

What would happen if we didn’t use TCP or UDP?
At some point, I wondered—what if I sent a packet using a transport protocol that didn’t exist? Not TCP, not UDP, not even ICMP—something completely made up. Would the OS let it through? Would it get stopped before it even left my machine? Would routers ignore it, or would some middlebox kill it on sight? Could it actually move faster by slipping past common firewall rules? No idea. So I had to try. ↫ Hawzen Okay so the end result is that i … ⌘ Read more

⤋ Read More
In-reply-to » So, I had a talk with the CFO last night about this. Nothing to be gained yet, but baby steps. I think we might be able to get one for Christmas. That is, if there is any left. These little things are flying off the shelves like hot apple pies!

I forgot to follow up on this one. I ended up ordering the Mac mini M4 just before Christmas, which means I got it on 31 December 2024. The machine is all I thought it will be, so, very happy with it. This time around I am using the “mostly vanilla” approach. That means no iTerm2, but Terminal app, no Chrome, etc., and just a few selected brew applications. Want to keep it lean!

⤋ Read More
In-reply-to » I read a lot about Clean Code, SOLID, TDD, DDD... now I'm discovering «A Philosophy of Software Design»... but nobody talks about the importance of the project architecture. Do we depend on the framework to do the work for us? You know I'm a big fan of Clean Architecture, but I feel alone when I share my thoughts on social media or at work. You have to think outside the framework.

I agree. finding good writings on architecture is hard to find. I used to read architecture reviews over on the high scalability blog. i suspect the reason why is that the arch is how the big tech companies can build moats around their bases. I know in AWS world it only goes as far as how to nickle and dime you to death.

I have the books but they don’t grow much more past interview level.

⤋ Read More

Understanding surrogate pairs: why some Windows filenames can’t be read
Windows was an early adopter of Unicode, and its file APIs use UTF‑16 internally since Windows 2000-used to be UCS-2 in Windows 95 era, when Unicode standard was only a draft on paper, but that’s another topic. Using UTF-16 means that filenames, text strings, and other data are stored as sequences of 16‑bit units. For Windows, a properly formed surrogate pair is perfectly acceptable. However … ⌘ Read more

⤋ Read More

Mozilla is going to collect a lot more data from Firefox users
I guess my praise for Mozilla’s and Firefox’ continued support for Manifest v2 had to be balanced out by Mozilla doing something stupid. Mozilla just published Terms of Use for Firefox for the first time, as well as an updated Privacy Notice, that come into effect immediately and include some questionable terms. The Terms of Use state: When you upload or input information through Firefox, you hereby grant u … ⌘ Read more

⤋ Read More
In-reply-to » This document is the result of a series of discussions between Robert "Uncle Bob" Martin and John Ousterhout, held between September 2024 and February 2025. The text addresses three main topics: method length, comments, and Test Driven Development (TDD). https://github.com/johnousterhout/aposd-vs-clean-code/blob/main/README.md This is something to read and reflect on for days.

@andros@twtxt.andros.dev Just before the pandemic, we watched Uncle Bob videos once a week in the lunch break. While almost all of my old teammates agreed with his views, I partially found them to be very odd and even counterproductive.

I didn’t come across John Ousterhout or any of his work before, at least not deliberately. So, this document is my first contact.

I only finished the chapter on comments and I totally agree with John so far. This document just manifests to me how weird Bob’s view is on certain subjects.

I always disagreed with the concept of a maximum method length. Sure, generally, shorter functions are probably better, but it always depends. And I’ve certainly seen super short methods that just made the code flow even worse to follow. While “one function should only do one thing” is a nice general rule, I’m 100% in team John with the shown examples. There are cases, where this doesn’t help readability at all. Not even close.

To me, a function always has to justify its existence. Either by reusing it at least at another place or by coming up with dedicated tests for it. But if it is just called once and there are no tests, I almost always decide against it. Personally, I don’t mind longer methods. We just recently had a discussion about that and I lost against two other workmates who are more in Uncle Bob’s camp, they refactored one medium sized method into three very short ones. Luckily, we agree on most other topics.

Lol, what!? The shorter the method, the longer the variables inside? I first thought I misread or the writeup mixed it up. I’ll always do it the other way around.

I’ve been also bitten badly by outdated comments in the past, but Bob must have worked on really terrible projects to end up with such an attitude to dislike comments. Oh well. No doubt, I’ve come across by several orders of magnitude more useless comments, in my experience (autogenerated) JavaDocs fall in the category more frequently than not. So, I know that there are different types of comments. A comment doesn’t automatically mean that it is good and justified.

But I also partially agree with Bob and John and think that a good name has a proper chance to save a comment. Though, when in doubt, I go John’s route and use a shorter name with a comment rather than use a kilometer long identifier. Writing good comments typically takes some time, sometimes much longer than writing the code. It regularly takes me several minutes. It’s a hard art.

I perhaps should read up on John’s work. He seems to be more reasonable and likeminded. :-) Let me continue to complete this document.

⤋ Read More