Lunduke
Comedy • Gaming • News • Science & Tech
The History of the First Computer Shell
BASH? PowerShell? It all traces back to 1963. And the work of an amazing Frenchman, CTTS, and Multics.
October 07, 2022
post photo preview

Powerful, “Command Line” computer interfaces have been around for — what seems like — forever. Interfaces where you can run multiple commands, one after another (in a batch)… where you can have simple “scripts” to tie those commands together.

That sort of “Shell” comes in so many forms… from SH and BASH on UNIX-like (and Linux) systems… to COMMAND.COM and PowerShell on Windows.

The text “Shell” is everywhere. And has been for longer than most can even remember.

But it had to start somewhere. Someone had to make the first “Shell”.

This is that story.

And that story starts… with a man. His name is Louis Pouzin.

The Man

Louis Pouzin was born, in 1931, in a small town in almost the smack-dab-middle of France: Chantenay-Saint-Imbert.

Louis Pouzin. With a sweet mustache. Photo credit: Jérémie Bernard

In the 1960’s Pouzin would move from France — and his job managing programmers at Bull (a French computer company) — to Massachusetts. His new job would put him working on an ambitious computing project at the Massachusetts Institute of Technology…

The Compatible Time-Sharing System

In 1961, the world’s first, general purpose, time sharing operating system was demonstrated at MIT.

That system — the “Compatible Time-Sharing System”… or “CTTS” — was originally developed on an IBM 709. And oh, what a beautiful machine it was.

The IBM 709

The IBM 709 was an absolute beast. Capable of adding 42,000 numbers per second, and multiplying two 36-bit integers together at a (then) blinding speed: 5,000 per second.

All contained in a svelte 2,000 pounds.

And this IBM 709, running CTTS, certainly had a text interface… but it wasn’t exactly a “Shell”. At least not in any way we would recognize together. Certainly, no scripting together of commands.

Over the next two years, CTTS continued to improve and evolve. Getting ported, by 1963, to a modified IBM 7094. Which, like the 709 before it, was a gorgeous machine. With enough physical switches to make any Sci-Fi nerd happy.

The IBM 7094 - “The Blue Machine”. Photo credit: IBM

It is around this time, that Pouzin arrives at MIT, where he is (at least partially) responsible for a little program called “MAIL”.

Wait. What? Pouzin invented E-Mail?

 

Well. Not quite. This was several years before what we now call “E-Mail” was created. This original “MAIL”, on CTTS, was a system for sending mail messages to other users… on the same CTTS system. It lacked a mechanism for forwarding messages to users on other systems.

 

Just the same, this work heavily influenced what would later become “E-Mail”.

But we’re not here to talk about MAIL or the many contributions Pouzin made to computer networking (leading to what we call “The Internet”) — that’s a fascinating topic for another day. Let’s focus on a little program that Pouzin wrote… which would change computing forever.

RUNCOM

You see, in those days, there was no “command interpreter” program. No “shell”. You simply instructed the kernel to run a single program.

Nothing like “COMMAND.COM” on DOS. Or BASH, SH, or other shells on UNIX and Linux systems. Nothing at a all like that existed.

That all changed in 1963, when Pouzin came up with “RUNCOM” — short for “RUN COMmand”.

In Pouzin’s words:

“After having written dozens of commands for CTSS, I reached the stage where I felt that commands should be usable as building blocks for writing more commands, just like subroutine libraries. Hence, I wrote "RUNCOM", a sort of shell driving the execution of command scripts, with argument substitution. The tool became instantly most popular, as it became possible to go home in the evening while leaving behind long runcoms executing overnight. It was quite neat for boring and repetitive tasks such as renaming, moving, updating, compiling, etc. whole directories of files for system and application maintenance and monitoring.”

RUNCOM was, truly, the first “Shell” system.

In fact, Pouzin, was the first person to call such a program a “Shell”.

His RUNCOM program would continue to be a critical component of the CTTS system until it ceased operations in 1973.

RUNCOM section from the CTTS Programmers Guide. Courtesy: Internet Archive

