New Year Python Meme 2012

By anders pearson 27 Dec 2012

Following Tarek’s lead:

1. What is the coolest Python application, framework or library you have discovered in 2012?

I’m really tempted to go along with Tarek and pick PyZMQ, since 0MQ has been a pretty major mind expander for me this year, but I honestly haven’t used anything from it besides the basic 0MQ bindings. Instead, I’ll pick IPython Notebook, which I’ve really only just begun playing with (after the PyData NYC conference), but is looking pretty exciting. I’m seriously impressed at how much potential is packed into something so simple. Salt really needs mentioning too. Very simple and powerful.

Yeah, I really suck at picking only one thing to highlight.

2. What new programming technique did you learn in 2012?

I guess the biggest newish “technique” (rather than a language, library, or framework) for me in Python-land would be Behavior Driven Development. BDD with Lettuce was a big factor in the development of a major project at work. I’m hoping to streamline our Django/Lettuce/Selenium setup to make it easier for more of our projects to move in that direction.

3. What is the name of the open source project you contributed the most in 2012? What did you do?

Well, my biggest project lately, that I’m very proud of is a distributed image and thumbnail server called Reticulum that is written in Go, not Python. I did develop a prototype in Python/Django first before I settled on Go for the main implementation.

4. What was the Python blog or website you read the most in 2012?

I really have no idea. I have hundreds of blogs and aggregators in my RSS reader so it all just comes at me in one big firehose of information. By the time I’ve read and digested it, I’ve lost track of where it came in from.

5. What are the three top things you want to learn in 2013?

  • Moar Maths. I’ve been on a big kick lately of relearning all the calculus, linear algebra, and abstract algebra that I’ve largely forgotten since college.
  • Pandas. There’s so much cool stuff going on in the data analysis world right now that makes me wish I’d learned statistics properly.
  • More 0MQ. I’ve done quite a bit of fiddling with Erlang and now feel pretty comfortable with Go. Through those, I feel like I had to wrap my head around some pretty difficult concepts around concurrency, network programming, and distributed systems. When I finally got around to learning 0MQ and read the guide a lot of what I’d been learning in those other languages came into focus and I could appreciate the larger patterns. Then I started noticing that all the other interesting projects I was looking at, like IPython Notebook, and Salt are built on 0MQ. Then I built some basic stuff with it myself and found it pleasant to work with in several different languages. 0MQ is definitely one of those technologies that I can feel stretching my brain in good directions and I’d like to really learn it inside and out in the near future.

6. What are the top software, app or lib you wish someone would write in 2013?

I’ve got a big project at work starting up that is going to involve writing a ton of Netlogo. Don’t get me wrong, Netlogo is a neat little platform and is very good for what it does and what we’re using it for. But I would kill for a platform with the same capabilities for agent-based modelling that let me code in Python instead. Actually, years ago, I built a simulation framework in Python for our engineering department that came pretty close to being what I am imagining, but funding on that dried up, our priorities shifted, and it never quite made it out into the world. Maybe I’ll revive it in a modernized form. Now I’m thinking about something architected like IPython Notebook (or built off it) with a Python engine and a web/websockets frontend that can make use of nice D3.js and SVG visualization.

Tags: programming python