Skip to main content

Overload request form is open

We’ve opened the overload request form. Please note that we may not be able to add space to more courses, but we’ll do the best we can. 322 and 378 will be offered again this fall quarter if you’re unable to get into this spring.

http://www.cs.washington.edu/education/ugrad/current/overloading.html

March 5, 2010

upcoming talk on monday: CMOS MEMS for Mechanical Sensing and Neuroscience

Just a reminder that if you want to see all the upcoming talks in CSE, you should join the talks newsgroup.  We’ll post a few every now and then here on the blog to remind you or if it seems particularly geared towards ugrads, but you are welcome to attend any of our public talks.

https://mailman.cs.washington.edu/mailman/listinfo/talks
———- Forwarded message ———-
From: Karl F Böhringer <karlb@washington.edu>
Date: Thu, Mar 4, 2010 at 9:56 PM
Subject: Seminar announcement – Oliver Paul, IMTEK, University Freiburg, Germany
To: rao@cs.washington.edu

Rajesh,

Please forward this announcement to colleagues in your department.

Thanks,
Karl

Speaker: Oliver Paul, University of Freiburg
Time: March 8, 1:30pm
Location: Paul Allen Center AE 108

Title: CMOS MEMS for Mechanical Sensing and Neuroscience

Abstract
——–
Piezoresistive mechanical sensing is currently experiencing a
renaissance stimulated by such novel developments as piezoresistive
field effect transistors with multiple source-drain contacts and
sensor elements for the measurement of out-of-plane components of the
stress tensor. The first part of the talk will present these sensor
elements from their foundations to the realization of smart sensor
systems for applications including smart orthodontic brackets, a
three-dimensional surface coordinate measurement system, and sensor
chips for packaging reliability studies.

The middle part of the presentation is dedicated to results of the
EU-financed project NeuroProbes, where intracortical neural probes for
electrical and chemical sensing and stimulation have been developed by
a consortium of 15 partners. CMOS-integrated microneedle probes with
up to 188 electrode sites have advanced the state of the art in the
spatial resolution of such probes, enabling a richer picture of
intracortical communication processes to be obtained.

Finally, these two lines of research are merged by the description of
microneedle-shaped stress sensor arrays. These structures are designed
to help neuroscientists to understand and minimize the mechanical
probe-brain interaction during penetration and acute and chronic
experiments.

Speaker bio
———–
Oliver Paul is a Professor and Chair of Microsystem Materials,
Department of Microsystems Engineering (IMTEK), at University of
Freiburg, Germany. He received his Ph.D. (Dr. sc. nat.) from ETH
Zurich in 1990. He served as a visiting faculty member at Ritsumeikan
University in Japan, and University of Michigan. His research
interests include microsystems for physical sensing and biomedical
applications, and microelectromechanical systems based on commercial
IC processes. Prof. Paul has authored over 200 research publications
and given more than 70 scientific talks and colloquia.He is among the
Editorial Board of Transactions on Electrical and Electronic
Engineering (IEE Japan), and Journal Micromechanics and
Microengineering (IOP), and Sensors and Actuators A (Elsevier). He is
the co-founder of Sensirion AG, Stafa, Switzerland.

Prof. Paul is available for meetings between 2:30 and 4:30pm. Please
let me know if you want to schedule an appointment.

Karl F. Böhringer, Ph.D.
Professor
Dept. of Electrical Engineering
University of Washington
EE/CSE 234, Box 352500
Seattle, WA 98195-2500

tel 206 221-5177, fax 206 543-3842
karl@ee.washington.edu
www.ee.washington.edu/faculty/karl
_______________________________________________
Cs-ugrads mailing list
Cs-ugrads@cs.washington.edu
https://mailman.cs.washington.edu/mailman/listinfo/cs-ugrads

March 5, 2010

Possible new course: Beyond Programmable Shading

We may offer the course described below this spring for students who have taken CSE 457.  If you think you might take the course, please send me an email (ceney@cs.washington.edu) keeping the subject heading consistent and let me know if you will:

1. Definitely take the course if it’s offered T/TH 1030-noon

2. Definitely take the course if it’s offered T/TH 12-120

3. Might take the course if it’s offered at one of these two times
It would likely be offered T/Th for 1.5 hours each day probably 1030-noon or noon-1:20pm.

It would be 3 credits.

Course info:

Beyond Programmable Shading

A university graduate course to be taught at Stanford University (Mike Houston) and University of Washington (Aaron Lefohn) in the Spring Quarter of 2010

