EuroPython Blog

The official blog of everything & anything EuroPython! EuroPython 2024 8-14 July, Prague & Remote
EuroPython Blog

Kraken Technologies: How we organise our very large Python monolith

By David Seddon from Kraken Technologies.

Hi, I’m David, a Python developer at Kraken Technologies. I work on Kraken: a Python application which has, at last count, 27,637 modules. Yes, you read that right: nearly 28k separate Python files - not including tests. I do this along with 400 other developers worldwide, constantly merging in code. And all anyone needs to make a change - and kick start a deployment of the software that runs 17 different energy and utility companies, with many millions of customers - is one single approval from a colleague on Github.

Now you may be thinking this sounds like a recipe for chaos. Honestly, I would have said the same. But it turns out that large numbers of developers can, at least in the domain we work in, work effectively on a large Python monolith. There are lots of reasons why this is possible, many of them cultural rather than technical, but in this blog post I want to explain about how the organisation of our code helps to make this possible.

Layering our code base

If you’ve worked on a code base for any length of time, you will have felt the drift towards unpleasant complexity. Strands of logic tangle together across your application, and it becomes increasingly difficult to think about parts of it in isolation. This is what started happening to our young code base, and so we decided to adopt what is known as a ‘layered architecture’ where there are constraints about what parts of the code base can know about each other.

Layering is a well-known software architecture pattern in which components are organized, conceptually, into a stack. A component is not allowed to depend on any components higher up the stack.

Layered Architecture where dependencies flow downward

For example, in the above diagram, C would be allowed to depend on B and A, but not D.

The idea of a layered architecture is broad: it may be applied to different kinds of components. For example, you could layer several independently-deployable services; or alternatively your components could just be a set of source code files.

What constitutes a dependency is also broad. In general, if a component has direct knowledge of another component (even if purely at a conceptual level) then it depends on it. Indirect interaction (e.g. via configuration) is not usually seen as a dependency.

Layers in Python

In a Python code base, the layers are best thought of as Python modules, and dependencies as import statements.

Take the following code base:

myproject
    __init__.py
    payments/
        __init__.py
        api.py
        vendor.py
    products.py
    shopping_cart.py

The top-level modules and subpackages are good candidates for layers. Let’s say we decide the layers should be in this order:

shopping_cart
payments
products

Our architecture would thus forbid, for example, any of the modules within payments from importing from shopping_cart. They could, however, import from products.

Layering can also be nested, so we could choose to layer within our payments module like so:

api
vendor

There’s no single, correct way of choosing which layers exist, and in which order - that’s an act of design. But layering like this leads to a less tangled code base, making it easier to understand and change.

How we’ve layered Kraken

At the time of writing, 17 different energy and utility companies license Kraken. We call these companies clients, and run a separate instance for each. Now, one of Kraken’s main characteristics is that different instances are ‘the same, but different’. In other words, there is a lot of shared behavior, but also every client has bespoke code that defines their specific needs. This is also true at the territory level: there are commonalities between all the clients that run in Britain (they integrate with the same energy industry) that aren’t shared with, say, Octopus Energy Japan.

As Kraken grew into a multi-client platform, we evolved our layering to help with this. Broadly speaking, it now looks like this at the top level:

kraken/
    __init__.py
    
    clients/
        __init__.py
        oede/
        oegb/
        oejp/
        ...
    
    territories/
    	__init__.py
        deu/
        gbr/
        jpn/
        ...
        
    core/

The clients layer is at the top. Each client gets a subpackage inside that layer (for example, oede corresponds to Octopus Energy Germany). Below that is territories, for all the country-specific behaviour, again with territory-specific subpackages. The bottom layer is core, which contains code that is used by all clients. There is an additional rule, which is that client subpackages must be independent (i.e. not import from other clients), and the same goes for territories.

Layering Kraken like this allows us to make changes with a limited ‘blast radius’. Because the clients layer is at the top, nothing depends on it directly, making it easier to change something that relates to a particular client without accidentally affecting behavior on a different client. Likewise, changes that relate only to one territory won’t affect anything in a different one. This allows us to move quickly and independently across teams, especially when we are making changes that only affect a small number of Kraken instances.

Enforcing layering with Import Linter

When we introduced layering, we quickly found that just talking about the layering was not enough. Developers would often accidentally introduce layering violations. We needed to enforce it somehow, and we do this using Import Linter.

Import Linter is an open source tool for checking that you are following layered architectures. First, in an INI file you define a contract describing your layering - something like this

[importlinter:contract:top-level]

name = Top level layers
type = layers
layers =
    kraken.clients
    kraken.territories
    Kraken.core

We can also enforce the independence of the different clients and territories, using two more contracts (this time `independence` contracts)

[importlinter:contract:client-independence]
name = Client independence
type = independence
layers =
    kraken.clients.oede
    kraken.clients.oegb
    kraken.clients.oejp
    ...

[importlinter:contract:territory-independence]
name = Territory independence
type = independence
layers =
    kraken.territories.deu
    kraken.territories.gbr
    kraken.territories.jpn
    ...

Then you can run lint-imports on the command line and it will tell you whether or not there are any imports that break our contracts. We run this in the automated checks on every pull request, so if someone introduces an illegal import, the checks will fail and they won’t be able to merge it.

These are not the only contracts. Teams can add their own layering deeper in the application: kraken.territories.jpn, for example, is itself layered. We currently have over 40 contracts in place.

Burning down technical debt

When we introduced the layered architecture, we weren’t able to adhere to it from day one. So we used a feature in Import Linter which allows you to ignore certain imports before checking the contract.

[importlinter:contract:my-layers-contract]
name = My contract
type = layers
layers =
    kraken.clients
    kraken.territories
    kraken.core
ignore_imports =
    kraken.core.customers ->
    kraken.territories.gbr.customers.views
    kraken.territories.jpn.payments -> kraken.utils.urls
    (and so on...)

We then used the number of ignored imports as a metric for tracking technical debt. This allowed us to observe whether things were improving, and at what rate.

Ignored imports since 1 May 2022

Here’s our graph of how we’ve been working through ignored imports over the last year or so. Periodically I share this to show people how we’re doing and encourage them to work towards complete adherence. We use this burndown approach for several other technical debt metrics too.

Downsides, there are always downsides

Local complexity

At some point after adopting a layered architecture, you will run into a situation where you want to break the layers. Real life is complex, there are interdependencies everywhere, and you will find yourself wanting to, say, call a function that’s in a higher layer.

Fortunately, there is always a way around this. It’s called inversion of control and it’s easy to do in Python, it just requires a mindset shift. But it does lead to an increase in ‘local’ complexity (i.e. in a little part of your code base). However, it’s a price worth paying for a simpler system overall.

Too much code in higher layers

The higher the layer, the easier the change. We deliberately made it easy to change code for specific clients or territories. Code in the core, which everything depends on, is more costly and risky to make changes to.

As a result, there has been a design pressure, brought about partly by the layering we chose, to write more client and territory-specific rather than introduce deeper, more globally useful code into the core. As a result, there is more code in the higher layers than we might ideally like. We’re still learning about how to tackle this.

We’re still not finished

Remember those ignored imports? Well, years on, we still have some! At last count, 15. Those last few imports are the stubbornest, most tangled ones of all.

It can take serious effort to retrospectively layer a code base. But the sooner you do it, the less tangling you’ll have to address.

In summary

Layering Kraken has kept our very large code base healthy and relatively easy to work with, especially considering its size. Without imposing constraints on the relationships between the tens of thousands of modules, our code base would probably have tangled into an enormous plate of spaghetti. But the large scale structure we chose - and evolved along with the business - has helped us work in large numbers on a single Python code base. It shouldn’t be possible, but it is!

If you’re working on a large Python codebase - or even a relatively small one - give layering a try. The sooner you do, the easier it will be.