But we still didn’t quite have what we would call a “Shell”. Not yet.

The “Shell” had a name, and some of the features, but it wasn’t a truly interactive experience.

Meanwhile, in England…

During 1964, a computer scientist named Christopher Strachey was working at the University of Cambridge… on, what he called, the “General Purpose Macrogenerator”. Or “GPM”, for short.

Christopher Strachey, sporting a most excellent mustache. Photo courtesy: University of Oxford

This language had a heavy influence on much of 1960s and 1970s computing — including on “m4”.

M4 is a macro language, developed by Brian Kernighan and Dennis Ritchie, that was part of the original version of UNIX… and was later adopted as a part of the POSIX standard.

Strachey’s GPM design document. Published in a 1965 issue of The Computer Journal.

Back in Massachusetts…

During 1964, work on Multics (the “Multiplexed Information and Computing Service”) was getting underway at MIT (as a joint project between MIT, General Electric, and Bell Labs).

While Pouzin wasn’t going to be part of the Multics project… boy howdy… he had some ideas.

In his own words:

“Then in 64 came the Multics design time, in which I was not much involved, because I had made it clear I wanted to return to France in mid 65. However, this idea of using commands somehow like a programming language was still in the back of my mind. Christopher Strachey, a British scientist, had visited MIT about that time, and his macro-generator design appeared to me a very solid base for a command language, in particular the techniques for quoting and passing arguments. Without being invited on the subject, I wrote a paper explaining how the Multics command language could be designed with this objective. And I coined the word "shell" to name it. It must have been at the end of 64 or beginning of 65.”

Pouzin made sure his ideas were documented, by publishing a document entitled: “The SHELL: A global tool for calling and chaining procedures in the system”.

The full document is archived by MIT.
 

According to Pouzin:

“The small gang of Multics wizards found it a sleek idea, but they wanted something more refined in terms of language syntax. As time left to me was short, and I was not an expert in language design, I let the issue for them to debate, and instead I made a program flowchart of the shell. It was used after I left for writing the first Multics shell. Glenda Schroeder (MIT) and a GE man did it.”

From Tom Van Vleck, who worked on Multics for 16 years (starting in 1965):

“The first time I remember the name "shell" for the function of finding and running a command was in a Multics Design Notebook document by Louis Pouzin.

 

These memos con[t]ained the idea of having the command processing shell be an unprivileged user program that parsed a command line, located a program to run, and executed it with arguments.”

So. Who created the first “Shell”?

The concept, and first implementation of a “Shell” (RUNCOM for the CTTS), was made by Louis Pouzin.

But the first truly interactive example of a Shell — the one that was part of Multics, and which would most closely resemble the interactive shells of today — was initially designed by Pouzin… and programmed by Glenda Schroeder and a “Mystery Man from General Electric”.

The impact of RUNCOM and the Multics Shell

The impact of these early Shells cannot be understated.

Because of RUNCOM — and the designs of Pouzin — we have the Multics Shell.

Because of Multics… we have UNIX (originally named UNICS… before someone in marketing decided an “X” looked cooler) and SH.

You can trace every single computer Shell in existence — including BASH, PowerShell, and so many others — back to that first work. Back to the ideas of Louis Pouzin.

In fact, that influence expands far beyond just the design ideas of a scriptable, interactive Shell.

According to Brian Kernighan and Dennis Ritchie:

"There was a facility that would execute a bunch of commands stored in a file; it was called RUNCOM for "run commands", and the file began to be called "a runcom". rc in Unix is a fossil from that usage."

That’s right. Have you seen “rc” on your UNIX or Posix systems — such as .cshrc or /etc/rc? Those are named that way, according the the men behind UNIX itself, because of RUNCOM and Louis Pouzin.

To put it simply, modern computing is the way it is, in large part… thanks to Pouzin. A computer scientist that should be a household name.

community logo
Join the Lunduke Community
To read more articles like this, sign up and join my community today
9
What else you may like…
Videos
Podcasts
Posts
Articles
Sometimes the worst gadgets... are the best. The Humane AI Pin.

