David J. Malan

From Wikipedia, the free encyclopedia
  (Redirected from David Malan (computer scientist))
Jump to navigation Jump to search
David Malan
David J. Malan.png
Born David J. Malan
Residence Cambridge, Massachusetts
Alma mater
Known for CS50
Scientific career
Thesis Rapid detection of botnets through collaborative networks of peers (2007)
Doctoral advisor Michael D. Smith
Influences Brian Kernighan
Website cs.harvard.edu/malan

David J. Malan (/mlɛn/) is Gordon McKay Professor of the Practice of Computer Science at Harvard University.[1][2] Malan is best known for teaching Computer Science 50 (known as CS50)[3][4][5][6] which is the largest course at both Harvard and Yale University and the largest Massive Open Online Course (MOOC) at edX with lectures being viewed by over a million people on the edX platform up to 2017.[7][8]

Malan is a member of faculty in the Harvard John A. Paulson School of Engineering and Applied Sciences where his research interests include cybersecurity,[9][10] digital forensics, botnets,[11] computer science education, distance learning, collaborative learning, and computer-assisted instruction.[12][13] Malan is also an active member of the SIGCSE community,[14][4][15] a Special Interest Group (SIG) concerned with Computer Science Education (CSE) organised by the Association for Computing Machinery (ACM).


Malan enrolled at Harvard College initially studying government and taking CS50 in the fall of 1996 which was taught at that time by Brian Kernighan. Inspired by Kernighan, Malan began his education in computer science[2] graduating with a Bachelor of Science degree in Computer Science in 1999. After a period working outside of academia, he returned for postgraduate study to complete a Master of Science degree in 2004 followed by a PhD in 2007 for research into cybersecurity and computer forensics supervised by Michael D. Smith.[11]


Malan is known for teaching CS50,[3] an introductory course in Computer Science for majors and non-majors that aims to develop computational thinking skills, using tools like Scratch,[14][16] C,[17][18] Python,[19] SQL[20] and JavaScript.[21] As of 2016 the course has 800 freshman and sophomore students enrolled at Harvard College each year, making it the largest course there. CS50 is available on edX as CS50x[8] and with over a million views of lectures.[22][8] All of his courses are freely available and licensed for re-use with attribution using OpenCourseWare,[1] for example at cs50.tv.[23] CS50 also exists as CS50 AP (Advanced Placement), an adaptation for high schools that satisfies the AP Computer Science Principles of the College Board.

Besides CS50, Malan also teaches at Harvard Extension School and Harvard Summer School.[24] Prior to teaching at Harvard, Malan taught mathematics and computer science at Franklin High School and Tufts University.[25]

Career and research[edit]

Malan worked for Mindset Media, LLC during 2008 – 2011 as Chief Information Officer (CIO), where he was responsible for advertising network’s scalability, security, and capacity-planning. Designed infrastructure for collection of massive datasets capable of 500 million HTTP requests per day with peaks of 10K per second. In 2011 [26] Mindset Media was acquired by Meebo, Inc. During 2001 to 2002 he worked for AirClic as an Engineering Manager.[25]

Malan is also Founder and Chairman of Diskaster, a data recovery firm that offered professional recovery of data from hard drives and memory cards as well as forensic investigations for civil matters.[24]

