Resources

Albert Rapp - Breaking data identities: Making a case for language-agnosticity

video
Oct 31, 2024
4:37

image: thumbnail.jpg

Transcript#

This transcript was generated automatically and may contain errors.

Welcome everyone, my name is Albert Rapp. I am a consultant based in Germany and you may know me from the content that I share online on YouTube or LinkedIn. Today I want to talk to you about breaking data identities, which means that I want to help you appreciate programming languages other than your preferred one. And to do so I want to share a story that I've learned during my PhD.

You see, until last year I was a PhD student in mathematics, specialized in the field of probability and stats, which is one field among many others like algebra, calculus and so on. And I had such a strong identity of being someone from this one particular field that I refused to read papers from other fields because I felt like these are not for me, I don't know anything about that, so I can't read them and they don't really have anything to offer for me.

But as I refused to read all of these papers, at some point I acknowledged that I should probably read them to find ideas that might help me solve my problem. And it turned out that often these other areas had something to share and helped me solve my own problem from my field. And this is where I learned that it is not necessarily when it comes to solving a problem, it isn't about working with a particular tool or being in a particular area, it is about bringing things together to get things done.

And this is where I learned that it is not necessarily when it comes to solving a problem, it isn't about working with a particular tool or being in a particular area, it is about bringing things together to get things done.

Falling into the same trap with programming languages

And even though I already made this experience and you'd think I'd know better, when it came to programming I fell into the same mindset trap where I had this one programming language, in my case R, where I felt like I can use this for everything and I don't need to know about anything else. But just like it was a mistake to think that I am only someone from probability and stats and I cannot and won't do anything else, it is a mistake to not appreciate that our programming languages can help you and have something to share inside of your project, even if you still have one preferred language.

And for example, if you work on a particular problem, then for example if you work with reports, then you might want to use HTML and CSS to make things look pretty. Or if you want to do machine learning and AI, then Python might have something for you. And if you build web apps, for example in R or Shiny, then it can still help you to bring in tiny nuggets of JavaScript into your project to get things done faster or make it easier.

Frameworks that transcend languages

And the thing is you usually like a particular language because the frameworks that are implemented in that language are so nice. For example, if you are into data visualization, then you might like the grammar of graphics, which in R is implemented in ggplot. And it turns out in Python there's a library called plot9, which does the exact same thing. That means it implements the grammar of graphics. And in these two packages it's even particularly nice because they use the exact same code to implement this framework.

And when it comes to data wrangling, you might like to use dplyr in R because it uses verbs like mutate and chains things together with pipe. And there you might have to, if you go into other languages like Python, you might have to do some switching of the terminologies by using dots instead of our pipe operator and using the with columns function instead of the mutate function. But in general, the ideas of chaining things together can still be achieved in a different language.

And I wish I had more time to focus on different frameworks and how they transcend programming languages. But as I don't have the time, I will put up a link that you can follow to get a little guide of how to go from R to some other language like JavaScript or Python or HTML and CSS. But for now I hope I have convinced you that it's totally okay to have one preferred language. This will never go away. But it's also great to appreciate what other languages can give you and that it might not be as hard as you'd think to bring nuggets from those languages into your projects. Thank you for your attention and have a great conference!