Like the Nintendo Virtual Boy, Power Glove, Apple Magic Mouse, or the Nokia N-Gage... awful gadgets bring us joy because of how truly terrible they are. Perhaps the Humane AI Pin is in that same category.

00:20:06
The Ramifications of Red Hat's Racism

What impact will it have on employees, Open Source, & Linux?

The IBM / Red Hat Leaks: What we've learned so far:
https://lunduke.locals.com/post/5515346/the-ibm-red-hat-leaks-what-weve-learned-so-far

00:45:13
The Lunduke Journal gets a little Political!
00:29:45
November 22, 2023
The futility of Ad-Blockers

Ads are filling the entirety of the Web -- websites, podcasts, YouTube videos, etc. -- at an increasing rate. Prices for those ad placements are plummeting. Consumers are desperate to use ad-blockers to make the web palatable. Google (and others) are desperate to break and block ad-blockers. All of which results in... more ads and lower pay for creators.

It's a fascinatingly annoying cycle. And there's only one viable way out of it.

Looking for the Podcast RSS feed or other links? Check here:
https://lunduke.locals.com/post/4619051/lunduke-journal-link-central-tm

Give the gift of The Lunduke Journal:
https://lunduke.locals.com/post/4898317/give-the-gift-of-the-lunduke-journal

The futility of Ad-Blockers
November 21, 2023
openSUSE says "No Lunduke allowed!"

Those in power with openSUSE make it clear they will not allow me anywhere near anything related to the openSUSE project. Ever. For any reason.

Well, that settles that, then! Guess I won't be contributing to openSUSE! 🤣

Looking for the Podcast RSS feed or other links?
https://lunduke.locals.com/post/4619051/lunduke-journal-link-central-tm

Give the gift of The Lunduke Journal:
https://lunduke.locals.com/post/4898317/give-the-gift-of-the-lunduke-journal

openSUSE says "No Lunduke allowed!"
September 13, 2023
"Andreas Kling creator of Serenity OS & Ladybird Web Browser" - Lunduke’s Big Tech Show - September 13th, 2023 - Ep 044

This episode is free for all to enjoy and share.

Be sure to subscribe here at Lunduke.Locals.com to get all shows & articles (including interviews with other amazing nerds).

"Andreas Kling creator of Serenity OS & Ladybird Web Browser" - Lunduke’s Big Tech Show - September 13th, 2023 - Ep 044
post photo preview
Red Hat Whistleblowers say Company Ignores Ethics Violations
... when those violations are in line with racist or sexist policies.

Over the last several months, we've learned a great deal about the racist and sexist policies within Red Hat (the largest Linux company on Earth) and parent company, IBM.

This includes corporate training which teaches that "Whiteness" is a bad thing, racist "pledge" systems, skin-color based hiring quotas, and more.

Now, thanks to whistleblowers continuing to provide leaked material to The Lunduke Journal, we have learned that Red Hat ignores reports of corporate ethics violations... when those violations are in line with Red Hat's established racist policies.

Red Hat's Ethics Violation Reporting System

Red Hat provides only one system which allows employees to anonymously report ethics violations: The "Red Hat Ethics Hotline" provided by a company named Convercent.

The Red Hat "Ethics Hotline"

The "Ethics Hotline" includes this note from Tom Savage, Senior Vice President (and General Counsel) for Red Hat:  

"Whether you speak up through this Compliance and Ethics Hotline or another reporting channel, take comfort in knowing, as outlined in the Code of Business Conduct and Ethics, that Red Hat is committed to protecting associates from retaliation."

From the Red Hat "Ethics Hotline"

However, this statement from Red Hat's General Counsel appears to be untrue.  Or, at the very least, Red Hat employees do not believe it to be true.  As reported by whistleblowers within Red Hat, it is felt that making purely anonymous complaints is the "only safe way of reporting politically sensitive topics."

Ethics Violations Ignored by Red Hat

According to one whistleblower, reports of ethics violations are "always ignored".

