Coding vs. Programming

Expounding here so I don’t derail the True Sell thread any more.

Oh it is. I admit it :slight_smile:

Pretty much spot on. I take “Programmer” even more basic. The programmer looks at a problem that needs solving or even just improving upon a previous solution.

A big chunk of solving a problem is just defining it as properly and fully as possible.
The Programmer defines the problem, or takes the problem definition from a client/customer/boss, etc and makes the sure the problem as defined is accurate.

Then the Programmer converts the definition into what the desired solution would be like¹ into an algorithm that should achieve the solution.

In a technical sense, you can be a Programmer without knowing any actual programming languages²

Because the output of this process would be something like Pseudocode, flow charts explaining how the algorithm works, or whatever other format a “coder” can understand and translate into any given language.

The “coder” takes that algorithm and will then translate it into actual a workable computer program.

I know it seems like a silly distinction, but it’s one that bugs me now because everybody calls it “coding.” I consider myself a programmer more than a “coder”.

I’ve been programming in one form or the other since I was 5 years old (early 1980s).

Anyway, fin.

¹Lesley Robertson has an excellent book about how to convert a plain-English problem definition into usable solution descriptions that can be understood in algorithmic terms.

²Of course, most people I know (including me) wear both the programming and coding hats.

6 Likes

Interesting distinction. What about a hacker? Hacker used to be someone who was beyond a programmer, someone who knew a system so well that they could do tricks with it or subvert its main use to their own ends in clever ways. Now any coder can join a hackathon and put “hacker” in their linkedin bio.

Anyway, my own take on it is that what you are calling programming truly is just being a software engineer and or architect. Totally corporatized way of looking at it but the design-build cycle is typical of any engineering field. To me, hiring a “programmer” would be looking for a code monkey to work the Jira backlog for features and bugfixes.

Hack the planet!

1 Like

Don’t even have to know programming to be a hacker :wink:

Hacking, at its core, is just a love of exploring systems. Trying stuff to see what works, what doesn’t, and so on. Phreaking is/was a similar thing with the phone system.

I read that one of the possible origins of the term “hacking” was from people just hacking away at keyboards trying to see what they could make systems do.

Fun stuff.

2 Likes

I know you want to tag @CatalystPrime.

:hugs:

1 Like

I thought about it earlier but was driving at that moment and then forget later :rofl:

1 Like

So, kind of like … Polyglot vs. Ultimate Writer?

“I know the language.” vs. “I know how to communicate ideas.”

:slight_smile:

1 Like

Sounds good to me

1 Like

It makes me think of the idea of “Application vs. Implication” Jamie Smart talks about in his book “Clarity”

Application is being able to bake a cake by following a recipe.
Implication is having enough deep knowledge that you can just bake a cake as long as you have ingredients on hand.

or, to use the Zone Diet as an example (since it’s the only “diet” I’ve ever actually done before):

Application is being able to make “Zonified” meals by having tons of Zone-friendly recipes
Implication is understanding the Protein:Carb:Fat ratios of 7G:9G:1.5G that go into “eating Zone” so you can do a “Zone” meal from whatever is available.