About

Ian Ozsvald picture

This is Ian Ozsvald's blog, I'm an entrepreneurial geek, a Data Science/ML/NLP/AI consultant, founder of the Annotate.io social media mining API, author of O'Reilly's High Performance Python book, co-organiser of PyDataLondon, co-founder of the SocialTies App, author of the A.I.Cookbook, author of The Screencasting Handbook, a Pythonista, co-founder of ShowMeDo and FivePoundApps and also a Londoner. Here's a little more about me.

High Performance Python book with O'Reilly View Ian Ozsvald's profile on LinkedIn Visit Ian Ozsvald's data science consulting business Protecting your bits. Open Rights Group

26 February 2009 - 18:49Screencast Interviews with Open-Source teachers

Recently I’ve interviewed four experienced open-source screencasters, three from ShowMeDo (all of which are Pythonistas) and Remy, a Brighton local, who teaches jQuery to designers:

Each screencaster uses different techniques and platforms and all have learned to screencast ‘the hard way’, particularly by learning from their mistakes and improving with each new ‘cast.

If you’ve never screencasted but like the idea of a video that demos your preferred tool (whilst you sleep!), do consider playing with the free tools like Jing, ScreenCast-o-matic and ScreenToaster (and perhaps moving to more advanced tools like CamTasia and ScreenFlow).  You can distribute your videos through sites like ShowMeDo, Vimeo and YouTube.


Ian applies Data Science as an AI/Data Scientist for companies in ModelInsight, sign-up for Data Science tutorials in London. Historically Ian ran Mor Consulting. He also founded the image and text annotation API Annotate.io, co-authored SocialTies, programs Python, authored The Screencasting Handbook, lives in London and is a consumer of fine coffees.

No Comments | Tags: Python, Screencasting

23 February 2009 - 19:23Informatics Update (invited post from Sussex University’s Computer Science dept.)

I asked Andy Philippides of Sussex University (Research Fellow and liaison for MSc projects) to start feeding me some news from the Informatics dept. after my presentation there before Christmas.

Here’s his first post – they’re especially interested in chatting to anyone who has an MSc or undergrad project to submit.  They’ll be along at the WiredSussex Jobs Fair on Thursday if you want to chat in person. 

Over to Andy…


I’m Andy Philippides, a lecturer at Sussex Uni where I study insect navigation. Ian asked me to write a few lines from time to time about goings-on in Informatics that might be of interest to the wider technological world, to let you know a bit more of what we’re getting up to in our ivory towers.

One of the main happenings for me this month is to begin organising dissertation projects for the Master’s students. These are 4 month research-based projects which run over Summer and are the major piece of work for the students.

The topics vary widely – as wide as the range of MSc courses on offer – from robotics, E-commerce, databases to data mining, not to mention web-design and virtual environments. Topics are proposed by both faculty and students and the topic agreed between the student and their selected supervisor.

In the past, we have also had projects suggested by – and run in collaboration with – industrial partners. The level of industry engagement can vary from simply suggesting an interesting project area to having the student work on-site, and there’s often some level of financial incentive (which unsurprisingly helps to attract students).

The arrangement has been beneficial to both parties on a number of levels, resulting in job offers and even a highly successful spin-out (NaturalMotion). As the MSc project organiser, I’m therefore keen to foster any links I can, so if anyone is interested in offering a project – with any level of input – please get in touch.

Email me (andrewop AT sussex.ac.uk)  or stop by for a chat at WiredSussex’s Job Fair on Thursday where I’ll be manning the Sussex stall from 4-6pm (look out for the robots).


Ian applies Data Science as an AI/Data Scientist for companies in ModelInsight, sign-up for Data Science tutorials in London. Historically Ian ran Mor Consulting. He also founded the image and text annotation API Annotate.io, co-authored SocialTies, programs Python, authored The Screencasting Handbook, lives in London and is a consumer of fine coffees.

No Comments | Tags: Academic Stuff, projectbrightonblogs, sussexdigital, SussexUniversity

13 February 2009 - 19:51Brighton Python meetup – Weds 18th Feb, Farm Tavern (near Hove)

We’re having the 3rd in our intermittent series of Brighton Python meetups, next week we join 40+ local geek freelancers of Brighton Farm to help them celebrate their 6th anniversary.

Please come along on Wednesday 18th Feb at the Farm Tavern for Python discussion, celebrating our new mail list and the odd beer or three.  On the table we’ll have the recent Expert Python Programming.

From Brighton station you need to travel part-way into Hove, the busses along Western Road will all take you in the right direction, get off by Palmeira Square and go back a couple of side-streets and you’ll find Farm Road heading North, the Farm Tavern is the second pub up the street.

