DEV Community

Discussion on: Learning Some Computer Science will Make You a Better (And More Expensive) Engineer

Collapse
 
mburszley profile image
Maximilian Burszley
  1. Bytecode is still run by an interpreter (such as V8)
  2. Python is written in C for the standard implementation (it's a bit ironic you use this example and then say it's probably written in C++)
  3. Threading does not mean multi-core
Collapse
 
byrro profile image
Renato Byrro • Edited

I would also suggest maybe an edit to clarify your thoughts on the Threading part, Lane.

Might confuse people. Instead of threading, maybe use "concurrency". Instead of "multiple cores", maybe use "handling multiple jobs/tasks". This would make it more generalistic (if that word even exists).

Threading will handle jobs concurrently (quickly switching between one and another, when it makes sense - e.g. IO-bound tasks).

But threads won't help with parallelization (performing multiple tasks simultaneously). In this case, we really need multiple processors, as you mentioned.

Collapse
 
wagslane profile image
Lane Wagner
  1. True, but out of scope for the article.
  2. True. I used probably because I wasn't referring to anything specific
  3. Good point, although the take advantage of the some of the biggest differences between threading and async operations, you will need multiple instructions running at the same time.
Collapse
 
mburszley profile image
Maximilian Burszley

multiple instructions running at the same time

That would be multi-processing. Multi-threading isn't necessarily concurrent and does not necessarily take advantage of multiple cores or processors (i.e. implementation-specific detail)