Kraken Technologies LTD's is sponsor of EuroPython 2023, check them out on https://kraken.tech/

Humble Data workshop for beginners - Pythonistas and data scientists

Among the many wonderful workshops at EuroPython this year, we are pleased to announce we will be running the Humble Data workshop in person on Monday 17th July 2023, at the Prague Congress Centre (PCC). This is following successful deliveries of this workshop at PyCon US, Ghana, Namibia, Africa, PyData Global and of course, EuroPython 2022!

How is the workshop?

Curious about the event? Read on.

Humble Data workshops are designed to get those from underrepresented groups started in both Python and data science, in an inclusive, laid-back and empathic environment. The workshops focus on helping people with zero experience with coding to learn some of the most fundamental operations in Python, and in turn, use these to get started with reading, transforming and visualizing data.

The workshop is structured to last for 3 hours.

As part of the workshop, participants will work through a series of approachable tutorials with the help of a mentor. For 3 hours (breaks included) we will have teams that will work together with mentors to do plenty of exercises, quizzes and games, to go from Zero to Hero in Python and data science. All that participants will need to bring is a tablet or a laptop with internet access - we will help them with the rest!

Let us help you get started on your Python data science journey. You can read more about the workshop here.

How can I get involved?

Like the idea? Join us as a mentor or mentee!

If you’re new to coding or data science and want to learn more in a supportive environment, apply to join us at the Humble Data workshop by filling in this form. Participation is free for anyone with a EuroPython Conference Ticket or Combined Ticket.

If you’re interested in mentoring, we would love to have your help! It is no issue if you're not the most experienced programmer or data scientist: rather, we are looking for people who are respectful, patient, friendly, curious, and able to explain technical concepts in a way that is approachable for beginners. In return, you will receive the eternal gratitude of the organizers and attendees, the chance to meet people outside of your bubble, and in turn, show that you don’t need to fit a specific mould to “look like” a developer or data scientist.

Finally, if you know anyone attending EuroPython this year who you think would like to either attend or mentor Humble Data, please encourage them to apply!

If you’re interested in attending or mentoring, please complete this form by July 3rd, 2023.

We can’t wait to see you all in Prague this July!

EuroPython June 2023 Newsletter

Hey there 👋

We have a few updates to share! TL;DR version: Our programme has been finalised, remote tickets are up for sale and we have a whole bunch of fun events and workshops planned throughout the course of the conference.


📣 Programme

Our list of sessions with the selected talk, tutorials and posters are out now on https://ep2023.europython.eu/sessions.

Kudos to our programme team for curating the sessions and congratulations to all the speakers! We hope to see you soon in 🇨🇿 Prague.

Women In AI Workshop

We will have Women in AI run a half-day workshop for introducing the intuition behind machine learning along with a series of hands-on sessions to implement machine learning models using Pandas and Scikit-Learn Python libraries

They are looking for 2 extra mentors, Do help out if you can by filling this form: https://forms.gle/b2QysCaCsVW1j6fr5

More info on the event and registration is up on our website https://ep2023.europython.eu/wai

Humble Data Workshop

We are so happy to announce that Humble Data Workshop will be back on 17th July 2023 at EuroPython! We will teach beginners how to start with Python and Data Science by teaching them the basics of programming in Python, useful libraries and tools, such as Jupyter Notebook that help with data analysis.

Register now on https://ep2023.europython.eu/humble-data

Keynote

We have one more amazing keynoter to announce 🎉 !

Joanna Bryson

Joanna J. Bryson is a transdisciplinary researcher on the structure and dynamics of human- and animal-like intelligence. Her research ranges from systems engineering of Artificial Intelligence (AI), through autonomy, cognition, robot ethics, human cooperation on to technology policy and has appeared in venues ranging from a reddit to Science. She holds degrees in Psychology from Chicago and Edinburgh, and AI from Edinburgh and MIT. She has additional professional research experience from Princeton, Oxford, Harvard, and LEGO, and technical experience both in Chicago's financial industry and international management consultancy. Bryson is presently Professor of Ethics and Technology at Hertie School of Governance.

Joanna Bryson

🎙 First-Time Speaker’s Workshop

On 1st of June, our Mentorship Programme hosted its First-Time Speaker’s Workshop and a total of 35 people participated.

We had a very interesting discussion with experienced speakers from our community. We discussed a variety of topics starting from how to handle stress during a talk, tips for better preparation and benefits from speaking at conferences/meetups.

The recording of the event is here


Speaker Placement Programme

Our Speaker Placement Programme continues to grow! The first matchings were made and the Mentorship Programme is now focusing on connecting more of our mentees to local meetups and python events in order to gain more speaking experience.

If you are an organiser looking for more speakers take a look here: https://ep2023.europython.eu/mentorship#3-speaker-placement-programme

ℹ️ Call for Volunteers

We are happy to announce the call for on-site volunteers at this year's EuroPython in Prague.

EuroPython is in large part, organised and run by volunteers from the Python community and volunteers are responsible for making sure everything runs smoothly! We have a lot of different roles each with their own set of responsibilities and commitment. For a more detailed overview, please check out our volunteers page: https://ep2023.europython.eu/volunteers

If you are interested in joining us please fill out the form here: https://forms.gle/tmNgWU3rgLbPAVLC9.

🎫 Remote Tickets

EuroPython has had a very successful Remote edition for the past three years! We wish to continue this tradition and have an option for remote participation this year for those in the community who cannot make it in person.

With remote tickets, you can watch the live talks, keynotes & panels in all 6 tracks, engage in live text-based Q&A, and interact with speakers and other in-person attendees in chat channels and as always we provide open and free access to the livestreams of our conference talks

Remote tickets are up for sale on https://tickets.europython.eu/

More information on remote participation can be found on our website https://ep2023.europython.eu/remote

💶 Financial Aid

Our Financial Aid Programme received record-high applications this year and we are very proud to be supporting so many Pythonistas to attend the conference.

Financial Aid for Remote Tickets is open now! If you need support to attend the conference remotely, make sure to apply by 9 July 2023 on our financial aid pagehttps://ep2023.europython.eu/finaid

💸 Sponsorship

Sponsoring a conference like EuroPython would mean supporting the broader European Python community as our grants team has been helping out quite a few local organisations run their own Python events 🐍

We thank all the sponsors that have signed up so far this year 🤗. We still have 2 Diamond slots available so if you think you or your organisation might be interested, reach out to us!

More information on the available packages can be found on our website: https://ep2023.europython.eu/sponsor

🐍 PyLadies Social Event

We will have a PyLadies social event at EuroPython 2023 on 21st July 2023. The event is a fantastic opportunity to engage with other women in tech, expand your network, and share your experiences.

More information about the venue and registration is on https://ep2023.europython.eu/pyladies-social-event

🇨🇿 Pycon CZ

We are thrilled to announce that PyCon CZ 23 is just around the corner! It will be held between 15th and 17th of September in Prague in the beautiful ex-monastery Gabriel Loci.

As we gear up for this incredible event, we're looking for interesting proposals to make it even more amazing. We invite you to submit your proposals for talks, workshops or sprints and other sessions. Whether you're a seasoned Pythonista or just getting started, we want to hear from you! Share your unique experiences, innovative ideas and insights into the world of Python. This is your chance to showcase your skills and inspire fellow Python enthusiasts.

Register now at: https://cz.pycon.org/2023/cfp/.

🌞 Community Highlight

This time in our community highlight, We just wanted to take a moment to mention DjangoCon Europe 2023 that happened in Edinburgh, they were a part of EuroPython Society’s (EPS) Grants programme and had a very successful conference.

Also a shout out to Mia who is an active organiser of Pycon CZ for giving a wonderful lightning talk at DjangoCon:

She is also helping us in organising the conference, including the Pyladies Social event happening at EuroPython  2023.

Many thanks for all your help and efforts Mia 💖!

🐍 Upcoming Events

💥 Project Feature - Sympy

SymPy is a Python library for symbolic mathematics. It aims to become a full-featured computer algebra system (CAS) while keeping the code as simple as possible in order to be comprehensible and easily extensible.

Check it out: https://github.com/sympy/sympy

🥸 PyJok.es

$ pip install pyjokes
Collecting pyjokes
  Downloading pyjokes-0.6.0-py2.py3-none-any.whl (26 kB)
Installing collected packages: pyjokes
Successfully installed pyjokes-0.6.0
$ pyjoke
A good programmer is someone who always looks both ways before crossing a one-way street..

Add your own jokes to PyJokes (a project invented at a EuroPython sprint) via this issue: https://github.com/pyjokes/pyjokes/issues/10









EuroPython April 2023 Newsletter

Hey there 👋

With less than 70 days left until we gather together in Prague for EuroPython, here’s what’s been going on.

📣 Programme

Thank you to everyone who contributed to our community voting and a special thanks to our team of 35 reviewers, who provided over 1000 reviews on the proposals! Without their help, it would not be possible to create the EuroPython programme and there wouldn’t be a conference to attend.

Our wonderful programme team has been hard at work and sent most of our acceptance letters to our speakers! Please get your acceptance tweets and emails ready! We hope to publish the list of accepted talks within the next few days!

🏃 Sprints

We are delighted to announce  our sprint weekend will be held at VŠE (Prague University of Economics and Business) on 22-23 July. Sprints are free to attend and open to the public (registration to be announced later for those who do not have a conference ticket). The sprints are a great way to learn from each other, share knowledge and ideas, and solve problems together through the medium of Python.

Find out more details and how to propose a sprint here: https://ep2023.europython.eu/sprints

🌟 Keynote

We have a couple more awesome keynoters lined up!!

Ines Montani

Ines Montani is a developer specialising in tools for AI and natural language processing (NLP) technology.

She’s the co-founder and CEO of Explosion, a core developer of spaCy, a popular open-source library for Natural Language Processing in Python, and Prodigy, a modern annotation tool for creating training data for machine learning models.

Ines, who had already keynoted EuroPython five years ago, will share with us the developments, progress and lessons learned in the field of natural language processing. It'll be an opportunity for us to collectively retrospect on half a decade of work in the Python community within a field that is gaining in popularity and momentum.

(Ines owning the stage in her keynote at EuroPython 2018)

Petr Viktorin

Petr works at Red Hat, integrating Python into Linux distros.

He started contributing to Python in 2015, answering Nick Coghlan's call for a volunteer to improve extension module loading. After about six PEPs and eight years of work, that project expanded to better support for subinterpreters and maintaining the stable ABI, and helping Eric Snow's effort to break up the GIL.

Last year, after a nomination for Steering Council forced him to look at parts of the project that needed help, Petr revived the Documentation community, and spent time removing roadblocks from contributing to Python's documentation.

To give back to the community, he started teaching free courses to local beginners. But that is a story for his talk at EuroPython.

🎫 Ticket Sales

Our tickets are up for sale now and we’re seeing a strong and steady trend in ticket purchases. Please book your ticket now, to avoid disappointment later when they all (inevitably) sell out.

Tickets can be purchased on our website: https://ep2023.europython.eu/tickets

💶 Financial Aid

Submissions for the first round of our financial aid programme have closed. With over 125 applications from over 40 countries, we're calling this a huge success. The financial aid team is currently reviewing the applications and will send out grant approval notifications by 8 May 2023 at the latest.

You can still apply for the second round of the financial aid programme. The deadline for submitting your application is 21 May 2023. If you’ve applied for a grant in round one but did not receive one, you don’t have to submit another application. Your application will automatically be considered in round two.

Visit https://europython.eu/finaid for information on how to apply for a financial aid grant.

💸  Sponsorship

We're thrilled to announce that our Platinum sponsorship packages for EuroPython 2023 have all been sold out! We're incredibly grateful for the support of our sponsors and are looking forward to an amazing event.

Thank you to all our sponsors for supporting EuroPython 2023!

We still have other exciting sponsorship opportunities available which come with a range of benefits.

Check out our website for more information on the available packages at https://ep2023.europython.eu/sponsor

🗣️ Speaker Placement Programme

Our speaker placement programme supports those in our community who would like advice, guidance and friendly support while preparing for their contribution to EuroPython.

Happy news! Our first two mentees have been matched with an organiser of their choice. Now they will have the opportunity to be connected with a local community, present their talks and get more involved in new activities.

For more information about the Speaker Placement Programme please check here: https://ep2023.europython.eu/mentorship#3-speaker-placement-programme

🎤 First-Time Speaker’s Workshop

In this event, we'll have experienced speakers from the EuroPython community to share their know-how on delivering an effective talk. We hope this will help our participants learn something meaningful about public speaking before their presentation at EuroPython 2023 or in general.

The workshop will take place on 1st of June 2023 at 18.00 CET via Zoom (details will be communicated in the coming weeks). A recording of the session will be made available after the event.

⚖️ The new Cyber Resilience Act proposal

While we welcome the intention of strengthening software and digital products’ cyber security by the European Union’s proposed Cyber Resilience Act (CRA) and Product Liability Act , we echo the concerns the PSF have in its potentially unintended consequences of putting the health of open-source software at risk, including Python and PyPI.

Please check out this blog post for details. If you too are concerned that the broad language of the proposed acts could make open source organisations and developers held liable for security flaws of commercial products that incorporate open source codes, then consider writing to your MEP voicing concerns and asking for clarifications about the proposed CRA law.

💥 Project Feature - Ruff

Ruff is an extremely fast Python linter, written in Rust.

In the landscape of python tooling there often comes a tool that creates a paradigm shift,  Ruff is such a tool! there are tons of linters in Python like flake8, pylint, pycodestyle, yapf etc but ruff just beats it out of the park by being 10-100x faster than existing linters and having integrations with dozens of existing Flake8 plugins. Its speed and versatility has driven adoption in major OSS projects like Apache Airflow, FastAPI, Pandas and Scipy.

Check out Ruff on: https://github.com/charliermarsh/ruff

🍿 EuroPython Classics

EuroPython’s history is full of amazing talks, entertaining presentations and thought provoking interactions… many of which can be found on our YouTube channel. These historic and important artefacts of our European Python community are a source of much wisdom, learning and community bonding. So we want you to suggest your “EuroPython Classic” from our archives.

Our inaugural suggestion comes from Shekhar: “Simple data validation and setting management with Pydantic” by Teddy Crepineau.

Shekhar explains, “Pydantic is a must-have for every Python project, and when combined with Ruff, the result is simply awesome!”

We would love to hear your suggestions for EuroPython classics., so share those bookmarked talks by tagging us on our socials @europython or email comms@europython.eu. We’d love to know why you think your suggested talk is a classic.

Let’s celebrate, recognise and learn again from those hidden gems in our archive.

🥸 PyJok.es

$ pip install pyjokes
Collecting pyjokes
  Downloading pyjokes-0.6.0-py2.py3-none-any.whl (26 kB)
Installing collected packages: pyjokes
Successfully installed pyjokes-0.6.0
$ pyjoke
What do you call eight hobbits? A hobbyte.

Add your own jokes to PyJokes (a project invented at a EuroPython sprint) via this issue: https://github.com/pyjokes/pyjokes/issues/10

EuroPython March 2023 Newsletter

Hey there!

Springtime is upon as, with ~100 days to the conference we have a lot of updates to share this month regarding our ticket sales, CFP, a new keynoter, and sponsorship as we get closer to the conference.

🇨🇿 Picture a Pythonic Prague

