Saturday, April 28, 2012

Four Minutes to Remember How Small We Are



Sorry the sizing doesn't quite work out. So, you may have asked yourself "What would I do if I were stuck on the International Space Station for weeks at a time?" The answer, apparently, is make wicked sick time lapse videos in order to remind us of our own mortality. Four minutes-- probably worth your time. Give it a look.

Friday, April 20, 2012

Live Blog From CSII

12:33 PM- Hey, this is Chris Thatcher here, live blogging my own attempt to stay awake through a whole class of CS1410. I have fallen asleep in class each of the last six times I have attended. My goal for today is to stay awake for the entire 50 minutes of class. I have come to the conclusion that taking notes during class doesn't quite do it for me. I am therefore live-blogging this event. Wish my luck.

12:34 PM- Looking at binary trees. Now we're talking about typedef- this is important, I should pay attention. Hmm, typedef

so, typedef Node* Nodeptr; // This means that we can use Nodeptr to refer to Node*. So, more convenient I suppose.

12:37 PM- I gave myself a haircut last night. I think it turned out alright, but not great. It's a lot easier to cut someone else's hair than it is to cut your own. It's pretty apparent that I didn't get everything even. I think I'll probably fix it up tonight. Question: What's the difference between a good haircut and a bad haircut? Answer: about a week and a half. Well then, friends, I'll see you in about a week and a half.

12:39 PM- Our assignment for this week is to make a learning binary tree. I don't feel like it should be too difficult- chances are I'll need lots more time than I anticipate. It always happens like that. It's basically a linked list, just a tiny bit more complicated. I think I can make this work.

