Friday, October 25, 2013

sLog Struggles

I'm sure complaining about sLogs is also part of the sLog process. I dislike sLog's greatly, I think they're a waste of time for me. I actually quite hate them, I actually hate the whole idea of many tiny assignments holding our grades hostage. I think courses should just be two to three big assignments/examinations, I feel like this idea of constant engagement arrests the creativity of students. Imagine a course where someone just lay out all the information and says "This is what you need to know and demonstrate that you understand under novel situations to be considered proficient" then they proceed to give you certain dates certain things are due. Imagine the time the student would have? An industrious student would be able to say "I'll learn all this at my own pace, doing somethings early and doing others at my own schedule." Heaven forbid they could even be given this knowledge beforehand? I think this system is outdated and personally frustrating.

When you think about it, adding up the exercises, exams, assignments, labs, slog entries: are marks are distributed between 31 separate events. I think there's a much lower and reasonable number.

Friday, October 18, 2013

Recursion pt. II

I decided to write another post on recursion, since it's been giving me so much trouble. I think it's just a matter of syntax but I struggle with implementing it correctly. It's as if I understand it logically but I just can't get it to do as I desire. So I find my self working from an iterative perspective for most of my code even though I'm told that recursive methods are much easier and more powerful. I'm hoping that before Test II I'll have a much better grasp on recursion because I find it's the only portion of the course I'm struggling with. The main issue I have is in turning a problem into a recursive implementation, for example a fully parenthesized equation. I understand doing the idea of recursively solving portions but I wouldn't understand how to use the parenthesis to control that process. It'd make more sense to me to work through the equation front to back using the parentheses to control the iterative process, like I said something I'll just have to devote more study time to. I guess.

Friday, October 11, 2013

Object Oriented Programming\Recursion

Object Oriented Programming:

A programming method that has an "object" type representation of data. This is very useful, I have programmed PLCs in the past and those are clearly clearly not object oriented, more like objective oriented. Exposure to PLCs were actually the reason why I got into programming, I enjoyed the idea and practice of programming so much that I decided to go into Computer Science. What makes object oriented programing so useful is it allows for a more conceptual representation and manipulation of data, while PLCs were more straight logic. There are things you could do in OOP that you wouldn't even try to attempt in ladder logic unless you had a serious propensity towards self flagellation.

Recursion:

Is a method where you solve a problem by repeating steps of the problem that are essentially smaller instances of the original problem within the original problem. This differs from looping and while loops in a crucial way, there are some problems you just need to tackle recursively. Recursion is very useful because it allows you to tackle problems of indeterminate size that have the same property. How would I search a nested list with loops? I would need to know the depth of nesting (I would, maybe there's a solution someone else has where you wouldn't), while in recursion it doesn't matter the depth of the nesting, whether it be 2 nests, 5 nests, 10000000000000...., etc, recursion could handle it the same way and that's very useful.

Assignment 1

This week Assignment 1 was due and I found some aspects of it very challenging. I had been haphazardly learning the material in the course and during Assignment 1 I realized that I would have to take a much more structured and intensive approach to the work. I enjoy programming but I find the syntax occasionally difficult to remember also I worry about my approaches to problem solving. For example on the move method for Assignment 1, I thought of several ways to solve it but all these solutions seemed big and cumbersome. So I kept trying to find another approach, one thats line count wouldn't be so massive. At a certain point I just decided to write my solution and then look through it to eliminate and redundancies and superfluous code, that was a challenge as well. I worry about the exam next week because I'm sure I'll have to handwrite code and I've relied quite heavily on the IDE for syntax, I'll just do my best.