69,558 karma · joined January 13, 2008
Formerly at kCura/Relativity, security. I do application penetration testing for hire these days. Happy to chat about application security, programming, and ham radio. My conversations about agriculture are not that interesting.
Security: https://ciexinc.com/ Of particular interest are the solarwinds articles at https://ciexinc.com/blog/solarwinds/index.html Old very fun projects: https://ciex-software.com
“Eventually, all things merge into one, and a river runs through it. The river was cut by the world's great flood and runs over rocks from the basement of time. On some of the rocks are timeless raindrops. Under the rocks are the words, and some of the words are theirs.
I am haunted by waters.”
Beware the anxiety industrial complex.
However, a friend of mine was a professional Smalltalk programmer. He claims that his median line count of methods, over his 17 year career, was 4.
It is harder to do in other languages--it seems that C would be on the order of 10.
Clearly it is a rule that can lead to complexity of too many methods, compromising whatever gain smaller methods give you.
I now comment on method or function basis, describing what the method does. The how should be evident in the body itself.
He doesn't seem to often concede to being wrong.
This reminds me of what Dijkstra said (paraphrasing): the computation is the important thing, not the code.
His clean code work is certainly pretty dogmatic. As I recall, he says that Java is not object oriented.
But if my memory serves me correctly, his book about C++ (Designing Object-Oriented C++ Applications Using the Booch Method) has some excellent parts. His description of the difference between a class and an instance is one of the better ones.
Then there is the famous sudouko puzzle incident, in which a student trying test-driven development can't get the solution. It is a very instructive incident which illustrates the TDD is unlikely to help you solve problems that are beyond incremental changes. Peter Norvig's solution makes that very clear. Uncle Bob does not seem to realize that.
> Who else has had to deal with idiots who froth at the mouth when you exceed an 80 line character margin?
But I admit in my youth, I was pretty dogmatic about languages and development practices, so I've been that guy.
Mind you, my math is enough for BSEE. I do have a copy of one of my university professor's go-to work books: The Algebraic Eigenvalue Problem and consult it occasionally and briefly.
Earlier, I wrote an editor for card images stored on disks. Very primitive.
Excellent.
So do I qualify if almost every project that I created in my > 50 year career is now legacy?
(Might be made slightly easier as many of the companies no longer exist.)
Another computer mentioned was the Rainbow. DGC ported the compiler there, and in the process, wrote MicroEMACS, which is now known as MG on Linux and Unix. (Apparently this is the editor that Linus uses.)
We also had a VAX (I think it was a 730, very low-powered) to port the 8086 compiler to be hosted on VMS.
After MWC, DGC went to DEC and worked on DecTalk, an early text-to-speech device. The story goes that one member of the team, whose voice was used as the basis for the sounds, lost his voice. Thus his voice lived on only through this device.
When I was at Sycor in the late 70s, our computer was a PDP-10 (or Dec-10) running Tops 10. We wrote a cross compiler for 8085 in Bliss-36. (The assembly language for the PDP-10 was probably the most attractive I have come across.)
DGC also worked on the Alpha team (https://www.computerhistory.org/collections/catalog/X1720.99...) . He is now at Apple, and he has a side hobby of building Alpha boards out of FPGA (http://fpgaretrocomputing.org/).
When I was at Datalogics (1990-1992), who trained probably. half the world in SGML, and provided software for database publishing, legal loose leaf publishing (ask me about footnotes) and whose software was printing a substantial fraction of the red herring prospectuses at the time. They used a VAX running VMS. I had a Dec Station running some flavor of Unix. This was my first use of Emacs. As opposed to MicroEMACS.