From acafb86183b35f3d11cddc6cf03e4c32e8e50ed2 Mon Sep 17 00:00:00 2001 From: Matt Hall <401matthall@gmail.com> Date: Sat, 10 Feb 2024 17:09:39 -0500 Subject: [PATCH] `I don't like writing code` post Additional changes to intro layout adjusted the description of `It's the Cognition, stupid.` post --- _data/intro.json | 3 +- _data/metadata.json | 2 +- _includes/layouts/widget/intro.njk | 7 +- docs/404.html | 2 +- docs/__site/index.html | 50 ++++----- docs/feed.json | 32 ++++++ docs/feed/index.html | 18 ++- docs/index.html | 31 +++++- docs/page-list/index.html | 30 +++-- docs/posts/first_post/index.html | 2 +- .../posts/i_dont_like_writing_code/index.html | 86 +++++++++++++++ docs/posts/index.html | 31 +++++- .../posts/its_the_cognition_stupid/index.html | 11 +- docs/sitemap.xml | 26 ++++- docs/tags/autism/index.html | 4 +- docs/tags/being-me/index.html | 31 +++++- docs/tags/code/index.html | 103 ++++++++++++++++++ docs/tags/coding/index.html | 103 ++++++++++++++++++ docs/tags/first/index.html | 2 +- docs/tags/index.html | 17 ++- docs/tags/problem-solving/index.html | 103 ++++++++++++++++++ docs/tags/thinky-thoughts/index.html | 31 +++++- posts/i_dont_like_writing_code.md | 26 +++++ posts/its_the_cognition_stupid.md | 4 +- 24 files changed, 685 insertions(+), 70 deletions(-) create mode 100644 docs/feed.json create mode 100644 docs/posts/i_dont_like_writing_code/index.html create mode 100644 docs/tags/code/index.html create mode 100644 docs/tags/coding/index.html create mode 100644 docs/tags/problem-solving/index.html create mode 100644 posts/i_dont_like_writing_code.md diff --git a/_data/intro.json b/_data/intro.json index b2c2d24..31b4f3d 100644 --- a/_data/intro.json +++ b/_data/intro.json @@ -2,5 +2,6 @@ "title": "Matt Hall", "intro": "Hi. I'm Matt Hall. I've been writing software for about eight years. I've been exploring solving problems my entire life. I enjoy the arts of story crafting, writing, and communicating. I am excited to share some of that with you. You may find yourself less excited upon the sharing.", "cover_intro": "I write syntax, and words. I have opinions.", - "cover_image": "https://avatars.githubusercontent.com/u/7205256?v=4" + "cover_image": "https://avatars.githubusercontent.com/u/7205256?v=4", + "cover_link_1": {"http" : "https://mastodon.xyz/@401matthall", "text" : "401matthall on mastodon"} } \ No newline at end of file diff --git a/_data/metadata.json b/_data/metadata.json index 6f5efdf..87c6942 100644 --- a/_data/metadata.json +++ b/_data/metadata.json @@ -11,7 +11,7 @@ "url": "https://401matthall.com/feed/" }, "jsonfeed": { - "path": "/feed/feed.json", + "path": "/feed.json", "url": "https://401matthall.com/feed.json" }, "author": { diff --git a/_includes/layouts/widget/intro.njk b/_includes/layouts/widget/intro.njk index af4e2cf..7bc24b9 100644 --- a/_includes/layouts/widget/intro.njk +++ b/_includes/layouts/widget/intro.njk @@ -6,6 +6,7 @@

{{ metadata.description }}

{{ intro.intro }}

+

@@ -13,7 +14,11 @@
-

{{intro.cover_intro}}

+

+ {{intro.cover_intro}} +
+ {{ intro.cover_link_1.text }} +

\ No newline at end of file diff --git a/docs/404.html b/docs/404.html index 0ba132b..002b621 100644 --- a/docs/404.html +++ b/docs/404.html @@ -22,7 +22,7 @@ - + diff --git a/docs/__site/index.html b/docs/__site/index.html index aa6107e..307695c 100644 --- a/docs/__site/index.html +++ b/docs/__site/index.html @@ -52,37 +52,37 @@

A blerg

-

I write syntax, and words. I have opinions.

+

https://401matthall.com

- - -

Updates

- - - - -

Explore Blerg

- + + +

Updates

+ + + + +

Explore Blerg

+
diff --git a/docs/feed.json b/docs/feed.json new file mode 100644 index 0000000..8a2e9eb --- /dev/null +++ b/docs/feed.json @@ -0,0 +1,32 @@ +{ + "version": "https://jsonfeed.org/version/1.1", + "title": "401matthall", + "language": "en", + "home_page_url": "https://401matthall.com/", + "feed_url": "https://401matthall.com/feed.json", + "description": "A blerg", + "author": { + "name": "Matt Hall", + "url": "https://401matthall.com" + }, + "items": [{ + "id": "https://401matthall.com/posts/i_dont_like_writing_code/", + "url": "https://401matthall.com/posts/i_dont_like_writing_code/", + "title": "I don't like writing code...", + "content_html": "

I've been struggling with this thought for a long time. I've been convinced that I don't like writing code. Perhaps, I'm not meant to write code. Other people seem to be so much more prolific at it. They generate reams of code and move through their work at a good clip. Observationally, I'm the 'problem', right?

\n

Maybe. Maybe. However, upon some recent reflection I don't think I am. I'm not sure there is a problem.

\n

I finally decided I don't like writing code like other people I know. In my previous post I noted that I find I often think obliquely compared to my coworkers. This has a direct impact on how I think about my code. I wrestle with my code, I struggle to surface clarity as much as possible in my code. If this sounds like an attempt at a brag it's not even remotely that. It's my thought process while I'm working.

\n

When I write code I try to do a number of things: solve the stated problem (usually from a trouble ticket), make my changes simple to understand for someone else, and make my changes simple to change in the future. I actually consider the last two items far more important than the first. This is because I work on legacy projects. Projects that have been around for 10 years or more. Projects with geological layers of code. If you've worked in a project like this before you already know what I'm talking about. If you haven't worked in a project like this don't worry you will and it's a Learning Experience.

\n

Legacy projects, in my experience, are all about maintenance. Code that's been fine and untouched for six years is, without warning, now failing in the most absurd way and it's not obvious why. It turns out what should've have been an unrelated change in another service affected the outcome of a calculation in the six year old code because they were coupled in an obscure way. After hours of work you find it, untangle it, and decouple those two pieces of code. Why were they coupled in the first place? Expediency, inexperience, inattention? All valid, it happens. It is nearly impossible to anticipate how code will be used in the future. I'm not working to future-proof my code, I'm working to make it simple to see how my code works and make it simple to change. The idea that Change is the only constant in software is becoming my personal mantra.

\n

Maybe I do like writing code. I love building rules that define how a thing works and then codifying those rules into whatever language I'm working in. I love when my codified rules are simple, as simple I can make them. I love when for just a few minutes there's a moment of clarity in my mind and the code on my screen captures that. I love when I come back to code I've written years prior and it's still clear what it does and how I can change it, not because I remember the code but because it's as simple as I could make it at the time.

\n

I love writing code.

\n", + "date_published": "2024-02-10T00:00:00Z" + },{ + "id": "https://401matthall.com/posts/its_the_cognition_stupid/", + "url": "https://401matthall.com/posts/its_the_cognition_stupid/", + "title": "It's the cognition, stupid.", + "content_html": "

I encounter many wonderful, helpful people in my day-to-day. They love to share productivity tips and I'm always happy to hear them. I think on occasion people are offended to find out I haven't implemented any of their ideas or suggestions. My peers seem to be confused when I haven't adopted the latest shortcut, key-combo heavy IDE or Vim or Emacs (I'm absolutely not having an Emacs v Vim conversation). I'm always fascinated by how much focus is placed on physical action.

\n

So many people try to help under the impression that my primary struggle is the speed at which I can get information from my brain to my finger tips/code editor. In my case, the limitation isn't the speed at which I can type syntax. In fact, often times taking the time to type all of the syntax including the boilerplate helps me to focus my thoughts. It's taken me a long time to start to understand how differently I think compared to my peers. I'm not slow-witted, I don't think slow. I do organize my thoughts slower than most people. This isn't slow thinking, however. This isn't a lack of articulation or practice in communication. It's a deliberate exhaustive effort to organize my thoughts before I communicate them to avoid confusion for myself and for my audience, even if that audience is only my code editor. Incomplete thoughts aren't thoughts at all for me. They're fragments I don't know what to do with and the effort of hanging on to an unintegrated thought is cognitively expensive. This process is, in fact, work for me. The compulsion to integrate the thought into my existing framework is overwhelming.

\n

I'm not failing to type syntax because I don't understand the concept. Rather, I haven't attached all the floating pieces of data to an existing node yet and I'm trying not to lose them. Once everything is connected to an existing point of information I can proceed with the next step which is usually speaking or typing. While I often appreciate the attempts to be helpful the help often fails to address the point of conflict or 'slowness', my brain, not my code editor.

\n

Thinking is a from-scratch exercise most of the time, at least it is for me. In order to ponder a thing I have to build up a framework either from my memory or my immediate environment (what I can read, hear someone saying, etc) this construction of a framework often takes time and effort on my part and it may appear as though I'm not engaged in the immediate goings on (to some degree, I'm not) but without taking the time to do this I simply can't participate in a conversation, meeting, pairing-session, etc.

\n

What does it mean for how I work and how I'll work in the future? It means I probably won't try to learn new physical patterns to speed up my work. I find the majority of my work is cognitive. Additionally, I'm not certain working faster is to my benefit and probably not to the benefit of whatever I'm working on.

\n

Does this mean that shortcuts and key-combos are bad? Of course, that's what it means. Shortcut and key-combo users are bad people, they don't give their pets the love and attention they need, and they chew gum while talking in a conference call.

\n", + "date_published": "2023-01-30T00:00:00Z" + },{ + "id": "https://401matthall.com/posts/first_post/", + "url": "https://401matthall.com/posts/first_post/", + "title": "First!", + "content_html": "

First posts are the worst. They're the worst to write. They're the worst to read. They're usually brimming with enthusiam for the New Year because when else does someone start a blog or write a second First Post. Ugh.

\n

I'm not going to do that to you. I'm not going to do that to me. I want to give informal writing, with an attempt at doing so regularly, a try. I want somewhere to put my thoughts and opinions on things. I want somewhere to excercise my thoughts. That's really what I find writing useful for. Testing, challenging, clarifying my thoughts.

\n

Annnndd we nearly wandered back into the pretentious part of First Posts. That was close. When did we stop adding two spaces after closing punctuation in a sentence? I miss that other space.

\n", + "date_published": "2023-01-28T00:00:00Z" + } + ] +} diff --git a/docs/feed/index.html b/docs/feed/index.html index d1e1647..ab4d783 100644 --- a/docs/feed/index.html +++ b/docs/feed/index.html @@ -5,13 +5,28 @@ - 2023-01-30T00:00:00Z + 2024-02-10T00:00:00Z Matt Hall 401matthall@gmail.com + + I don't like writing code... + + 2024-02-10T00:00:00Z + https://401matthall.com/posts/i_dont_like_writing_code/ + <p>I've been struggling with this thought for a <em>long</em> time. I've been convinced that I don't like writing code. Perhaps, I'm not <em>meant</em> to write code. Other people seem to be so much more prolific at it. They generate reams of code and move through their work at a good clip. Observationally, I'm the 'problem', right?</p> +<p>Maybe. <em>Maybe.</em> However, upon some recent reflection I don't think I am. I'm not sure there <em>is</em> a problem.</p> +<p>I finally decided I don't like writing code like other people I know. In my previous post I noted that I find I often think obliquely compared to my coworkers. This has a direct impact on how I think about my code. I wrestle with my code, I struggle to surface clarity as much as possible in my code. If this sounds like an attempt at a brag it's not even remotely that. It's my thought process while I'm working.</p> +<p>When I write code I try to do a number of things: solve the stated problem (usually from a trouble ticket), make my changes simple to understand for someone else, and make my changes simple to change in the future. I actually consider the last two items far more important than the first. This is because I work on legacy projects. Projects that have been around for 10 years or more. Projects with geological layers of code. If you've worked in a project like this before you already know what I'm talking about. If you haven't worked in a project like this don't worry you will and it's a Learning Experience.</p> +<p>Legacy projects, in my experience, are all about maintenance. Code that's been fine and untouched for six years is, without warning, now failing in the most absurd way and it's not obvious why. It turns out what should've have been an unrelated change in another service affected the outcome of a calculation in the six year old code because they were coupled in an obscure way. After hours of work you find it, untangle it, and decouple those two pieces of code. Why were they coupled in the first place? Expediency, inexperience, inattention? All valid, it happens. It is nearly impossible to anticipate how code will be used in the future. I'm not working to future-proof my code, I'm working to make it simple to see how my code works and make it simple to change. The idea that Change is the only constant in software is becoming my personal mantra.</p> +<p>Maybe I do like writing code. I love building rules that define how a thing works and then codifying those rules into whatever language I'm working in. I love when my codified rules are simple, as simple I can make them. I love when for just a few minutes there's a moment of clarity in my mind and the code on my screen captures that. I love when I come back to code I've written years prior and it's still clear what it does and how I can change it, not because I <em>remember</em> the code but because it's as simple as I could make it at the time.</p> +<p><em>I love writing code.</em></p> + + + It's the cognition, stupid. @@ -23,7 +38,6 @@ <p>Thinking is a from-scratch exercise most of the time, at least it is for me. In order to ponder a thing I have to build up a framework either from my memory or my immediate environment (what I can read, hear someone saying, etc) this construction of a framework often takes time and effort on my part and it may appear as though I'm not engaged in the immediate goings on (to some degree, I'm not) but without taking the time to do this I simply can't participate in a conversation, meeting, pairing-session, etc.</p> <p>What does it mean for how <em>I</em> work and how I'll work in the future? It means I probably won't try to learn new physical patterns to speed up my work. I find the majority of my work is cognitive. Additionally, I'm not certain working faster is to my benefit and probably not to the benefit of whatever I'm working on.</p> <p>Does this mean that shortcuts and key-combos are bad? Of course, that's what it means. Shortcut and key-combo users are bad people, they don't give their pets the love and attention they need, and they chew gum while talking in a conference call.</p> -<p><a href="https://twitter.com/401matthall">@401matthall</a></p> diff --git a/docs/index.html b/docs/index.html index 42b55c2..8ec6a26 100644 --- a/docs/index.html +++ b/docs/index.html @@ -22,7 +22,7 @@ - + @@ -64,7 +64,32 @@

A blerg

Updates

-
+
+ +
@@ -72,7 +97,7 @@

Updates

It's the cognition, stupid.


-

Why shortcuts and complex key-combos don't save me time.

+

Why shortcuts and key-combos don't save me time.

diff --git a/docs/page-list/index.html b/docs/page-list/index.html index e0ea134..d4470d5 100644 --- a/docs/page-list/index.html +++ b/docs/page-list/index.html @@ -22,7 +22,7 @@ - + @@ -75,25 +75,41 @@

Sitemap Mesin Kasir Online

It's the cognition, stupid. - /tags/first/ - Tagged “first” + /tags/being-me/ + Tagged “being me” - /tags/autism/ - Tagged “autism” + /tags/code/ + Tagged “code” - /tags/being-me/ - Tagged “being me” + /tags/coding/ + Tagged “coding” + + + /tags/problem-solving/ + Tagged “problem solving” /tags/thinky-thoughts/ Tagged “thinky thoughts” + + /tags/autism/ + Tagged “autism” + + + /tags/first/ + Tagged “first” + / + + /posts/i_dont_like_writing_code/ + I don't like writing code... +
diff --git a/docs/posts/first_post/index.html b/docs/posts/first_post/index.html index 8b447b4..b4c34f6 100644 --- a/docs/posts/first_post/index.html +++ b/docs/posts/first_post/index.html @@ -22,7 +22,7 @@ - + diff --git a/docs/posts/i_dont_like_writing_code/index.html b/docs/posts/i_dont_like_writing_code/index.html new file mode 100644 index 0000000..c974a46 --- /dev/null +++ b/docs/posts/i_dont_like_writing_code/index.html @@ -0,0 +1,86 @@ + + + + + + + I don't like writing code... + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+
+
+

I don't like writing code...

+
+

At least not like 'everyone' else.

+
      + +

I've been struggling with this thought for a long time. I've been convinced that I don't like writing code. Perhaps, I'm not meant to write code. Other people seem to be so much more prolific at it. They generate reams of code and move through their work at a good clip. Observationally, I'm the 'problem', right?

+

Maybe. Maybe. However, upon some recent reflection I don't think I am. I'm not sure there is a problem.

+

I finally decided I don't like writing code like other people I know. In my previous post I noted that I find I often think obliquely compared to my coworkers. This has a direct impact on how I think about my code. I wrestle with my code, I struggle to surface clarity as much as possible in my code. If this sounds like an attempt at a brag it's not even remotely that. It's my thought process while I'm working.

+

When I write code I try to do a number of things: solve the stated problem (usually from a trouble ticket), make my changes simple to understand for someone else, and make my changes simple to change in the future. I actually consider the last two items far more important than the first. This is because I work on legacy projects. Projects that have been around for 10 years or more. Projects with geological layers of code. If you've worked in a project like this before you already know what I'm talking about. If you haven't worked in a project like this don't worry you will and it's a Learning Experience.

+

Legacy projects, in my experience, are all about maintenance. Code that's been fine and untouched for six years is, without warning, now failing in the most absurd way and it's not obvious why. It turns out what should've have been an unrelated change in another service affected the outcome of a calculation in the six year old code because they were coupled in an obscure way. After hours of work you find it, untangle it, and decouple those two pieces of code. Why were they coupled in the first place? Expediency, inexperience, inattention? All valid, it happens. It is nearly impossible to anticipate how code will be used in the future. I'm not working to future-proof my code, I'm working to make it simple to see how my code works and make it simple to change. The idea that Change is the only constant in software is becoming my personal mantra.

+

Maybe I do like writing code. I love building rules that define how a thing works and then codifying those rules into whatever language I'm working in. I love when my codified rules are simple, as simple I can make them. I love when for just a few minutes there's a moment of clarity in my mind and the code on my screen captures that. I love when I come back to code I've written years prior and it's still clear what it does and how I can change it, not because I remember the code but because it's as simple as I could make it at the time.

+

I love writing code.

+ + +
+
+ +
+
+
+
+ + +
+
+ + diff --git a/docs/posts/index.html b/docs/posts/index.html index e15fa04..7ba5484 100644 --- a/docs/posts/index.html +++ b/docs/posts/index.html @@ -22,7 +22,7 @@ - + @@ -52,7 +52,32 @@

401matthall

Updates

-
+
+ +
@@ -60,7 +85,7 @@

Updates

It's the cognition, stupid.


-

Why shortcuts and complex key-combos don't save me time.

+

Why shortcuts and key-combos don't save me time.

diff --git a/docs/posts/its_the_cognition_stupid/index.html b/docs/posts/its_the_cognition_stupid/index.html index 50797d5..45c065e 100644 --- a/docs/posts/its_the_cognition_stupid/index.html +++ b/docs/posts/its_the_cognition_stupid/index.html @@ -5,7 +5,7 @@ It's the cognition, stupid. - + @@ -15,14 +15,14 @@ - + - + @@ -51,7 +51,7 @@

401matthall

It's the cognition, stupid.

-

Why shortcuts and complex key-combos don't save me time.

+

Why shortcuts and key-combos don't save me time.


   

I encounter many wonderful, helpful people in my day-to-day. They love to share productivity tips and I'm always happy to hear them. I think on occasion people are offended to find out I haven't implemented any of their ideas or suggestions. My peers seem to be confused when I haven't adopted the latest shortcut, key-combo heavy IDE or Vim or Emacs (I'm absolutely not having an Emacs v Vim conversation). I'm always fascinated by how much focus is placed on physical action.

@@ -60,12 +60,11 @@

Why shortcuts

Thinking is a from-scratch exercise most of the time, at least it is for me. In order to ponder a thing I have to build up a framework either from my memory or my immediate environment (what I can read, hear someone saying, etc) this construction of a framework often takes time and effort on my part and it may appear as though I'm not engaged in the immediate goings on (to some degree, I'm not) but without taking the time to do this I simply can't participate in a conversation, meeting, pairing-session, etc.

