To me programming is low level languages. That’s where the work gets done. Not a bunch of acronyms, Interfaces, or API’s whatever you want to call it.
I’ve tried a lot of high level “Tools” in the last 35 years and they always came up short. You needed to add some real code in here and there. On a simple level like adding a little VBA to an Excel Spreadsheet.
I started to learn programming on my own back in the late 1970’s when the first microcomputers (MITS Altair, Sol-20) began to appear. I fell in love with it and couldn’t teach myself fast enough. I have a Ph.D. in economics and was teaching at a university at the time. I built 10 kits for the College of Business and used the “computer lab” to teach statistics and modeling (using Lotus 123). I learned enough to write a C compiler that my software company marketed plus wrote a total of 20 programming texts along the way. I retired from the CS department at a Big 10 university. Now I’m 80 years old and teaching myself about AI. There’s no secret to keeping a programming job. All you have to do is keep renewing your skill set.
In the early 1990s we began using tools that “wrote” programs. Those programs were like the same program/model modified to do some similar but different task. Out programmers spent as much time perfecting the results as if writing the prgram from scratch and the tools were scrapped.
BTW, the above pictures? They were called "bugs" because literally bugs would fly into the computers and short them out. (IIRC)
What happens when big money decides to steer it all in their direction and you have no recourse.
Like they did during COVID, remember?
AI can’t program, PRODUCE or create new ideas.
It can deduce and regurgitate existing concepts and ideas but only what it’s seen.
If you need new concepts, new solutions (and you need that if you’re coding NEW programs) then you need real engineers.
AI might compete with low level “grunt” programming - but do that and you’ll knock out low level people who will never become advanced people.
Addy Osmani, the head of user experience for Google Chrome, calls this 'the 70% problem':AI can recognize patterns, but does not (yet?) understand flow mechanics."While engineers report being dramatically more productive with AI, the actual software we use daily doesn’t seem like it’s getting noticeably better."
wake me up when AI can perform a relatively simple task like convert each year’s new Federal + 50 States’ tax laws and rules into the the new TurboTax Deluxe + State PC/Mac program and new H&R Block Deluxe + state PC/Mac program for the year ...
I hope so. Three generations in our family have worked in this field, beginning with punch cards. Through all the changes, there was always a need for people. I hope it continues that way.
mark for later
Yes, I’m sure when management comes and tells you to teach this how to do your job you have nothing to worry about.
bfl
TLDNR
Where are the Cliff’s Notes on this?
I have ai open on a separate screen all day. It’s great! I can paste a block of code and say: “see this code? I want a sub that is similar, but does x, y, and z”. Or in sql, I can paste two table definitions and say “I want to keep this table in sync with that table, create an INSERT, UPDATE, and DELETE command in a stored procedure that will do it.”
“Insert debugging lines within this code”
“Can you help me figure out what is wrong with this function”
“I want to write a DAX formula that does X. In Sql, I’d do it like this: YYYYY. How can I do similar in my DAX formula.”
Sometimes you go down a rabbit hole of bad suggestions that loop back on themselves. But overall it has helped me expand my knowledge, learn new software quickly, and do things that I may have thought would be more complicated than they were.
If I had the money, I’d invest in nuclear. AI isn’t going to get smaller.
Great article.
There is a low-code / no-code movement that enables those with minimal or no programming skills to build business automations with tools like make.com and n8n.
This is popular for marketing agencies and business consultants.
These tools can be used for things like social media content creation (for businesses), sending automated marketing emails and text messages, and fielding phone calls with interactive AI.
Ping!
I can give you guys some war stories from the AI front. I’ve been a professional dev since ‘86. Assembly/C/C++ and most other popular microcomputer languages. Moving on. At the office I was asked to develop a script to parse a series of PDFs. I knew this was going nowhere, and by the time I was done with the script they would have changed their minds, so I decided to use AI to do it. It got the first 3-4 working, but then when 5 was different it took over a day for it to produce code that code handle it. (This is OCR’d data from the title page of a patent-like document). By the time it had figured out how to handle #5, it had broken 1-3. So I had to point it back to those, and it fixed them, but then 5 didn’t work anymore. These were in essence TABLES that were getting scanned. Sometimes the word “Name” was on the LEFT side of the name, sometimes it was ABOVE. It couldn’t seem to deduce what was doing on despite me telling it. “This data comes from a table, sometimes the word ‘NAME’ is on the left of the name. Sometimes it’s ABOVE it”. I even caught it one time adding code to special case a situation it was running into. (The name had spaces between elements, and it had been asked to remove all by 1 space.) It added a “If name = ‘first last’, then name = “first last” chunk of code. I had to remind it that there are 1400+ PDFs in this collection and that it couldn’t special case ALL of them. Anyway, it was about this point that I was told that there exists an online tool that can spit out this information, and thanks for all the work I had done.
Being a glutton for punishment, I decided to try one of my home projects with it. I write software bots that play classic video games. I’m working on a new one now, and figured I would see if it could reason some code to handle the targeting. Short answer? NO. Long answer: It’s like it has very limited memory. You can only add so much background and corner cases before it starts losing some of it. At one point it produced a 500+ line file that did MOST of the parsing. But had a bunch of bugs. In the process of trying to get the bugs fixed it provided a 200 line file that had code to address the current bug, but had stripped out a bunch of the previously generated code which was REQUIRED. Once again, as though it ran out of memory, and had to “tune the working set”. I finally got it to a better place and called it quits. I’m now working through the code and finding the holes on my own.
Almost 70 years ago I was writing programs in FORTRAN 4 and using paper punch cards for input and some 25 years ago I learned Java Scripting and HTML. These programing languages are now about as dead as Sumarian and cuneiform. However, I have kept my old slide rule and trusty book of logarithmic tables so if the sun belches out another Carrington Event frying all our computers, I am ready.