Let The Robots Do The Work Using Robotic Process Automation with Robocorp - Episode 310

Summary

One of the great promises of computers is that they will make our work faster and easier, so why do we all spend so much time manually copying data from websites, or entering information into web forms, or any of the other tedious tasks that take up our time? As developers our first inclination is to "just write a script" to automate things, but how do you share that with your non-technical co-workers? In this episode Antti Karjalainen, CEO and co-founder of Robocorp, explains how Robotic Process Automation (RPA) can help us all cut down on time-wasting tasks and let the computers do what they’re supposed to. He shares how he got involved in the RPA industry, his work with Robot Framework and RPA framework, how to build and distribute bots, and how to decide if a task is worth automating. If you’re sick of spending your time on mind-numbing copy and paste then give this episode a listen and then let the robots do the work for you.

Do you want to try out some of the tools and applications that you heard about on Podcast.__init__? Do you have a side project that you want to share with the world? With Linode’s managed Kubernetes platform it’s now even easier to get started with the latest in cloud technologies. With the combined power of the leading container orchestrator and the speed and reliability of Linode’s object storage, node balancers, block storage, and dedicated CPU or GPU instances, you’ve got everything you need to scale up. Go to pythonpodcast.com/linode today and get a $100 credit to launch a new cluster, run a server, upload some data, or… And don’t forget to thank them for being a long time supporter of Podcast.__init__!


Sourcery LogoLow quality code can slow you down just as much as actual bugs in your code. Overly complex and hard to understand code is one of the leading causes of delays in projects and one of the biggest frustrations for developers. But it doesn’t have to be. Sourcery is helping to make code quality issues a thing of the past. Get real time feedback on where you need to make changes to your code and get instant suggestions on how you can refactor it to make it better. Start writing better code, faster, with Sourcery.

Best of all. Podcast listeners will get 6 months of free access to Sourcery Pro when you sign up with promo code INIT. 


Census LogoCensus is the operational analytics platform that syncs your cloud warehouse with all the SaaS applications used by your Sales, Marketing & Success teams. If you need to get your company data into Salesforce, Marketo, Hubspot, Intercom, Zendesk, and other tools, Census is the easiest way to do so. Just write SQL (or plug in your dbt models), set up the sync frequencies, and voila, your data is now available to be used by all of your teams.  No need to worry about incremental sync, backfilling, API quota management, API versioning, monitoring, and maintaining custom scripts. Just SQL. Start your free 14-day trial now.



Announcements

  • Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great.
  • When you’re ready to launch your next app or want to try a project you hear about on the show, you’ll need somewhere to deploy it, so take a look at our friends over at Linode. With the launch of their managed Kubernetes platform it’s easy to get started with the next generation of deployment and scaling, powered by the battle tested Linode platform, including simple pricing, node balancers, 40Gbit networking, dedicated CPU and GPU instances, and worldwide data centers. Go to pythonpodcast.com/linode and get a $100 credit to try out a Kubernetes cluster of your own. And don’t forget to thank them for their continued support of this show!
  • We’ve all been asked to help with an ad-hoc request for data by the sales and marketing team. Then it becomes a critical report that they need updated every week or every day. Then what do you do? Send a CSV via email? Write some Python scripts to automate it? But what about incremental sync, API quotas, error handling, and all of the other details that eat up your time? Today, there is a better way. With Census, just write SQL or plug in your dbt models and start syncing your cloud warehouse to SaaS applications like Salesforce, Marketo, Hubspot, and many more. Go to pythonpodcast.com/census today to get a free 14-day trial.
  • Software is read more than it is written, so complex and poorly organized logic slows down everyone who has to work with it. Sourcery makes those problems a thing of the past, giving you automatic refactoring recommendations in your IDE or text editor while you write (I even have it working in Emacs). It isn’t just another linting tool that nags you about issues. It’s like pair programming with a senior engineer, finding and applying structural improvements to your functions so that you can write cleaner code faster. Best of all, listeners of Podcast.__init__ get 6 months of their Pro tier for free if you go to pythonpodcast.com/sourcery today and use the promo code INIT when you sign up.
  • Your host as usual is Tobias Macey and today I’m interviewing Antti Karjalainen about the RPA Framework for automating your daily tasks and his work at Robocorp to manage your robots in production

Interview

  • Introductions
  • How did you get introduced to Python?
  • Can you start by giving an overview of what Robotic Process Automation is?
  • What are some of the ways that RPA might be used?
    • What are the advantages over writing a custom library or script in Python to automate a given task?
    • How does the functionality of RPA compare to automation services like Zapier, IFTTT, etc.?
  • What are you building at Robocorp and what was your motivation for starting the business?
    • Who is your target customer and how does that inform the products that you are building?
  • Can you give an overview of the state of the ecosystem for RPA tools and products and how Robocorp and RPA framework fit within it?
    • How does the RPA Framework relate to Robot Framework?
  • What are some of the challenges that developers and end users often run into when trying to build, use, or implement an RPA system?
  • How is the RPA framework itself implemented?
    • How has the design of the project evolved since you first began working on it?
  • Can you talk through an example workflow for building a robot?
  • Once you have built a robot, what are some of the considerations for local execution or deploying it to a production environment?
  • How can you chain together multiple robots?
  • What is involved in extending the set of operations available in the framework?
  • What are the available integration points for plugging a robot written with RPA Framework into another Python project?
  • What are the dividing lines between RPA Framework and Robocorp?
    • How are you handling the governance of the open source project?
  • What are some of the most interesting, innovative, or unexpected ways that you have seen RPA Framework and the Robocorp platform used?
  • What are the most interesting, unexpected, or challenging lessons that you have learned while building and growing RPA Framework and the Robocorp business?
  • When is RPA and RPA Framework the wrong choice for automation?
  • What do you have planned for the future of the framework and business?

Keep In Touch

Picks

Closing Announcements

  • Thank you for listening! Don’t forget to check out our other show, the Data Engineering Podcast for the latest on modern data management.
  • Visit the site to subscribe to the show, sign up for the mailing list, and read the show notes.
  • If you’ve learned something or tried out a project from the show then tell us about it! Email hosts@podcastinit.com) with your story.
  • To help other people find the show please leave a review on iTunes and tell your friends and co-workers
  • Join the community in the new Zulip chat workspace at pythonpodcast.com/chat

Links

The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Liked it? Take a second to support Podcast.__init__ on Patreon!