Showing posts with label education. Show all posts
Showing posts with label education. Show all posts

February 7, 2015

How to Get Almost All the Python You Might Need

I am often asked what is the easiest way to build Python environments. For development purposes it's most convenient to have a "batteries included" environment that can be pared down once development is over. Continuum Analytics have for a while offered an open source project called Anaconda to provide easy access to both Python and the batteries.

If you are a Python professional and you get questions from people who would like to try the language I would suggest that the graphical installer would be most appropriate. For anyone familiar with the command line, the command-line installer is not only slightly smaller but allows the scripted creation of disposable Python environments which you can activate just by adding their bin subdirectory at the start of your path.

The video should explain this in detail.


In the video I create a disposable environment under /tmp. Anaconda environments are far heavier than a standard virtual environment, but they offer a huge variety of Python libraries without ever having to understand the complexities of package installation.

[For a more selective installation utility see How to Get the Bits of Python You Need Where You Want Them]

February 12, 2010

New Python Class Available

I am happy to announce that the O'Reilly School of Technology have made the first of four Python classes available on their interactive teaching system. Students passing all four modules will be eligible to receive a Certificate for Professional Development from the University of Illinois' Office of Continuing Education.

The PSF has discussed certification schemes in the past, and the general feeling of the membership appeared to be against them. This may be true for high-level personnel and those with advanced degrees, but we should remember that Python will also be increasingly used by technicians and others whose formal educational background does not include a training in computer programming. I feel that a university-approved certification will be helpful at that level.

While many certifications aren't that meritorious, if a scheme requires proper practical experience and the training includes mentoring by live instructors or advisers rather than just the passing of a multiple-choice examination it can have some real value.

Time will tell, but I believe we will have passed a milestone once a university-accredited Python certification scheme is available. All I have to do now is write the other three courses ...

[NOTE: the author of this blog will receive royalties based on the number of students taking the classes mentioned in this article]

January 7, 2008

Teaching Python to Programmers

Well, PyCon is now less than three months away, and the most recent event of note was the announcement of the list of tutorials. I am happy to say that my own proposal was accepted, so one of the offerings is Python 101 for Programmers.

The intention is to give experienced programmers who are new to Python enough insight into the language that the simpler PyCon sessions will make sense to them. PyCon is an incredibly valuable resource for promoting the Python language, and I hope that all readers will encourage programmers they know to come to the conference and learn more about this interesting language. Of course I'll be happy to see them in the tutorial too!

The PSF has made real attempts in the last couple of years to evangelize the language, but ultimately the lesson of evangelism is: the best promoters of a language are its enthusiastic users. It seems to me that Python is crossing the knee of some curve right now, and acceptance is improving to the stage that it's getting hard to find Python programmers.

Of course there's another reason for going to PyCon if you are looking for a job. The biggest and best Python employers have realized that PyCon is the easiest place to make contact with the community. You only have to look at the list of past and present sponsors to see that.

So, I hope to see you all at PyCon, preferably in the company of a programmer who's just starting out with the language!

July 17, 2007

Misunderstandings

Here's a quote from an article about agile programming which is otherwise quite well-informed:
But because of their simplicity, languages such as Python and Ruby are better-suited to writing small applications.
This is the kind of myth that really needs to be squashed at the source. Unfortunately the source in this case is a journalist who has written an article and moved on with her misunderstanding of the issues and the facts completely untouched.

It's difficult to know how to attack this problem, because even the Python Software Foundation's advocacy coordinator were to contact the journalist in question and correct the mis-impression the damage is already done, and another opportunity to gain the wrong idea about dynamic languages is out there to be used as "evidence" by those looking to press the advantage of some other technique. It must have annoyed David Goodger (one of the Foundation's directors) to be quoted shortly after that misstatement.

In this particular case the author of the article did manage to get a lot right - technologies should come second to business needs, agile methods can save money by delivering business value faster and avoiding large amount of rework, and so on. So the content wasn't all bad, but the misunderstanding of Python's suitability for large projects spoiled it for me.

But then, I (and, I presume, most of thios blog's readers) already know that Python can be used successfully to build very large systems indeed.

May 26, 2007

Natural Language Toolkit

I have just seen an announcement for the latest version of the Natural Language Toolkit. This is an excellent example of a useful open source software project and, as the announcement says:
It comes with 50k lines of code, 300Mb of datasets, and a 360 page book which teaches both Python and Natural Language Processing. NLTK has been adopted in at least 40 university courses. NLTK is hosted on sourceforge, and is ranked in the top 200 projects.
With this kind of software available for download, there will be many more unsuspecting Python users. The really nice thing, of course, is that the users aren't interested in using a particular language, they are interested in solving problems in a specific domain. The fact that Python lets them do this is a testament to its usefulness.