What does it mean for how I work and how I'll work in the future? It means I probably won't try to learn new physical patterns to speed up my work. I find the majority of my work is cognitive. Additionally, I'm not certain working faster is to my benefit and probably not to the benefit of whatever I'm working on.

Does this mean that shortcuts and key-combos are bad? Of course, that's what it means. Shortcut and key-combo users are bad people, they don't give their pets the love and attention they need, and they chew gum while talking in a conference call.

-

@401matthall


-
diff --git a/docs/sitemap.xml b/docs/sitemap.xml index c4ea1fd..5a52ee2 100644 --- a/docs/sitemap.xml +++ b/docs/sitemap.xml @@ -27,17 +27,22 @@ - https://401matthall.com/tags/first/ + https://401matthall.com/tags/being-me/ 2023-01-30 - https://401matthall.com/tags/autism/ + https://401matthall.com/tags/code/ 2023-01-30 - https://401matthall.com/tags/being-me/ + https://401matthall.com/tags/coding/ + 2023-01-30 + + + + https://401matthall.com/tags/problem-solving/ 2023-01-30 @@ -46,8 +51,23 @@ 2023-01-30 + + https://401matthall.com/tags/autism/ + 2023-01-30 + + + + https://401matthall.com/tags/first/ + 2023-01-30 + + https://401matthall.com/ 2023-01-30 + + + https://401matthall.com/posts/i_dont_like_writing_code/ + 2024-02-10 + diff --git a/docs/tags/autism/index.html b/docs/tags/autism/index.html index d057eb5..c033b8d 100644 --- a/docs/tags/autism/index.html +++ b/docs/tags/autism/index.html @@ -22,7 +22,7 @@ - + @@ -60,7 +60,7 @@