DRAFT 1/8/2010

Course Description:

There are strong indications that the future of interactive graphics programming is a more flexible model than today’s OpenGL/Direct3D pipelines. Researchers and developers are combining flexible parallel graphics architectures and emerging parallel programming models with the traditional graphics pipeline to create new graphics pipelines and algorithms that significantly increase image quality. This course introduces students to the parallel graphics architectures and the parallel programming models that are fueling this change and teaches students how to create interactive rendering algorithms and pipelines that extend, or are completely different than, the traditional Direct3D/OpenGL interactive rendering pipeline. The course also introduces students to many of the unsolved rendering and programming model research topics in this field.

The first part of the course introduces parallel graphics architectures, parallel programming models for graphics, and parallel algorithm primitives. The second part of the course looks at cases studies from recent rendering algorithms and systems—discussing the mix of parallel programming constructs used, details of the graphics algorithms, and how the rendering pipeline and computation interact to achieve the technical goals. The focus is on what currently can be done, how it is done, and future trends. Topics include examples from game developers using these new capabilities in next-generation rendering engines, volumetric and hair lighting, alternate real-time rendering pipelines including ray tracing and micropolygon rendering, in-frame data structure construction, and complex image processing.

This is an advanced graphics course designed for graduate students interested in pursuing research in real-time rendering algorithms, graphics systems, or parallel programming systems. It is open to students who have at least an introductory background in computer graphics and computer systems and architecture. Two short analysis/exploration projects and one large, team-based final project must be completed.

Prerequisites:

Students should be comfortable with OpenGL and/or Direct3D and have had an introductory computer architecture course.

Stanford: CS248 or equivalent introduction to compute graphics course

UW: CSE557 or equivalent introduction to computer graphics course

Syllabus (Two 75-minute lectures per week):

“Background Block”

Week 1:

Introduction: “why and how is graphics programming” and retrospective
A trip down the rasterization graphics pipeline

Week 2:

Overview of current GPU architectures
Overview of proposed future architectures: Larrabee, Fusion, tile-based rendering, etc

Week 3:

Parallel programming for interactive graphics: data-, task-, pipeline parallelism
DirectCompute and OpenCL

Week4:

Data-parallel primitives (scan, reduce, sort, etc)
Building graphics pipelines

“Case Studies Block”

Week 5:

Game task graphs and “blurring lines between graphics and compute” (DICE work)
MegaTexture (id Tech5) and  Voxel rendering (id Tech6)

Week 6:

Image processing – i.e. fuzzy/blurry things like DOF, recursive filters, etc.
Shadows

Week 7:

Rasterizing transparent objects (esp. hair rendering)
Real-time ray tracing

Week 8:

Real-time micropolygon rendering
Game physics (focus on parallelization challenges and interactions with graphics system)

Week 9

What if the pipeline is just software?
Open questions: future of graphics APIs and real-time graphics programming systems

Week 10:

(Deadweek at most universities – course debrief and reviews)

Week 11:

Project presentations

Projects:

Project #1 (1.5 weeks)

–          Assign middle of week 2 due end of week 3 (individual project)

–          TODO: We need to decide on one of the following

  • Build a CPU task system that supports a “parallel_for” construct (no SIMD use)?
  • “Hello world” OpenCL + OpenGL program?

Project #2 (2.5 weeks)

–          Assign middle of week 3 due end of week 5 (individual project)

–          Heterogeneous parallel compute “warm-up” that uses a mix of task-, data-, and pipeline parallelism on a combination of CPU and GPU to draw a picture.

  • Could use OpenCL tasks on CPU, OpenCL data-parallel compute on CPU or GPU, and OpenGL graphics pipeline.
  • Could use Thread Building Blocks (TBB) tasking on CPU with DirectX 11 data-parallel compute and graphics pipeline on GPU.

–          We will provide examples of possible examples but students will be free to choose a different problem as long as they incorporate all forms of parallelism into their application.

Term project (4-5 weeks)

–          Assign middle of week 5 (group project with 2-3 people per team)

–          Proposal due week 6, checkpoint week 8

