“Learn to Code”…Still a Dem Thing

In early 2020, Joe Biden advised coal miners facing unemployment to learn to code, saying:

Anybody who can go down 3,000 feet in a mine can sure as hell learn to program as well… Anybody who can throw coal into a furnace can learn how to program, for God’s sake!

I critiqued this ridiculousness in my post Shovel That Code.  (Does Biden think that coal miners stoke furnaces?…That stoking furnaces is a big factor in today’s job market?)

Comes now Obama associate Rahm Emmanuel, with precisely the same advice to unemployed retail workers.

There’s going to be people, like at J.C. Penney and other retail [outlets]. Those jobs are not coming back.  Give them the tools, six months, you’re going to become a computer coder. We’ll pay for it, and you’ll get millions of people to sign up for that.

There is not an infinite demand in the US for entry-level programmers.  Much offshoring of programming work is taking place…see my post about telemigration…and automation of programming work, which has been happening since the introduction of assemblers and compilers in the mid-1950s, is ongoing.

In my post about Biden’s learn to code comment, I said:

Can you imagine what these people would do to the economy if they ever achieved the degree of power that they so avidly seek?

We may find out, although hopefully the Senate will provide some degree of sanity check.

 

 

38 thoughts on ““Learn to Code”…Still a Dem Thing”

  1. “the Senate will provide some degree of sanity check”

    David, you think people who felt no compunction fixing the vote for the President after the fact will be averse to do the same with remaining Senate votes?

    I thought you’re well versed in history, particularly German and Russian…

  2. I said what Tatyana said, yesterday. We should expect the Dems to steal the GA Senate seats, the way they stole so many CA House seats after the 2018 election, when they turned decent gains into a rout. Hopefully the state level GOP can get its act together to suppress the cheating enough to win, but counting on GOP competence compared to a Dem party motivated to get full power is a sucker’s game.
    The “those jobs are never coming back” line shows pretty clearly that the Dems have no interest in getting working class voters back. It’s suburbs all the way…

  3. The combination of ignorance and arrogance represented by someone who wants to restructure the entire US energy industry…and who thinks *coal miners stoke furnaces*….is simply beautiful in its ugliness. It is like someone who has never flown an airplane or studied the subject…and who thinks airplanes fly by flapping their wings…seeking *and quite possibly getting* a job as an airline pilot.

  4. “It is like someone who has never flown an airplane or studied the subject…and who thinks airplanes fly by flapping their wings…seeking *and quite possibly getting* a job as an airline pilot.”

    For now, this is precluded by the requirement of an Airman’s Certificate. One isn’t required to run an airline however.

    A combination of ignorance and arrogance perfectly sums up most politicians in both parties. Going back to WWII, we’ve had Presidents that were never anything but politicians; Kennedy, LBJ, Nixon, Ford, Carter, Clinton, Obama and now probably Biden/Harris. Then we had others with accomplishments in the real world; Eisenhower, Reagan, Bush-43 and Trump. Bush-41 is sort of an outlier, not a politician but a sort of hanger on. Truman was only successful as a politician but had a little more real world experience than Kennedy and Carter that were junior Navy Officers.

    How many of the above would have been invited for a first round interview if they were applying for some sort of executive job? Although I’ve worked with electricity for more than 50 years, I can’t be employed as an electrician because I don’t have a license, this is supposed to protect the public. I’m not really advocating some sort of license to commit politics. A process that can’t do better than any of the leading Democratic contenders or McCain, for that matter, seems beyond repair.

  5. Clioman…there’s apparently going to be a recount in Georgia…and if it should find that Trump was the actual winner of Georgia’s electoral votes, them it seems likely (but not certain) that the numbers for the Senatorial races were similarly skewed. Haven’t seen any discussion of this possibility, though.

  6. The absurdity of the Learn To Code mantra is that it really isn’t something that everyone can just sit down, take a class, and learn to do. It takes a logical, numerical, sort of mind, that you find in much of STEM and business. Interestingly, a lot of music majors also seem to have the right type of mind too. But many of those in the humanities in particular, and also some social sciences, seem to struggle to learn just the basics. It just doesn’t make sense to them, like critical English analysis doesn’t for me. Another aspect is that it takes IQ type intelligence to be tolerable in programming. My guess, from having worked professionally in the field for 15 years (and having done it compulsively now for 50) is that it takes an IQ of maybe 1 std above the mean to be decent and 2 std above the mean to be good at it. That alone eliminates >60% of the population.

    I say this from experience. My background is that I am in the third generation with a math/engineering degree (my daughter is the 4th, with degrees in physics, math, and engineering). Halfway through my undergraduate math degree, I took my first programming class (taught back then in the math dept). For me, it was like falling off a log. Read the textbook before the first class, and then spent the entire term waiting to find the catch. For me, there never was one. I loved it, and have been doing it compulsively ever since. But, I soon discovered that I was the anomaly. I tutored and TA’d undergraduates from various disciplines who tried to grasp it, and for many of them, no matter how I tried, it never clicked. Even people who went on to get advanced degrees in humanities.

    My guess, from the above, is that 75% or better of the population is incapable of ever becoming tolerably good at programming. Good enough that their marginal utility to an employer would ever exceed the minimum wage. I have seen no evidence that either Barack Obama or Joe Biden could have. Ditto for AlGore. Crooked Hillary maybe, but maybe not her husband. Rahm Emmanuel probably could have been good at it. Trump, Romney, GW Bush, certainly – all have business degrees. Wonder why Dems so frequently come up with brain dead economic policies? I will suggest that part of it is an endemic innumeracy, plus an inability to engage in cause/effect thinking – both required for decent facility in programming.

    One side note on offshoring coding is that it is India (and probably Pakistan) that is the biggest danger there, and not China. In my experience, the only ethnic group that seems more naturally adept at programming than Ashkenazi Jews, are the Indians, and there are nearly 100x as many of them. The PRC Chinese seem no better at it than most other ethnic groups, and bring the country’s slapdash view of work to programming. I was an in house software patent attorney for an international electrical engineering company. We had research labs around the world, and I would deal with their top inventors. The best software type stuff came out of Mumbai and Tel Aviv, with Munich and our two Russian centers following. I was amazed that a couple of the Chinese C/S PhDs I worked with were no more competent in software than many Americans with C/S undergraduate degrees.

  7. My guess, from the above, is that 75% or better of the population is incapable of ever becoming tolerably good at programming.

    My guess is it’s at least 95%.

  8. An observation from the sidelines. (I’ve been here on the sidelines for a long time. Finally got up the nerve to be -part- of the problem, rather than just an observer)

    The argument, as hilariously stated by the Emmanuels of the world, is typical oversimplified false dialectic….it tries to stand outside -context-.

    Knowing how to code is necessary, but insufficient for anything beyond the most theoretical pieces of architecture. Being able to code successfully requires some fundamental understanding of what, where and how the code is to be used. Otherwise, like too much of ISO, it will produce a coherent failure. Neat, tight (sort of) coherent code that doesn’t get the intended job done or, in the worst case, causes bad outcomes.

    A real world example:

    At a prior employer in the specialty chemical industry, who shall remain nameless, the newly emplaced CEO of the business unit (we had just been acquired) decided that we just had to be the pioneer location for implementation of a new ERP. Sometime later, he comes to my office with a printout demanding explanations as to why my particular part of the business should be tolerated, much less allowed to survive. It seems someone had done a trial accounting run with the new system and the outcomes were, essentially, gibberish. Not very profitable gibberish at that. Upon investigation, it turned out that the new program had been implemented by the code monkeys at corporate HQ, none of whom had ever seen or visited my business unit. Everything was just -assumed- to be a standard, simple chemical op – put stuff in tank, mix tank, fill drums. Well, in my unit, the chemical op was just the first stage of a multi-step value-added manufacturing process, none of which was captured or, when seen, fit to a proper code design. Finally escaped from hell when, as a final desperate act, I asked CEO: “Do you sell refrigerators by the pound or the gallon? No??” Essentially, the coders, while writing great code, had completely changed the theory of the business. I did survive for another day……

    Why this anecdote?: Because it shows just how far the left has gone into the navel of decontextualizing everything. Thinking that -just- learning to code is the end of the process, rather than the beginning. Above simple apps, you need to know the underlying situation….and, if you’ve just been turfed by an industry that has, metaphorically, “left the building”, to contribute real added value – beyond simply taking a monkey wrench to maintain or fix existing cut-and-dried apps, one needs to invest in learning whatever new business you enter, not just learning code…. and this is a very time-consuming affair. It doesn’t happen on “internet time”…and many people undertaking this sea-change at midlife are not given either the time or the breadth of background to be successful….in short, they have been set up to fail.

  9. I agree about Indians. That is what the whole tech world shift left is about. One, H1B visas are bringing Indian coders (I’not assuming they are all programmers) to replace American workers. Both Southern California Edison and Disney have replaced most citizens in their IT departments. For SCE, the workers being replaced were obliged to train their replacement to get severance pay.

    The other factor seems to me to be a cultural difference with Indians and Americans. The CEO of Google, for example. We are being replaced by people who do not understand our values.

  10. MidwestObserver makes a useful point. Not the left nonsense, this thread is almost pure straw already. ;)

    Great coders are very rare and can produce code that perfectly encapsulates the problem, and because of this, is usually quite elegant and to the point. Regular coders are usually competent and their code is usually not seriously wrong, but unless they can encapsulate the problem well, becomes a rats nest as they try to make the code work. Extending this to include things not originally intended, becomes very difficult. This is probably 90% of the code is use today.

    I taught myself as it was just fun for me. I’m not great but I can encapsulate problems well, so I write less code than some, to achieve the same thing.

  11. Midwest Observer…a soon as I saw the term “ERP”, I knew it wasn’t going to be a happy story. (although sounds like it ended well, after some unnecessary stress)….haven’t heard many people expressing joy and gratitude at what ERP has done for them.

    Regarding your story, this sounds like a cost accounting issue…is that correct? If so, why on earth were programmers deciding how to account for the process stages, as opposed to finance people? (not that finance people always get it right, or even sane, in cost accounting, but still, the odds are probably better with them)

  12. re the question of how many people can learn to program, I think it depends what kind of programming is involved. If its a matter of setting up some macros in Excel (or similar) to do some sort of data collection or tracking task, most people probably can. If it’s a module in an application program to perform some well-specified task, less than for the Excel example, but still quite a lot. If it’s designing and implementing the memory management for a new operating system, probably down at the 1% level or lower.

  13. David: A set of replies here.

    First, yes, your base take on this event is correct, but you’re missing a piece. Yes, on the face, it’s basic level cost-accounting. But you need the Rest of the Story.

    (1) Not a vendor change. A move from the existing ERP to the next major version, while simultaneously integrating the new acquisition (us)..
    (2) Not an out-of-industry change. The ERP in question had been used by us – and other specialty chemical and manufacturing concerns – for years.
    (3) There was an existing relationship with the programming staff – and here lies the crux. They were -assumed- by management to already “know the business”. i.e. they had the context required to execute even when management abdicates by giving them minimal specs and were trusted to get it right, because, well, they “know”. And, as a result, we had a double fault because they didn’t “know”…..they simply executed the spec as written, didn’t recognize the situation or challenge it and tried to move on to “fix” the -next- corporate division in line.
    (4) Clearly,, I’m not letting the finance guys off – by the same token, they had plenty of opportunities to check in and verify what was being built..but, just as the programmers didn’t “know” the business, the finance group didn’t “know” how to manage code or recognize an incorrect outcome. Same thing happened with the basic business dashboard……management bought the line “Don’t worry. The Report Writer will let -you- build anything you want….” As a consequence, we had the skeletal boilerplate for over a year when what we needed was a much more sophisticated and tailored set of tools up front when we -really- needed it. Opportunity up the flue.

    After I departed (Watching a train wreck can be very entertaining but it is probably better done from someplace other than the Observation (or Bar) Car), the company subsequently hired Accenture to oversee integration of all its far flung global ops into a single unified framework. Three years later, Accenture was fired and, after a decade, the project is still hanging fire and only partially implemented………

    As far as your second response goes, well, yes, but you have just recognized that the bulk of those admonished to “learn to code” are going to be thrust into very unstable, transient and low value-added situations – and will never regain anything close to their past dignity, much less income.

    Basically, three populations –

    the biggest one can best be classified as simple maintenance jobs. Fix the app. (If I were going to be nasty, I could say “digital janitors cleaning virtual toilets” but, no, that would be unnecessarily cruel….). But this is a classic race to the global bottom. Not “high-priced union jobs mingling with the intellectual and cultural elite”.

    The second one is more along the line of a trained mechanic (integrate this new task or piece) if they have some ability to tie the gig to an outside piece of context that they are concurrently familiar with -and- are given the time required to attain a certain level of mastery- but how many of these, 10% of the pop, less?. (Same, but the extra marginal value-added requires that they at least be “tolerated”, although mixing with the elite……..we’ll think about it. (right)

    And, finally, the successful and/or effective professionals – which, as you point out, are less than 1%..

    I could extend this to a commentary on Boeing MAX, but that would involve some well-placed speculation.

  14. My bank’s online UI is complex, buggy and increasingly difficult to use. I asked the lady at the bank why they didn’t redesign and simplify it. She said that they adopted the software from a bank they acquired in 2008, and that it is too risky to attempt a major redesign, so they leave the base system in place and add new features as needed. Many new features. Scripts. New pop up windows with their own menus, rather than expanding the main menu system on the home page. It makes sense, since doing a substantial redesign risks killing their business if there are any big errors. Is there a solution to this kind of problem?

  15. Even if you could train anyone to be a competent programmer, enough to earn a living at it, most people wouldn’t want to do the job. Like most modern jobs, it’s a dehumanizing and awful experience for most.
    It mostly shows the ignorance of our “elite” and their contempt for manual labor and/or working with the physical world.

  16. “Finally escaped from hell when, as a final desperate act, I asked CEO: “Do you sell refrigerators by the pound or the gallon? No??” Essentially, the coders, while writing great code, had completely changed the theory of the business.”

    In my experience, this sort of misunderstanding of the basics of modern business was fundamental to the California air quality regulators’ rulings on pressed wood furniture that might have used formaldehyde in the glues. They actually assumed all purchase orders and invoices were printed on paper, accompanied shipments to stores, and were kept in file cabinets near the offices. So the regs insisted that the papers be “stamped” by laboratory testing facilities and be “presented” to state inspectors on site, upon demand.

    In any retail environment since about 1980, there is this process called “EDI” …

  17. Ah, Penny….

    Actually, I’m a bit impressed that we have a common view on (at least) part of this. As a longterm reader, consider me surprised, but am not complaining (much).
    (Hint: Penny this is an unsubtle hint that you check your dictionary. You will find that the entry for “flattery” is followed almost immediately by the one for “flatulence” – grin)

    You have it right at one level…i.e. sophisticated/professional programmers. They typically have acquired enough context to get things correct…but it may or may not extend beyond he need of the moment to second and third order consequence. Which means, like politics. programming increasingly is a reflection of culture.

    Over the years/decades, I’ve gotten a bit miffed at the notion (perhaps the arrogance?) that -everything- can, must, will be reduced to code and that any sufficiently good programmer can do this. (Insert here: “Culture of Narcicissm” from the late Christopher Lasch, among other tangential references) and that -nothing- must criticize that process (the inevitability of history model), One of the consequences of this chip-on-shoulder is the loss of awareness (distain/myopia/confirmation bias) concerning higher-order consequence, which just simply gets in the way. Couple that with the fact that intense coding brings out the endorphins like mad and creates dependency and you can see why, culturally, (a) we have lost our sense of real time (Heinlein measured the maturity of a civilization by its ability to think across a span of time – longer=better) and (b) we substitute simplification and bad models for an appreciation of the real (as, I think Pournelle used to posit – “The map is -not- the territory.”). The Left exploits this shamelessly, so does BigTech as their objectives temporarily coincide.

    I could go out on a limb here and suggest that this is one reason why Big Data, like ERP, fails to live up to its glowing salespitch. Yes, it can create value through uncovering unexpected or radically new insights – but, in the process, it throws up -way- too many false positives – and, since we no longer seek context, we burn resources excessively because we can’t see the forest fire for the forest.(Good grief – that’s a -bad- analogy, but one uses what is at hand…). Ask IBM why Watson hasn’t yet saved the firm.

    Sorry, I’m rambling and have obviously lost the thread and/or gone inscrutable. Time to give this eccentricity a rest.

  18. Mike:

    Go back and search WSJ for a Holman Jenkins editorial piece written a few days/weeks after the second MAX crash. It remains the standard and most concise estimate of the situation – and I don’t want to take this thread deeper into the weeds. At multiple levels, everyone did their job, everyone met the spec, but no one challenged the spec and no one had the context to recognize that a patch developed for one flight condition might not be fit for purpose when the context was radically changed. Throw in diversity and the overwhelming pressure not to go upchain and challenge BigMan.

  19. You will find that the entry for “flattery” is followed almost immediately by the one for “flatulence”. The first is pointless, but the second is often funny. Don’t make me drop Letterkenny on you. ;)

  20. Midwest…”Couple that with the fact that intense coding brings out the endorphins like mad and creates dependency and you can see why, culturally, (a) we have lost our sense of real time (Heinlein measured the maturity of a civilization by its ability to think across a span of time – longer=better)”

    A relatively small % of the populations is doing programming work, yet a much larger % of the population seems to have lost the ability to focus on anything for any protracted time period (presidential debates had 2-minute rounds…quite a change from Lincoln-Douglas)

    Part of this, but I don’t think all of it, is the nature of social media, which is engineered for distraction.

    And programming *does* require sustained concentration….so, maybe people who can and do concentrate are creating systems which negate the ability to concentrate in others?

    Unless it’s computer games, some of which do involve sustained concentration.

    (sorry, stream-of-consciousness comment above)

  21. David:

    Not quite.

    The big thing with programming is that, in a very short time (operationally speaking), it produces an near-immediate reward at an insanely low entry cost. All you need is some personal time and, at first, a PC and then, an internet connection, which are cheap when compared to -years- and -big bucks- of investment in the competing real. Gaming and social build upon this, but playing with the digital is the foundation. The feedback/OODA loops are incredibly tight in digital land.

    Discovered this empirically back in the 80’s when, in the course of other political/technical activities, found that we just couldn’t compete with computing. The seduction of the fast/near immediate feedback when you get something digital right, coupled with the seduction of a controlled virtual reality against the gritty real thing. You can always Ctrl-Alt-Del or “buy a new life” but reality’s costs are much higher, more painful and more enduring. They tend to leave marks. Why bother?

    Digital electronarcicissm.

  22. David:

    Yes. Jerry always said he was strongly influenced by “General Semantics”

    “The map is -not- the territory, the -symbol- is not the object” to be correct.

    I’ve had Korzybski on my list for a long time now but can’t seem to drum up a copy. Of needs, Popper comes first at this time (thank you, Taleb). I’ve read “Open Society” but need to have an archival copy. Someday, someday….

  23. @MidwestObserver: “fix the app” is probably the wrong example of a low-level job. That can take some serious analytical chops. “Clean up the mess it left” is more often grunt work.

  24. “There is not an infinite demand in the US for entry-level programmers.”

    In fact, there is no demand for true entry-level programmers that I can find. I am an experienced programmer currently seeking a job, and looking mainly for entry-level positions because the languages and tools I know best are obsolete, and I have no experience with the currently ‘hot’ tools. In over a year I have not seen a single entry-level job opening. Even the ones that call themselves “entry-level” require previous work experience with a specific set of programming languages, tools, and techniques.

  25. Wolfwalker,
    What they want is ten years experience with something that didn’t exist three years ago, what they get is a poor to mediocre programmer that knows a lot of buzz words and a look at the source of nearly any web page clearly shows this. On the other hand, a hint that you can deal with the real world in the form of PLC’s and control systems is enough to generate inquiries eight years after I stopped looking for my last job. Those haven’t changed that much in 40 years.

    While my career advice is probably worth about as much as my medical advice. If you know the difference between a for loop and a while loop and the reasons why one or the other is appropriate, you probably need to look at listings for system architect instead. There’s a reason why most software projects fail and it’s not a shortage of buzz words and the new hotness.

    Smaller places, where you won’t have to fight your way through a horde of HR dweebs and have a chance to talk with somebody that actually has an idea what programming is are better bets for people like us.

  26. As far as I can tell for entry level programming jobs you need to freelance on something like upwork until something turns into a real job.

  27. Many years ago, I did code – created, maintained, and programmed relational database systems. Maintaining them required an understanding of audit trails, maintaining data integrity, and how to mine them for useful information, as well as analyze the output.

    There’s a reason that coding is a high paid job – it’s harder than people realize.

    My brother used to have to clean up programs from the tangled code that ‘6 month’ coders created. He called it spaghetti code, and it was, indeed, a tangled mess.
    MOST people cannot do it. Oh, sure, they can learn the Scratch program (it’s a visual introduction to coding, often used with beginner robotics projects). But, they won’t be qualified for jobs that pay all that well.

    Go ahead, try out scratch – it’s a good introduction to some of the skills that are used, but, by no means is it ‘really coding’.

    https://scratch.mit.edu/

    The trouble is, desperate people will believe his nonsense – they will spend BIG bucks (either their own loans, or public funds) to go through the training. Only to find out that they are NOT qualified for the high paying jobs.

    Then, the Dems will blame “the rich” and the GOP.

  28. }}} There’s going to be people, like at J.C. Penney and other retail [outlets]. Those jobs are not coming back. Give them the tools, six months, you’re going to become a computer coder. We’ll pay for it, and you’ll get millions of people to sign up for that.

    As someone who has been able to code since he was 17 — over 40 years — it took me more than 2 years of college before I had even the beginnings of a real understanding of the ACTUAL issues of coding. More like 3 years. Even compressed, it means they will at most be a year behind in terms of WHAT ARE ACTUAL PRACTICAL coding issues — as opposed to the basic mechanics.

    The best idea would be the simple tire change.

    If you’ve never done it — hey, the first thing you do is jack up the car, right? WRONG.

    No. Experience teaches you that the FIRST thing you do is LOOSEN THE NUTS while it is still stuck on the ground. THEN you jack up the car and finish taking the nuts off. If you jack up the car first, the nuts are nearly impossible to release because they are tightened down too far on a freely spinning wheel, and you won’t be able to apply enough torque to the nuts to “break” them loose. The tire will spin under the effort instead.

    Coding is a thousand times more complex, and there are — literally — thousands of little things that practice is needed to learn and understand. You can be taught some of them, by practical coding in coursework (which will be happening well beyond the “6 month” mark), or you can get a job as a noob coder at a programming place — and there are only so many of those jobs actually available, because those people need steady guidance and supervision as they learn those tire-changing tricks.

    MOST places will want you to have taken the extended coursework, because by having done it, you’ll have learned at least SOME of those tricks on your own time, rather than getting paid 20-50 bucks an hour to eph things up repeatedly.

    Biden and Emmanuel… both incompetent idiots with no concept of what they are talking about.

    Quelle Suprise?

  29. Anonymous Says:
    November 10th, 2020 at 10:58 am.

    My brother used to have to clean up programs from the tangled code that ‘6 month’ coders created. He called it spaghetti code, and it was, indeed, a tangled mess.

    Anon: You can’t even do THAT any more.

    “Spaghetti” code was a part of old-style “procedural” coding practices. We are 20-odd years now into Object-Oriented programming, and, other than SQL, there is literally no actual procedural code being written from scratch (old COBOL programs are still in use, of course, maybe a few Fortran programs, but I doubt it…).

    In addition to this, there is an entire array of tools used, which you have to know and understand, and they are in steady flux. The tool you use to create the front end — “the visual aspect” of the code — is an entirely distinct entity, now — no one creates forms, etc., from scratch any longer. Is it web-based (client-side? server-side?), or local? A mixture of database access?

    What kind of security is involved (Medical data? Whooboy!)

    The issues are massive. And you don’t learn that shit in six months.

    One company I worked for took their noobs fresh out of college (4y practice already) and sent them to India for 2 months for practical real-world training. Most companies won’t do that — but it’s clear that those companies aren’t hiring someone fresh off of the government crash course, either.

  30. Wolfwalker Says:
    November 8th, 2020 at 9:56 pm
    “There is not an infinite demand in the US for entry-level programmers.”

    In fact, there is no demand for true entry-level programmers that I can find. I am an experienced programmer currently seeking a job, and looking mainly for entry-level positions because the languages and tools I know best are obsolete, and I have no experience with the currently ‘hot’ tools. In over a year I have not seen a single entry-level job opening. Even the ones that call themselves “entry-level” require previous work experience with a specific set of programming languages, tools, and techniques.

    Wolfwalker, if I may suggest

    I was kind of in your shoes about 8 years ago. My own solution was to go back to the local JuCo (CoCo… however they weasel it), and sign up for a programming course or two while you make ends meet via other mechanisms.

    This does several things —
    1) It give you a chance to get caught up on newer paradigms.
    2) It can make contacts for you with local professors, etc., some of whom have local industry contacts (and yes, you want to seek out those professors explicitly) who know you have the sensible chops to do what is needed.
    3) Assuming you get good grades, it will say to the employers, “I haven’t lost my capacity to learn new things” — which is actually a legitimate concern.
    4) It shows you’re more self-motivated than many, to do this without an employer pushing it.

    Another suggestion — don’t look for programming. Look into what is currently being used for automated SOFTWARE TESTING — The two most obvious are Selenium and Java, with some other associated tools (Maven, Cucumber) and concepts — BDD.

    I’ve been out of that myself (different direction last year) so it may be that other things are “hot”, so investigate.

    In general, look for MANUAL QA if you can find it (tougher than it was 5 years ago), and preferably something that can work into Automated QA… Automated QA is much less “deep programming” so you won’t need to learn as much to get up to speed.

    More importantly, your programming experience HELPS in this regard. You understand how programmers think, and thus how they make mistakes and what mistakes they are prone to. Emphasize this fact in your cover letters.

    Another alternative or additional option is an on-line course site like Udemy — the first course may be expensive, but after you’ve signed up for one, they start sending you coupons and other offers that make many many courses only US$10-12 bucks.

    So if what you want isn’t cheap, look for one you WOULD be interested in that IS only 10 bucks, then wait and see if the e-mailed coupons in the next month offer it for only 10 bucks (not everything will be discounted. Prices are set by creators, and some people don’t Get the volume benefit). P.S., sign up using a “spam” e-mail, so your primary email doesn’t get inundated with offers. But seriously, I’ve gotten lots of courses from them for only 10 bucks that were well worth it. Look at the reviews by others of the course, and, well, you’re out 10 bucks if the teacher sucks, and you can avoid anything by them in the future.

    FWIW, this course is a good course for testers:

    https://www.udemy.com/course/cucumber-bdd-selenium-java-complete-automation-course/

    You will want to be able to do something in Java before that one — not as much as a full coder needs to do, but knowing the basics is a Real Good Idea.

    This course is decent as an intro:
    https://www.udemy.com/course/java-the-complete-java-developer-course/

    You should be able to get both of the above for about 10-12 bucks, one way or another.

    Once you have some experience, you can widen your search from just “QA” and “Automation QA”, to “SDET”, which particularly likes former coders who have moved into QA and thus understand programming more than the typical QA (who usually went from manual QA into automation, and learned coding afterwards.

    P.S., I’m not a big fan of certs, but there is one for QA/testing, the ISTQB, that might be worth getting — esp. as it has more advanced ones.
    This Udemy course is pretty good
    https://www.udemy.com/course/istqb-certified-tester-foundation-level-ctfl/
    And he has other courses which might be of interest.

    LASTLY

    It’s hard to get your foot in the door, but if you do, you can almost certainly do it, too — you might also look into work as a BA — Business Analyst. This is the job that defines what is to be coded and tested. It’s very tough to get someone to let you show you can do it, but it’s worth looking into. And there is an ISTQB cert for that, too. No idea how much attention they give it in the business.

    FINAL ASPECT:

    If you don’t have experience with Agile & Scrum — this is CRITICAL to add to your skillset. They really really want this in people. Check Udemy for it. You need to be able to talk your way up and down the terms used therein. You can’t show job experience with it, but you do want to show that you really do understand every aspect of it and how it works, both practically and theoretically. Look for videos about it on Youtube, too. See also Kanban, an offshoot.

    There are certs for Agile/Scrum, too, that ARE likely worth getting, but don’t spend too much. And you might also look into being a Scrum Master. This is something you need to get your foot in the door with, but it’s easier to do that than the BA job is.

    Good luck. Hope this helps you break out of your situation.

  31. }}} Bruce Hayden: One side note on offshoring coding is that it is India (and probably Pakistan) that is the biggest danger there, and not China. In my experience, the only ethnic group that seems more naturally adept at programming than Ashkenazi Jews, are the Indians, and there are nearly 100x as many of them.

    Well, as someone who has interacted with Indians, having worked for a major Indian programming company… don’t count them too seriously.

    There are some, who are truly great, no question. And a moderate number of them simply because, well, more than a billion people to draw from.

    But a LOT of Indian programmers are much much worse than even poor Americans, I suspect because of **mindset**.

    Americans have a naturally freer mode of thinking, so they do a much better job of solving problems unsupervised. That last word is critical. Most Indian programmers do fine for well-defined problems, but suck whenever they have to figure something out on their own. So most Indians make much better coders for simple issues, but once the complexity raises its head, they do much more poorly. Again, there are indisputably exceptions. And realize that the best ones tend to be the ones you meet personally, because they tend to be the ones India sends to America for more training and experience and interaction with Americans.

    But one thing Indian coders tend to lack is that “hacker” instinct that makes Americans poke at things to find out how it works, and then figure out how to modify it.

    Even Americans have lost some of this ability. I was dealing with one guy and quipped a joke about doing something. His response, since he took the joke seriously, was “You can’t do that.” I looked at him and asked, “Why not?” and his response was, “There’s no interface to do it.”. And this guy was considered VERY good. It never occurred to him to WRITE said interface, to CODE his way around the problem…

    No, that’s not trivial, but it is always POSSIBLE. I once had the binary only for an RS-232 interface package that had a stack overflow bug in it. I used a debugging tool to work my way through the binary to find the stupid damned stack failure, which I wrote up and sent to the creator. Many coders don’t have that kind of thinking any more.

  32. If you want to learn about coding and like computers, lets hope, get a Linux distribution and learn how to make that work. You have a command shell more powerful than many actual IDEs and the opportunity to do cool stuff, like bringing up the network from the command line. As well a nicely built Linux system, will be pretty well all be “built” with complied executables, custom made for the actual system you have. The kernel is customizable and you include what you want and leave out what you don’t need, well once you leave the shallow end. ;)

    You can build servers with little effort, as the internet is a Unix based system. I remember building the first Apache servers, and you had to compile the modules in the right order, or the whole thing would bail. Fun times, but my point is, it was all close to the metal and you swam in code, just fooling with the system.

Comments are closed.