Assignment 1:-

:: Time Management Lecture by Randy Pausch ::

Who is Randy Pausch?

  • Randy Pausch was an american professor of Computer Science at Carnegi Mellon University in pittsburg.


  • Pausch was born in Baltimore, Maryland.
  • Pausch received his bachelor's degree in computer science from Brown University and his Ph.D. in computer science from Carnegie Mellon University.
  • Pausch was diagnosed with pancreatic cancer on September 19, 2006. He was told in August 2007 to expect a three to six months of good health.
  • Randy Pausch died from pancreatic cancer at his family's home in Chesapeake, Virginia, on July 25, 2008, at the age of 47


  • November, 2009 was declared to be "Dr.Randy Pausch" day.
  • A bridge at CMU that connects the Computer Science building and Purnell Center of Arts is named after Pausch, symbolising the way he linked the two disciplines.

What he was known for?

  • Pausch is the founder of the Alice software project.
  • He is also the co-founder of CMU's Entertainment Technology Center.
  • He wrote a book called "The Last Lecture" which then became a NewYorkTimes best seller.His book was translated to 46 languages.

5 Points that I liked in his talk:-

  • Doing the right things is much important than doing things right.
  • Good judgement comes from experience and experience comes from bad judgement.
  • If you don't let yourself dream it, you will never do it.
  • Failing to plan is planning to fail.
  • In order to change your plan you need to have one in the first place.
  • If you have bunch of things to do, do the ugliest one first.

Assignment 2:-

    1. What is a decision problem?

  • A decision problem is a situation where the decision maker has to face the problem of selecting one of at least two alternatives.
  • 2. What does it mean for a decision problem to be decidable?

  • A decision problem is decidable when it can be solved by an algorithm that halts on all inputs in a finite number of steps. The associated language is called a decidable language.
  • 3. What is the class P? What is the class NP?

  • Class "P" is the complexity class of languages that can be accepted by a deterministic Turing machine in polynomial time."P" is also often taken to be the class of computational problems which are "efficiently solvable" or "tractable".
  • Class "NP" is the complexity class of decision problems for which answers can be checked by an algorithm whose run time is polynomial in the size of the input. Note that this doesn't require or imply that an answer can be found quickly, only that any claimed solution can be verified quickly.
  • 4. What is the intuitive meaning of the "P versus NP" question?

  • The "P versus NP" problem is a major unsolved problem in computer science. It asks whether every problem whose solution can be quickly verified can also be solved quickly.
  • 5. If you resolve the P versus NP question, how much richer will you be?

  • "US $1,000,000" prize for the first correct solution.

Assignment 3:-

    1. Who discovered the attack? How long has it been going on?

  • The campaign was discovered by researchers at Google and shut down by Apple after the company was notified. The campaign lasted more than two years
  • 2. Who orchestrated the attacks? How do we know?

  • Zack Whittaker of TechCrunch, who first reported the focus of the attack on the Uighur Muslim community in Xinjiang province, said "the websites were part of a state-backed attack - likely (by) China - designed to target the Uighur community".
  • 3. What did the attack allow the attackers to do to a victim's phone?

  • an attacker could read a victim's messages, passwords, and track their location in near-real time.
  • 4. On a technical level, what did the attack do? How did it do it?

  • by infecting an iPhone with malicious code simply by visiting a booby-trapped web page.
  • 5. Why were the security flaws not patched earlier?

     the researchers say they discovered 14 vulnerabilities across five different exploit chains, including one which was unpatched at the time the researchers discovered it .

Assignment 4:-

    1. Why and what is cloud computing?

  • cloud computing is storing and accessing data and programs over the Internet instead of the computer's hard drive. It has many benefits such as, flexibility, disaster recovery and automatic software updates.

    2. Is cloud computing a new technology? In other words, what is unique about cloud computing?

  • Cloud computing is far more abstract as a virtual hosting solution. Instead of being accessible via physical hardware, all servers, software and networks are hosted in the cloud.

    3. What are the three major cloud service models, and which service model would you use to run your simple python programs?

  • Software as a Service (SaaS)
  • Platform as a Service (PaaS), this is used to run programming languages files.
  • Infrastructure as a Service (IaaS)

    4. What is the economic/business model of cloud computing?

  • The selection for implementing the private, public, community or hybrid cloud solely depends on the customer's specification for applications they want to use, the performance they need and the security they want to take.
  • On-demand self-service access to infrastructure, platforms and applications, broad access through mobile phones, tablets, laptops and workstations and resource pooling and automation to combine resources into managed services.

Assignment 5:-

    1. What are programming languages for?

  • Some programming languages are used to create programs to solve problems or interpret data. Other programming languages are more suitable for making create software or apps that entertain.
  • 2. How do we translate solutions to computer programs? What are the limitations?

  • Translating an algorithm into a programming language is called coding the algorithm. The products of the translation-the code for all the algorithms in the problem-are tested by collecting them into a program and running (executing) the program on the computer.
  • 3. How many programming languages are there? What does this number tell you?

  • 256 programming languages. The computer science field is huge and has a great history.

Assignment 5:-

    1.Can you give both an operational and a philosophical definition of AI?

  • the ability of a digital computer or computer-controlled robot to perform tasks commonly associated with intelligent beings.
  • 2.Can you name at least three different techniques or sub-fields of AI?

  • Machine Learning
  • Natural Language Processing
  • Neural Networks
  • 3.AI has been around since about 70 years so far. Why is it booming right now?

  • The earlier resources that we had were not powerful enough to train machine learning models.
  • 4.Can you name at least three application sectors where robots are being largely employed? What are the reasons?

  • Computer Vision
  • Imitation Learning
  • Assistive and Medical Technologies
  • 5.Can you identify three potential challenges for a wheeled autonomous robot that would perform a 24h surveillance task in a large facility?

  • the usage of robots in the healthcare sector and their increasingly growing interaction with humans raises a series of new and challenging safety and security questions.