Why this sudden hype for Python?
-
It is a language that I am seeing a lot from my kids in high school, one has it for ICT and another has it for a lunchtime computer club
Every day, thousands of innocent plants are killed by vegetarians. Help end the violence EAT BACON
Python, Java, iPads; as long as it is non-Microsoft "to prevent a vendor-lock in". ..and that attitude helped to create a lot of new 'institutes' that teach .NET in the past years. Most universities and academics would shudder of .NET / Visual BASIC courses :)
Bastard Programmer from Hell :suss: If you can't read my code, try converting it here[^][](X-Clacks-Overhead: GNU Terry Pratchett)
-
Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny This is in @Marc-Clifton 's signature. Fits really well. ;)
I am not the one who knocks. I never knock. In fact, I hate knocking.
GKP1992 wrote:
This is in @Marc-Clifton 's signature.
I thought that looked familiar. :-D
Latest Article - Class-less Coding - Minimalist C# and Why F# and Function Programming Has Some Advantages Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802
-
As if they just found the answer for this whole universe' existence. I asked one of the job applicants, a fresher what he wants to be. he says "Python developer". Which felt okay, to start with. Then I asked, after 5 years? Applicant: "Senior Python developer" Then I insisted, if he'd be interested to specialize any of the technology than tools. (We've had enough with people who could never adapt to change) Applicant: No, I want to be expert Python developer. I had to tell him I see no scope for growth or any long term plans for him in our company as we don't have rolls called "python SME, python super Expert, python Engineering manager/director & Python CEO, CTO & Python magician" Some or many of you might still feel specializing on a specific language and building career over it is fine, I might find it okay too if it's useful for the work. Unfortunately, for us, it's not. We have come around different tools and different needs requesting the devs to learn new tools to get things done. I did enquire with other folks why these kids are so obsessed with Python. Looks like their instructors at college have said "Python" is the future. That's where there money is. :( Im developing a fresh dislike for "Python".
Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.
because it is the web programming language of choice for the anti-Microsoft crowd. That and Django Unchained
-
As if they just found the answer for this whole universe' existence. I asked one of the job applicants, a fresher what he wants to be. he says "Python developer". Which felt okay, to start with. Then I asked, after 5 years? Applicant: "Senior Python developer" Then I insisted, if he'd be interested to specialize any of the technology than tools. (We've had enough with people who could never adapt to change) Applicant: No, I want to be expert Python developer. I had to tell him I see no scope for growth or any long term plans for him in our company as we don't have rolls called "python SME, python super Expert, python Engineering manager/director & Python CEO, CTO & Python magician" Some or many of you might still feel specializing on a specific language and building career over it is fine, I might find it okay too if it's useful for the work. Unfortunately, for us, it's not. We have come around different tools and different needs requesting the devs to learn new tools to get things done. I did enquire with other folks why these kids are so obsessed with Python. Looks like their instructors at college have said "Python" is the future. That's where there money is. :( Im developing a fresh dislike for "Python".
Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.
The cybersecurity sector leans heavily on Python, so it's seeing a lot of exposure lately. It's also becoming a common learner language.
"There are three kinds of lies: lies, damned lies and statistics." - Benjamin Disraeli
-
As if they just found the answer for this whole universe' existence. I asked one of the job applicants, a fresher what he wants to be. he says "Python developer". Which felt okay, to start with. Then I asked, after 5 years? Applicant: "Senior Python developer" Then I insisted, if he'd be interested to specialize any of the technology than tools. (We've had enough with people who could never adapt to change) Applicant: No, I want to be expert Python developer. I had to tell him I see no scope for growth or any long term plans for him in our company as we don't have rolls called "python SME, python super Expert, python Engineering manager/director & Python CEO, CTO & Python magician" Some or many of you might still feel specializing on a specific language and building career over it is fine, I might find it okay too if it's useful for the work. Unfortunately, for us, it's not. We have come around different tools and different needs requesting the devs to learn new tools to get things done. I did enquire with other folks why these kids are so obsessed with Python. Looks like their instructors at college have said "Python" is the future. That's where there money is. :( Im developing a fresh dislike for "Python".
Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.
Python can be quite impressive. To name a few things: 1) Huge 3rd party support and many very decent libraries, and some really interesting stuff, including things like AI, deep learning, etc. 2) IDE's - Visual Studio, JetBrains PyCharm, umm, Eclipse, including debugging 3) [Project Jupyter](http://jupyter.org/) is cool 4) It's usually more concise than C#. [Example](https://marcclifton.wordpress.com/2017/04/25/who-was-born-on-your-birthday/). 5) It can be impressive:
>>> 2**160
1461501637330902918203684832716283019655932542976- Cross platform -- I develop UI's and custom SBC hardware controllers in Python, and can write and debug the code (mocking the hardware I/O) in Windows and test it, move it over to the Debian box, and it works. :) 7) Django for web hosting is actually cool and well thought out, more so than Ruby on Rails, IMO, but then I'm biased against anything Ruby. 8) Brain dead simple to interface to C code, and more importantly, to build the library that can be imported into your Python app. 9) Docker / container support is trivial. Interfacing with Docker using Python is trivial. 10) Ruby is dying. Thank God. 11) My experience with Ruby was entangled with experiences of egoistic developers, similar to what I experienced when Java was all the rage. With Python, the egoism seems to be considerably toned down. That's important to me because egoistic developers tend to be dangerous, biased, opinionated, arses to work with. And they're actually really bad coders too. Cons: 1) It's slow, of course, being interpreted 2) If you want speed, code it in C (I personally haven't tried Python with C++) 3) It's scripted. PyLint helps to catch many stupid typos and construct errors that a C# IDE would redline for you before you even hit Build. While I'm forced to deal with Javascript/HTML/CSS (believe it or not, I still have to get my toes wet with TypeScript or similar) and occasionally SQL, C# is my language/bias of choice, Python is my go-to language for SBC and container development. At some point I'll probably poke at Go. For a lot of things, it's quite decent but so is, for example, C#, unless you're doing something specific where the answer is "Python would make this soooo much easier."
Latest Article - Class-less Coding - Minimalist C# and Why F# and Function Programming Has Some Advantages Learning to
-
As if they just found the answer for this whole universe' existence. I asked one of the job applicants, a fresher what he wants to be. he says "Python developer". Which felt okay, to start with. Then I asked, after 5 years? Applicant: "Senior Python developer" Then I insisted, if he'd be interested to specialize any of the technology than tools. (We've had enough with people who could never adapt to change) Applicant: No, I want to be expert Python developer. I had to tell him I see no scope for growth or any long term plans for him in our company as we don't have rolls called "python SME, python super Expert, python Engineering manager/director & Python CEO, CTO & Python magician" Some or many of you might still feel specializing on a specific language and building career over it is fine, I might find it okay too if it's useful for the work. Unfortunately, for us, it's not. We have come around different tools and different needs requesting the devs to learn new tools to get things done. I did enquire with other folks why these kids are so obsessed with Python. Looks like their instructors at college have said "Python" is the future. That's where there money is. :( Im developing a fresh dislike for "Python".
Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.
When ever I see the word 'expert' it always reminds of a quote (can't remember from where): "An 'ex' is a has been, and a 'spurt' is a drip under pressure". I never want to be an expert, but I will settle for competent or knowledgeable.
A human being should be able to change a diaper, plan an invasion, butcher a hog, navigate a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects! - Lazarus Long
-
As if they just found the answer for this whole universe' existence. I asked one of the job applicants, a fresher what he wants to be. he says "Python developer". Which felt okay, to start with. Then I asked, after 5 years? Applicant: "Senior Python developer" Then I insisted, if he'd be interested to specialize any of the technology than tools. (We've had enough with people who could never adapt to change) Applicant: No, I want to be expert Python developer. I had to tell him I see no scope for growth or any long term plans for him in our company as we don't have rolls called "python SME, python super Expert, python Engineering manager/director & Python CEO, CTO & Python magician" Some or many of you might still feel specializing on a specific language and building career over it is fine, I might find it okay too if it's useful for the work. Unfortunately, for us, it's not. We have come around different tools and different needs requesting the devs to learn new tools to get things done. I did enquire with other folks why these kids are so obsessed with Python. Looks like their instructors at college have said "Python" is the future. That's where there money is. :( Im developing a fresh dislike for "Python".
Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.
-
As if they just found the answer for this whole universe' existence. I asked one of the job applicants, a fresher what he wants to be. he says "Python developer". Which felt okay, to start with. Then I asked, after 5 years? Applicant: "Senior Python developer" Then I insisted, if he'd be interested to specialize any of the technology than tools. (We've had enough with people who could never adapt to change) Applicant: No, I want to be expert Python developer. I had to tell him I see no scope for growth or any long term plans for him in our company as we don't have rolls called "python SME, python super Expert, python Engineering manager/director & Python CEO, CTO & Python magician" Some or many of you might still feel specializing on a specific language and building career over it is fine, I might find it okay too if it's useful for the work. Unfortunately, for us, it's not. We have come around different tools and different needs requesting the devs to learn new tools to get things done. I did enquire with other folks why these kids are so obsessed with Python. Looks like their instructors at college have said "Python" is the future. That's where there money is. :( Im developing a fresh dislike for "Python".
Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.
Another reason is that a lot of the most popular artificial intelligence frameworks are written in Python being that it is the preferred language of many academic institutions.
if (Object.DividedByZero == true) { Universe.Implode(); } Meus ratio ex fortis machina. Simplicitatis de formae ac munus. -Foothill, 2016
-
As if they just found the answer for this whole universe' existence. I asked one of the job applicants, a fresher what he wants to be. he says "Python developer". Which felt okay, to start with. Then I asked, after 5 years? Applicant: "Senior Python developer" Then I insisted, if he'd be interested to specialize any of the technology than tools. (We've had enough with people who could never adapt to change) Applicant: No, I want to be expert Python developer. I had to tell him I see no scope for growth or any long term plans for him in our company as we don't have rolls called "python SME, python super Expert, python Engineering manager/director & Python CEO, CTO & Python magician" Some or many of you might still feel specializing on a specific language and building career over it is fine, I might find it okay too if it's useful for the work. Unfortunately, for us, it's not. We have come around different tools and different needs requesting the devs to learn new tools to get things done. I did enquire with other folks why these kids are so obsessed with Python. Looks like their instructors at college have said "Python" is the future. That's where there money is. :( Im developing a fresh dislike for "Python".
Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.
Python is the new Pascal. Good for learning, rarely used to run a business.
-
Python is the new Pascal. Good for learning, rarely used to run a business.
-
As if they just found the answer for this whole universe' existence. I asked one of the job applicants, a fresher what he wants to be. he says "Python developer". Which felt okay, to start with. Then I asked, after 5 years? Applicant: "Senior Python developer" Then I insisted, if he'd be interested to specialize any of the technology than tools. (We've had enough with people who could never adapt to change) Applicant: No, I want to be expert Python developer. I had to tell him I see no scope for growth or any long term plans for him in our company as we don't have rolls called "python SME, python super Expert, python Engineering manager/director & Python CEO, CTO & Python magician" Some or many of you might still feel specializing on a specific language and building career over it is fine, I might find it okay too if it's useful for the work. Unfortunately, for us, it's not. We have come around different tools and different needs requesting the devs to learn new tools to get things done. I did enquire with other folks why these kids are so obsessed with Python. Looks like their instructors at college have said "Python" is the future. That's where there money is. :( Im developing a fresh dislike for "Python".
Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.
Python is so much more than a language. It is a tool for power, for dominance, for fighting back against anyone who attemtps to put any other infrastructure, any other way to organize your files, any other way to distribute updates... Python has got its own. Once you have succeeded in getting Python into your organization, you can disregard a whole lot of the stuff you earlier had to take into consideration: The OS, the standard libraries, interfacing to other systems... You can do it your way, you are the one mastering it. I am working in a development environment using several different languages and development tools. Everyone but the Python guys cooperate and coordinate with the others, but the Python guys turn their back to the others: Sorry (or not really sorry) - we do things in a different way in Python! They demand that all company wide solution be those that fit the Python infrastructure; it is impossible for them to accept general solutions. Rather, they present (or develop themselves, in the back office, halfway in secrecy) Python specific solutions applicable for Python only. Their answer to the question of general applicability is simple: Just switch everything project to Python! This is certainly not specific to our company. I see it everywhere I meet other software people, in the professional media, everywhere Python is mentioned, it is with a disregard for everything non-Python. Python (and Python people) take care of themselves, ignoring others. Python is a tool for dominance. Those who manage the Python infrastructure - the thousands of Python packages, the Python specivic distribution mechanisms, the structure of the Python directories, the ways to identify tools and versions and files and everything, ... - have so much power over the entire software development process, compared to one who has learned another dotNet language that fits nicely into the the existing infrastructure. Btw, Python is not the only software used as a dominance tool. The containerisation software (and people) are the same way: Forget your old ways of managing software build environments, do as we tell you to! Sure, you must redo a lot from bottom up, because we tell you to isolate yourself from your old OS, your old file system structures, your old build software, your old artifact handling - that's the whole pupose of it: Do it as we tell you to! That's power - to us who master that specific tool!
-
Python can be quite impressive. To name a few things: 1) Huge 3rd party support and many very decent libraries, and some really interesting stuff, including things like AI, deep learning, etc. 2) IDE's - Visual Studio, JetBrains PyCharm, umm, Eclipse, including debugging 3) [Project Jupyter](http://jupyter.org/) is cool 4) It's usually more concise than C#. [Example](https://marcclifton.wordpress.com/2017/04/25/who-was-born-on-your-birthday/). 5) It can be impressive:
>>> 2**160
1461501637330902918203684832716283019655932542976- Cross platform -- I develop UI's and custom SBC hardware controllers in Python, and can write and debug the code (mocking the hardware I/O) in Windows and test it, move it over to the Debian box, and it works. :) 7) Django for web hosting is actually cool and well thought out, more so than Ruby on Rails, IMO, but then I'm biased against anything Ruby. 8) Brain dead simple to interface to C code, and more importantly, to build the library that can be imported into your Python app. 9) Docker / container support is trivial. Interfacing with Docker using Python is trivial. 10) Ruby is dying. Thank God. 11) My experience with Ruby was entangled with experiences of egoistic developers, similar to what I experienced when Java was all the rage. With Python, the egoism seems to be considerably toned down. That's important to me because egoistic developers tend to be dangerous, biased, opinionated, arses to work with. And they're actually really bad coders too. Cons: 1) It's slow, of course, being interpreted 2) If you want speed, code it in C (I personally haven't tried Python with C++) 3) It's scripted. PyLint helps to catch many stupid typos and construct errors that a C# IDE would redline for you before you even hit Build. While I'm forced to deal with Javascript/HTML/CSS (believe it or not, I still have to get my toes wet with TypeScript or similar) and occasionally SQL, C# is my language/bias of choice, Python is my go-to language for SBC and container development. At some point I'll probably poke at Go. For a lot of things, it's quite decent but so is, for example, C#, unless you're doing something specific where the answer is "Python would make this soooo much easier."
Latest Article - Class-less Coding - Minimalist C# and Why F# and Function Programming Has Some Advantages Learning to
Thanks for your summary! Very helpful list!:thumbsup:
-
Python is so much more than a language. It is a tool for power, for dominance, for fighting back against anyone who attemtps to put any other infrastructure, any other way to organize your files, any other way to distribute updates... Python has got its own. Once you have succeeded in getting Python into your organization, you can disregard a whole lot of the stuff you earlier had to take into consideration: The OS, the standard libraries, interfacing to other systems... You can do it your way, you are the one mastering it. I am working in a development environment using several different languages and development tools. Everyone but the Python guys cooperate and coordinate with the others, but the Python guys turn their back to the others: Sorry (or not really sorry) - we do things in a different way in Python! They demand that all company wide solution be those that fit the Python infrastructure; it is impossible for them to accept general solutions. Rather, they present (or develop themselves, in the back office, halfway in secrecy) Python specific solutions applicable for Python only. Their answer to the question of general applicability is simple: Just switch everything project to Python! This is certainly not specific to our company. I see it everywhere I meet other software people, in the professional media, everywhere Python is mentioned, it is with a disregard for everything non-Python. Python (and Python people) take care of themselves, ignoring others. Python is a tool for dominance. Those who manage the Python infrastructure - the thousands of Python packages, the Python specivic distribution mechanisms, the structure of the Python directories, the ways to identify tools and versions and files and everything, ... - have so much power over the entire software development process, compared to one who has learned another dotNet language that fits nicely into the the existing infrastructure. Btw, Python is not the only software used as a dominance tool. The containerisation software (and people) are the same way: Forget your old ways of managing software build environments, do as we tell you to! Sure, you must redo a lot from bottom up, because we tell you to isolate yourself from your old OS, your old file system structures, your old build software, your old artifact handling - that's the whole pupose of it: Do it as we tell you to! That's power - to us who master that specific tool!
-
When ever I see the word 'expert' it always reminds of a quote (can't remember from where): "An 'ex' is a has been, and a 'spurt' is a drip under pressure". I never want to be an expert, but I will settle for competent or knowledgeable.
A human being should be able to change a diaper, plan an invasion, butcher a hog, navigate a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects! - Lazarus Long
>"An 'ex' is a has been, and a 'spurt' is a drip under pressure". I first heard it from CPO Pertwee in The Navy Lark in the 60s or 70s. John
-
because it is the web programming language of choice for the anti-Microsoft crowd. That and Django Unchained
Yes and in practical terms that means Amazon even more than Linux
-
As if they just found the answer for this whole universe' existence. I asked one of the job applicants, a fresher what he wants to be. he says "Python developer". Which felt okay, to start with. Then I asked, after 5 years? Applicant: "Senior Python developer" Then I insisted, if he'd be interested to specialize any of the technology than tools. (We've had enough with people who could never adapt to change) Applicant: No, I want to be expert Python developer. I had to tell him I see no scope for growth or any long term plans for him in our company as we don't have rolls called "python SME, python super Expert, python Engineering manager/director & Python CEO, CTO & Python magician" Some or many of you might still feel specializing on a specific language and building career over it is fine, I might find it okay too if it's useful for the work. Unfortunately, for us, it's not. We have come around different tools and different needs requesting the devs to learn new tools to get things done. I did enquire with other folks why these kids are so obsessed with Python. Looks like their instructors at college have said "Python" is the future. That's where there money is. :( Im developing a fresh dislike for "Python".
Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.
It is easy to learn... but that comes with it's own dangers. Because the schools can use Linus for free, they tend to and that environment lends itself to Python As mentioned elsewhere it is the darling of the Anti-Microsoft crowd, but there is a twist to that. In practical terms that means Amazon even more than Linux. You should be aware that Amazon is making a huge effort of social engineering, partly to sell AWS services, but there is more to it than that. They have a political agenda as well and that includes "programmers" as a commodity - staffing on demand. Python fits that because of its simplicity. Python is a money maker for AWs also, because it is not very efficient, so you will need more AWS computing resources to use it = more money for Amazon. One other reason for the popularity of Python though is that it is a practical alternative to FORTRAN. The science world has finally accepted a replacement for FORTRAN and that has made just about everyone happy. One other reason for the popularity of Python though is that it is a practical (free) alternative to Matlab. DataScience and data-mining is all the buzz now and Python has good capability for that - using C code to make it work.
-
As if they just found the answer for this whole universe' existence. I asked one of the job applicants, a fresher what he wants to be. he says "Python developer". Which felt okay, to start with. Then I asked, after 5 years? Applicant: "Senior Python developer" Then I insisted, if he'd be interested to specialize any of the technology than tools. (We've had enough with people who could never adapt to change) Applicant: No, I want to be expert Python developer. I had to tell him I see no scope for growth or any long term plans for him in our company as we don't have rolls called "python SME, python super Expert, python Engineering manager/director & Python CEO, CTO & Python magician" Some or many of you might still feel specializing on a specific language and building career over it is fine, I might find it okay too if it's useful for the work. Unfortunately, for us, it's not. We have come around different tools and different needs requesting the devs to learn new tools to get things done. I did enquire with other folks why these kids are so obsessed with Python. Looks like their instructors at college have said "Python" is the future. That's where there money is. :( Im developing a fresh dislike for "Python".
Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.
-
Python is the new Pascal. Good for learning, rarely used to run a business.
PIEBALDconsult wrote:
rarely used to run a business.
On a corporate level, yes, I agree with this. However, I know for a fact that many game development companies (AAA in fact), use Python/Django/etc. for their websites and web stuff, exclusively. Also, I am seeing an influx in MongoDB for the back-end on a lot of these gaming sites. Gaming may not be a big deal with a lot of the members here, but it is a multi-billion dollar industry. Just saying...
-
Yes, the candidate's single-language fixation is a bit ridiculous but there's a flip-side to this. Employers frequently insist on commercial experience in specific languages. We've all seen those adverts that demand version X of this and version Y of that when what they actually need is someone who can program a computer. Whilst any good techie would recognise that a good Java programmer is likely to provide a lot more long-term benefit in a .NET shop than a lousy C# programmer ever will - HR types and recruitment pimps don't see the world that way. This means that we tend to get glued to a particular tech-stack whether we like it or not.
98.4% of statistics are made up on the spot.
-
Python can be quite impressive. To name a few things: 1) Huge 3rd party support and many very decent libraries, and some really interesting stuff, including things like AI, deep learning, etc. 2) IDE's - Visual Studio, JetBrains PyCharm, umm, Eclipse, including debugging 3) [Project Jupyter](http://jupyter.org/) is cool 4) It's usually more concise than C#. [Example](https://marcclifton.wordpress.com/2017/04/25/who-was-born-on-your-birthday/). 5) It can be impressive:
>>> 2**160
1461501637330902918203684832716283019655932542976- Cross platform -- I develop UI's and custom SBC hardware controllers in Python, and can write and debug the code (mocking the hardware I/O) in Windows and test it, move it over to the Debian box, and it works. :) 7) Django for web hosting is actually cool and well thought out, more so than Ruby on Rails, IMO, but then I'm biased against anything Ruby. 8) Brain dead simple to interface to C code, and more importantly, to build the library that can be imported into your Python app. 9) Docker / container support is trivial. Interfacing with Docker using Python is trivial. 10) Ruby is dying. Thank God. 11) My experience with Ruby was entangled with experiences of egoistic developers, similar to what I experienced when Java was all the rage. With Python, the egoism seems to be considerably toned down. That's important to me because egoistic developers tend to be dangerous, biased, opinionated, arses to work with. And they're actually really bad coders too. Cons: 1) It's slow, of course, being interpreted 2) If you want speed, code it in C (I personally haven't tried Python with C++) 3) It's scripted. PyLint helps to catch many stupid typos and construct errors that a C# IDE would redline for you before you even hit Build. While I'm forced to deal with Javascript/HTML/CSS (believe it or not, I still have to get my toes wet with TypeScript or similar) and occasionally SQL, C# is my language/bias of choice, Python is my go-to language for SBC and container development. At some point I'll probably poke at Go. For a lot of things, it's quite decent but so is, for example, C#, unless you're doing something specific where the answer is "Python would make this soooo much easier."
Latest Article - Class-less Coding - Minimalist C# and Why F# and Function Programming Has Some Advantages Learning to
Syntactically Python is one of the worst languages that are developed recently. Maybe there are others like that, I don't know. This is one of the languages where 'nothing' matters, as in white spaces define the structure of the program. Code reviews are made almost impossible because instead of answering a question 'is the program structure as-is correct?' you need to answer a question 'which of all possible structures would be correct?'. Simple yes/no becomes 'design same program that you're reviewing on the spot and see if you come up with same result'. Example:
if (x)
something()
somethingelse()Should somethingelse() be indented like this? If that code is already indented by 5 levels, maybe somethingelse() needs to be pulled back one level? two? three? People can't indent properly in languages where indentation is not important (curly brace languages, for example), and you'd expect them to indent something correctly where it is important? The initial hype came by showing: look, it's simple, i type '2+3', it prints '5'. An over-glorified calculator. Next, they print 'hello world' and see on console 'hello world', and it only takes one line of code instead of 10. Great. It makes simple things simpler and hard things almost impossible. There are tons of libraries written in Python, but i haven't seen data about how efficient Python is for developing these libraries, as opposed to some languages with static typing. Less lines of code does not mean it is overall efficient. Look at code golf on Stack Overflow, they solve small but relatively complex problems there using programs written with 10-20 Unicode characters that are incomprehensible for most developers. Writing a program is about 10% of the effort, maintaining it is another 90%, and languages should be such that maintenance is easier. Maintenance is not 'figuring out what the program does'. That part is trivial, run it through debugger with single-stepping and you see what it does. Maintenance is like any other reverse engineering, where you try to 'figure out what the developer was thinking when they developed that program'. With the example above it is not possible to say for sure if somethingelse() was thought of being part of that condition block or not. You'd need to reverse engineer the entire algorithm in that function, then think if you'd do it in the same way, and if you disagree, you'd do it differently, probably introducing more bugs because you don't have any guidance about original thinking. There