Poll

Do you like Python?

Yes, I love it.
21 (23.3%)
Yes, I like it.
24 (26.7%)
No, I don't like it
17 (18.9%)
No, I hate it.
14 (15.6%)
No opinion, indiferent
11 (12.2%)
I refuse to answer
3 (3.3%)

Total Members Voted: 89

Author Topic: Python becomes the most popular language  (Read 94498 times)

0 Members and 1 Guest are viewing this topic.

Offline PicuinoTopic starter

  • Frequent Contributor
  • **
  • Posts: 714
  • Country: 00
    • Picuino web
Re: Python becomes the most popular language
« Reply #800 on: August 10, 2022, 04:49:09 pm »
It is a good moment to teach Computer Science, with Python as first programming language, in Secondary School.
 

Offline bd139

  • Super Contributor
  • ***
  • Posts: 23017
  • Country: gb
Re: Python becomes the most popular language
« Reply #801 on: August 10, 2022, 04:53:47 pm »
They do that here  :-+
 

Offline Cerebus

  • Super Contributor
  • ***
  • Posts: 10576
  • Country: gb
Re: Python becomes the most popular language
« Reply #802 on: August 10, 2022, 04:58:24 pm »
Oh great, a whole generation who think that indentation = semantics.  :(
Anybody got a syringe I can use to squeeze the magic smoke back into this?
 
The following users thanked this post: Ed.Kloonk, madires

Offline bd139

  • Super Contributor
  • ***
  • Posts: 23017
  • Country: gb
Re: Python becomes the most popular language
« Reply #803 on: August 10, 2022, 04:59:27 pm »
I think it’s more a generation who can solve problems without getting pissy  :-DD
 
The following users thanked this post: bpiphany

Online pcprogrammer

  • Super Contributor
  • ***
  • Posts: 3617
  • Country: nl
Re: Python becomes the most popular language
« Reply #804 on: August 10, 2022, 05:31:02 pm »
And also with a lot of patience. :=\

I'm indifferent on Python, but compared to C it is slow. For the FPGA reversing I'm doing the code for the open source tools is written in Python and I used it to do some preliminary work, but boy it takes it time when you need to process millions of bits. So I switched back to C in a heartbeat. :)

Offline Cerebus

  • Super Contributor
  • ***
  • Posts: 10576
  • Country: gb
Re: Python becomes the most popular language
« Reply #805 on: August 10, 2022, 05:56:05 pm »
Not getting pissy, taking the piss possibly, but not getting pissy.  :)

I really don't think that Python is a good starting place as an instructional language, too many idiosyncrasies, way too many ways of doing things and it's quite hard to reveal how to do things in "layers" as students grasp concepts one by one.

The older 'instructional' languages are probably badly suited to educating people for the future - they were all designed with building up to using full second or third generation programming languages. That I think would poorly serve current students. Sure, they need the concepts that second and third generation languages use, but the older 'instructional' languages completely omit features that are de rigueur for modern languages.  Perhaps it's time for a new 'instructional' language.

The "indentation as semantics" is a serious point however. It's a terrible feature for an instructional language because (1) only 1 popular language works that way resulting in (2) crashing and burning when you hit a language that doesn't work that way. All of us who have habitually indented languages with classical block semantics 'get' the Python indentation thing immediately. Some of us may not like it, but we get it. If all you knew was the Python "indentation as semantics" approach where would you be when faced with a language that doesn't work that way? Very confused for quite a while I suspect.
Anybody got a syringe I can use to squeeze the magic smoke back into this?
 

Offline bd139

  • Super Contributor
  • ***
  • Posts: 23017
  • Country: gb
Re: Python becomes the most popular language
« Reply #806 on: August 10, 2022, 06:51:49 pm »
It’s a bit of a straw man that. It’s not an instructional language. You can use it as one if you choose.

I mean it could have semantic braces instead like the C-like languages. That left us in the domain of non memory safety C, bonkers JavaScript, general fucking shit show PHP and industrial scale misadventure and the main reason we’ve never been visited by an alien race C++ . Those are, well someone more mired with idiosyncrasies as I think I alluded to.

l ask you a question; have you ever done a 3-way merge on 7,000 Java files? Then you’ll know why braces aren’t necessarily the best idea out there. The test suite checks semantic errors in python. In Java the compiler twangs your ball sack for an hour asking you to inject squiggles not because it needs to be told what is semantic and what isn’t.

