in reply to Re: Organizational Culture (Part II): Meta Process in thread Organizational Culture (Part II): Meta Process
So, that raises the question: did Python win, after all? ...
In many of these "Python circles", it seems like programming is not at all an art.
Creating a beautiful piece of code is not important in such circles. Self-promoting is.
My personal opinion is that Perl, Python and Ruby are essentially equivalent.
At least I enjoy coding in all three ... not so much in Javascript, and especially not PHP.
As noted in the root node, the Why Perl Didn't Win essay
argues (convincingly IMHO) that to remain popular over time, a programming language
must be compelling for new projects ... while further noting this is
not solely a technical concern; it's a concern of the language community and ecosystem.
Curiously, this theory of programming language adoption reminds me of Planck's Principle:
An important scientific innovation rarely makes its way by gradually winning over and converting its opponents:
it rarely happens that Saul becomes Paul.
What does happen is that its opponents gradually die out, and that the growing generation is familiarized with the ideas
from the beginning: another instance of the fact that the future lies with the youth.
-- Planck's Principle (Scientific autobiography, 1950, p.33,97)
BioPerl and PDL
Illustrating community and ecosystem trumping language, notice what a superb job
Lincoln Stein did twenty years ago in evangelising Perl and
developing quality Perl libraries in the Bioinformatics space.
Perl remains compelling in this domain today as indicated by:
For a long list of PDL References see:
See also:
On CPAN:
AI and Machine Learning
Sadly, Perl is way behind in the newer domain of AI and Machine Learning.
Googling for Perl books on this topic looks barren ... I further noticed that the Perl books about AI PM question did not receive a single reply.
Googling for Python books on AI and Machine Learning is a totally different story with many recent books available, such as:
and many more ... so if I was embarking on an AI and Machine Learning career today, I'd choose Python, not Perl.
This is a specific example of why Perl is losing market share.
BTW, I used to work with a PhD AI researcher (and novice computer programmer) and she did most of her research using
Python AI libraries utilising GPGPU.
AI References:
- AI::MXNet and other modules in the CPAN AI namespace.
- Re^4: The recent outage by marto (2024) - They, and every other party involved in the great AI grift need content to feed their llms
- SO and AI by stevieb (2024) - Stack just monetized all of the data that we, as public advocates of free information, provided
Array Processing/HPC/GPGPU/CUDA References
- Perl GPGPU Modules by kcott (2021) - hunting around for (production-grade) modules providing GPGPU bindings or interface
- NVIDIA HPC SDK Version 24.3 Documentation (nvc++ is a C++17 compiler for NVIDIA GPUs and AMD, Intel, OpenPOWER, and Arm CPUs. It invokes the C++ compiler, assembler, and linker for the target processors with options derived from its command line arguments. nvc++ supports ISO C++17, supports GPU and multicore CPU programming with C++17 parallel algorithms, OpenACC, and OpenMP)
- The three compilers used by marioroy in Long List is Long are g++, clang++, nvc++; I also used Google abseil library (see also).
GNU Scientific Library
Mathematical
Statistics:
- Statistics::Descriptive by Shlomi Fish - module of basic descriptive statistical functions
- PDL::Stats - a collection of statistics modules in Perl Data Language, with a quick-start guide for non-PDL people
Embedded
Other
I originally missed other Perl strengths in the Scientific Computing domain:
Graphics:
Astronomy:
Other:
- Algorithm::BitVector by Avinash Kak - A memory efficient packed representation of arbitrary sized bit arrays and for logical and arithmetic operations on such arrays
- Bit::Vector by Steffen Beyer - Efficient bit vector, set of integers and "big int" math library
Science Perl Committee
- UCL Software Database - UCL is London's leading multidisciplinary university, with more than 16,000 staff and 50,000 students from over 150 different countries (BioPerl is in its software database for students and staff)
Other Perl Organisations
See also : Re: Perlmongers (was: Re^5: Editing node titles w.r.t. Perl 6 (communities)) - London.pm (Perl Mongers and Conference References)
Some Perl Monks interested in using Perl in Science
- afoken - embedded systems, usually for medical or aviation
- Aldebaran
- ambrus - Budapest mathematician (see The 10**21 Problem (Part 2) and Japh algebra for some of his theorems ;-)
- biohisham
- BioLion
- biosysadmin - Masters in Bioinformatics from Rochester Institute of Technology, PhD student in dept of Genome Sciences, BioPerl developer
- birdbrane - geophysics (see Re: Re (tilly) 1: Discipline)
- bliako - has used Perl to analyse data for biology or have fun with super-collider
- blokhead - information theory, applied discrete math, algorithms, computability & complexity ... and author of Mandelbrot flythrough
- Bod (AI/ChatGPT)
- cavac - owner of a simulated space agency
- choroba - PhD in mathematical linguistics - see also Re: Who's still around?
- Corion - By (formal) education, I'm a mathematician and programmer
- Danny - Computational biologist
- Discipulus
- Don Coyote - mathematics, geometry, algebra, calculus, rational trigonometry, ...
- duelafn - founded a Community Math Center
- Ea - home node has lots of Data Science with Perl links
- erix
- etj - especially PDL (see BioPerl/PDL References above)
- hrcerq
- helgi - Bioinformatics (and sysadmin) (see Re: 22 years, and about a quarter century of Perl)
- huck
- hv - mathematics (e.g. see Re: What do you know, and how do you know that you know it? and mathematical proof development)
- jdtoronto - born in Melbourne, moved to Toronto; electronics, hardware design, biomedical engineering, mathematics, physics
- jmlynesjr - degree in Electrical Engineering, home node mentions Raspberry Pi and Arduino
- jo37 - PDL user
- jpearl - working for a research group in bioinformatics, implementing easier ways to extract data from our 454 sequencing data
- kennethk - background in scientific computation using Fortran, lots of links on his home node
- LanX - Re^3: TPRC/Science Track Submission Dates and Deadlines Coming Fast! (contacting academics in London/UK using Perl)
- Laurent_R - author of Think Perl 6: How to Think Like a Computer Scientist
- lin0
- liverpole - mathematics
- Lotus1 - Home node mentions Raspberry Pi, binding compiled code, sound synthesis, physics modeling, image transformation
- mdperry
- mpeg4codec - research programmer and mathematician working at usc.edu (Los Angeles)
- mr_mischief - this reply mentions computational pharmacology
- NERDVANA - e.g. see Re: 2024 Perl Conference - Science Track Interest Survey
- oiskuu - mathematics (many useful responses to The 10**21 Problem (Part 3) et al)
- oodler - see Science Perl Committee above (also active with Houston.pm)
- perlboy_emeritus - PDL user
- salva - mathematics (lots of maths-related modules in his CPAN directory)
- stevieb - especially Raspberry Pi
- swampyankee - once an aerodynamicist, high school teacher of physics and other science
- swl -
- syphilis - Math::Ryu (see Re^5: Calling a sub without enclosing its argument inside brackets)
- tachyon - physics
- thechartist - trigonometry and PDL (see Re^2: How to write testable command line script?)
- tilly - mathematics, e.g. Re^5: What do you know, and how do you know that you know it? and the classic The path to mastery
- tonyc - author of Imager
- tritan
- Xilman
See Also
Updated: Many references added long after the original reply was made. Dec 2022: moved some PDL links to Re: first stumbling steps in PDL (PDL References).
Dec 2023: Added Planck's Principle analogy.
Re^3: Organizational Culture (Part II): Meta Process
by hrcerq (Monk) on Jun 26, 2021 at 15:14 UTC
|
My personal opinion is that Perl, Python and Ruby are essentially
equivalent. At least I enjoy coding in all three ...
Yes, I can understand that, and I also enjoy Python (not as much as
in past days, and not as much as Perl, but I still do). I hope my
comments don't sound like I have anything against Python or its
community as a whole. That was not intended.
Glad you mentioned
this node. Makes
perfect sense, actually. As stated there,
... they blame the language for the messes created by people who
didn't know what they were doing ...
So, that should remind us that writing poor programs just to get
stuff done may give a bad reputation to the language and its community.
It happened to Perl in the past, and seems like it's happening to Python
now. Copy/paste isn't just ugly programming practice. It'll harm
someone, eventually.
... if I was embarking on an AI and Machine Learning career today, I'd
choose Python, not Perl. ...
Indeed, there's a thriving AI/ML community among Python developers. I
wish I could say the same for Perl.
return on_success() or die;
| [reply] |
|
|