Another whistleblower submitted multiple reports using the "Ethics Hotline", only to have each one "Closed" with no details or resolution of any kind.  Reports were closed "suddenly, with no notice or explanation or marking."

The following is a screenshot of one such ethics violation report, using the "Ethics Hotline", which has been "Closed" with no messages, attachments, or response of any kind.

Source: Red Hat Whistleblower

You'll note that this ethics violation report deals directly with race and sex-based discrimination within the hiring and career advancement programs at Red Hat.  A topic which, regardless of outcome, is the type of potential "ethics violation" (with severe legal consequences) which any company would want to take seriously.

Yet this "Ethics Hotline" report -- along with several others provided to The Lunduke Journal for review -- was marked as "Closed" with not so much as a note explaining why.

Whether it be the fault of the system being used, an issue with Red Hat corporate policy, or actions of the individuals responsible for reviewing these violation reports... one Red Hat whistleblower says "there is no real way for employees to report ethics violations."

What we know:

  • Red Hat (along with parent company, IBM) has multiple racist & sexist programs -- of, at best, dubious legality -- many of which would constitute clear ethics violations.
  • While Red Hat provides a mechanism for employees to report such ethics violations, those reports (at least when dealing with the racist & sexist actions of individiuals within the company, and corporate policy) are ignored and "Closed" without a stated reason.
  • Red Hat employees feel "unsafe" reporting such violations in any non-anonymous way.

These facts paint a highly unsavory picture of Red Hat's commitement (or lack thereof) to behaving and doing business in an ethical way.

As always, The Lunduke Journal invites Red Hat (and parent company, IBM) to respond if any information within this report is inaccurate in any way.  The Lunduke Journal prides itself on accurate, factual reporting and will publish corrections, comments, or clarifications provided by the company.


 

Become a Tech Whistleblower

The Lunduke Journal takes the privacy of whistleblowers incredibly seriously -- we have a firm rule of never revealing any information regarding the identidy of whistleblowers, and all leaked material is meticulously researched and scrubbed (with all possibly identifying metadata removed) prior to publication.

Do you work in the Tech industry?  Have you witnessed concerning activity, which you feel should see the light of day, but don't know how to get the information out there anonymously?  This article will walk you through the process, step by step:

Thank you to all of the brave whistleblowers who have already come forward.  As they say, sunlight is the best disinfectant.

Read full Article
post photo preview
Lunduke's Random Linux Marketing Anecdotes

My days working in Linux marketing were... interesting.  It was a truly unique experience.  Wouldn't trade a moment of it (even the less than enjoyable parts).

Because I am feeling nostalgic, here's a few little tidbits from my time selling Linux-y stuff for Linux-y companies.

SUSE - The Oldest Linux Company

I spent roughly 4 years at SUSE as -- I kid you not -- often the only person, in the entire marketing department, who actually used Linux.  As such I tended to be the guy that every random marketing idea needed to be run by... you know, just to make sure SUSE didn't end up saying something that insulted Linux-folk.

Seriously.  It was crazy.  At one point the lady who ran all of marketing -- for the oldest Linux company -- had almost no clue, whatsoever, about how to even begin using Linux.  Or what the history of Linux was.  Or what the major projects were.

It was like if the head of marketing for Coca Cola had never tasted Coke before... and refused to even take a sip.  And was only vaguely aware that it was even a liquid.

Just the same... most of the time it was pretty fun.  I kept churning out ad campaigns that were some of the biggest successes SUSE had ever had -- resulting in SUSE numbers shooting up -- and, as a result, they gave me a lot of freedom.

Of the many varied and weird marketing projects I put together at SUSE... my favorite was a music video parody of "Uptown Funk"... about Linux kernel patching.

"Uptime Funk" was a fun one.  We hired a great group of musicians and dancers -- down in Provo, Utah -- who did a stellar job.  Our cinematographer and editor was absolutely amazing.

And, most importantly, nobody messed with my lyrics.  Which made me happy.  🤣

I tell ya.  The executives almost always messed with my words.

