HN user

adamrt

486 karma
Posts3
Comments127
View on HN

Good call! I’ve heard Andreas say multiple times building a browser is like building an emulator. Each website uses different features in different ways, and he likens websites to roms.

I agree on it being fantastic.

For your other questions I found these in the linked text

    - https://sr.ht/~jprotopopov/kefir/#goals-and-priorities
    - https://sr.ht/~jprotopopov/kefir/#history-and-future-plans

In the "for ... else" example, am I wrong to think this is a typo? Should it be "if (sample.key == key)". The second example doesn't help clarify since the resulting variable is shadowed by the loop variable (cpu).

    const item = for (let sample .. items) {
        if (item.key == key) {
            break item;
        };
    } else { ... };

I don't have a project to use hare for currently, but I do appreciate most of it's goals. I think it's an admirable project and hope it succeeds in its ambitions.

Are you sure about that? Unless I'm misunderstanding they did fix this: https://pkg.go.dev/encoding/json

"In v1, a nil Go slice or Go map is marshaled as a JSON null. In contrast, v2 marshals a nil Go slice or Go map as an empty JSON array or JSON object, respectively. The jsonv2.FormatNilSliceAsNull and jsonv2.FormatNilMapAsNull options control this behavior difference. To explicitly specify a Go struct field to use a particular representation for nil, either the `format:emitempty` or `format:emitnull` field option can be specified. Field-specified options take precedence over caller-specified options."

Any time I write "if err == nil" I write // inverted just to make it stick out. It would be nice if it was handled by the language but just wanted to share a way to at least make it a bit more visible.

    if err == nil { // inverted
        return err
    }

It really isn't that hard to imagine someone starting a fun hobby project in the language they enjoyed and were the most comfortable with.

If those opinions match what you're trying to do and you can stay on the golden path, it's freaking great!

That's a great summary. I wrote a few significant flask apps many years ago as well and I'm a huge fan of SQLAlchemy. My flask apps were greenfield so I ended up building crappier versions of alot that Django provides. I still enjoyed it but I wasn't as productive. But with a legacy integration, it would be hard to beat SQLAlchemy (I think its great for greenfield too). I've basically landed on your comment above as well.

I've heard people complain about Django many time on HN. I started using it back in the 0.96 version, so maybe its just a familiarity thing.

But I built 3 large successful applications in it in that time. I loved it. I don't use it regularly anymore since I mostly moved away from webdev, but I recently came back into contact with my largest project I build in 2018/2019 and its been running perfect this whole time and was a pleasure to dive back into.

Django just felt logically organized, documentation was on point, core was very readable (at least then).

I always just felt so productive in it. I know everyone has different opinions, experiences and products they are building, but I'm always surprised with the negative comments. I definitely prefer SSR with its reasonable though, so maybe thats part of it.

Magit 4.0 Released 2 years ago

Can you elaborate? I’ve been using it for over 10 years and it might just be my favorite piece of software. It’s central to all development I do.

I use many features of git that I probably wouldn’t otherwise due to having to remember flags and copying around hashes. It also makes discovering git functionality very easy.

OpenBSD is also known for this. They constantly push back against adding configuration knobs or running non standard configurations.

Have you used OpenBSD? You're telling them they should be doing something, that is already basically their mission statement.

You should target all audiences.

Here is a list of OSes[0]. Where do you draw the line on supporting these? Should every new project try to support all of these? Do you, doublerabbit, get to decide which OSes are important enough for support?

Or do you think the person who created the project and does all the work should be able to decide where to spend their free time?

[0] https://en.wikipedia.org/wiki/List_of_operating_systems

Just answering for myself, but it's because I like the programming/engine aspects. Not the creative aspects of the art/music/level-design/rules/balance/etc. I can use an existing games art/content and just focus on the part I like.

Plus nostalgia.

Magit 3 years ago

But checking out branches I do on the command line

Just in case you have a longer workflow, checking out a branch should just be `b b` and then select the branch from a list with typing or up/down.

I had the same itch for a long time. I eventually took the free Harvard CS50 course. Its the video lectures you can watch on demand. It gets into python at the end which I skipped as I already knew python.

I really enjoyed it and think the teacher is great. I don't think all of it is necessary if you are already a developer, but I didn't have a traditional education so it filled in a few gaps for me too.

https://learning.edx.org/course/course-v1:HarvardX+CS50+X/bl...

My absolute favorite podcast. Pumped every month for the new episode. I think I've gone back and listened to nearly every one.

Thanks so much for doing the show Adam. Some random ideas for guests:

- Joshua Stein (@jcs): Too many projects to list. Rad all-around hacker.

- Mike Bayer (@zzzeek): Creator of SQLAlchemy/Alembic

- Theo de Raadt: OpenBSD creator. Somewhat a controversial guy, but very interesting.

I could turn the question around, what evidence do you have they aren't?

I don't care about either side of this argument, but you can't logically turn the question around. The burden of proof is on you, who made the claim.

I use iOS, Firefox and 1Password to fill out passwords regularly. I just logged out of HN and back in on my iPhone just to test. Is there certain versions that this affected?