- I read a great article.
- I have a look at the rest of the blog, seeing more interesting articles.
- I see that the posting frequency is low. 
- I want to add it to my QuiteRSS reader, but there is no Atom/RSS feed.
Interestingly, the author still worked a lot with the docs (RFCs), not just with the software itself.
I believe this is important for any hands-on activity. Even though the documentation isn't your starting point, and may be too cumbersome and badly structured, sooner or later you should go back to them, now with more specific questions, picking out what you need.
Unfortunately, that was somewhat hidden in a small "here" link near the end of the article.
By the way, I believe to would be preferable to have a separate Git repository for that, rather than putting all mini projects ("miscellaneous code snippets") into a single repository.
This is unpopular, but you could implement port knocking.
Now the rest of the world doesn't even see your sshd - on any port. I love the idea and have implemented it everywhere that it's practical.
After installation, simply type:
$ sudo apt-get -y install sshguard
And then edit the whitelist to include your local IP if you want;
$ sudo vim /etc/sshguard/whitelist
$ sudo service sshguard restart
Next blog post idea: taking apart how zlib works (https://tools.ietf.org/html/rfc1950) and using that as a built-in compression algorithm. Seriously though great article.
What first revealed me the hidden complexity of SSH was typing this during a live SSH session:
Telnet had something similar.
ssh server can be run with -d option for monitoring. It redirects debug messages to stdout.
* Picking some RFCs and then writing a client/server is fun as a coding exercise.
* I had a go at implementing POP3 and HTTP years ago in a MUD / LPC, but HTTP has been done to death now.
* Documentation is also really really good and I like the self-describing code, but have you thought about adding any unit tests i.e. for the algorithms?
Edit: Finished reading, what a great project! I've looked for something like this before, but ssh documentation never quite contained what I was looking for, let alone providing a simple client to hack with.
Many code snippets look a lot easier than I would expect it to be (e.g. DH KEX looks very simple there), though of course finding out what the correct code is, even if it's brief, takes a lot of effort.
Great writeup and thanks for sharing!
You might be crushing whites, or just have incorrect gamma.
It's very difficult to tell, though. The gamma varies between 1.9 and 2.3 (roughly) depending on the angle at which I look at my screen. Every time I sit this will be different.
Opening the article again, it also depends where I look: when tilting my laptop back a bit, the text appears darker (even black if I tilt it far enough) but the exact shade differs: near the bottom of the page it's still greyish while the top part is indeed almost black.
Looking on my phone, it's a lot better readable than on my laptop, probably because I look at my laptop screen at an angle and my phone's colors don't change if you look from the far top or bottom.
If you have something like the Nvidia Linux control panel for adjusting colors, lowering the white level and raising the black level can help compensate a bit. The open source Media Player Classic (or MPC-HC maybe) player also has a nice shader to correct for the vertical variation, but I don't know of any way to apply it to the whole OS.
P.S. Loved the article!
While talking in a context of a specific post, written by a male?
Since the specific context matters to you, would you now suggest the parent of this thread then change the pronoun to "she" instead?
Answering your question: would he, or me, or other poster know the gender of author while writting about author -> we should use proper form. If no prior knowledge is present: it does not matter to me, and I consider it not worth mentioning or correcting.
Hint to all who participated in that ugly thread:
The inital comments were bad, but I found it even worse to see how many people engaged this, making that ugly thread larger and larger. It became so large that it finally displaced all the good, on-topic comments!
If you really want to show respect for the author, just downvote + flag the ugly comments, and be done with it. Then, go on and use your time to post something insightful about the author's article.
Alternatively, such threads could not be hidden completely, but only be reached via a separate link. That way, the discussion would still exist, but would not consume growing space on the original discussion site anymore.
(In addition, it would still serve to bind the people who insist on wasting their time in that corner. On the other hand, that would still be a pity. I assume that some people who wasted their time in that corner would otherwise have engaged in the remaining insightful discussions.)