There are 33 posts tagged with python.

There is an Atom feed for posts tagged with python.

Leaving Montreal

2011-11-10 Tags: , ,

The word is already out but in case you don't know yet, I'm moving to San Francisco to join Facebook. This news will be a surprise to some of you, especially since I've never been a big Facebook fan. I've always willingly shared lots of personal information about myself on this Website; the lack of privacy has never been a show stopper to me. When I stopped using Facebook, it was not on moral grounds, it was because I did not see myself as a part of their target market.

But I have only a few days left in Montréal and I can write about my reasons for moving to California at a later time. At this point, I find it urgent to mention that I've had a great time with many of you here in Montréal and that I would not want to go without drinking one more beer with all of you.

Mark the date, on Wednesday, November 16th, I invite you to join me for a 5-à-7 at Benelux, a long-time sponsor of Montréal-Python and probably the hottest pub in the tech community these days. It gets even better because Benelux likes cool people and by definition, if you know me, you certainly are very cool. This is why Benelux will give you a free beer next Wednesday; just ask me for a coupon. See you there!

Ajah featured in Don Magazine

2011-07-10 Tags: ,

Ajah, our Python powered interactive directory of funders for Canadian non-profits, was recently featured in Don Magazine. We've been in the local news before but the previous mentions were all were by the tech community. Don Magazine is a publication for non profits and it's rewarding to see that beyond the cool tech, the non-profit sector sees a real value in the service that we developed.

Exploring the charitable sector through a star schema

2011-02-22 Tags: , , ,

We just released theSector.ca, a tool to explore the Canadian charitable sector. In a nutshell, it's an interactive directory of charities that one can use to gain insight on individual charities as well as trends such as fundraising, staffing, and expenditures across the charitable sector.

We've already covered why we believe that it's going to shake the charitable sector and now I want to take a moment to celebrate the cool tech that allowed us to make it happen.

Both Fundtracker and theSector are TurboGears 2 applications running on top of a Postgres database. In Fundtracker, we achieved very good performance through fine tuning of Postgres and sprinkling bits of denormalized data here and there. Since you need a subscription to use Fundtracker, we can keep an eye on the growth and we feel safe from overnight scalability problems but theSector being a freely accessible tool, we had to make sure that it could handle a Twitter storm and our main tool to do that is systematic denormalization into a star schema.

Talking at PyCon 2011

2011-01-08 Tags: ,

I'll be presenting at PyCon 2011. For most of my life, public speaking inspired some kind of dread in me but Montréal-Python offered me many opportunities to jump on the stage and to survive so I feel like then is hope that I will come out of this presentation alive as well. In fact, I will be talking about Montréal-Python and, among other things, how we teach members of our community through progressive acclimation that presenting your ideas to your peers is fun, stimulating, and very rarely fatal.

Ajah is Online

2010-09-21 Tags: , ,

Ajah, the startup I'm building with Mike, Nick, and Dan, is now online. Check it out: ajah.ca.

We spent a crazy evening proofreading and tuning the web-server to make sure that everything would be running smoothly for the launch. That was fun.

Only the static part of the site is public for now but the Fundtracker application is there in the same Paster instance and we have a group of analysts using it to copy edit our data and making sure that everything will be top-notch for the big launch.

Ajah Fundtracker is a TurboGears 2.1 application, our templating engine is Mako and even though we played with a few form generators, we ended preferring the raw Formencode encode approach. As long a you have a good text editor, it's really straight forward to code your forms by hand to we did just that.

In the back-end, we have a Postgres database and a Xapian full text search engine. The site runs inside a Paster instance behind mod_proxy, all running on a Linode VM.

We will open a limited beta in the coming week then soon after that, it's the big launch. I'm excited.

On Schedule Builders

2010-02-06 Tags: , , ,

It's conference time once again. In two weeks, I'll be attending PyCon, a conference that no Pythonistas should miss, then one week later, I will be at ConFoo, a conference that we are organizing at Montréal-Python along with other local user groups.

If you've been to a multi-track conference, you know the drill. As the speaker wraps up for his conclusion, instead of paying attention, you rush to unplug your laptop and to reach for your annotated program. Indeed, you've got only a moment to find out in what room the next talk that you planned to see is.

But this year is different.

One week ago, PyCon unveiled a very nice track selector application. It's very nice because it allows you to select in advance the tracks that you don't want to miss, to add them to you calendar application or to share your schedule with friends. That way, no more last minute rush to find where you go next.

