Backlit header graphic

The Code Conspiracy: Why We Can't Build Software

The number of "tutorials" that give you some code, but no indication of what it means, what to do with it or where to put it, is beyond staggering.

In the 2020s, the ability to create computer programs should be as common as the ability to read and write. It's just as important, if not more so. And yet as a society, we're steadily drifting away from code literacy as the learning process becomes evermore shrouded in jargon, communicative entropy, and calculated obstruction...

Tell an educational body that you want to learn computing, and they'll refer you not to a provider of programming lessons, but to an "IT course" - which is invariably zilch but a serialised advertisement for Surveillance Valley technology corporations. Themselves advertisers, on a pathological quest to render your brain incapable of paying attention to anything for more than a few seconds. The idea that these morally-bankrupt, mind-rotting blaggards could ever be considered an educational resource is truly surreal. But here we are.

You won't be taught to control a computer. You'll be taught to open Google/Microsoft accounts, and then sit back while computers control you. At face value it makes no sense for governments to advocate this. It certainly stunts the potential for prosperity in any local community. But letting Big Brother's bent marketers pretend to teach the public tech skills is vastly, vastly cheaper than paying teachers to teach the public for real. If the public can't see the difference, then that is, in the eyes of your typical short-termist government, a viable economy.

Because this inevitability has been normalised over many years, we no longer even question why kids are still coming out of schools and colleges without the most versatile and bankable skill on the planet. We just accept that a dangerous cartel of corporate stalkers hold a monopoly on all computing tasks, and that our every computing requirement must be serviced through them. Even despite their software so frequently being near-unusable.

But if the state education system won't teach the populace computer application programming, the populace can still teach itself, right? Well it can try. But the discovery mechanism is governed by the exact monopolists whose "business model" requires DIY to fail as a concept. And there's another inevitability to that.

Hawking proved that anyone can understand a complex equation, as long as you communicate it to them in a format they're able to digest.


ONCE UPON A TIME

Back in the 1980s, when the brilliant scientist Stephen Hawking was preparing his most famous work: A Brief History of Time, he was warned that for every single equation he included in the book, sales would halve.

That nugget of advice might raise a nice round of laughs at a STEM bods' dinner party. But Hawking took it as a scientific fact. He duly heeded the warning, and OMG did it pay off!

Stripped of mathematical formula and confined to conversational language, Hawking's amazing exploration of the secrets of the Universe connected with, and wowed, the masses. It went on to sell tens of millions of copies, and is still frequently cited as the greatest nonfiction science book of all time.

In fact, by the time of A Brief History's release, Hawking was so abundantly aware that the masses would not take happily to professorly jargon and algebraic side-salad, that he proactively discouraged them from reading a technical wig-out he'd previously co-written with George Ellis...

"I would not advise readers of [A Brief History of Time] to consult [The Large Scale Structure of Spacetime] for further information: it is highly technical, and quite unreadable." - Stephen Hawking

Unreadable. Remember that word. Remember who said it, and remember what he meant by it.

Of course, whilst the bestseller A Brief History of Time contained no mathematical prose, it was actually full of equations. They were just related as plain literature rather than condensed into algebraic gobbledygook.

Hawking proved that anyone can understand a complex equation, as long as you communicate it to them in a format they're able to digest. And at that same point in the 1980s, the leading providers in the world of office computing were communicating the subject of programming to consumers with a very similar ethos.

Bob Leggitt
Quote

Teaching the world DIY application-building techniques is a fundamental contradiction to the Big Tech agenda of creating and exploiting maximum public dependency. That's why, when Google invades schools and campuses, it fills them with spyware, rather than the meaningful programming tuition which should long since have been placed at the education system's core.

- Backlit


'EIGHTIES CONSUMER TECH

The tech industry of the mid to late 1980s - or at least a big chunk of it - still believed that every office worker would at some point need to learn to code in order to maximise the effectiveness of their software. Accordingly, industry movers and shakers, such as Ashton Tate, invested heavily in communicating computer programming to their customers.

