this post was submitted on 24 Mar 2024
1 points (100.0% liked)

Programmer Humor

19149 readers
1220 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 1 year ago
MODERATORS
 
top 23 comments
sorted by: hot top controversial new old
[–] vvvvv@lemmy.world 1 points 5 months ago (1 children)

print("x") is you want to screw your students.

[–] smokeybeef@lemm.ee 1 points 5 months ago* (last edited 5 months ago) (1 children)

screw your students

ಠ_ಠ

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

"Dr. Prof. Mann, I really didn't understand anything about UNIX on that last midterm. Can we go over how to touch and finger after class?"

[–] treechicken@lemmy.world 0 points 5 months ago (1 children)

It's obviously:

Traceback (most recent call last): File "./main.py", line 2, in AttributeError: 'str' object has no attribute 'length'

[–] theFibonacciEffect@feddit.de 0 points 5 months ago

Ah yes, all pseudocode is python

[–] dragontamer@lemmy.world 0 points 5 months ago* (last edited 5 months ago) (2 children)

Is it wrong that I'm stuck trying to figure out what language this is?

Trying to figure out what string.length and print(var) exist in a single language.... Not Java, not C# (I'm pretty sure its .Length, not length), certainly not C, C++ or Python, Pascal, Schme or Haskell or Javascript or PHP.

[–] skulbuny@sh.itjust.works 0 points 5 months ago (1 children)
[–] breadsmasher@lemmy.world 0 points 5 months ago (1 children)

doesnt have print nor allow variable declaration without keywords

[–] bleistift2@feddit.de 0 points 5 months ago

Sure you can write foo = 3 in JavaScript. It’s a global variable and can be referenced as either foo or window.foo.

[–] Minotaur@lemm.ee 0 points 5 months ago (1 children)

I’m very much guessing that this is just supposed to be a type of pseudocode given the context and vagueness of it.

It’s a big reason why I really dont like pseudocode as instruction to people learning the basics of what programming is. It made more sense 20 years ago when programming languages were on a whole a lot more esoteric and less plain text, but now with simple languages like Python there’s simply little reason to not just write Python code or whatever.

I took an intro to programming class in College and the single thing I got dinged on the most is “incorrect pseudocode”, which was either too formal and close to real code or too casual and close to plain English.

It’s not a great system. We really need to get rid of it as a practice

[–] nxdefiant@startrek.website 0 points 5 months ago (1 children)

Especially since python is right there.

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

I mean once you get beyond bash-like scripts python is esoteric as fuck, adding oop to what is essentially a shell is a terrible idea

That said, there's plenty of languages with good syntax that is still good when you get into more complex stuff (modern C#, scala, kotlin and more)

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

I disagree. Python is not "esoteric" when making objects. The syntax is certainly easier than in Java.

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

The syntax is certainly easier than Java

And VisualBasic's syntax is easier than COBOL, but this isn't a competition to make the least offensive heap of putrid garbage, so why does it matter?

Python works just fine for basic scripts, frankly it's amazing for it, but oop and functional programming is so incredibly obviously badly shoehorned in that huge swathes needs scrapping and version 4 releasing

[–] tryptaminev@feddit.de 0 points 5 months ago* (last edited 5 months ago)

Then help me understand please. What do you mean by "esoteric" in regards to oop in Python compared to a language better suited for it?

[–] silasmariner@programming.dev 0 points 5 months ago* (last edited 5 months ago) (1 children)

They missed out the context code:

trait DoW { def length: FiniteDuration }
object Monday extends DoW { override def length = 24.hours }
...
implicit def toDoW(s: String): DoW = s match {
 case "Monday" => Monday
...
}
var day: DoW = _

(Duration formatting and language identification are left as an exercise for the reader)

[–] Magnetar@feddit.de 1 points 5 months ago (1 children)
[–] silasmariner@programming.dev 0 points 5 months ago (1 children)

Implicit was too much of a give away wasn't it?

[–] Magnetar@feddit.de 0 points 5 months ago* (last edited 5 months ago)

I've literally seen code that does something awfully similar. But you could have used an Enumeration.

Fuck, I think you just gave me an idea for an issue in my code that has bugged me for days.

[–] cows_are_underrated@feddit.de 0 points 5 months ago

It is indeed wrong. The correct answer would be 24.

[–] ChaoticNeutralCzech@feddit.de 0 points 5 months ago
[–] lthlnkso@programming.dev 0 points 5 months ago (1 children)

I think this is a good question and answer in the sense that it reveals a fundamental misunderstanding on the part of the student - exactly what you hope an exam would do! (Except for how this seems to combine javascript's .length and python's print statement - maybe there is a language like this though - or 'print' was a javascript function defined elsewhere).

This reminds me once of when I was a TA in a computer science course in the computer lab. Students were working on a "connect 4" game - drop a token in a column, try to connect 4. A student asked me, while writing the drop function, if he would have to write code to ensure that the token "fell" to bottom of the board, or if the computer would understand what it was trying to do. Excellent question! Because the question connects to a huge misunderstanding that the answer has a chance to correct.

[–] agressivelyPassive@feddit.de 0 points 5 months ago

Teaching complete "clean slates" is a great way to re-evaluate your understanding.

I've had to teach a few apprentices and while they were perfectly reasonable and bright people, they had absolutely no idea, how computers worked internally. It's really hard to put yourself in the shoes of such persons if it's been too long since you were at this point of ignorance.