Live data from Hacker News

Python has brought computer programming to a vast new audience

economist.com

121–130 of 268 posts

Re: Python has brought computer programming to a vast new audience

#121

Earlier quoted context omitted.

Not all of those are contradictory. For example, Python mostly stays away from cryptic syntax and implicit behavior, making it verbose, but it finds powerful ways to express common patterns, making it concise. You get a small amount of readable explicit code. The words are antonyms if you pick their meanings carefully, but they don't have to be. Python's design isn't revolutionary, but it's good and the language happ…

> Not all of those are contradictory. For example, Python mostly stays away from cryptic syntax and implicit behavior, making it verbose, but it finds powerful ways to express common patterns, making it concise. Unsurprisingly, I disagree with this opinion. Python code is typically nearly as much as a slog as Go code, but adopts all the brutally hard parts of the common lisp's functional world by only exposing wrap-p…

> And when change finally does happen, it happens in the way most likely to cause everyone heartache, as if to fulfill the prophecy the community made.

I assume you're referring to the 2 to 3 split? Which happened once and every other change has left code in an completely runnable state. Unless you're talking about the C-API then, yeah, it's a PITA to keep it current across versions.

Just today I learned about f-strings and previously not knowing about them being added to the language caused me zero heartache -- I could accomplish the exact same things using the other string formatting forms since they still work as designed.

Aside from the 2 to 3 thing I'd be interested in a concrete example of a change which caused everyone heartache because, honestly, I've never seen it and I (halfass) follow python development.

Re: Python has brought computer programming to a vast new audience

#122
post #103

Read the comments here. Look at the diversity of opinions and the number of them that, while professing love for Python, directly contradict each other. Python is verbose|concise, simple|advanced, disciplined|experimental, modern|classical. It goes to show: something doesn't need to be actually-better. It doesn't need to be actually-simpler. It doesn't need to make your job easier or better. It needs to make people t…

> No. Javascript, despite being the most deployed programming environment family in human history, didn't do this. It's definitely not.

What programming environment more deployed?

It's surely the case that other binary interpreters are more deployed. But shipped interpreter with free input, a runtime, debugger and (for nearly every implementation, an interactive visual editor).

Re: Python has brought computer programming to a vast new audience

#123

Earlier quoted context omitted.

> Isn't it amazing how an insular group managed to independently come up with Haskell-like list comprehensions, and even give them the same name? That's the big irony: The very same things the senior community and GVR pan are in fact their bread and butter. They're smart and informed. But the engender an attitude of willful ignorance in their community. GVR is smart. I've been on a pretty intense private mailing list…

To the contrary, I cannot reconcile your statement about their insularity with the observed behavior. It's almost as if you are wrong in your interpretation. It's easy to prove me wrong - where has van Rossum panned list comprehensions or the new async/await features?

> It's easy to prove me wrong - where has van Rossum panned list comprehensions or the new async/await features?

Since I never claimed he did, I struggle to provide offhand examples.

See: every discussion about lambdas discredited every day by the existence of a robust self-taught javascript community.

Re: Python has brought computer programming to a vast new audience

#124
post #103

Earlier quoted context omitted.

> No. Javascript, despite being the most deployed programming environment family in human history, didn't do this. It's definitely not.

What programming environment more deployed? It's surely the case that other binary interpreters are more deployed. But shipped interpreter with free input, a runtime, debugger and (for nearly every implementation, an interactive visual editor).

Office Macros (and the underlying Windows COM interfaces), which include all of those features if you enable it. Bash.

Desktops versions of browsers have all those things you listed. Mobile browsers do not. Also only modern-ish desktop browsers have that feature set, for a very long time the predominant browser of the day hardly had any debugging experience worth mentioning, the two I've listed have had them for a long, long time.

Re: Python has brought computer programming to a vast new audience

#125
post #106

Earlier quoted context omitted.

Yes, Python has type hinting since 3.5[1]. https://www.python.org/dev/peps/pep-0484/

To be clear, Python has had type annotations for a while now, but the default CPython interpreter doesn't use that information to optimise performance.

The CPython interpreter does very little to optimise performance because, as the reference implementation, they strive for simplicity of implementation.

Re: Python has brought computer programming to a vast new audience

#126

Read the comments here. Look at the diversity of opinions and the number of them that, while professing love for Python, directly contradict each other. Python is verbose|concise, simple|advanced, disciplined|experimental, modern|classical. It goes to show: something doesn't need to be actually-better. It doesn't need to be actually-simpler. It doesn't need to make your job easier or better. It needs to make people t…

