10 years is far from the truth. SerenityOS was started 8 years ago and ladybird wasn't split from Serenity until 2024 and has an alpha scheduled for release this year.
It's been 2-4 years max.
HN user
10 years is far from the truth. SerenityOS was started 8 years ago and ladybird wasn't split from Serenity until 2024 and has an alpha scheduled for release this year.
It's been 2-4 years max.
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-plansIn 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."
I believe Chromium is closer to 35m LOC
I think its more of a comment that "err != nil" is used in the vast majority of cases, so you start to treat it as noise and skim it.
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.
I hope we get monthly or at least quarterly Ladybird Newsletter just to keep the attention of the project along with attracting those who still dont know.
They do monthly newsletter and accompanying youtube video: https://www.youtube.com/@LadybirdBrowser
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.
Google pays Apple ~$20B to be default search engine in Safari/Webkit though
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.
I can't think of any long term, open source project that has removed and ripped out more code than OpenBSD.
They are know for doing exactly what you are suggesting.
Go ask @tedunangst. It was literally called "tedu'd" for ripping out old crusty code.
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?
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.
Click on the die a couple times and it speeds up
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.
They don’t plan ahead for features typically. They add stuff when someone wants to do the work.
Lots of good info. Thanks!
I love seeing OpenBSD new more than you average person, but is there a reason you’re submitting a month old release?
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.
Perf Avg? I thought the M1 was absurdly fast, no?
Jcs is always doing something cool. Thanks for the write up!
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?