To be a part of EuroPython is to be a part of something greater than the sum of its parts. Our community is fortunate to include a wealth of talent and a diversity of skills, and nowhere is this more obvious than in the design and production of the website.

We’re hugely thankful for the work of Patrick and Raquel in coordinating the brand new design, look and feel for this year’s iteration of our presence on the web.

EuroPython’s peripatetic conference journey through the cultural capitals of Europe is an opportunity for us to celebrate our diverse heritage, history and cultures. This year’s design reflects our Bohemian location in the Czech Republic and we hope you enjoy finding subtle (and not so subtle) aspects of the website that acknowledge and respect our wonderful host city of Prague.

Go check it out! https://ep2023.europython.eu/

📣 Programme

Our CFP finished on  Sunday, 26 March 2023 and we received a record breaking 556 proposals beating 2022 by a large margin. 🎉

Community Voting is currently underway. We invite all eligible voters to cast your votes  by Friday 14 April AoE and show us what YOU would like to see at EuroPython 2023! Your vote brings a plurality and diversity of voices to the decision making process; and your feedback is an important ingredient in this refinement and curation process. In 2022, we had a total of 24,000 votes and hope to reach 40,000 votes this year. Cast your votes here: https://ep2023.europython.eu/voting

We have also begun the panel review of the proposals. We received almost 100 reviewer applications and are grateful and overjoyed with the community’s enthusiasm and support for sharing their insights and expertise!

🗣️ Keynote announcement - Sophie Wilson

We are delighted and honoured to announce Sophie Wilson has agreed to keynote at this year's EuroPython. It is not an understatement to say that every one of us, whether we realise it or not, has benefitted from Sophie's contributions to the field of computing.

Since her teenage years, Sophie has designed and built microprocessor based systems. Early projects included a system for counting translucent drops of liquid and detecting spun fibre machinery breakdowns; while in her first university vacation she developed an automated cow-feeder.

After university she joined Acorn Computers Ltd, where she designed the Acorn System 1, coding the operating system in binary before designing and implementing Acorn Assembler, Acorn MOS and BASIC. She, and her Acorn colleague Steve Furber, took less than a week to design and implement the prototype of the BBC Microcomputer, winning Acorn the contract for the BBC's Computer Literacy Project. Sophie designed the operating system and designed and implemented BBC BASIC for a succession of processors. Anyone alive in Europe in the 1980s will have encountered her work, such was the ubiquity of the BBC Microcomputer, and BBC BASIC is rightly celebrated as an example of a powerful programming language that is also easy for beginner coders to learn (not unlike another programming language with which we're all familiar).

She and Furber went on to co-design the ARM processor, powering Acorn's computers during the 1990s and virtually every mobile phone and tablet in the world today – 200 billion sales of ARM powered chips (as of July 2022). Acorn's CEO at the time, Hermann Hauser, recalls that "while IBM spent months simulating their instruction sets on large mainframes, Sophie did it all in her brain." MicroPython, CircuitPython and Snek all target ARM processors, and most modern Apple Macs run on chips based upon the ARM design. There's a good chance you're reading this announcement on a machine running an ARM processor based on Sophie’s design.

As if that were not enough, as a founder at Element 14, Sophie went on to develop the Firepath processor, widely used in the telecommunications industry. Broadcom acquired Element 14 in 2000.

Sophie is a Broadcom Fellow and Distinguished Engineer, a Fellow of the Royal Society, a Fellow of the Royal Academy of Engineering, a Distinguished Fellow of the British Computer Society, a Fellow of the Women’s Engineering Society, an honorary Fellow of Selwyn College, Cambridge, an honorary Fellow of the Institution of Engineering and Technology (IET) and an honorary Fellow of the Institution of Engineering Designers (HonFIED). She has an honorary doctorate of science from Cambridge University and is a Commander of the British Empire (CBE).

👩‍🏫 Speaker Mentorship

We ran a One-to-One Speaker Mentorship Programme to support our first time speakers and anyone else wanting support and representation at EuroPython. We successfully  matched all 37 mentees with a mentor. Thank you, every mentor who is giving back to the community!

We also ran an Ask Me Anything workshop about the CFP as part of the Mentorship Programme. In case you missed it, you can catch up here: EuroPython 2023 Mentorship Programme - Ask me Anything about the CFP:

Speaker Placement Programme

For most new speakers, speaking at a conference for the first time can be a bit intimidating. We also understand that not all of our mentees make it to EuroPython. Part of the support we would like to provide to our mentees is to help them find opportunities to speak at a local event or meetup.

If you are an event/ meetup organiser looking for speakers, please fill in the form and we would be happy to introduce our mentees to you if we believe there’s a match.

🕸️ WASM Summit

WebAssembly (abbreviated to WASM) is an important new open technology: a binary instruction format for a virtual machine. Think of it as a new, secure and performant portable compilation target that runs both in browsers and elsewhere the virtual machine runs.

Python (thanks to Pyodide) and MicroPython can both be compiled to WASM, and with the advent of projects like PyScript, Zython and others, Python is making important and innovative inroads into the world of WebAssembly.

In a first for EuroPython, we’re working with members of the community to run a summit that aims to bring together maintainers and users of Python with WebAssembly. The summit is a place to discuss the state of this ecosystem, existing challenges and ongoing work. If you are attending EuroPython and would like to join the summit, check out the agenda and registration details here: https://ep2023.europython.eu/wasm.

🎫 Registration Launched

🎗️
Our tickets are up for sale on https://ep2023.europython.eu/tickets 

We have different ticket types and tiers to choose from. We worked really hard this year to lower the ticket price and make them more affordable. In addition, we are also offering Financial Aid  for folks who need extra help to cover tickets, travel and visa costs.

We are again providing free childcare to those who need it! In addition, the sprint weekend will take place in a different venue and is completely open to the public! Stay tuned for more information!

🚨
Do you need a visa to attend EuroPython 2023 in Prague? Just head to https://ep2023.europython.eu/visa to request the support letter for your visa application!

💶 Financial Aid

Our Financial Aid program is in full swing! We’ve already received over 60 applications from over 30 different countries. If you need financial assistance to visit EuroPython, the deadline for the first round of applications is 23 April 2023.

For more information about our Financial Aid Program and our selection criteria, please visit https://europython.eu/finaid.

💸 Call for Sponsors

Big shoutout to our first three confirmed sponsors Numberly, energy & meteo systems and Kraken Technologies LTD! Special shoutout to Numberly, celebrating their 10th anniversary of being a EuroPython sponsor! Thank you for your continuous support, your dedication to the community and the kindness fun (and snakes!) you have brought to our conferences! We cannot wait to see you at your booth!

🤗
Special appreciation for our supporter pretix! Thank you for powering our ticketing system with your open source software and thank you for making community events so much easier and better!

We are privileged to have many other fantastic companies who have expressed interest in sponsoring EuroPython this year. Apart from the standard sponsor packages, there are many other ways you can support the conference: be a childcare or Financial Aid sponsor, help us with our endeavour to open our spirit days to the public!

If you are interested in sponsoring EuroPython 2023, head to https://ep2023.europython.eu/sponsor and dig into the details. If you still have questions, write to us at sponsoring@europython.eu

🐍 Upcoming Events


PyCon DE & PyData Berlin https://2023.pycon.de/ 🇩🇪
17. April - 19. April 2023

PyCon US https://us.pycon.org
19 - 27 April 2023

PyCon LT https://pycon.lt/2023 🇱🇹
17 - 20 May 2023

PyCon Italia https://pycon.it/en 🇮🇹
25 - 28 MAY 2023

PyCon PL https://pl.pycon.org 🇵🇱
29 June - 02 July 2023

PyCon Taiwan https://tw.pycon.org/2023/en-us 🇹🇼
Sep. 2 - 3 2023

