UW CSE logo uw

CSE 142: Computer Programming I, Autumn 2008

arrow CSE Home arrow About Us arrow Search arrow Contact Info

CSE 142 Python Program

Wall of Fame:

The following students wrote awesome Python games:

Week 10 (Games with Pygame, continued)

Week 9 (Games with Pygame)

Week 8 (Objects and Classes)

Week 7 (Lists)

Week 6 (Review and File I/O)

Week 5 (While Loops, Random Numbers, Tuples)

Week 4 (If/Else, Logic, Strings)

Week 3 (Parameters, Graphics)

Week 2 (For Loops, String Multiplication)

Week 1 (Basics, Functions)


General info about the CSE 142 Python program:

This quarter in CSE 142, we will conduct a special optional program to offer students a chance to learn a second programming language as you're learning Java. The second language's name is Python.

What is Python?

Python is a language that's good for writing programs to process text and other data. It's used heavily in the Linux operating system and at companies like Google.

Why would I want to learn Python, in addition to Java?

Learning two programming languages is a bit like growing up in a bilingual family: you'll not only learn those two languages well, but you may also learn some higher concepts about programming and programming languages in general.

In addition, Python is used in a lot of other fields and disciplines, so it can be useful to have experience in it. Lastly, Python is a powerful language that does a lot of things more easily than Java, so it can be fun rewriting your past Java programs in Python and seeing how much shorter and cleaner they can be solved.

Who will run these sessions? Where will I go, and what will I do?

Our Python program will be hosted by some of our TAs, Kimberly Todd, Kevin Wallace, and Ian Gienger, under Marty's advisement. Each week, they will hold a 50-minute session to teach you the equivalent of that week's Java course material into Python, along with any related issues.

The work involved in this program would be the following:

Primarily, these projects will consist of solving the same problem as that week's Java programming assignment, but in Python, and perhaps with minor modifications to the assignment spec.

What reward do I get for doing this? Do I have to do it?

Participation is entirely optional. The reward for doing these projects will be small, to make sure that these sessions don't give students with prior experience an unfair advantage over new programmers. Right now, we're planning to reward students with 1 free late day for each Python program submitted. No grade points will be added or subtracted in any way for participating in this project.

How do I participate or learn more?

Just go to the next Python session at the time listed above, and if you find it interesting, try writing the Python program given out for that week. If you finish it, you can turn it in from a link that we'll put at the top of this page.

If you want to install and run Python programs on your own computer, follow our Python Installation Instructions below:

Can I still participate even if I don't go to the sessions or cannot make it to the sessions? Can I still come to the sessions even if I don't want to turn in the weekly Python programs?

Yes! If you miss the session, feel free to look at each week's slides and code that we post, and/or still submit the program. And even if you come to the sessions, you don't have to work on the programs we give out; if you just want to come to the sessions and that's all, that is fine with us. It's up to you.