Computerphile is supported by Jane Street. Learn more about them (and exciting career opportunities) at: https://jane-st.co/computerphile This video was filmed and edited by Sean Riley. Computerphile is a sister project to Brady Haran's Numberphile. More at https://www.bradyharanblog.com
ADVERTISEMENT
Bjarne Stroustrup: "There are only two kinds of languages: the ones people complain about and the ones nobody uses."
Before watching the video I thought “I don't think I have a leas favourite programming language, all have it's charm!” And then: “Oh, I totally forgot about JavaScript”
For me it would be COBOL for two reasons: 1. It is the only language where the 'Hello World!' program takes more lines of code than it does in assembler! 2. It was designed so that managers were supposed to be able to read the code. The result, in the words of the person who taught me it, was that nobody could read the code!
Before it started I knew it would be JavaScript - when I stated working in C# I said to my brother how much better it was than JavaScript and he said "Yep, JavaScript is like programming with crayons" which I thought was a pretty accurate metaphor.
JavaScript. Not because it's untyped but because of how it implements type coercion and the fact that it has multiple equality operators.
It's nice to see that no one has had the displeasure of having to code in Visual Basic for Applications.
Fun fact: COBOL is still used in a lot of IT systems of the Dutch government, but they can not find enough people that know the language to modernize these systems. So we're basically stuck with them lol
XSLT. It's the answer to the question "what would happen if we used XML as a programming language?"
That punch line was BRILLIANT.
It's JavaScript. Any language that allows you to mistype a variable identifier and still run the program is a language that should not be considered for programming. Anything.
Surprised nobody complained about managing Python environments and conflicts with dependencies/package versions. Personally this is WAY more annoying than dynamic typing shenanigans and whitespace being part of syntax
Whatever you do Computerphile, please never change how you guys film your video and upload it. We don’t need hifi editing with high quality cameras, editing and stuff. We need quality content and not the video. Do not tradeoff between video quality and content quality.
Python … I don't mind the syntax. For me, the problem with python is that it gets abused and put into everything, although there are better tools for almost everything. It's like building a house with a Swiss army knife.
The culture around Python is to maximize the "Pythonic" nature of what you write, which seems to mean, maximizing the number of people who have to look it up to know what's going on
I wouldn't single out a language, but I definitely prefer statically typed languages than dynamically types languages
the COBOL joke was brilliant
"It's a functional language with a lot of brackets but I don't know what it's called" ARE YOU ABSOLUTELY SHITTING ME
I agree with the guys here, javascript is my least favorite out of the ones I've used. I once had to use javascript for a graphics course I was taking because we were using WebGL. One thing that really bothered me was that there was no operator overloading so when I was working with vectors I always had to do some annoying syntax like v3 = v1.add(v2) to add two vectors. So I'm working on this project and do some changes, then all of the sudden my game I'm programming just becomes a black screen which was very odd and I couldn't figure out why, after a long time of debugging I finally found the bug and it is because I accidentally did v3 = v1 + v2 and since javascript is javascript it doesn't throw any errors it instead just set v3 = undefined, and this undefined propogated through my entire program without ever causing an error until it ended up in some webGL function which also didn't cause any error but instead caused a black screen.
I was going to make a couple controversial suggestions but the 3:45 "I am too old for that now" encapsulates so much of what I think of most languages these days. Including the still evolving ones. Looking at you C++.
lol. I thought I'd heard all the COBOL programmer Y2K jokes, but that was a new one for me!