HNHacker News
TopNewBestAskShowJobs

lijogdfljk

1,037 karma · joined July 28, 2019

submissionscomments
lijogdfljk··on About using Nix in my development workflow
Some of that functionality is built into Nix/Flakes now.. i believe. Ie i used to use Lorelei but these days i just use Nix and Flakes with Direnv directly. Not sure even how it works, but it works great.

But i use Flakes through my entire setup, so i imagine that's why.

lijogdfljk··on High property taxes are good
I took their statement differently; rather, that they aren't concerned for the fallout of the Haves at the sacrifice for the HaveNots.

I am uninformed in this game, so this is not a statement by me: However i've been told that one issue is squatters, land being used purely as investment and with low costs you can easily afford to buy land and squat it till a time when you later sell it in the market.

As someone looking to buy land to build a home on, i've noticed quite a lot of property seemingly being used purely for investment. Flipped through the years for profit with no real added value, in an area of the country (PNW) that is very, very expensive due to limited supply. It is very cheap to keep land, tens of dollars a year for 10 acres (the lot size i'm familiar with) iirc.

Inhibiting this behavior seems beneficial.

Though i imagine more interesting (than simply "high") taxes could help more. Ie something like a higher tax on unimproved and uninhabited land. Encourage usage, not squatting.

But.. i don't know anything here. I just have experience looking to buy land, and watching what goes up for sale.

lijogdfljk··on Be careful how you pay the bills
Agreed. It's why i get frustrated in a lot of the antiwork movements. The core of the antiwork movement is about respect and healthy treatment of course; but as a community they also fraternize (?) with people who think we shouldn't have to work at all; that it's optional and society is just asleep to this simple and obvious "fact". But of course it's bunk.

Until automation "saves humanity"[1] we have to work. We can and should push for healthy balances, respectful treatment of workers, sane retirement ages, etc. But still, work needs to be done, and i find it incredibly frustrating that some people think we can all just stop working.

[1]: Though i'm quite pessimistic that automation will save humanity. I suspect that while it could, it will also cause such turmoil in the beginning that we fail as a species. A nuclear winter of the working class.

lijogdfljk··on JCOF: JSON-like Compact Object Format
Depends on your needs. When i'm really concerned about deserialization time, i try to skip it entirely. Partial|Total zero copy deserialization is the thing to reach for. Various libs exist, https://rkyv.org/ is what i've been toying with recently.

For those unfamiliar, here is the interesting bit:

> rkyv implements total zero-copy deserialization, which guarantees that no data is copied during deserialization and no work is done to deserialize data. It achieves this by structuring its encoded representation so that it is the same as the in-memory representation of the source type.

lijogdfljk··on Amazon admits giving police Ring camera footage without consent
Yup. I absolutely love my cameras. I wouldn't have set them up without a home server to isolate them, though.
lijogdfljk··on Spotify to acquire Heardle
There's probably other ways, i'm far from knowledgeable. But the way i described is quite approachable for normal people
lijogdfljk··on Spotify to acquire Heardle
Interestingly, that is how normal people can end up with "perfect" relative pitch. Many people can almost instantly remember the notes of their favorite songs and so using those as anchors give people without perfect pitch the ability to determine chord/key/etc via relative pitch.

A second or two of a song is shockingly good at triggering your memory of songs you know well.

lijogdfljk··on FastECC – Reed-Solomon coder computing one million parity blocks at 1 GB/s
Yea. On the note of Blockchains, i have been long fascinated by immutable storage engines. Blockchain being just one implementation in the broader landscape. I've implemented several of them...

and with that said, i often wanted to add Reed Solomon simply because i found it fascinating. Truly an ingenious "trick". Though i never got past the idea phase, as it felt i was just double encoding everything and if bits were to flip then my storage mechanisms (HDD/S3/etc) would be the one seeing the flip and fixing it. I figured my software was never going to see bitflips to make this type of feature useful.

I'd be curious if any blockchains/immutable storage/etc actually use this type of error recovery. Ie if the layer _above_ network and storage actually benefit from error recovery. Since i often expect both network and storage themselves to bake error recovery in.. /shrug

lijogdfljk··on Beginner's guide to error handling in Rust
Yea, professionally for 5 years, though it's been a good 4 years since i used it.

Looking at the release notes, %w was introduced in 2019. So yea, my professional experience with Go predated that. It was all strings back then, and miserable. My team usually used libraries to deal with the shortcomings.

I ended up leaving Go frustrated mostly because of how simple patterns, like Iterators (in Rust) were so horribly expressed in Go. Stretched out into many, many lines of code. All the simplicity of the language left me with no help to manage my actual app complexity.

However i am aware that slowly Go is adding complexity to help you manage real problems. Generics, and apparently sane error handling. I'd love to see them add Enums, as Go's version always felt ... well, just a bunch of consts in userland pretending to be Enums heh.

Maybe one day Go will be feature complete enough for me to look back. Though i'm a big fan of Rust, so maybe not. The only area i feel Go is better than Rust is the way in implements Async, but that's likely more to do with the GC - so, tradeoffs as with everything.

lijogdfljk··on Beginner's guide to error handling in Rust
Has the meaning of that changed since i used Go? I thought the output of that is _literally_ a string, no?

I think you misunderstand me. I'm not complaining that there is no context. I'm complaining about destroying all structured content. If you want information out of that, you have to string parse your errors! No type checking or anything useful on error types either.

Yes, it's possible, but that usually comes with 3rd party libraries that manage errors with structure. Such as a large array of arrays producing a structured "stack". But if a single person uses string formatting with your nice structured error? Goodbye structure, hello string parsing.

It's a very, very low bar.

