xuu

txt.sour.is

Xuu /zuː/ I am AWESOME! ○△□ ⍼

@mckinley@twtxt.net for me:

  • a wall mount 6U rack which has:
    • 1U patch panel
    • 1U switch
    • 2U UPS
    • 1U server, intel atom 4G ram, debian (used to be main. now just has prometheus)
  • a mini ryzon 16 core 64G ram, fedora (new main)
    • multiple docker services hosted.
  • synology nas with 4 2TB drives
  • turris omnia WRT router -> fiber uplink

network is a mix of wireguard, zerotier.

  • wireguard to my external vms hosted in various global regions.
    • this allows me ingress since my ISP has me behind CG-NAT
  • zerotier is more for devices for transparent vpn into my network

i use ssh and remote desktop to get in and about. typically via zerotier vpn. I have one of my VMs with ssh on a backup port for break glass to get back into the network if needed.

everything has ipv6 though my ISP does not provide it. I have to tunnel it in from my VMs.

⤋ Read More

@bender@twtxt.net It is the new “politically correct”. Something that was used to describe acting in a more civilized way with one another. Turned into a scapegoat for the other side to label, demonize, and attack.

⤋ Read More

My email is such a cluster of noise. The only time i actually use it is to find out I have to do my security training or something. All communication is slack now days.

