The Trouble With Coding Is...

Popularity is for People Who Something Witty

The problem with code is it's all just a big giant <expletive> hack.

There.  I said it.

The problem with code is how we write code.  It's not what the code does.  In fact, the fact that we focus on what code does highlights that it's not just solvable, it's possible to approach.

Figuring out how we write code and what's wrong with it?  It's like talking about diet.  We don't have a control, so we can't science things up about either diet or how we code.  We assume that how we code is the way it's intended to be, because we've mostly always done it that way.

But it's a total frickin' hack.  I'd love to say I knew that yesterday or three years ago when I started writing Awesome Sauce Java, back when it was just a language for Calc Me Sum 2C.  But then it started to get to me and I didn't know what it was that was getting to me, but I knew it was the code.  Years ago, I had the idea to start building an environment that would greatly improve throughput and help me manage the myriad details surrounding code.  Oh!  I know.  Check this next paragraph out:

What is code?  And what other things get associated with code?  Well, there's the code itself.  Then there's the documentation that describes what code does.  Then there are comments that serve as hints, notes, or important warnings about implementation details within the code.  There are dates when the code was written.  There's history about modifications and how the code has evolved.  The code is associated with tasks, project management schedules, defects, tests, regression tests, stress tests, and all the history associated with test runs.  There's localization detail within code.  There are exceptions that are capable of altering the control flow.  The code runs within a thread, or it creates its own thread of execution, is immutable or not, and may need to run on specific processors in specific ways.

A function or method implementation is stuffed full of complexity.  It's a rat's nest of complexity.  There's so much complexity on the "just writing code side of things" that we just look at it, go head down, and start coding the easy part - whatever it is we're trying to build.

I've been struggling with unraveling the rat's nest.  I think I have some good things cooking, but I'm willing to try and make mistakes in hopes of learning enough to refocus, retool, redirect and re-release as many times and for as many iterations as I get or it takes to start producing tools that help programmers work faster, while improving communication among all team members, so code gets produced faster and users get tools that continuously empower them to get more done in less time.

Software engineers are like the engineers of army ants.  We're supposed to be able to respond immediately to problems, needs, and issues that could directly affect our survival.  We're going to slow because everything we deal with is moving at the speed of light.  Or the speed of life.  Or the complexity is huge and our tools, though truly amazing, are still way too clunky and slow, plus they don't empower evolution.

Awesome Sauce Java with Hot Sauce is being designed to be real-time, live and beyond anything we've seen.  Not because I'm any great shakes.  But because I enjoy inventing, have no money, no friends, and a 9-year-old computer with Linux and NetBeans installed and have spent 15 alone years designing one little piece at a time.  Each piece building on the previous, until I realized it fell over because a part wasn't designed right.  Then I looked around, realized I still didn't have any money, friends, or time with my son, and took another lap on the design.

The only lights that are on in my mind are related to whatever I can read or write.  It's like my whole world takes place at a table with a light over it.

This version of Awesome Sauce Java with Hot Sauce, on top of the JVM, is the one that will allow me to release it for public consumption.  I hope for good things with it for us.  Whether that means it's a stepping stone for other ideas or a tool people find to be helpful nobody knows.  I just hope we start going faster, because I fear we're not solving problems fast enough.  Not because we're not going fast, but because one bad day on earth could require us to push harder and study faster than we ever have, just to survive as a species.  We're a blob of chemicals that's murdering life wherever we go. That's not a sign of health. It's a sign of psychosis.

Have a great day!

Michael
2/26/18

Comments

Popular posts from this blog

I Was Studying Exceptions, But Got Confused, So I Luckily Designed The Code Editor Instead

Just a Short Update

A Day Away From a Glowing Screen