Mr. Alvi
Mr. Alvi started programming in the early 1980s on a C64 with Basic and 6502 assembly language. In school, he got more serious writing image processing algorithms in FORTRAN. Later on, I learned C and then Pascal, C++, Java, Python and a couple of web software stacks. Over the years, he has taught computers, programming and application software to both school kids and to adults; he loves to share his passion for building things.
He firmly believes that everyone can benefit from studying computer science and gaining computational thinking skills. He is excited to empower students to build software; to be creative makers, rather than seeing computers perhaps only for consuming, entertainment and distraction.
Mr. Alvi has been working in the software industry for more than 25 years and has held many roles in a variety of software development teams as programmer, analyst, project manager, lead developer and system architect. Many of the projects he has worked on have been involved in creating commercial software for the GIS, CAD and computer mapping markets. Others focused on global enterprise internal business applications in the areas of web and database applications, E-Commerce, Content Management, Identity Management, Technical Support, and CRM. He holds a B.A. in Geography from the University of Saskatchewan and a post-graduate diploma in Remote Sensing and GIS from the Nova Scotia College of Geographic Sciences. He is currently working on a web based SaaS application with his own software start-up.
Mr. Meyers
Mr. Meyers holds a B.S. in Computer Science and a B.A. in Philosophy from the University of Washington in Seattle, where he was an undergraduate TA for introductory programming courses. He has a decade of experience as a professional software engineer working at companies of all sizes, working on projects from high-volume data crunching to massively multiplayer games. He currently works as a Senior Software Engineer at FlightStats, Inc. in downtown Portland, as part of a small team responsible for a core system (written in Java) that leads its industry as the most comprehensive source of airline flight data.
Mr. Meyers encourages students to find and enjoy the playfulness and creative power of programming. Our world is rapidly becoming mediated by computers; understanding how to make these powerful tools carry out the works of our imagination is a deeply satisfying and empowering skill, and a gift that should be available to any young mind. In addition to making sure each student achieves the necessary understanding to succeed on the AP test, Mr. Meyers also hopes to help students appreciate the habits and mindset of a happy, productive, and creative programmer.
Dr. McNamee
Dr. McNamee started programming in BASIC in 1976, and taught himself 6502 assembly language in 1980. Finally as an undergraduate at UC Berkeley, he learned Pascal, C and LISP in 1984-1986. In 1988, he learned Prolog and RPG. In Graduate school at UW, he learned C++, Java, and PostScript (yes, it's a programming language). He has written compilers, video games, large portions of Operating Systems, web services, cryptographic algorithms, and much more. Programming is a love and a hobby of his, and he is looking forward to sharing it with the class!
Meet your instructors!
This class is taught by an experienced team of software engineers via the TEALS (Technology Education And Literacy in Schools) program. Ms. O'Malley will be learning along with you this year! The long-range plan is for Ms. O'Malley to take over instruction with support from the TEALS team.
AP Computer Science
Mr. Marvick
Mr. Marvick is a graduate from the University of Washington's Mechanical Engineering department. His study included a focus in mechatronics, which is similar to robotics in that it combines electronics and computer programming with mechanical systems. He most recently worked on inkjet printers at HP, where his computer programming knowledge helped him contribute to firmware algorithm design, firmware testing, and data analysis. He also develops apps for Android phones. He loves to learn new things, especially about computer programming, and is currently learning about web design and development. He is a strong believer that knowing how to program can strongly empower people in the workforce, in their own business pursuits, and in personal side-projects.
Questions?
email your instructors: madisonapcsquestions@gmail.com
post a topic to the google group: madison-ap-cs-discuss@googlegroups.com
Resources
Online practice: Practice-it! CodingBat
Eclipse
Eclipse import/export Eclipse installation instructions
Instructions: ZIP & upload to Google drive YouTube ZIP from Eclipse