PyCon Estonia https://pycon.ee/ 🇪🇪
Sep. 7 - 8 2023
Call for papers deadline: 21st April, 2023

💥 Open Source Project Feature

MyHDL: From Python to Silicon! https://www.myhdl.org/
MyHDL is a powerful tool that can help you design hardware with Python, It gives you the ability to convert your designs automatically to both Verilog and VHDL and provides hardware engineers with the power of the Python ecosystem

There is a nice talk from PyCon Taiwan 2013 by Jan Decaluwe about using MyHDL to design digital hardware with Python.

🤭 PyJok.es

$ pip install pyjokes
Collecting pyjokes
Downloading pyjokes-0.6.0-py2.py3-none-any.whl (26 kB)
Installing collected packages: pyjokes
Successfully installed pyjokes-0.6.0
$ pyjoke

.NET was named .NET so that it wouldn't show up in a Unix directory listing.

🥰
Thanks for reading along, we'll have a regular (monthly) appearance in your inbox from now on. We're happy to tailor our future editions to accommodate what you'd like to see here, drop us a line here: communications@europython.eu











EuroPython February 2023 Newsletter

Dobrý den!

It’s March already, the days are flying by and EuroPython in Prague will soon be here! So, what’s been going on?

🐍 EuroPython 2023 Conference Update

🇨🇿 Prague

Since our last newsletter, where we announced our venue will be in Prague, we’ve put together a page containing links and details about the city, its infrastructure and the sorts of things you could explore outside the conference. You can find it here: https://ep2023.europython.eu/where (and we welcome suggestions for additions to this guide).

🧨 Call for Proposals (CFP)

EuroPython 2023 Call for Proposals (CFP) will be open between Monday, 6 March 2023 and Sunday, 19 March 2023

https://ep2023.europython.eu/cfp. More details will be published soon when we open our CFP.

EuroPython reflects the colourful and diverse backgrounds, cultures and interests of our community, so you (yes, you!) should go for it: propose something and represent!

No matter your level of Python or public speaking experience, EuroPython's job is to help you bring yourself to our community so we all flourish and benefit from each other's experience and contribution.

If you’re thinking, “but they don’t mean me”, then we especially mean YOU.

  1. If you’re from a background that isn't usually well-represented in most Python groups, get involved - we want to help you make a difference.
  2. If you’re from a background that is well-represented in most Python groups, get involved - we want your help making a difference.
  3. If you’re worried about not being technical enough, get involved - your fresh perspective will be invaluable.
  4. If you think you’re an imposter, join us - many of the EuroPython organisers feel this way.
  5. This is a volunteer led community, so join us - you will be welcomed with friendship, support and compassion.

You are welcome to share your questions and ideas with our programme team at programme@europython.eu

👩‍🏫 Speaker Mentorship

As a diverse and inclusive community EuroPython offers support for potential speakers who want help preparing for their contribution. To achieve this end we have set up the speaker mentorship programme.

We are looking for both mentors and mentees to be a part of the programme.

To become a Mentor you need to fill in the application form here and If you are a mentee in need of help contributing to EuroPython, especially if you are from an underrepresented or a marginalised group in the tech industry, please fill in the form here. We will get in touch with you to update you on working with a mentor and how to participate in the workshops.

Along with this we will also run an Ask Me Anything for the CFP and a workshop for first time speakers

More details on https://ep2023.europython.eu/mentorship

🎙️ Keynotes

We are thrilled to announce our first keynote speaker for 2023, the New York Times bestselling author Andrew Smith.

Andrew has recently finished a book, due out later this year, about what it feels like to learn how to code. His language of choice was Python and, as part of his research, he became (and continues to be) involved in several different aspects of the Python and wider FLOSS community.

Andrew often appears before live audiences and on radio and TV, and has written and presented a number of films and radio series, including the 60-minute BBC TV documentaries Being Neil Armstrong and To Kill a Mockingbird at 50, and the three-part BBC Radio 4 history of the lives of submariners, People of the Abyss. The last decade has seen his focus shift more squarely to the digital revolution and its social implications, with high profile magazine and comment pieces appearing in The Economist’s 1843 magazine, The Financial Times and the US and UK editions of The Guardian. Smith also features in Stanford University's History of the Internet podcast series.

Find out more about Andrew via his website: https://www.andrewsmithauthor.com/
Andrew interviewing Buzz Aldrin

🎫 Ticket Sales

As usual, there will be several ticket options, so you can choose the one most suitable for you. Ticket sales are expected to start on 21 March. We are aiming to keep the ticket prices at an affordable level for all tiers, despite cost increases and inflation. Check out our ticket page to find more information: https://ep2023.europython.eu/tickets

💶 Financial Aid

As part of our commitment to the Python community, we offer special grants for people in need of financial aid to attend EuroPython. These grants include a free ticket grant, a travel and accommodation grant of up to € 400, and a visa application free grant of up to € 80.

We will review grant applications and award grants in two rounds this year. The submission deadline for the first round will be on 23 April 2023 and the deadline for the second round will be on 21 May 2023. If you submit your application in the first round, you will automatically be considered in the second round as well. So, apply early to increase your chances.

The Financial Aid Programme is now open for application. For more information and a link to the application form, check out https://europython.eu/finaid.

🥇 Speakers Placement Programme

We provide for mentees to provide speaking opportunities at a local event or meetup before or after EuroPython to help boost their confidence. If you are an event/ meetup organiser who is looking for speakers, please kindly fill in this form and we would be happy to introduce our mentee to you if there’s a match.

📞 Call for Trans*Code Volunteers

EuroPython Society champions diversity & inclusion. Following the success and fun we had at our Trans*Code event in Dublin, we are hosting, a Trans*Code event again at EuroPython 2023 in Prague - an informal hackday & workshop event which aims to help draw attention to transgender issues and opportunities.

The event is open to trans and non-binary folk, allies, coders, designers and visionaries of all sorts. Check the interviews with our 2022 Trans*Code participants to get an idea and enjoy the warmth.

This year, we are again privileged to have Noami Ceder on board to help and advise us with the organisation. We want to make EuroPython 2023 an exceptionally welcoming place for trans people and folks from under-represented groups in tech. We need more volunteers to achieve our goal! If you identify as trans or non-binary and would like to volunteer your experience and time to help us organise the event, please write to trans_code@europython.eu; or to Naomi Ceder at naomi@europython.eu (if you need to discuss something more private). If you are an ally, help us spread the word and lend us your support.

🎉 EPS New Fellows

We are overjoyed to announce the EuroPython Society Fellows in the first quarter of 2023: Naomi Ceder, Cheuk Ting Ho, Francesco Pierfederici and Jakub Musko. We are grateful for the significant contribution every one of them has made to our EuroPython community. You can read about their achievement here: www.europython-society.org/europython-fellow/

🐍 Upcoming Events in Europe

🦊 Project Feature - FoxDot

This amazing project helps with livecode music using Python and converts your favourite programming language into a musical instrument

https://github.com/Qirky/FoxDot

Foxdot does this by providing a programming environment that provides a fast and user-friendly abstraction to SuperCollider. It also comes with its own IDE, which means it can be used straight out of the box; all you need is Python and SuperCollider and you're ready to go!

We had a very nice lightning talk about this project at EuroPython 2019 https://www.youtube.com/watch?v=N7q4lB49IGM and a full length one at Pycon US 2019 https://www.youtube.com/watch?v=YUIPcXduR8E

🎗️ Clacks of Remembrance

In the Terry Pratchett novel "Going Postal", a telegraph-style system known as "Clacks" was used to pass the name of a deceased character endlessly back and forth, keeping their memory alive. But where the book had "GNU John Dearheart" -- the prefix being a basic code to instruct clacksmen to pass on, not file, and return the message -- we add meta headers to our base template in a silent but appropriately geeky tribute and act of remembrance to those in our EuroPython family we have lost.

