frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Ask HN: How do you get into systems programming

13•otherayden•7mo ago
Hi all!

I'm looking for recommendations on where to start with learning systems programming. Ideally, I'd like to be able to get to a point where I can make a living doing it, but currently I just want to do fun stuff to build up curiosity around it.

Here's all of the "low-level" stuff that I know so far / imagine being useful. I... - Have enough of an understanding of networking to write a toy HTTP server on top of TCP - Know enough C to write some basic terminal tools + window applications if needed (on Linux) - Love terminal tools like neovim + several core utils - Have dabbled with Arduino/ESP32 & communicating via USB over the serial port with a host pc - Am pretty decent with Python, and have been using it for like 10 years

Some things that I've been curious about in the past - Converting parts of python libraries from pure python to C/C++ bindings for better performance - Writing a terminal based file manager to work with Google Chrome - Actually contributing to chromium (my laptop is a potato though so all of my builds fail)

About me: I'm in my junior year of uni studying CS, and I've been able to make money doing web dev for the past 2 years of my degree. For many reasons including curiosity and the fact that AI makes me feel replaceable doing many frontend + backend tasks, though I'm very curious about getting into lower level programming.

Any help would be greatly appreciated!

Comments

abhisek•7mo ago
IMHO there is neither baseline nor “enough” when it comes to learning any programming language for any reasonably complex domain.

As you already know, C/C++ helps with low level software layers that interface with or manage hardware resources. In my experience, Go and Rust are also pretty much used as systems programming languages. For example, I use Go and EBPF to instrument systems calls on Linux kernel.

For me, most of my learning came from solving problems and building for specific use-cases. I think getting into builder mode and creating some cool will definitely accelerate your learning.

sargstuff•7mo ago
On software side, building an OS (distribution) from scratch provides a step above bare metal programming[0].

Provides familiarity with different types of things a kernel does via programs/scripts that make use of kernel.

Actually writing binary code for kernel bit can be done under qem[1][2]. aka don't need to buy actual hardware, can use 'software probes' to view what's going on, etc. Don't have to worry about 'crashing'/trashing box running on (just crash the qem software & loosing just what was done in qem session, if didn't save as 'export/save to external location outside of qem session')

"Reading OpenBSD source code daily (blog.tintagel.pl)" from [hn: 3] automated way to review code.

-----

[0] : https://www.linuxfromscratch.org/

[1] : qem for kernel developers - https://www.youtube.com/watch?v=LyWlpuntdU4

[2] : https://www.collabora.com/news-and-blog/blog/2017/01/16/sett...

[hn:3] : https://news.ycombinator.com/item?id=14521386

a_tartaruga•7mo ago
It sounds like you're doing the normal sort of things that systems people do to get started. The fact that you have lots of ideas to jump off of is very good. In general just follow all of your ideas down as far as you can to the base systems. Write the TCP implementation for your HTTP server and run it over the internet for example. You've only gone too far when you start worrying about noise and debugging looks like randomly grounding metal things.
theophilec•7mo ago
Oxide and Friends has an episode on the topic [1], I found interesting.

[1] : https://oxide-and-friends.transistor.fm/episodes/paths-into-...

noone_youknow•7mo ago
Sounds like you’re doing some interesting stuff and have a good, varied skill base to build on.

My advice would be to jump in and start working on kernel level stuff, or writing your own - IMO there’s no finer way to really “get” the low level concepts and the understanding you’ll build will really help with any other system-level stuff you do.

Not to plug, but if you were interested in getting involved in an existing project, my own toy kernel project[0] is at a point where there’s still lots of fun stuff left to do (both design- and implementation-wise) but a lot of the basic “project plumbing” and one-time machine setup stuff that people often get stuck on is already done, and I’d be glad to have the opportunity to share knowledge.

[0] : https://github.com/roscopeco/anos

QuickCurrency – Free currency converter with no sign-up required

https://www.quickcurrency.net
1•DDARJEAN•2m ago•0 comments

Show HN: G=(hbar*C*2*(1+alpha/3)^2)/(m_p^2*4^64) ≈ 6.6742439706e-11 (8 ppm)

1•albert_roca•3m ago•1 comments

BlazorOcticons – The easiest way to use GitHub Octicons in your Blazor apps

https://blazorocticons.net/
1•elv1s42•6m ago•1 comments

Framework Laptop 16 DIY OCuLink x8 expansion module adds desktop GPU support

https://liliputing.com/framework-laptop-16-diy-oculink-x8-expansion-module-brings-desktop-gpu-sup...
2•PaulHoule•8m ago•0 comments

Coding Rust with Claude Code and Codex

https://tigran.tech/coding-rust-with-claude-code-and-codex/
1•tigranbs•8m ago•0 comments

