this post was submitted on 06 Jan 2024
199 points (95.0% liked)

Asklemmy

43945 readers
638 users here now

A loosely moderated place to ask open-ended questions

Search asklemmy ๐Ÿ”

If your post meets the following criteria, it's welcome here!

  1. Open-ended question
  2. Not offensive: at this point, we do not have the bandwidth to moderate overtly political discussions. Assume best intent and be excellent to each other.
  3. Not regarding using or support for Lemmy: context, see the list of support communities and tools for finding communities below
  4. Not ad nauseam inducing: please make sure it is a question that would be new to most members
  5. An actual topic of discussion

Looking for support?

Looking for a community?

~Icon~ ~by~ ~@Double_A@discuss.tchncs.de~

founded 5 years ago
MODERATORS
 

I've always been curious as to what "normal" people think programming is like. The wildest theory I've heard is "typing ones and zeroes" (I'm a software engineer)

you are viewing a single comment's thread
view the rest of the comments
[โ€“] Shdwdrgn@mander.xyz 10 points 10 months ago (1 children)

Imagine this... line numbers are no longer a thing. ๐Ÿ˜† Yeah I learned programming in the 80's as well, the Sinclair ZX81 was my first computer. These days a large number of languages, both compiled and parsed, are based around C so it's pretty easy to jump around a lot.

[โ€“] southsamurai@sh.itjust.works 2 points 10 months ago (1 children)

Okay, no line hikers numbers. But, how the hell are things carried out in order? Did numbering just get replaced by another system, or did it get thrown out as unnecessary to coding as a whole?

[โ€“] Shdwdrgn@mander.xyz 3 points 10 months ago* (last edited 10 months ago) (1 children)

Yeah line numbers got thrown out as a whole. Code is still followed in sequential order, but instead of GOTO we now have functions that we call for reusable operations, and those functions can have parameters sent to them. So like you can set up a function that adds a line of text to a log file, then call the function with a variable containing that text. I honestly can't remember if we had something like that in the early versions of BASIC. Overall I felt it made things a lot easier when line numbers were dropped, especially when you wanted to add more code in the middle of an existing block so you weren't forced to renumber everything to make room.

I think the biggest change to wrap my head around was the elimination of the GOTO statement. This seemed like such a mistake at first, but it turns out that if you wrap things within conditional expressions (if-then and do-while are typical) then you really don't need GOTO jumping all over the place and it tends to keep specific operations more self-contained which leads to the code being easier to read through.

If you want to see some examples of more modern code, take a look at something for PHP. This code felt most at home to me when I moved away from BASIC and is one of the few that still uses the $ symbol to denote variable names. Loops and conditionals are enclosed in {curly braces} so instead of the old for i$=1 to 5:<code here>:next loop you would see something like for($i=1; $i<=5; $i++){<code here>} and you just add as many lines as you need in between them. This is where indenting your code became popular, because if you have a lot of nested conditionals/loops it's easy to lose your place. The indents give you a reference of which code is part of which loops. Overall things have changed quite a bit, but at the core of it your code is still following a specific order to get things done.

[โ€“] southsamurai@sh.itjust.works 2 points 10 months ago

That is cool as hell. Thank you very much for that :)