I was really happy to see that so I shared the word with the ConFoo team, mentioning that it's the kind of things that we should develop for ConFoo 2011 next year. Well, it turned out that Anna, the ConFoo webmaster, really liked the idea and she came up with a schedule builder for ConFoo after only 48 hours. Both selectors have their own strengths and weaknesses but at least they get the job done. Hopefully more conferences will follow the trend of implementing track selectors; this is the kind of simple features that really improve the user experience.

Some PyCon Stats

2009-11-14 Tags: , ,

Since I'm coordinator of the Python track at ConFoo.ca, I like to keep track of what's going on at other Python conferences. PyCon recently published the list of selected talks so I decided to summarize it into a few high level stats:

  • 96 sessions, that's 32 per day;
  • 69 presenters, 1 for 3 sessions, 8 for 2 sessions, 60 for a single session (there are panels and sessions with more than one presenters);
  • 75 sessions of 30 mins, 20 of 45 mins, and one that my scraper missed somehow;
  • 27 'beginner' sessions, 60 'intermetiate', and 8 'advanced'.

How does that compare with PyCon 2009? Honestly, I don't know. Quick like that I can say that it's going to be a larger PyCon and that the level of the talks is increasing but that's about it.

How does it compare to ConFoo? Hard to say since we have not selected the talks yet but it's sure to influence us on the number of talks per speaker and on the level of the sessions. By the way, the ConFoo call for speakers was extended by a few days so it's not too late to submit something over the weekend.

Anatomy of a failed software project

2009-11-13 Tags: , ,

A friend of mine just started a series of blog posts on the anatomy of a failed software project. He has an interesting opinion that contrasts the value of technical design to the importance human factor and the way team dynamics can make or break a project.

Some of you might be able to recognize the company but please respect the author's choice to leave it unnamed.

Boostrapping a Startup

2009-09-18 Tags: ,

Since many of you are still sending me news of very interesting Python projects, it's time for me to do a status update. I've met many persons in the last few weeks and beyond the fiery passion of everyone working on solving hard problems, I was deeply inspired be the aspiration of owners and founders. One thing leading to another, I got in touch with great cofounders who were looking for a partner with some experience in technical lead so I decided to team up with them.

The exact details of what we are working on will start to transpire in the coming weeks but suffice to say for now that we are working on a Python-powered Internet application that will considerably help the non-profit sector. Stay tuned.

Leaving Pivotal Payments

2009-08-31 Tags: ,

Today was my last day as lead-developer at Pivotal Payments. As the company decided to phase out in-house development, a good chunk of the dev-team got "down-sized", as they say in this economy. I still don't know what I'm going to do; I will probably take it easy for a few weeks then I'll start looking for interesting consulting opportunities.

If you're working on some interesting Python project, let me know now, before I get involved with something else.

Montreal Python 8 is tomorrow

2009-07-07 Tags: ,

Don't forget, Montréal Python 8 is this Wednesday.

Merging onto the evolutionary highway

2009-03-28 Tags: ,

Blogging live from PyCon. Guido van Rossum opened the morning session with the keynote talk. He covered a lot of ground but one idea that struck me is that he wants to more of less freeze the standard library.

He proposes that with a perfectly valid rational: if the Python dev team removes a module from the standard lib, some program out there will break and on the other hand, if a new module is added to the standard lib, it has to be extremely stable since it will now be tied to the somewhat slow release schedule of CPython. That position is obvious but Guido also mentioned that more work is getting done on the specification of modules dependencies and that is the key to a dramatically new landscape in the Python world.

Setuptools already did a very good job at dependencies specification and Guido did acknowledge it. With Setuptools, one can define that his package will depend on some other package with a dependency spec of the form "depname>=1.3.5". Once you know the dependencies of a package, it's almost trivial to write a tool that will install a package and all its dependencies; easy_install is a good example of such a tool.

PyCon part 2

2009-03-26 Tags: ,

Blogging live from PyCon. I'm still in Chicago having quite a good time learing stuff related to Python. My second tutorial for the first day was on functional testing with twill and selenium. I already do a lot of that stuff but it was nice to see a good overview of what a mostly automated test suite for functional tests can look like. There was a lot of nice tools that were used to glue everything together. I was a casual user of nosetest and I really look forward to unchain all the powerful features that I didn't know about.

