
The Evolution of Shiny with Posit's CTO, Joe Cheng
Posit’s Joe Cheng talks about the evolution of Shiny and the future of Shiny for Python. Joe is one of the original architects of Shiny and leads Posit’s Open Source software development. Learn more about Shiny for Python at shiny.posit.co/py
image: thumbnail.jpg
Transcript#
This transcript was generated automatically and may contain errors.
My name is Joe Cheng. I am the CTO of Posit. Most days I co-lead the Shiny team with Winston Cheng.
Origins of Shiny
Shiny really started with a request from one of our users, one of our earliest users of RStudio IDE. Professor Danny Kaplan asked us for an interactive way to present statistical and math concepts to students. And he knew R really well, so he wanted to do it with R.
So it wasn't until probably a year after he had made this request that I stumbled onto a technology called Meteor that was pushing this new, to me very alien, form of programming called reactive programming. And it took me a while to get my head around how it actually worked and a little digging through their source code.
But finally, after I understood what they were doing, and some time had passed where I guess my brain had marinated it, I woke up one morning and I just had this vision of HTML with no JavaScript in it, just simple markup that had indicators of what elements were inputs and what elements were outputs. Combined that with reactive code written in R that would power that HTML interface and tie it all together with a WebSocket connection.
It really felt like this could be a way to build applications that were interactive enough to satisfy the needs of not just Danny, but a lot of Dannys out there in the R world.
It really felt like this could be a way to build applications that were interactive enough to satisfy the needs of not just Danny, but a lot of Dannys out there in the R world.
Shiny for Python
And I think Shiny will always find its purest expression in R just because of how flexible the language is. But it's impossible to ignore how many people could benefit if we bring those same ideas to Python as well.
The design of the language really prioritizes ease of understanding and ease of reading. Whereas I think in R we tend to favor concise expression of our ideas and maybe a certain elegance and symmetry. And in Python, readability, understandability, simplicity, those are valued more. So I think for some people, Python is just home. I mean, it's famously the second best language for anything. I think that's a label that Pythonistas probably wear with pride.
And because Python is the second best language for anything, it means that if we want to reach more people with Shiny, we can reach all those people for whom Python is useful. And that's a lot of people.
And because Python is the second best language for anything, it means that if we want to reach more people with Shiny, we can reach all those people for whom Python is useful. And that's a lot of people.

