Live data from Hacker News

Python 1.0.0 is out (1994)

groups.google.com

121–130 of 150 posts

Re: Python 1.0.0 is out (1994)

#121
post #96
post #92

Earlier quoted context omitted.

Fortune 500 companies. Quality is debatable.

> Quality is debatable. Using a VCS is not though. And sure, you didn't say they didn't, but using SVN or CVS in 2017 isn't good (outside of a very few select situations/industries). Don't be proud of working for large, slow moving companies with poor tech choices. They don't use git yet but they will.

The risk/reward ratio to leave svn/mercurial/CVS for git is generally pretty weak and a lot of really big companies started before git.

Re: Python 1.0.0 is out (1994)

#122
post #81

Earlier quoted context omitted.

I think the closest thing to "python with types" is probably Julia: https://julialang.org/ I think the efforts of adding type/type hints to python are interesting - but there's a tension between "weee! Look at me ducktyping, metaprogramming all the prototypes!!"-design and leveraging types as part of your design . Haskell/f#/ml are great languages, but they feel very different from python (ml maybe less so,but afaik…

Every time I look at Julia, I like it a lot, right up to the point where I remember that indexing is 1-based and I loose the will to go on.

Rolls eyes. 0 or 1 based indexing is one of the smallest thing to worry about in a programming language.

Re: Python 1.0.0 is out (1994)

#123
post #22

Earlier quoted context omitted.

Java's tooling support blows Python's tooling support right out of the water. The static type system of Java allows faster refactoring and IMHO makes development of large applications easier and less error prone. I use Python for simple scripts and often for data transformation. But e.g. at work we have a few million lines of C# that I would never ever want to manage if it was written in Python.

Do you mean tooling in the sense of Debugging support? Or is it code generation, etc? Just curious. I use PyCharm for medium to fairly complex projects and with Python 3 type hinting, I have not faced any particularly difficult development situations, tooling wise.

Well, type hints are a relatively new addition to Python and while they are nice, not every code has them and you cannot rely on them 100%. Python in general is a cool language that you can build stuff fast in but is is also extremely dynamic which doesn't make it good for IDE support where you often want to know where stuff is coming from in one click. Large code bases can get very confusing and navigating in a module you don't know is easier with IDE support.

Debugging in Python has gotten very nice but I feel like it's still easier in Java. I'm always very bad at finding examples, sorry :/

Re: Python 1.0.0 is out (1994)

#124

Earlier quoted context omitted.

Is it still an issue really? :/ Have been using Python 3 exclusively in production since about a year ago and it really seems like the whole 2/3 thing is starting to blow over. I haven't found any packages I need that aren't 3 compatible and porting to 3 was really way easier than people had made it out to be.

Yes. Very much still an issue. There's mountains of Python 2 code still out there and loads of software starts with Python 2 and then maybe adds Python 3 support later. Hopefully. For example [issue #1]( https://github.com/tensorflow/tensorflow/issues/1 ) for Tensorflow - one of the most popular Python packages out there is "add Python 3 support". It's one of the biggest reasons not to use Python IMO. No other popula…

> It's one of the biggest reasons not to use Python IMO. No other popular language has this issue.

No other popular language struggles with issues of backwards incompatibility? That's a huge exaggeration.

> Difficult to distribute standalone programs. You end up having to bundle an interpreter which is a pain.

I guess then you generally prefer not to use interpreted languages?

> So many programs include python interpreters you end up with insane path issues...

How is that? There's usually a system Python which system programs should reference explicitly if they care. If you code up a Python program without being careful about its dependencies, then yeah you're asking for trouble. But that's true of any program, whether it needs to locate an interpreter or be compiled against a shared library.

None of the pain points you mention are inherently specific to Python. But maybe Python's huge success and ubiquity trick people into conflating general software development issues with Python issues; rather like how people start confusing popular brand names with actual products (e.g. Band-Aids).

Re: Python 1.0.0 is out (1994)

#125

Earlier quoted context omitted.