12:40 PM- Quick laptop check around the room performed by yours truly: Girl to my left was just on canvas checking her calendar. Guy in front of her is checking Google+ (he's not a Facebook man, apparently). Guy to my right is coding in some IDE I don't recognize. Distance operator is on Facebook. Guy on far left is in Visual Studio taking notes, good for him. I'm in the newly redesigned Blogger typing a post. I will say that I highly dislike Google's new trend of using buttons without text. I love to hit the button that says "New Post". I despise having to mouse over three different buttons to see the tooltips before I know which new textless button means new post. I just see no advantage to using textless buttons. How many illiterate people are going to be writing new blog posts? Are we really trying to cater to the illiterate blogging population by making the interface more accessible to them? As I wrote that, I realized that this might make life easier for translation- if you offer this service to users in Spanish as well, you no longer have to translate your button's text. Only issue? Still need to translate the tooltip, so no real gain made. I don't like how gmail now uses images instead of text for buttons. I'm a text man, dangit. I didn't learn to read for nothing.

12:45 PM - Professor just mentioned that what he had just written on the board would be on the final exam. I failed to copy it down before it got erased. Alas.

12:46 - I decided to stop typing and pay more attention for a bit. That led to me getting drowsy. Yeah, that took all of 1.5 minutes to happen. Could be a long class period. You know, it's not that I don't love this class, because I really do. I love CS. I think the problems we are solving right now are awesome. I really like this professor's teaching style. So it's not boredom- it's just plain out sleepiness.

12:49 - Okay, the professor is pretty much coding the whole assignment for me. So I'll take some quick notes

I wrote some code here, but didn't really want that showing up in search results. It is now in a text file where I take normal class notes.

Now we're using a binary tree to do some binary searching. Coolish. Mmm, I want to go to Betos.

12:51 PM - Now he's mentioning stuff that we learned last time. I must have been entirely asleep for that part. My bad. Thank goodness for good books that cover the same material.

12:57 PM - I am a huge proponent of mice over trackpads. I do not love trackpads. My speed is greatly reduced when I'm restricted to the track pad. I see *tons* of people using the trackpad as their primary device on campus- even when they're at a place where it would make sense to use a mouse. I see roommates do it in the apartment. I'm grateful that trackpads exist. I'd choose a mouse with bad breath over a trackpad with a 10 dollar bill any day.

1:02 PM - There's a couple in this class that always cuddles during lecture time. I'm glad that's not me. Not because that wouldn't be fun, but because I don't think I would learn anything-- I'd be far too distracted. Not sure how they do it. They both appear to be doing well in the course. Then again, I sleep through lecture and am doing alright in the course, so to each his own and all that.

1:05 PM - Update: the kid who was checking Google+ earlier is now checking Facebook. I guess he's dual wielding his social networks. I wonder which one he prefers. I could spend the rest of the semester taking careful data on how much time he spends on each one during class, but that doesn't sound like much fun. I'd probably fall asleep before I got any good data.

1:07 PM - Today is definitely a fast food after class kind of day. I wonder if I will find someone to go with me or if I will go eat by myself. People are always very friendly when you go get a burger by yourself. I think they assume that you are trying to drown your loneliness in food. It's not so much about being lonely as it is about eating delicious food. Toss up between Carl's Jr. and El Sol right now. Learning towards Carl's, just because it feels more like a Carl's day than an El Sol day.

1:10 PM - I'm quite glad I'm staying awake today. I'm learning a lot.

1:13 PM - Note to self, I will certainly need extra time to debug this assignment when I get to writing it. Don't let me procrastinate starting it, okay? Thanks.

1:14 PM - Great news! Only six more minutes and then I will have stayed awake during the whole class. w00t!

1:19 PM - I made it! Score! Now I'm off to do some grading. Everybody loves grading! Thanks for sticking around for the live blog. Much love y'all, have a great Friday.

1:25 PM - Upstairs now, but the office I'm supposed to occupy (#OccupyTheGraderOffice) isn't available for another five minutes. You, my loyal readers, are therefore awarded two free rambling thoughts.

#1 -> It's tradition on campus to wear your game day Tshirt to school on Friday. I think it stems from the fact that we have football games on Fridays. It's not at all uncommon to see people running around in their navy blue shirts on a day like today. Since it is nearly laundry day, I too am wearing the game day shirt. I am always tempted to be totally obnoxious on days like today. Whenever I see a girl wearing her gameday shirt I want to go up to her and make a big old deal about the fact that we are wearing matching shirts. "Oh my gosh, we're matching! That's so incredible! I can't believe this! What are the odds? Wow, how did you decide to wear this shirt today? That's so weird- it must be destiny". Yeah, I've never actually done that, but I imagine it'd be a good time. Put that one on the list of "stupid things I feel like doing but hopefully won't ever do"

#2 -> There's something fun going on outside on the quad today. I'm not sure what it is. I probably won't visit. But it looks fun. I bet I could score some free food if I went. Hmmm. I may just change my mind. We'll see.

Well, it looks like I can go make my political protest in the grader office now. I'm not sure what I'm demanding, but I'm pretty sure that will just help me fit in with the rest of the disgruntled crowd. Word.


Sunday, April 15, 2012

My Week as an English Major

April 15, 2012. Last night I stayed up all night programming for Google Code Jam. It was the qualifying round, and you needed 20 points out of 100 to move on to the next round (okay, so the bar was set low). I scored 45/100, and my buddy Dallin got 60/100.

I recognize that the chances of me getting out of the next round alive are slim-to-nill. I'm not competing in this contest to win- I'm competing in it to learn and grow as a person. I want to be an excellent programmer, but I know I'm still a total noob. The way to get better, I figure, is to consistently work on it. So that's what I'm trying to do- throw myself up against problems that need to be solved so that I can get better at solving them. The problems I solved last night were trivial, and it took me an embarrassingly long amount of time to solve them. But the truth is, that's okay with me. You better believe I'm going to do much better next year. And that's why I do these things, because I know that my actions today are going to affect my abilities tomorrow. I'm super stoked that I live in a world where I am able to pursue my dreams like this. The great news is that there are resources available. If you want to get better at something, chances are you can find a way to do it. I like having things to work on.

I watched Much Ado About Nothing yesterday with a great neighbor of mine. I had completely forgotten how awesome William Shakespeare was. That guy had serious moves. He was a true master of his craft. It was awesome to see a good play put on by very good actors. Sure, there are flaws to it, but it was a great moment for me. For some reason I had forgotten that the world wasn't made up entirely of amateurs. We get so very used to the mediocre. Yesterday it was great to see (arguably) the best playwright ever's work put on by (pretty great) actors that got paid a whole lot. I loved his writing. It reminded me how much I love English in general. I am not an English major, but I feel like there's a portion of me that would like to be. I remember how much I wrote in the past and how much I loved doing it. I remember how much I loved reading and analyzing. There's a huge part of me that just loves that stuff, but I don't get to express that part too often. It was good to let the English major inside of me out for a while.

I haven't had much homework this week. It has led to more free time, more social interaction, and in general a wider-range of thought and consideration. My thoughts and energy haven't been funneled entirely into homework of only one variety. In a way it feels like a historical trip to the past. Back in the blessed days of high school we learned about so many things at once. All of public schooling was designed to teach us a wide variety of important things. In college we're allowed to specialize. But just because I'm not studying History or English or Choir anymore doesn't mean that I don't love them and want them to be part of my life. Let's be completely honest, I read an article in the Atlantic and Kayne West and Jay-Z two nights ago just because I wanted some more variety.

I don't say this in any way to indicate that I am dissatisfied with my studies- I am super happy with my studies right now. All I'm saying is that we as people are so much more than what we study. We are so much more than what we choose to do for work. I can't let that define me. Being good at math doesn't mean I'm a poetic retard. Being a decent programmer doesn't make me socially inept or incapable of dominating a public speaking assignment. I suppose that I had gotten into that mindset earlier. It's nice to be out of it.

So, here I am, with three weeks left in the semester: loving life. I'm not sure how these three weeks will turn out. I'm sure the relative calm of this week will be replaced by the tornadoes of bookstore work, grading, assignments, tests, and the horrific experience that is moving out of an apartment and passing cleaning checks. There will be academic-all-nighters (Year to date: 3), a few dates (oh I sure hope so), the freedom and splurging that comes at the end of finals. I'm sure it'll be a good experience.

It's strange to confront such a finite range of time and recognize how important it is. Three weeks, that's all. Understanding that the people with which I've been in close proximity for nearly 8 months will all be gone in three weeks means that if ever there was a time to try to make friends, it is now. Procrastinating this one for more than 21 days will likely mean that the opportunity is gone. Academically speaking, despite the hard work we've all put in over the past 11-ish weeks, we could toss it all away if we stopped trying right now. So many things will change over these next three weeks. The really strange thing for me is that I know there will come a time when I will look back on those three weeks and know exactly how they went. I'll know which games the Utah Jazz won and which games they lost. I'll know which games our Ultimate team has won and lost-- I will likely know the contributing factors to the outcomes of those games. I will know what my final Java project ended up being, and I'll know exactly what was on the final in CS 1410. Right now all of those things are unknowns. Knowing them would certainly help right now.

I guess what I mean to say is that the future isn't written and that my decisions are going to change things forever. As terrifying as that is, I know that that's how things have been going since the beginning. Who will I choose to be for the next 21 days? Surely my decisions will impact the kind of person I am at the end of these three weeks. Who will I talk with? In what will I spend my time? It's all in the air. With what are clearly unclear consequences for every action, I am chronically stepping into the future and shaping my destiny as I go.

Is this terrifying? I'm not sure yet. It is at once empowering and staggering. Is there some predetermined outcome that, if not reached, will be considered "failure"? Or is this simply the freestyle section of the dancing game for the Kinect, you know, where you get to dance like a maniac for no good reason and then you see the sped-up video of it afterwards? Is there something I'm "supposed" to be making of myself, or is this simply a time to make of myself what I wish and then to live and thrive with the results? I tend to believe that it is the latter. When you start an RPG you make decisions about which class you will play and which abilities you will develop. Those choices are not meant to punish the uninformed, but rather to enrich the experience. I feel like that's how we are now. We're choosing who we'll be. The abilities and characteristics that we choose to develop now will certainly be with us for the rest of the game. We will use them, repeatedly, the beat bad guys and further the story line. At the end of the day, I hope to use them to rescue a princess. But the truth is, I could rescue the princess as a sentinel, soldier, or engineer. My choice to be a sentinel doesn't mean that's the only choice. I suppose that the most important thing of it all is that we make the most of the choices that we do make. If I am going to be a sentinel, I better be a dang good sentinel. Go big or go home.

Only 21 days remain in which I can make choices as a student during Spring semester of 2012. Roughly 100 or so days have already passed- my choices have brought me precisely -here-. Where will I be in three weeks? Geographically speaking, I'll be back at home, 90 minutes away. I'll likely be sitting at this very keyboard, typing on this very blog. But the person I am will be different. I'm hoping to be a better version of myself by then. I like remembering these things. They're not new thoughts. I'm sure you could find a nearly identical post somewhere in the archives. But it's important for me to remember them so I can keep them in perspective. It's important for me to write and use big words. I do enjoy the person that I am becoming. I'm happy to be where I am, and I'm grateful for all the mentors and friends that have helped me get here. I certainly wouldn't be who I am today without the great help and support of those around me.

Well friends, this pseudo-English major is headed to bed. Thanks for sticking around. Y'all mean a lot to me. I hope you're doing well and that life is treating you great. Things are rough sometimes, but that doesn't mean that things aren't okay.

(8) There's a reason for the world-- You and I (8)
(The Riddle - Five for Fighting) (and yes, I did just use the old MSN messenger emoticon key for the 8th note)

Sunday, April 01, 2012

This Nigerian Prince Needs Your Help

I have loved getting involved with the Computer Science department at Utah State. The department has been running a cool project for the past several years where they document all the bugs that commonly face beginning CS students. We've been doing some fairly aggressive data mining this semester in order to help beginning students not hate the major so much. Unfortunately for everybody, CS has a pretty high attrition rate. A sizeable percentage of students that start out as CS majors end up changing majors in the first three semesters or so. This would be alright, except for the fact that there is a huge demand for good developers in the country that is not being met. While I'm not exactly sad about this (high demand means high pay, assuming I can be one of those talented developers), we are all trying to do our part to stop the bleeding.

The department asked a few students to record a short video explaining why we decided to study CS and why it is pretty much the coolest thing since sliced bread. The idea is to make these available online so we can steal people from the Engineering majors and other related lameness. They told us to make the videos jargon-less, that is, so anybody could understand.

So, I'd like your help. I think I did a decent job, but I'd really appreciate if y'all could give my video a look and tell me what you think. I promise it won't go over your head. If by the end of it you don't want to change your major and study CS, well, I'll be a monkey's uncle. Thanks y'all :) My video is the third one down on the page.