Live data from Hacker News

I quit my job to focus on SerenityOS full time

awesomekling.github.io

211–220 of 264 posts

Re: I quit my job to focus on SerenityOS full time

#211

I highly recommend checking out his YouTube channel [0]. He's an _incredibly_ thoughtful person and provides good lessons in staying focused and keeping scope down. I consider him a mentor and his approach to software is something I really resonate with. He has a keen focus on software quality but understands he can't make everything perfect in one sitting. This approach helped me get away from decision paralysis in…

Totally tangential, but I just checked out one of his "Cat Talks", looks like he's basically casting from his bed. BUT the sound was so well recorded I had to actually check to make sure the sound was coming from my headphones and not the computer or someone in the room even. Wow, really would love to read about his recording set up that he can do that from his bed.

Re: I quit my job to focus on SerenityOS full time

#212
post #3

Love his videos. Helped me get back into coding and c++.

i was surprised about the c++ choice, considering all i've read on the subject about its supposed issues related to memory management ( i think related to destructor ?) or complex features that made it unfit for OS development.

i've reed a bit of the faq and it seems Andreas originally thought about using C and then realized it wasn't a good idea.

Any opinion or more infos on that point ?

Re: I quit my job to focus on SerenityOS full time

#213
post #112

Windows NT/9x/2000 represented the high point for aesthetics. Light grey, rectilinear, clear delineation, all contributed to being easy on the eye and functional. Glad to see it make a comeback.

I really enjoyed the previous, more Macintosh-like Serenity design with the global menu.

I had genuinely freaked out when I rebuilt the system just after Andreas moved it to be more Windows-like: I ran Serenity browser and in the first moment it looked eerily like an old-school Internet Explorer.

Re: I quit my job to focus on SerenityOS full time

#214
post #188
post #171

Earlier quoted context omitted.

Nice tip, I started with something short - writing a screenshot utility: https://youtu.be/3BF-vUts3ws Ed: i really enjoyed the video, but I feel it could have been even better (and shorter) if he used a proper debugger for the second part. But I don't know if that is available in the os. The more I use a debugger, the more I realize I should use a debugger, and the earlier I should use a debugger. Advice/directions t…

Andreas has made a couple of videos about why he purposefully doesn’t use a debugger (which I can’t find now) but it’s related to how he prefers to focus on a whole programs behavior and work out what’s wrong from his understanding of what it’s doing by reading the source and logs. Incidentally Linus doesn’t use a debugger either.

Interesting. To each his own, of course - but in this one particular video, the print-debugging he does, might have been quicker and easier in a debugger (or perhaps with a core dump?). Then again, maybe not in c++.

I admit, I work mostly with ruby these days, which of course has a quite decent repl and debug experience (still whish it had full smalltalk style crash(missing method) > debugger > fix/add method > resume). Apparently someone did try that with python/rpython in the "topaz" ruby vm, but it seems abandoned. Maybe we'll get it for more languages via graal vm at some point?).

Re: I quit my job to focus on SerenityOS full time

#215
post #205
post #171

Earlier quoted context omitted.

Nice tip, I started with something short - writing a screenshot utility: https://youtu.be/3BF-vUts3ws Ed: i really enjoyed the video, but I feel it could have been even better (and shorter) if he used a proper debugger for the second part. But I don't know if that is available in the os. The more I use a debugger, the more I realize I should use a debugger, and the earlier I should use a debugger. Advice/directions t…

> Smalltalk and lisp does this very well - you can't AFAIK quite go that far with c++, but it's what all systems should aspire to, as a baseline (70s debug experience) Actually that was were we were going to before Java took over the stage. "Lucid Energize Demo VHS 1993"- https://www.youtube.com/watch?v=pQQTScuApWk https://dreamsongs.com/Cadillac.html IBM also built on those ideas for the 4th release of Visual Age fo…

Yes. I did come across:

https://github.com/topazproject/topaz

From: "When a Mouse Eats a Python: Smalltalk-style Development for Python and Ruby" https://2017.programming-conference.org/details/MoreVMs-2017...

See also: http://www.hpi.uni-potsdam.de/hirschfeld/publications/index....

But it seems abandoned?

I guess maybe maglev ruby on the gemstone platform does move the needle a bit closer:

http://maglev.github.io/docs/persistent_code.html

Re: I quit my job to focus on SerenityOS full time