I remember, one time I wrote a parody of Justin Timberlake's "Can't Stop the Feeling".  I turned it into a song about a guy eating pie a dinner... singing about how he runs Linux on absolutely everything in his house.  He compulsively installs Linux on everything.  If it has electricity, he installs Linux on it.  And then he installs Linux inside of VMs on Linux.  And he uses a remote X session to log into his crock pot.

It was glorious.  And ridiculous.

Then the powers that be swooped in.  Non-Linux-understanding marketing people got assigned to "revise" the lyrics with the explicit instruction of making it "more marketing-y".

The result was "Can't Stop the SUSE".  Which, annoyingly, still lists me as having written the lyrics.  I'll let you decide how I feel about that song.

Near the end of my tenure at SUSE, things weren't quite as fun.  At one point I recall getting into an argument with the VP of Marketing... who told me, point blank, to never use the phrase "Free Software" and to stop talking about "Open Source" so much.

Seriously.  Things were going in a weird direction.

Then I left, SUSE got a new CEO, and everything went to heck in a handbasket for the oldest Linux company.

Purism - The Linux Hardware Guys

I spent a short spell as the Director of Marketing at Purism -- a company which sells laptops and whatnot pre-loaded with Linux.  While I ended up leaving the company due to some disagreements over how the business was run... there were definitely some fun moments.