The real problems in the world are far greater than semantic whitespace which might not be a bad idea after all.
 

Online SiliconWizard

  • Super Contributor
  • ***
  • Posts: 14297
  • Country: fr
Re: Python becomes the most popular language
« Reply #807 on: August 10, 2022, 06:53:49 pm »
It is a good moment to teach Computer Science, with Python as first programming language, in Secondary School.

In which case, that should be definitely not be called Computer Science, but rather Programming courses. And I'll be fine with that.
 

Offline jfiresto

  • Frequent Contributor
  • **
  • Posts: 804
  • Country: de
Re: Python becomes the most popular language
« Reply #808 on: August 10, 2022, 06:56:36 pm »
... If all you knew was the Python "indentation as semantics" approach where would you be when faced with a language that doesn't work that way? Very confused for quite a while I suspect.

I might believe that except Python's syntax is pragmatic not dogmatic. Real Python code often relaxes the "off-side rule".
-John
 

Offline Cerebus

  • Super Contributor
  • ***
  • Posts: 10576
  • Country: gb
Re: Python becomes the most popular language
« Reply #809 on: August 10, 2022, 08:04:56 pm »
It’s a bit of a straw man that. It’s not an instructional language. You can use it as one if you choose.

Erm, no it's not a strawman because I never said that it was an instructional language. I merely opined that to use it in place of an instructional language was probably not a great idea.

There's quite a body of experience from the world of education that suggests that specifically designed beginner instruction languages are a good thingTM. It's instructive (pun unintentional, but I'll take credit for it) that Smalltalk came of the the Learning Research Group at Xerox' Palo Alto Research Labs from an effort to make a programming language that could be taught at infant school level.

They actually succeeded in teaching 6 year olds to program using it. Remember that's about when you start to learn to read and write the language that you've grown up with, language that will be parsed with a whole human brain for syntax and semantics, not the pathetic fussy brain of a literal computer. It's quite an achievement to have got six year old to write any code that actually works.

Quote
I mean it could have semantic braces instead like the C-like languages. That left us in the domain of non memory safety C, bonkers JavaScript, general fucking shit show PHP and industrial scale misadventure and the main reason we’ve never been visited by an alien race C++ . Those are, well someone more mired with idiosyncrasies as I think I alluded to.

l ask you a question; have you ever done a 3-way merge on 7,000 Java files? Then you’ll know why braces aren’t necessarily the best idea out there. The test suite checks semantic errors in python. In Java the compiler twangs your ball sack for an hour asking you to inject squiggles not because it needs to be told what is semantic and what isn’t.

The real problems in the world are far greater than semantic whitespace which might not be a bad idea after all.

You seem hung up on braces. Bad experience with orthodontistry?  :) A litany of the failures of assorted programming languages is really neither here nor there, nor is getting yourself into the situation where you even need to contemplate the idea of doing a three-way merge of 7,000 source files**.  I'd opine that none of them are particularly good, and especially they're none of them particularly good as an introduction to programming. Far, far, too many introductory courses to programming are introductory courses to programming in language x rather than courses in programming per se.

Of relevance is my own introduction to programming. It was at a one week residential summer school in 1974 as a test subject for the "Computer Education in Schools" syllabus that ICL cooked up at the behest of the government of the day. They produced their own programming language 'CESIL*' which was 'assembler made easy' which they taught in the first half of the week, and they taught BASIC in the second half of the week. I spent the next year helping one of the math's teachers at school teach that course, taught myself FORTRAN and COBOL, and took a commercial job as a junior programmer in 1976 where I was bashing out COBOL for a software house that serviced the Merchant Banks of the day. So that approach clearly had some merit as far as the computer industry of the time was concerned.

The question is what would make a good introductory language now? It certainly isn't assembler-lite like CESIL was, but neither is it a language like Python that throws in everything including the kitchen sink and has idiosyncrasies that make it non-representative of programming languages as a whole.

* Computer Education in Schools Introductory Language

** To paraphrase Lady Bracknell "To have to do a three-way merge of one source file is unfortunate; to have to merge 7,000 of them smacks of carelessness."
« Last Edit: August 10, 2022, 08:08:17 pm by Cerebus »
Anybody got a syringe I can use to squeeze the magic smoke back into this?
 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 26751
  • Country: nl
    • NCT Developments