In the 'eighties, it was considered impossible to produce a database software package which would, off the shelf, meet every office's individual needs. The logical solution was to build a user-friendly programming language into the software, so each office could develop its own, bespoke tools.

That was precisely what Ashton Tate did with their dBASE III Plus system. And it proved so phenomenally popular that the company's growth stats soared higher than Microsoft's.


COMMUNICATING THE SYSTEM

Much like Hawking's Brief History of Time, dBASE showed what happens when you communicate technical information to the public in a format that makes sense to them. The public learn. Ashton Tate stripped the learning process of jargon. They didn't need the jargon, because they were actually showing you the effect of each command, during live use. Even the written documentation - a giant, hardbacked binder file with clip-in / clip-out pages like a recipe compendium - was designed for digestibility. The company covered every communicative base, for example: recognising the value of female empathy in tutoring, and giving women key roles in the information delivery regime. The goal was to teach customers to program, because that was vital to the success of the software.

And learnability was so deeply ingrained into dBASE that the command library itself talked in intuitive, natural language. Even if you'd never encountered a dBASE command before, you could see what DISPLAY FOR PRODUCT = 'SHOES' meant. dBASE provided a seamless transition from using dropdown menus to typing out real programming commands, and the result didn't just threaten big-league corporations like Microsoft and IBM; it allowed a tiny, garage-resident upstart to outsell them.


IN THE NOW

Google's public communication of technical instructions is so abstract, ambiguous and confusing that it looks like the work of an eight-year-old with passive-aggressive disorder. The notion that a company with so much intelligence could produce such gibberish without purposely setting out to confuse, is impossible to entertain.

Fast-forward a few decades, and we find ourselves amid the backlash that Ashton Tate sparked.

The overly-comfortable establishment realised how vulnerable it was to even the smallest market entrant with a genuinely good product, and it began locking the entrance doors. Anti-competitive sabotage, coupled with bribery, warp-level propaganda and the effective legalisation of corporate theft, meant that the richest brands would always win - however infuriatingly dismal their products were. And I don't need to tell you that the tech establishment's products are indeed infuriatingly dismal.

So we've never had greater need for DIY application-building. But if you want to learn to code, it's almost inevitable you'll be left trying to decipher the ramblings of a bot, or a human who is indistinguishable from a bot. At every turn, you'll find Big Tech in the back seat, peddling wildly unnecessary methods and frameworks that serve its own agenda, at the expense of your liberty/privacy and everyone else's.

And the jargon? OMG the jargon! Nothing will mean anything to you, and that's by design. The powers that be don't want the general public to learn to code. Because if everyone built their own stuff, what role would there be for tech giants? If everyone could accomplish their goals offline on the desktop, with no dependency on corporate tech services, where would Surveillance Valley get its data?


THE ARTIFICIAL BARRIER TO ENTRY

Coding an application is no more difficult than writing a story. If you have the intellgience to write a story, you have the intelligence to build your own apps. But learning to code an application is near impossible for the great majority of people. Unless you can assimilate a wall of jargon, you don't stand a chance. And try finding a coding expert who will explain what a piece of jargon means. It's like a Monty Python sketch. They invariably try to explain one piece of jargon using more jargon.

I websearched the simple question: "What is a relational database?", and found it extraordinarily difficult to get a digestible answer. Ending up at the Google-controlled propaganda factory Wikipedia, I was first served this:

"A relational database (RDB) is a database based on the relational model of data, as proposed by E. F. Codd in 1970."

So a relational database is a relational database then. Brilliant! An absolute exemplar of what happens when you ask a Google-associated resource to explain technical jargon. Jargon in, jargon out. In this case, the same jargon. Imagine having so little consideration for communicative dynamics that you would respond to the question "What is a relational database?" with: "A relational database is a database based on the relational model of data", and think you'd answered it.

Continuing through the wiki, after a raft of similarly useless attempts to explain what a relational database is, we get this:

"In a relational database, a relation is a set of tuples that have the same attributes. A tuple usually represents an object and information about that object. Objects are typically physical objects or concepts. A relation is usually described as a table, which is organized into rows and columns. All the data referenced by an attribute are in the same domain and conform to the same constraints."

Got it now? No. Thought not.

It's impossible to tell whether the page is written by someone who is so tragically devoid of basic communicative reasoning that they don't realise they're addressing encyclopedia readers as if they're Fei-Fei Li. Or if it's bashed out by someone who is deliberately trolling the reader with contrived gobbledygook, designed to restrict technical advancement among the general public. Given the obvious motivation for the Internet's Fat Controllers to minimise tech literacy, the latter is certainly a reasonable assumption.

Test the theory for yourself. If you don't already know what a relational database is, read the whole Wikipedia entry for relational databases, and ask yourself if it's really there to educate, or to confuse. How do you feel? Educated, or confused? The proof of the pudding is in the eating.

Anyway, to save about five days of fruitless research, let me tell anyone who's still in the dark, that:

A relational database is one body of data spread across multiple related and linked tables.

No, that's it. If you want to know how to use it, that's step two. But step 1: "What is a relational database?", has an incredibly simple answer which, for whatever reason, is being warped into pages and pages of brain-crippling jargon. And let's remember that even if the visible range of incomprehensible gookfests really are born out of communicative ineptitude, the discovery mechanisms still prioritise them above comprehensible explanations.

And it's like this throughout the genre of coding tutorials. Code thrown around like buckets of water with no indication of where to put it. With no jargon-free, layperson-comprehensible explanation of how it works.


OBSTRUCTION

Google and Microsoft are so fundamentally and obviously motivated to obstruct and manipulate the widespread learning of independent computer programming, that every page of search results they surface should be legally required to carry a picture of a literal bull's shit as a full-width header.

Let's wrap up this section with a quick summary of the obstructive practices tech giants use to make self-education unreasonably difficult.

Measures the tech industry has taken to obstruct programming education:

  • Prioritising extremely poor third-party tutorials in search results, as well as producing diabolically gobbledegooked and badly-written first-party "guides" and "documentation". Priority is also given to articles that aggressively and unnecessarily promote Silicon Valley tools, "download managers" and frameworks.
  • Hiding code references altogether. I searched the generic query: 'how to build a web page', and only one of the results on the first page had anything to do with coding at all. The rest were - surprise, surprise - adverts for SaaS tools that heavily benefit Silicon Valley surveillance giants. Even the article that did look at code required the creation of a Microsoft account as a first step. Additionally, the search engine evidently switched my term "web page" for its own substitute - "website", and made the deliberate mistake of assuming that I wanted to put the page onto the Internet. The Internet is only one place that web pages can exist. And since I actually wanted to build a page for a personal web on my home intranet, none of the articles the search engine surfaced were relevant. But relevance doesn't come into it. It's about creating dependency.
  • Endless moving of goalposts within existing languages. Breaking the commands, changing the protocols, and making the languages more intellectually demanding, thus harder for the general public to learn.
  • Persistent introduction and promotion of needless "frameworks", which only serve to make the production of a job-ready educational curriculum impossible. If tutors don't know which knowledge will be required in a developer job (and the mind-boggling array of different frameworks now in use across the commercial spectrum ensures that they don't), they can't train kids for a job. Most convenient for a cartel of elite tech brands who want the world to be 100% reliant on them. Which is why the cartel so aggressively pushes de-standardisation and bribes "WeB sTaNdArDs" body the W3C to turn a blind eye.

WE ALL NEED TO LEARN TO PROGRAM

It's hard to convey how liberating the ability to build your own software is. And we're now entering an era in which the skill is going to become essential for anyone who wants to maintain sanity, in an environment where profit has become directly linked to mental abuse.

