Michael Shafae is a member of the faculty at California State University, Fullerton. At the moment, he is an associate professor and the department chair in the Computer Science Department in the College of Engineering & Computer Science.
Pages related to the courses he teaches at CSUF are located at elsewhere. And the page related to the instructional resources he provides are over there. He also operates an unofficial Wiki for his department. His office hours are posted. (Please note that he uses self-signed certificates; if you trust him, please consider adding his certificate authority to your key chain.)
Receiving a card or a postcard in the mail always makes his day. If you wish to express thanks in something more tangible than a postcard but less liquid than cash, please refer to his Amazon.com wish list. Or just make him a mix tape.
He does not always refer to himself in the third person. But when he does, he drinks Dos Equis.
Students may find setting up a software development environment foreign and unnecessarily complicated. As a public service, a virtual machine (VM) image has been posted which includes all the required tools, libraries, header files, etc. for creating, debugging and submitting your homework assignments.
The requirements are the following:
Your processor needs to support the VT-x/AMD-V extension. If your processor supports these instructions yet does not allow you to boot the VM, then the instructions may be disabled from your computer's BIOS. Check the settings of your BIOS and, if needed, update your system's BIOS to enable the instructions.
Import the '.ova' file into VirtualBox to create a new VM.
To log in, use the username 'me' and the password 'me123'.
The VM images include GCC, CLANG/LLVM, Python2, Python3, Common Lisp, Java, NASM, SQLite3, subversion, git, graphviz, virtualenv, pip, FreeImage, FREEGLUT, GLFW3, GLEW, and Google's cloud services APIs.
MD5 (CSUF_Ubuntu_Mate_16_04_01_amd64_20170122.ova) = aff125af9f5e4f1ef5569e57312ed6ed
MD5 (CSUF_Ubuntu_Mate_16_04_01_i386_20170122.ova) = 5748677cfaafaa8ac025bbe67e1958d1
If you do not want to use the VM posted on this page but would like to install the neccessary software to get your homework done, then there are a few scripts that you can use that will install packages that would typically satisfy your development needs for the topic given below. Be aware that the scripts target a Debian-style *nix system such as Debian and Ubuntu.
After downloading the script to your Debian-style *nix system, execute the script using sudo. For example sudo sh ./ubuntu_graphicsdev.
The Titan OpenGL Kit includes FreeImage, GLEW, GLFW3, GLI, GLM, Google Test, and the Red Book examples. It is meant for students who are capable of modifying their development environment to have projects link against third-party libraries. Students who are not comfortable using a binary library are strongly urged to use the instructor provided VM which includes these libraries.
Titan OpenGL Kit for OS X 11MB (20150123)
MD5 (TitanOpenGLKit_osx.zip) = 8a8a3b48498c0e5948c8c7a16d9f58d3
Titan OpenGL Kit for MS Windows 7.6MB (20150120)
MD5 (TitanOpenGLKit_win.zip) = 49cb91e3dd8cc612ed8a5ceba67b1b20
Send him an email. Write him a letter.
He loves postcards.
Not the office: +1-310-526-3842
Department of Computer Science (CS-522)
P.O. Box 6870
Fullerton, CA 92834