Author Topic: What is Code?  (Read 2468 times)

0 Members and 1 Guest are viewing this topic.

Offline The E

  • He's Ebeneezer Goode
  • 213
  • Nothing personal, just tech support.
    • Steam
    • Twitter
So this article recently entered my newsfeeds. It's really long, but reading it is very much recommended if you ever wanted to know just what it is that software developers do all day, why we do things the way we do them, and why there are sometimes decades-long flamewars over the correct way to position opening and closing braces.

To quote the introduction:
Quote
Software has been around since the 1940s. Which means that people have been faking their way through meetings about software, and the code that builds it, for generations. Now that software lives in our pockets, runs our cars and homes, and dominates our waking lives, ignorance is no longer acceptable. The world belongs to people who code. Those who don’t understand will be left behind.

This issue comprises a single story devoted to ­demystifying code and the culture of the people who make it. There’s some technical language along with a few pretty basic mathematical concepts. There are also lots of solid jokes and lasting insights. It may take a few hours to read, but that’s a small price to pay for adding decades to your career.
If I'm just aching this can't go on
I came from chasing dreams to feel alone
There must be changes, miss to feel strong
I really need lifе to touch me
--Evergrey, Where August Mourns

 

Offline Fury

  • The Curmudgeon
  • 213
I disagree. Knowing code is no more necessary than knowing how your freezer, washing machine or car works.

 
I'd argue that drivers should know how a car works, at least at a level where they can tell what's potentially broken from the sound the car makes or the way in which it's "behaving".

EDIT: And ESPECIALLY so if it's a central part of their working environment.

 

Offline NGTM-1R

  • I reject your reality and substitute my own
  • 213
  • Syndral Active. 0410.
The world belongs to people who understand RF transmitters, and the rest of you will be left behind!

Or not.
"Load sabot. Target Zaku, direct front!"

A Feddie Story

 

Offline Flaser

  • 210
  • man/fish warsie
The world belongs to people who understand RF transmitters, and the rest of you will be left behind!

Or not.

Actually, if you asked people about what radio is, while most won't give you a scientifically accurate answer they'll give you a description that will cover some of its basic properties well. I'm afraid that same can't be said for software while its use is increasingly as common as breathing air.
"I was going to become a speed dealer. If one stupid fairytale turns out to be total nonsense, what does the young man do? If you answered, “Wake up and face reality,” you don’t remember what it was like being a young man. You just go to the next entry in the catalogue of lies you can use to destroy your life." - John Dolan

 

Offline Dragon

  • Citation needed
  • 212
  • The sky is the limit.
I'd argue that drivers should know how a car works, at least at a level where they can tell what's potentially broken from the sound the car makes or the way in which it's "behaving".

EDIT: And ESPECIALLY so if it's a central part of their working environment.
One very much can drive a car with only rudimentary knowledge of its workings, but you'll pay through the nose for every little failure. A loose nut once set me back 50 zloty (granted, 30 was for replacing the hydraulics oil that leaked through it, but still). And don't even think about buying a used car without a good idea of how it's supposed to work.

I'd say, it's similar with code (and computers in general). You don't have to bother with how the code actually works. But if you don't, you'll be stuck with what you're given. If you do know what you're doing, you can improve performance and usability of many programs by a large margin. Not to mention you're not helpless when something fails. Assembling a PC out of components is also cheaper (for the same performance) as buying a prebulit one (not to mention infinitely more fun :) ). You don't actually have to know any programming languages, mind you, but rather the underlying principles that all of them work upon.

 

Offline Klaustrophobia

  • 210
  • the REAL Nuke of HLP
    • North Carolina Tigers
Speaking as one who knows far more about code than cars, you get FAR less benefit out of knowing how code works than how your car works as an everyday user.  There's almost nothing in day-to-day computer use that knowledge of code will improve.  You can't bust open the hood of your broken program and use your knowledge of programming to fix it.
I like to stare at the sun.

 
Yeah, you're much better served by knowing how to use your OS and applications than knowing how they work inside.
The good Christian should beware of mathematicians, and all those who make empty prophecies. The danger already exists that the mathematicians have made a covenant with the devil to darken the spirit and to confine man in the bonds of Hell.

  

Offline AdmiralRalwood

  • 211
  • The Cthulhu programmer himself!
    • Skype
    • Steam
    • Twitter
Speaking as one who knows far more about code than cars, you get FAR less benefit out of knowing how code works than how your car works as an everyday user.  There's almost nothing in day-to-day computer use that knowledge of code will improve.  You can't bust open the hood of your broken program and use your knowledge of programming to fix it.
:nervous: ...I do this all the time.
Ph'nglui mglw'nafh Codethulhu GitHub wgah'nagl fhtagn.