Re: Python becomes the most popular language
« Reply #810 on: August 10, 2022, 08:39:52 pm »
IMHO Pascal is still pretty good at forcing people to think about the structure of a program before starting to code. Python is just scribbles on a napkin that you code in a real programming language later on.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 
The following users thanked this post: madires, spostma

Offline olkipukki

  • Frequent Contributor
  • **
  • Posts: 790
  • Country: 00
Re: Python becomes the most popular language
« Reply #811 on: August 10, 2022, 09:50:23 pm »
I'm indifferent on Python, but compared to C it is slow. For the FPGA reversing I'm doing the code for the open source tools is written in Python and I used it to do some preliminary work, but boy it takes it time when you need to process millions of bits. So I switched back to C in a heartbeat. :)

It's getting better  :popcorn:

https://docs.python.org/3.11/whatsnew/3.11.html#faster-cpython
 

Offline emece67

  • Frequent Contributor
  • **
  • !
  • Posts: 614
  • Country: 00
Re: Python becomes the most popular language
« Reply #812 on: August 12, 2022, 11:10:18 am »
.
« Last Edit: August 19, 2022, 05:44:21 pm by emece67 »
 

Offline Karel

  • Super Contributor
  • ***
  • Posts: 2214
  • Country: 00
Re: Python becomes the most popular language
« Reply #813 on: August 12, 2022, 11:47:03 am »
CPython 3.11 is on average 25% faster than CPython 3.10 when measured with the pyperformance benchmark suite,
and compiled with GCC on Ubuntu Linux. Depending on your workload, the speedup could be up to 10-60% faster.


Which means still 20 times slower than C/C++...
 

Offline voltsandjolts

  • Supporter
  • ****
  • Posts: 2277
  • Country: gb
Re: Python becomes the most popular language
« Reply #814 on: August 12, 2022, 12:36:42 pm »
CPython 3.11 is on average 25% faster than CPython 3.10 when measured with the pyperformance benchmark suite,
and compiled with GCC on Ubuntu Linux. Depending on your workload, the speedup could be up to 10-60% faster.


Which means still 20 times slower than C/C++...

...but with 100x faster development cycle than C/C++.

That means Python is great for initial dev/experiments and perhaps production if it's fast "enough" or the critical bits are written in C/C++. But, yawn, this is age old argument repeated a thousand times here already, I must be bored at work or I wouldn't even have posted this. I guess Python helped me finish my work early :P

 

Offline madires

  • Super Contributor
  • ***
  • Posts: 7693
  • Country: de
  • A qualified hobbyist ;)
Re: Python becomes the most popular language
« Reply #815 on: August 12, 2022, 01:29:13 pm »
We have to wait a few years to see how this Python hype evolves. Kids start learning Python in school now. Will Windows 13 be written in Python? But please don't complain if the greybeards will remind you later 'we told you so'. >:D
« Last Edit: August 12, 2022, 01:30:47 pm by madires »
 

Online pcprogrammer

  • Super Contributor
  • ***
  • Posts: 3617
  • Country: nl
Re: Python becomes the most popular language
« Reply #816 on: August 12, 2022, 01:33:51 pm »
...but with 100x faster development cycle than C/C++.

But only when you are up to speed with Python :-DD

And when you are experienced enough with both it might not make a difference in which language you write.

Offline coppice

  • Super Contributor
  • ***
  • Posts: 8605
  • Country: gb
Re: Python becomes the most popular language
« Reply #817 on: August 12, 2022, 01:52:50 pm »
IMHO Pascal is still pretty good at forcing people to think about the structure of a program before starting to code.
Pascal, or derivatives like Turbo Pascal? Turbo Pascal makes you focus on structure. Real Pascal makes you focus on working around all the basic things it doesn't have, like word length control and logical operations.
 
The following users thanked this post: newbrain

Offline brucehoult

  • Super Contributor
  • ***
  • Posts: 3996
  • Country: nz
Re: Python becomes the most popular language
« Reply #818 on: August 12, 2022, 01:53:32 pm »
...but with 100x faster development cycle than C/C++.

But only when you are up to speed with Python :-DD

... and not up to speed with the C++ standard library, which contains all that useful stuff such as expandable arrays and trees and hash tables and algorithms such as sorting and so forth.

It's possible Java and separately JavaScript might lie somewhere between the development time of C++ and Python -- Java closer to C++, and JavaScript closer to Python, and bot run maybe 20% slower than C++, not 20x slower.

