First-Year  Computer Science  Computer Science  The NAU ACM Club
What’s CS? Computer Science How a computer thinks How to tell a computer to solve your problem The math behind how a computer solves your problem Designing systems that help the computer and you
What can I do with a degree in Computer Science? Software Engineer Network Administrator Security Analyst Scientific Computing Researcher Web Developer Game Developer Haxxor
What classes am I going to need to take? http://peoplesoft.nau.edu
What classes am I going to need to take? CS126: Computer Science I CS136: Computer Science II CS249: Data Structures CS200: Computer Organization CS301: Ethics of CS CS315: Automata Theory CS386: Software Engineering CS396: Principles of Languages CS421: Algorithms CS480: Operating Systems CS486: Capstone
The NAU Computer Science Faculty
Abe Pralle Take advantage of his early points! Up to 20% Extra Credit! Turn in projects early! Abe rewards above and beyond effort with extra points - if you do something peculiar in addition to your project (Make a cool GUI, etc.) The Big “Game Guru”: Teaches Virtual Worlds, Game Production Wrote his own language dedicated to gaming: Slag  (Also teaches Compilers) Resident Vim Ninja: Will blow your mind with his vim ninjaness.
Dr. James Palmer Read the Textbook Chapter Pre-Lecture: Dr. P loves to talk about related stories that require prior knowledge Bring your questions about the chapter to class with you. Lectures to the most intelligent students without prompt - stop him with questions! Researching Ecoinformatics Visualization Techniques Loves Voronoi Diagrams! Resident emacs aficionado. ACM’s Daddy
Dr. Eck Doerry Dr. D loves to ask you randomly in class to define vocabulary from the lectures & textbook: Be sure you know these concepts.  Know your vocab! Take Good Notes in his Classes: He talks above and beyond the topics in the textbook. Plan to devote 15+ hours on Projects and Focus on Requirements. Check for user input errors: He will actively try to break your program.  Big Interfaces Guy: Seriously into GUIs & Functional Programming.  Head Honcho: Computer Science Chair
Dr. Dieter Otte Dr. Otte is BIG on Presentations! Be sure to purchase Powerpoint or Keynote before his class! Again on Presentations, make sure you know the chapter well enough to present on it. *Read the Chapter* Follow directions (Pet Peeve) & Don’t miss deadlines. Big XML & Web Guru: Focuses on Web Services. Big RUP (Rational Unified Process) d00d.
Dr. Dan Li She loves Algorithms & Processes: Be sure you know them in detail. Detail-oriented: Know the nitty-gritty of anything she talks about in class. “Be the Computer”: Be sure you can process input just as a computer would for every algorithm - know the steps in detail for any input.  Researching topics in Data Mining Teaches Information Retrieval class (Google, Yahoo! Web Searching Techniques)
Dr. Kefei Wang Know your tables: OSI Layers, etc. Press for Feedback: Go to his office hours and ask him about previous projects. Tests are almost entirely made up of Quiz Questions: Study those carefully! Currently doing research in Computer Networks & Architecture Big C++ Faculty Member on Campus
How to Take a CS Class in General... Think about how long a project is going to take you (overestimate this).  Now double that number. And plan accordingly.  Also, *ASK FOR HELP* It helps to even bounce ideas off a rubber ducky. ACM Lounge: There are always CS upper-classmen in Room 105. Swing by anytime, even 10:00 PM :) Good Luck!