Whilst some may say that the above diatribe would discourage people from getting started, I actually believe the opposite. I think that the true prerequisite for learning to code in the 2020s is knowing what you're up against. Recognising that you're not supposed to understand the tutorials. Then you don't blame yourself. And you can once again be confident enough in your intelligence to seek out other ways to learn. More of which in a moment.

Most people think they can't code because it's too difficult for them. That's not true. Actually, they can't code because the "learning resources" fed to them by the tech elite are indecipherable to the average person. You're not meant to understand the tutorials that Google serves you. They're not there to teach you. They're there to put you off coding for life - and that's the effect they have on the public majority. The powers that be will naturally try to gaslight us on this:

"No, it's you. You really are too stupid to learn."

But think about this in comparison to other complex learning regimes. In early life, your reading tutor explains what the word "fox" means by pointing to a picture of a fox. An almost identical method to the one Ashton Tate used to teach dBASE. And that's why we can all read. We would not be able to read if the infant school had instead referred us to a website that said things like:

"A fox is, beyond its molecular basics, a multicellular eukaryote. The fox's cells comprise a membrane-encased nucleus in common with other eukaryotes, but the fox specifically possesses a range of phenotypic differentials which define it as a separate species and produce key, identifiable attributes."

Yet this is exactly what the internet does when we try to learn to code. It feeds us a spew of obstructive language that will not mean anything to anyone at a less-than-advanced stage in the learning process.

With all of the above in mind, I'm going to make some recommendations that helped me to bypass the wall of obfuscation and start the journey to independence. I would not be working as a professional Web Developer had I not done these things...


Learn by example. Learn to code by studying other people's open source programs. This means you don't have to learn the jargon. Many open source programs are "commented", which means the developers have inserted notes explaining what the different sections of code do. For me this proved far more useful than the average online "tutorial".

Start by studying programs which are small, and which only do one simple thing. This saves you having to identify which parts of the code perform which tasks. If the program only does one simple thing, you can much more quickly reach a conclusion on what its lines of code are doing.

To begin with, go as far back in time as you can get when finding programs to study. Old programs are more simple, and tend to focus only on achieving their face-value role. Conversely, newer programs tend to be full of outrageously complicated surveillance code, which makes it vastly more difficult to isolate their user-side functionality for study. Where code is inherently open - such as on the Web - newer programming is frequently obfuscated so it deliberately appears confusing to anyone who inspects it. This is one of the many roles served by Big Tech's "developer frameworks", which are there not to help, but to tighten the tech elite's stranglehold on web development. Whenever a spectacularly expensive product is given away for free, there's always an agenda, and it's not difficult to see where the agenda lies with developer frameworks.

When learning learn web development, I tried finding pages that hadn't been updated for decades, and then using my browser's "View page source" tool to view their code. If you try this, do it only with original pages, as pages on the Internet Archive have been pumped with "toolbar" routines and Google's spyware, which confuses your study. A couple of uncorrupted examples you could try include:

<title>Hypertext Links</title>
<h1>Links and Anchors</h1>
A link is the connection between one piece of
<a href=WhatIs.html>hypertext</a> and another.

Yep, that really is the entire code for the page. It's amazing how simple code can be once you take away all the surveillance routines, deliberate obfuscation and Google-recommended "SEO" insertions.

An even better tactic I tried when learning to code web pages was to make a site using a 1990s WYSIWYG tool like FrontPage, and then simply switch to the editor's HTML mode to see how the page was coded. FrontPage will generate the HTML for you. Here's an example of a 1990s-spec page I built in two minutes using FrontPage Express's WYSIWYG. The code below is the HTML it generated:

<html>

<head>
<meta http-equiv="Content-Type"
content="text/html; charset=iso-8859-1">
<meta name="GENERATOR" content="Microsoft FrontPage Express 2.0">
<title>This is the Page Title</title>
</head>

<body>

<h1>This is the Page Title</h1>

<p>This is the first paragraph. To prevent it from being too
short, let's fill it out with some additional blab. And pehaps
add <a href="http://localhost">a hyperlink</a>.</p>

