Main »

Discovering Computer Science

Main.HomePage History

Hide minor edits - Show changes to markup

March 22, 2015 by 24.240.38.4 -
Changed line 13 from:

Slides from a talk outlining many of these ideas are here: talk slides

to:

Slides from a talk outlining many of these ideas are here: talk slides

March 21, 2015 by 128.105.14.46 -
Changed lines 17-49 from:
  • Raghu Balasubramanian got a Master's degree in Computer Science at

UW-Madison. He was the pionner behind the Discovering CS projects of using Arduino boards. He helped kickstart everything in Spring 2012 by helping define the projects and help the first set of students implement the projects. He is also the co-author of our upcoming open source text book.

  • Daniel Ross is a PhD student in the Math department. He is the lead

author of our upcoming open source textbook. He got excited about hardware and contributing to this project after taking Karu's undergraduate computer architecture course.

  • Theo Dahlen is a senior undergrad and will graduate May 2015. He is

co-leading our research on applying the lowe-power principles of microprocessors to data-centers. He also helped develop an Arduino project undergrads can build in the senior-level course CS/ECE 552.

  • Zach York and Matt Doran are undergrad student who developed much of

the isntructional materials on this website.

  • Ari Biswas, Timur Girgin, Peter Procek, Alejandro Puente, and Daniel

Wortmann, helped us refine all the instruction materials and over the years have served as mentors for students in successive years working on these projects in courses.

  • Rebecca Lam and Newsha Ardalani are graduate students in the CS

department. They were teaching assistants for the course when we first developed these projects and were instrumental in managing the logistics of 50 to 60 students working in 5 member teams.

  • Vijay Thiruvengadam and Lorenzo De Carli are graduate students who

co-lead the MPU project which is our work on developing data-center chips.

to:
  • Raghu Balasubramanian got a Master's degree in Computer Science at UW-Madison. He was the pionner behind the Discovering CS projects of using Arduino boards. He helped kickstart everything in Spring 2012 by helping define the projects and help the first set of students implement the projects. He is also the co-author of our upcoming open source text book.
  • Daniel Ross is a PhD student in the Math department. He is the lead author of our upcoming open source textbook. He got excited about hardware and contributing to this project after taking Karu's undergraduate computer architecture course.
  • Theo Dahlen is a senior undergrad and will graduate May 2015. He is co-leading our research on applying the lowe-power principles of microprocessors to data-centers. He also helped develop an Arduino project undergrads can build in the senior-level course CS/ECE 552.
  • Zach York and Matt Doran are undergrad student who developed much of the isntructional materials on this website.
  • Ari Biswas, Timur Girgin, Peter Procek, Alejandro Puente, and Daniel Wortmann, helped us refine all the instruction materials and over the years have served as mentors for students in successive years working on these projects in courses.
  • Rebecca Lam and Newsha Ardalani are graduate students in the CS department. They were teaching assistants for the course when we first developed these projects and were instrumental in managing the logistics of 50 to 60 students working in 5 member teams.
  • Vijay Thiruvengadam and Lorenzo De Carli are graduate students who co-lead the MPU project which is our work on developing data-center chips.
March 21, 2015 by 128.105.14.46 -
Changed lines 11-12 from:

Inspired by some of the ideas of these very tiny computers, we are undertaking a research project that is considering building future data-center chips using these small devices. You can learn more about that project in this poster (Hot chips 2014 poster). More technical details are in our invention disclosure - Contact WARF.

to:

Inspired by some of the ideas of these very tiny computers, we are undertaking a research project called MPU that is considering building future data-center chips using these small devices. You can learn more about that project in this poster (Hot chips 2014 poster). More technical details are in our invention disclosure - Contact WARF.

Changed lines 17-28 from:
  • Raghu Balasubramanian
  • Daniel Ross
  • Theo Dahlen
  • Zachary York
  • Matthew Dorran
  • Aritra Biswas
  • Timur Girgin
  • Newsha Ardalani
  • Rebecca Lam
  • Vijay Thiruvengadam
  • Lorenzo De Carli
  • Karthikeyan Sankaralingam
to:
  • Raghu Balasubramanian got a Master's degree in Computer Science at

UW-Madison. He was the pionner behind the Discovering CS projects of using Arduino boards. He helped kickstart everything in Spring 2012 by helping define the projects and help the first set of students implement the projects. He is also the co-author of our upcoming open source text book.

  • Daniel Ross is a PhD student in the Math department. He is the lead

author of our upcoming open source textbook. He got excited about hardware and contributing to this project after taking Karu's undergraduate computer architecture course.

  • Theo Dahlen is a senior undergrad and will graduate May 2015. He is

co-leading our research on applying the lowe-power principles of microprocessors to data-centers. He also helped develop an Arduino project undergrads can build in the senior-level course CS/ECE 552.

  • Zach York and Matt Doran are undergrad student who developed much of

