HNHacker News
TopNewBestAskShowJobs

mattmein

152 karma · joined March 23, 2019

submissionscomments
mattmein··on Show HN: SimCity, but with Permits
Reminded me of this comedy skit: https://www.youtube.com/watch?v=fibDNwF8bjs
mattmein··on NixOS 26.05
This is the concept of Simple vs Easy https://news.ycombinator.com/item?id=38768107
mattmein··on France fines Apple €150M for “excessive” pop-ups that let users reject tracking
There's a WKUK comedy sketch that fits this story pretty well: https://www.youtube.com/watch?v=fibDNwF8bjs
mattmein··on Kill your Feeds – Stop letting algorithms dictate what you think
A few years ago I set up a ublock filter to hide the next/more buttons on hacker news and reddit. It works great because I can still get my news fix, but I can't scroll endlessly.

Ublock Origin: ! 2020-10-11 https://news.ycombinator.com news.ycombinator.com##.morelink

mattmein··on Why Clojure?
I think that particular issue was addressed in the recent Clojure release [https://clojure.org/news/2024/09/05/clojure-1-12-0] ("Clojure developers can now invoke Java methods taking functional interfaces by passing functions with matching arity.")
mattmein··on Show HN: Chonkie – A Fast, Lightweight Text Chunking Library for RAG
Also check out https://github.com/D-Star-AI/dsRAG/ for a bit more involved chunking strategy.
mattmein··on Age is a simple, modern and secure file encryption tool, format, and Go library
Check out agenix-rekey[https://github.com/oddlama/agenix-rekey], it has the ability to set up secret generators.
mattmein··on The flip-flop on whether alcohol is good for you (2023)
Reminds me of Planck's principle: > A new scientific truth does not triumph by convincing its opponents and making them see the light, but rather because its opponents eventually die and a new generation grows up that is familiar with it ...
mattmein··on Ansible is a Lisp?
Related: https://yamlscript.org/
mattmein··on Thousands of subreddits pledge to go dark after the Reddit CEO’s recent remarks
>> In practice, they are a niche endeavor used by a bunch of hackers and computer science nerds.

I don't know anything about federation, but what you said basically describes the Internet when it started, so I don't see how you can imagine it is not going anywhere based on that. Most tech starts as a "niche endeavor of a bunch of hackers and computer science nerds" (I'm also thinking of Apple starting at a computer club).

mattmein··on ValueObject (2016)
My point is that there is nothing about functional programming, specifically the "Data structure + Algorithm" style, that makes it unsuitable for building complex applications like air traffic control system or bank lending system, and it has in fact been used successfully in domains like that.

If you are really interesting in this topic, check out the following pages: https://clojure.org/community/success_stories

https://wiki.haskell.org/Haskell_in_industry

mattmein··on ValueObject (2016)
Data structure + algorithm is a valid way of building large programs. That is basically how Clojure is designed, and it works pretty well for big applications.

Functional programming in aviation: https://m.youtube.com/watch?v=0x3EIqBrZxw

Functional programming in banking: https://www.finextra.com/newsarticle/36297/nubank-buys-firm-...

mattmein··on Clojure 1.11 is now available
>> other languages have radically different tools and practices that lead to far fewer footguns

Can you share any examples of these different tools and practices?

mattmein··on Tabula: Convert PDF Table to CSV
I've used Tabula for many years, and it works great. Use it for converting PDF invoices from specific supplier for import into our system. Changed a task that took about a day each month, to about 10 minutes each month.
mattmein··on Emacs Modernization: Simple Changes Emacs Should Adopt (2006)
Regarding your long lines issue - from your description it sounds instead like an unicode issue which I also ran into a while back.

What happens is that your main programming font does not have the unicode characters, so Emacs falls back to searching all your fonts for each character it can't find, which is slow if it has to search through many different fonts.

The solution is to ensure you have symbol fonts installed - see the list of fonts here: https://github.com/rolandwalker/unicode-fonts

mattmein··on Wiretrustee: WireGuard-Based Mesh Network
I've used Zerotier for several years now, and it does feel that the stability on mobile has improved in the past couple of months.
mattmein··on Sign a PDF document client-side with no data leaving the computer
The free version of Foxit PDF Reader allows you to upload a signature image and add the signature to PDF documents. There is a Linux version. https://www.foxit.com/downloads/
mattmein··on On Repl-Driven Programming
One thing that has tripped me up with this workflow in the past is that you lose context - the code you copy/paste and execute in the repl is not evaluated in its module/namespace, so any other code calling it is not updated.

Is there a shortcut to evaluate the code in the correct module/namespace for Python? Maybe to switch the namespace in which the Python REPL evaluates the code you paste in?

mattmein··on UFO VPN claims zero-logs policy, leaks 20M user logs
This is completely unrelated, but I remember your blog about dotnet development. I followed it about 10 years ago and remember when you started with RavenDb. I haven't done any dotnet development in about 7 years, but you taught me a lot about programming properly. Thanks.

I'm glad RavenDb is still going well.

mattmein··on Collapse OS
I think it is worth reading his explanation [1] of why he built this. He doesn't really seem to be scaremongering, just that he identified a risk that he thinks has a high likelihood of happening, and he decided to do something about it.

He isn't talking about apocalyptic collapse, rather a collapse of supply chains necessary to develop complex electronics.

[1] - https://collapseos.org/why.html

mattmein··on No, I Won't Link to Your Spammy Article
I wouldn't classify those emails as spam, as spam is unsolicited bulk email, ie untargeted emails going out to a large amount of people.

Personalised unsolicited email or any other type of contact can be an important way to make new connections, at least in my opinion.

mattmein··on Am I Unique?
What does it mean that I have a unique user agent? I just use normal brave browser.
mattmein··on Pijul: a distributed version control system, written in Rust (2019)
https://pijul.org/manual/why_pijul.html#pijul-for-darcs-user...
mattmein··on Storing files in the DB: story of an epic failure
I've never understood this advice. To me it just makes a lot more sense to store everything in the database - much less complexity.

What I've done in the past is just put a CDN in front of the file url, so the file content is stored in the db, but served from the CDN.

mattmein··on The Realities of Deep Work
How is this website legal and different from hosting a movie/TV series? It is basically stealing the original website's content.
mattmein··on Replete 2.0: ClojureScript REPL for iOS and Android
One of the biggest advantages of ClojureScript (except for all the advantages of using Clojure that you also get with ClojureScript) is the language's stability. Almost all features and enhancements are done in the form of libraries, so the language you are using today is pretty much the same language you were using last year and the year before that.

I think that stability is a big advantage, depending on what type of client side applications you are building. I know of several consulting companies that are using ClojureScript for their client side work, and they can basically just continue building apps without having to re-architect their underlying framework every year. That can have a big effect on the cost of development.

I also highly recommend that any ClojureScript development is done using shadow-cljs, and that allows very convenient integration with npm modules.