So my last two finals are tomorrow and this semester is just about all wrapped up. The final Unix project ended up being a lot messier and uncoordinated than I had expected, but, somehow two different games were spawned out of one group. It seemed like everyone was too afraid to step on each others’ toes to get anything done before the last few weeks, and by that time, it was just “hurry up and get it done” instead of “lets sit down and coordinate a plan of attack”.
Its been a very busy semester that kind of left me dreading the upcoming semester, because I can see my GPA slipping steadily downward as the material gets more complicated and the expectations are raised. Fortunately I have a few weeks to recharge and see my family over the holidays. Hopefully I come back to VT feeling refreshed and motivated for whatever comes my way next semester. Happy holidays to anyone that ends up reading this.
I wish I could have turned something in for the process-object assignment, but after 5+ reads through the homework specification, I’m still not completely sure what I was supposed to do. I spoke to a few of the other students in the class and they all seemed to be having issues getting their program to work correctly. Every time I try to string something together to turn in, I either lose track of what I’m supposed to be doing, or I get nothing but segmentation faults.
The assignment assignment was a little more fun. When I’m trying to teach, I basically just tell people what my understanding of the truth is, along with any tips or tricks that I’ve picked up in my experience on the subject. Any assignments that I would give, as a teacher, would be simple and easy reinforcement of the subject I was trying to convey to the student. It’s a lot more complicated in college courses, where the material to be taught is inexhaustible and the time to teach it is practically no time at all. I imagine that being a college professor is an exhausting and thankless job.
I thought I was having trouble keeping up with everything before Thanksgiving break. It seems like four weeks worth of work has been crammed into the two and a half weeks after Thanksgiving break, and it isn’t a comfortable fit. I wasn’t able to come up with enough words to approach the 3 page requirement of the futures paper and I don’t really know what commands were required to enter into the makefile to do all of the conversions required either. The final project is progressing slowly because everyone in my group, myself included, is getting flooded with work from other classes. I just need to keep on working and hit the deadlines as they come.
I wasn’t expecting to have to do much writing in a class called intro to Unix, but I did have fun with the haiku and limerick assignment. I’m having a little bit of trouble getting enough thoughts and research together to finish my futures paper, but I’ll definitely turn something in by the end of the late submission week. I had a very relaxing Thanksgiving break, but I have a feeling that I’m going to regret taking so much time off with all of the impending due dates within the next couple of weeks. I just hope I can get my group together to really get the final project rolling before we run out of time.
It’s been pretty quiet in terms of Into to Unix assignments over the last few weeks. Other than the reading and some more Python practice, the only thing I can remember writing is a Makefile to compile and clean up a few source files. I had never heard of bison or flex before that assignment, but they seem like pretty useful tools. I think I was able to handle the assignment well enough. I just broke the required object files into their required source files and generated those that needed to be generated by bison and flex in additional targets.
I’m starting to get a little nervous about the final project, as one of our group members doesn’t seem to be responding to e-mail, but we still have enough time to work around him if absolutely necessary. Looking forward to Thanksgiving weekend and hoping that I don’t get bogged down by too much work to enjoy myself. Speaking of which, I need to finish up a 3574 program and study for another electronics midterm.
I’ve been super busy over the last couple weeks, but things have started to chill out a little bit this weekend. I wanted to take a little time to go back and write about some of the things that I overlooked in my last post.
After a quick look at the syllabus, I realized that I had an extra week after the deadline to work on homework 4 with only a 10% penalty, but instead of taking the time to check, I just assumed that if I didn’t get it in on time I would be out of luck. Instead of using an hour or two of that time to finish up the homework and get an extra 10 or 20 points, I decided to go on to another assignment for another class. I’ve been struggling a bit with Python, but thankfully its not too much of the final grade.
The midterm didn’t end up being so bad. I had some issues trying to figure out what to type with the sed command to replace whole words that ended with le, but the rest of it was pretty straightforward.
I’m pretty excited to start work on the final project. We managed to get a group of 4 together, but we still need to set up a plan of action. I’ve wanted to work on games for a while, and this will be my first programming project with a team. Hopefully the rest of my teammates are as interested in the project as I am. I guess time will tell.
My Intro to Unix midterm is coming up this week, but I’m not all that worried about it. I haven’t really had time to do a whole lot of the reading for the class with all the projects whizzing around this semester, but I’m relatively confident in my exposure level to the bash terminal. After trying the practice mid-term, there was only one thing that I couldn’t figure out how to do. I don’t think I’ve ever made a .sh file and I’m not really sure what to put in to one. I started out typing python, then gave matlab a whirl for some reason, and finally just skipped it in favor of the .py implementation in the next step for lack of time. In hindsight, it’s probably the same as just typing commands in as you would in the terminal. I’m still not really sure how that would work with an argument though, maybe a pipe? Ah well… I’ll figure it out eventually. Time to do some micro programming.
Over the past couple of weeks I’ve been doing a bit of programming in Python. My first impression of Python was that it was pretty easy to learn and intuitive. After spending some time messing around with exceptions, file input, and argument parsing, I’ve realized that Python is going to be a little more difficult to learn than I had expected. The documentation that I was looking through for argparse was very hard to follow and I couldn’t seem to figure out how to get positional, optional, or multiple input file arguments to work correctly. This weekend is 3574 project time, but hopefully I’ll finish in time to catch up on the Python exercises and get back on track for next week. I’m a little worried about the next assignment coming up, but I’m confident things will turn out OK.
Today in my Unix class we broke up into groups of 5 and discussed 35 different Unix commands and their options. Each group member was assigned 7 commands to do research on and present to the rest of the group. I think this was a good way to introduce everyone to some of the more common commands without the instructor listing them off, one by one, and explaining how they work in a lecture. I now have a basic understanding of all of the commands that were covered by the other people in my group and a solid grasp of the commands that I was assigned. I think I probably went a little overboard with the amount of information that I took down for each of my commands, as some of them had a very long list of options.
I’m not really an auditory learner, so the less lecture time I have to sit through, the better. The quick descriptions that were given of each command during the group exercise were sufficient for me to take a few short notes, but not extensive enough for me to get bored. Overall I think command school was a success, even if I was left wondering about some of the commands. The most important part is that I know where I need to go to figure out what I need to know.
So I’m taking three software classes and two hardware classes this semester. I’ll be learning Ubuntu in my Unix and Software Design classes, along with Python, C, and Qt in Unix, Micro, and Software Design respectively. I’m not worried about my hardware classes (Electronics and the lab that goes with it). I’m going to do my best to make sure I don’t get overwhelmed early in the semester and try to keep up with the assignments.
So far Ubuntu seems pretty easy to use. I grew up using DOS, so it’s not a huge jump from using dir and help to using ls and man. I’m actually looking forward to learning more about Unix and I’m considering eventually switching my desktop over. If I don’t get too bogged down by all the programing, this semester could be a lot of fun.