the isntructional materials on this website.

  • Ari Biswas, Timur Girgin, Peter Procek, Alejandro Puente, and Daniel

Wortmann, helped us refine all the instruction materials and over the years have served as mentors for students in successive years working on these projects in courses.

  • Rebecca Lam and Newsha Ardalani are graduate students in the CS

department. They were teaching assistants for the course when we first developed these projects and were instrumental in managing the logistics of 50 to 60 students working in 5 member teams.

  • Vijay Thiruvengadam and Lorenzo De Carli are graduate students who

co-lead the MPU project which is our work on developing data-center chips.

March 21, 2015 by 128.105.14.46 -
Changed line 9 from:

All of these resources are publicly available on this webpage with detailed instruction videos for anyone to view and learn. We hope you find them useful - look for the links in the sidebar. The demo pages have demos built by various students in the course. If you are interested in the course enroll in CS/ECE 252 :-) If you are really into this stuff, we also have a scientific publication that talks about these projects and their pedagogical benefits. Paper here

to:

All of these resources are publicly available on this webpage with detailed instruction videos for anyone to view and learn. We hope you find them useful - look for the links in the sidebar. The demo pages have demos built by various students in the course. If you are interested in the course enroll in CS/ECE 252 :-) If you are really into this stuff, we also have a scientific publication that talks about these projects and their pedagogical benefits. Paper here. We are also developing an open source textbook that can serve as way for others to use all our materials and remain free for students. Please email me at karu@cs.wisc.edu to learn more about it or if you are interested in knowing about the upcoming book.

March 21, 2015 by 128.105.14.46 -
Added lines 15-28:

Several amazing under-grads, graduate students make up the team of this project.

  • Raghu Balasubramanian
  • Daniel Ross
  • Theo Dahlen
  • Zachary York
  • Matthew Dorran
  • Aritra Biswas
  • Timur Girgin
  • Newsha Ardalani
  • Rebecca Lam
  • Vijay Thiruvengadam
  • Lorenzo De Carli
  • Karthikeyan Sankaralingam
March 21, 2015 by 128.105.14.46 -
Changed line 11 from:

Inspired by some of the ideas of these very tiny computers, we are undertaking a research project that is considering building future data-center chips using these small devices. You can learn more about that project in this poster.Hot chips 2014 poster. More technical details are in our invention disclosure. Contact WARF.

to:

Inspired by some of the ideas of these very tiny computers, we are undertaking a research project that is considering building future data-center chips using these small devices. You can learn more about that project in this poster (Hot chips 2014 poster). More technical details are in our invention disclosure - Contact WARF.

March 21, 2015 by 128.105.14.46 -
Changed lines 9-13 from:

All of these resources are publicly available on this webpage with detailed instruction videos for anyone to view and learn. We hope you find them useful - look for the links in the sidebar. The demo pages have demos built by various students in the course. If you are interested in the course enroll in CS/ECE 252 :-) If you are really into this stuff, we also have a scientific publication that talks about these projects and their pedagogical benefits. <a href=http://www.cs.wisc.edu/vertical/papers/2014/sigcse14-arduino.pdf>Paper here.</a>

Inspired by some of the ideas of these very tiny computers, we are undertaking a research project that is considering building future data-center chips using these small devices. You can learn more about that project in this poster. <a href=http://research.cs.wisc.edu/vertical/papers/2014/hotchips-poster-mpu.pdf>Hot chips 2014 poster.</a>

Slides from a talk outlining many of these ideas are here: <a href=http://research.cs.wisc.edu/vertical/talks/2015/arduino-slides.pdf>talk slides.</a>

to:

All of these resources are publicly available on this webpage with detailed instruction videos for anyone to view and learn. We hope you find them useful - look for the links in the sidebar. The demo pages have demos built by various students in the course. If you are interested in the course enroll in CS/ECE 252 :-) If you are really into this stuff, we also have a scientific publication that talks about these projects and their pedagogical benefits. Paper here

Inspired by some of the ideas of these very tiny computers, we are undertaking a research project that is considering building future data-center chips using these small devices. You can learn more about that project in this poster.Hot chips 2014 poster. More technical details are in our invention disclosure. Contact WARF.

Slides from a talk outlining many of these ideas are here: talk slides

March 21, 2015 by 128.105.14.46 -
Changed lines 1-46 from:

(:title Arduino Instructional Videos:)

Arduino Instructional Resources

This is the beginning of your journey towards making an Arduino device. You can click on the Demos link in the sidebar to see what your finished project will look like :-) All hardware will be provided by the instructor and you may keep it with you for the duration of the semester.

Getting Started with Arduino

Watch the video below to see step-by-step instructions on how to install the software, open a new sketch, and make a simple program work.
Download the Arduino software here
Download the Blink code here

Watch the Software Download Tutorial here.
Watch how to attach the Arduino to your computer here
Watch an example of the Blink program here.
Watch the Blink Demonstration/Breadboard Demonstration here

