Code review? I was the ultimate cowboy coder in those days.
The first year I taught myself Sperry univac mainframe BASIC. I just started typing. This was at a 6-month techie school. I tested out of the basic course and then used basic to generate assembler and Cobol code. I wasn't going to type all that s*** in. I even hired a classmate to type for me occasionally.
But I missed the concept of arrays. So I came up with self-modifying basic code to accomplish the same task that arrays handle, with my variable names having ever incrementing numbers tacked onto them.
Sure, I accomplished some incredible crazy things. And then one of my classmates pointed out the concept of arrays to me. Holy s***! If I missed that, what else did I miss?
So then I learned to read the books. Read the manuals. Joined ACM. Get a couple books a month. Then I worked for a book shop and I got paid in books. Read the programmer guides. Just because I can figure out a way to accomplish a task does not mean it can't be done a lot better. Stand on the shoulders of giants, don't pretend to be one.
A year later I'm running through the xenix tutorials on a Tandy 6000. Teaching myself C. In a tiny company with two competent programmers, two support people, one salesperson, one owner. Those competent programmers had no time for me.
Code review? I don't think it was in the books yet. They just came up with the concept of structured programming at that point. Spaghetti Fortran was the norm. Goto wasn't evil yet.
And self-modifying code was admired.
3 years later I was the only programmer in an office of 30 people. The only tech guy. The only administrator.
I had no experience with any SQL based database. At that point I had done btreive via C and a couple of crap off the shelf dbase systems. And I was tasked with reworking a company. Figure out the database to start off with. Ingress, IBM ( I have thankfully forgotten what that database name is, I can Google query it but it's not worth the trauma) f*** it just came back, DB2, informix, a couple others. Oracle was the one I chose. I had absolutely no background to be making these levels of decisions at that point in my life. I think I was 22 or 23.
I initially negotiated $6,000 for Oracle license plus yearly support. They told me I did not need to actually make the deal at the moment, just be sure I wanted to use it and then make the deal. Take your time. Code a bit. Make sure it works for you.
I was foolish enough to try to build the system via SQL-Forms. I had to construct table driven editorial forms. About two or three hundred of them. So I was going to do it via self-modifying SQL forms. I was an idiot. And I was locking myself into Oracle at that moment. So then I rethought and decided I was going to code it all by hand in C.
I coded for 2 months. I coded for vax VMS, Unix/Xenix, and MS-DOS 3. I had never used a vax before, but since I worked for ziff Davis and they had spare vaxen lying around, it was a possible target. So I coded portably for all of these for both the database access and the screen driving portion. My code could compile on any and when we had system specific interfaces such as the screen it kept everything indirect and drew it all appropriately no matter what system.
I learn to login and run programs on the vax and glance at the help system and compile my code and occasionally edit my code. I learned to use the vax full screen editor and I have to tell you it sucks. It's brilliant though. If I had started with that editor I would probably love it but my default vi fingers do not work with VAX TPU.
As I was doing this I was also learning Oracle. In those days every time you called Oracle tech support and they sent you anything, They also sent you the entire manual set that spanned two boxes and weighed about 80 lb. Every time they sent me anything, they also sent me a manual set. I had them sprinkled around the building.
And when I was ready to pull the trigger Oracle took the price to $20,000 plus the yearly. My boss told me to find an alternative. So I installed a lot of different databases and coded interfaces for each one of them.
When I was done it turns out all the alternative databases wanted the same amount of money as Oracle, they just didn't tell you until you got to that point in negotiation. So I ended up with Oracle.
I wrote a system that included a command line interface into a full screen editorial program. I had to exactly copy the system that was already there and it was horrible. But I had to start with that and then make it better after I moved all the people to it. It took four people ( seasoned professional programmers ) a year to write the system the first time. It took me about 2 months.
I duplicated a Pick system with my hand-coded C/Oracle system. This command line interface had its own macro language. And it was this horrible abortion of working through what that person typed on the command line and figuring out what to do with it. So every possible command or entry of any sort had to be parsed and acted upon. And if it was in the middle of a macro, I was essentially executing an interpreted language and bouncing all over the place. That case statement went on and on and on. Half the time if it matched something, it still need to extract some more stuff and figure out what to do with that and then realize that it was an incorrect direction and then go through the rest of the possibilities in the case statement. I had some serious go-tos in that.
That was when I found out a standard programmer can handle two screens, a printed page. But I could handle about 30 or 40. But it was a bad idea to do it.