#216

Andreas is the best part about this project. He's just _nice_. He's a good person. It makes me want to contribute and work with him because I feel like I'll learn from him. Too many elite programmers are total jerks!

you cannot be more correct. too many elite programmers are not only jerks, but also selfish egoistic masochists who deny any right to others to be wrong now and then, while still fit for work. yet - same jerks often complain having difficulties finding help (typically overseeing the quite obvious reason for it).

no, this is not a hate comment, but a sad one, as rarely people ask why so many opensource projects are led by single person, and very rarely by more than 3 active developers. maybe it has to do with the fact that arrogant top-notch jerks also like to showoff as they expose narcissistic traits and opensource is a good venue to do so.

perhaps also because is difficult to argue with total jerk (have you tried). or convince him/her/they/them that your not-so-up-to-the-standard code is still worth, and that in reality most of the code running the world is a total mess (for various reasons) but still runs (for various reasons).

the gift to be able to work with nice people that also develop nice code is close to blessing.

Re: I quit my job to focus on SerenityOS full time

#217
post #206
post #186

Earlier quoted context omitted.

Debuggers are a great learning tool, but I’ve found they’re useless when diagnosing production issues. At best, you’re using C/C++ and after the crash, you get a minidump from a customer/server. Eventually, I learned to write code that was so obviously correct and had such good error messages that I haven’t needed to use a debugger in a long time. In fact, I don’t even know how to invoke a debugger for most languages…

They are only useless when the production is built with stacks that don't support stuff like Application Insights, ETW or JFR/JMX.

Reminds me of the time needed to write an application that would be particularly hard to test (was critical, handled distributed state). Managed to write it so obviously correct, that I couldn't think of anything to test before releasing the clustered version. I only ever managed to find 2 bugs, both of which were silly and unimportant.

During development, I did use REPL to run/evaluate most of the functions, on 1-2 inputs, and found a couple of silly, immediately evident bugs. Development took a couple of days, testing was about as mentioned and I really didn't want to debug.

These days, I'm amazed how people can stand to write anything at all complicated in haphazard ways, but then get to spend similar or greater time playing whack-a-mole with bugs to maybe get most of the important bugs.

Yes, good tooling can make debuggers usable. OTOH, if you need debuggers, I would consider it a shortcoming of the programming methods/structures/styles and usually even entire stacks, where debugging is practically necessary.

Re: I quit my job to focus on SerenityOS full time

#218
post #186
post #171

Earlier quoted context omitted.

Nice tip, I started with something short - writing a screenshot utility: https://youtu.be/3BF-vUts3ws Ed: i really enjoyed the video, but I feel it could have been even better (and shorter) if he used a proper debugger for the second part. But I don't know if that is available in the os. The more I use a debugger, the more I realize I should use a debugger, and the earlier I should use a debugger. Advice/directions t…

Debuggers are a great learning tool, but I’ve found they’re useless when diagnosing production issues. At best, you’re using C/C++ and after the crash, you get a minidump from a customer/server. Eventually, I learned to write code that was so obviously correct and had such good error messages that I haven’t needed to use a debugger in a long time. In fact, I don’t even know how to invoke a debugger for most languages…

Debuggers aren't quite as useful with C++ indeed. But that's a good reason to use C++ less. I diagnose issues drastically faster with a debugger all the time. Often I'll write a unit test that reveals a bug, but just looking at the code doesn't quite reveal where the bug is. But sticking a few breakpoints in the right places and examining the data structures directly makes it really obvious.

Eventually, I learned to write code that was so obviously correct and had such good error messages that I haven’t needed to use a debugger in a long time.

Nobody needs to use a debugger, just like nobody needs to use most tools. They're just very helpful when they work correctly and are used correctly.

Re: I quit my job to focus on SerenityOS full time

#219

Wow, that must be a really big milestone for SerenityOS. Not many hobby OSs end up making enough money for the developer to sustain himself.

It doesn't. He says it brings in $2000/month and that this is not enough to sustain his family, but he hopes to increase it.

It's nice that he's able to indulge in this kind of hobby programming, but he must have an incredibly generous and understanding family. Clearly he can hold down programming jobs at major tech firms and could therefore give his family a much higher quality of life than $2k/month will bring, but chooses not to. Well, OK. I'd like to write an OS too, but my family has slightly higher expectations ...

Post reply on HN