lijogdfljk··on Beginner's guide to error handling in Rust
If the bar was as low as Go it would be quite easy in Rust. It's just string concat after all.. but i'm quite glad they didn't use that low bar, it's awful to deal with imo.
lijogdfljk··on Show HN: Piano Trainer – Learn piano scales, chords and more using MIDI
Looks interesting, excited to give it a try! Any future ideas for expanded training features? Chord progressions, songs, etc?
lijogdfljk··on US water contains more ‘forever chemicals’ than EPA tests show
What is an RO?
lijogdfljk··on Ask HN: If you’ve considered homeschooling, what’s stopping you?
Yea, i'd have to agree with you.

What i learned in school was how awful people can be. The extremes where we humiliate and torment others. The mindless churn to be in a clique and simply fly under the radar.

Slight tangent, but: In my view a parents jobs is to let children fail with a safety net. To be there and help them recover after failures are experienced together, to grow from them.

Public School, in my view, does none of this. It attempts to educate, sure, but not in socialization. Likewise parents, even the well executing ones (by my definition) cannot share the experiences. Parents can only see the aftermath and try to mend some wounds.. but the growth is up to the child, in isolation.

I don't know the better solution. I don't have the answer. All i know is that in the context of how i judge parenting, school fails entirely on. School is lord of the flies. Many prosper. Many drown. Many could grow, if only a guiding hand existed.

Clearly i'm a pessimist here. I'm also not having children, which may not surprise you. Hah.

lijogdfljk··on Job interview questions engineers should ask, but don't
Nit, but our weekly standups are very similar and i'd argue they're not at all justification. Rather, they exist mostly to expand as needed on any tasks - but often expansion isn't needed.

You're probably not wrong in general, but as is often the case, i imagine reality is a bit more complex.

lijogdfljk··on What is `Box<str>` and how is it different from `String` in Rust?
TIL. I had just figured you could manually make an unsafe Copy impl or something haha.
lijogdfljk··on What is `Box<str>` and how is it different from `String` in Rust?
Okay, maybe (i disagree, but w/e) - but the point is for learning.

You'd have a difficult time learning Rust with Go, hah.

lijogdfljk··on What is `Box<str>` and how is it different from `String` in Rust?
Huh, i figured you could actually just implement `Copy` yourself (ie on the SimpleString). Can you not for this? Now you have me curious hah
lijogdfljk··on What is `Box<str>` and how is it different from `String` in Rust?
Makes me wonder if there could be room for a SimpleString library.

I love/use Rust. I don't think any of this is complicated. BUT, i'm a big fan of just "clone your problems away" for beginner Rust users. Going knee deep into techniques which merely reduce memory usage when people likely don't actually care - at all - about it just feels wrong to me.

So yea, maybe a cursed library where SimpleString is just some niceties around some Cow + Arc thing which is also Copy. Hell, you could probably just apply it Vec and who knows what else.

Anyway, clearly not something i'm advocating anyone _really_ use. But it seems a nice way to make stuff "Just Work" in the beginning.

lijogdfljk··on The Grug Brained Developer
I was purposefully vague heh. Trying not to start a language flame.. i do that enough in the actual language threads lol.

I will say someone here was right though. :)

lijogdfljk··on How safe is Zig?
What is the cause of all those notorious C bugs then?
lijogdfljk··on The Grug Brained Developer
> Most well-intentioned "grug" developers will write software so simple that it becomes it's own form of complexity: a giant mud-ball of for-loops, while-loops, variable assignments, and other wonderful side effects. Instead of addressing complexity head-on with abstraction, "grug" will beat "galaxy brain" over the head.

Hah. Related, i became disgruntled with my previous favorite language for this reason. It promoted this style of development. Surface level simplicity built into the language, with minimal tools to actually manage the complexity that is inherent to the problem space you're working in.

lijogdfljk··on An experiment to test if Bionic Reading helps you read faster
I take it you didn't read the article? It answers that (ish)
lijogdfljk··on Cold Showers
I don't, though. If it compiles, it exists. Saying that a method might actually be a nuke is a bit besides the point. It could also contain a virus.

Not sure what typing system you're referring to, but it sounds very half-baked at best. I'm using Rust fwiw.

I cannot access any field or method that does not exist. Even dynamic traits are compile time enforced, but i think we can largely have this discussion around static dispatch.

lijogdfljk··on Show HN: WarcDB: Web crawl data as SQLite databases
Gotcha - yea i was hoping maybe it snapshotted the HTML or some such, side stepping some issues long dynamic text or JS shenanigans
lijogdfljk··on Show HN: WarcDB: Web crawl data as SQLite databases
Would a WARC format reduce effort needed to make Reader-like programs? Ie strip pages of HTML cruft, leaving you with text, images, etc - the content?
lijogdfljk··on Cold Showers
I don't need tests to check what methods or fields are on my types though.

You need the same tests from a typed system in a non-typed. You _don't_ need all the tests from a non-typed system in a typed system.

Writing tests to enforce types just hand-rolls a type system, in my experience.

lijogdfljk··on Cold Showers
Depends on the specifics, but i'm betting if `IITem` is close by i know how to interact with it. I have no clue what the hell fields or methods may or may not be on `item`. Nor will i, ever. At best i have to enforce method/fields myself, at worst i subscribe entirely to duck typing and let the gods sort it out.
lijogdfljk··on Writing like a pro with Vale and Neovim
This is neat, any other projects similar? Notably ones that work perhaps with more of an LSP-like API?

Not sure if it makes sense as an LSP, but if it was i could hook it into my editor of choice (Helix, at the time of writing) easily

lijogdfljk··on Explore Matter, the new smart home standard, in Home Assistant
Do any of these standards give confidence on how much functionality will work when on an isolated network?

I'm never sure what will break if i don't give it internet access :/

← PreviousPage 6 of 14Next →