Like any person aspiring to humanity, I have interests -- not in the "oh, I like picking flowers and listening to grasshoppers" sense, although those kinds of interests aren't any less important than my professional interests related to computing, which are the subject of this article; and certainly not in the "oh, I like web programming, but in the back-end, and with Java and Go" sense. If you're reading this, there's a chance that you're looking at the prospect of hiring me or doing business with me in some other manner. In this case, you'll find that I'm very picky, and pointedly (I know I'm repeating myself) not in the "I like only PHP and MySQL" sense, but in a sense that may prove to be considerably more irritating to you.
I have described my philosophy on computer engineering on more than one occasion1, so if you've read this blog before, then you should be acquainted with it. Assuming however that you're not, read on.
Let us enumerate the negatives first: I believe that the field of computing -- including the branch of mathematics known as computer science and the branch of engineering known as computer/software engineering -- has gone horribly wrong. The human race has amassed a somewhat limited amount of knowledge in the last few millenia; yet the size of computer systems keeps growing and, moreover, academic papers keep getting published on various related subjects. This means only that the level of noise in the areas of computer industry and science is continuously increasing, not even accounting for the fact that information and knowledge are in general not equivalent. This is the thesis, and it's not really up for debate.
This having been said, I am not interested in adding to the pile of nonsense; firstly because the market already contains very capable people doing this; and secondly because I firmly believe that this approach won't improve the understanding of current issues, quite the contrary in fact. I might be interested in taking away from the pile, much like searching through trash may in principle yield useful items, but adding anything is not on my to-do list.
Moreover, I am not interested in contributing to the current academic hogwash machinery. I believe written communication to be very important, yet most academic writing is done for all the wrong purposes, i.e. publishing targets, and not from any clearly distinguishable causes. The solution to this problem is simple: I have a personal blog that will remain public for the foreseeable future, and I otherwise don't see much value in feeding publishing businesses.
As for the positives: I firmly believe that engineering -- including programming, building electronic circuits or what have you -- as an intellectual activity consists firstly of reading, understanding and taking apart that which does not adhere to proper specification, and only then specifying and implementing in a very precise manner. In any case, any sane result of implementation can itself only be a product to be read, understood, verified and fit-in-head.
Thus I am interested primarily in understanding and acting from that understanding, and pointedly not towards imagined things. I am interested in building technology inasmuch as it can be proven unambiguously useful; and I am interested in building scholarly items that build upon the classics and that future generations can use to build upon. I am interested in teaching these items to others; and more, some of which delve into the esoteric, but that you will have to find out by asking.
Things that may deter me from making business with you: mainly your ideological inclinations. That is, "agile" "team"work forms without substance, marketing buzzwords and politically correct attempts at brainwashing. Also, your lack of a trustable GPG key. Things that in principle encourage me to make business with you: mainly your money, which make the substance of any business relation more so than "excitement", "fulfillment" and any other concocted nonsense. There is of course much more to it than that, but this "more to it" is built in time, which decides my skin in your game based on how sane your business is -- primarily "sane", not "exciting", nor "changing the world", etc.
Skills that I have which you might find valuable: I can communicate in probably any programming language you know, but I don't think this is very relevant. I am a systems guy, thus you will rather want me poking at implementations and specs, reading, understanding and reverse engineering computer systems. If we're to work together, you will very likely gain a lot from my disagreeing with you, regardless of whether I'm wrong or not, and trying to reach "consensus" will most likely lead you nowhere (in general).
This about sums up my professional interests and non-interests for the next ten years or so. What now?
-
I.e. most articles on technical topics, highlights including the myth of "software engineering" series, the post about the usefulness of tools, the one on formal "verification", the ones about trust and security, and others.
You probably haven't read any of the items mentioned above and it's likely that you are too busy to do so. Sadly, this says more of your intellectual maturity (or lack thereof) than my inclination towards throwing words on a paper. But who am I to judge.