#autism

It's the cognition, stupid.


-

Why shortcuts and complex key-combos don't save me time.

+

Why shortcuts and key-combos don't save me time.

diff --git a/docs/tags/being-me/index.html b/docs/tags/being-me/index.html index 6668b7a..71a8114 100644 --- a/docs/tags/being-me/index.html +++ b/docs/tags/being-me/index.html @@ -22,7 +22,7 @@ - + @@ -52,7 +52,32 @@

401matthall

#being me

-
+
+ +
@@ -60,7 +85,7 @@

#being me

It's the cognition, stupid.


-

Why shortcuts and complex key-combos don't save me time.

+

Why shortcuts and key-combos don't save me time.

diff --git a/docs/tags/code/index.html b/docs/tags/code/index.html new file mode 100644 index 0000000..801556d --- /dev/null +++ b/docs/tags/code/index.html @@ -0,0 +1,103 @@ + + + + + + + Tagged “code” + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/tags/coding/index.html b/docs/tags/coding/index.html new file mode 100644 index 0000000..9fdca05 --- /dev/null +++ b/docs/tags/coding/index.html @@ -0,0 +1,103 @@ + + + + + + + Tagged “coding” + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/tags/first/index.html b/docs/tags/first/index.html index 1999ecc..2a54911 100644 --- a/docs/tags/first/index.html +++ b/docs/tags/first/index.html @@ -22,7 +22,7 @@ - + diff --git a/docs/tags/index.html b/docs/tags/index.html index d54054f..f049d15 100644 --- a/docs/tags/index.html +++ b/docs/tags/index.html @@ -22,7 +22,7 @@ - + @@ -54,17 +54,26 @@

