Skip to main content

Code Review

I have been programming in support of my work (research and teaching) for over four decades now. I started in APL, then move very briefly to C and then for a while in C++. A lot of the C++ concepts have stayed with me in terms of programming style, but I then moved to interpreted languages for a number of reasons, first to Perl and now to Python for decades.

Python allows me to at least try to write elegant code and appeals to me aesthetically, although as time goes by I do tend to focus more and more on C++ concepts of interface design, hiding implementations, test-driven development and programming by contract. (Java came along later to these things and I never warmed to Java.)

Now that my retirement is in sight (I'm about 80% of the way through my career) I've been trying to articulate my programming style. I want programs to be correct but also demonstrably correct; clarity and programming by contract are more and more at the forefront of my mind.

For the last few years an on-and-off-again-and-on project has been to develop a framework for reviewing projects that are complete, revising them to expose any logic flaws, and to make them work clearly and not just work. Toward that end I've been working on some automatic diagnostic reporting that I've not currently seen in commercial tools, very idiosyncratic stuff. I've given a talk or two over the years about identifying with group theory classes that should be extracted from an implementation, etc.

It's engrossing, then I tire of it, then I start thinking about it again intensely with a new perspective.

Comments

Popular posts from this blog

Betrayal

I caught a student cheating on a final exam this morning. I had a line of sight on them and watched for ten minutes as they took their cellphone out of their pocket, kept it below their table, typed into it, read it, put it away, then wrote on the exam, repeating this cycle over and over again.  I was a bit surprised as the exam was open notes but this student had not attended many of our classes, just stopping by for exams, and I conjecture that they had no notes to open. I confronted the student who admitted that they had done wrong in an inarticulate non-confessional way. By the afternoon they had signed off on the honor code violation report to avoid further investigation and possible sanctions beyond failing the exam.  Is anger the right emotion to feel now? I had a working relationship with the student, although they had not contributed much to it. They had deceived me in order to gain unwarranted advantage over their peers in the class and that is not right. I don't wan...

Standing Your Corner

I'm a long-term David Simon fan ever since I read his book "Homicide", detailing a year-long embedding with Baltimore homicide detectives. It was clear-eyed about all of the strengths and weaknesses, good reflexes and prejudices of everyone that he met.  I enjoyed the television show that followed that he wrote for, and then of course "The Wire" on HBO and a number of his other shows---only limited by my access to streaming services.  There was a histrionic moment in a later season of "Homicide" where he just let a character vent; a homicide detective who was part-owner of a bar frequented by cops watched a particularly violent drug criminal, responsible for many unsolved homicides, come into his bar with his associates, violating the detective's territory. The detective came around the bar holding a billy club in his hand and loudly discussed his first year as a patrol officer walking a beat. His supervising officer told him that he had a corner a...

Car Accident

I was in a car accident a few days ago. There was a stopped car in the interstate and I didn't see it in advance; the car in front of me swerved into another lane and then there it was in front of me. I also swerved but damaged my commuter car, which is old and had many miles on it. The insurance company declared it a total loss.  The damage was where I scraped along the passenger side of my car (and the driver side of the stopped car). I had no deployment of airbags and no damage from my seat belt; no glass on either car broke, so it was a glancing blow if that makes sense. The front passenger wheel was damaged and I could not drive the car very far.  I pulled over to the shoulder and dialed 911. A state trooper made sure I was alright and proceeded to take care of the situation. I was moving slowly, aware that I had had a shock to my system and trying not to do anything to worsen the situation (stepping into traffic when I exited my vehicle, etc.) The trooper took my informa...