If I had a dime for everytime someone said they could use a refresher in basic programming / problem solving / computer science concepts… and then this bumps into me: UNSW Computing 1 - The Art of Programming 12 week free course starts December 3rd.
November 15th, 2012
I'd like to perhaps do some more graphing explorations in class today.
I hope you've spend some time playing with the GD Library, and the sample code I gave you.
November 13th, 2012
Thrice readjusted due date on the 2nd sort program, and what do I get? Half the class doesn't even show up. Only 1 sort confirmed complete (although 1 not far behind), and suddenly people's naive sorts are broken beyond comprehension. What the heck is going on here?
As I picked through the wreckage, I could discern no new clues as to why this assignment was in any way difficult… all the problems I encountered had to do with basic programming logic and syntax. I literally dealt with zero actual sort issues.
Perhaps it would have helped if I knew more people had started on this project prior to 3-4 days ago. It seems to be a recurring pattern- start late, have trouble, project is due, suddenly appear for help. The focus is then on getting it done/working vs. actually understanding it, and that is no good at all.
Where to venture to next? Matrix multiplication? I am also wanting to introduce you all to the wonderful world of “the theory of computation”.
November 1st, 2012
Work-on-stuff day. I am seeing increasing amounts of functionality when it comes to people's set programs. Keep up the good work.
October 30th, 2012
Due to the potential for interruptions caused by possibly severe weather caused by Hurricane Sandy, all due projects will be pushed back a week. Appropriate projects have been updated to reflect this.
October 25th, 2012
what did we do today? work on stuff some more?
October 23rd, 2012
work-on-stuff day
also note that there may be visitors floating about the LAIR during class, potentially asking you questions. Please engage with them and be courteous.
October 18th, 2012
recursion was talked about, and compared alongside the iterative solution of computing the factorial of a value.
brief discussion of matrix multiplication
October 16th, 2012
Naive Sort Program is due at the start of class today.
Knowledge check- please complete this Discrete Structures Knowledge Assessment by Friday, October 19th, 2012. Please work this through on your own- no external help!
October 11th, 2012
Functions and Matrix Multiplication. These are the next two topics I'd like to get into.
Set Program (part one) is due at the start of class today.
October 4th, 2012
With the impending break, this became another “work on stuff” day.
October 2nd, 2012
Knowledge check- please complete this Discrete Structures Knowledge Assessment by Friday, October 5th, 2012. Please work this through on your own- no external help!
Starting this month, I will cease accepting assignments submitted past their due date (unless there are extenuating circumstances). Many people have been getting assignments done on time, others are procrastinating until the last day, and have trouble as they are rushing and don't have much time left. Please don't wait until the last minute, procrastination isn't the way.
Set Program, Part 1 is due October 11th. I am to do another “wander around and check off” sort of maneuver. Be sure to read the project into for additional requirements.
Sorting Program: Naive Sort is due October 16th. I also think I'll wander around and check off items for it. Additional project requirements in the project info page.
Sorting Program: Select a Sort is due October 18th. Here you will be choosing a sorting algorithm to implement (an existing sort).
Set Program: Part 2 is due November 8th. I want you to extend your set program to support set union, intersection, and difference (working with 2 sets, obviously). See the project info page for more information.
Sorting Program: Implemented Sort is due November 13th. You've previously picked your sort to implement, spent some time researching it, and by the start of class on this day I want you to have created a functioning implementation of it, extending your Sorting Program to be able to it. I'll wander around and check off for this one as well.
September 27th, 2012
Another work day on the set and naive sort. I am starting to see some solutions emerge. Great!
For those that enabled workdue notifications in gimmeh, you may have started receiving daily e-mails (depending on your settings). Remember, it is a double opt-in system- you have to enable workdue-status, AND email-workdue, otherwise it'll skip you by.
We started an exploration into sorting. I asked the class to implement a naive sort (ie do NOT look up any existing sorting algorithms, I want to see how you approach the problem of sorting based on your own merits). Implement me the following program:
Prompts the user for numbers (-1 to stop). Assume random, unordered entry (duplicates ARE allowed).
Put those input values into some sort of convenient container (array/linked list).
Display the values input, in the order they were input (before sorting).
Sort the inputed values from least to greatest (you can use the same container, or use a new container).
Work on that logic/truth table program completed, with the following features:
Display the truth table for your logic op
Implement a function which houses the programming logic of your logic operation, and have you program use it
After displaying the truth table, prompt the user for p and q values, obtain them, perform the operation and display the result
Doesn't need to be done for today, but I also want you to think about how you'd handle 3-inputs (p, q, r). Have a program that displays a truth table AND user interaction (for Tuesday, September 18th).
Since we are doing a quickish review of C as we get things rolling, take a look at the bignum repository, try and figure it out, do some research to revive your knowledge on other concepts, and bring questions to class for further clarification.
September 6th, 2012
Work on the standalone logic truth table programs first. Once those are done, we'll proceed to the Bignum exploration.
Have the 2-input truth table program for your logic operation finished (or as best complete as possible), so we can try some other variations.
We'll be using a bignum implementation to play with some of the course concepts.
Start working on said keyword, for you need to have the definition part done by mid-September.
Before leaving, detach from any screen sessions (CTRL-a d), log out of any terminals (exit command), close any web browsers or other open applications on your desktop, and right click → exit to log off. You do NOT want to leave while still being logged in!
Research the concepts of Logic, Boolean, Boolean Logic, Logical Connectives, Unary, Binary, and Truth Table