this post was submitted on 19 Jul 2023
1102 points (98.4% liked)

Programmer Humor

32453 readers
666 users here now

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

Rules:

founded 5 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 39 points 1 year ago (5 children)

I wonder how many in that class will ever need to think about multitape Turing machines ever again.

[–] [email protected] 49 points 1 year ago (1 children)

The point of these lectures is mostly not to teach how to work with Turing machines, it is to understand the theoretical limits of computers. The Turing machine is just a simple to describe and well-studied tool used to explore that.

For example, are there things there that cannot be computed on a computer, no matter for how long it computes? What about if the computer is able to make guesses along the way, can it compute more? Because of this comic, no — it would only be a lot faster.

Arguably, many programmers can do their job even without knowing any of that. But it certainly helps with seeing the big picture.

[–] riskable 7 points 1 year ago (2 children)

Arguably, a much more important thing for the students to learn is the limits of humans. The limits of the computer will never be a problem for 99% of these students or they'll just learn on the job the types of problems they're good at solving and the ones that aren't.

[–] [email protected] 10 points 1 year ago (1 children)

The limits of computers would be the same as the limits for humans. We have no reason to think the human brain has a stronger computation power than a Turing machine.

So, in a way, learning about the limits of computers is the exact same as learning the limits of humans.

But also, learning what the limits of computers are is absolutely relevant. You get asked to create an algorithm for a problem and its useful to be able to figure out whether it actually is solvable, or how fast it theoretically can be. Avoids wasting everyone's time trying to build an infinite loop detector.

[–] riskable 5 points 1 year ago (1 children)

The "limits of humans" I was referring to were things like:

  • How long can you push a deadline before someone starts to get really mad
  • How many dark patterns you can cram into an app before the users stop using it
  • The extremes of human stupidity

👍

[–] [email protected] 5 points 1 year ago* (last edited 1 year ago)

..none of which would be relevant for most people working in back-end, which would be most people that take compsci.

I would hate to go to a compsci study and learn management instead. It's not what I signed up for.

University also shouldn't just be a job training program.

[–] [email protected] 6 points 1 year ago

Two govt spooks are hunting a dangerous fugitive who is also a humanities graduate. He escapes into a sprawling maze of tunnels. "It's hopeless," one of the spooks says. But the other simply says, "Watch." then proclaims loudly, "studying linear algebra is important because of its use in stochastic processes and image manipulation." Before he finishes the sentence, the fugitive emerges back out the tunnel and shouts, "but what's even more important --" and is immediately knocked unconscious and taken for questioning

[–] [email protected] 22 points 1 year ago

I didn't go to university, because I wanted to learn useful stuff, but because I'm curiousity driven. There is so much cool stuff and it's very cool to learn it. That's the point of university that it prepares you for a scientific career where the ultimate goal is knowledge not profit maximisation (super idealistically).

Talking about Turing Machines it's such a fun concept. People use this to build computers out of everything - like really - it became a Sport by this point. When the last Zelda was Released the first question for many was, if they can build a computer inside it.

Does it serve a practical purpose? At the end of the day 99% of the time the answer will be no, we have computing machines built from transistors that are the fastest we know of, lets just use these.

But 1% of the time people recognize something useful... hey we now found out in principle one can build computers from quantum particles... we found an algorithm that could beat classical computers in a certain task... we found a way to actually do this in reality, but it's more proof of concept (15 = 5×3)... and so on

[–] [email protected] 8 points 1 year ago (1 children)

Never used a Turing machine, but I have a project that generates NFAs and converts them to DFAs so they run faster.

[–] riskable 3 points 1 year ago (1 children)

How does one convert a No Fear Article into a Definitely Fear Article?

[–] [email protected] 3 points 1 year ago

I thought it was Non-Fungible Articles and Decentralised Federated Articles

[–] [email protected] 3 points 1 year ago (1 children)

Ram is literally just the tape. Modern computers are just multitape turing machines, albeit the tape ends at some point.

[–] [email protected] 2 points 1 year ago

Technically a multitape Turing machine is a Turing machine.

[–] [email protected] 0 points 1 year ago

Only the ones who don’t grow up to be total code monkeys