<p>Here comes a bullet list:</p>

<ul>
    <li>Point 1</li>
    <li>Point 2</li>
</ul>

<h2>This is a Subheading</h2>

<p>And finally a little more text in a paragraph, to finish off.</p>

</body>
</html>

It's critical to use a 1990s builder for that exercise, because they pre-date the era of unnecessary complexity. You only get the code you need. And from the above layout of minimal code alone, you can learn the basics of HTML programming.

In the example above, plain text components appear in black, whilst the formatting and functional tags appear in colour.

Near the top of the page, there's a head block, which has an opening HTML tag above it and a closing tag below it. Closing HTML tags are the same as opening tags, except they contain a forward slash.

The head section doesn't display anything in the page window. It generally just communicates information about the page to the web, and directs the browser to resources that the page will need to use.

Atter the head section, comes the body. Anything between the opening and closing body tags is eligible for display in the page window. Most of the tags inside the body section, such as p and h1, are there to apply formatting to the text contained within them. The a tag is special. It's used to create a link.

Even without any dedicated programming tools on your computer, you can test that the code works using the following process...

  • Create a new text file, and give it the name webpage.txt.
  • Select the HTML code from the pane above.
  • Paste the code into your webpage.txt file, and save.
  • Change the name of webpage.txt to webpage.html (override any warning your computer gives you when doing this).
  • Now click on webpage.html. It should open in your default browser as an actual web page. You're seeing the code do its job.

THAT is how you make a web page, and that is the kind of thing search engines should show you when you ask how it's done. You don't need Wix, or Squarespace, or WordPress, or GitHub, or even a bloody server. You need a very basic understanding of HTML tags, and you grow from there. Google and Co. are doing everything in their power to make sure that you never gain that basic understanding.


MOVING FORWARD

The only true route to freedom is independence and fragmentation. Masses of individual people building small, DIY solutions to their own challenges would establish a tech network so distributed and localised that it would be near impossible for any tech giant to manipulate.

I don't pretend that the bits of advice I've offered above are a magic wand. They did help me. But what we really need is proper, state-funded education, and programming languages which, like dBASE, are designed for easy adoption.

I know people can understand code when it's presented to them in good faith. I've seen it. In the course of my job within an online marketing operation, I've worked alongside young people whose faces light up when you show them how easy a browser-resident desktop application is to build. You open the code editor for them and you see instant, intense focus. They see the power of the app, they see a modest amount of code, and once you explain what the code is doing, they're like:

"Oh my God I didn't know it was that easy!"

It's a bombshell to them that you can do something - do anything - without "the cloud". In fact, the most difficult thing to explain, is where the program is "hosted"!

"So where do you upload the program?"

You don't. You leave it here on this computer.

"But how will it work if you don't upload it?"

The same way it would work if you did upload it, but with 5,000 miles less distance between the program and the keyboard, and hence a hell of a lot faster.

There genuinely is a notion that applications can't work unless you give them to a Silicon Valley giant. And that's what comes of putting Silicon Valley giants in charge of tech education. Governments have royally screwed us over in selling education out to corporations whose agenda is in fact to de-educate people. To promote ignorance, for the benefit of monopoly and corporate control.

But it's hard to imagine that the tech elite can sustain the current situation indefinitely. A monolithic corporation can only make its user experience so much worse, before even the lowly and the meek are able to provide better alternatives. Indeed, we're already seeing small developers producing more usable tools than $multi-billion corporations. We're already seeing small businesses hiring those small developers. And the bosses do not go back to subjugative, awkward, off-the-shelf corporate junk once they see how much better off they are with someone who works for them, rather than against them.

Is it really such a stretch of the imagination to consider that the domestic world would take to the DIY option in just the same way? The only barrier is education. And you're paying the government to provide that for your kids - not to supplicate to a bunch of fascist con-men who want to rule the world. Start demanding change.