hashTags

diff --git a/docs/tags/problem-solving/index.html b/docs/tags/problem-solving/index.html new file mode 100644 index 0000000..061321f --- /dev/null +++ b/docs/tags/problem-solving/index.html @@ -0,0 +1,103 @@ + + + + + + + Tagged “problem solving” + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+
+ + diff --git a/docs/tags/thinky-thoughts/index.html b/docs/tags/thinky-thoughts/index.html index b3ad1cb..ec197ad 100644 --- a/docs/tags/thinky-thoughts/index.html +++ b/docs/tags/thinky-thoughts/index.html @@ -22,7 +22,7 @@ - + @@ -52,7 +52,32 @@

401matthall

#thinky thoughts

-
+
+ +
@@ -60,7 +85,7 @@

#thinky thoughts

It's the cognition, stupid.


-

Why shortcuts and complex key-combos don't save me time.

+

Why shortcuts and key-combos don't save me time.

diff --git a/posts/i_dont_like_writing_code.md b/posts/i_dont_like_writing_code.md new file mode 100644 index 0000000..78c93cc --- /dev/null +++ b/posts/i_dont_like_writing_code.md @@ -0,0 +1,26 @@ +--- +title: I don't like writing code... +description: At least not like 'everyone' else. +date: 2024-02-10 +tags: + - being me + - code + - coding + - problem solving + - thinky thoughts +layout: layouts/post.njk +--- + +I've been struggling with this thought for a *long* time. I've been convinced that I don't like writing code. Perhaps, I'm not *meant* to write code. Other people seem to be so much more prolific at it. They generate reams of code and move through their work at a good clip. Observationally, I'm the 'problem', right? + +Maybe. *Maybe.* However, upon some recent reflection I don't think I am. I'm not sure there *is* a problem. + +I finally decided I don't like writing code like other people I know. In my previous post I noted that I find I often think obliquely compared to my coworkers. This has a direct impact on how I think about my code. I wrestle with my code, I struggle to surface clarity as much as possible in my code. If this sounds like an attempt at a brag it's not even remotely that. It's my thought process while I'm working. + +When I write code I try to do a number of things: solve the stated problem (usually from a trouble ticket), make my changes simple to understand for someone else, and make my changes simple to change in the future. I actually consider the last two items far more important than the first. This is because I work on legacy projects. Projects that have been around for 10 years or more. Projects with geological layers of code. If you've worked in a project like this before you already know what I'm talking about. If you haven't worked in a project like this don't worry you will and it's a Learning Experience. + +Legacy projects, in my experience, are all about maintenance. Code that's been fine and untouched for six years is, without warning, now failing in the most absurd way and it's not obvious why. It turns out what should've have been an unrelated change in another service affected the outcome of a calculation in the six year old code because they were coupled in an obscure way. After hours of work you find it, untangle it, and decouple those two pieces of code. Why were they coupled in the first place? Expediency, inexperience, inattention? All valid, it happens. It is nearly impossible to anticipate how code will be used in the future. I'm not working to future-proof my code, I'm working to make it simple to see how my code works and make it simple to change. The idea that Change is the only constant in software is becoming my personal mantra. + +Maybe I do like writing code. I love building rules that define how a thing works and then codifying those rules into whatever language I'm working in. I love when my codified rules are simple, as simple I can make them. I love when for just a few minutes there's a moment of clarity in my mind and the code on my screen captures that. I love when I come back to code I've written years prior and it's still clear what it does and how I can change it, not because I *remember* the code but because it's as simple as I could make it at the time. + +*I love writing code.* diff --git a/posts/its_the_cognition_stupid.md b/posts/its_the_cognition_stupid.md index 700abec..d2d8e57 100644 --- a/posts/its_the_cognition_stupid.md +++ b/posts/its_the_cognition_stupid.md @@ -1,6 +1,6 @@ --- title: It's the cognition, stupid. -description: Why shortcuts and complex key-combos don't save me time. +description: Why shortcuts and key-combos don't save me time. date: 2023-01-30 tags: - autism @@ -20,5 +20,3 @@ Thinking is a from-scratch exercise most of the time, at least it is for me. In What does it mean for how *I* work and how I'll work in the future? It means I probably won't try to learn new physical patterns to speed up my work. I find the majority of my work is cognitive. Additionally, I'm not certain working faster is to my benefit and probably not to the benefit of whatever I'm working on. Does this mean that shortcuts and key-combos are bad? Of course, that's what it means. Shortcut and key-combo users are bad people, they don't give their pets the love and attention they need, and they chew gum while talking in a conference call. - -[@401matthall](https://twitter.com/401matthall) \ No newline at end of file