Nicholas Tollervey, a classically trained
musician, philosophy graduate, teacher, author, and software engineer, founded
the London Python Code Dojo, created the education track at PyCon UK,
coordinated the Python aspects of the BBC micro:bit project, authored four
technical books for O'Reilly, and has worked across many diverse sectors as a
software engineer. He is currently cultivating a community based project called
CodeGrades, and is employed by Anaconda as a principal engineer on the PyScript
team. He regularly speaks about Python at technical events all over the world.
Nicholas will be joining us at GITEX on the 18th October in Hall 26, DevSlam Stage at 2pm covering the topic of Creating a Coding Culture.
In the build up to the event, we interviewed Nicholas on his education in the coding industry, influencing the new generation of coders, and AI's effect on coding best-practise.
Why should we care about coding education?
Because asking what sort of education we want is the same
as asking what sort of society we want to become. Education is the process
through which we interact with our future colleagues, collaborators and
If we don't cultivate effective, creative and
innovative coding education we risk living in a technically illiterate society.
If so much of our culture, commerce and collaborations are experienced through
technology, then such a society will have a weak, disengaged and disempowered
place in the world. Would you want to live in such a place?
What makes a thriving coding culture tick, and how do you
I think the answer is in your question: the thing that
makes a thriving coding culture tick is that it is self sustaining. What's the
process by which a culture sustains itself? You'll be entirely unsurprised to
hear that it's education!
Look at the amount of effort the open source Python
programming community has put into learning, education and engaging with
teachers. From the
very beginning, Python has been designed to be easy to learn and teach (the
language's creator, Guido van Rossum, evolved Python from his work on a
teaching language called "ABC"). Unsurprisingly, the IEEE recently
reported that Python is currently the world's most popular programming language
and we all know that Python is powering most of the innovations in AI, data
science and in many other fields.
Folks looking to get into coding will be drawn
to those communities and technologies that make it easy for beginners to
engage, are welcoming spaces, and empower you to build cool stuff. It sounds
obvious when you write it down like this, but it takes a rare visionary (such
as Guido) to embed these educational perspectives into a technology such as a
programming language. But I'm glad Guido did manage to do this because we get
Python and everything it enables.
In the new age of AI, how can technology and education be
This is a great question.
The obvious answer would be a vague assertion that AI
provides lots of opportunities to revolutionize education.
But I'd like to focus on a more subtle way to answer this
Every few years something becomes the "hot"
topic in computing.
Currently it seems to be AI, and has been data
science, the metaverse, blockchain, virtual reality, augmented reality, and so
the list goes on of many other "world changing" technologies (so the
hype tells us).
In each case, within the hype is a serious kernel that,
if used innovatively, effectively and in the right context, is indeed powerful
and of huge value. But our world is littered with failed "Uber for cats
but on the blockchain" type startups who lacked the skill of spotting the
opportunity while attempting to ride a bandwagon. Clearly it's important to
learn how to discern the truly valuable inflection points and potential uses of
So how can technology and education be positively brought
together? In such a way that folks learn a sophisticated discernment of the
core value and uses of whatever the next technical innovation may be (as AI is
now), along with the acquisition of both technical and commercial skills to
bring the benefits of such opportunities to the wider world.
You can learn this stuff. If you can learn it,
it's within the realm of education. Did I mention how important education is to
our technical endeavors?
What would your suggestions be to someone
looking to get into coding?
1. Manage your expectations: learning to code is not a
quick process, so be prepared to put in the time and effort, pick yourself up
from failures and cultivate the humbleness to be able to say, "I don't
and thus find new learning opportunities.
2. Choose the right language: this is an easy
one... choose Python. It's literally everywhere, used in everything, and is one
of the easier languages for beginners to learn.
3. Step up: in the same way musicians eventually
have to give a first performance, or martial artists eventually have to spar
with others, coders have to contribute code to a project or product. Be brave,
get stuck in, respect your peers, learn from them, contribute and grow.
In 20 years' time, we know we've succeeded as a
technological culture because..?
Let's exercise our imaginations shall we..?
We know we've succeeded because GITEX 2043 will
bring together folks from across the solar system in a crucible of creative
coding that enlarges and improves our world[s] for all humanity. I know I'll
try to attend as an old "grey beard" engineer who is proud of their
small part in making such a thing possible.
Finally, I'll be delighted to see
how Dubai is a center for creative, innovative and humane technical research
and learning that reflects the precious "can do" culture of the UAE.
What are you most looking forward to at GITEX
Apart from giving my talk, I'm looking forward
to stimulating conversation, challenging debate and learning about interesting
technology with the new friends I will have made while participating in GITEX.
And yes, all the things I mentioned in the bio above are
going to be aspects of my talk - even the classical music bit... come
along to the talk and see how!