Day two started full speed with a tutorial on Tosca Widgets by Chris Perkins. The level was perfect for me and I like the fact that the framework used for the hands on session was Pylons. It's not just that I already know Pylons quite well, it has something to do with the fact that Pylons is so light as a framework that you can really understand what's going on. Many exercised with a very tight feed back loop and one-on-one help. Wow! Why can't universities hire people like that to give the lectures?

After my second dinner at PyCon, I know that the vegetarian menu, no matter how tasty it is, is sure to keep me slim. It must be the first time that I ever go back to get a second serving of salad.

Last tutorial was on advanced SQLAlchemy with Michael Bayer and Jason Kirtland, the main implementors of Alchemy. That one was quite unique as it featured interactive slides: the slides consisted of a Python scripts that execute code with syntax highlighting when you moved from one slide to the next then give you an interactive interpreter so you can play with the new classes and objects that were just created. That's great but the pace of the presentation was extremely fast and I had a hard time to catch up. When the Alchemy guys say "advanced", they really mean it. Fortunately I still have the slides with me so I can decipher them when I get some time.

I'm now waiting for Francis to get out of his plane so we can go for a beer. What a day; I feel like just one week ago I didn't know anything about the language that I use everyday. That conference is worth it more than I expected. More to come.

Conferences in March

2009-03-08 Tags: , ,

March is a busy month in the Free Software world. From 2009-03-21 to 2009-03-22 I'll be attending Libre Planet in Boston then from 2009-03-25 to 2009-03-29 I will be at PyCon in Chicago. Lot's of great speakers and two days of advanced hands-on tutorial by the leaders of the industry. You can't go wrong with that.

I still don't know how I will travel to Libre Planet though. Traveling by train would require going up to New York then back north to Boston and all the bus fares that I found so far take 12 hours or more to reach Boston. I might end up taking the plane but the best option would be to find someone else for car pooling. If you are in on around Montreal and that you plan to attend Libre Planet by car, let me know.

update: I'll be car pooling with Pascal Charest from Laboratoires Phoenix. Woohoo!

Montreal Python 5

2009-02-12 Tags: ,

I have the pleasure to announce that Montreal Python 5 will be on 2009-02-26 at La Banque.

The main presentation will be Alexandre Vassalotti on Porting your Code to Python 3: Python 3, also colloquially known as Python 3000, is now out for general use. Unfortunately, its usage is limited since only a few libraries are currently compatible with Python 3. In this presentation, you will learn a straightforward process for migrating Python code and the common difficulties related to the transition. In addition, an overview of the new features brought by Python 3 will be described with practical examples. Finally, upcoming changes and features in Python 2.7 and 3.1 will be presented.

Alexandre Vassalotti is a contributing Python core developer and a computer science student at McGill University. He was a successful participant of Google Summer of Code 2007, for which he worked on the different aspects of Python 3.0.

The main presentation should be from 45 to 60 minutes. Before the main presentation, there will be a few flash (5 mins) presentation. We still have open spots for the flash presentation so don't hesitate to send us your idea for a flash presentation.

La Banque is located at 175 Roy. See you there.

Montreal Python 4

2008-09-16 Tags:

We've had to wait for a long time and the great summer might have something to do with it. Okay, okay, the summer was crap but we still had to wait. At last, Montréal Python 4 is uppon us and it's going to be a really special one.

Hugo Boyer will bring his CNC machine tool and grind away material from a block of stuff until he gets some actual object. Hugo uses Python to process his CAD files and to control the CNC. Don't miss this presentation: it's going to rock.

Montreal Python 3

2008-06-26 Tags:

The Montreal Python user group meeting is tonight. Martin Blais of xxdiff fame will present a dependency analyzer for Python modules. See you there.

Videos of Montreal Python 2

2008-05-12 Tags: ,

Videos of Montreal Python 2 are finally ready. A big thank you to Pior for his hard work behind the camera and in the cutting room.

Code examples from Montreal Python 2

2008-04-12 Tags: , ,

I just uploaded the code examples from my presentation at Montréal Python #2 on PyQt and PyOpenGL. I fixed the lighting and the positioning of the model but otherwise, the package contains exactly what was on the screen. You can also download the multiple alignment viewer that I presented from my bioinformatics section. Enjoy!

Second Montreal Python Meeting

2008-04-02 Tags: ,

The second Montréal Python user group meeting is on 2008-04-10. Two talks this time: one on scripting Asterisk with Python by Cyril Robert, the other on graphical programming by me. My shameless plug reads as follow:

Python is a great language for fast prototyping and iterative development. It has a broad standard library, a wide variety of add-on modules, and its clean C API fueled the creation of bindings for essentially all the popular C and C++ toolkits.

In this practical introduction, I will put the slides aside and hack a simple graphical application using PyQt and PyOpenGL. I will try to do as much code as possible in 35 minutes then answer questions for another 10 minutes. If time allows, I might delve into the land of database access with SQLAlchemy, plug-in architecture with Setuptools, and unit testing with Doctest.

If you plan to show up, please help the organizers with the logistics by mentioning it on the wiki. Yes, there will be refreshments.

Video of Montreal Python 1

2008-02-18 Tags: ,

Thanks to Savoir-faire Linux, I was able to film the first Montréal Python User Group meeting. After lots of curses and struggle, I finally completed the editing and the encoding of the Montréal Python #1 video. Pior Bastida deserves a very special mention for finding the magic spell for mencoder.

First Montréal Python user group meeting

2008-01-22 Tags: ,

Pythonistas of Montréal, rejoice! We now officially have a user group and our first meeting is to take place on 2008-02-07 at 18h30. It's going to be in Akoha's office: 3981 St. Laurent, suite 615.

There are two presentation slots; I think both are for 20 to 45 minutes. As I write this, both are still open. Who will break the ice?

Many code news

There are fashions in the markup world. There was a time when using colons (':') to split fields in /etc/passwd was enough, a time when no one had a problem with using TABs as command delimiter in Makefiles. Then came the era of heavy markup, "more semantic!", they all asked for, and we received XML.

More semantic is a good thing but anyone who wrote documentation using DocBook knows that the heavy syntax gets annoying really fast. No wonder no one documents his programs. Fortunately, some lazy programmers wanted, for some obscure reason, to document their programs; they propelled us into a new era of light weight markup.

There are quite a few really good light weight markups out there, and Gazest supports most of them. For simple formating, my favorite is definitely Markdown. It reads like text emails: the syntax doesn't do much but the essentials are there and the syntax actually helps to read the source instead of obfuscating it. For blog comments, or anything that won't need much semantic, in applications where you can't use for HTML, for security reasons or just because it's a pain to type, Markdown is the way to go.

Gazest is being sponsored

2007-11-08 Tags: , , , ,

I'm really excited to announce that the Gazest development is being sponsored by Savoir-faire Linux. The demo site will now run much faster: they have server farms with big fat pipes scattered across Montréal. Cyrille, their CEO, has a great understanding of post-industrial economy: the market of services where knowhow is the main capital. It's always a pleasure to talk with him; he sees free software not as an altruistic endeavor but as the only logical choice for corporations to compete in the modern world. He believes in the economic viability of free software and the current sponsorship is the testimony that those are not empty words. More exciting news to come shortly, stay tuned.

setuptools_git 0.3

2007-11-06 Tags: , , ,

My gitlsfiles plugin is dead: it was a silly name. It has reborn with the really sexy name of setuptools_git. Setuptools_git 0.3 has better documentation and is more portable than gitlsfiles.

Gazest 0.3.9

2007-10-27 Tags: , ,

Gazest 0.3.9 is out. It now runs on Alchemy 0.4, there are many bug-fixes here and there, the style have been improved and you can now search. Enjoy!

update: 0.3.9.1 is out: there was a bug with the abuse report form.

A new kind of wiki

2007-10-18 Tags: , , ,

What is a wiki? It has to be more then a just program to transform _light_ *weight* text markup into valid html. Beyond the markup, a wiki is a platform to help many persons work on a shared document. Being a programmer, I'm familiar with this concept since we use similar tools to work on shared programming projects: revision control systems.

The state of the art in revision control systems is Git and Mercurial. What is it that makes then so good? Some people will tell you that it's because they are distributed. That's a good point but there is more to it. They manage to work without centralized authority by merging concurrent changes. To be able to do that, they have to be able to detect which changes you need to merge and and which ones you already have and the key to do that is to keep the full family lineage of every revision of every files for all the people that you work with. The main problem with Subversion is not that it's centralized, it's that it flattens the history into a linear series of revision and that destroys the hope for smart merges.

Older stuff


2007-09-28 Git and Setuptools


2007-07-18 A cure for gigazillion account syndrome


2007-07-12 On object infested APIs


2007-06-16 Yould 0.3


2006-11-22 Raw Sockets


2006-02-25 Viruses