• Home
  • About
    • About The Coder
    • Language List
  • Code Rules
    • #1: Clarity Trumps Everything
    • #2: Source Code is for Humans
    • #3: Don’t Ignore Warnings
    • #4: Comment As You Go
    • #5: Always Use Parentheses
    • #6: Always Define Literals
    • #7: Never Repeat Yourself
  • CS-101
  • Python-101
  • Simple Tricks
  • Guestbook

The Hard-Core Coder

~ I can't stop writing code!

The Hard-Core Coder

Author Archives: Wyrd Smythe

OOP versus Imp

25 Tuesday Jun 2019

Posted by Wyrd Smythe in Opinion

≈ 1 Comment

Tags

computer code, computer language, computer languages, computer programming, computer science, imperative programming language, language design, Object-Oriented Programming, OOP, programming language

This is another note for a friend: a followup to a discussion about how some programmers really hate Object-Oriented Programming (OOP) languages.

Most of those who hate OOP hold up Imperative Programming (IP) as the One True Way to write code. The key difference is the IP is function (or verb) oriented whereas OOP is object (or noun) oriented.

I’ve never really understood that active dislike. It’s just another way to organize the same code you’d write anyway.

Continue reading →

The Eight Queens

23 Sunday Jun 2019

Posted by Wyrd Smythe in CS101, Fun, Python

≈ 1 Comment

Tags

computer code, Python code

There’s a fairly simple puzzle, called The Eight Queens, that I’ve long favored as a project for first semester CS students. The problem is simple enough for a beginner to tackle, yet also interesting enough to be engaging. (And just tricky enough to be a nice beginner challenge.)

Due to a discussion on my other blog, I dug out an old Python implementation I had, and, after looking at it, I thought it might be worth writing a post about. If nothing else, as I said, the problem is interesting enough to be engaging.

Continue reading →

Full Adder Redux

14 Tuesday May 2019

Posted by Wyrd Smythe in CS101

≈ Leave a comment

Tags

full adder, logic circuit, modeling, NOR gate, Python code, simulation, truth table

I’m returning to the full-adder logic circuit modeling to present the code for a version that tries to capture the timing of the signals.

The goal is to take a closer look at the intermediate states of the adder as signals trickle through it.

Continue reading →

Adventures in Address Vector Space

10 Friday May 2019

Posted by Wyrd Smythe in Fun

≈ Leave a comment

Tags

Python code, vector math, vector space

Lately I’ve been exploring the idea of a vector space with a large number of dimensions (but few degrees of freedom). A model was presented with five degrees of freedom in 500 dimensions (neurons, as it happens).

The question is, given the axes are bit-level, does normal vector manipulation semantics make sense. My contention is it has severe problems.

Continue reading →

Full Adder Sim V2.0

08 Wednesday May 2019

Posted by Wyrd Smythe in CS101

≈ 2 Comments

Tags

full adder, logic circuit, modeling, NOR gate, Python code, simulation, truth table

This is the third post in the Full Adder series. The first post explored ways to code the abstract model of a full-adder. The second post explored one way to code a simulation of a physical system (where the models are of the components of the system).

This post explores another gate-based model, but one with only one type of gate. This simulation is close to being transistor-level.

Continue reading →

Full Adder Simulation

07 Tuesday May 2019

Posted by Wyrd Smythe in CS101

≈ 4 Comments

Tags

full adder, logic circuit, modeling, Python code, simulation, truth table

In the last post, I explored different ways to model the logic of a full-adder. In this post I’ll explore a model of a physical instance of a full-adder — a model that simulates physical reality.

Because a full-adder is, at root, a mathematical expression, various software models can accomplish the same results. Models are abstractions, so the only thing a model can simulate perfectly is another model.

Continue reading →

Full Adder Code

05 Sunday May 2019

Posted by Wyrd Smythe in CS101

≈ 7 Comments

Tags

finite state machine, FSA, FSM, full adder, half adder, Python code, state engine, state table, truth table

I was involved in a debate recently about whether a full adder logic circuit is a computer. The computer science answer is: “No, not as we define a computer.”

I plan to address that answer in detail on my main blog. Here I wanted to show some of the different ways a full adder can be modeled and implemented.

Continue reading →

Number Games #1

22 Friday Mar 2019

Posted by Wyrd Smythe in Fun

≈ 1 Comment

Tags

Collatz conjecture, multiplicative persistence, Python code

This is a companion post to the Math Games #1 post on my main blog.

Here I present some code (Python, of course) for exploring the first two games, multiplicative persistence and the Collatz conjecture.

Continue reading →

So Random!

01 Tuesday Jan 2019

Posted by Wyrd Smythe in Fun, Python

≈ 5 Comments

Tags

Python code, random

To ring in the new year, I thought I’d play around with an old friend from my earliest programming days, a random text generator. Back then (over 30 years ago), but a little bit always, a good way to practice programming is by working on small, relatively easy, but still fun, programs.

Simple games are common choice, but not the only one. (I’ve probably written a version of Mastermind in every programming language I know.) Another fun choice is various image or text generators (or processors). Random text generators, in particular, offer a range of complexity depending on your taste and time.

Continue reading →

Anyone Can Code?

14 Friday Sep 2018

Posted by Wyrd Smythe in Opinion

≈ Leave a comment

Tags

computer code, computer programmer, computer programming, real programmers, software design, software development, software industry

There’s a general ethic these days — that anyone can code — and like a lot of things, there’s some truth to it, but also some silliness. As usual, it really depends on what we mean by “anyone can code.”

If we mean it in the same way we might say, “anyone can drive,” I think it’s silly. But if we mean in the same way we might say, “anyone can doctor (or lawyer),” well, then I still think it’s silly.

Continue reading →

← Older posts
Newer posts →
Follow The Hard-Core Coder on WordPress.com

The Posts

  • This is Python! (part 12)
  • This is Python! (part 11)
  • This is Python! (part 10)
  • This is Python! (part 9)
  • This is Python! (part 8)
  • This is Python! (part 7)
  • This is Python! (part 6)
  • This is Python! (part 5)
  • This is Python! (part 4)
  • This is Python! (part 3)

The Topics

  • Blog (4)
  • CS101 (37)
  • Fun (39)
  • Interesting (5)
  • Opinion (12)
  • Python (73)
  • Stories (15)

The Month

April 2026
M T W T F S S
 12345
6789101112
13141516171819
20212223242526
27282930  
« Mar    

The Past

Posts

RSS Feed

Comments

RSS Feed

The Main Blog

Visit Logos con carne

Lots of wyrds... with meat!

The Author

Wyrd Smythe

Wyrd Smythe

The canonical fool on the hill watching the sunset and the rotation of the planet and thinking what he imagines are large thoughts.

View Full Profile →

Create a website or blog at WordPress.com

  • Subscribe Subscribed
    • The Hard-Core Coder
    • Already have a WordPress.com account? Log in now.
    • The Hard-Core Coder
    • Subscribe Subscribed
    • Sign up
    • Log in
    • Report this content
    • View site in Reader
    • Manage subscriptions
    • Collapse this bar