From 3534b428629be185e096be99e3bd5fdfe32d5544 Mon Sep 17 00:00:00 2001 From: Laurent Bercot Date: Thu, 18 Sep 2014 18:55:44 +0000 Subject: initial commit with rc for skalibs-2.0.0.0 --- doc/djblegacy.html | 151 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 151 insertions(+) create mode 100644 doc/djblegacy.html (limited to 'doc/djblegacy.html') diff --git a/doc/djblegacy.html b/doc/djblegacy.html new file mode 100644 index 0000000..0cdd891 --- /dev/null +++ b/doc/djblegacy.html @@ -0,0 +1,151 @@ + + + + + skalibs: the djb legacy + + + + + + +

+skalibs
+Software
+skarnet.org +

+ +

The DJB legacy

+ +

Who is this DJB guy, and why is he so special anyway ?

+ +

+Dan J. Bernstein is a cryptologist and +a mathematician; he's also the author of a widely known and used MTA, +qmail, as well as a few +lesser known pieces of software. +

+ +

+ For some time he was quite active in some Unix software-related +Internet newsgroups and mailing-lists; he quickly became a +controversial figure of the Unix programming community, mostly +by being extremely vocal against well-known authors of +"mainstream" Unix software and by suggesting designs so removed +from traditional software design that a normal human reaction is +to first view him as a complete nut. +

+ +

+ I do not care for controversy. I am interested in the code. I was +a sysadmin at the time, and still learning to program in C beyond +what they teach you in school (i.e. not much). I had heard enough +horror stories with sendmail; so I gave a shot at qmail, trying to +understand its design principles and the way it was made. And then +I fell down the rabbit hole. +

+ +

+ Look, I don't care what you think of the guy, I don't know him +anyway, and this is totally beside the point. The only thing that +matters is that DJB's software is right in so +many ways. This software works. DJB's design +principles are sound and elegant; they are +sound foundations to build reliable, secure, and +low resource-consuming software. And the design, +when you get used to it, feels so unix-ish: it's Unix the way it +should have been from the start. +

+ +

+ Studying DJB's software was the best course in C/Unix programming +I ever had. Now I teach C/Unix; and I am really glad I +learned from the best. +

+ +

Building beyond DJB's works.

+ +

+ There's already +a lot you can do with +pristine DJB software and some brains. +

+ +

+ However, I mostly see DJB as a pioneer. He showed it was possible +to think Unix differently and build secure, reliable and efficient +software without investing millions of dollars into it; now it is +up to software architects and programmers to use the breakthrough +and build upon it. There's a real demand for quality Unix software +out there; it's time to supply. And +I am not the only +one thinking this way. +

+ +

+ So, skalibs. +

+ +

+ One of the "DJB philosophy" key points is to question the +interfaces. You have a task to do; you have existing interfaces. +What do you do? +

+ + + +

+ Interfaces should be questioned right down to the libc. You +cannot build strong software on flakey foundations. And from a system +and network programmer's point of view, one thing is clear: most +standard libc interfaces suck. There is no buffered asynchronous +I/O. There is no timed I/O. There is no heap management helper. Even +simple system calls are not +guaranteed to succeed! +

+ +

+ That is where skalibs comes from. skalibs results from questioning +the libc interfaces, and providing replacements or additions where +the existing interfaces do not make it easy to write reliable, secure +and efficient software. It is inspired by DJB's work. It is +not a shrine or anything of the kind. +

+ +

Conclusion

+ +

+ So, in short, DJB is not a guru, I'm not a mindless brainwashed fan, +and the "DJB advocates" are not a cult. We just think DJB brought +something to Unix and more generally to the software programming world; +we learned from him, we write software following +sound principles that he was one of the first to really apply, and we give +credit where credit is due. +

+ +

+ Use our software. You will never want to go back. +

+ + + -- cgit v1.2.3