We invite you to take a moment to “View page source” and remember our departed friends.

🤭 PyJok.es

$ pip install pyjokes
Collecting pyjokes
Downloading pyjokes-0.6.0-py2.py3-none-any.whl (26 kB)
Installing collected packages: pyjokes
Successfully installed pyjokes-0.6.0
$ pyjoke

Why do sin and tan work? Just cos.

Add your own jokes to PyJokes (a project invented at a EuroPython sprint) via this issue: https://github.com/pyjokes/pyjokes/issues/10

EuroPython January 2023 Newsletter

Hey hey!

Been awhile since we slid into your inbox. A lot has happened since our last update, we discharged the previous board, ratified a new one. We went through 10+ community and commercial proposals for where the next home for EuroPython 2023 will be. Back and forth with the lawyers, venues and everything that comes with it. Phew, it's been a minute, but, we are ready to kick things off and start putting together a wonderful experience for EuroPython 2023.

Read along to find out more..

🇨🇿 EuroPython 2023 - Prague Congress Centre 17-23 July

Put the date in your calendar!

We’re delighted to provisionally announce that EuroPython 2023 will be held in Prague, at the Prague Congress Centre, between the 17th and 23rd of July, 2023. To stay up to date with the latest news please visit our website and we encourage you to sign up to our monthly community newsletter.

A picture of the Prague Congress Centre, CZ on a clear sky day!

Prague is the capital of the Czech Republic and historic capital of Bohemia.

Sitting on the Vltava river, the city boasts numerous cultural, culinary, architectural, artistic, civic and tourist attractions. The beautiful historic centre is a UNESCO world heritage site. So, in addition to the conference, there's a LOT to see, do and enjoy. Prague has an extensive and modern public transport system, so travelling around won't be a problem and getting there is easy via well serviced train, air and road infrastructure. With an average July high of 25°c, remember to pack your shorts and sandals with your laptop, along with a spirit of adventure to explore one of the most visited and vibrant cities in Europe.

As with previous years, Monday and Tuesday (17th and 18th) will be for tutorials and workshops; the main conference talks will take place on Wednesday, Thursday and Friday (19th, 20th and 21st) with Saturday and Sunday (22nd and 23rd) for community sprints held at another location (the details for which are to be confirmed).

Our prospectus for sponsorship will be forthcoming soon, but if you already want to sponsor one of Europe’s biggest, friendliest and longest running community organised software development conferences, please do reach out to us at sponsoring@europython.eu and we’d be delighted to help.

Because EuroPython is a community organised conference, our volunteers are at the heart of everything we do. Without them, there simply wouldn’t be a conference. We’ll soon start recruiting volunteers, who are organised into teams responsible for different aspects of the conference. To register your interest please email volunteers@europython.eu.

🌍 EuroPython Society

EuroPython 2022 was a highlight for so many of us, and a worthwhile wait after 2 years. We are delighted to hear the diversity and inclusion initiatives made a difference, so more of you could join us, present, contribute, and be yourself in our community. At EuroPython 2023 we are committed to empowering through diversity by welcoming and enabling folks, and by encouraging a more enlarged and wide-ranging view on the topics and content of interest to the Python community .

With a budget of €75,000 for the grants programme in 2023, we continue supporting the European community. Until recently, we have almost exclusively supported conferences and events, but we are open to alternative ways to fund European Python events and support projects and activities that benefit the community.

Our conference city and team might change every year, but our devotion to support the European Python community remains unwavering, and so we listen to you. Guide us to do better for the community by reaching out any time to board@europython.eu.

🤓 EuroPython Society Board

Since September 2022, the EPS board have concentrated much of our efforts on selecting the 2023 conference venue. We were delighted to take community suggestions into consideration and had the pleasure of engaging in discussions with several national PyCon organisers as part of this comprehensive selection process. With Prague as our conference home in 2023, we are deeply honoured to benefit from the friendly advice and support from our ever-growing Czech friends in the local community.

However, having EuroPython in a different city every year is not without its challenges. We often find ourselves having to suspend our excitement of planning the event, and brace for the complicated VAT and tax rules of the new country and months of review and revision of the venue’s contracts. This year, we started interviewing for a Czech accountant and legal counsel early on, which has been of great help. But next year, the lengthy process of interviewing and briefing specialists will repeat again. We know this is not a unique problem for the EPS.

We know our community is made up of resourceful individuals with vast experience in pretty much all subject matters. We want to hear your advice and suggestions on how we can reduce the bureaucratic burden. Whether you have experience in accounting, finance, event organisation, music gigs, or know any helpful software, I hope you share your ideas with us at board@europython.eu and help us make EuroPython travel around Europe more efficiently.

🐍 Upcoming Events in Europe

The EuroPython Society is proud to be supporting these amazing events around Europe.

🇨🇭 GeoPython 2023 6-8 March

Enjoy a rich programme in the 8th GeoPython conference in the beautiful city of Basel: https://2023.geopython.net/talks.html
Get your ticket now: https://2023.geopython.net/#price

🇪🇸 PyCamp 2023 7-10 April

PyCamp is a 4-days event in a rural house in the forest, organised as an un-conference event. People propose what projects to work in groups, eat and have fun together. The 2023 edition is fully booked, but subscribe to receive the latest event news for future editions: https://pycamp.es/

🇩🇪 PyCon DE & PyData Berlin 2023  17-19 April

Over the course of three days, attendees will have the chance to take part in workshops, see live keynotes and talks, and socialise with other Python and PyData community members. We offer a welcoming, community-driven conference with talks from beginners to experts.
The eagerly anticipated Conference Ticket Sales started on January 16, 2023 and it’s still going on!! We have a great range of prices and different categories for the tickets. More details on our website - https://2023.pycon.de/

🇮🇹 PyCon Italia 2023 25-28 May