During his undergraduate study, Malan worked part-time for the District Attorney's Office in Middlesex County, Virginia as a forensic investigator, after which he founded his own two startups.[24] On the side since 2003, he volunteered as an emergency medical technician (EMT-B) for MIT-Emergency Medical Services (EMS). He continues to volunteer as an EMT-B for the American Red Cross.[25]


  1. ^ a b c Malan, David (2017). "David J. Malan short biography". cs.harvard.edu. Archived from the original on 2017-02-26. 
  2. ^ a b Mendez, Cordelia F. (2014). "This is CS50". thecrimson.com. The Harvard Crimson. Archived from the original on 2017-03-17. 
  3. ^ a b Malan, David (2017). "cs50.harvard.edu". Harvard University. 
  4. ^ a b Malan, David J. (2009). "Virtualizing office hours in CS 50". ACM SIGCSE Bulletin. 41 (3): 303. doi:10.1145/1595496.1562969. ISSN 0097-8418. 
  5. ^ Malan, David J. (2010). "Reinventing CS50". Proceedings of SIGCSE '10 Proceedings of the 41st ACM technical symposium on Computer science education: 152. doi:10.1145/1734263.1734316. ISBN 9781450300063. 
  6. ^ Garcia, Daniel D.; Barr, Valerie; Guzdial, Mark; Malan, David J. (2013). "Rediscovering the passion, beauty, joy, and awe". Proceedings of the 44th ACM technical symposium on Computer science education - SIGCSE '13. p. 379. doi:10.1145/2445196.2445308. ISBN 9781450318686. 
  7. ^ Fahs, Ramsey (2016). "CS50 Moves Away from Traditional Lectures, Toward Virtual Reality". thecrimson.com. Archived from the original on 2017-02-21. 
  8. ^ a b c Malan, David (2016). "CS50x: An introduction to the intellectual enterprises of computer science and the art of programming". edx.org. 
  9. ^ Lorincz, K.; Malan, D.J.; Fulford-Jones, T.R.F.; Nawoj, A.; Clavel, A.; Shnayder, V.; Mainland, G.; Welsh, M.; Moulton, S. (2004). "Sensor Networks for Emergency Response: Challenges and Opportunities". IEEE Pervasive Computing. 3 (4): 16–23. doi:10.1109/MPRV.2004.18. ISSN 1536-1268. 
  10. ^ Malan, D.J.; Welsh, M.; Smith, M.D. (2004). "A public-key infrastructure for key distribution in TinyOS based on elliptic curve cryptography". 2004 First Annual IEEE Communications Society Conference on Sensor and Ad Hoc Communications and Networks, 2004. IEEE SECON 2004. pp. 71–80. doi:10.1109/SAHCN.2004.1381904. ISBN 0-7803-8796-1. 
  11. ^ a b Malan, David J. (2007). Rapid detection of botnets through collaborative networks of peers (PDF). cs.harvard.edu (PhD thesis). Harvard University. ISBN 9780549042921. OCLC 232370471. Archived from the original (PDF) on 2016-08-17. 
  12. ^ David J. Malan author profile page at the ACM Digital Library
  13. ^ David J. Malan's publications indexed by the Scopus bibliographic database, a service provided by Elsevier. (subscription required)
  14. ^ a b Malan, David J.; Leitner, Henry H. (2007). "Scratch for budding computer scientists". Proceedings of the 38th SIGCSE technical symposium on Computer science education: 223. doi:10.1145/1227310.1227388. ISBN 1-59593-361-1. 
  15. ^ Malan, David J. (2013). "CS50 sandbox". SIGCSE '13 Proceedings of the 44th ACM technical symposium on Computer science education: 141. doi:10.1145/2445196.2445242. ISBN 9781450318686. 
  16. ^ Wolz, Ursula; Leitner, Henry H.; Malan, David J.; Maloney, John (2009). "Starting with scratch in CS 1". ACM SIGCSE Bulletin. 41 (1): 2. doi:10.1145/1539024.1508869. ISSN 0097-8418. 
  17. ^ CS50 2016 - Week 1 - C on YouTube
  18. ^ Anon (2015). "Why does CS50 at Harvard use C as its primary language?". quora.com. Quora. 
  19. ^ CS50 2016 - Week 8 - Python on YouTube
  20. ^ CS50 2016 - Week 9 - SQL on YouTube
  21. ^ CS50 2016 - Week 10 - JavaScript on YouTube
  22. ^ Jacobs, Peter (2014). "Here's Why More Than 800 Harvard Students Signed Up For A Notoriously Hard Computer Science Class". businessinsider.com. Business Insider. Archived from the original on 2016-03-30. 
  23. ^ "cs50.tv". Harvard University. 
  24. ^ a b c Anon (2009). "David J. Malan". harvardmagazine.com. Harvard Magazine. Archived from the original on 2016-06-27. 
  25. ^ a b c Malan, David (2016). "David J. Malan full CV" (PDF). cs.Harvard.edu. Harvard University. 
  26. ^ Warren, Christina."Meebo Acquires Ad Targeting Company Mindset Media", "Mashable", 08 February 2011. Retrieved on 17 May 2017.