News for hackers. Stuff that matters.
Re:Python 3 makes it easier to develop high-quality software by stevecalifornia on Wednesday November 18, 2015 @03:32PM (#10590543)
When I went to learn Python I was immediately faced with a choice that would have profound effects on my future success: Python 2 or Python 3.

Both sides are extremely persuasive and thus I felt that no matter what choice I made it was the wrong one and would haunt me down the line.

So I just stuck with a different modern language that has wide acceptance and isn't battling with itself.

Re:Python 3 makes it easier to develop high-quality software by RussianCow on Wednesday November 18, 2015 @04:10PM (#10590775)
> Both sides are extremely persuasive and thus I felt that no matter what choice I made it was the wrong one and would haunt me down the line.

It really isn't that big or hard of a decision. For the vast majority of projects, the choice doesn't matter, so I'd default to Python 3 at this point. Really, the only reason to choose Python 2 for a new project is compatibility with libraries you need[0], but the list of Py3-incompatible libraries is constantly getting smaller and smaller.

That said, if you already have a lot of Python 2 code written, there probably isn't any point to upgrading--the benefits are marginal at best, and it can be a lot of work to migrate a large code base.

[0]: Here's a pretty good reference for Python 3 support in popular libraries: http://py3readiness.org/

Re:Python 3 makes it easier to develop high-quality software by adrianlmm on Wednesday November 18, 2015 @03:59PM (#10590704)
The same thing hapenned to me in 2011, so I ended learning Ruby, no regrets.
Re:Python 3 makes it easier to develop high-quality software by takeda on Wednesday November 18, 2015 @04:13PM (#10590786)
Which is quite ironic, because (at least from my experience) Ruby constantly breaks backward compatibility.
Re:Python 3 makes it easier to develop high-quality software by adrianlmm on Wednesday November 18, 2015 @04:18PM (#10590826)
Not at all, I can easily migrate 1.9 Ruby projects to 2.2.3 w/o any problems.
Re:Python 3 makes it easier to develop high-quality software by takeda on Wednesday November 18, 2015 @04:54PM (#10591046)
I remember that code for Ruby 1.8 required changes in source to make it run on Ruby 1.9 and that was just a minor version change.
Re:Python 3 makes it easier to develop high-quality software by danso on Wednesday November 18, 2015 @04:33PM (#10590904)
When was your experience? I could definitely agree with that pre 1.9.x. But I can think of barely a handful of examples in which minor things have broken during my time in Ruby from 1.9.3 to 2.1.5...even when booting up a year-old laptop with godknows what actual version of Ruby via rbenv I have on it...things just seem to work...And even problems that arise from specific scenarios with libraries, or when I simply must move an old system from 2.0 to 2.1.x or whatever...Upgrading the Ruby and then running bundler almost always just works.

In contrast, with Python, on a weekly basis I run into 2.x and 3.x problems...last week it was running the Google Cloud SDK, which is 2.x only. I say this as someone who has almost switched exclusively to Python (3.x) and enjoy it...but man I miss the days of Ruby's ease-of-use.

(but yeah, 1.8 to 1.9 was not a lot of fun, but thankfully, many years have passed since then)

Re:Python 3 makes it easier to develop high-quality software by takeda on Wednesday November 18, 2015 @04:56PM (#10591051)
Yes, it was 1.8 to 1.9 and frustrating because the change was just increase in minor version number.
Re:Python 3 makes it easier to develop high-quality software by jrumbut on Wednesday November 18, 2015 @04:40PM (#10590948)
It's not necessarily about breaking or maintaining backward compatibility that matters here. It's about how supporting two similar looking yet ultimately incompatible versions creates confusion for new users, driving them away.

This is the same issue facing Perl (although the Perl situation seems more dire) WRT Perl 5 vs Perl 6. For Python maybe the benefits of keeping Python 2 alive for large users offsets the harm of any confusion, I have small projects (all in Python 3) so it's a rare annoyance rather than a deal breaker.

Re:Python 3 makes it easier to develop high-quality software by labster on Wednesday November 18, 2015 @05:54PM (#10591354)
> This is the same issue facing Perl (although the Perl situation seems more dire) WRT Perl 5 vs Perl 6.

The situation with Perl is neither more dire nor really the same issue as with Python. Perl 5 is not going away. Perl 6 maintainers are not the same people as Perl 5 Porters -- both will be maintained for the foreseeable future.

Second, Perl 6 is a significant change to Perl, with far more features and somewhat different syntax. People will want to change for the features. Running Perl 5 code from inside Perl 6 works by calling out to libperl, which runs a real version of Perl 5. Perl 5 will still be popular due to ubiquity, access to CPAN modules, and things like CPAN Testers.

So it's a choice for the developer, to develop in a new language that just happens to be Perl-flavored, or to go with any other language. Not really a crisis.

Re:Python 3 makes it easier to develop high-quality software by takeda on Wednesday November 18, 2015 @05:05PM (#10591113)
I agree, I think they should simply deprecate Py2 instead dragging it for 7 years + 4 more planned. People would start migrating if they knew that Py2 would be EOL soon and instead of Py2 or Py3 would be whether you want your code to run in the future and make sure all security bugs are fixed.
Re:Python 3 makes it easier to develop high-quality software by aoro on Wednesday November 18, 2015 @03:57PM (#10590683)
So, what did you choose?
Re:Python 3 makes it easier to develop high-quality software by markdown on Wednesday November 18, 2015 @04:32PM (#10590893)
PHP.
Re:Python 3 makes it easier to develop high-quality software by ausjke on Wednesday November 18, 2015 @04:54PM (#10591044)
PHP is still the king at web, php5-cli might not be as popular as Python.

Python seems more popular at Academics, and it's essentially the Basics for the generic public, or replacing Java at colleges nowadays.

That been said, I use PHP myself, PHP7 looks promising.

Python 2 vs 3, AnguarJS 1 vs 2, the self-conflicted "upgrade" is double-sided.

Re:Python 3 makes it easier to develop high-quality software by thejosh on Wednesday November 18, 2015 @05:12PM (#10591155)
PHP7 new features are very welcome and look great.

Speed improvement is great as well. Seeing 2-5x speed improvements. :)