# Recommended Resources [AI Learning Resources](https://hashnode.codecypher.ai/ai-learning-resources-4b61d8510bcf) [Software Engineering Body of Knowledge (SWEBOK)](https://www.computer.org/education/bodies-of-knowledge/software-engineering) [Directory of Open Access Journals](https://doaj.org) ## Prerequisites ### Mathematics K. Rosen, Discrete Mathematics and Its Applications, 8th ed., McGraw Hill, ISBN: 978-1-259-67651-2, 2019. J. Fanchi, Math Refresher for Scientists and Engineers, 3rd ed., Wiley, ISBN: 0-471-75715-2, 2006. M. P. Deisenroth, A. A. Faisal, and C. S. Ong, Mathematics for Machine Learning, Cambridge, UK: Cambridge University Press, ISBN: 978-1-108-47004-9, 2020. D. Zwillinger, CRC Standard Mathematical Tables and Formulas, 33rd ed., CRC Press, ISBN: 978-1-4987-7780-3, 2018. R. V. Hogg, J. W. McKean, and A. T. Craig, Introduction to Mathematical Statistics, Pearson, ISBN 0134686993, 2019. D. P. Bertsekas and J. N. Tsitduklis, Introduction to Probability, 2nd ed., Athena Scientific, ISBN: 978-1-886529-23-6, 2008. ### Computer Science C. Hamacher, Z. Vranesic, S. Zaky, and N. Manjikian, Computer Organization and Embedded Systems, 6th ed., McGraw Hill, ISBN: 978–0–07–338065–0, 2012. M. T. Goodrich, R. Tamassia, and M. H. Goldwasser, Data Structures and Algorithms in Java, 6th ed., Wiley, ​ISBN: 978-1118771334, 2014. A. S. Tanenbaum and D. J. Wetherall, Computer Networks, 5th ed., Pearson, ISBN: 0-13-212695-8, 2011. R. H. Arpaci-Dusseau and A. C. Arpaci-Dusseau, Operating Systems: Three Easy Pieces, 2018, v. 1.01, Available online: https://pages.cs.wisc.edu/~remzi/OSTEP/ J. Zobel, Writing in Computer Science, London: Springer, ISBN: 978–1–4471–6638–2, 2014. ### Software Engineering S. McConnell, Code Complete, 2nd ed., Microsoft Press, ISBN: 0-7356-1967-0, 2004. M. Howard and D. LeBlanc, Writing Secure Code, 2nd ed., Microsoft Press Press, ISBN: 0735617228, 2003. E. Gamma, R. Helm, R. Johnson, and J. Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software, 1st ed., Addison-Wesley Professionalw, ISBN-10: 0201633612, 1994. ## Quickstart Resources [Data Science Cheatsheet](https://github.com/aaronwangy/Data-Science-Cheatsheet) [Cheatsheets](https://github.com/Neklaustares-tPtwP/Resources/tree/main/Cheat%20Sheets) [Introduction to APIs in Python](https://towardsdatascience.com/quick-fire-guide-to-apis-in-python-891dd98c8877?source=rss----7f60cf5620c9---4) [Mathematics for Machine Learning](https://mml-book.github.io/) ## O'Reilly Books Online If you have an .edu email account you can get free access to [oreilly.com](https://www.oreilly.com/) which has many good books on a variety of AI/ML topics for beginner to expert. The following books on advanced topics can be found on O'Reilly online: - Practical Convolutional Neural Networks - Neural Network Projects with Python - Generative Adversarial Networks Projects ## Recommended Books on AI A. Géron, Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow, 2nd ed., O'Reilly, ISBN: 9781492032649, 2019. A. Artasanchez and P. Joshi, Artificial Intelligence with Python, 2nd ed. Birmingham, U.K.: Packt Pub. Ltd., 2020. D. Rothman, Artificial Intelligence by Example, 2nd ed. Birmingham, U.K.: Packt Pub. Ltd., 2020. S. Raschka and V. Mirjalili, Python Machine Learning, 3rd ed., Birmingham, U.K.: Packt Pub. Ltd., 2019. Y. Liu, Python Machine Learning by Example, 3rd ed., Birmingham, U.K.: Packt Pub. Ltd., 2020. ## Recommended Books on Software Engineering Every software engineer and manager needs to read the following: T. Demarco, _Peopleware: Productive Projects and Teams_, 2nd ed., Dorset House, 1999. F. Brooks, _The Mythical Man-Month_, Anniversary Edition, Addison-Wesley Professional, 1995. R. L. Glass, _Facts and Fallacies of Software Engineering_, Addison-Wesley Professional, 1st ed., ISBN: 0321117425, 2002. The following are helpful to software engineers: B. W. Kernighan, _The Practice of Programming_. J. Bentley, _Programming Pearls_. ## PyTorch Books A. R. Jha, Mastering PyTorch, Birmingham, U.K.: Packt Pub. Ltd., 2021. J. Matthew, PyTorch Artificial Intelligence Fundamentals, Birmingham, U.K.: Packt Pub. Ltd., 2020. - Deep Learning with PyTorch - PyTorch Computer Vision Cookbook ## AI Textbooks E. Alpaydin, Introduction to Machine Learning, 4th ed., MIT Press, ISBN: 9780262358064, 2020. S. Russell and P. Norvig, Artificial Intelligence: A Modern Approach, 4th ed. Upper Saddle River, NJ: Prentice Hall, ISBN: 0-13-461099-7, 2021. W. McKinney, Python for Data Analysis: Data Wrangling with Pandas, NumPy, and IPython, 2nd ed., O’Reilly Media, ISBN: 978-1-491-95766-0, 2017. S. Raschka. and V. Mirjalili, Python Machine Learning, 2nd ed. Packt, ISBN: 9781787125933, 2017. S. Bird, E. Klein, and E. Loper. Natural Language Processing with Python – Analyzing Text with the Natural Language Toolkit. Available online: https://www.nltk.org/book/ D. Jurafsky and J. H. Martin, 2nd edition. Speech and Language Processing. Prentice Hall, ISBN: 978-0131873216, 2008. Available online: https://web.stanford.edu/~jurafsky/slp3/. B. Siciliano, L. Sciavicco, L. Villani, and G. Oriolo, Robotics: Modeling, Planning and Control, London: Springer, ISBN: 978-1-84628-641-4, 2010. ## Software Engineering Ethics There seems to be a general problem with ethics in computer science in general but specifically in software engineering. A majority of researchers have admitted to manipulating data, and I worked with a professor who manipulated results for some NIH grants. I come across ethics problems a lot as a software engineer (and you will too) even when working on government projects, so I end up looking for another job. Read the preface in "The Clean Coder" about the NASA shuttle disaster. Also think about the SpaceX shuttles that have blown up - there could have been people on board. SpaceX is a train wreck that needs to be put out of business. There are a lot of similarities in autonomous vehicles. In fact, there are now quite a few car companies dropping their AV projects which is probably for the best. R. Martin, _The Clean Coder: A Code of Conduct for Professional Programmers_, Pearson, 1st ed., ISBN: 0137081073, 2011. R. McGinn, _The Ethical Engineer: Contemporary Concepts and Cases_, Princeton University Press, ISBN: 0691177708, 2018. B. Franks, _97 Things About Ethics Everyone in Data Science Should Know: Collective Wisdom from the Experts_, O'Reilly Media, 1st ed., ISBN: 1492072664, 2020. ## Code Repos aima-python: Python code for Artificial Intelligence: A Modern Approach. Accessed: June 14, 2020. [Online]. Available: https://github.com/aimacode/aima-python, 0.17.3. 2020. Python Machine Learning Code Repository, Accessed: 11/14/2021. [Online]. Available Online: https://github.com/rasbt/python-machine-learning-book-3rd-edition