General information about the Arduino Language

The Arduino Language is a programming language based off of the C programming language. This is also very similar to Java programming for those of you that have taken CS302. I would suggest looking at the functions column of the reference page if you aren't familiar with this programming language. If you aren't familiar with any programming language, I would suggest looking at the whole page, but in particular, control structures, syntax, comparisons, boolean operators, data types, digital IO, and Analog IO sections. Some of the more basic syntax will be covered in the language tutorial below.

This is a tutorial on how to set up a basic Arduino program. It will walk you through the different steps of the code and what some of the basic syntax means.
Language Tutorial

Find the Arduino Reference Page here.



Project specific pages

Obstacle Avoidance Robot Project
Maze Navigating Robot
Tic-Tac-Toe
Twitter Project
Word Scramble
Arduino Pong
Catapult

to:

(:title Discovering Computer Science:)

Discovering Computer Science

Welcome to our webpage on Discovering Computer Science. This page explains our efforts toward developing an engaging and hands-on way to teach computer science focusing on discovery and also our related research projects.

Our goal is to teach students to be not just users of technology, but creators and innovators who will shape the future. We have developed a Freshman computer science course in which students learn the foundations and principles of computer science by building actual computers, robots, and various games. We can do this thanks to how cheap and powerful computers have become. Instead of playing Angry Birds on their phones, students build a physical game in which a spring-loaded system launches a plush bird, guided by ultrasonic sensors, at a target, all coordinated and controlled by algorithms they design. Through these projects, students have fun and learn better, discovering advanced computer-science principles on their own.

All of these resources are publicly available on this webpage with detailed instruction videos for anyone to view and learn. We hope you find them useful - look for the links in the sidebar. The demo pages have demos built by various students in the course. If you are interested in the course enroll in CS/ECE 252 :-) If you are really into this stuff, we also have a scientific publication that talks about these projects and their pedagogical benefits. <a href=http://www.cs.wisc.edu/vertical/papers/2014/sigcse14-arduino.pdf>Paper here.</a>

Inspired by some of the ideas of these very tiny computers, we are undertaking a research project that is considering building future data-center chips using these small devices. You can learn more about that project in this poster. <a href=http://research.cs.wisc.edu/vertical/papers/2014/hotchips-poster-mpu.pdf>Hot chips 2014 poster.</a>

Slides from a talk outlining many of these ideas are here: <a href=http://research.cs.wisc.edu/vertical/talks/2015/arduino-slides.pdf>talk slides.</a>

February 21, 2014 by 128.105.14.46 -
Changed line 5 from:

This is the beginning of your journey towards making an Arduino device. You can click on the Demos link in the sidebar to see what your finished project will look like :-)

to:

This is the beginning of your journey towards making an Arduino device. You can click on the Demos link in the sidebar to see what your finished project will look like :-) All hardware will be provided by the instructor and you may keep it with you for the duration of the semester.

Changed line 5 from:

This is the beginning of your journey towards making an Arduino device.

to:

This is the beginning of your journey towards making an Arduino device. You can click on the Demos link in the sidebar to see what your finished project will look like :-)

January 23, 2014 by 128.105.14.46 -
Changed lines 1-12 from:

Welcome to PmWiki!

A local copy of PmWiki's documentation has been installed along with the software, and is available via the documentation index.

To continue setting up PmWiki, see initial setup tasks.

The basic editing page describes how to create pages in PmWiki. You can practice editing in the wiki sandbox.

More information about PmWiki is available from http://www.pmwiki.org.

to:

(:title Arduino Instructional Videos:)

Arduino Instructional Resources

This is the beginning of your journey towards making an Arduino device.

Getting Started with Arduino

Watch the video below to see step-by-step instructions on how to install the software, open a new sketch, and make a simple program work.
Download the Arduino software here
Download the Blink code here

Watch the Software Download Tutorial here.
Watch how to attach the Arduino to your computer here
Watch an example of the Blink program here.
Watch the Blink Demonstration/Breadboard Demonstration here

General information about the Arduino Language

The Arduino Language is a programming language based off of the C programming language. This is also very similar to Java programming for those of you that have taken CS302. I would suggest looking at the functions column of the reference page if you aren't familiar with this programming language. If you aren't familiar with any programming language, I would suggest looking at the whole page, but in particular, control structures, syntax, comparisons, boolean operators, data types, digital IO, and Analog IO sections. Some of the more basic syntax will be covered in the language tutorial below.

This is a tutorial on how to set up a basic Arduino program. It will walk you through the different steps of the code and what some of the basic syntax means.
Language Tutorial

Find the Arduino Reference Page here.



Project specific pages

Obstacle Avoidance Robot Project
Maze Navigating Robot
Tic-Tac-Toe
Twitter Project
Word Scramble
Arduino Pong
Catapult


Page last modified on March 22, 2015, visited times

Edit - History - Print - Recent Changes (All) - Search