Python makes coding useful and fun for nurses!

A small amount of coding skill could be far more useful than you expect. And easier too. I've had a lot of fun learning Python and so will you!

There's no getting away from it, coding is becoming a basic skill everyone could make good use of. We even teach it to five-year-olds in school these days! The dramatic progress in communication technologies means that almost every aspect of our lives touches on some tech you could customise and improve on, if only you spoke the language of machines. That goes for our nursing life too.

Service users don't hang about waiting for us to acquire skills, they will race ahead without us if we sleep on this. Patients were using social media before many of us, sharing knowledge and supporting each other, but only recently has that made some impact on the student nurse curriculum. Mobile tech is developing an internet-of-things where sensors and basic processing is embedded everywhere, with extensive wireless communication networks, bringing with it fantastic opportunities and yes, dangers, for healthcare. Vitalpac and Safe Hands are just two examples where this is already happening, with nurses intimately involved. Now, I'm not arguing that nurses should take another three years out to do a computer science degree as well, but being able to speak some of the language, know the terrain, would better allow us to advocate for service users in emerging technology areas. And use some of it directly ourselves.

It's not nearly as hard to learn as you might expect.

Until recently I had barely dipped my toe into the world of coding and this began to scare me a little. And frustrate me, because I knew enough of all the little things I could automate or improve on easily, if only I had the skill. I briefly tried C#, a popular language for quickly creating tools, but I was still bashing my head into simple syntax problems like missing semi-colons. What I needed was something cleaner and more elegant, with a strong, supportive community. That road inevitably leads us to Python.

Python is awesome. The guts of nurseAdvance is written in Python.

Why? A few reasons, actually. It's just nice to work with, it's concise with less "line noise", where line-breaks and whitespace create the same meaning as ugly {curly brackets} and semi-colons; other languages use. Here's an example of how much cleaner something reads when using Python compared to another language.

Python is commonly described as "batteries included" because it has an extensive standard library of common functions that can be used without having to reinvent good practice from scratch. Excellent for us beginner programmers! You can get on with doing things, rather than recreating basic tools first, achieving more in less time. Advanced coders often rely on the standard library too, making it easier to understand their code when you want to use it.

Python is particularly useful to health researchers, as it's commonly used for working with large data sets. Given my interest in statistics and my ambition to study at post-grad level, it means I don't have to worry as much about learning R for data wrangling.

Python is popular and battle-hardened. Some of the world's biggest sites are built on Python and at the other end of the scale, many hobbyists use it for projects like home-automation. Imagine for example controlling lights on a ward to benefit patient's circadian rhythm, by altering intensity and colour temperature through the day. You get the best of both worlds with Python, industry leaders like Google and Autodesk use it, but so do the lone enthusiasts who'll just hand you code for free, for the simple pleasure of sharing. The popularity also means it has one of the best environments to code your project in: PyCharm.

You can learn Python for free using the fantastic resources created by the community. PyCharm comes in an educational flavour, with built in tutorials, while the Pro edition is free for students. Then there's this kind of thing, a totally free book that teaches you how to save time on repetitive tasks by scripting with Python.

Maybe you're not convinced yet why this is a nursing skill. I hope to demonstrate some of the awesome things I'm starting to unlock for myself, but I do have a nursing degree to finish too! If you try it out, I think you'll be pleasantly surprised at the applications you can put it to. And if you were already thinking about getting into coding, just do it, pick a simple project to learn with (mine was this website) and crack on!

Next time I'll be talking about Django, the Python based web framework this site is built on and the ways it empowers you beyond lazily installing WordPress, for when you want to customise communication with service users to your exact project requirements.