It's 2016 - And we need to start coding

37fbf83b7d45711e41e774e29fed710e?s=47 Arnav Gupta
October 06, 2016

It's 2016 - And we need to start coding

A presentation for school students, describing why they should start coding.

37fbf83b7d45711e41e774e29fed710e?s=128

Arnav Gupta

October 06, 2016
Tweet

Transcript

  1. 1.

    It’s 2016, and you have to code CODING IS THE

    MOST ESSENTIAL SKILL OF 21ST CENTURY
  2. 2.

    Tracing our history q10000 BC : Hunting, Gathering, Stones q5000

    BC : Metal Weapons q2000 BC : Wheels, containers q0 : Tools to cut and sort food, resources q1000 AD : Mechanical machines to control tools q1500 AD : Gears, levers, trolleys
  3. 3.

    Our path to 2016 q1700 : Steam engine q1800 :

    Factories, industrial revolution q1900 : Electrical engines control mechanical engines q1950 : Electronic control of electrical engines q1980 : Computers take us to Moon q2000 : Computers help you chat, mail, watch football live q2016 : Talk to Siri, order home food, schedule laundry pickup
  4. 6.

    Accountant oWrite MS Excel formulae for his/her spreadsheets oAnalyse earning/expenditure

    patterns oCode automatic fund transfers based on certain rules
  5. 8.

    What does code make possible ? SOME USEFUL TASKS, SOME

    FUN ACTIVITIES AND SOME ESSENTIAL CHORES
  6. 9.

    Transportation 2000 Call a cab Explain your location Bargain about

    fare 2016 Book cab on app Send location using GPS Auto fare based on distance and time
  7. 10.

    Shopping 2000 Go to shop, window shop for hours Buy

    whatever is available No price comparison Carry it home ATM > Cash > Pay > Bill 2016 Search your product on internet Unimaginable variety Easy price comparison Home delivery Online payment
  8. 11.

    Communication 1980 Letters, F2F Speed = x km/hr 2016 Calls,

    SMS, Social Media, Video Conf Speed = What ? ? ?
  9. 12.

    Making a birthday wish 2000 Remember the birthday Make a

    call Say thanks to every caller 2016 Automatically send birthday message to birthday boys/girls Automatically say “Thanks” to all wishers
  10. 13.

    . . . and the list goes on §3D Printers

    §Self Driving Cars §Bots on mobiles that can book tickets, order food §Augmented Reality – Pokémon GO
  11. 14.

    How we can change the world with code ? BREAKING

    DOWN THE PROCESS OF PROBLEM SOLVING WITH CODE
  12. 15.

    Problem Statement ØI want to go from Janakpuri to Shalimar

    Bagh ØThere are cabs available ØI don’t know cab driver ØCab driver doesn’t know me ØCab doesn’t know my location The situation at hand
  13. 16.

    Resources ØI have a mobile phone ØCab driver has a

    mobile phone ØBoth mobiles have internet ØBoth mobiles have GPS What we have that we can solve the problem with
  14. 17.

    The solution ØGive an app to the cab driver and

    me to use ØMake GPS location of all cabs available on internet through cab driver’s mobile ØWhen I open app, I see all cab locations ØLet user call cab via app ØWhen called, cab driver gets directions to user’s GPS location ØUser enter’s destination, cab driver gets directions to destination How to use the resources to solve the problem
  15. 18.

    The solution ØCalculate distance travelled, time taken ØCalculate fare ØSend

    bill on my phone ØAllow me to pay, transfer money from my bank account to cab driver’s bank account How to use the resources to solve the problem
  16. 19.

    The Algorithm ØFrom GPS signal, calculate latitude, longitude ØUse geometry

    to calculate shortest path ØFrom distance and time calculate – fare = (distance x rate) + (time x penalty) ØFind account numbers. Subtract fare from user’s account. Add fare to cabbie’s account ØIt’s all maths. (Except me travelling – which is physics) Break down a problem to mathematics, and you can solve it
  17. 20.

    What are coding, programming and development ? CODING IS A

    PART OF PROGRAMMING. PROGRAMMING IS A PART OF DEVELOPMENT
  18. 21.

    CODING •Converting problem statements into mathematics •Writing mathematical solutions of

    the problem •Represent mathematical solution as symbols that computer understands
  19. 22.

    PROGRAMMING •Solve multiple simpler problems to solve larger problems •Target

    real world complex problems •Arrange solutions in proper sequence to follow solution procedure
  20. 23.

    DEVELOPENT •Package the program in to a consumable form (website/app)

    •Make the software easy to understand and use •Distribute it to the users whose problem it is solving
  21. 24.

    Putting it all together SOME EXAMPLE APPS AND WEBSITES, BUILT

    IN LESS THAN A DAY, TO SOLVE SOME REAL PROBLEMS
  22. 26.