⤋ Read More
In-reply-to » (#7uxy6nq) yarnd does not do auto discovery via webfinger though.. i cant put @username and have it fetch the feed url from webfinger. to fully make feeds portable. would also need to be able to use that for hashing.

well @username@username rather…

⤋ Read More

yarnd does not do auto discovery via webfinger though.. i cant put @username and have it fetch the feed url from webfinger. to fully make feeds portable. would also need to be able to use that for hashing.

⤋ Read More

I can query the configurations a few different ways. i can request the specific name foo.bar or a glob like foo.* or trace the hierarchy trace:some.deep.name.space which will give me the namespaces some, some.deep, some.deep.name, and some.deep.name.space. These can be combined.

⤋ Read More

@lyse@lyse.isobeef.org its a hierarchy key value format. I designed it for the network peering tools i use.. I can grant access to different parts of the tree to other users.. kinda like directory permissions. a basic example of the format is:

@namespace
# multi
# line
# comment
root :value

# example space comment
@namespace.name space-tag 

# attribute comments
attribute attr-tag  :value for attribute

# attribute with multiple 
# lines of values
foo :bar
      :bin
      :baz

repeated :value1
repeated :value2

each @ starts the definition of a namespace kinda like [name] in ini format. It can have comments that show up before. then each attribute is key :value and can have their own # comment lines.
Values can be multi line.. and also repeated..

the namespaces and values can also have little meta data tags added to them.

the service can define webhooks/mqtt topics to be notified when the configs are updated. That way it can deploy the changes out when they are updated.

⤋ Read More

@movq@www.uninformativ.de Haha! yeah sounds about like my HS CS program. A math teacher taught visual basic and pascal. and over on the other end of the school we had “electronics” which was a room next to the auto body class where they had a bunch of random computer parts scavenged from the district decommissioned surplus storage.

The advanced class would piece together training kits for the basic class to put together.

⤋ Read More
In-reply-to » (#rehtvsq) @movq before this century. Back when colleges taught C++ instead of Java for CS degrees.

@quark@ferengi.one pascal was high school for me 10th grade. I remember making an over the top Yahtzee game with text windows and everything. My instructor got mad at me because it was a ton of pages printed out to review.

⤋ Read More

I finished my data structures classes with C++ and the next year they changed it out with Java. When i transferred up after my assoc degree it was C++ using the counter-strike source game engine.

⤋ Read More
In-reply-to » Go 1.22.0 introduces a new experiment for range functions. Have you tried them out? What do you think it can make easier to accomplish?

Things can get very interesting when we add the iter.Pull function in the mix. It works like pythons yield from.

⤋ Read More
In-reply-to » Go 1.22.0 introduces a new experiment for range functions. Have you tried them out? What do you think it can make easier to accomplish?

The range function can signal when to stop running by returning false from the yield function.

⤋ Read More

Twtxt spec enhancement proposal thread 🧵

Adding attributes to individual twts similar to adding feed attributes in the heading comments.

https://git.mills.io/yarnsocial/go-lextwt/pulls/17

The basic use case would be for multilingual feeds where there is a default language and some twts will be written a different language.

As seen in the wild: https://eapl.mx/twtxt.txt

The attributes are formatted as [key=value]

They can show up in the twt anywhere it is not enclosed by another element such as codeblock or part of a markdown link.

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

@sorenpeter@darch.dk this makes sense as a quote twt that references a direct URL. If we go back to how it developed on twitter originally it was RT @nick: original text because it contained the original text the twitter algorithm would boost that text into trending.

i like the format (#hash) @<nick url> > "Quoted text"\nThen a comment
as it preserves the human read able. and has the hash for linking to the yarn. The comment part could be optional for just boosting the twt.

The only issue i think i would have would be that that yarn could then become a mess of repeated quotes. Unless the client knows to interpret them as multiple users have reposted/boosted the thread.

The format is also how iphone does reactions to SMS messages with +number liked: original SMS

⤋ 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

What? You are still using chrome? Firefox is where its at. But if you need WebKit there is always chromium which strips out all the google nonsense.

⤋ Read More
In-reply-to » Why isn't inkjet printer ink simply replaceable like the windscreen wiper fluid in our cars? Why does it have to be so expensive and complicated?

Laser all the way. Inkjets are cheaper to replace the printer than to buy the ink for a reason.

⤋ Read More

@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
In-reply-to » man... day17 has been a struggle for me.. i have managed to implement A* but the solve still takes about 2 minutes for me.. not sure how some are able to get it under 10 seconds.

So, I finally got day 17 to under a second on my machine. (in the test runner it takes 10)

I implemented a Fibonacci Heap to replace the priority queue to great success.

https://git.sour.is/xuu/advent-of-code/src/branch/main/search.go#L168-L268

⤋ Read More

OH MY FREAKING HECK. So.. I made my pather able to run as Dijkstra or A* if the interface includes a heuristic.. when i tried without the heuristic it finished faster :|

So now to figure out why its not working right.

⤋ Read More

i am wondering if maybe i need a better heap like a btree backed one instead of just list sort on Dequeue.

I found a bug where i didnt include an open/closed list that seemed to shave off a little. right now it runs in about 70 seconds on my machine.. it takes over the 300s limit when it runs on the testrunner on the same box.. docker must be restricting resources for it.

I might come back to it after i work through improving my code for day 23. Its similar but looking for the longest path instead of shortest.

⤋ Read More

man… day17 has been a struggle for me.. i have managed to implement A* but the solve still takes about 2 minutes for me.. not sure how some are able to get it under 10 seconds.

Solution: https://git.sour.is/xuu/advent-of-code/src/branch/main/day17/main.go
A* PathFind: https://git.sour.is/xuu/advent-of-code/src/branch/main/search.go

some seem to simplify the seen check to only be horizontal/vertical instead of each direction.. but it doesn’t give me the right answer

⤋ Read More

I have been doing interview prep for next year. The problems have been great to get practice and make it fun when compared to the dry solve this you get on hacker rank or code scene.

That and so many great write-ups to explain the problems.

⤋ Read More
In-reply-to » (#hq3foyq) @movq It took a little over a minute on my machine.. i should try to make it multi threaded.. 🤔

All brute force.

Its the latest ryzen 7 chipset for laptop/mini form factor.

I am very surprised about the times others are getting. I guess that’s the difference between interpreted and compiled showing.

⤋ Read More

@eapl.me@eapl.me I have many fond memories of Turbo pascal and Turbo C(++). They really did have a great help system. And debug tools! Its rare for language docs to be as approachable. QBasic was great. As was PHP docs when I first came into web.

⤋ Read More

Interesting thing happening over on Xitter. Apparently some of the women in tech accounts are being exposed as being run by men that hire women to pose for images/videos. They would be invited to tech conferences but would always drop out last minute.

Makes me wonder if maybe there is need for a sort of verifiable web of trust is needed where influencers can be proven as authentic by others. This will only get worse as AI generative content gets pushed into our feeds.

⤋ Read More