Upgrade to Pro — share decks privately, control downloads, hide ads and more …

DevOpsPorto Meetup19: Python as a tool for experimenting by Leonid Kholkine

DevOpsPorto Meetup19: Python as a tool for experimenting by Leonid Kholkine

Talk delivered by Leonid Kholkine

DevOpsPorto

August 01, 2018
Tweet

More Decks by DevOpsPorto

Other Decks in Technology

Transcript

  1. >> from idea import reality
    Leon
    Head of Engineering @ Tonic App

    View Slide

  2. Who am I?
    >> Believe that we are still at 0.01% potential of technology
    >> A lazy type of engineer
    >> Love photography
    >> Ran a marathon
    >> I code stuff @ tonic app

    View Slide

  3. What are we talking about today?
    1. “I have an idea for a product, what do I do?”
    2. “Cool! But I don’t think that exact idea works :(“
    3. “OMG! That’s the one! What’s next?“

    View Slide

  4. “Tonic App aggregates your most useful
    medical tools and has a secure case
    discussion platform. “

    View Slide

  5. ” You know what could be great? It’s that if I could
    have all the medical calculators in a mobile app!

    - A Medical Doctor

    View Slide

  6. 1. “I have an idea for a product, what do I do?”

    View Slide

  7. >> MVP

    View Slide

  8. MV - Whut?!
    Minimum Viable Product
    “Version of a new product which allows a team to collect the maximum amount
    of validated learning about customers with the least effort” -- Lean Startup

    View Slide

  9. View Slide

  10. ” You know what could be great? It’s that if I could
    have all the medical calculators in a mobile app!

    - A Medical Doctor

    View Slide

  11. MV - Whut?!
    >> Three simple calculators
    >> Simplest mobile design we could think
    >> Log user actions

    View Slide

  12. MV - Whut?!
    >> Three simple calculators
    >> Simplest mobile design we could think
    >> Log user actions
    … One week & engineer later ...

    View Slide

  13. View Slide

  14. Lesson Learned
    >> Due to the nature of python, you can write code faster;

    View Slide

  15. public class Employee
    {
    private String myEmployeeName;
    private int myTaxDeductions = 1;
    private String myMaritalStatus = "single";
    //--------- constructor #1 -------------
    public Employee(String EmployeName)
    {
    this(employeeName, 1);
    }
    //--------- constructor #2 -------------
    public Employee(String EmployeName, int taxDeductions)
    {
    this(employeeName, taxDeductions, "single");
    }
    //--------- constructor #3 -------------
    public Employee(String EmployeName,
    int taxDeductions,
    String maritalStatus)
    {
    this.employeeName = employeeName;
    this.taxDeductions = taxDeductions;
    this.maritalStatus = maritalStatus;
    }
    ...
    class Employee():
    def __init__(self,
    employeeName
    , taxDeductions=1
    , maritalStatus="single"
    ):
    self.employeeName = employeeName
    self.taxDeductions = taxDeductions
    self.maritalStatus = maritalStatus
    ...

    View Slide

  16. Lesson Learned
    >> Due to the nature of python, you can write code faster;
    >> The learning curve is not that big for someone with software engineering
    experience;

    View Slide

  17. 2. “Cool! But I don’t think that exact idea works :(”

    View Slide

  18. View Slide

  19. “Python is the swiss army knife of
    programming languages”

    View Slide

  20. 3. “OMG! That’s one! What’s next?”

    View Slide

  21. What’s next?
    >> Develop further your idea!
    >> Hire software engineers
    >> Ramp-up the engineers into your project

    View Slide

  22. What’s next?
    >> Develop further your idea!
    >> Hire software engineers
    >> Ramp-up the engineers into your project
    >> Python is easy to learn (bigger pool of talent)
    >> Python is easy to read (faster ramp-up)

    View Slide

  23. Medical Calculators @ Tonic App
    >> Calculator engine
    >> Analytics
    >> Tests
    >> Indexed
    >> And many more feature to come

    View Slide

  24. "Python where we can, C++ where we must"

    View Slide

  25. "Python where we can, C++ where we must"
    @ Google

    View Slide

  26. Leonid Kholkine
    >> @leonidkho
    >> linkedin.com/in/kholkine
    >> [email protected]
    >> http://www.tonicapp.com/jobs

    View Slide