May 20, 2015

What Kind of Geek am I? (1)

I've been pondering about why sometimes progress seems hard to make when I am learning a new piece of technology, which other people apparently just pick up and start using with no trouble at all. I now wonder whether it's a combination of personality and knowledge.

In common with many developers I like to understand things thoroughly. For me this means being able to construct satisfactorily self-consistent mental models that I can, effectively, "unit test" by applying what-if techniques. Unfortunately my history as a developer means that I have a detailed knowledge of system architecture. Without claiming to be fully up-to-date (for example the last time I built logic was in 1987, from Schottky TTL clocked at 12 MHz), when I use the term "full-stack" I include a reasonably detailed knowledge of all aspects of system architecture, including the hardware, operating system, language support libraries and application.

In other words, I am (often subconsciously, thanks to many more than 10,000 hours of practice at this computer game) aware of lots of things that can go wrong at many different levels.

I suspect this causes me, without specific motivation, to choose test cases that go “near the edge of the envelope”. It's frustrating when I'm learning because it often reveals deficiencies (most often in the documentation) of the “system under test” that can block progress; but I also believe it helps to integrate my newly-learned knowledge, and leaves me with valuable knowledge that you just can't pick up in the middle of the road.

February 14, 2015

Carl Trachte: Mining Engineer Turned Geek

Another #LABHR post.

I first met Carl when he came to a training session for new PyCon speakers. He was very nervous, and concerned that his topic would not be of sufficient interest to his audience. I made a point of attending the beginning of his talk, and by the time I left there was no doubt in my mind that Carl would do well in the Python community.

Over the years he has done invaluable work for the PSF, both in policing potential abuses of the Foundation's trademark for the Python programming language, and also in collecting sample descriptions of Python in many languages and alphabets to try and make Python's web presence more welcoming to those from diverse linguistic communities.

He has been a PyCon volunteer for a while now, helping others to find what they need and demonstrating by example the helping spirit of Python and open source generally.

Carl has done all this with no thought of return, and in doing them has helped uncountable numbers of Python users. Well done, Carl, and thanks!

Brian Curtin: A Solid Record of Community Involvement

As a personal #LABHR contribution (having already thanked recipients of PSF awards) I should like to bring to your attention a person by the name of Brian Curtin.

If you are part of the Django world you may know Brian from his work with his then-local Chicago group, though he latterly moved to San Antonio. He has been featured as a Python core developer in the Python Insider blog, and more recently in Mike Driscoll's Pydev of the Week column.

Brian also contributes by serving as a Director of the Python Software Foundation, that worthy body charged with responsibility for the intellectual property in the Python programming language and in growing the international Python community. He is in essence its voice, having for a long time been the Foundation's Communications Officer. Though many others contribute from time to time, they do so under Brian's editorship, and I know from personal experience he is a great editor to work with.

Brian has also spoken and volunteered at PyCon on a long-term basis. I can't think of a single area he's touched without making a contribution of some kind.

So thanks, Brian, for making a difference, and good luck in your most recent role with Rackspace in San Antonio.

February 13, 2015

Building a Hat Rack

Leslie Hawthorn, Elastic Search’s enthusiastic communities manager, has been involved with open source for quite a while, and has come up with what seems to be a good idea. She's trying to get public acknowledgment for services to open source that often go unsung, and I recommend that you read her blog post and take action on it yourself under hashtag #LABHR (Let's all build a hat rack). I certainly shall be doing, and this is the first of my actions. I gather the intention is to show developers some love on Valentine's Day to start with, but it would be amazing if this could become a continuous process.

It was in the spirit of "building a hat rack" in the sense of making achievements visible that I first proposed the Python Software Foundation present Community Service Awards to deserving members of the community. The prize bestows a free place at PyCon to recipients, but mostly the certificate simply represents recognition that a group of your peers have recognized your efforts, which have typically been long-term and beneficial to a broad cross-section of many Python communities. Recipients are listed on the python.org web site.

More recently the Foundation introduced Distinguished Service awards, of which so far there have been two recipients.

If you have anything to do with Python at all, even if you are “merely” a Python user, the selfless actions of these people have impacted your life in a huge way over the last 25 years, and I hope you are grateful to them, as I am.

February 9, 2015

How to Get the Bits of Python You Need Where You Want Them

Following up my recent short video on installing Anaconda I now introduce miniconda, which is a distribution that contains only Python and the conda software on which Anaconda is based. The remainder of the Python packages you need can be installed in virtual environments managed by conda.



When you are building Python systems with mundane requirements this is a great way to put your environments together. From my experience so far it's professionally built and unusually well engineered. Kudos to Continuum Analytics for getting this stuff out.