The Clean Code Blog

Latest articles

REPL Driven Design

If you follow me on facebook you know that I’ve been publishing daily CoronaVirus statistics. I generate these statistics using the daily updates in the Johns Hopkins github repository. At first I just hand copied the data into a spreadsheet. But that became tedious quite rapidly. Then, in late March, I wrote a little Clojure program to extract...

A Little More Clojure

So let’s learn just a little bit more of Clojure. Here are a few common utility functions: user=> (inc 1) ; increments argument 2 user=> (dec 3) ; decrements argument 2 user=> (empty? []) ; tests for empty true user=> (empty? [1 2]) false If you know Java or C# you probably know what the map function does. Here’s an example:...

A Little Clojure

So let’s learn just a little bit of clojure. This expression: (1 2) represents the list containing the integers 1 and 2 in that order. If you want an empty list, that’s just (). And the list of the first five letters of the alphabet is just (\a \b \c \d \e). Now you know a lot about the syntax of clojure. Perhaps you think there’s a lot missing....

A New Hope

…The Year is 2045… Dad, can you help me with my school report? Sure son. What’s it about? We have to do it on the great pandemic of 2020. You were there, right? I was just a little boy. But I know a lot about it. What is it you need to know? We’re supposed to write about the heroes. Ah, yes. A good topic. There...

Open Letter to the Linux Foundation

To: The Linux Foundation Jim Zemlin: Executive Director Angela Brown: VP of Events Andy Updegrove: Legal Council From: Robert Martin (@unclebobmartin) (unclebob@cleancoder.com) Re: Code of Conduct case of Charles Max Wood. Dear Linux Foundation: I am writing to you as a concerned member of the software development community...

What They Thought of Programmers.

It is interesting and educational to go back in time and look at how programmers were represented in popular culture. What did they think of us? Did they know who were? It’s important to remember that prior to 1946 there were no programmers, that computers themselves were virtually unknown until the late ’50s. That virtually nobody lived next...

Circulatory

My wife and I both got genetic analyses from 23andMe recently. I discovered that my ancestry comes from Britain and Northern Europe. My wife is Mexican, and she found that her ancestry is very diverse. One of the services of 23andMe is that they offer to connect you to relatives who have also used 23andMe. Using this service my wife found a second...

Why Clojure?

I’ve programmed systems in many different languages; from assembler to Java. I’ve written programs in binary machine language. I’ve written applications in Fortran, COBOL, PL/1, C, Pascal, C++, Java, Lua, Smalltalk, Logo, and dozens of other languages. I’ve used statically typed languages, with lots of type inference. I’ve used typeless languages....

Why won't it...

A few days ago I was ordering lunch at a barbecue joint in Austin, Texas. The menu described a lovely plate of three sausages, and suggested six different sausage types to choose from. I love a good sausage; and I am especially fond of Bratwurst. So when the waiter came by I told him I wanted two Brats and a Keilbasa. The waiter nodded and proceeded...

Classes vs. Data Structures

What is a class? A class is the specification of a set of similar objects. What is an object? An object is a set of functions that operate upon encapsulated data elements. Or rather, an object is a set of functions that operate on implied data elements. What do you mean by implied data elements”? The functions of...

Discover, share and read the best on the web

Subscribe to RSS Feeds, Blogs, Podcasts, Twitter searches, Facebook pages, even Email Newsletters! Get unfiltered news feeds or filter them to your liking.

Get Inoreader
Inoreader - Subscribe to RSS Feeds, Blogs, Podcasts, Twitter searches, Facebook pages, even Email Newsletters!