schrödinbug (noun) - a bug that manifests itself in running software after a programmer notices that the code should never have worked in the first place.

When you gaze long into BMPMAN, BMPMAN also gazes into you.

"I am one of the best FREDders on Earth" -General Battuta

<Aesaar> literary criticism is vladimir putin

<MageKing17> "There's probably a reason the code is the way it is" is a very dangerous line of thought. :P
<MageKing17> Because the "reason" often turns out to be "nobody noticed it was wrong".
(the very next day)
<MageKing17> this ****ing code did it to me again
<MageKing17> "That doesn't really make sense to me, but I'll assume it was being done for a reason."
<MageKing17> **** ME
<MageKing17> THE REASON IS PEOPLE ARE STUPID
<MageKing17> ESPECIALLY ME

<MageKing17> God damn, I do not understand how this is breaking.
<MageKing17> Everything points to "this should work fine", and yet it's clearly not working.
<MjnMixael> 2 hours later... "God damn, how did this ever work at all?!"
(...)
<MageKing17> so
<MageKing17> more than two hours
<MageKing17> but once again we have reached the inevitable conclusion
<MageKing17> How did this code ever work in the first place!?

<@The_E> Welcome to OpenGL, where standards compliance is optional, and error reporting inconsistent

<MageKing17> It was all working perfectly until I actually tried it on an actual mission.

<IronWorks> I am useful for FSO stuff again. This is a red-letter day!
* z64555 erases "Thursday" and rewrites it in red ink

<MageKing17> TIL the entire homing code is held up by shoestrings and duct tape, basically.

 

Offline Klaustrophobia

  • 210
  • the REAL Nuke of HLP
    • North Carolina Tigers
By 'your' program I meant one you bought and installed, not one you made yourself.  I realize that wasn't clear. 
I like to stare at the sun.

 

Offline karajorma

  • King Louie - Jungle VIP
  • Administrator
  • 214
    • Karajorma's Freespace FAQ
If you mainly use open source software, the dividing line becomes less clear. I assume that is the joke Ralwood was making. :D
Karajorma's Freespace FAQ. It's almost like asking me yourself.

[ Diaspora ] - [ Seeds Of Rebellion ] - [ Mind Games ]

 

Offline AdmiralRalwood

  • 211
  • The Cthulhu programmer himself!
    • Skype
    • Steam
    • Twitter
By 'your' program I meant one you bought and installed, not one you made yourself.  I realize that wasn't clear. 
I didn't mean one I made myself, either.

I also wasn't making a joke; I have literally decompiled a closed-source program to fix a bug that was pissing me off.
Ph'nglui mglw'nafh Codethulhu GitHub wgah'nagl fhtagn.

schrödinbug (noun) - a bug that manifests itself in running software after a programmer notices that the code should never have worked in the first place.

When you gaze long into BMPMAN, BMPMAN also gazes into you.

"I am one of the best FREDders on Earth" -General Battuta

<Aesaar> literary criticism is vladimir putin

<MageKing17> "There's probably a reason the code is the way it is" is a very dangerous line of thought. :P
<MageKing17> Because the "reason" often turns out to be "nobody noticed it was wrong".
(the very next day)
<MageKing17> this ****ing code did it to me again
<MageKing17> "That doesn't really make sense to me, but I'll assume it was being done for a reason."
<MageKing17> **** ME
<MageKing17> THE REASON IS PEOPLE ARE STUPID
<MageKing17> ESPECIALLY ME

<MageKing17> God damn, I do not understand how this is breaking.
<MageKing17> Everything points to "this should work fine", and yet it's clearly not working.
<MjnMixael> 2 hours later... "God damn, how did this ever work at all?!"
(...)
<MageKing17> so
<MageKing17> more than two hours
<MageKing17> but once again we have reached the inevitable conclusion
<MageKing17> How did this code ever work in the first place!?

<@The_E> Welcome to OpenGL, where standards compliance is optional, and error reporting inconsistent

<MageKing17> It was all working perfectly until I actually tried it on an actual mission.

<IronWorks> I am useful for FSO stuff again. This is a red-letter day!
* z64555 erases "Thursday" and rewrites it in red ink

<MageKing17> TIL the entire homing code is held up by shoestrings and duct tape, basically.

 

Offline qwadtep

  • 28
Existing code aside, there's a pretty big gap in productivity between someone who knows how to set up a macro or batch file and someone who doesn't.