What's New

Lecture 26

The slides for Lecture 26 and the example code for Lecture 26 are now available.

Homework 6

The details for the final assignment of the semester, Homework 6, is now availalbe.

Lecture 25

The slides for Lecture 25 and the example code for Lecture 25 are now available. (I'm getting a jump start on the lectures for next week. Do NOT show up to lecture tomorrow!)

Lecture 24 Sample Code

The sample code for Lecture 24 is now available.

Lecture 24

The slides for Lecture 24 are now available.

Lecture 23

The slides for Lecture 23 are now available.

Grades Page Refreshed

Homework 4 is still be graded by the new grader. However, there were a number of midterm scores that got updated after Tuesday's review and so I decided to refresh the Grades page to reflect those new scores. Have a great weekend!

Lecture 22

The slides for Lecture 22 are now available.

Homework 5

The details of Homework 5 are now available. As advertised, I'm asking you to work on implementing your semester project and to provide me with a detailed status report on the progress made by next Friday, November 16th.

Discussing Midterm Today

I'll be handing out the midterm and discussing it for today's lecture. If you are local to CU and Boulder, please come and pick up your exam. For CAETE students, I'll be taking your exams to the CAETE office this afternoon and they will then take care of sending your exam back to you. The remaining exams will end up in ECOT 717, the CS Department's main office.

Reminder: Homework 4 Due Tonight

Quick Reminder: Homework 4 is due tonight. Upload your assignment to the Moodle by 11:55 PM MST tonight as a single PDF file. Homework 5 will be assigned tomorrow. I'll be working on the creation of Quiz 2 this week to be deployed this weekend or early next week. See you in class tomorrow!

Do you have bugs in your mobile apps?

The CUPLV group has been actively developing bug detection tools for mobile applications, including for Android and iOS.

iOS/MacOS

Devin Coughlin has been creating a tool for proving the absence of certain reflection-related bugs.  We're particularly interested in proving the "responds-to" relationship between objects and selectors, so we're looking for bugs where someone has reflectively called a method that doesn't exist, e.g., with -[NSObject performSelectorOnMainThread:], or calling -setTarget and -setAction: on a control where the target does not actually respond to the action selector. Even a simple typo like forgetting the terminal ":" in a selector name or misspelling the selector would a good example for us to run on. Have you seen these kind of bugs in your code or do you worry that you might have some lurking? (These usually manifest with a runtime exception "unrecognized selector sent to instance…").

Android

Sam Blackshear has been creating memory leak detection tools for Android applications.  We believe we have an effective tool for finding and triaging what are known as Activity leaks in Android: where an application holds on to a pointer to a destroyed Activity.  This bug is rather pernicious because it can easily cause a phone to crash because it runs out of memory quickly. Have you seen these kind of bugs in your code or do you worry that you might have some lurking?

Let us help you!

Code at any development stage is of interest to us.  Ideally, we are looking for reasonably-sized examples, but the projects can be in active development or not.  We are particularly interested in seeing how well our tools handle less mature code.  If you would have any code for iOS/MacOS/Android applications that you would like to share, please contact Evan Chang (evan.chang@colorado.edu), Devin Coughlin (devin.coughlin@colorado.edu), or Sam Blackshear (samuel.blackshear@colorado.edu).  Thanks!


Midterm Grades

The grader finished grading the midterms on Friday. Your individual grades are available on the Grades page. I have posted distributions for the exam for graduate students, undergraduate students, and the class overall. I'll discuss the exam during lecture on Tuesday.

MidtermDistributions.numbers


Follow-Up on New Venture Challenge

Matt Burns, who gave a presentation on CU's New Venture Challenge at the start of Lecture 18, has sent me a follow-up with some additional details about upcoming NVC events.

"Team and Idea Night is this Monday, November 5th, at 5:30 PM. It will feature Zach Nies of Rally Software talking about idea generation and development, something that should be of interest to your students. We'll also have Dan King of ReadyTalk to present on forming and running great teams. I've seen Zach before and he puts on a great presentation. Hopefully this event will get our students excited about the NVC and therefore decide to attend the next event, Pitch Night on November 13th."

More details are available on the NVC website.

Lecture 20 Supplemental

I have developed supplemental slides and sample code for Lecture 20 due to the fact that I was able to create an iOS twitter search app in about 40 minutes of development time this morning!

Lecture 20

The slides for Lecture 20 and the example code for Lecture 20 are now available.

© Ken Anderson 2012