

Ask HN: Who is building something new in Python 3? - japhyr

The post today about Python 3 has me thinking about what to use for new projects. It is clear that many people are choosing to stay with Python 2.x because they have a large, active codebase that would be difficult to migrate.<p>If you have started a significant project recently in Python 3: What is your project, and how has the decision to use Python 3 affected the project?
======
rectangletangle
[https://github.com/rectangletangle/nlplib](https://github.com/rectangletangle/nlplib)

"What is your project" A bunch of tools for natural language processing, with
an emphasis on code composability.

"How has the decision to use Python 3 affected the project?" Because my
project has an entirely new code base, it made sense to aim for longevity by
using the most recent version of the language. It seems like a lot of the FUD
around 3 has been about third-party library support. However, I've found that
everything I really needed was readily available for 3. Though there're
probably some specific usecases that 3 just doesn't quite cover yet. Seeing as
most of the major third-party libraries have made the switch, I think that it
will take major Linux distros shipping 3 as the default for it really to catch
on.

Print being a function, has been a nice addition seeing as it's handy to pass
it as a logging callback; it can also now be used within a lambda. There's a
bunch of nifty new syntactic sugar like extended iterable unpacking, which
make life just a little bit easier. The more generalized comprehension syntax
is nice, seeing as it's an extremely powerful way to make sets, dicts, or
whatever. The cleanup done to the standard library, specifically urllib has
been nice. I haven't found a good use for the new function annotation syntax;
however, I'm sure someone will come up with a neat way to utilize it.
Subgenerators for recursive flattening are nice, as well as the generator
syntax as a whole.

------
iends
I largely stopped coding and python and have moved to node.js and go (mainly
because I'm most interested in 'real time' webapps and gevent/twisted offer
nothing compelling compare to either nodejs or go).

Where I have continued to use Python is statistics and helping biology PhD
students do basic modeling. (To be fair, none of this really requires Python
3)