The Year in Books: 2022

https://notes.eatonphil.com/2023-01-12-year-in-books.html
1•ibobev•10m ago•0 comments

Kimchi, made in China: how South Korea's national dish is being priced out

https://www.theguardian.com/world/2025/dec/22/kimchi-south-korea-national-dish-priced-out-china-e...
1•n1b0m•10m ago•0 comments

Capital One Is Losing Its Travel Dominance: A Review of the Discover Debit Cards

https://testinginprod.blog/capital-one-is-losing-its-travel-dominance-a-review-abroad-of-their-ne...
2•charliebwrites•10m ago•0 comments

In Pursuit of Clancy Sigal (2021)

https://yalereview.org/article/in-pursuit-of-clancy-sigal
2•dang•11m ago•0 comments

Trying to Fit Exponential Data

https://www.johndcook.com/blog/2025/12/22/fit-exponential-data/
1•ibobev•11m ago•0 comments

Please give some tips to shorten the Linux device name of NVMe (2023)

https://old.reddit.com/r/linuxquestions/comments/1biouhv/please_give_some_tips_to_shorten_the_nam...
1•transpute•14m ago•0 comments

Infinite Ethics [pdf]

https://nickbostrom.com/ethics/infinite.pdf
2•ChadNauseam•15m ago•0 comments

Dad's Fitness May Be Packaged and Passed Down in Sperm RNA

https://www.quantamagazine.org/how-dads-fitness-may-be-packaged-and-passed-down-in-sperm-rna-2025...
3•ibobev•15m ago•0 comments

Vince Zampella, Developer of Call of Duty and Battlefield, Dead at 55

https://comicbook.com/gaming/news/vince-zampella-developer-of-call-of-duty-and-battlefield-dead-a...
7•superpupervlad•20m ago•0 comments

Glia-associated amyloid β oligomer subtype and rescue from reactive astrogliosis

https://alz-journals.onlinelibrary.wiley.com/doi/10.1002/alz.70968
1•bookofjoe•22m ago•0 comments

I built a retro mini PC which uses game cartridges [video]

http://youtube.com/watch?v=iJbJDowBfi4
2•abeisgreat•24m ago•1 comments

Genesis Open Source Embodied AGI Simulation, Rust (Mamba-3, Not Transformers)

1•RGBra•26m ago•0 comments

Reddit comment led police to identify Brown University shooter

https://9to5mac.com/2025/12/22/reddit-comment-led-police-to-identify-brown-university-shooter/
1•akyuu•27m ago•0 comments

Free to Post, Impossible to Hide: The End of Anonymous Marketplaces

https://medium.com/@lea.leumassart/free-to-post-impossible-to-hide-the-end-of-anonymous-marketpla...
1•pbacdf•28m ago•0 comments

Meilisearch: Make the S3-streaming snapshots an Enterprise Edition feature

https://github.com/meilisearch/meilisearch/pull/6057
1•iruoy•30m ago•0 comments

How AI Collapses and Rebuilds Marketplace Moats

https://www.caseyaccidental.com/p/when-agents-attack-how-ai-collapses
1•gmays•31m ago•0 comments

Banana is Generating Antimatter, And I Detected It [video]

https://www.youtube.com/watch?v=ZOTsDmeM0No
2•jmward01•32m ago•1 comments

Show HN: Cardly – a tiny card-first app to capture people's Gift Cards

https://www.cardlyai.app/
1•Pastaza•32m ago•1 comments

Show HN: Making SVG Sparkline Component with an Agent to Graph Token Usage

https://bsky.app/profile/verdverm.com/post/3makhu3nbm22n
1•verdverm•32m ago•0 comments

Show HN: Find games with few -but positive- reviews based on games that you like

https://www.notsoaaa.com/
1•AmbroseBierce•36m ago•0 comments

Show HN: LLVM-jutsu: Anti-LLM obfuscation pass

https://github.com/thebabush/llvm-jutsu
1•babush•36m ago•0 comments

Welcome to Kenya's Great Carbon Valley a bold new gamble to fight climate change

https://www.technologyreview.com/2025/12/22/1130153/geothermal-energy-carbon-capture-kenya-climat...
1•rbanffy•36m ago•0 comments

How the Cybertruck's design may have trapped crash survivors in flames

https://www.washingtonpost.com/technology/interactive/2025/cybertruck-crash-design-lawsuit/
3•Jtsummers•37m ago•0 comments

Paperbacks and TikTok

https://calnewport.com/on-paperbacks-and-tiktok/
1•zdw•37m ago•0 comments

Lua 5.5 Released

https://www.lua.org/manual/5.5/readme.html#changes
3•todsacerdoti•38m ago•1 comments