For the launch of Librem One (Purism's effort to make a privacy-respecting online service), we created a commercial.  It's just a wee bit naughty.  No swearing but... definitely a lot of innuendo.  😎

You might recognize the voice at the end.

Ultimately, the Librem One service had some success -- but was severely bogged down by technical issues, and code licensing conflicts, early on.  Which was a bummer.  Really hobbled what could have otherwise been a fun product launch.

But, heck, the commercial was fun.  So it had that going for it!

Read full Article
post photo preview
Red Hat vs Hyprland: Silencing political "undesirables"
Beneath the drama: The abuse of corporate power, extremist politics, bullying, & censorship of "wrongthink".

The Open Source world is no stranger to drama.  Heck, if it's a day that ends in "Ay!", there's likely some random, usually overblown, drama happening in one Open Source organization or another.

But, sometimes, within that drama, there exists a bigger story.

Such is the case with "Red Hat vs Hyprland".

Within this drama there lies a tale of extremist poltiics, abuse of corporate power, and silencing of political "undesirables".  The things we learn here -- burried beneath the layers of drama -- are deeply disturbing, with significant ramifications for the entire Open Source industry.

Cutting through the noise

As with all drama, there's a lot of finger pointing.  And... noise.  So much noise.  Let's cut through all of that and get right to the facts.

The basic facts of this event:

  1. The core developer behind Hyprland (a tiling Linux window manager which has gained significant traction), a man who goes by the name "Vaxry", has been banned from any involvement in the Freedesktop project (an umbrella project covering Xorg, Wayland, and many other core Linux Desktop projects).
  2. This ban means that Vaxry will not be allowed to report bugs or submit code patches to Freedesktop projects -- often directly relevant to his own work on the Hyprland window manager.
  3. The ban (affecting Freedesktop) was enacted by a Red Hat representative (using a RedHat.com email address), based on a perceived 2 year old "Code of Conduct Violation" on a Hyprland chat server.
  4. Red Hat, Freedesktop, and Hyprland are all separate organizations.

As with any drama, there's a great deal of other information out there -- along with frenzied onlookers yelling about it from the sidelines -- but those are the core actions and facts.

The key takeaway: A representative from Red Hat was using corporate power to force a person out of other (read: non-Red Hat) organizations.  For reasons not related to Red Hat.  Nor related to the organization the person was being banned from.

In essence, Red Hat flexing it's muscle -- bending large portions of the Open Source world to do it's bidding.

By itself, that's bad enough.  But it gets worse.  Much worse.

What was the "violation"?

In order to understand how truly disturbing this issue is, we need to know a few additional details.  Starting with the initial "Code of Conduct Violation".

Back in 2022 -- yes, two years ago -- on the Discord chat server for the Hyprland window manager project, a man who identified as "Trans" listed his preferred prouns as "she/her".

A moderator on that Hyprland chat server changed that "Trans" person's pronouns to list as "who/cares".

Screenshot of the "Code of Conduct Violation".

Flash forward to 2024, and this "who/cares" action comes to the attention of another man who identifies as "Trans".  An employee of Red Hat named Lyude Paul.

To give you an idea of the motivations of the actions which follow: Lyude Paul has a publicly stated goal of "bullying" anyone who does not adequately show respect to "Trans" issues, as shown in his social media posts.

Source: Lyude Paul's Mastodon account.

Lyude Paul also promotes the idea that "right-wing people are not welcomed" in organizations.

Source: Lyude Paul's Mastodon account.

As Lyude Paul has a stated objective of "bullying" people -- making sure they are "not welcomed" -- if they do not profess the correct political ideals (or do not support "Trans" activism in the proper way)... it is not entirely surprising that this gentleman would use his position at Red Hat to ban those he disagrees with.

And that is exactly what happened.

Source: Lyude Paul's official email from RedHat.com.

Lyude Paul -- using his Red Hat email address -- informed Vaxry (the lead developer of Hyprland -- the project where the "who/cares" chat server incident occurred) that he was now banned from the entirety of the Freedesktop project and organization.

An important note: When a person sends an email from their corporate email account, they are acting on behalf of the corporation.  That is a hard and fast rule that has been in place since... well... forever.  Likewise Red Hat has not distanced itself from these actions in the least.

You can read the full emails, from Lyude Paul / Red Hat, as published by Vaxry.

The Red Hat Problem

This is an example of Red Hat, a corporation with a wild history of discrimination and censorship, using their corporate power (and strength within the Linux and Open Source world) to bully and silence those they politically disagree with.

Red Hat could condemn these actions (which were done in Red Hat's name) by their employee.  They have not done so.

None of this should be terribly surprising, considering what we already know about the IBM subsidiary.  They have a history of taking extreme political stances... and they actively discriminate against employees who deviate from their allowed, always extremely politically Leftist, ideals.

Considering Red Hat's historical stances and actions, it is no surprise that an employee of Red Hat would be able to use the corporate power of Red Hat to bully others who possessed the wrong ideas (as was the publicly stated objective of Lyude Paul).

A singular bit of drama... and a trend.

This particular incident has elicited strong reactions -- and has grabbed the attention of many across the Linux and Open Source industry.  Lots of drama.  Lots of opportunities to quote people who are making big, outlandish statements.

And most of that drama is little more than distracting fluff.

But the core -- the facts -- are truly disturbing.  And, once again, Red Hat finds itself at the center of another story where people are being discriminated against.

A few closing thoughts.

  • If this sort of bullying, censorship, and blacklisting of those with the "wrong politics" is allowed to continue... it will get worse.
  • Lyude Paul is guilty of far more extreme "Code of Conduct" violations than Vaxry -- as is shown in the screenshots above.  Yet Lyude Paul has not been banned, censored, or punished in any way by Red Hat or Freedesktop.
  • It would appear fairly obvious that the "Code of Conduct", at least in this case, is being used as a weapon to selectively harm specific individuals.
  • Considering Red Hat / IBM's history and dedication to discriminating against specific groups, it seems a fair assumption that these actions are not only allowed but encouraged by corporate leadership.  Should that not be the case, The Lunduke Journal encourages Red Hat and IBM to make a statement regarding it.  If such a statement is made, The Lunduke Journal will publish it in full.
  • Will Open Source organizations -- such as Freedesktop -- allow these sorts of discriminatory actions to continue?
  • Should Freedesktop, and others, continue allowing this type of discrimination... what result will that have on existing Open Source projects and users of those projects?

The Lunduke Journal has reached out to representatives from IBM and Red Hat for comment.  As of the time of publication The Lunduke Journal has received no response.

Read full Article
See More
Available on mobile and TV devices
google store google store app store app store
google store google store app tv store app tv store amazon store amazon store roku store roku store
Powered by Locals