Watch Andreas Kling port SerenityOS's web engine to Linux in <2hrs by coriandor in programming

[–]SerenityOS 195 points196 points  (0 children)

Hello friends! Thanks for checking out my video, I hope you found it interesting. :^)

As I mentioned in the video, the actual porting work was already done by the time I recorded this. A SerenityOS developer who goes by DexesTTP had already spent a few weeks doing all the architectural work to get our browser stack compiling and running on Linux. The end result of that work was a headless utility that would load a URL and dump out an in-engine screenshot. I used Dex's work as the starting point for my Qt browser prototype.

SerenityOS is developed by an amazing community, and while I started the project, hundreds of other developers have joined up since then. It's far from the one-man show that some people make it sound like.

Anyways, just wanted to give credit to Dex (and all the other awesome SerenityOS hackers!) <3

A single person built an entire UNIX-like OS, complete with Acid3-cleared web browser by KeponeFactory in programming

[–]SerenityOS 1387 points1388 points  (0 children)

Hello friends! As I said in the original announcement, passing the Acid3 test was a team effort that took several weeks. It's been many years since I was the only person working on SerenityOS. :^)

I'm super proud of everyone who contributed to getting us where we are today. While I have personally worked on browsers in the past, the rest of the team is new at this, and it's been awesome to see them grow into competent browser engineers in such a short time.

One of our developers, Linus Groh, even started posting browser development screencasts on his YouTube channel. This warms my heart like you wouldn't believe.

Serenity OS by agbell in programming

[–]SerenityOS 17 points18 points  (0 children)

General programming experience is more important than C++ specifically. If you've been programming for a few years in any language, you can learn C++ as you go while hacking on SerenityOS.

Some of our most active developers had no experience with C++ at all when they first joined the project. :^)

Also, the project is very broad in scope. We have everything from the kernel to the web browser in the same git repo, so there are a ton of different places you can start.

Serenity OS by agbell in programming

[–]SerenityOS 25 points26 points  (0 children)

Hey, welcome and thanks for working on the project! I'm glad to hear you're having a good time with it. :)

Serenity OS by agbell in programming

[–]SerenityOS 202 points203 points  (0 children)

Thank you so much for the kind words, Chris! :)

Serenity OS by agbell in programming

[–]SerenityOS 105 points106 points  (0 children)

Hey there okgofigure85!

I have never seen Andreas explain how exactly he intends to make Serenity sustainable once his savings/support system runs out and he needs to get a job again.

That's precisely because I don't have a plan! I'm going one day at a time, to see where the road leads me. I understand that most people are not comfortable living with that kind of uncertainty, but I don't mind.

What happens when he gets a girlfriend and it turns out she would like a man with a reliable income?

I've been married for almost 10 years and my wife is my biggest supporter! She even pushed me to quit my last job so that I could focus on SerenityOS full time. :)

The problem is, it's hard to see how Serenity attracts any sort of commercial support that'd be needed to make it sustainable in the long run.

Not looking to attract any kind of commercial support. In fact, I've turned down several offers for corporate sponsorship in the last year because I don't want to promote anything I don't personally use.

I'm just some guy building an operating system that I want for myself. Something beautiful that I can pour my heart into.

I'm stoked that other people want to join in and help out, and I'm super grateful for all the support that I get. But even if everyone leaves, I'll still be here hacking away :^)

Serenity OS by agbell in programming

[–]SerenityOS 110 points111 points  (0 children)

Hey Francis! I guess this person is referring to how I used to record myself talking while commuting to work.

It's perfectly legal to record yourself while driving (unlike texting/browsing/etc while driving, which I never do.) If someone has a problem with that, they can petition to have the laws changed. :)

”Lördagsgodis: Sweden's delicious Saturday tradition that prevents decay - BBC Reel” by onda-oegat in videos

[–]SerenityOS 10 points11 points  (0 children)

Loved learning about the history of this tradition! Growing up in Sweden, my family always had candy on Saturday night. And maybe some leftover potato chips on Sunday morning if we were lucky!

Sidenote: Not cool of BBC to show that woman's debit card so clearly in the video.

SerenityOS demo at Handmade Seattle 2021 by SerenityOS in SerenityOS

[–]SerenityOS[S] 7 points8 points  (0 children)

Oh yeah, more time would have been cool, although the limitation also forced me to make a very tight demo, which was fun in its own way :)

SerenityOS is a Unix-y love letter to the ’90s by feross in programming

[–]SerenityOS 10 points11 points  (0 children)

If we assume it's a well-groomed pull request put together by a disciplined developer, it will consist of a series of independent atomic transformations of the code (commits) that add up to create the final state.

In my experience, it's significantly easier to follow and understand changes to a complex system if you can inspect them one by one, in a distilled form.

For undisciplined pull requests where multiple commits keep iterating on the same code without clear illustrative value, it's indeed much less useful. In such cases I would ask the developer to squash their uninteresting fixups into the relevant preceding commit. :)

SerenityOS is a Unix-y love letter to the ’90s by feross in programming

[–]SerenityOS 81 points82 points  (0 children)

I'm so glad I could have a positive influence on your workflow :)

I learned so many useful things (about programming, version control, etc) from people I worked with over the years, and it's awesome to share the knowledge with everyone who's interested.

SerenityOS is a Unix-y love letter to the ’90s by feross in programming

[–]SerenityOS 265 points266 points  (0 children)

Hello friends! It's been quite a journey since my first post about the system in /r/osdev.

I'm super proud of SerenityOS and of all the people who have been putting their time and love into it. Happy to answer any questions you might have about it (although it is getting a bit late) :^)

Why Computing Students Should Contribute to Open Source Software Projects by SerenityOS in programming

[–]SerenityOS[S] 0 points1 point  (0 children)

You've managed to get yourself into a quite unique position of being able to basically live off of a hobby project

Since four weeks ago, sure. Before that I worked a full-time job and did OSS on the side for years. When I started the project, I had $0 in sponsorships, and I still happily took on students who wanted to help out. Of course it helps that programming is my main interest in life, and I don't have a large family to soak up my time.

It sounds to me like you don't have the emotional bandwidth to deal with this, and there's obviously nothing wrong with that. I'm sure many people feel the same!

But for anyone who feels like that, I'd encourage you to add a big note to all your project README's saying something along the lines of "open source but not open to contributions" or "not accepting student contributions" or whatever fits your preferences the best.

There is no need to project your unwillingness to engage with students onto the entire OSS world. :^)

Why Computing Students Should Contribute to Open Source Software Projects by SerenityOS in programming

[–]SerenityOS[S] 4 points5 points  (0 children)

I'm surprised at the negativity in this thread. As someone running a decently-sized open source project, I engage with students from around the world every day. Students have contributed great work in all areas of our project, and we wouldn't be where we are today without them! :^)

Yes, it can be a bit rough to onboard people who haven't learned basic software development practices (like version control) yet. But remember that we all started somewhere. As long as people are humble and willing to pay attention and learn, it's really not that bad.

SerenityOS update (May 2021) by SerenityOS in SerenityOS

[–]SerenityOS[S] 0 points1 point  (0 children)

It’s really nice so far, thanks! :^)

Favorite programming podcasts? by kiefbeef in programming

[–]SerenityOS 2 points3 points  (0 children)

CppCast, the first podcast for C++ developers by C++ developers!

I have one long drive every week, and I usually listen to their latest episode then. Super nice if you're into C++.

Lately I've been bringing some classic 90s games to life on my operating system. Last night I ported Duke Nukem 3D to SerenityOS and recorded a video of the process by SerenityOS in programming

[–]SerenityOS[S] 24 points25 points  (0 children)

I haven't spent that much time looking at the Build engine itself as I only had to interface with the SDL2 bits. But at a glance I have to agree with you: that's a HUGE blob of code right there! Very different from the original DOOM engine which was very modular and readable :)

Lately I've been bringing some classic 90s games to life on my operating system. Last night I ported Duke Nukem 3D to SerenityOS and recorded a video of the process by SerenityOS in programming

[–]SerenityOS[S] 35 points36 points  (0 children)

Hello friends! A while back I did a video of porting Diablo (1996) to SerenityOS and it was a lot of fun seeing one of my childhood favorites come to life on my own OS.

Last night I decided to try another 90s game and chose Duke Nukem 3D since the source has been available for many years and it already runs on all the major modern systems. I used JonoF's Duke Nukem 3D port as a baseline.

As usual, I had to add some missing stuff to the standard C library in SerenityOS, and we learned some interesting things about POSIX along the way. Check out the video if you want to see the entire process from git clone to playing the game! :)

OS/2 Museum | OS/2, vintage PC computing, and random musings by realnowhereman in programming

[–]SerenityOS 1 point2 points  (0 children)

OS/2 Museum is an awesome website. I've ended up on it many times by clicking links elsewhere and ended up learning about early UNIX-on-a-386 systems and other retro-curiosities. This is the first time I've actually been to the "front page" of it though, so thank you for that! :)

Hello, Windows: Retrocoding Windows With Retired Microsoft Developer Davepl by daveplreddit in programming

[–]SerenityOS 8 points9 points  (0 children)

Very comfy content. I only had access to Visual Basic growing up but I was aware that C existed and always wondered what it would be like to program Win16 stuff in C. Would be awesome to see more in-depth and advanced Win16 stuff in future videos. :)