7 ms·
Programming Languages in 15 Minutes [video]
- myroon5 8y agoI thought this would be a comparison of different specific programming languages from the title. It's actually an overview of broad programming concepts that I might forward to friends who express an interest in learning about programming. Does anyone have any similar resources they recommend?
- sago 8y agoA booklet I wrote for the teachers at my wife's school, when they had to begin to teach programming concepts to little ones: http://games.oojits.com/media/pdf/programming-food-2013-12-05.pdf http://games.oojits.com/media/pdf/programming-food-2013-12-0... It is more basic than the video in this post. It was well received, but I didn't do anything more with it.
- tyingq 8y agoThat's quite good, and a terrific analogy. Thanks for sharing it. If someone were to turn that into a video, it might be useful for even younger kids.
- thethirdone 8y agoThe analogy of programming vs cooking is common, but thanks for really developing and writing out the idea. > Unlike a human cook leafing through a book, computers don’t mind lots of cross-referencing. (page 6) Not really relevant to the target audience, but computers do mind excessive cross referencing. Having many function calls in a hot loop will hurt performance compared to if they were inlined. I think the analogy of cookbooks and how much cross-referencing they do probably works well to explain optimally inlining at the compiler level (balance of program size versus speed).
- obphusckate 8y agoThat's really good - ever thought of adding a creative commons license to it so that people can share and use with a clear conscience?
- anaphor 8y agoDoes it mention the actor model? Edit: the original title said Every Programming Language in 15 Minutes
- roebk 8y agoYou can watch it to find out.
- shriek 8y agoNo. Just a basic overview of all programming languages. - I/O (sys, network, screen, printer etc.) - Data types (numbers, strings, bool, composite data types etc.) - Built-in ops (comparison, logical, arithmetic etc.) - variables - branching - loops - functions
- anaphor 8y agoSo not all programming languages then...
- 29athrowaway 8y agoA program is not required to produce an output and is not even required to finish. Some programming languages do not have functions or types (like brainfuck). This is just a bad attempt to describe programming paradigms that not all languages support.
- thethirdone 8y ago> A program is not required to produce an output and is not even required to finish. What use is a program if it doesn't have a way of outputting? That is the one requirement from the video I support.
- 29athrowaway 8y agoThe program "sleep" produces output (an exit code, or version) but its purpose is to introduce a delay.
- thethirdone 8y agoI would say having an observable state of running vs not could be considered output. If you could start sleep, but not tell when it finished, it would be quite useless. So I think requiring "output" for a programming language is fine. You just have to be very general about what "output" is.
- obphusckate 8y agoNot the best example. The exit code it produces is exactly how it works: "The exit status is allowed to be zero when sleep is interrupted by the SIGALRM signal because most implementations of this utility rely on the arrival of that signal to notify them that the requested finishing time has been successfully attained." http://pubs.opengroup.org/onlinepubs/9699919799/utilities/sleep.html http://pubs.opengroup.org/onlinepubs/9699919799/utilities/sl...
- anaphor 8y agoAnd not every programming language is Turing-complete which means there are languages without loops that are guaranteed to terminate. https://en.wikipedia.org/wiki/Total_functional_programming https://en.wikipedia.org/wiki/Total_functional_programming