You're probably joking but, just for kicks and to provide some historical context, my guess is email. I seem to recall that attachment sizes would have been limited to something less than that back then. Also, 1.76 MB could have fit onto two HD floppies which would have made it easy to snail mail. Although it wouldn't have been all that hard to download with a 14.4 modem.

Also to give more context: Back in the late 90s I remember I had a linuxmail.org web-mail account. It featured a whooping 4MB of space. 4MB! That's why when Google released GMail with 1GB of storage in 2004 ( https://slashdot.org/story/04/04/01/0038200/googles-gmail-to... ) it really blew everybody's mind.

I’ll just add that it wasn’t a technological limitation - providers were simply profiting by selling every additional MB at hefty prices. When GMail appeared, it broke their business model... but there are still providers selling ridiculously low amounts of space for a lot of money, usually to people who don’t really know anything about the internet.

Re: Python 1.0.0 is out (1994)

#126
post #122

Earlier quoted context omitted.

Every time I look at Julia, I like it a lot, right up to the point where I remember that indexing is 1-based and I loose the will to go on.

Rolls eyes . 0 or 1 based indexing is one of the smallest thing to worry about in a programming language.

A user will worry about what a user will worry about. Otherwise, we would all be using LISP.

Re: Python 1.0.0 is out (1994)

#127

> "If you have a WWW viewer ..." Just curious, had the term "browser" not caught on by then?

If memory serves, '94 was just before internet access and web browsing became things that everyone had and did. I don't think people had settled on the terminology just yet.

Re: Python 1.0.0 is out (1994)

#129
post #81

Earlier quoted context omitted.

I think the closest thing to "python with types" is probably Julia: https://julialang.org/ I think the efforts of adding type/type hints to python are interesting - but there's a tension between "weee! Look at me ducktyping, metaprogramming all the prototypes!!"-design and leveraging types as part of your design . Haskell/f#/ml are great languages, but they feel very different from python (ml maybe less so,but afaik…

Every time I look at Julia, I like it a lot, right up to the point where I remember that indexing is 1-based and I loose the will to go on.

I am in the odd situation that from habit collection[0] feels natural - but I actually think "first element" makes a lot more sense than "item at zero offset".

Except maybe for things that are actually pointer+offset (which I think very rarely makes sense in high level languages/most ADTs).

In fact, I think for situations where 0-based indexing makes sense, I'd prefer "memory_area+offset" rather than "pretend_collection_type[offset]".

I also usually talk about "the first character" of a string, or first word of a sentence; not "word at zero offset from start".

So yeah, I think Dijkstra's wrong on this one (or rather he has some very strong opinions on greater-/less-/-and-equal-to, and which are natural - for which I have little sympathy outside of abstract discrete math papers).

http://www.cs.utexas.edu/users/EWD/transcriptions/EWD08xx/EW...

Re: Python 1.0.0 is out (1994)

#130
post #81
post #33

Earlier quoted context omitted.

C# does not in any way represent the best that static typing has to offer. Try F#, Haskell or OCaml seriously before discounting static typing. These functional languages offer much better safety (e.g. no nulls, no casts, case exhaustiveness) and are as succinct as Python. They also generalise a lot of features that are ad-hoc in C# and Python (e.g. async-await is a library in F# and Haskell). For me, using Haskell i…

I think the closest thing to "python with types" is probably Julia: https://julialang.org/ I think the efforts of adding type/type hints to python are interesting - but there's a tension between "weee! Look at me ducktyping, metaprogramming all the prototypes!!"-design and leveraging types as part of your design . Haskell/f#/ml are great languages, but they feel very different from python (ml maybe less so,but afaik…

@granitosaurus you're dead, but you make a valid point:

> granitosaurus 3 hours ago [dead] [-]

> There's also nim, which is rather new and not yet v1 worthy but I'd say it's still a worthy contender to the "closes thing to python with types"

I think nim looks nice, and have some very python like qualities. But while it's statically typed, I think it's more "python with native compilation", than "python with types" - in the sense of how the typesystem help with program design.

Post reply on HN