this post was submitted on 03 Apr 2024
1314 points (98.9% liked)

Science Memes

14164 readers
2439 users here now

Welcome to c/science_memes @ Mander.xyz!

A place for majestic STEMLORD peacocking, as well as memes about the realities of working in a lab.



Rules

  1. Don't throw mud. Behave like an intellectual and remember the human.
  2. Keep it rooted (on topic).
  3. No spam.
  4. Infographics welcome, get schooled.

This is a science community. We use the Dawkins definition of meme.



Research Committee

Other Mander Communities

Science and Research

Biology and Life Sciences

Physical Sciences

Humanities and Social Sciences

Practical and Applied Sciences

Memes

Miscellaneous

founded 2 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] dustyData@lemmy.world 65 points 1 year ago (6 children)

As a professor said, most programming languages don't care about readability and whitespace. But we care because humans need it to parse meaning. Thus, write code for people, not for the machine. Always assume that someone with no knowledge of the context will have to debug it, and be kind to them. Because that someone might be you in six months when you have completely forgotten how the code works.

[–] zalgotext@sh.itjust.works 18 points 1 year ago

Exactly. You read code way more times than you write it, so it makes all the sense in the world to prioritize readability.

[–] Swedneck@discuss.tchncs.de 13 points 1 year ago

Source code is for humans, then the compiler turns it into code for machines.

[–] oce@jlai.lu 7 points 1 year ago (1 children)

Python forcing end of line and tabs kinda does. Add Black auto-formatter and it's pretty good.

[–] frezik@midwest.social 1 points 1 year ago (1 children)

I've seen too many Python devs write out complex statements all on one crammed up line. Including some that are in the main docs.

Enforced whitespace is just one aspect of readable code. There are many others, and Python is no better at enforcing those than any other language.

[–] oce@jlai.lu 2 points 1 year ago

That would probably make very long lines and black would automatically add returns to line with proper indentations. But it has a a limit for sure. If you chain many list comprehensions it's going to be a mess.

[–] rockerface@lemm.ee 6 points 1 year ago* (last edited 1 year ago) (1 children)

Yep, if you're writing code for a machine, just do it in binary to save compilation time (/s just in case). Also, you in six months will indeed be someone with no knowledge of the context. And every piece of code you think you write for one-time use is guaranteed to be reused every day for the next 5 years

[–] Mic_Check_One_Two@reddthat.com 20 points 1 year ago

And every piece of code you think you write for one-time use is guaranteed to be reused every day for the next 5 years

[–] feinstruktur@lemmy.ml 5 points 1 year ago

This. Always be kind to your future self.

Yeah I totally agree. You can minimize and optimize as part of your build procedure/compilation but the source code should be as readable as possible for humans.