Hacker News new | past | comments | ask | show | jobs | submit login

As a proponent of python and a full time python developer I fully endorse this decision.

There is a compelling need to be able to distribute graphical python applications that isn't met (and that https://www.python.org/dev/peps/pep-0441/ isn't even a step in the right direction is an indication of how far away a solution is).

Don't get me wrong, python is a great language, but its not the right solution for teaching programming for exactly these reasons.




From the link:

> This feature is not as popular as it should be mainly because no one’s heard of it

Count me as one. As someone who does a lot of development in Python, I'm surprised I never heard of that feature either.

Perhaps another reason this feature goes unnoticed is because it still requires the end user to have Python installed. Therefore, when distributing a Python application, most people just bundle it into an EXE/ELF/etc and don't bother looking for other solutions.


Basically that's because you can't bundle c libraries in a zip file like this, so effectively you can't actually use it for any of the reasons you might want to use it.

(.exe bundlers, by comparison, bind the shared library into the executable or with it)


I'm sorry, your comment isn't making clear what teaching programming has to do with distributing graphical applications. Could you clarify what 'these reasons' are?


Teaching intro programming courses with "parse a CSV file" or "implement a text based calculator" is outdated. Modern students have grown up with smart phones and are used to being able to click around and have the computer react graphically. Students learning with C or Python have a large chasm of GUI libraries they have to cross before they can make anything like the UIs they are used to seeing. Being able to make shapes move around from day 1 in a JavaScript course seems like a much more compelling experience to me.


That's exactly it. There's an argument for teaching programming from the top down, starting by modifying GUI programs, rather than from the bottom up, at the bit level. See: http://radar.oreilly.com/2014/03/a-concrete-approach-to-lear...

Javascript now has all the major language features Python does. It's not quite as ugly as it used to be. There's strict mode, which disables some of the worst legacy crap. You can use Javascript on servers, desktop clients, and phone clients. Try doing that with Python. Compilers for Javascript generate amazingly fast code today.

Javascript has a tradition of bad, obfuscated code with no comments, but that's not the fault of the language.

(I used Python for years, and prefer it to Javascript. But Python remains limited. Just distributing a Python program is a pain. Yes, there are several systems for making an installable executable from a Python program. They sort of work. It's not considered a standard operation.)


Looks like there is some sort of school of thought that differentiates 'programming' from Computer Science. This seems wrong, because you're not teaching 'how' you're teaching 'what'. The time students spend learning how to write HTML what CSV is, isn't spent on what bool, operators, statements, blocks, procedures are. They're learning 'Web Programming', which won't help them nearly as much when they have to do anything else.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: