SOFTWARE PHILOSOPHY

The software we build today is fighting for hundreds of years of relevance.

The software evolution storyline of Eclipse. © 2010 Michael Ogawa.

Google Search, opened September 15, 1997, has since been the leading web search engine. JavaScript is a web programming language invented in 1995 by Brendan Eich. The design of most websites, including Google Search, was based upon the JavaScript language. Furthermore, the C programming language, created in 1972, 47 years ago, influenced JavaScript. The latest release of C is version 18 (for 2018), and the language is still widely used in embedded programming and throughout the Windows, Linux, and macOS operating systems. Even iPhones and Androids run on some C code. …


BEAKER BROWSER

A new, social form of the internet has just emerged. It’s Beaker, and it uses Hyperdrives.

Photo: Jens Kreuter/Unsplash

The names “Beaker” and “Hyperdrives” sound very future-esque. But let me remind you that we are all living in the future. There are cars that run on electricity, which previously had only been mastered enough to shine lightbulbs and send single pulses around the world. And it doesn’t take long for this new, internet-connected world to learn and share knowledge. Don’t be surprised that we will learn and invent more things now, than ever before.

A modern web browser like Firefox, Chrome, or Safari connects a user to a server. The user can request to see a page, and the…


RUST LANGUAGE

Drilling in the Bakken of North Dakota, 2018. © 2018 Bloomberg Finance LP

Okay, I am the CEO of language hopping. I program as a hobby, so I don’t have the boundary of a “job” to keep me from experimenting with every language, including x86 assembly.

I have programmed for about 5–6 years. My third year, I learned how compilers and interpreters work. In the same year I began learning Rust and by the next year built my first compiler — A C compiler. …


A war with the internet and memes, and the prejudice involved.

Only since 1991 has the World Wide Web been publicly available. And only since the mid 2000s have we had Reddit, Twitter, and Facebook. So before the Coronavirus, I had always wondered how the internet would respond in the face of a modern war. And, to nobody’s surprise, there are a lot of memes. But, new methods of propaganda guide public opinions unlike anyone has ever seen before.

A collage of World War 2 propaganda
A collage of World War 2 propaganda

In the time of the second World War, about 120,000 Japanese Americans were cast out from their ordinary lives, and put into internment camps after the bombing of Pearl Harbor, because of…


An illustrated introduction to how programming languages work.

This is the first part in a five-part series on creating compilers for programming languages.

Compilers are one of the very few types of software that become as complex as operating systems. Compilers are daunting because they require a deep understanding. Please take your time.

I believe this understanding is important to all developers. Developers make more efficient software when they know how their tools work: there’s always more going on under the hood of Java or Python programs than what we can see on the surface.

A compiler, the software that is usually related to a programming language, translates…


Credits: Patrick Herrera. 2007.

You may have heard of people being tracked by simply owning a phone — it’s entirely true. You could just turn your phone off to prevent being tracked, but how do you know it’s really off?

Even our government doesn’t trust phones without removable batteries: FBI agents use what they call drug dealer phones — flip phones with removable batteries — to prevent people from tracking them.

So how does this happen? What possibly could your phone be doing in your pocket when you’re not even using it?

Unfortunately, technology is always going to be used against the consumers. And…


The guide to choosing the correct engine for your next big game.

Making a video game can be compared to building a house. But no-one wants to go through years building their house and being unhappy with their decisions. And no-one wants to waste their time using a game engine that just won’t work for their game. Let’s not waste any time picking the wrong engine. Let’s pick the engine that is powerful and efficient enough to do what we need to do with our game.

I want to show you a list of game engines I consider are worth using. I have been programming for about five years and a couple…


Time to boot up the ‘ol IBM PC and get back to work on my Fortran text-RPG game, but oh shit now it’s 2005 and evanescence is reaching uncontested levels of emo on my Windows Media Player, as I use the semicolon more times than the bible in my latest C++ program. What the hell just happened? Did I evolve? No, programming and computers advanced. I just followed.

You know you want to play it.

1980 was a cool year for me. I wasn’t alive! But that doesn’t stop me from pretending to know what it was like. For people…

Luke I. Wilson

I’m a computer programmer and author of various topics, including coding, technology, and game development.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store