–          We will provide a list of possible ideas, but we expect teams to propose their own ideas with the best projects being prototypes of new research ideas. Example scope of ideas includes:

  • New rendering algorithms that use all compute resources in machine and mixes of parallelism
  • New rendering system (
  • New parallel programming systems for CPU or GPU targeted at graphics

Readings:

Background material (helpful but not required):

–          Real-Time Rendering—Akenine-Moller, Haines, and Hoffman

–          Fundamentals of Computer Graphics—Shirley et al

–         Computer Architecture: A Quantitative Approach—Hennessy and Patterson

–         Patterns for Parallel Programming—Mattson, Sanders, and Massingill

Material for the course:

–          No text book currently exists for this material. Throughout the quarter, we will recommend reading from a combination of recent conference presentations, research papers, API documentation, and books.

March 4, 2010

March 8: “Cracking the Technical Interview: Advice for Programmers”

Hey all,

We have a great opportunity coming up next week — Gayle Laakmann of careercup.com will be giving a talk about preparing for technical interviews, which I think should be valuable for many of us.

Who: Gayle Laakmann
When: March 8, 4:30pm
Where: Gates Commons (CSE 691)

See below for details, and let us know if you have any questions.

-your friendly neighborhood ACM officers

————————

Gayle Laakmann
“Cracking the Technical Interview: Advice for Programmers”

Abstract:
Computer Science interviews are a different breed from other interviews and, as such, require specialized  skills and techniques.  Cracking the Technical Interview will teach you how to prepare for technical interviews, what top companies like Google and Microsoft really look for, and how to tackle the toughest programming and algorithm problems.  This talk will include stories from the speaker’s extensive interviewing experience as well as a live “demo” of how  to tackle a technical problem.
Bio

Gayle Laakmann is the founder and CEO of CareerCup.com and the author of “Cracking the Technical Interview” (http://www.careercup.com/book). Career Cup is the leading source of technical interview preparation and provides a free forum with 3000+ technical interview questions, a book, a video, and mock interviews.  Gayle has worked for Google, Microsoft and Apple as a Software Engineer and has extensive interviewing experience on both sides of the table.  At Google, she interviewed over 120 candidates at Google and served on its hiring committee.  Gayle received her bachelors and masters in  Computer Science from the University of Pennsylvalnia in 2005.

March 3, 2010

[cs-ugrads] Machine Learning Talk by Zillow’s Chief Economist. On Friday.

From: cs-ugrads-admin@cs.washington.edu [mailto:cs-ugrads-admin@cs.washington.edu] On Behalf Of Oren Etzioni
Sent: Wednesday, March 03, 2010 5:19 PM
To: cs-ugrads – Mailing List
Subject: [cs-ugrads] Machine Learning Talk by Zillow’s Chief Economist. On Friday.

Title: “Machine Learning at Zillow – Looking Under the Hood at Zestimates”
Description: “Zillow updates the market value for 70 million homes in the U.S. three times each week. In doing so, the company produces more than 350,000 statistical and machine learning models each night. In this discussion, we’ll learn more about problem space of home valuation, the data that is available for solving the problem, the techniques Zillow uses for this application, and the pitfalls and learnings they’ve encountered along the way.”

Speaker: Stan Humphries

Time: Friday, March 5th at 2:30pm.

Place: EE 037 (guest lecture in CSE 446)

March 3, 2010

Re: [cs-ugrads] Chaos in the Atrium next Wednesday and Thursday


From: cs-ugrads-admin@cs.washington.edu [mailto:cs-ugrads-admin@cs.washington.edu] On Behalf Of Tracy Erbeck
Sent: Tuesday, March 02, 2010 1:16 PM
To: Ed Lazowska; faculty – Mailing List; cs-staff – Mailing List; cs-grads – Mailing List; cs-ugrads – Mailing List
Cc: ‘Johnny Young’
Subject: Re: [cs-ugrads] [Cs-staff] Chaos in the Atrium next Wednesday and Thursday

some specifics regarding the controlled chaos.
1.  Atrium furniture will be removed today.
2. the building will be closed early tomorrow night- 6:30 pm (your keycard will work)
3. the loading dock will be completely off limits to all vehicles early on the 3rd through the end of the day on the 4th. (we’re trying to reroute mailing services, but we may have a drop off and a pick up skipped on the morning of the 4th)
4.  the second and first floor occupants will be impacted more than the rest of the building (equipment, etc).   sorry!
5.  Reboot will be not open until noon on the 4th.
6.  the parking spaces on Stevens Way and Benton Lane near the building will be reserved for various service vehicles for the event.
If you have any concerns or issues, please contact me!
tracy

From: office-staff-admin@cs.washington.edu [mailto:office-staff-admin@cs.washington.edu] On Behalf Of Ed Lazowska
Sent: Thursday, February 25, 2010 6:41 AM
To: faculty – Mailing List; cs-staff – Mailing List; cs-grads – Mailing List; cs-ugrads – Mailing List
Subject: [Cs-staff] Chaos in the Atrium next Wednesday and Thursday

In connection with next Thursday’s talk, some special staging and lighting will be placed in the Atrium on Wednesday.  Apologies for the disruption.

March 2, 2010

CSE 390

Follow up, the CSE 390 course will be offered 2-3 times each year, so if you don’t take it this spring, there will be other opportunities.

March 2, 2010

CSE 390, 1 credit, System and Software Tools, recommended for new majors who have not had 303

*CSE 390 sln 19260 1 credit, cr/no credit only, Tues 130-220

*If you have completed 303 you are NOT allowed to register, no begging, we mean it…  🙂

1. You don’t need it, you already covered these points

2. We don’t have the space even if you think you want some review

UW CSE – System and Software Tools
Course Description

Structural Place in the Curriculum

  • 1 credit (1 weekly lecture),  credit / no-credit  (C/NC) only
  • Pre-requisites: CSE 143
  • Taken by: Optional but recommended for CS and CE students who have NOT had 303
  • Catalog Description: TBD

Course Overview / Goals

There are many practical skills that are important for students to know for upper-division CSE coursework, but that do not smoothly fit in with the core material of those courses.  Such skills include: using a Unix/Linux environment; text editors and software tools; Unix shell commands; file/process management; regular expressions and text processing; shell scripts and scripting languages; and tools for managing and compiling programs.  This material is important to computer scientists, but much of it is practical and not strictly computer science.

This course provides a weekly lecture on these topics to students who have completed CSE 143.  It is a gentle introduction “on the side” of the rest of the curriculum, with only moderate work, requirements, and demands on student time.  The course makes no assumptions about student knowledge beyond basic programming ability.

The course is for CSE majors only.  It will be listed as optional, because some students will already know these topics or will not need them in their course path.  But the department will recommend it to all incoming majors because of its importance to many majors courses.

The course will have a faculty member listed as “instructor of record,” but the weekly lectures and grading will be conducted by a graduate student under the faculty member’s supervision.

Description of Possible Homework, etc.

Each lecture would end with the assigning of one short homework, expected to take 2-3 hours at most to complete.  Each assignment would involve solving various problems in the CSE labs or at home involving Unix commands, shell scripting, etc.  Example assignments:

  • Write various shell command one-liners to produce given results or discover various system information.
  • Solve various shell tasks involving regular expressions and related tools.
  • Create a shell login script that sets up certain environment variables and settings.
  • Author, compile, and run a short Java program from a Unix server.
  • Set up a short Makefile to compile and run a Java program.
  • Write short script programs to perform various tasks and produce a given output or result.

“Passing” the course involves submitting satisfactory solutions to the majority (say, 8 out of 10) of the assignments given out for the quarter.  At the instructor’s discretion there may also be a short final exam at the end of the quarter, though such an exam should be less strenuous than most CSE course exams.

Possible Textbook

Barrett, Daniel J.  Linux Pocket Guide.  O’Reilly, 2004.

The textbook would likely be optional.  A substantial set of online and printed resources (lecture slides, web pages, links, etc.) would also be given to students as a reference, for both during and after the course.


Approximate Topic List

  • basics of navigating a Unix/Linux environment
  • using a Unix command-line shell
  • Unix file system; file and directory management
  • permissions, groups, and users (including super-user, root)
  • processes and process management
  • pipes and redirection
  • globs and wildcard characters
  • environment variables
  • connecting to remote servers (ssh, sftp, scp, vnc, rdesktop, etc.)
  • commands related to multi-user shared Unix systems (e.g. attu)
  • using a text editor such as emacs
  • regular expressions and related tools (e.g. sed, grep)
  • string and text processing basics: filtering, substituting, etc.
  • compiling and executing Java programs from a command line
  • Makefile basics (without C programming)
  • shell scripting (bash or Python)
  • version control basics

Possible additional topics, time permitting:

  • basics of programming in a scripting language such as Python, Ruby, or Lua
  • basics of HTML and/or setting up a basic web page
  • setting up a basic Unix/Linux system
  • configuring a Unix/Linux system to act as a basic file/web server

Non-Topics and Relation to Old Curriculum

This course is essentially a subset of the material once offered in CSE 303, spread out over a 10-week quarter.  The most major topic area removed from 303 is the coverage of C/C++ programming and related issues.  Some topics are covered in less detail than they would be in 303.  The following (which occupied up to 6-7 weeks of CSE 303) are not covered:

  • messy details of many topics (version control, emacs, Makefiles)
  • details of particular Unix/Linux operating system distributions (e.g. “How to use Ubuntu”)
  • C / C++ programming
  • object-oriented programming
  • memory and manual memory management
  • debuggers, testing, linking, loading, libraries
  • concurrency, synchronization
  • security (beyond that provided by file permissions)
  • ethics and society
March 2, 2010

Ugrad Research Position Available

Hello!

I’m looking for a talented student (or two) who is interested in
working on a safe programming environment that will be deployed
on millions of computers ( https://seattle.cs.washington.edu ). This
environment is currently being used in networking and distributed systems
classes at universities around the world (including at UW!).   We already
have the world’s largest open testbed.  This is an excellent opportunity to
work on a very visible project.

There are a huge number of interesting subprojects that a student
could work on.   Here are a few example projects (but we are open to
suggestions):

Google Native Client integration — Some of the Google folks are interested
in integrating Google Native Client with our API.   This would allow
x86 binaries
to be executed on our platform and provide Google Native Client with
performance isolation and resource restrictions.

Tor project support — Participation in Seattle as a hidden service to better
anonymize Seattle users.

Building cool apps — We’ve built DHTs, MapReduce, Paxos, and
other interesting applications, but we’re open to more development.

As I mentioned before, these are only a few of the potential
subprojects that we’re interested in students working on.   If you
have your own project ideas we’d be keen to hear about them!

The benefits of doing research in our group:
* Work experience for your resume  —   Applicants with a background
in building real software are highly sought after in industry.
Working on a “production” research project gives you that experience
without needing to commute to work.

* Team environment    —   A significant amount of the work in our lab is
done in teams of 2-4 undergrads.   This helps to provide a supportive working
environment and allows students to accomplish more impressive things
in a shorter period of time.

* Research experience   —   One goal of the work is to spread
awareness by publishing in top conferences.   If you are interested in
graduate school, this will help tremendously.

* Course credit or pay   —   Students will receive course credit
or pay in most circumstances.

* Letter of recommendation   —   Letters of recommendation about
research experience (Joe built an application used on millions of
computers) are often more reflective of skills than a letter based on
classroom interaction (Joe got a 3.8 in my class).

An applicant must have:

* Strong programming skills
* Self-motivation

I have had the privilege to work with many talented students,
including five who won awards and/or fellowships for research.   Our
lab currently is working with 10 talented undergraduates.   Two students
have either completed an honor’s thesis on this project and another
student has their thesis in progress.

We’re most interested in applicants who have prior experience working
either on open source software or have significant industry experience.
Competitive students should have a CS GPA >= 3.5 and
either have taken 3 CS courses or have prior experience.
Applicants also should have at least 1 year until graduation.
Significant experience in Python or C are a plus but not required.
If you are interested in learning more about our project, please send
an email to justinc@cs.washington.edu with the following information
(you need not list more an a few sentences for any item):

* Name
* Previous / Expected Degrees w/ CS and Math GPA
* Scholarships / Awards
* Expected graduation date
* Known programming languages / libraries and level of expertise
* Operating System familiarity (i.e. RedHat Linux administrator for 3
years, Windows user for 10 years)
* Work experience
* Any other skills I should know about
* The coolest project you’ve worked on
* Would you like pay / credit / volunteer?
* Email address you’d like to be contacted at

Thanks,
Justin

March 2, 2010

Subject: [cs-ugrads] heard on NPR Science Friday last week

From: cs-ugrads-admin@cs.washington.edu [mailto:cs-ugrads-admin@cs.washington.edu] On Behalf Of Hal Perkins
Sent: Sunday, February 28, 2010 6:16 PM
To: faculty – Mailing List; cs-staff – Mailing List; cs-grads – Mailing List; cs-ugrads – Mailing List
Subject: [cs-ugrads] heard on NPR Science Friday last week
Importance: Low

Q:  What’s the difference between an extroverted mathematician and an introverted mathematician?

A:  The extroverted mathematician looks at your shoes when he talks to you.

(And we think that CSE has an image problem…)

Hal
_______________________________________________
Cs-ugrads mailing list
Cs-ugrads@cs.washington.edu
https://mailman.cs.washington.edu/mailman/listinfo/cs-ugrads

March 1, 2010

« Newer PostsOlder Posts »