this post was submitted on 25 May 2024
365 points (98.4% liked)

Programmer Humor

32371 readers
526 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS
 
top 35 comments
sorted by: hot top controversial new old
[–] ImplyingImplications@lemmy.ca 218 points 5 months ago (5 children)

See your problem is you're editing the code until it passes the tests. It's way easier if you edit the tests until it passes the code.

[–] TragicNotCute@lemmy.world 109 points 5 months ago (1 children)

This is what they mean by test driven development.

[–] Zagorath@aussie.zone 5 points 5 months ago
[–] SkyNTP@lemmy.ml 36 points 5 months ago

Can't tell if you are joking. I know a lot of junior developers who think this is a legitimate solution.

[–] souperk@reddthat.com 24 points 5 months ago (3 children)

Unless you are using groovy (jenkins), then you are running the pipeline to find syntax errors.

[–] davel@lemmy.ml 15 points 5 months ago

This comment is triggering and it should have a NSFW spoiler.

[–] Johanno@feddit.de 5 points 5 months ago (1 children)

I hate groovy, gradle and Jenkins!

I don't know if sth. Else is better but I can confirm that shit is horrific

[–] swayevenly@lemm.ee 1 points 5 months ago (1 children)
[–] Johanno@feddit.de 0 points 5 months ago (1 children)

Horrible scripting language. Even worse than python. Close to Javascript

[–] juicy@lemmy.today 4 points 5 months ago (1 children)

If you don't think Python is a good scripting language, what is a good scripting language in your opinion? Bourne Shell? VBScript? PHP?

[–] Johanno@feddit.de 2 points 5 months ago (1 children)

I like python and if you use typing it is awesome.

I like kotlin script too. But normal languages are better than scripting languages usually.

[–] souperk@reddthat.com 2 points 5 months ago* (last edited 5 months ago)

Typing in python leaves a lot to be desired... Being looking at peps for quite some time, but it's really hard for the language to make progress without breaking compatibility.

Hopefully at some point MOJO becomes mature enough to use in a professional setting.

[–] savedbythezsh@sh.itjust.works 4 points 5 months ago (2 children)

FYI, Jenkins has an endpoint to validate the pipeline without running it, and there's a VSCode extension to do this without leaving the editor: https://www.jenkins.io/blog/2018/11/07/Validate-Jenkinsfile/

[–] souperk@reddthat.com 2 points 5 months ago (1 children)

I am not using Jenkins anymore but this seems like a lifesaver, thanks for sharing

[–] savedbythezsh@sh.itjust.works 1 points 5 months ago

I use Jenkins for work, unfortunately, so I have plenty of experience

[–] Ackward@lemmy.world 1 points 5 months ago

Only for declarative pipelines, forget it if you use scripted ones.

[–] mynachmadarch@kbin.social 7 points 5 months ago

I just replace all my tests with noop codes. Quick, easy, passes.

[–] nexussapphire@lemm.ee 4 points 5 months ago

If true == true pass!

[–] Thcdenton@lemmy.world 96 points 5 months ago
[–] nyankas@lemmy.ml 36 points 5 months ago (1 children)

You just need to learn from big automakers and use Volkswagen!

[–] Mixel@feddit.de 5 points 5 months ago

Sir, you just made my day thank you!

[–] Pxtl@lemmy.ca 36 points 5 months ago* (last edited 5 months ago) (1 children)

DevOps is bad because for some reason we've decided to invent new programming languages that you can't debug locally and so you have to keep pushing commits to the pipeline server. It's bullshit.

"Why do you write all your pipelines as shell scripts and then wrap them in yaml at the very end"?

Because then I can run them locally quickly and test individual components of them instead of "edit, commit, push, wait 10 minutes, read error message, repeat".

[–] biribiri11@lemmy.ml 13 points 5 months ago (1 children)

FWIW, gitlab-runner exec and earthly exist for running tests locally, with others things like nektos/act for GHA as a 3rd party solution. I’ll never get used to yaml, though, all my pipelines are mostly shell scripts. Using a markup language as a programming language was definitely one of the decisions of all time.

[–] kugiyasan@lemmy.one 2 points 5 months ago (1 children)

Gitlab-runner exec and act are great tools, but this goes out of the window as soon as the cloud hosting service is a little less intelligent (looking at you, azure DevOps, who removed the hack that let pipeline run locally in 2019)

[–] biribiri11@lemmy.ml 1 points 5 months ago

That’s why earthly exists. Now you can run your pipeline on a container with a “familiar syntax” inside another container with a “familiar syntax” inside of a “reproducible, easy-to-use” VM provisioned on top of probably KVM, as Torvalds intended

[–] Potatos_are_not_friends@lemmy.world 33 points 5 months ago (1 children)

How are you bad?

You got a green verification checkmark on the same day! That's a win!

[–] kometes@lemmy.world 1 points 5 months ago

My build environment has 3 jillion unneeded builds going. I am lucky to get 2 build failures in a single day.

[–] beeng@discuss.tchncs.de 28 points 5 months ago (1 children)

Local tests are less shameful. Imagine if you had a Red X online for every compiler or syntax error whilst developing.

So it is.

[–] YerbaYerba@lemm.ee 10 points 5 months ago

This is what it looks like when I'm working on Jenkin files.

[–] SpaceNoodle@lemmy.world 14 points 5 months ago

And only one of those runs has complete logs containing the actual error causing the failure.

[–] Agent641@lemmy.world 6 points 5 months ago (1 children)
[–] alyth@lemmy.world 6 points 5 months ago

development build of call of duty black ops

[–] KingThrillgore@lemmy.ml 5 points 5 months ago

If the build doesn't fit, you must...rerun the test suite locally

[–] mumblerfish@lemmy.world 5 points 5 months ago

Come on! You need those red crosses to know it fails as it should. Thats what I would say they are there for :-)

[–] mynamesnotrick@lemmy.zip 3 points 5 months ago

As a fellow jenkins miner. I know this red (x) all too well.