First Year NAU CS

  • 1.
    First-Year ComputerScience Computer Science The NAU ACM Club
  • 2.
    What’s CS? ComputerScience How a computer thinks How to tell a computer to solve your problem The math behind how a computer solves your problem Designing systems that help the computer and you
  • 3.
    What can Ido with a degree in Computer Science? Software Engineer Network Administrator Security Analyst Scientific Computing Researcher Web Developer Game Developer Haxxor
  • 4.
    What classes amI going to need to take? http://peoplesoft.nau.edu
  • 5.
    What classes amI going to need to take? CS126: Computer Science I CS136: Computer Science II CS249: Data Structures CS200: Computer Organization CS301: Ethics of CS CS315: Automata Theory CS386: Software Engineering CS396: Principles of Languages CS421: Algorithms CS480: Operating Systems CS486: Capstone
  • 6.
    The NAU ComputerScience Faculty
  • 7.
    Abe Pralle Takeadvantage of his early points! Up to 20% Extra Credit! Turn in projects early! Abe rewards above and beyond effort with extra points - if you do something peculiar in addition to your project (Make a cool GUI, etc.) The Big “Game Guru”: Teaches Virtual Worlds, Game Production Wrote his own language dedicated to gaming: Slag (Also teaches Compilers) Resident Vim Ninja: Will blow your mind with his vim ninjaness.
  • 8.
    Dr. James PalmerRead the Textbook Chapter Pre-Lecture: Dr. P loves to talk about related stories that require prior knowledge Bring your questions about the chapter to class with you. Lectures to the most intelligent students without prompt - stop him with questions! Researching Ecoinformatics Visualization Techniques Loves Voronoi Diagrams! Resident emacs aficionado. ACM’s Daddy
  • 9.
    Dr. Eck DoerryDr. D loves to ask you randomly in class to define vocabulary from the lectures & textbook: Be sure you know these concepts. Know your vocab! Take Good Notes in his Classes: He talks above and beyond the topics in the textbook. Plan to devote 15+ hours on Projects and Focus on Requirements. Check for user input errors: He will actively try to break your program. Big Interfaces Guy: Seriously into GUIs & Functional Programming. Head Honcho: Computer Science Chair
  • 10.
    Dr. Dieter OtteDr. Otte is BIG on Presentations! Be sure to purchase Powerpoint or Keynote before his class! Again on Presentations, make sure you know the chapter well enough to present on it. *Read the Chapter* Follow directions (Pet Peeve) & Don’t miss deadlines. Big XML & Web Guru: Focuses on Web Services. Big RUP (Rational Unified Process) d00d.
  • 11.
    Dr. Dan LiShe loves Algorithms & Processes: Be sure you know them in detail. Detail-oriented: Know the nitty-gritty of anything she talks about in class. “Be the Computer”: Be sure you can process input just as a computer would for every algorithm - know the steps in detail for any input. Researching topics in Data Mining Teaches Information Retrieval class (Google, Yahoo! Web Searching Techniques)
  • 12.
    Dr. Kefei WangKnow your tables: OSI Layers, etc. Press for Feedback: Go to his office hours and ask him about previous projects. Tests are almost entirely made up of Quiz Questions: Study those carefully! Currently doing research in Computer Networks & Architecture Big C++ Faculty Member on Campus
  • 13.
    How to Takea CS Class in General... Think about how long a project is going to take you (overestimate this). Now double that number. And plan accordingly. Also, *ASK FOR HELP* It helps to even bounce ideas off a rubber ducky. ACM Lounge: There are always CS upper-classmen in Room 105. Swing by anytime, even 10:00 PM :) Good Luck!

Editor's Notes

  • #3 *The Science *Not just fixing computers or programming (WAAAAAAY COOLER) *Applied/Theoretical *Enslaving Computers to our Own Devious Ends
  • #6 CS126: Object-Oriented Programming (Learning Java & CS Thought Process) CS136: Object-Oriented Design (File I/O, Java Libraries, Exceptions, Recursion) CS249: Puttin’ the Science into Computer Science. Opens all doors. (Stacks, Trees, Queues) CS200: The Applied Hardware Connection, How to Program in Assembly. (What the computer’s actually doing and how). CS301: How to not be evil. Why you should practice high development standards. Circle of Trust. CS315: The Theory of Computation. (State machines, CS math & parsing) CS386: How to develop in a Professional Environment (Project Management in Teams, Documentation) CS396: Prince. Differences in Programming Languages (also intro to Scheme which will blow your mind). CS421: Algorithms THE MATH OF CS. (P/NP, Asymptotic Running Times, Big-O, Designing & Testing Computer Algorithms) CS480: How to write your own OS in C++! CS486: How to do what people tell you. (Big Capstone Project)