Planet dgplug

April 14, 2014

Sayamindu Dasgupta

B.R. Ambedkar and his prophecies

Today, 14th April, is the birth-day of Dr. B.R. Ambedkar, the principal architect of the Indian Constitution. I hadn’t read much of Ambedkar before, and I almost accidentally stumbled upon his work while reading John Dewey as a part of grad-school work. Ambedkar, it turns out, studied under Dewey at Columbia, and considered Dewey as one of his favorite teachers — a paper outlining the influence of Dewey on Ambedkar can be found here.

A couple of weeks back, I was reading the speech that Ambedkar gave towards the end of the constitution drafting process. Even after nearly 65 years, the speech rings largely true, in an almost prophetic manner. The text of the entire speech is available online as a part of the public parliamentary proceedings (volume XI, part 11, pages 55–63), and here are some excepts that I thought are extremely relevant even today:

‘If we wish to maintain democracy not merely in form, but also in fact, what must we do? The first thing in my judgment we must do is to hold fast to constitutional methods of achieving our social and economic objectives. It means we must abandon the bloody methods of revolution. It means that we must abandon the method of civil disobedience, non cooperation and satyagraha. When there was no way left for constitutional methods for achieving economic and social objectives, there was a great deal of justification for unconstitutional methods. But where constitutional methods are open, there can be no justification for these unconstitutional methods. These methods are nothing but the Grammar of Anarchy and the sooner they are abandoned, the better for us.’

‘This caution is far more necessary in the case of India than in the case of any other country. For in India, Bhakti or what may be called the path of devotion or hero-worship, plays a part in its politics unequalled in magnitude by the part it plays in the politics of any other country in the world. Bhakti in religion may be a road to the salvation of the soul. But in politics, Bhakti or hero-worship is a sure road to degradation and to eventual dictatorship.’

‘On the 26th of January 1950, we are going to enter into a life of contradictions. In politics we will have equality and in social and economic life we will have inequality. In politics we will be recognizing the principle of one man one vote and one vote one value. In our social and economic life, we shall, by reason of our social and economic structure, continue to deny the principle of one man one value. How long shall we continue to live this life of contradictions? How long shall we continue to deny equality in our social and economic life? If we continue to deny it for long, we will do so only by putting our political democracy in peril. We must remove this contradiction at the earliest possible moment or else those who suffer from inequality will blow up the structure of political democracy which this Assembly has so laboriously built up.’

by sayamindu at April 14, 2014 05:25 AM

April 10, 2014

Kushal Das

Notes from Python Language summit

The day started with introductions. Guido introduced himself as its all his fault.

Release management discussion

Larry Hastings started the day with discussion on 3.5 release. 3.4 release was actually in 16 months. He wanted a feedback on the next release, if we want it in a smaller release cycle than the usual 18 months. Guido mentioned to stay with the 18 month cycle.

Larry also asked about opinions on state of the SCM after release candidate 1, should we create 3.5 branch and if yes then should we allow people to commit there or not? Default should point to 3.5.1 or 3.6 at that time? There can be another scenario where we do not create the 3.5 branch and keep the default as 3.5 release itself. The discussion will continue in the mailing list.

Next topic in the agenda was reports from different implementations.

PyPy

Alex Gaynor gave us the current status of PyPy project. There will be a second fund raiser on STM. The next release is targeting 2.7.6, there were a million downloads. While discussing about Python 3 branch he explained that it it only 3 bugs away from shipping and it is based on 3.2.

There was a small discussion about state of CFFI for standard library inclusion. Alex and David Beazley are supposed to work on cleaning PLY for the same. General opinion was that it should not be hidden as a private part of the standard lib.

Ironpython

Dino Viehland talked about the status of Ironpython project. Development is going on both 2.7 and 3.x series. 2.7.4 was released last year. Many new contributors came into the project which is a good news.

Jython

The developers sent a detailed report to Micheal Foord and he will forward it to the python-dev list. The takeaways from the mail are

  • Small number of contributors is a big problem.
  • 2.7.beta2 is tagged which used Java7.
  • Buffer protocol work is done (foundation to Python3 support).
  • They are also working on PyPi tooling.
  • There is also hope for releasing CFFI backend for Jython during Europycon sprints.

No standard library as module

When it was asked that if the other implementations want the standard library as a separate module to be resused, all agreed as 'No'.

Packaging

It was the longest discussion which made hungry developers really hungry :) Jokes aside, Nick Coghlan gave a detailed report on the advancement of the packaging world. Most of the development/design discussions are now happening on the distutils sig and in pypi mailing lists. He managed to put the use cases a very broader audience now, so we can except better feedbacks. On the development side, Warehouse is now implementing all old API(s), you may want to try it out at https://warehouse.python.org/.

3.4 has pip included, one usecase was to help people who downloads binary installers from our site. They can now install Django or other projects in wheel format.

Everyone also agreed that having the buildsystem inside the language is a bad idea. The buildsystem should be able to do cross-version builds.

Nick also pointed us to http://packaging.python.org/ which is the documentation for the whole echosystem. We all agreed that the Python echosystem is bigger than the core interpreter.

Glyph wants a PSF fund to a usability study on Python. There were a few other suggestion on PSF support for tooling development.

Pyston

Kevin Modzelewski explained how they are rebuilding a complete vm which is targeted to Python, this also means too much work but one can customize. It is targeting Python2.7 as Dropbox runs on it.

At this time of discussion Nick pointed us to http://speed.python.org/, target is to have a common set of tests to benchmark different implementations. He asked if any of the implementations wants to maintain it. We need more volunteers for that. A common set of cross-implementation benchmarks stays at http://hg.python.org/benchmarks and the mailing list for discussion is at https://mail.python.org/mailman/listinfo/speed.

Mypy project

Jukka Lehtosalo gave a talk on his mypy project which uses Python3 function annotations. Greg P Smith pointed us to a similar kind of Google project, https://github.com/google/pytypedecl.

Notes from teaching and outreach

Selena Deckelmann talked about few pain points from teaching and outreach.

  • Website is confusing. (Should I go for Python2 or Python3?)
  • Packaging and installer problem
  • So many different bug tracking system is also confusing
  • OPW program for Cpython, this is the first year we are participating.
  • Jessica McKellar will write "brand new coder tutorials".

Mercurial

Matt Mackall talked about Mercurial's painpoints for Python3. It currently works for 2.4-2.7, though he might drop 2.4 support in near future. It will be on 2.7 till RHEL7 is not EOL. He also said startup time is concern for him. Only big positive point he can see in Python3 is SNI. That feature allows you to do HTTPS to non ip based virtual hosts. Porting whole Mercurial to Python 3 is still a very big work. They had two gsoc students in last two years.

From here the talks suddenly moved into mythical Python 2.8 which we will not have, nope, sorry :) Guido wants a feature list from the people who are asking for 2.8 to understand better. We also want to help developers to make a single source for Python 2 and Python 3 release less painful.

Python 2.7 is alive and in good health and support will continue on the same.

Few points were talked about from 3.5, like byte formatting, unicode surrogate, binary mode cleans for bytes etc.

April 10, 2014 03:32 PM