HNHacker News
TopNewBestAskShowJobs

jedahan

533 karma · joined March 21, 2009

I make stuff

http://jedahan.com http://jonathan.is

[ my public key: https://keybase.io/jedahan; my proof: https://keybase.io/jedahan/sigs/ZLk6uCxVfS34QD2b0-0FSfiJkHAW3VKo8G1PdOvtaog ]

submissionscomments
jedahan··on Matrix v1.15
Can't wait until MAS is just part of synapse/dendrite, will be a lot easier to install and maintain than the extra moving parts.
jedahan··on Thiings
It was weird reading the description for gigan as a cyclops but the image showing 2 eyes.
jedahan··on Covert web-to-app tracking via localhost on Android
I love how the engineers and product managers who implemented this are not held responsible in any meaningful way.
jedahan··on Building my own solar power system
Would love a write up or links to resources for water extraction and treatment if you’d oblige.
jedahan··on Ping Ff02:1
I added discovery support to scuttlebutt for link-local addresses to create "routerless" (no DHCP/SLAAC/Manual address assignment) self-repairing networks. Always wondered how broadcast worked, so appreciate the detailed writeup.
jedahan··on RustPython
Probably worth a mention this is the creator of wasmer, for anyone interested. (I was curious who 'We' was to see what companies have experience with multiple wasm runtimes and their learnings)
jedahan··on Thanksgiving 2023 security incident
The writeup contains indicators, including IP addresses, and the location of those addresses. In this case, the IP address associated with the threat actor is currently located in Bucharest, Romania.
jedahan··on www.google.com – The page is blank when accessed
Would love to hear what the bug and/or fix was
jedahan··on Bun v1.0.0
All good questions - and every person has different needs.

The fact is each potential adopter either needs to go through and comb over the compatibility page (not what I would expect with a drop-in replacement); or just try and see if it works, and be surprised later if they run into an unimplemented module because they were operating under an incorrect assumption.

jedahan··on Bun v1.0.0
Either I missed this on first read-through, or they just added it.

It seems the note mentioning this feels buried for me under a large banner image, instead of near all the other text about compatibility.

Anyway, glad it is there, hope that their communications design improves in the future as at least a few others got caught with mismanaged expectations.

jedahan··on Bun v1.0.0
Is there a better phrasing you could use than "drop-in replacement" for a 1.0 release that has decided to not implement all of "node:"?

The let-down from the first two projects not being a drop-in replacement is jarring, now I have to be skeptical of all communications coming from bun.

For context, both projects use osc which requires dgram. I was able to find a feature request tracking ticket from 9 months ago with no communicated plans to implement, but searching for 'dgram' in this announcement page doesn't show anything.

For a quick suggestion - can you explicitly state what modules are not supported by bun 1.0 and put that in the section related to node.js compat?

edit: found the docs on node support - https://bun.sh/docs/runtime/nodejs-apis . Would be nice to link in the release notes.

Cursory glance looks like for modules - 17 implemented - 17 partially implemented - 7 unimplemented

jedahan··on P2panda: P2P protocol for secure, energy-efficient local-first web applications
I wish I could read the specification offline. It's split into a lot of smaller pages.
jedahan··on Arpchat – Text your friends on the same network using just ARP
I love (ab)using protocols that are built-in to most OS'. I wrote a dumb fake samba share that let people see messages in Finder.app/Explorer.exe/Gnome/KDE since I couldn't find a cross-platform gui or cli messaging system that didn't require installing special client software. (even netcat invocations were not working when trying on our local network, and had OS-specific flag differences if we wanted to do broadcast).

You see the samba share message in your file browser, click it and can edit the filenames to update a 3-line "bulletin board".

https://github.com/jedahan/samba-haiku/blob/master/index.js

Even this was a re-implementation that used WIFI ssids to make a captive portal haiku.

https://github.com/jedahan/haiku-wifi

jedahan··on The cloud is a prison. can the local-first software movement set us free?
Discord's UX is miles ahead of Element, and I setup and maintain communities on that use both. For something like local-first, like a local principled makerspace, we are happy to deal with the friction and try and contribute back on Matrix/Element.

That said, infrastructure churn can be disruptive. Don't envy your position.

jedahan··on Archive your Reddit data before it's too late
I ran this on my user about an hour ago, and all my messages are still on reddit and also libreddit frontends. I wonder if their api is ignoring the user-agent, or there is a very long cache time.
jedahan··on Mozilla stops Firefox fullscreen VPN ads after user outrage
.
jedahan··on Bitwarden Acquires Passwordless.dev
They are working on reducing the requirements - see https://bitwarden.com/help/install-and-deploy-unified-beta/ which claims 200 MB RAM and 1GB storage requirements.
jedahan··on Godot Engine Release Management: 4.0 and beyond
really like the vampire (survivors-inspired?) side-scroller, thanks for sharing them all.
jedahan··on HDMI Firewall
Check out trmml's thunderstrike for an example of a working hardware worm.

Its not exactly what you are outlining, but close enough for me to think 'yeah, does not need a nation-state level actor to do'.

It would be a different exploit chain for HDMI, and I am no expert in either HDMI or thunderbolt to make a claim that its possible, but I've been surprised with the amount of complexity HDMI offers.

https://trmm.net/Thunderstrike/

jedahan··on Google contacted me directly to help restore FairEmail on the Play Store
Let's start with Google holding their own software and services accountable to this level of readability and detail.
jedahan··on Dark pattern: how YouTube makes sure you don’t always “skip ad”
Twitter doesn't count blocked accounts as ad impressions.

If I see an ad on twitter, I block the account that displayed it. Invariably, there is another ad in the next 3-5 tweets. I can do this 3 or 4 times in a row before I give up looking at the feed because the signal-to-noise ends up being too low when 25% of my feed are ads.

My guess is that after blocking an account, the ad you saw doesn't count as an impression. It's also possible that 25% is normal, but it doesn't seem that way if I scroll and not block accounts.

jedahan··on Docker for Mac Without Docker Desktop
I wrote a dumb shell script that wraps Canonical's multipass to do what Docker Desktop used to. Its limited but reliable on my M1 mac.

https://github.com/jedahan/podman-desktop

jedahan··on Briar Desktop for Linux
When I tested peer-to-peer messaging a couple of years ago, Briar was the only messenger that was able to sync messages and data without needing a common router. Was very happy to see.
jedahan··on MikroTik RouterOS v7 stable released
OpenWISP looks to be the furthest along, though right now I think it only supports OpenWRT https://openwisp.io/docs/index.html
jedahan··on Apple requires account deletion within apps in AppStore starting January 31
Defining account will be interesting. One definition might be:

The 'account' consists of the credentials required to add or modify data associated with a human.

In that case, the person deleting their private key would suffice for deleting an account.

There are plenty of things this doesn't cover, or even backfires. Just interested in what other perspectives people may have.

---

Scuttlebutt actually could allow for 'deletion' in the sense that a 'compliant' scuttlebutt client could choose to interpret a 'delete this account' message as a filter for any messages that match said public key. Many client's UX understand that the state of messages may be incomplete due to the P2P nature, so thats kinda nice too.

jedahan··on Imaginary Personal Manager
I made a really dumb block-based, client-side-only tool for trying to play around with weekly scheduling.

https://jedahan.com/saltpeanuts/

The data gets serialized (but still human readable) in the url fragment, so its shareable, but server never sees it. You can also just download and run, or see the code for "jedahan's first and only Vue app" on https://github.com/jedahan/saltpeanuts#readme , which is the only user guide.

It has not helped my wrangle my time or focus at all.

jedahan··on Podman, the open source Docker alternative ported to M1 (Apple Silicon) machines
I made a dumb shell script alternative to Docker Desktop. works on M1, fork unneeded. Uses multipass and podman.

https://github.com/jedahan/podman-desktop

jedahan··on Migrating from Docker to Podman
I wrote this dumb little shell script to use multipass + podman to replace docker-desktop.

https://github.com/jedahan/podman-desktop

jedahan··on A Linux distro with a focus on simplicity and the concept of less is more
My understanding is that kiss only has one non-executable file encoding:

  space-delimited entries of plain text, one entry per line
I cannot think of any more familiar format, let along the other benefits (portability, long-lasting, introspectable) which are of varying degrees of better and worse than other encodings.

In addition, up until [1], not only was the syntax simple, but so were the semantics.

[1]: https://github.com/kisslinux/kiss/commit/d296b90b75d02ee81ec...

jedahan··on Syncthing: Syncing All the Things
Just checked the debian issue tracker. Not sure if there is supporting work that could move it along, but you are not alone in wanting the latest release https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=983500
← PreviousPage 2 of 6Next →