For my dissertation I tore apart Jensen and Wirth’s Pascal compiler to reuse for the language I invented. It was full of two or at most three letter variable names. I spent a month documenting them all. Wirth’s data structures book, which I taught from, has the same sin. And Fortran programs back 50 years ago usually had one letter variable names, at least in most examples I saw.
I never heard of anyone saying this came from storage being expensive, but it is possible. Maybe this person learned from an old fogey.
Though my CS professor friends used to dread each September when the high school BASIC programmers arrived, sure they knew all there is to know about programming.
There is a guest column in the Times today about the benefits of college, with quotes from Google about how coding boot camps are not as good as a CS degree.
Maggie Johnson, Google’s vice president of education and university programs, told me that although the company has made a small number of hires from top coding boot camps, “I still doubt that boot camp graduates can learn new languages and technologies as quickly as someone with” a computer science degree.
One of the challenges with all this is the kind of skills needed to work for a Google or a Microsoft whose products are software are different from those needed to work at an insurance company or airline whose software is meant to run their business. Which is different again from the folks coding up websites and back-ends for small & medium businesses. And from the folks making phone apps. Or games. Or gizmos like Bluetooth headsets or routers or televisions or cars.
Google probably has a lot of need for super top-end talent and little use for schlubs who can bash together a website. Yes, Google has websites. But not like Joe’s Pizza has websites.
So while I’m not surprised at all to hear the Google exec say what she did, I don’t know how far down the dev food chain I’d apply that same rubric. In an ideal world it’d be all the way to the bottom and we’d have uniformly excellent professional software running our world. We do not live in that world.
I know nothing about computer programming, but isn’t it becoming risky to invest time and money pursuing that career path with AI getting deeper in the coding field? It seems like that may be one of many jobs that AI will significantly displace—and it appears to be getting there fast.
I’m out of the biz now, but the pronblem is that AI is exactly as smart as the training material fed into it.
One hell of a lot of the code that’s publicly available is atrocious. As wacky as homeopathic medicine and as crazy as Mr. Pillow Guy. Right now AI coding can whip out wrong code in very “interesting” wrong ways…
Might it suddenly get better somehow? IANA expert for sure, but I’d put money on “no”.
I was more or less a self-taught programmer in the 90s. Although I had a degree in civil engineering from a very good school already. I knew a bit of BASIC and FORTRAN from school. After a friend got me a job with a small “staff augmentation” consulting firm, I learned a lot of 90s client-server technology like VBA, Visual Basic, PowerBuilder and databases such as SQL Server and Oracle. I also learned a bit of Java and HTML later on.
That was fine for about 5 years. And actually I still use a lot of SQL to this day. But what I found from this early experience was that there are a lot of garbage IT programming jobs because there are a lot of clueless companies who need cheap software development. And they will often let these developers get away with terrible coding and business practices because they don’t know any better. Lack of formal QA. No code reviews. No standards of any kind. And they pay for this technical debt in the long run with buggy, outdated systems that need constant maintenance.
All this is facilitated by the ‘broker’ concept. That is to say, people and organizations that earn a living buying and selling what are basically temp resources with a collection of desired skills.
Offshoring firms like Wipro or Globant.
Large system integrators and consulting firms like Accenture and IBM and Deloitte.
A surprising number of firms and digital agencies with around 500 to 2000 employees who few people have heard of.
Headhunters and staffing firms and contractor agencies that will match some job req one of their salespeople found with a resume they found online.
Any of these might be fine for a first or second IT job to build some skills for your resume. But unless you want to spend your entire career building crappy little back office “shadow IT” projects, you should probably get a CS degree and certs AND think about do you want to eventually get into management or something.
Yes, IT does skew young. Perhaps a lot of that is due to Silicon Valley mythology of young entrepreneurs dropping out of college to become billionaires. But I think a lot more has to do with a culture of finding eager, enthusiastic young people who don’t know shit because they just learned the latest tech and you don’t have to pay them much. And it’s easy to get away with saying they are young and don’t know shit when they screw something up. Harder to do that with someone with supposedly 20+ years experience.
I don’t think certificates matter much, though that is not saying that they are worthless, just that there is more than one way to arrive at the requisite knowledge to do the job.
Yes you can be self taught. I recommend working on some kind of personal project that you can demo and/or talk about in the interview. Because the abstract knowledge is insufficient, you need to have built something non-trivial because a lot of the most important experience actually is about bringing components together and solving higher-level issues.
Also bear in mind that few companies recruit for “computer programmers” at this point; they want software engineers which includes familiarity with methods of testing, source control and continuous integration, probably agile and other ways of organizing work, a bit of system architecture concepts etc. You can self learn all of this, and you don’t need to be an expert in any of it, but expect some basic questions to come up in interviews.
Oh and needless to say, don’t expect to walk into a six-figure salary, the first company that hires you is taking a risk. After that though, once at least one company has given you a good reference, it won’t matter whether youve been to college or had any formal instruction.
Joe’s pizza probably hired some web developer who threw together his or her fifth nearly identical website using WordPress. And it is no doubt good enough - maybe. (I’ve dealt with some awful restaurant websites.) I maintain a few websites for clubs and a conferences, and I hardly consider that programming. When I worked I had code that generated web pages for displaying our data - now that was programming.
Silicon Valley had hierarchy like everywhere else. In the long run the programmers at the bottom of Barry Boehm’s 10 - 1 effectiveness scale wind up at relatively low level companies. Same goes for chip designers. There are exceptions of course.
Compared to when I started, coding is already obsolete. Most of the stuff I would have written code for you can now get as packages. Look at website. Hardly anyone writes pure HTML anymore, you stitch together sites using WordPress.
But the skill in programming is not writing code, it is analyzing the problem to know what kind of code to write. It is going to be a while before AI can understand requirements. Sure it could probably write an accounts receivable package before too long - but companies can buy stuff like that which is going to be cheaper and better. And defining such a package which is going to be generic enough to be both good and cover enough of the market is tough.