150 likes | 185 Views
CSE 340 Recitation Principles of Programming Languages. Me. Erik Trickel, feel free to call me Erik Computer Science, PhD Security Research, exploitation of Android devices Starting 2 nd Year Prior Experience 10 years working in IT industry Programming for over 20 years
E N D
Me • Erik Trickel, feel free to call me Erik • Computer Science, PhD • Security Research, exploitation of Android devices • Starting 2nd Year • Prior Experience • 10 years working in IT industry • Programming for over 20 years • Took CSE 340 with Dr. Doupe in Fall of 2015
Truths and Lies • Have two children, 6 and 3 years old • Graduated from law school magna cum laude • Was a sponsored wakeboarder • Played all the major US MMORPGS • Have lived in Arizona all of my life • Taught rock climbing at a 100ft high climbing gym
Truths and Lies • Played poker professionally for several years • Can do a handstand • Developed an Android application that has over 1,000,000 purchases • Compete on ASU’s hacking team, pwndevils • My wife is a vice president at American Express • My dog can understand or perform over 100 words/gestures/actions
Recitation Introduction • CSE 340 is one of the most difficult classes in the CS program at ASU • You will be required to program in C or C++ • Most students find the 3rd, 4th, and 5th programming assignments very difficult
Recitation Introduction • The purpose of the recitation is to help you succeed in CSE 340 • I am here to serve you • Ask questions either in recitation or by email • Come to my office hours • Recitations will be a mix of prepared content and your questions
Recitation Introduction • You can come to any of the recitations or just watch online • I will take a head count, but will not take attendance • My recitations might be different from Mohsen’s
Academic Integrity • Dr. Doupe is VERY SERIOUS about academic integrity! • He has issued 23 academic integrity policy violations • There is a ZERO tolerance policy in this class • A student caught violating the academic integrity policy • Will receive a zero on the assignment • Will have their grade in the course lowered by a letter • Will be reported to the Dean’s office
Course Info • Course Website • Adamdoupe.com • http://adamdoupe.com/teaching/classes/cse340-principles-of-programming-languages-f16/
Linux C/C++ IDE • Doing all your development on CentOS will save you so much extra work • Every year students try to do their development in Xcode, Visual Studio, or Notepad and then have a terrible time getting their code to run correctly in CentOS • https://www.jetbrains.com/clion/ • https://www.jetbrains.com/shop/eform/students • Search: jet brains student license
Linux Text Editors • VIM cheat sheet • http://vim.rtorr.com/ • Sublime Text 3 (GUI) • http://elearning.wsldp.com/pcmagazine/install-sublime-text-3-centos-7-linux/ • Emacs • http://www.rgrjr.com/emacs/emacs_cheat.html • http://www.jesshamrick.com/2012/09/10/absolute-beginners-guide-to-emacs/
Project 1 • http://adamdoupe.com/teaching/classes/cse340-principles-of-programming-languages-f16/project-1.html • Part 1 • Part 2 • Part 3
Project 1 • Part 2 • Virtual Box • CentOS 7 • Instructions to be posted on website • Common issues • Wifi not working from CentOS, try closing the VM down, going to Settings > Network > Check the "Cable Connected“ • For the error message, “Kernel requires…”, try enabling virtualization in your BIOS settings.
Project 1 • Part 3 • Output a percent • Outputs a file with all the code and the lines that were executed • Look for lines with #### • In GG, look for helpful post from Anders on creating a bash script for testing and gcovr