|Time||Goldsmith Hall 1||Goldsmith Hall 2||Goldsmith Hall 3||Swift Suite||Field Suite|
|08:30 - 09:00||Breakfast / Registration||Breakfast / Registration||Breakfast / Registration||Breakfast / Registration||Breakfast / Registration|
|09:00 - 09:30|
|09:30 - 10:00|
|10:00 - 10:30||Keynote: Raspberry Pi: the software story||Keynote||Keynote||Open Space / Sprints||Open Space / Sprints|
|10:30 - 11:00|
|11:00 - 11:30||Break||Break||Break|
|11:30 - 12:00||Implementation of Python BDD frameworks.||The Last Mile||RestFS the next generation Cloud Storage||Dark Corners of the Standard Library||Open Space / Sprints|
|12:00 - 12:30|
|12:30 - 13:00||Circus, process and sockets manager||The road to DVCS||OpenStack Overview|
|13:00 - 13:30||Lunch||Lunch||Lunch||Lunch||Lunch|
|13:30 - 14:00|
|14:00 - 14:30|
|14:30 - 15:00||The Async Landscape in Context||Python for Facebook Infrastructure||Machine Learning In Python||Beginning Python||Open Space / Sprints|
|15:00 - 15:30||Recruitment Session|
|15:30 - 16:00||Break||Break||Break|
|16:00 - 16:30||Lightning Talks||Lightning Talks||Lightning Talks|
|16:30 - 17:00|
|17:00 - 17:30||Break||Break||Break||Open Space||Open Space / Sprints|
|17:30 - 18:00|
|18:00 - 18:30||Dinner||Dinner||Dinner||Dinner||Dinner|
|18:30 - 19:00|
|19:00 - 19:30|
|19:30 - late||Music until late||Music until late||Music until late||Music until late||Music until late|
|Time||Goldsmith Hall 1||Goldsmith Hall 2||Goldsmith Hall 3||Swift Suite|
|11:00 - 11:30||Keynote: Make an Impact: Start a Startup||Keynote||Keynote||Open Space / Sprints|
|11:30 - 12:00|
|12:00 - 12:30||Python Ireland AGM|
|12:30 - 13:00||Break||Break||Break||Beginning Python (Take 2)|
|13:00 - 13:30||CoderDojo||Using Jython to Test Fuzzy Error Handling||Create beautiful command-line applications with Python|
|13:30 - 14:00||Do more than one thing at the time the Python way||There are always windows™|
|14:00 - 14:30||Lunch||Lunch||Lunch||Lunch|
|14:30 - 15:00|
|15:00 - 15:30||Cornice, how do we create web services at Mozilla||Computer education||Python for Humans||Open Space / Sprints|
|15:30 - 16:00||Projecteuler.net problems in python||Lessons learnt. An in-production, scaleable Django stack.||Use git the proper way|
|16:00 - 16:30||MongoEngine: Lessons learnt building an ODM||Python builtins||YAPY3T|
Dublin is one of the world's best emerging startup hubs, uniquely situated as the gateway between Europe and America. As programmers, we enjoy a blend of productivity, low costs and global reach previously inaccessible in any profession. In both geography and history, we are privileged in our ability to make a dent in the universe. In this talk, veteran entrepreneur and python programmer Sean Blanchfield makes the case that Irish programmers should be founding startups, and will share some tips for those who want to get started.
The Raspberry Pi is a low-cost single board computer, created with the aim of supporting and promoting the teaching of computer science. We hope to ship one million units by the end of the year. I will detail the history of this charitable project before looking at progress to date and challenges for the future. The Raspberry Pi software stack has matured rapidly since the initial release, but there's still much that could be done to really push the hardware to its limits. I'll outline the progress made so far, plans for the future, and how the Python community can get involved.
Built with zmq, Circus (http://circus.io) is a process and socket manager we're writing at Mozilla Services.
It has many features like a web interface with a live stream of process/socket stats, a command line tool to drive the system. etc.
This talk will present the architecture of the tool, its uses cases at Mozilla, and what we're planning next.
A paper on the lesson learned delivering Introduction to Game Programming to Secondary School Children by Introducing Python programming. An overview of student demographics, challenges, tools, and libraries used. I'll also be displaying some of the projects completed by 12 - 14 y/o coders.
Computer education is going to become more and more prominent in the primary and secondary level education system. It may even come to a par with maths and other core subjects as a basic building block to a students education.
In the past year I have taught computer programming (Python and Scratch) to a range of primary and second level students through the popular CoderDojo movement and via helping an outreach officer at work.
For my talk I want to discuss my experience and to then ask the following questions from the audience:
At Mozilla Services, our job is to reduce the hassle of spinning new web services. To do this, we created a bunch of toolkits. One of them is named Cornice and allows you to create web services in a clean and efficient way. It deals for you with documentation generation and even helps you to avoid many of the mistakes one usually do.
The talk will cover how to create services with Cornice and how we implemented it internally so you can see how to contribute if you need.
We, as developers, build software. A great part of this software has command-line interfaces (CLI). As with any user interfaces it is hard to get them right.
Fortunately, we have tools (such as optparse and argparse) that help us to avoid burden associated with creating great CLI. Or do they?
This presentation will show the drawbacks of those tools, and present a better solution for creating beautiful command-line apps in Python.
A brief introduction to the different ways of executing concurrent code using Python, as well as some tricks to avoid problems. This includes multithreading, multiprocessing, asynchronous programming and the infamous Python GIL.
Over the past decade, ADTECH (currently a member of AOL Advertising.com Group) has established itself as a leader in the digital advertising industry, building strong relationships with a broad spectrum of agencies, publishers and marketers globally.
Ad serving and digital marketing are business-critical processes which demand the highest quality standards for the technology which they are based on. High-end performance, scalability and the perfect interaction of all functions and processes, from data entry into user interface to delivering the advertising via data centers, ensure that online marketing is efficient.
Focus on quality and testing play a crucial role to ensure that delivered solutions are as bug free as possible. With recently introduced new products and technologies software test automation and continuous integration started playing a key role within the entire company. Automated deployment, component, integration and acceptance tests written in Python and Jython, using behavior driven development (BDD) frameworks, allow teams to deploy and test applications from front end and API through to back end. BDD tests allow to express user stories and test scenarios in plain English with Python / Jython code underneath.
In this conference talk we will cover following subjects:
Follow on from last years talk with an analysis and description of some of the various in production parts of our stack.
IE, Linux, MySQL, Memcache, Django, Apache, Solr, Django-sentry, Buildout/Fabric, statsd.
Some discussion also of alternative choices, up and coming technology, things to watch.
This is a combined talk from Fergal Reid and Paul O'Grady.
We'll discuss the main elements of applying a machine learning approach to a problem: getting, cleaning, and organising data; investigating the data; developing, testing, and deploying models.
We'll provide examples using the Python Scikit-learn toolkit, and other python packages, to deal with data.
We'll discuss a recent Essay Scoring machine learning competition in which I participated, as a practical case study of quickly applying simple machine learning techniques.
We will give an overview of Python's scikit-learn Machine Learning module, present some fun examples, and give some pointers along the way...
As more people adopt relational models for applications, there is a greater need for ODMs to manage flow between language libraries. Using MongoEngine as an example we'll look into the technical aspects of building a fully featured Object Data Mapper for mongoDB.
We'll cover why we want an Object Data Mapper for a schemaless database,followed by a technical deep dive into MongoEngine internals. Topics covered:
OpenStack is a widely supported Open Source platform for building private and public clouds. This talk will give an overview of the project and how python is used throughout.
Project Euler is a web site hosting programming challenges that flex your knowledge of discrete math. The only rule is that your solution must run in less than a minute, leading to a lot of problems that can be brute forced easily, but where a faster solution must be found.
In this talk, I will present tips, techniques, algorithms and pieces of code that I have found useful in solving euler problems over the years.
Python Ireland's annual general meeting. Everyone is welcome (and encouraged) to attend. In this meeting we will give a summary of the year and elect a new committee.
We use them everyday, often without thinking about them. However, most of us probably only use a small subset of them without realising that there might be more optimal solutions or builtin functions available for various tasks and problems.
This talk will give a general overview of common everyday types, functions, operators and idioms within python, while highlighting some common use cases and gotchas. Hopefully there should be something in it for people of all levels of experience.
In Facebook Infrastructure, Python is one of our primary languages. Our main configuration system (Configerator) and our Automated break-fix engine (FBAR) are both built on Python. I'll talk about how these systems work and why we chose python.
Unfortunately, solving simple problems with Python isn't always 'import antigravity'. Best practices are sometimes far from obvious. This talk will analyze the high barriers of entry that clutter the Python landscape. We'll discuss ways to make Python more accessible for newcomers and less of a headache for seasoned veterans.
The RestFS is an experimental project to develop an open-source distributed filesystem for large environments. It is designed to scale up from a single server to thousand of nodes and delivering a high availability storage system with special features for high i/o performance and network optimization for work better in WAN environment. The Restfs is pure-python, but several of the libraries that it depends upon use C extensions (sometimes for speed, sometimes to interface to pre-existing C libraries). The Project is on the beginning stage, with some technology previews released.
The main characteristics of the RestFS are : - Scalability, no limits on storage and clients size - High availability, no single point of failure and data replication - Adaptative, load balancing and uniform distribution - High Performance, parallel transfer, local cache consistency, data transfer by difference - Flexible, S3 compatibility interface, dedicated library for integration in web server and application layer
This talk describes the architecture, internals of RestFS and comparison among different free software solutions. The session will discuss our experience in this development and detailed information on performance and scalability.
What's the toss up between Twisted and Tornado? And where do they fit in relation to things like Node.js and Erlang? Which one should you use, or should you use any of them??
There's plenty of talk about one asynchronous framework or the other, but most information is provided with little context. This talk will tell you why these frameworks exist, what the differences between them are, and when you might consider using them (or not!).
In the last few years, Continuous Integration (CI) has been widely adopted as a software development best practice. However, despite the invaluable safety net that it provides, CI falls short of covering and automating what happens after the build is deemed successful. In particular, there is one critical part of the software life cycle that CI seem to ignore: deployment.
With that in mind, Continuous Delivery (CD) aims at testing and automating the last mile that separates a code check-in from being accepted to being deployed on a working environment. Given the advent of virtualization technologies, it becomes easier to test that not only does your build passes unit and functional tests but that it can also be automatically deployed to a clone of your target production environment.
This talk will discuss CD and present a proof-of-concept tool written in Python that enables it.
All the cool kids are talking about distributed version control these days - tools like Git and Mercurial, and services such as Bitbucket and GitHub. But what are the benefits and pitfalls of moving serious projects and teams from centralised version control systems to distributed systems? Steve will talk about this subject from several perspectives based on prior experience - that of an independent developer, a former enterprise software team lead, and an open source project lead. This isn't a practical training course on a specific DVCS system, although elements will be mentioned where relevant. Prior DVCS experience is not required.
The lack of native "print to PDF" functionality on several Windows versions, gave us the opportunity to realize a WYSIWYG, distributed and highly customizable PDF printing solution based on python.
git is becoming the hot version control system and is quickly becoming an standard, but using it can be challenging and mind-blowing. Learn to use git in your favor instead of struggling against it. This includes the description of advanced git commands, as well as recommendations, tricks and best practices. It will be assumed that basic git use (commit, push, pull) is known.
As part of the fleet management system created by Visual Units AB, the quality of the J2ME (Java 2 Micro Edition) software in the 'black boxes' are key to customer experience and the trust the customers place in the system. Since the boxes exist very much in the real world and things can (and do) go wrong in new and unexpected ways, we have adopted a fuzzy error handling for the embedded software that uses a number of different indicators to identify problems, attempt to fix them, and send alerts. While this has proven a successful model with a great track record, testing the error handling in Java and on emulators has proven extremely challenging. To remedy these problems, we adopted Jython as our testing platform, and we can now do regression and scenario testing of the entire embedded application in an environment where we can control literally every aspect.
During this talk I will briefly outline the specific problems of quality assurance in embedded systems roaming through several countries, discuss how fuzzy error handling can help, and present how Jython can be leveraged to test Java code. I will specifically discuss how behaviours that are hard-to-impossible to predict and test using conventional tests (like unit test) can be tested using scenario testing, and how Jython has allowed us to set up both very specific scenarios as well as 'scenario fuzz testing'.
Note: Unfortunately Paul can't make it, in his place Michael Twomey will be giving a version of this talk.
Yet Another Python 3 Talk... well, it wouldn't be a PyCon in Ireland if Paul Barry didn't stand up and talk about Python 3 now, would it? And Paul's at it again this year! Python 3.3 is just around the corner, Python 2.7 has entered permanent "maintenance mode", projects are announcing Python 3 support in an ever increasing number, and now the time must surely be right for you to make the move... because time is running out!! Come along to Paul's talk to find out what he's on about (again).
I lead the Linux software development efforts for the Raspberry Pi Foundation and have been working directly with the device since the first alpha boards were produced. I am a PhD student at the University of Cambridge Computer Laboratory, where I work with LLVM and Clang as part of my research in to compilation techniques for a novel many-core architecture. I'm on Twitter as @asbradbury, or else you can email me at firstname.lastname@example.org
Sean is a well known Irish entrepreneur and technologist. He co-founded a mobile solutions company, Phorest, in 2000 as an undergrad. In 2003 he left his Ph.D. to co-found and invest in Demonware, providing online technology to the video games industry. As CTO he built one of the most talented teams in the industry and designed the online service behind the world’s most successful video game, used by 290+ million gamers. After Demonware’s acquisition by Activision Blizzard in 2007, Sean served as CTO of Jolt, a social gaming publishing house, and later founded and invested in Front Square, creating “serious” games to teach operational excellence. In 2011 Sean co-founded Scale Front, a startup foundry that is building a portfolio of Lean startup opportunities.
Aside from his own ventures, Sean works with other entrepreneurs and startups through investment, advisory positions and accelerators. He regularly speaks on entrepreneurship at colleges, events and conferences. Sean is also the founder and organiser of Techpreneurs, an invite-only monthly meetup of 90+ of the country’s leading technology founders. His blog can be read at seanblanchfield.com.
Alexis is a french python hacker working for Mozilla on the services team, trying to make it easy to spin new services. When not working, Alexis loves to brew, bike and think about ways to collaborate better (in and off web).
Brian is a technology entrepreneur and co-founder of Scale Front. After jumping into an ambitious dot-com startup straight out of college, he took a detour through the world of finance before teaming up with Sean Blanchfield to start a string of new ventures in 2008 (ranging from social gaming to corporate groupware). In Scale Front, Brian leads multiple startup projects and is the resident Lean Startup guru.
I was introduced to python six years ago, and since then, it's saved countless hours of development, given me access to a fantastic community and has allowed countless companies including my current startup to rapidly innovate and iterate on new ideas and features.
Eric is a software engineer in an italian startup operating in the financial business, with telco backgrounds coming from previous job experiences abroad. He discovered python 2 years ago and I felt in love with it instantly!
Inching towards the 20 year mark, my career has been as an Internet systems professional; working in advanced, highly complex, and high availability Internet services.
I've been lucky enough to volunteer with the CoderDojo project in Dublin where I've been delivering a weekly 3 hour introduction to Game Programming seminar. The target audience is novice computer users. The participants bring their own equipment. The students are lead through an introduction to Python programming using a variety of tools and libraries.
To support mentoring activities and facilitate project completion, I have also implemented task based learning website which all participants are encouraged to continue learning by completing short fun software development tasks. For which the coders are rewarded with Badges. There is also a points system associated with the Badges which adds a a competitive element. The site has been extremely successful in starting a social network and continuing to encourage independent learning.
Fabrizio has been developing solution for customers, utilizing Unix and networking since 1992 and has involved with Linux since 1994. He has a highly experience with enterprise technologies and distributed filesystem. Additionally, interests include high performance computing, networking, security and IPTV. Fabrizio is currently working on some Opensource project like apache modules, enterprise management interfaces, dns automation and distributed filesystem.
Currently working towards a PhD in complex network analysis, using machine learning, and large scale data analysis techniques, based in UCD's Clique Research Cluster. Fergal has previously worked in software development, and has a degree in Computer Science from TCD.
Fredrik Håård is a partner and specialist at Softhouse Consulting as well as co-founder and head developer at Visual Units, a Swedish company creating support tools for logistics.
In addition to working as a developer, designer, and general troubleshooter, Fredrik holds courses and workshops in Python, Mercurial and Git and has given lectures in Python at Blekinge Institute of Technology. He has also held talks on minimalism in software development and on the benefits of Python in agile development. The common theme of his talks are minimalism and DIY as opposed to the proliferation of frameworks and off-the-shelf solutions.
Fredrik believes that while process might be important, technology is both important and interesting. A technophile and minimalist, he revels in solving problems in elegant ways while using minimal effort. He runs a Python blog at http://blaag.haard.se
Jaime Buelta is a software developer currently working on the games industry. Passionate about technology, he found out that Python matched his way of thinking and he has been using it more and more for the last years.
Jakub Jarosz works for ADTECH a member of AOL Advertising.com Group. He is active in IT and Electronics fields for over 15 years, the last 6 of which have been mainly in software test automation.
Kenneth Reitz is a software architect and minimalist, consumed with elegant tools and interfaces. He works at Heroku, designing the Python Stack. He has numerous open source projects, available at github.com/kennethreitz
I have been programming professionally with Python for 10 years. I am currently working for Digital Enterprise Research Institute (DERI), part of NUI Galway. I work on web related technologies.
I am a mentor for the CoderDojo movement in Galway city.
I've worked in Facebook's Site Reliability and Core Systems Infrastructure teams for three and a half years. I built FBAR, the Facebook Auto-Remediation system (https://www.facebook.com/note.php?note_id=10150275248698920) which automates break-fix system administration work. I've done system administration, systems engineering, software development and product management for 12 years professionally. I enjoy automating away the pain of operations work to make large infrastructures manageable by reasonable sized teams of happy sys admins. :-)
Paul Barry is a regular speaker at the PyCon Ireland conferences, a lecturer in Computing at The Institute of Technology, Carlow, a writer of technical things (most recently O'Reilly's Head First Python), and a consultant to startups and SMEs. Find out a little bit about what he does at his website: http://paulbarry.itcarlow.ie
Note: Michael Twomey will be filling in for Paul who can't make it :(
Paul's background is in machine learning research and software development, and has been using Python for over 5 years now. Paul has used Python in a wide range of projects including location-based web services, machine learning systems and scientific research experiments. Paul currently works as an independent consultant/contractor to tech startups in Dublin and has a Ph.D. in computer science from NUI Maynooth.
Currently working at Red Hat on OpenStack, Pádraig Brady is a long time open source contributor and GNU coreutils co-maintainer.
Rodrigue is a software developer who discovered Python about 5 years ago and never ceased to use it since.
Python engineer and evangelist for 10gen - the company behind mongoDB and is the maintainer of MongoEngine the popular mongoDB ODM (object data mapper).
With over 10 years experience in web development Ross holds a deep passion for web development. Previously, Ross was the Software Architect for Streetlife and prior to that Ross was the lead developer for Europes largest commercial radio station owner - Global Radio Ltd.
Steve Streeting works for Atlassian and has been developing software professionally for 17 years. He's worked in many areas including mainframe systems, enterprise Java deployments, real-time graphics engines, and most recently Mac developer tools. He's been a developer, a team lead, an operations guy, an open source project lead, and an entrepreneur - but somehow he's always writing code somewhere. He joined Atlassian in September 2011 when they acquired SourceTree, a Mac client he created for Git and Mercurial.
Tarek is a programmer at Mozilla and occasionally a python core dev. He wrote a couple of books in french about Python and one in English.
I'm Python developer employed at danish startup called GreenSteam A/S , where we create embedded machine-learning systems using Python, NumPy and Linux, and contribute back to the open-source community .
If I'm to present this talk at PyCon Ireland, I'm sure most of my colleagues from our small team will join to cheer me up.
When I'm not working, I'm hacking on open-source projects  , of which the most significant one is docopt .
My pre-Python background relates to embedded real-time and safety-critical systems .
Learn python from scratch. This introduction will get you started in Python and Django programming.
This session will be run in a workshop style, alternating between some lessons and then problem solving. We are going to adapt the content based on who turns up, so absolute beginners are welcome. Depending on progress made we hope to cover basic Django as well.
This training sessions was given and well attended (and received as far as I've been led to believe) at EuroPython 2012
The Python Standard Library contains all kinds of useful stuff - healthy, wholesome stuff like a wide array of support libraries for file formats, a web server, easy access to OS services and functional programming tools.
Among those benevolent libraries hide other, darker libraries. They offer tremendous power to anyone who learns how to wield them, but they also carry the threat of destroying your software’s readability, comprehension and very structure.
This session will be a hands-on-keyboard dive into the dark magic parts of the standard library, and participants will learn valid (for a given value of valid) use-cases for practices that will give any software engineering professor nightmares. It focuses on learning by doing, and (evil?) koans are used to teach some of the most ‘clever’ tricks of standard Python.