John and I will be there, along with others on the mailing list.


Ian applies Data Science as an AI/Data Scientist for companies in ModelInsight, sign-up for Data Science tutorials in London. Historically Ian ran Mor Consulting. He also founded the image and text annotation API Annotate.io, co-authored SocialTies, programs Python, authored The Screencasting Handbook, lives in London and is a consumer of fine coffees.

No Comments | Tags: Python

9 February 2009 - 11:10PayPal refunds between Pounds (GBP) and Dollars (USD)

I’ve just spent 20 minutes trying to figure out how to refund a USD deposit payment to one of my PayPal accounts back to the originator.  When receiving the money I’d converted the payment to GBP and so that PayPal account only had a single (GBP) currency.

When trying to refund the chap’s USD payment out of my GBP balance PayPal would respond with the unhelpful ‘Your refund must not exceed your available balance. If you have funds in another currency balance, you may want to consider transferring funds from other currency balances.‘.

I say unhelpful because it didn’t point me at the simple solution!  The short answer is – go to Profile, select Currency Balances and from there setup a USD balance.  Now transfer some GBP into the USD balance (the converter shows you how much you’re transferring), complete the transfer and successfully issue the refund.

If you’ve received foreign balances before (and opted to store them in the original currency, not your default currency) then you’ll already have a link to ‘manage currencies’ on the frontpage.

PayPal’s UI could certainly do with some UX love.


Ian applies Data Science as an AI/Data Scientist for companies in ModelInsight, sign-up for Data Science tutorials in London. Historically Ian ran Mor Consulting. He also founded the image and text annotation API Annotate.io, co-authored SocialTies, programs Python, authored The Screencasting Handbook, lives in London and is a consumer of fine coffees.

9 Comments | Tags: Life

8 February 2009 - 17:54Review: Expert Python Programming by Packt (2008)

Before Christmas I was asked if I’d like to review Packt’s new Expert Python Programming (at Packt).

I’ve always recommended Beginning Python – From Novice to Professional to Python first-timers (new 2nd ed) along with Python in a Nutshell for those who want a thorough reference guide.

I sat on the review for a while as at first I figured the book was a bit light on interesting material.  My mistake – upon proper investigation I realised there’s quite a lot in there, I’ll definitely be using the book in the future.

Here’s a summary by Chapter:

  1. Installing Python and iPython, not much here if you’re comfy installing Python
  2. Lower-level code basics including list comprehensions, iterators and decorators
  3. Subclassing and use of ‘super’
  4. Naming – a very important topic!  This is something I pick-up on in my ShowMeDo videos with Pep 008, getting new developers to name consistently and sensibly is very important.  Includes a short description of building eggs, deprecating code, pyLint and CloneDigger (a useful-looking tool to find repeated code segments that could be refactored)
  5. Using DistUtils and SetupTools to creates eggs and upload them to the PyPI (CheeseShop of old). I’ve never done this and this guide looks useful
  6. Building a new application using virtualenv.  This focuses on setting up a package to aggregate RSS feeds with feedparser and SQLAlchemy
  7. Distributing the entire app using zc.buildout using a self-contained directory structure
  8. Version control, focuses on the distributed version control tool Mercurial and the continuous integration tool BuildBot
  9. Project Lifecycle – covers Waterfall and Agile techniques, I thought this was a very light chapter.
  10. Documentation – how to document for others to read, writing using reSructuredText
  11. Test Driven Development – a very important chapter for any longer-running project, covers unittest, doctest and nose
  12. Optimisation introduction – profiling speed, memory usage (Guppy-PE) and network usage – a good intro if this is new to you
  13. Optimisation techniques – focuses on using more efficient collections, multi-processing with pyProcessing and caching
  14. Design Patterns – a simple overview of some of the more obvious patterns

Do I recommend the book?  I think if the above topics are new to you then you’d benefit from the book.  My main criticism is that the chapters aren’t very deep, sometimes the topics provide little more than an intro to further on-line research.  That said, if the topics are new then the advice generally seems helpful.

A nit pick is that the editorial control needs improvement, I came across typos and odd grammar.  Maybe I’m spoiled by O’Reilly books where you rarely find typos.

For anyone coming to the Brighton Python usergroup on Feb 18th (google group) I’ll bring along my copy.

Here’s a free chapter and a set of other reviews.


Ian applies Data Science as an AI/Data Scientist for companies in ModelInsight, sign-up for Data Science tutorials in London. Historically Ian ran Mor Consulting. He also founded the image and text annotation API Annotate.io, co-authored SocialTies, programs Python, authored The Screencasting Handbook, lives in London and is a consumer of fine coffees.

No Comments | Tags: Python