Eight years ago at Perth LCA I sat in the kernel mini-conf for the first time and listened to a bunch of kernel hackers discuss patching the kernel - at that moment I said to myself “I want to do that”.
Writing bitcoin wallets in Rust is easy with
bdk, what if we want to write a wallet
for one of the altcoins that forked off from bitcoind
. Well with some research
and a little bit of hacking we are off to the races.
This is an update of the initial blog post on running rust-libp2p traffic over the Tor network. In that post we used the torut library to configure the tor onion service in code. Turns out, for some use cases, there is a more simple method. This post runs through that method.
We can write peer to peer applications in Rust using rust-libp2p
. We
can anonymize TCP streams by running them through the Tor network. How
about writing anonymous peer to peer applications in Rust that run
over the Tor network?
A few years ago I read about a code training method involving writing the same algorithm out every day. I liked the idea but never got around to doing it. A couple of months ago I got a job working on a code base in a language I had never used before - Rust. Not only did I want to come up to speed as quickly as I could but I wanted to get good at Rust fast.
Or “What I learned at my first job”. In this post I will reflect on what I learned from the 9 months I spent working my first software developer role for a US startup. As with all my posts I follow the philosophy to write as if no one is reading, this will be in part a way for me to pull my thoughts together but also a way to document my progress in becoming a software developer.
In 2015 I had the very fortunate opportunity to invest some time in my skill as a programmer. At this time I had an undergraduate degree (Bachelor of Science) double majoring in software and computer networks. I had also completed the first two thirds of a masters degree, also in computer science. I chose not to complete the thesis because I felt I did not have anything to add to the field, graduating with a diploma of Computer Science (pass with high distinction).
Part 2 of this series outlines a method for starting to learn the process of Linux kernel development. As stated in part 1, this is but one method. The aim of this post is to illuminate a pathway starting at the point when you have had your first patch merged into the mainline. If you have not had your first patch merged you may like to read part 1 of this series.
This is the first in a series of posts about getting started in Linux kernel development. Most of what is written in this post is already available on the web. It is provided here for completeness and as a pre-amble to the next post in the series.