YouTube

Got a YouTube account?

New: enable viewer-created translations and captions on your YouTube channel!

English subtitles

← How anyone can use computer science principles to solve everyday problems | Rameez Virji | TEDxYYC

Get Embed Code
13 Languages

Showing Revision 4 created 09/04/2018 by Peter van de Ven.

  1. Today, I'm going to show you how anyone -

  2. and yes, I mean anyone -
  3. can use computer science
    to solve everyday problems
  4. and how I used it
    to solve a problem in medicine.
  5. My story begins with my late grandfather.
  6. Anyone who knew him knew that he was
    a very happy and very jolly man,
  7. always ready to go out and try something.
  8. Despite his excitement about most people
    and most things, however,
  9. he was terrified of needles.
  10. Even though he was very particular
    about his health,
  11. his enetophobia, or fear of needles,
  12. made him refuse
    to get regular vaccinations.
  13. Now, my grandfather
    is hardly alone in this regard.
  14. Many people, young and old,
  15. (Laughter)
  16. are terrified of needles.
  17. You guys know what I'm talking about.
  18. (Laughter)
  19. Clearly, this is a problem
    that needed to be solved,
  20. and that's exactly what I was thinking
  21. when I was challenged to design something
    for Canada's aging population
  22. at a summer program
    I attended when I was 17.
  23. The world needed something
    better than a hypodermic needle
  24. to deliver medicine.
  25. The problem was that I didn't know
    how to develop medicine.
  26. My background and passion
    lay in computers.
  27. But what if there was a way
  28. that I could use computer science
    to solve this problem?
  29. Now, using computer science
    to solve a medical problem
  30. might seem far-fetched at first,
  31. but computer science
    is actually a great way
  32. to approach a problem
    that may seem difficult to solve.
  33. So, what exactly is computer science?
  34. Well, computer science
  35. is the study of automatic,
    algorithmic processes that scale.
  36. Now, that might sound like
    something out of a science fiction novel,
  37. but it's really quite simple.
  38. Computer scientists study
    how to manipulate large amounts of data
  39. effectively and efficiently
    through algorithms,
  40. or more simply, through patterns
    of instructions on that data.
  41. So, how can we use this field
  42. to solve problems
    outside of the field of computing?
  43. Well, one of the best,
    biggest advantages of computer science
  44. is the problem-solving paradigm
    that it teaches.
  45. Computer scientists are taught
  46. how to look at complicated problems
    in a less complicated light.
  47. One of the strategies that I used
  48. in trying to solve this problem
    of vaccinating people who hate needles
  49. was to boil the problem down into its base
    variables and ignore all irrelevant data.
  50. In computer science,
    this is called determining scope.
  51. If something is out of scope,
  52. then it often adds unnecessary confusion
    and irrelevant data to the problem,
  53. making it harder to understand
    how the problem can actually be solved.
  54. So, what were the specific factors
  55. that were stopping us
    from using something other than a needle?
  56. I noticed that a lot of the people
    that approached this problem
  57. tended to get really bogged down
  58. in trying to solve every, every question
    to do with vaccinations,
  59. rather than the specific question of,
    "How can we deliver this medicine better?"
  60. And that would be
    like trying to study for an exam
  61. by rereading the entire textbook
  62. instead of just your highlighted
    and summarized notes.
  63. So, by considering factors
    that were relevant to the problem,
  64. I was able to understand the problem
    in a much simpler light.
  65. Another strategy which I used
    was the concept of "use cases."
  66. In computer science, use cases
    are used to consider the problem
  67. from the perspective of different people
    who will be benefiting from the solution.
  68. So, for example, in my case,
    I considered the case of my grandfather,
  69. who was terrified of needles and needed
    an alternate solution for immunization.
  70. However, I also considered the case
    of people in developing countries,
  71. who might not be so much
    in need of a comfortable solution
  72. as they are a solution
    that is convenient and cost-effective
  73. and easy to transport and deliver.
  74. Alternatively, I considered
    the case of people with diabetes,
  75. who have to use needles
    every day, with every meal,
  76. who might be in need
    of a more convenient method.
  77. So by identifying
    the factors that matter the most
  78. to the people that face the problem,
  79. you can come up with
    a more tailored solution
  80. and perhaps even understand issues
  81. that you may not have
    considered initially.
  82. One more strategy I used was
    to boil the problem down into two parts:
  83. the physical perspective
    and the logical one.
  84. Some parts of a problem might be unlimited
    in how you can tackle them,
  85. and some may have
    some physical limitations.
  86. For example, in my case, developing
    an oral vaccine delivery technique
  87. would have to be something
    that a human can swallow,
  88. so that's a physical limitation.
  89. But how this system is to deliver
    the payload to the bloodstream
  90. is something that is more susceptible
    to creativity and imagination.
  91. So by identifying which parts
    of the problem are limiting
  92. and which are limitless,
  93. I was able to understand
  94. which parts of the problem
    were more flexible and able to be changed.
  95. And in computer science,
  96. this is similar to a concept
    called functional abstraction,
  97. and it's a great way to understand
    which limitations are actual limits
  98. and which might be more self-imposed.
  99. So, by determining
    the scope of the problem,
  100. or by understanding the factors that
    were actually relevant to the problem,
  101. I was able to understand what the problem
    I was solving actually was.
  102. By considering different use cases,
  103. I was able to understand that, not only
    would my solution have to be convenient,
  104. but it would also
    have to be cost-effective
  105. and easy to transport and deliver.
  106. And by abstracting the problem
    into logical and physical factors,
  107. I was able to focus my creativity
    onto the parts of the problem
  108. that were more susceptible
    to out-of-the-box thinking.
  109. So, by using these
    computer science principles
  110. on this non-technological problem,
  111. I was able to come up with a pill
    for vaccines and other medicines
  112. which was safer, cheaper,
    easier to transport and deliver,
  113. and much less scary
    than a hypodermic needle.
  114. I believe that this model can be used
    to solve problems big and small.
  115. Like, wouldn't it be great if,
    using computer science,
  116. we could solve problems in medicine,
  117. in arts, in business,
    or even just at home?
  118. If we are all courageous enough
    to use these computer science principles
  119. to tackle our everyday challenges,
  120. we can solve problems faster
    and reach ahead to a better future.
  121. Thank you.
  122. (Applause)