Great Books: Areopagitica

As I said last month, I plan to read 12 of the Great Books in 2023. In this dark time of censorship and anti-Enlightenment, where cancel culture causes good men to be barred from society through no fault of their own, it seemed prudent to begin with something that represented liberty and free thought.

John Milton’s Areopagitica is often cited as the seminal argument in favor of a free press and one of the reasons the Founding Fathers not only created the First Amendment, but fought for their freedom in the first place. Written as a letter to the English Parliament, the relatively short work (my copy from Project Gutenberg was about 60 pages at the high zoom necessary for my failing eyesight) manages to be dense with both content and allegory.

The history behind Areopagitica is the history of the Reformation and the English Civil War. To prevent supposedly heretical and seditious tracts from finding their way into the public sphere, the aristocrats of Parliament wanted to create an official printing license. No book could be printed unless licensed, and unless it made it through their handpicked censors. That way, they reasoned, all the “bad” works would be weeded out.

Milton expertly tears down this argument, and his counterpoints still stand strong four centuries later. Banning books doesn’t kill the ideas within them, and every attempt to control society in that way has failed—good Protestant that he is, our author continuously refers to the Inquisition’s index of prohibited literature as the most egregious failure. His other point is also a salient one: reading something awful doesn’t make you an awful person; conversely, if you were already prone to vile tendencies, not having a book about them isn’t going to change your mind.

The marketplace of ideas wasn’t a concept that existed in 1644, yet its roots are laid down here. Let people use their reasoning abilities, and they will see which books are worth studying, which are worth printing and selling and buying. Prevent them from exploring, and they will become slaves, intellectually stunted and only able to think what they are told. (One might also say that John Milton predicted the NPC meme, as his argument accurately describes those who support lockdowns, vaccine mandates, carbon credits, and the war criminal in Kiev for no reason other than because the TV told them to.)

Of course, even a work so defining has its flaws. Mostly, they come from the thick religious allegory. Areopagitica isn’t peppered with Biblical references, like so many other proto-Enlightenment works; it’s caked in them. And, while Milton correctly recognizes that the Bible would, if it were properly examined, be one of the first books on any blacklist, he can’t quite make the logical leap that it should be held to the same standards as any other book.

He also falsely equates “good” with “Christian”, stating that one category of books which deserves to be banned is those that are impious. But this would censor many of our greatest works. It would silence the voice of his contemporary, Spinoza, among many others. While common sense tells us that there is an argument, however weak, to be made for censoring outright lies and fraud, freedom of the press must also include freedom of religion. Milton’s failure to recognize this is a product of his time: England in the 16th and 17th centuries was torn apart by the Reformation, as monarchs and despotic “protectors” alike took turns using force of law to persecute their religious enemies.

Despite all this, Areopagitica was a good read. It shows that people nearly 400 years ago faced the same problems we face, and some of them had some of the same thoughts about how to solve them. Censorship is never the answer; on this, Milton and I agree. On the other hand, we’ll have to agree to disagree on the limits of the free press. For me, it is absolute. But that’s because I was born after the Enlightenment, rather than in the years just before it.

For art’s sake

I never liked art class in school. In elementary school, I skipped art assignments whenever possible, and only finished them reluctantly. Middle school? I became a teacher’s aide for no reason other than to avoid hitting art’s spot in the rotation. And I outright failed the class in high school, though that was as much because of a teacher who hated me as it was my apathy.

But that’s specifically visual art, and there are other kinds. While I can’t draw anything more complex than a stick figure, I’m no good at any musical instrument, and I wouldn’t make it five minutes into a clay sculpture without needing to wash my hands, I like to think I’m a decent writer. I’m a (self-)published author, after all. So, as much as I don’t want to admit it, I’m an artist.

Thus, the arts have become my concern. They should be yours, too, but not for the reason you think.

Art is an expression of culture. That’s really its primary purpose, when you think about it. Great peoples produce great, er, people, and those people produce great works of art. The Renaissance is rightly praised for its works in many fields, works which evoke a certain “feel” that we as human beings can sense. Even if you don’t know a thing about Florence in the 15th century, you still get the sense that Renaissance creations belong to the same general time and place. Likewise the Gothic cathedrals, classical Greek architecture, or elaborate Chinese calligraphy.

Looking at modern art, however, you can only see a culture in decline. A sick culture, maybe even a dying one. And it doesn’t matter which of the arts you investigate; you’ll find the same problem in all of them:

  • Mainstream popular music is now largely based on repetitive patterns of monotonic drumbeats instead of, say, harmonized melody and vocals. Lyrics—the only sort of poetry still produced for public consumption—are typically uncreative, bearing little fit to meter or rhyme, and restricted to a few set topics.

  • Television and film have all but given up on new ideas, instead preferring endless sequels, reboots, and adaptations. Most original content being produced is in the form of sitcoms catering to the lowest common denominator or scripted “reality” shows. Characters are more like caricatures, lacking depth or motivation.

  • Literature suffers the same characterization problems in fiction, added to the low quality of modern prose. No one, it seems, can write in a “high” literary style anymore. Popular books tend to be either biographies or wish-fulfillment fantasies, with everything else considered “niche” in some way.

  • Modern architecture has fully adopted the brutalist style, eschewing attempts at beauty or emulation of classical grandeur in favor of bland, forgettable constructions. Cookie-cutter homes, McMansions, and the ever-popular “box of windows” commercial building dull our eyes and make even a vibrant city feel lifeless.

I could go on, but the other arts are very minor today (sculpture and poetry) or, as with something like photography, simply repeat the same problems as above. Better than listing problems is finding causes, then solutions.

The cause, of course, comes down to politics. The arts are almost wholly controlled by progressives, and the destruction of culture is one part of the overall progressive agenda. It comes from communism, originally, and who would have guessed that the ideology responsible for over 100 million deaths would also want to kill cultures? But that’s the goal, really. Creativity is individuality, and culture is individuals of like minds building something greater.

While I never like to use absolutist terms, this is one case where it’s appropriate. Progressivism and communism are just plain evil. By definition, as anti-human ideologies, they must be. And, as Tolkien reminds us, evil cannot create. It can only destroy and pervert. It’s only natural, then, that corrupting forces would drag a culture’s creative output down to the low levels we see today.

Progressives control Hollywood, and so we see cardboard cutouts instead of characters, protagonists who are chosen based on how many diversity boxes they check, and transparent morality plays instead of stories. The same groups own the hubs of music distribution—radio, streaming, whatever—and that gives us a succession of rappers who eke out a couple of hits before being killed in a Chicago shootout. Their stranglehold on publishers led to a reader revolt some years back, and now they’ve brought the same drama to video and tabletop gaming.

It’s hard not to see this as a controlled demolition of culture. But the intentions are irrelevant. What matters is how we respond to what can only be considered a threat to our people and our history.

As content creators, we should always be looking for alternative platforms and distribution channels. Make our art available where the censors and gatekeepers can’t touch it. Sites like Odysee and Rumble for videos, Substack for short written works, and so on. Federated, censorship-resistant content platforms such as the fediverse. Anywhere indies can go, you should think about being.

Even before that, though, we should create great works from the start. Pen an epic novel where the hero is a straight white male if that’s appropriate. Write a song with an uplifting, complex melody and lyrics that tell a story about something other than drugs or relationships. Learn Blender or whatever so we can get cartoons that aren’t transparent indoctrination drawn in CalArts style. Embrace who we are: Americans, products of the Enlightenment, the Space Age, and everything in between. Let that identity shine through in your works. Be proud of your heritage, not ashamed of it.

And for those who have the means, where is your support? Where are the conservative and libertarian patrons of the arts? Those who wail and gnash their teeth about the Left’s iron grip on art do nothing to stop it. Even when they do step up, it’s entirely in a reactionary manner, and that just isn’t tenable. Where is the wholesome Hollywood? Where are the conservative counterparts to Tor and Penguin?

Ordinary people dislike bad art. Otherwise, “get woke, go broke” wouldn’t be a saying. But they also enjoy good art. There’s a market out there. Look at indie gaming. Look at streaming. Except possibly for blockbuster movies, we have the tools to make art that competes with the progressive drivel for a fraction of the cost. All we need is investment from those who claim their support.

It’s not enough to complain. You also have to do something about the problem. If you don’t, you’re a part of it. Creators, keep creating. That’s how we can win. Everyone else, be willing to put your money where your mouth is, because art requires an audience.

A barebones kernel in Nim

I’ve been fascinated by operating systems for a very long time. For someone who genuinely loves low-level programming, they’re the lowest you can get in our modern age, barring a few microcontroller applications. So I’ve spent the occasional weeks over the past 20 or so years looking into the field, wondering if there’s a way to make my mark on it. At the same time, I’ve been looking at ways to write those low-level programs.

Combining those two threads of research has led me to create Nim Limine Barebones.

What is it?

It’s pretty simple. This is a port of the Limine Bare Bones tutorial kernel to the Nim programming language. It doesn’t do much; it’s literally the “Hello World” of OS development. But it can be used as the start of something much greater.

Why Nim?

I’ve looked at a lot of different languages that purport to be suitable for low-level “systems” programming. I settled on Nim because I wanted to learn something new, but also because every other option has a flaw.

  • C is the gold standard for OS work, but it’s really a horrible language. Especially when you don’t have the luxury of an operating system to protect you from, say, filling every byte of memory with garbage.

  • C++ is one of my favorite languages anyway, but using it on bare metal is harder than you might think. A freestanding implementation has to throw out most of the standard library (i.e., the bits that make C++ worth using), so you’re mostly left with C plus classes.

  • Rust might be a decent language, but its syntax is as ugly as the politics of its developers. I’d never use it for an unpaid project.

  • Go, from all I’ve read, requires a hefty runtime to get started, and Google has no inclination to change that. It’s also a language I find annoying for some irrational reason.

  • D is pretty much the opposite of Rust in both politics and syntax. It would be a great choice if not for a bit of runtime you just can’t get rid of. Oh, and the fact that nobody can seem to agree on what, exactly, the language should be.

  • Zig looks okay, and I found it extremely interesting when I delved into it a few months back. Alas, it’s just too immature for production use, and the latest revisions of the compiler have completely removed some necessary options for bare-metal development.

Nim isn’t perfect by any means, but what I’ve seen so far makes it look like a good “better C” that doesn’t require too many hoops to get the runtime out of the way. For application development, it wouldn’t beat out C++ for me—things like multiple inheritance are just too useful—but at the OS level? Sure beats trying to write my own std::vector. (Seriously. Where are the minimal STL implementations to go along with mlibc?)

Why Limine?

Most OS tutorials are centered on Multiboot. After all, it is kind of a standard. Here, though, I went with Limine. It’s a little more obscure, and much newer; the project is only a few months old here at the start of 2023, as it is intended to replace the older Stivale bootloader.

Limine has a lot of advantages, in my opinion. It’s entirely 64-bit. It sets up a call stack for you, which mostly cuts out the need for assembly in the boot phase. Framebuffers are sensible, there’s an integrated terminal that can work until your own is ready, and it’s just nice in general.

That said, it does have its annoyances. It requires a “higher half” kernel, and that makes paging a necessity sooner than it should be. But the page tables Limine gives you are intentionally sparse. And for this project in particular, dealing with an array of function pointers is just awful. Surely there’s a better way.


All told, I’m happy with what I wrote. It’s a good start, and it fills a niche that nobody else was really looking at. Yes, there’s another barebones Nim kernel out there, and I took inspiration from it. I like to think I’ve provided a better starting point for myself and anyone who would like to follow in my footsteps.