PyCon Italia will be back again in Florence, from the 25th to the 28th of May! We have just announced our first keynote Marlene Mhangami. Make sure you follow us on Twitter (https://twitter.com/pyconit) or on Mastodon (https://social.python.it/@pycon) to stay updated on more news (schedule will be out soon too!)
Oh and why not try to do a PyCon Italia + DjangoCon Europe mini tour? Florence has direct flights to Edinburgh 😄

🏴󠁧󠁢󠁳󠁣󠁴󠁿 DjangoCon Europe 2023  29 May-02 June

Following the success of the Porto Edition of DjangoCon Europe 2022, we are excited to welcome you to the beautiful capital of Scotland, Edinburgh, for DjangoCon Europe 2023! Join us in the 15th edition of the conference for a source of inspiration, education and networking opportunities. We welcome people from all over the world with Django skills at all levels! Better yet, why not consider submitting a talk and share your knowledge and insight with other like-minded community members?
DjangoCon Europe CFP open till 26 February. Submit your talk now: https://2023.djangocon.eu/news/announcing-call-for-proposals/

🎗️
If your local community is looking for support to organise an event or project, you are welcome to get in touch with our grants team at grants@europython.eu.

⚽️Project Feature - Sports Python

Interested in Football Analytics? Or exploring Data Science? Or teaching Computing and want to demonstrate a use-case beyond traditional industries? If so, check out the Sports Python Educational Project!

Sports Python is a tech outreach initiative based in London helping to democratise Python education through the medium of Sport, as an alternative gateway through which more new and/or underserved audiences can discover the open-source ecosystem we love, and further foster the inclusiveness of our global community.

Originating in Spring ’22 with the award of a (EUR1,500) EPS grant, the project has since developed Open Educational Resources (OER) based on real Football Analytics which can be used for a variety of hands-on learning or teaching, from language fundamentals to professional Data Science skills. These Football-themed OER can be accessed on GitHub https://github.com/SportsPython.

Feel free to get in touch with the Sports Python project about anything that sparks your interest, either by email to info@rhozeta.io, on social (find project author Chiin-Rui Tan on LinkedIn, @AnalyticalPanda on Twitter), or open a GitHub issue!

🃏 PyJok.es

#pip install pyjokes

import pyjokes

print(pyjokes.get_joke())

A programmer walks into a foo...

Thanks for reading along, we'd have a regular (monthly) appearance in your inbox from now on. We're happy to tailor our future editions to accommodate what you'd like to see here, drop us a line here: communications@europython.eu

EuroPython 2023 Team 🤗

EuroPython 2022: Videos & Thanks!

Lights! Camera! 📸 Action! 🎬

We are super delighted to release the final video instalments from EuroPython 2022. Like all season finales, we're leaving you on a knife edge, guessing where we'll be hosting the conference next year. 🤔

Rest assured, producing top-quality live streams to enable seamless remote access and subsequent edits of all our talks will be a given, no matter where we'll be in real life. 🤗

Grab that popcorn🍿, head to YouTube and come check out all the insightful & binge-worthy talks!

It’s been a minute since EuroPython 2022. What was your favourite part of the conference?

2022 in our 21st year! 🎉 Last year, we celebrated our 20th anniversary. If you are curious about how EuroPython evolved in the first 20 years and want to watch all the videos from 2011-2021, come take a walk down memory lane - 20 Years of EuroPython.

Do you have any suggestions/ ideas on how the next decade for EuroPython should look? Want to be a part of the EuroPython organising team 2023?
Drop us a line and start the conversation: plaza@europython.eu

Catch you on the flip side,
Sangarshanan on behalf of the EuroPython 2022 team

🐍 Community Call for Venues - EuroPython 2023

In recent years, the EuroPython Society (EPS), the organisers of the EuroPython conference series, have been discussing how to make the conference more accessible for the community and affordable to a wider audience. This means that on top of the cost of the venue and catering, we would be paying extra attention to how easy and affordable it is getting to and from the city, and how expensive it is to spend a conference week there.

We think that the community is our best source to find such suitable venues. After talking to many amazing community organisers this year,  we have decided to call upon our community to propose the venue for the EuroPython 2023 conference.

If you are a member of a local community and would like EuroPython 2023 to be hosted in your city, please rally the local Pythonistas support and send us a proposal on behalf of the group you represent. Rest assured that it doesn’t mean that your local community will take up the fiscal and administrative responsibility of organising the conference; the EuroPython Society will still bear the burden. But you will be welcome to volunteer to help with the organisation, advise how to best benefit your local community, and guide the conference to have more of the local flavour.

🤙
If you want to propose a venue on behalf of your community, please complete this form before September 26th and we will get in touch to coordinate with you to get a list of detailed answers & quotes from the proposed venue.

Link to the form: https://forms.gle/xBzL7zLcJZXSoiPp8

Note: on top of the Community Call for Venues, we will also send out a Request for Proposals to some venues in parallel as a contingency, following our previous process in 2018, 2019 and 2020.

🗓️ Timeline Projection

2022-09-26: deadline for community groups to complete the Community Call for Venues Form

The week of 2022-09-26:  the EPS gets in touch with community proposed venues and some other potentially suitable venues to invite them to fill in our  Request for Proposals (RFP).

The week of 2022-10-26: deadline for interested venues to complete the RFP.

The week of 2022-10-27 (for up to a month): Q&A and evaluation process with venues that successfully completed the RFP.

Got any questions/ suggestions/ comments?
Drop us a line at board@europython.eu and we'll get that sorted as soon as we can.

See you all soon,
EuroPython Society Board

EuroPython August 2022 Newsletter

Hey, there! Welcome to the post-conference EuroPython newsletter! We hope you enjoyed the conference and had a great time, whether you joined us in person or remote.

As you probably noticed, we skipped July. We are very sorry about the absence (not really), but we were all very busy enjoying summertime. You see, the problem is - and I know this will sound crazy but - we actually miss you.

Not that long ago we were all together, drinking pints and running around at Dublin’s Convention Centre. The event was so good that it left a dent in our hearts. Yes, we are quite emotional! 🤖

To minimise the pain in our aching blood-pumping machines ❤️, we decided to take a break from our summer cocktails and boat trips to come and say hello. We plan to be back again in September, tanned and full of energy.

So, with no further ado, let's get to the fun stuff! As always, if you have any suggestions or have a cool Python event you want us to feature, please send us at news@europython.eu.

📝 EuroPython Society Update

🏛️ EuroPython 2023 - Community Call for Venue

The EPS team have been discussing how to make the conference more accessible for the community and affordable to a wider audience. We know that the community is our best source to find such places. So for EuroPython 2023, we’d like to experiment with running a Community Call for Venue!

We will publish the formal call on our blog/newsletter in mid-September. Stay tuned!

In the meantime, talk to the local community you are part of. If you already have ideas, questions or suggestions, reach out to us at board@europython.eu.

🎗️ General Assembly Update

In preparation for the Annual General Assembly (GA), the EPS board are working with our accountant and auditor to get our financial reports in order in the next couple of weeks. As soon as that is finalised, we will be excited to call for the next General Assembly; the actual GA will be held at least 14 days after our formal notice.

The GA will be run online this year. It is a good opportunity to hear about Society's developments and updates in the last year. A new board will also be elected at the end of the GA.

All EPS members are invited to attend the GA and have voting rights. Find out how to sign up to become an EPS member for free here: https://www.europython-society.org/application/

🏂 What does an EPS board member do?

The EPS board is made up of up to 9 directors (including 1 chair and 1 vice chair); the board runs the day-to-day business of the EuroPython Society, including running the EuroPython conference series, and supports the community through various initiatives such as our grants programme. The board collectively takes up the fiscal and legal responsibility of the Society.

At the moment, running the annual EuroPython conference is a major task for the EPS. As such, the board members are expected to invest significant time and effort towards overseeing the smooth execution of the conference, ranging from venue selection, contract negotiations, and budgeting, to volunteer management. Every board member has the duty to support one or more EuroPython teams to facilitate decision-making and knowledge transfer.

In addition, the Society prioritises building a close relationship with local communities. Board members should not only be passionate about the Python community but have a high-level vision and plan for how the EPS could best serve the community.

💡
How can you become an EPS 2023 board member?

Any EPS member can nominate themselves for the EPS 2023 board. Nominations will be published prior to the GA (see 2022’s candidates).

Though the formal deadline for self-nomination is at the GA, it is recommended that you send in yours as early as possible (yes, now is a good time!) to board@europython.eu.
We look forward to your emails❗

🍀 EuroPython 2022 Conference Update

We made it together! EuroPython was a hoot and a half ❤️

115 sessions, 12 tutorials, 8 special events, 4 Keynotes, and 3 Panel discussions spread across a bright and sunny week in July. We’re still in awe of the discussions that inspired us, the laughs we shared and the Guinness (& energy drinks? 😝) we gulped throughout. EuroPython is much more than just a conference, it is an amalgamation of differences, experiences, careers, demographics, cultures and much more.

For the stats lovers. here’s a nerdy snippet of EuroPython in numbers:

❤️‍🔥 EuroPython 2022 Volunteers

Given the scale of EuroPython, it is often difficult to imagine it being run without the support of full-time support. The truth is, EuroPython emphasises and embraces the polar opposites of organisation & chaos, fun & anxiety. It is a place where the teams bond and connect, pick up new skills, discover new interests, and grow out of our silly mistakes. But it is also a massive endeavour that comes at a significant cost of volunteer burnout, personal sacrifices and an unnerving commitment to work that often isn’t highlighted.

Rare chance when we got many of our volunteers on stage and screen; an emotional moment highlighting the unsung heroes of EuroPython 2022

EuroPython will forever be in debt to the yellow shirt crew! Through thick and thin, the volunteers made sure that all the attendees, speakers, sponsors and support crew were taken care of.

To list all our volunteers, past and present would take forever. But here’s a small acknowledgement for all the brilliant effort our volunteers put in.

😍
I hope every reader will take a moment to read their names and celebrate their love for the community:

❣️ https://ep2022.europython.eu/thankyou ❣️

🌞 Miss the EuroPythonic extravaganza already?

We’ve been working hard with our AV team (Gonzo <3) in the past months to go through all the videos and package them for your viewing pleasure.

We hope to have them ready and tidied up by mid-September! 🥳

In the meantime if you want to revisit a talk you missed or just want to check out a talk again, all the live streams from across the conference days are put up as a playlist on our YouTube channel.

You can also find mini snippets of humans of EuroPython throughout the conference in our highlight videos: 🤗

📸 EuroPython 2022 Photos

The official photos for this year’s conference are out! Check out the album at https://ep2022.europython.eu/photos.

And if you want to share highlights of YOUR EuroPython 2022, you can add them on Flickr, make a PR on our website or send us an email. More information here: https://ep2022.europython.eu/photos#how-to-add-your-photos

✍️ Community write-ups

Check out the nice write-ups put together by our thriving community about this year’s conference:

Our beloved Vicky Twomey-Lee tells the highlights of the dream-come-true experience of the Dublin EuroPython
EuroPython2022
Overview This is an article to share my wonderful experience participating in the EuroPython Conference in Dublin, Ireland. Objective I’d like to share the key points to help my fellow Python Developers (Pythonistas).
Vasant Vohra’s experience at EuroPython 2022
EuroPython 2022
I had a wonderful time at EuroPython, lastweek, in Dublin.The most important aspect of the conference, for me personally, involved givingmy talk entitled “Music and Code”. It was an opportunity for
The wonderful Nicholas H. Tollervey on his Music and Code session and his impressions of the week at the event

And on Twitter’s Memory lane, the highlights are to:

Pyladies Lunch event 
The Music and Code
Inclusion efforts
On dreams coming true
Diego Russo on EuroPython

🗓️ Upcoming Events

PyCon APAC 2022 (Sat Sep 3 - Sun Sep 4)

PyCon APAC 2022 will be held online on 3-4 September via YouTube Streaming. In the past years, PyCon Taiwan retrospected our role as a Python community platform in Taiwan. We have continued improving our agenda and events by introducing wonderful thoughts and experiences from the other Python Conferences in the world to Taiwan. We also enhanced the exchange of experience between local-to-local and local-to-international Python communities and kept adopting innovative plans.

More details and tickets: https://tw.pycon.org/2022/en-us

PyCon SK (Fri Sep 9 - Sun Sep 11)

The PyCon SK 2022 conference, which will be held in Bratislava, is an annual gathering of the community using and developing the open-source Python programming language.
More details and tickets: https://2022.pycon.sk/en/index.html

PyBelfast (Tue Sep 13)

PyBelfast has joined forces with the Northern Ireland Dev Conference to take part in the MeetUp Fest to bring an extra special meetup to the community in September.
We will be holding a family friend STEM-inspired python meetup to welcome everyone into the Python and meetup community.
More details: https://www.meetup.com/pybelfast/events/287739426/

PyCon UK (Fri Sep 16 - Sun Sep 18)

PyCon UK will be returning to Cardiff City Hall.
More details and tickets: https://2022.pyconuk.org

14th DjangoCon Europe & 1st PyCon Portugal (Wed Sep 21 - Sun Sep 25)

This is the 14th edition of DjangoCon Europe and it is organised by a team made up of Django practitioners from all levels. We welcome people from all over the world.
Our conference seeks to educate and develop new skills, best practices and ideas for the benefit of attendees, developers, speakers and everyone in our global Django Community, not least those watching the talks online.
In addition to DjangoCon Europe, we’ll be hosting the first PyCon Portugal in the beautiful city of Porto on 24th September. Get your tickets now, and help us make history!
More details and tickets: https://2022.djangocon.eu & https://2022.pycon.pt/

PyLadies Dublin (Monday, Sep 26)

🙌 We are excited to announce our second in-person event this year! And we are partnering with Microsoft Ireland who will also be hosting us at their HQ in Sandyford.
💻 Do bring along your laptops if you want to code in between or after the talks, it can be with others attending, or trying out code with speakers, it's up to you! 🥰
More details: https://www.meetup.com/pyladiesdublin/events/287637521

PyCon ES (Fri Sep 30 - Sun Oct 2)

This year’s most important Python event in Spain will happen in Granada. An event that will bring together hundreds of Python enthusiasts, an incredible agenda and wonderful job opportunities.
More details: https://2022.es.pycon.org

PyCon Ireland (Sat Nov 12 - Sun Nov 13)

Two years after our 10th-anniversary celebration, we are delighted to be back with an exciting new program for Ireland's premier technical conference in Dublin.
The pandemic has been a difficult time for everyone. We would like to thank all health care workers for their care. To honour their work, this year's conference will have a health care theme.
More details and tickets: https://python.ie/pycon-2022

Pyjamas Conf (Sat Nov 26 - Sun Nov 27)

I know we live by being the laziest Python conference but it's time to get up and get moving as the CfP will be closing on 19th September. Want to speak at a Python event for the 1st time? Have a new talk idea that you wanna try out? Please submit a proposal!
Details about the CfP can be found here: https://pyjamas.live/cfp/
Like any community-run conference, we need a lot of support and there's something you can help us with! You can sign-up to be our volunteer here: https://forms.gle/aZaxsTKXZ2ntucaCA  Or you can show your employer our sponsorship package: https://pyjamas.live/assets/sponsorship_package_2022.pdf

💌
At EuroPython Society, we proudly support local conferences and communities through our grants programme. PyCon SK, PyCon ES, DjangoCon Europe & PyCon Portugal are a few of the upcoming conferences we are supporting.

If you run a local conference and can use a bit of financial help or even just a sounding board to bounce off ideas, we’d be delighted to hear from you: grants@europython.eu

You can find out more about the EuroPython Society’s grants programme here: https://www.europython-society.org/grants/

💕 A note from our Chair: Raquel Dou

Whether you’re a loyal reader or a new subscriber to our newsletter, thank you! I am Raquel Dou, who has had the privilege of serving as the chair of EuroPython Society in the last year. And what a blast this year has been! The EuroPython 2022 is the 21st EuroPython conference series. After two decades in, organising the conference still never feels formulaic. Instead, it is a place of trying out new things, being supportive, connecting with one another and evolving with Python and the community.

One of such new things I’m very proud of is this (s0rt-of) monthly newsletter you are reading, authored by our ever growing Communications team. Not only is this our effort of delivering conference/Society updates to you in a condensed format, but more importantly it is a showcase of the humans that make up our teams. Through their distinctive writing styles, events they participate in and projects they share, we celebrate them and the communities they are part of.

I want to specially thank our editor in chief Vaibhav Srivastav (more affectionately known as VB). Thank you for leading the Comms team this year with such warm energy, humour and great care. Every newsletter, email, tweet, LinkedIn post that was drafted, edited or reviewed by VB was like a love letter to the community and an ode to being kind.

EuroPython has always been a place of celebration of the geekdom of the humans who (want to / love to) use Python. Going forward, we hope to hear from many more of you how you are using Python to make art, educate kids, watch the stars, grow plants, and all the mundane and extraordinary things in your life!
If you want to discuss any quirky ideas, cool events or fanciful initiatives that are in any way relevant to the EPS, you are most welcome to reach out to me at raquel@europython.eu. Together, to another wonderful year of expanding our horizon and great Pythonic fun! ❤️🐍