====== Programming for Nubs (Python) ====== * May 12th @ 8-10 PM * May 19th @ 8-10 PM ===== Overview ===== If you can already program, move along... We'll cover programming concepts in general, using Python for an example. We will not get in depth with Python or computer science. The goal of this two-day class is to introduce you to programming, not make you a programmer. Consider it pre-school for computer science. This wonderful two-day class will be tough by [[members:chris|CHRIS the magnificent]] and [[members:nmi|NMI the almost but not quite as cool as]]. ===== Requirements ===== Please sign up on the bottom of the page to let us know you intend to attend this class. A wiki account is required. Please sign up for one if necessary. There are no requirements for attendance however non-members are encouraged [[http://032.la/membership-info/|become a member]]! If that is beyond your reach, we ask (but do not require) that you to donate a few dollars to the beverage fund or to another group at NSL. Please bring the following items to the class. * A computer * Python 2.7 pre-installed * A morelia viridis (optional) * An IDE that supports Python or a text editor with syntax highlighting * PC: [[http://ninja-ide.org/|Ninja-IDE]], [[http://eric-ide.python-projects.org/|Eric]], [[https://pytools.codeplex.com/|PyTools for Visual Studio]], [[http://notepad-plus-plus.org/|Notepad++]] * Mac: * Linux: * Book: [[http://inventwithpython.com/hacking/chapters/|Hacking Secret Ciphers with Python]]: A beginner's guide to cryptography and computer programming with Python ===== Syllabus ===== ==== Day 1 ==== Day one will primarily be lecture and discussion of several key concepts and how they relate to each other. We will cover examples of everything in Python. * Basics of programming * "Types" of Programmers * "Scripters" * "Coders" * Software Engineers * What be: * Statements * Variables * Objects * Algorithms * Data Structures * "Types" of Programming * Imperative Programming * Object-Oriented Programming * Functional Programming * Stuff to know about * Compilers * Linkers * Libraries * Bytecode Homework: * Book chapters 1-5 ==== Day 2 ==== Attendees should be familiar with the concepts discussed in day 1. We will collectively dissect working scripts, as well as work on creating a few basic ones to allow individuals to start getting hands-on and turn concepts into reality. ==== Day 3 ==== There is no day 3! However the related class [[classes:your_code_sucks|Why Your Code Sucks and What You Can Do About It]] will be held 2-3 weeks after day 2. Anyone attending Programming for Nubs should work to improve their skills during the interim. ---- ===== Signups ===== == Interested == * Ed * Jody * NMI == Attending == * Fred & Nan * Jared * Rig * [[members:Fritz269|fritz269]] * The great and magnificent perpetual failure knows as HotelBravo.(I expect to be introduced this way)