I gather the exact opposite opinion of you: when something is aesthetically pleasing people will come up with rationalizations for why they like it, even if the real reason is difficult to describe. Similar to how in a focus group you can judge people's overall opinion but you should not focus on their specific feedback.

Re: Python has brought computer programming to a vast new audience

#127
post #22

There seems to be a sentiment that Python is a kids language - but I think of Python as a language that scales with your experience. You can do some really interesting and complex things and I’m really appreciative of my deep understanding of the language through a decade of heavy use, open source contribution, and project ownership. Recently I released a package which allows you to dynamically create or change funct…

English is a kids language... sure you can use it for your PhD thesis and the rest of your career, but there's no disputing that a lot of kids know it too; parts anyway.

Re: Python has brought computer programming to a vast new audience

#128

Am I the only who thinks that "90% of American parents want their kids to be computer scientists" is rather unsettling? The market is currently full of people who are in for the money and will continue to be. It will be filled with people until supply meets demand. That the salaries will drop significantly is a natural result of this. We had this pork cycle for teachers, doctors and other highly trained people. No on…

Maybe it makes sense to encourage your kids to go into blue collar jobs. In a future teeming with code monkeys, plumbers and electricians are going to be highly valuable. As for the current career programmers, maybe we should unionize before our jobs are being taken by kids coming out of 2 week bootcamps (who have been taking programming classes since kindergarten).

In a future teeming with code monkeys, plumbers and electricians are going to be highly valuable.

As a person who repaired quite a few toilets in their life

As for the current career programmers, maybe we should unionize before our jobs are being taken by kids coming out of 2 week bootcamps (who have been taking programming classes since kindergarten).

I've seen such people(well, they started learning in primary school, not in kindergarten, but nevertheless) and two things stand in the way of this scenario:

1. Barely anybody likes this line of work. I've had people who would really use some extra cash outright refuse to learn our trade because they found it boring. Apparently Our unique skill in the job market is an immunity to boredom.

2. There's more to this job than programming. There's also working in teams which, despite the focus of pretty much every western education system on this, is something that people seem to learn only after a good few years of full-time work.

Also people fresh out of college/bootcamps tend to fall for the typical "nerd traps" like trying to build beautiful abstractions where there is no time nor need for that.

Re: Python has brought computer programming to a vast new audience

#129
post #96

Earlier quoted context omitted.

I believe SQL is "the most deployed programming environment family in human history". SQLite is seemingly everywhere. Your second paragraph does not follow from the first. It could instead be that HN commenters are poor at this sort of analysis, or that people in general are poor at this sort of analysis. What were the contemporaries with similar design constraints? I started looking at Python in 1995, and the major…

> I believe SQL is "the most deployed programming environment family in human history". SQLite is seemingly everywhere. How many computers have a browser on them vs an interactive and instructable version of an SQL server?

You'll need to define some terms here. What is a "programming environment family"? Does BASIC in its various forms count? That includes Visual Basic and VBA.

Do people need to use it, or could it just be sitting there, like BASICA.EXE on an old MS-DOS distribution?

For that matter, the DOS shell is still hanging on, and it's a programming environment.

Most people use browsers on a smart phone or pad, with (as I understand it) no access to a programming environment.

SQLite is not a server.

Re: Python has brought computer programming to a vast new audience

#130

For some reason, I never liked Python. I don't know... its classes look weird with all those self, __init__, etc. The __init__.py for packages is also a strange choice to me. It has classes, but no interfaces. The language is even slower than PHP. Does Python have type hinting? What all the hype is about? I just don't get it.

Agree. I can't understand people praising the lightness and readability while at the same time stuffing their code with underscores. Also it seems often inconsistent. Like some functions are used as prefix (len(x)) while other are suffix (x.clear()), I assume for historical reasons. Or like the "b if a else c" which reverse the logical order (you evaluate the condition then you can tell if you go one way or another). Same for [x for x in list], the Linq approach is more logical (for x in list select x).

I understand why people like it. And I like scripting languages, it's nice to find a piece of script somewhere and being able to edit it directly having to find the correct source code and recompiling. But it has lots of shortfalls and quirks too (multi-threading, dependencies management, deployment, no refactoring/static checking, python 2 vs 3, 50 different kinds of strings, APIs full of abbreviations which probably meant something to their creators 20 years ago, etc).

It's a nice language, among others. Not an "ultimate" language by any means in my opinion.

Post reply on HN