frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Show HN: Look Ma, No Linux: Shell, App Installer, Vi, Cc on ESP32-S3 / BreezyBox

https://github.com/valdanylchuk/breezydemo
256•isitcontent•19h ago•27 comments

Show HN: I spent 4 years building a UI design tool with only the features I use

https://vecti.com
355•vecti•21h ago•161 comments

Show HN: If you lose your memory, how to regain access to your computer?

https://eljojo.github.io/rememory/
329•eljojo•21h ago•199 comments

Show HN: Kappal – CLI to Run Docker Compose YML on Kubernetes for Local Dev

https://github.com/sandys/kappal
12•sandGorgon•2d ago•3 comments

Show HN: R3forth, a ColorForth-inspired language with a tiny VM

https://github.com/phreda4/r3
79•phreda4•18h ago•14 comments

Show HN: Smooth CLI – Token-efficient browser for AI agents

https://docs.smooth.sh/cli/overview
94•antves•2d ago•70 comments

Show HN: MCP App to play backgammon with your LLM

https://github.com/sam-mfb/backgammon-mcp
3•sam256•3h ago•1 comments

Show HN: XAPIs.dev – Twitter API Alternative at 90% Lower Cost

https://xapis.dev
3•nmfccodes•57m ago•1 comments

Show HN: I'm 75, building an OSS Virtual Protest Protocol for digital activism

https://github.com/voice-of-japan/Virtual-Protest-Protocol/blob/main/README.md
6•sakanakana00•4h ago•1 comments

Show HN: I built Divvy to split restaurant bills from a photo

https://divvyai.app/
3•pieterdy•4h ago•1 comments

Show HN: Slack CLI for Agents

https://github.com/stablyai/agent-slack
52•nwparker•1d ago•11 comments

Show HN: BioTradingArena – Benchmark for LLMs to predict biotech stock movements

https://www.biotradingarena.com/hn
26•dchu17•23h ago•12 comments

Show HN: Artifact Keeper – Open-Source Artifactory/Nexus Alternative in Rust

https://github.com/artifact-keeper
152•bsgeraci•1d ago•64 comments

Show HN: ARM64 Android Dev Kit

https://github.com/denuoweb/ARM64-ADK
17•denuoweb•2d ago•2 comments

Show HN: Gigacode – Use OpenCode's UI with Claude Code/Codex/Amp

https://github.com/rivet-dev/sandbox-agent/tree/main/gigacode
19•NathanFlurry•1d ago•9 comments

Show HN: I Hacked My Family's Meal Planning with an App

https://mealjar.app
2•melvinzammit•6h ago•0 comments

Show HN: I built a free UCP checker – see if AI agents can find your store

https://ucphub.ai/ucp-store-check/
2•vladeta•6h ago•2 comments

Show HN: Compile-Time Vibe Coding

https://github.com/Michael-JB/vibecode
10•michaelchicory•8h ago•1 comments

Show HN: Micropolis/SimCity Clone in Emacs Lisp

https://github.com/vkazanov/elcity
173•vkazanov•2d ago•49 comments

Show HN: Slop News – HN front page now, but it's all slop

https://dosaygo-studio.github.io/hn-front-page-2035/slop-news
17•keepamovin•9h ago•5 comments

Show HN: Falcon's Eye (isometric NetHack) running in the browser via WebAssembly

https://rahuljaguste.github.io/Nethack_Falcons_Eye/
6•rahuljaguste•18h ago•1 comments

Show HN: Daily-updated database of malicious browser extensions

https://github.com/toborrm9/malicious_extension_sentry
14•toborrm9•1d ago•8 comments

Show HN: Horizons – OSS agent execution engine

https://github.com/synth-laboratories/Horizons
23•JoshPurtell•1d ago•5 comments

Show HN: Local task classifier and dispatcher on RTX 3080

https://github.com/resilientworkflowsentinel/resilient-workflow-sentinel
25•Shubham_Amb•1d ago•2 comments

Show HN: Fitspire – a simple 5-minute workout app for busy people (iOS)

https://apps.apple.com/us/app/fitspire-5-minute-workout/id6758784938
2•devavinoth12•11h ago•0 comments

Show HN: I built a RAG engine to search Singaporean laws

https://github.com/adityaprasad-sudo/Explore-Singapore
4•ambitious_potat•12h ago•4 comments

Show HN: Sem – Semantic diffs and patches for Git

https://ataraxy-labs.github.io/sem/
2•rs545837•13h ago•1 comments

Show HN: A password system with no database, no sync, and nothing to breach

https://bastion-enclave.vercel.app
12•KevinChasse•1d ago•16 comments

Show HN: Craftplan – I built my wife a production management tool for her bakery

https://github.com/puemos/craftplan
568•deofoo•5d ago•166 comments

Show HN: GitClaw – An AI assistant that runs in GitHub Actions

https://github.com/SawyerHood/gitclaw
10•sawyerjhood•1d ago•0 comments
Open in hackernews

Show HN: Pion SCTP with RACK is 70% faster with 30% less latency

https://pion.ly/blog/sctp-and-rack/
62•pch07•1mo ago
SCTP is a low level protocol focused on reliable packet transmission. Unlike hopelessly flinging packets from one device to another, it makes sure that the packets are correct using CRC, removes duplicate packets, and allows for packets to be sent in any order.

Going into an established library, I thought that everything was already implemented and that there wasn't anything to do until I went through the existing issues and organized all the tasks and decided on an order. Sean DuBois (https://github.com/Sean-Der), one of the co-creators and current maintainers of Pion, an open-source pure Go implementation of WebRTC (which uses SCTP), introduced me to a dissertation that was written about improving SCTP from 2021 (https://duepublico2.uni-due.de/servlets/MCRFileNodeServlet/d...). To my surprise, the features in it weren't actually implemented yet, and generally went unused even though it depicted pretty big improvements. This came as a bit of a shock to me considering the countless companies and services that actively use Pion with millions of users on a daily basis.

This led to two things: 1) implement the feature (done by me) and 2) measure the performance (done by Jo Turk https://github.com/joturk). If you're interested in reading more, please check out the blog post where we go over what SCTP is used for, how I improved it, and the effort that went into making such a large improvement possible.

This also marks a huge milestone for other companies and services that use SCTP as they can refer to the implementation in Pion for their own SCTP libraries including any real-time streaming platforms such as Microsoft Teams, Discord screen share, Twitch guest star, and many more!

For my personal background, please take a look at a comment below about what it was like for me to get started with open-source and my career related journeys. Thanks for reading!

Comments

pch07•1mo ago
If you want to read about my personal background and how I ended up working on Pion: https://gist.github.com/philipch07/1ec05c103c7b85f2d43399a70...
Imustaskforhelp•1mo ago
Upvoted on Hackernews, Starred on Github, Read your github about page, Starred that and joined the discord server.

As another youngster (17 years to be exact) who was (Might I still add, "is") worried about both the college aspects of things and the job aspect.

Your post gave me assurance that there is a way to make it, that there is hope in its own way.

Really influential, Mad respects goes to you and I wish you all the best moving forward in life in all of your journeys whether coding or not and wishing you a although early, happy new year man!

I have a few questions but you mentioned that you met JoeTurki, Where do you exactly meet such people, On hackernews (I am presuming you have created a new account?)

Because one of the ways that I find software, perhaps even software I can contribute once I get good enough and learn the fundamentals (honestly I am a gopher head too :) ) but some projects are written in C so perhaps I will learn that just to contribute to some/read them to maybe even rewrite them in golang perhaps but those are other ideas.

So the approach I make is probably hackernews -> good project -> gives me ideas/github projects -> I search for ideas when any problem comes in my head -> I then find github projects which are interesting -> I join their discord server -> I chat with their creator.

I think this has only happened in 1 project to be fair (librisc-V), I really love the elegance of librisc-V and I appreciate the creator of that project a lot too

So I am interested in how you meet people, because although one can get in discussions with hackernews with some pretty good people, I sometimes think that the discussion is rather limited in context so there's that and thus I am interested with this.

You mentioned "I decided I’d try for a different strategy: I got involved in an open source project related to video streaming", so I am fairly interested in how you decided to "jump in"/ try since I feel like this advice might help me

Also once again, The project is really good and I hope more open source projects can perhaps be built on top of it, and I genuinely hope you a nice day man!

pch07•1mo ago
I'm happy to hear that you were encouraged by my story :) It can definitely be scary to begin with contributing to open source projects but I would recommend trying to find a place to start that 1) has an active community with people you can actively talk to and 2) find a project that you find interesting enough to care about.

An active community is really important: just a year ago Pion had very little activity until Jo picked it up as a maintainer and was an incredible person to talk to, including countless questions about almost everything. I'm really not exaggerating, I was able to do this with almost 0 prior knowledge on Go and video streaming. Part of working with open-source is luck based though; not all projects make it, and people are working on things in their free time. I would try to see how active people are and also how nice they are, because if the maintainers are toxic then realistically speaking, you probably wont be working on the project for a long time even if you found it interesting.

Honestly my strategy sounds really simple, it's basically saying "just do x", which is half of it. My mentality going into it was to try something. If I didn't like it, I would just drop it and move on, but if I did like it (for example, finding a project interesting enough to help out with, or a fun group of people to work with, or just a place to help with small things outside of work) then I would tag along for the ride. Another way to look at it is that by contributing, even just a little bit, you don't have to be responsible for an entire project. Being able to make tiny changes can still be meaningful because it forces you to have to understand the other parts of the codebase, as well as why the changes are necessary in the first place. And if you're ever unsure about either of those, that's where the community part comes in: asking questions is key!

It's important to remember that most open-source projects are just things that people work on in their free time. While it is fun, sometimes people get busy, which is why it's nice to have multiple projects to contribute to. It also gives you a chance to meet new people, that can be from joining whatever chat they're using (like discord), making posts like these to show off things that you've made, requesting reviews from maintainers, etc.

Luckily for me, Pion ended up being a place where I found something to do and was given the time and tools to make something cool!

Sean-Der•1mo ago
You have done such an amazing job on this, it's been such a joy watching you improve SCTP. Better Bandwidth Estimation has been the big list of things everyone has been wishing could be better for 5+ years.

I can't wait to see where your going/what you end up building :) I absolutely didn't have the skills you had at this point in my career.

-----

* What is the best way to get people interested/involved in Open Source/contributing? I am always looking to attract more people. What is Pion doing right and what could it be doing better?

* Doing this project what was the most surprising technical thing you learned? I haven't gone deep on Bandwidth Estimation, but it's super cool to me that loss + latency are really just heuristics. I get why it isn't possible, but it's a shame middle boxes can't just tell software 'You can send this much' :)

pch07•1mo ago
Thank you!! It wouldn't have been possible without your enthusiasm and encouragement!

I think a lot of people are interested in making cool things but bridging the gap between looking at the project from the outside and actually doing something can be scary, especially for people who are contributing to open-source projects for the first time. For people who are extremely new, it helps a lot to either have direct guidance from someone with experience ("synchronous" due to timely feedback) and/or reading/video educational material ("async" due to something that can be created once and used multiple times after its creation). With regards to Pion, I was lucky to have both kinds: constant feedback from Jo, plenty of material to read via https://webrtcforthecurious.com/ , RFCs, the countless issues in SCTP; it felt a little bit like I stumbled into a lab with all the tools at my disposal and all I had to do was put the pieces together, come up with a plan, and go for it.

Also the https://github.com/pion/webrtc/wiki/Projects-Worth-Doing wiki page was very helpful but this could also be something that we can improve on: having a better understanding of what we want to get done and when we want them to get done (roughly speaking) is good. Updating it can be a bit of a chore though so I wish there could be a more efficient way to keep track of things while getting things done. I didn't struggle with it as much myself but that was mostly because Jo and I were working together nonstop for the last few months, but I can see how it could potentially be confusing for newer folks. It would also be good to mark which issues/features are blocked by others, which is something that I added in SCTP's readme, which has been nice. One thing I wonder about is whether the older parts of the codebase are daunting, but our efforts to put together resources regarding what RFCs are relevant has been great. I wonder if the video streaming world could have some sort of public tracker for different tools/technologies for people to learn about. I feel like that might be the biggest bottleneck for us, especially compared to other specialized software fields.

As for technical things, there are definitely a couple: learning that Windows' networking doesn't play as nicely as Linux's has been a bit of a nightmare, I'm surprised it even works at all haha. Another is how little attention RACK has received; the dissertation (https://duepublico2.uni-due.de/servlets/MCRFileNodeServlet/d...) doesn't seem to have garnered much attention despite having a really big impact. I also think that it's really surprising to be able to sit down and deal with packets and remember that everything is just a bunch of packets and the way we keep track of things we've sent or received is entirely governed by whatever rules we come up with. It feels oddly primitive but very valuable to be able to learn about why and how we want to track whatever heuristics we come up with!