Quote
And when you are experienced enough with both it might not make a difference in which language you write.

I would think if you know both well, the difference would be no more than 2x, and maybe quite a bit less than that.

C++ compilation time is not significant on reasonable sized programs on modern computers. Any difference is purely in convenience of libraries and the amount of typing needed.

 

Offline Karel

  • Super Contributor
  • ***
  • Posts: 2214
  • Country: 00
Re: Python becomes the most popular language
« Reply #819 on: August 12, 2022, 02:52:16 pm »
It's possible Java and separately JavaScript might lie somewhere between the development time of C++ and Python -- Java closer to C++, and JavaScript closer to Python, and bot run maybe 20% slower than C++, not 20x slower.

I don't agree. I ported a library from pure C to pure Python and for sure it's 20 times slower.
The lib provides an api to write ADC samples to a file in a certain format and it also applies some scaling to all samples.
Other people wrote a Python wrapper around the C library because in pure Python it was terribly slow.
Both those people and me did the speed comparison and the speed difference is huge (at least 20x).

There's a reason why Python (and Numpy as well) is written in pure C...
 

Offline olkipukki

  • Frequent Contributor
  • **
  • Posts: 790
  • Country: 00
Re: Python becomes the most popular language
« Reply #820 on: August 12, 2022, 03:39:51 pm »
I ported a library from pure C to pure Python and for sure it's 20 times slower.

Not sure why you did this  :-//, but overall - a terrible idea, at least cover in cython with a minimalistic porting and let it's available to Python world
 

Online SiliconWizard

  • Super Contributor
  • ***
  • Posts: 14297
  • Country: fr
Re: Python becomes the most popular language
« Reply #821 on: August 12, 2022, 06:30:37 pm »
We have to wait a few years to see how this Python hype evolves. Kids start learning Python in school now. Will Windows 13 be written in Python? But please don't complain if the greybeards will remind you later 'we told you so'. >:D

I for one think that Python has too many "flaws" and is knowing too much "hype" not to eventually get phased out.
When and how, I do not know. It will have to be replaced by something else of similar nature - a language easy to use for a very wide range of people including a lot of non-software developers.

I ported a library from pure C to pure Python and for sure it's 20 times slower.

Not sure why you did this  :-//,

Me neither, but the only "valid" reason I see is that Karel would have been missioned to do this by his boss, or a customer. Doing that from your own will doesn't seem very plausible, so that must come from some order you can't decline. :-DD
« Last Edit: August 12, 2022, 06:34:56 pm by SiliconWizard »
 
The following users thanked this post: nctnico

Offline PicuinoTopic starter

  • Frequent Contributor
  • **
  • Posts: 714
  • Country: 00
    • Picuino web
Re: Python becomes the most popular language
« Reply #822 on: August 12, 2022, 06:56:34 pm »
This is an electronics forum, which is one of the areas where Python is not as widely used due to its speed. This is very noticeable in the comments, always obsessed with speed, as if speed were the only parameter of importance.
 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 26751
  • Country: nl
    • NCT Developments
Re: Python becomes the most popular language
« Reply #823 on: August 12, 2022, 07:48:25 pm »
We have to wait a few years to see how this Python hype evolves. Kids start learning Python in school now. Will Windows 13 be written in Python? But please don't complain if the greybeards will remind you later 'we told you so'. >:D

I for one think that Python has too many "flaws" and is knowing too much "hype" not to eventually get phased out.
When and how, I do not know. It will have to be replaced by something else of similar nature - a language easy to use for a very wide range of people including a lot of non-software developers.
I agree. For starters such a language will need to be governed by some form of a standard committee to ensure prolonged compatibility where it comes to the language syntax and libraries. Python is too much of a moving target to be useful for commercial software development.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline voltsandjolts

  • Supporter
  • ****
  • Posts: 2277
  • Country: gb
Re: Python becomes the most popular language
« Reply #824 on: August 12, 2022, 08:05:18 pm »
Python is too much of a moving target to be useful for commercial software development.

I don't think that is true at all.

There are many big tech firms successfully using Python, I won't list them here as they are so easy to find. Indeed that is a big part of the momentum Python has, no doubt many contributions coming from there. However, I think it tends to be more server side, web tech stuff rather than desktop apps. Dropbox is the only hugely popular desktop app I can think of.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf