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.<p>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 my projects and at work.<p>This isn't even mentioning how much I've learned about software in general from his videos. Whether it's debugging kernel bootstrap assembly, porting doom, writing a live feedback GUI editor, implementing syscalls, to messing around with the dynamic loader. He's really got a video for it all.<p>And he tackles each video with such clarity and careful consideration. I really can't speak higher of the man.<p>[0] <a href="https://www.youtube.com/c/AndreasKling/videos" rel="nofollow">https://www.youtube.com/c/AndreasKling/videos</a>
Hey Andreas (assuming you're still reading these threads) I'm so happy to see you reach this point with Serenity. I remember seeing your project pop up here (early 2019 I think?) and just being absolutely blown away by the undertaking. What I love most about the project after following it since though is you've really shown it's absolutely doable, not only by you or superstar programmers but by folks willing to put the time in, and along the way made so many others realize this whether they contribute to Serenity or not. Your YouTube videos are absolutely great and there is just something about it all (probably the "under one roof" philosophy) that makes showing the "adding/fixing this little piece" so much more consumable. In short, thank you for doing all of this for not only yourself but everyone else now involved with the project.<p>Anyways I always told myself I should chip in for all of the great content over the years and so now I've joined your Patreon - here's to hoping more are able to as well and you can continue living the dream!
THIS IS SOOOOO INSPIRING.<p>With all the FAANG and the Leetcodes and promotions and L6 - L7 TC and all of this nonsense, true hacker spirit and the fun of just building cool stuff with technology has gone from the hacker space. In fact, the hacker space is actually shrinking.<p>Projects like these and people like Andreas Kling, are a beacon of hope and light during these troubled times.<p>May more people be inspired with this and commit to the path of a true hacker.
Looks like the main relevant past threads are:<p><i>SerenityOS: Writing a Full Chain Exploit</i> - <a href="https://news.ycombinator.com/item?id=26115141" rel="nofollow">https://news.ycombinator.com/item?id=26115141</a> - Feb 2021 (9 comments)<p><i>Introduction to SerenityOS Programming</i> - <a href="https://news.ycombinator.com/item?id=22479132" rel="nofollow">https://news.ycombinator.com/item?id=22479132</a> - March 2020 (43 comments)<p><i>Pledge() and Unveil() in SerenityOS</i> - <a href="https://news.ycombinator.com/item?id=22116914" rel="nofollow">https://news.ycombinator.com/item?id=22116914</a> - Jan 2020 (28 comments)<p><i>SerenityOS: From Zero to HTML in a Year</i> - <a href="https://news.ycombinator.com/item?id=21212294" rel="nofollow">https://news.ycombinator.com/item?id=21212294</a> - Oct 2019 (52 comments)<p><i>SerenityOS – a graphical Unix-like OS for x86, with 90s aesthetics</i> - <a href="https://news.ycombinator.com/item?id=19986126" rel="nofollow">https://news.ycombinator.com/item?id=19986126</a> - May 2019 (179 comments)
Hey Andreas,<p>I just watched a couple of your video on participating in Open Source - like <a href="https://youtu.be/GU_ISkNml-A" rel="nofollow">https://youtu.be/GU_ISkNml-A</a> - and just read a ton of really nice things about you below and read your story.<p>And honestly I really have no idea how SerenityOS would relate to me or my company – but I do know that everything under the hood of our hosting and our clouds is Open Source.<p>So for sure I can say for just being an Open Source champion and an all around nice guy, for the next year at least, count on me personally at $100 a month (just did it in Github) and my company InMotion Hosting for another $100 month (just did it on Patreon).<p>Open Source constantly struggles with needing super talented professional but also struggles on how to make sure they make a good living. I know $200/mo isn't a lot when it comes to life, but hopefully it helps you know others out here believe in this kind of work and taking this kind of chance!
Windows NT/9x/2000 represented the high point for aesthetics.<p>Light grey, rectilinear, clear delineation, all contributed to being easy on the eye and functional.<p>Glad to see it make a comeback.
I'm unlikely to ever use this project, follow it closely or interact with the creator but it still makes me extremely happy to see someone working on a project like this, with the goals, motivations and context that Andreas discusses. Thank you for making the world a little bit better at a time when it feels so crazy.
>SerenityOS [1]<p><i>Graphical Unix-like operating system for x86 computers.<p>SerenityOS is a love letter to '90s user interfaces with a custom Unix-like core. It flatters with sincerity by stealing beautiful ideas from various other systems.<p>Roughly speaking, the goal is a marriage between the aesthetic of late-1990s productivity software and the power-user accessibility of late-2000s *nix. This is a system by us, for us, based on the things we like.</i><p>[1] <a href="https://github.com/SerenityOS/serenity" rel="nofollow">https://github.com/SerenityOS/serenity</a>
It warms my heart to see someone that is skilled, passionate and patient to pursue a project like this full time. True hacker spirit lives on.<p>The only other effort like that has been on my mind for a long time is bcachefs that is mostly churned on by a single developer slowly making progress and aiming high.<p>I could only wish the very best to people and projects like this!!
As someone who also traded drugs for programming, I find this incredibly inspiring.<p>Programming has become my purpose and the thing that brings me joy. Unfortunately, they way I have to program at work really sucks the joy out of it. I would gladly take a pay cut to be able to work on things and in a manner that bring me joy again.
It's so refreshing to see a from-the-ground-up built hobby project like this. We need more operating systems that don't track users, show ads, or have decades of accumulated ~~cruft~~ backwards compatibility. The design goals will appeal to anyone who was into computers back then. Well done. Doing all this in 3 years is impressive and inspiring. I think you won't have to worry about sustaining your family much longer ;)<p>Running this on real hardware would be great. Future weekend project...
> While at Apple, I really enjoyed how most of the software was made under one roof. Not only did this enable super tight integrations, but it made the system extremely hackable for its developers, and you could always find the experts somewhere nearby. I thought I could try bringing that same feeling to the open source world, so I decided that SerenityOS wasn’t going to be a patchwork of packages – no, we’re building everything ourselves! From kernel to web browser, and everything in between.<p>I love it. Good luck.
Following this for almost 3 years now, it really is an amazing achievement. His YouTube streams are very helpful in learning a lot about Systems, Unix and good programming methodologies. Cheers to him for taking the leap of faith!
The more I see those small graphical OSes like this one, Kolibri, etc. the more I wish they were ported (or better conceived from the beginning) to be run on ARM systems. Those small cheap boards with video output would find the best possible companion when bare metal programming is too hard and a full fledged Linux distro would be overkill. Give me a compiler, then libraries for gpio and hardware, GUI, low level networking, etc. and I can choose between a huge load of cheap boards to build a lab instrument panel, my new home IoT dashboard, a portable communication device, a music synthesizer, etc. It looks to me as those two worlds are in need of each other but they don't know that yet.
> SerenityOS is a love letter to '90s user interfaces with a custom Unix-like core.<p>More like a love letter to Windows 95 :) It doesn't really have much in common with the Unix GUIs available around that time, which were mostly Motif-based (think FVWM, CDE etc).<p>In fact it looks so Windows-like (including the applications) that my first impression was that this was another go at making something like ReactOS. But clearly it isn't.<p>It looks nice though I was never a big fan of the W95 UI. I'm interested to see what it's about. I'll give it a spin.<p>PS: Fair play for being so open about your addiction. It will help other people face the problem too.
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.<p>Too many elite programmers are total jerks!
If you find Andreas' work inspiring and/or useful, you may consider supporting him in pursuing his passion:<p>- <a href="https://github.com/sponsors/awesomekling/" rel="nofollow">https://github.com/sponsors/awesomekling/</a><p>- <a href="https://www.patreon.com/serenityos" rel="nofollow">https://www.patreon.com/serenityos</a><p>- <a href="https://www.paypal.com/paypalme/awesomekling" rel="nofollow">https://www.paypal.com/paypalme/awesomekling</a><p>(source: <a href="https://awesomekling.github.io/about/" rel="nofollow">https://awesomekling.github.io/about/</a>)
SerenityOS looks impressive.<p>Programming in assembly is like playing with Legos. Last year I started creating my own pet OS in a Bochs virtual machine, compiling with nasm. Created the boot loader and UI, but then realized what I really wanted to implement wasn't the low level layer.<p>For that reason I placed the project aside and moved to the highest level, creating a distributed command-line console in Javascript that connects to Node.js based servers. If I ever complete my dreamed OS then I can either translate it into assembly, or build a JS interpreter.<p>At this point the console allows creating programs with UI controls, launch processes without blocking the console, and terminating them just clicking a button, as well as connecting to other servers to perform tasks.
Wow that's freaking awesome. First time I saw this project was years ago on 4chan's technology board. I remember the progress reports and videos on the Daily Programming Thread. Now it's here and has become a full time job for the developer. Must be awesome to be able to work on stuff like this.
While I'm hit heavily by nostalgia looking at this UI and I actually appreciate the simplicity and utility of it, I think it would've been nice to bring it in the 21-st century by making it vector-based and scalable, so it works on modern displays. Gone are the days when all displays had the same DPI around 100, and we could craft things out of single pixel bevels.<p>We just need good, legible displays. And modern tech delivers. But the software needs to match.
Wow, Andreas Kling is really inspiring.<p>I need to get my mental space together (from the ADHD mess that it currently is), and start working on some of software engineering projects/goals.<p>I really hope I can.
From 3 months rehab to build an os and more. That is just outright incredible. Maybe the boring day job before lead to the addiction. Anyway an insane comeback.
I’ve been following Andreas and SerenityOS since the very beginning and this is absolutely very cool news. I am so psyched to see where SerenityOS will go!!
Don't know if I am hacker minded enough to take a look. But he has a point though... no-nonsense and a straight forward GUI back on the menu would be great. I hate how I am held hostage by shitty designer ideas. I am a power user.
Haven't heard of this project till seeing this post.<p>Checked out his youtube channel and the video on porting Diablo to SerenityOS in an hour is pretty interesting to watch if you've ever wondered what its like to port software.<p><a href="https://www.youtube.com/watch?v=ZOzZ8R4gphE" rel="nofollow">https://www.youtube.com/watch?v=ZOzZ8R4gphE</a>
Hi Andreas, I'd love to interview you sometime about addiction. Sounds like you have a strong perspective and are comfortable sharing your story. I'm still rebuilding things so I won't be launching my media production company for another year or so but I'll probably reach out on Twitter someday ;)
Congratulations Andreas, I've been working my way through your entire history of videos and loving it. I just doubled my monthly sponsorship, can't wait to see what's to come!
Congrats. It's really heart-warming to see the community supporting someone like this who is working on interesting projects and who is generous with sharing their knowledge and their code right back.<p>Watching even half of one of the videos, it's clear that Andreas is thoughtful individual with a talent for explaining things, who has managed to gather a vibrant community around him. This is such an inspiration that I headed right on over to patreon and signed up, too :)
What a great little project! Each bit adds to what came before.<p>Just don't be reluctant to delete code when its time has come, and it can continue improving indefinitely.
Does it run on 386SX with 2MB of RAM?<p>Apart from lack of coo-processor (which I understand), I do not understand why nearly ALL modern operating systems(Including Linux since 2.4 I believe) are hard-coding the kernel to not boot under 4/8 MB of RAM, even if it could in theory.<p>Why there is hard-limit of 4, 8, 64 MB of RAM in many kernels of various operating systems?<p>Is it fail safe "just to be safe" or because there some internal routines, vector tables that REALLY requires 4MB ram to work?[memory partitions/blocks ?!]<p>I asked the same question here:<p>- <a href="https://news.ycombinator.com/item?id=26979499" rel="nofollow">https://news.ycombinator.com/item?id=26979499</a> [Why Linux requires 4MB of RAM no matter of kernel size?]
Thrilled Andreas has managed to receive enough community support to be able to take this big step and is able to focus on Serenity OS fulltime.<p>SerenityOS is an inspiring from scratch grassroots OS effort which plans to build the entire POSIX OS, Kernel and core Apps from scratch, one of the Apps their is their LibWeb browser engine complete with their own LibJS JS VM which already passes the ECMAScript test suite. One of its USPs is that the entire OS is contained within its single source tree where anyone can make changes to its code-base and instantly reboot the OS in seconds with the changes, never seen this done for an OS before, the turn around time allows for some impressive dev iteration speed.<p>A good preview of this hackability is in his Diablo port, whether it's missing C++ APIs, unsupported lang features, missing SDL port impl, toggling kernel features - it all gets done in 1 sit down session to produce a shiny new Diablo port:<p><a href="https://youtu.be/ZOzZ8R4gphE" rel="nofollow">https://youtu.be/ZOzZ8R4gphE</a><p>Andreas videos on developing LibWeb/LibJS is one of the best resources I've found explaining how to implement a multi-process web browser, e.g. in this video he goes through the HTML Specs which have enough info in them to develop a HTML spec parser whose behavior is the same across all browser engines:<p><a href="https://www.youtube.com/watch?v=7ZdKlyXV2vw" rel="nofollow">https://www.youtube.com/watch?v=7ZdKlyXV2vw</a><p>It's been awesome to see LibWeb/LibJS evolve over time, every time he sits down it gets a bit more capable. Typically it's to implement features for rendering a different website. Here's a nice example where LibWeb gains missing JS APIs (including eval) to render "Canvas Cycle" JS demos:<p><a href="https://youtu.be/b3a5V45LLss" rel="nofollow">https://youtu.be/b3a5V45LLss</a> which he optimizes in his next video <a href="https://youtu.be/tGmaO8agfY4" rel="nofollow">https://youtu.be/tGmaO8agfY4</a><p>With full control over the entire OS, Kernel, GUI, etc. It's got lots of tightly integrated innovative features like its GUI GML language for creating native UIs where he creates a GML Playground in this video <a href="https://youtu.be/1QYBvTy9QKE" rel="nofollow">https://youtu.be/1QYBvTy9QKE</a> then uses it to be build the OS's new Font UI Picker dialog in the next <a href="https://youtu.be/Fa9SwYfH2NI" rel="nofollow">https://youtu.be/Fa9SwYfH2NI</a> which is now so sophisticated that the WidgetGallery has been converted to using it <a href="https://github.com/SerenityOS/serenity/pull/5741" rel="nofollow">https://github.com/SerenityOS/serenity/pull/5741</a><p>Since Andreas is so productive he's the only developer who I'm able to watch live coding which makes for an inspirational background score whilst coding, his commentary explaining his thoughts whilst he codes is so informative that they're basically HowTo's on how to implement each OS/App/Browser feature.
The OS work is fantastic, and a feat for sure. But his personal story of triumph over vices is more compelling to me. I recall his interview on the C++ podcast, he's got an amazing story.
Kudos to Andreas! I will definitely try Serenity.<p>Hopefully this activity going on will help make alternative operating systems popular like Haiku popular among developers.
This sounds great. I'm a big believer in "do what you love."<p>It's nice to hear the positive feedback on this guy. Sounds like he's doing well.
He has a tribute to Terry Davis featuring Serenity OS<p><a href="https://www.youtube.com/watch?v=DmV49ogMDEI" rel="nofollow">https://www.youtube.com/watch?v=DmV49ogMDEI</a>
I'd like to give it a spin but not sure I want to build this from source. Would be nice to include a downloadable boot image (let me know if there is one I couldn't find).
I'm surprised that either anyone actually uses such an OS (beyond toying with it), or that there are enough people willing to pay without using the OS.<p>What's the explanation for this?
Hope this doesn't turn into another SkyOS: <a href="https://en.wikipedia.org/wiki/SkyOS" rel="nofollow">https://en.wikipedia.org/wiki/SkyOS</a>
> I will pay $5 USD for exploitable bugs
> Remote code execution.
> Local privilege escalation.
> ...<p>How is it possible that someone who has the skill to find remote code execution exploits is in need of $5?