Sunday, May 3, 2015

And they're off!

Hello Familia,

   I'm sorry for not updating everyone last week but things have been a little crazy and some Sundays I need more recovery than others. I am cautiously optimistic about this semester as I am loving it so far and am only mostly overwhelmed so far. Through no intention of my own, I ended up with a course load of 14 credits at school (to be eligible for the small scholarship I was offered) yet somehow things don't seem quite as difficult as they were last semester. The weather has been great out in Rexburg, if not a little too warm. I find myself sweating by the time I get home for a lunch break. The weather still dips low and gets cold every once in a while but thankfully snow isn't really part of the picture anymore. Here's my first update from the Spring Semester.



Technical Communication (CS 308)


   This class still has me a bit puzzled because I'm not completely sure what to expect but so far we have spent a lot of time talking about employment skills. We have talked about good job-searching skills, good interviewing skills, and how to create a good resume. All of this is a great review and useful information but I am not really sure what else the course entails. I know that it will start to require more work outside of class fairly soon but it's still a bit of a mystery for me.


Front-End Web Development (CIT 230)



   This class has mostly been focused on getting ourselves set up. This involves installing software on our computers to edit web documents and transfer those documents between the server and our local machine. The software we are using to edit and upload is called Netbeans and the software that we use to download and synchronize documents is Filezilla. My impression is that much of our learning about actual HTML and PHP coding will be learned by reading from our book but the pace of the class is fairly comfortable so far. As a requirement for the course, I purchased a web domain where I will post my work for the course. I was asked to decide on a type of web site which I would like to create over the course of the semester and opted to create a professional portfolio for use in job-searching. I'm still a little uncertain of what content I can put there but I figured that I could speak with my previous instructors for input once I had the website framework established. I am now the proud owner of jonathanokleberry.net.

*A side note about this class, this class is on the 4th floor and that seemed to be a bit of a nuisance for me at first but then I saw the view. Outside the window I have the pleasure of looking at an unobstructed view of the temple. It can be a sight for sore eyes some days and that view made the climb worth it for sure. Here's a picture from roughly the same angle that I see it just much closer and at night.

Data Structures (CS 235)


   This is the continuation of my C++ learning and is quite challenging. At the recommendation of a classmate, I opted to take this class online because someone he knows has tried both in class and online options for the course and found the online to be a much better option. Thankfully I am able to work alongside a previous classmate and to benefit from better focus in the process. My first week didn't fare so well but this week went much better.

Family Foundations (FDREL 200)


   This is my last required "foundations" course for my degree at BYU-Idaho. We have started off with a lot of discussion about how important the family is but will soon begin discussing topics related to being a good parent such as finances and interacting with a spouse, etc. I actually really like this course even if some of the work seems a little like busy work. Every 2 weeks we meet with other classes on the same topic and have a large group meeting and discussion.

Social Dance (MUSIC180)


   I needed one more credit to reach full time status as a student. When I was putting together my schedule last semester I made a list of courses that I might like to take if I needed a credit or two and the courses for my degree didn't make as much sense (such as creating too heavy a course load). Well, I'm not going to lie, I did look into archery before this class but that one apparently fills up within hours of registration opening. This was a perfect fit, a single credit course that wouldn't have any homework and would actually balance out my studies with something physical and something musical. I was excited to start this class and have been loving it so far. One aspect of the class is that there is a big emphasis on learning your dance partner's name. I've only been in the class for 2 weeks and I know more than half of the girls in the class by name now. It's even more fun when I see them outside of class somewhere such as ballroom dancing on Friday nights (which I coaxed my roommates to join me for last Friday - it will definitely happen again). I have made more friends and connections in the last 2 weeks than I had over most of the previous 2 semesters. I am grateful to my friends (Kira, Natalie, and others) who would take me out dancing with them back home because I have had more than one dance partner mention that it was obvious that I had "done this before." It has been good to review moves with the Foxtrot so far and to begin learning swing as a group. I may need to learn the specifics of Swing because I might have incorrectly labeled some swing as East Coast that might have been more along the lines of Lindy Hop. I'm excited to become more proficient. For now I have learned the following:

Fox Trot:

The Basic
Left Rock-Step
Right turn
Promenade
Promenade Arch
Swing Step

Swing (Single Step?):

The Basic
The Arch & Loop

*I am loving this class and have enjoyed a side-effect. I can now flesh out my music playlists with new songs for each style of dance. For instance, the Pink Panther theme works well for Foxtrot as well as "Down" by Taio Cruz. I stumbled across a good website for this too: http://www.promotedancing.com/home/index

Group Vocal (MUSIC 108)


  After reaching my 12 credit full-time status I found out that I was eligible for some scholarship. This was not the full-time scholarship I was hoping for (there's a bit of GPA inflation here) but I knew that I would still be better off financially to take on the 2 additional credits that are required for academic scholarships. It was really just a matter of whether I can handle the course load but I opted to take the leap of faith. I looked at my list of "filler" classes and opted to take a vocal lesson course. I was starting the course a week late because I wanted to think over the decision so I was playing catch up once Monday hit. So far I am really enjoying the class and have a bit more faith in my potential as a singer. My instructor was testing my range by having me follow notes on the piano and we were both surprised at how long I could follow as she kept playing higher notes. For the course I will learn and perform 3 songs and 2 of them are from a textbook. I opted for "Fields of Gold" by Sting and "Puttin' on the Ritz" for my textbook songs but I have spent a fair bit of time just trying to figure out my third song. If I can find a good fit, I thought it would be appropriate to perform one of Dad's favorites as a tribute but so far I haven't found that song and have felt pretty good about others so we will see. I have actually enjoyed spending a bit of time in the practice rooms on campus because it provides me a space where I can just belt out a few notes and not think about anything else for a while- it has been good therapy. The expectation for this course involves a weekly writing assignment (less than a page and hardly structured) as well as 30 minutes, M-F of vocal practice outside of class- that's it.

The Rest of Life

   Aside from all of the schoolwork I have had a bit of fun and been out of the house. One funny thing about my schedule is that I don't have any 2 classes in the same building so I have a lot of time to walk around and enjoy the good weather. Aside from that, my roommates and I excitedly awaited the release of the Avengers: Age of Ultron and and pre-orderd our tickets for a show on Friday. In celebration, we watched the 2nd Thor and Captain America movies as well as the first Avengers movie. My former roommate Jeffrey has been over every day this week and instigated the movie watching as well as hours of games so the apartment has been a lot louder this week. A big thank you to Jake for the noise-canceling headphones. In addition to all of that, I (alone since my roommates ditched me) attended a speed-dating event. I didn't have any amazing connections but I exchanged phone numbers with a girl from Washougal, WA to see about going on a hike some time or maybe dancing. The nice thing is that there is several options for dancing. Wednesdays there is Country and Swing dancing while Friday is Ballroom and Latin. There are other options off campus too like Blues dancing though I think that style resembles West Coast Swing but I'm still a bit ignorant of the style. Other than all of that I'm just trying to keep up with the work and keep up my sanity. So far it is not a terrible balancing act and I remain cautiously optimistic about taking on the 14 credits ahead of me. Miranda and I still keep in touch and are back to exchanging letters again so that is a plus. She will have been in the mission field 6 months as of the 5th so that is a major milestone. She will be returning in about a year- a crazy thought indeed. I hope you all are well and enjoying life.

P.S. I believe there is a way to comment on my blog posts so feel free to ask questions, make comments, etc. there or via Email. I didn't necessarily mean for this to be a one-sided update but a solid attempt at keeping everyone up on my student life. 




Sunday, April 19, 2015

Back to School, Back to School...

Hello Familia,

   Sorry for the delay on an update, I was a bit more preoccupied last week than I had expected to be. Seeing as I was not in class, I won't have any new concepts to share from classes so this will likely be a shorter post. My original plan for my break was to take a friend up on his offer to hang out in Boise with him. That plan fell through at the last minute (about 12 or so hours before I was supposed to leave) so I was pretty much stuck in Rexburg for the week. One of my roommates was already planning on staying here over the break so it's probably a good thing I was here. He was "bored" pretty much every day of the break so I took time out of my planned activities to play a video game or two with him or to watch something on Netflix.

My week mostly consisted of the following activities:


  • Playing Halo: Reach with my roommate Brady
  • Starting to read a book that I purchased after the "Power 2 Become" conference my first semester at BYU-I. One of the speakers had written the book and I really liked much of what he was saying so I bought his book and was waiting for the time to read it. I got about a quarter of the way through the book but it's something. The book is called "Today I Begin a New Life"
  • Resuming a game I had started and completing it. Nothing too special, just a Spider-Man game where you get to play as different Spider-Man characters from different comics (one from the 1920s, one from the distant future, etc.) Spider-Man: Shattered Dimensions.
  • Digitally archiving assignments and exams from last semester into PDF files using my scanner.
  • Filing an application for an academic scholarship (so far it looks like I was approved for some tuition cost but there' definitely still some confusion about it).
  • Watching the Netflix TV series "Daredevil" with Brady (we both found it addictive but it was a little heavy on violence or gore once or twice)
  • Playing a bit of Rocksmith on my X-Box. For those who don't know, this is a game where you literally plug in a guitar to your game console and learn how to play a song on the guitar. When you finish, you can unplug your guitar and play the song just as well as you were when you were playing the game- assuming you can remember what you were playing without visual cues. The Song I played the most was "Don't Look Back in Anger" by Oasis.
  • Handwriting a letter to Miranda (we had a bit of a gap with letters after Christmas) as we both enjoy getting them even if we receive Emails every week.
  • Attending a few activities out of the house as they came along (I'll mention those separately).


Final Grades


   I may have mentioned where my grades were at before but I had to wait until Thursday to find out what my official grades are for the semester. Here's what my grades are for the semester:




   I was hoping for As across the board (never wanting to shoot low) but considering how hard the semester became, I'm satisfied with the results. I hope that I can avoid another digital systems course in the future but I may have to take one more. I'm not sure yet. Here is my schedule for this coming semester's courses:



   Sadly I am already feeling overwhelmed again but we'll see how things develop. I was Emailed by two separate instructors already, requesting that I read material before our first class on Monday. That definitely put a damper on the last few days of my "break" and the material looks challenging but I'm reserving panic for at least a week or two ; ) Suffice to say this break has seemed too short and I'm reconsidering whether I will take a full course load during my offtrack rather than working and possibly taking a single class to keep focused. On the bright side, I will have a social dance class next semester so I can loosen up every couple of days... hopefully.



This Week's FHE


More songs around the campfire at Eagle Park
Songs around the Campfire at Eagle Park (Brady on the left)




   Most of the student wards evaporated almost overnight so Brady didn't really have any activities this week. I offered to have him come along to my ward's Family Home Evening for the week. We ended up taking advantage of the good weather and singing songs around the campfire. I really wasn't playing for very long because I don't know many songs at full length but Brady played songs for quite a while and the group started to pull up lyrics on their smartphones to sing along. It turned out to be a lot of fun and Brady ended up with an admirer before it was all over.





























Other Activities


   The very first day that it was just Brady and I at the house, I joined him at his ward for church. There were only 15-20 people present including the leadership. That evening I had been invited to a waffle party by my friend Chelsea. She started our ward on a somewhat irregular pattern of waffle parties that has been kept up for 4-5 months now. This was another of these events and included a lot of sitting around and socializing- sometimes with food in hand.

   On Wednesday night, Brady and I opted to attend an institute class at my church building. The topic of discussion These classes have occurred every Wednesday since I moved here but I have not had time while studying to break away for an evening. It wasn't much but it was a good excuse to get out of the house for an hour and there was some free ice cream provided afterward so it worked out nicely : D



   Sorry if this week is a little uneventful but I'm sure I'll have plenty of learning to share next week when I start the headache all over again. I love you all and hope that you are doing well!

Monday, April 6, 2015

The Final, Finals Week


Aloha Mi Familia,

    Things are a little bit crazy as of late but I must say that finals week is looking a little lighter than I had expected. I have a final project left in my Digital Systems class as well as a homework assignment and two final exams (one group, one individual) in my C++ class. Otherwise all projects and Exams are done for the semester. The exams should be quite difficult and the final project is definitely going to be a struggle but I'm glad that I'm at least down to two classes for the next few days. Over the week break, I will be going with two of my former roommates (Jeffrey and Glenn) down to Boise and spending the time there before coming back for the Spring semester.

   This weekend was also general Conference for the church so I spent about 8 hours listening to broadcasts from church leaders on various topics. I was tired enough that I slept through one session of the conference but otherwise listened to the majority of the other 4 sessions. I took several notes but not as much as I usually do and I've got a lot to think over after hearing the messages.


ECEN 160 Digital Systems

   This week has been primarily focused on two major items. First, I spent about 6-7 hours studying for our third exam. We don't technically have a final exam for this class but this Exam was definitely the most difficult. I spent over 2 hours in the testing center and walked away with a 73%... It was rough and I actually felt a little over-confident when I submitted my exam to be scanned in for a grade. At least it is behind me. That's all I can really say about that. The second item was to make headway on our final project. There is likely to be many hours of confusion outside of regular class time, trying to get the project to work in our two design programs (Logisim and Xilinx). It is always hard to tell just how close we are because one issue can hang us up for hours but we have made some good progress during our class periods this week. There was, of course, a homework assignment wedged into our work this week as well but that is really minor compared to the Exam and final project.

CS 165 (Object-Oriented Programming in C++)

New intro screen with instructions

  Well, the day had to come. I submitted my "final" asteroids game for grading in my C++ class. It wasn't too terribly different from what I demoed in last week's blog but I did make a  few changes. At about 1:30  in the video that I shared last week there was a glitch where two red lines would be drawn across the screen whenever the ship was trying to wrap from one side to the other. That glitch is fixed in the current version / final submission of the assignment. I also added some instructions for new users and some minor code changes that allow me to test the software differently.







What level "2" looked like on April Fools Day
   As an example, I added a Constant variable (unchanging) that dictates how many levels are skipped between rounds. Naturally the default is to increase your level by 1 when you complete a level
but I decided to try skipping to level 1001 after completing the first level. The game slowed down so much that I never did seem my ship come back when I died. I reduced the delay on respawning and was able to actually beat level 1001 after several minutes. Level 2001 was another story. I had a sneaky idea (in the spirit of April Fools day) and decided to have my roommate test the program again- this time with the jump from level 1 - 1001. We had a good laugh when he played it : )










CS 371 (Human Computer Interaction)


Previously Submitted WMP Skin











Final WMP Skin Submission




























Usability Study work leading up to the final version of the project

The usability Study that I conducted (for someone else's media player skin)

The usability study that someone else conducted (on my media player skin)


Submitted Windows Media Player Skin

Windows Media Player Skin "Highlights"

 Response to Usability Study:

Final Specification For WMP Skin "Highlights"

   On Thursday morning, at 8 AM, I took my final for HCI. The final was a composite of all 6, 15-minute exams that we had taken over the course of the semester and we had 90 minutes to take the test. I was writing on the exam right up until my instructor said, "2 seconds left" and I threw down my pen, rather than continue writing. I'd say that I covered about 5 pages with hand-written notes and drawings by the time that the final was over.

*Update on the class, I received my grade for my final exam, I scored 88%! I must say, I was hoping for something a little higher but this class has been one of the hardest in my educational career. Considering I scored 9% on my first exam and had an F in the class for a while, I don't feel bad about my current B+. With any luck, my final project submission will bring me up to an A- but I'm not counting on it at this point. In any case, this class is done and I am just trying to wrap up my other two classes well.


Tech Products:

   So... Not everything is all about school and I do find a few moments now and again to catch up on new tech. Here are some things that caught my eye. The first is yet another take on how to provide a simple, cheap, and effective electricity solution to places that stand in need. The second is similar to an Apple TV but for video games. You have your computer elsewhere in your house and you put this little box in your living room so that you can play games from your computer without having to move the computer. The third is essentially a Chromebook / Chromebox but in a "stick" format. Basically it is a very light and efficient computer that is now also very small and even less expensive. There is also a lot of news about Android apps getting added to the Chrome OS (operating system like Windows or Mac OS) so that there are many more options for how you can use Chrome devices.

Life Improving (The kind of thing I'd love to invent some day)
Gravity Light

For Fun
Steam Link

Curious to see where this goes
Chromebit


   I was trying to think of more to add but I got the majority of my week in the notes so hopefully this is a fair update for you all. I love you and think of you often. I hope that everything works out so that I can join the family for a reunion this summer : )


Sunday, March 29, 2015

Caffeine, Cops, and C++

Familia,



   What a week this has been. Things are getting quite busy though not quite as soul-crushingly overwhelming as I was expecting. This week I donned on me that one of the reason that school is so hard here is because the semesters are shorter but the amount of material per semester is comparable. I think semesters are 4 weeks shorter than the standard at BYU-I and I've heard many times that semester credits are harder / more valued than quarter credits. I have one full week of classes and then a partial week for finals ahead. Over the remainder of that week of finals, and the one week break, I will join two of my roommates (well, technically they were last semester but they are pretty much still considered roommates) in Boise. It sounds like I'll have a room all to myself while I am there and a ride both ways- which is always nice. This week has been very strange but especially the weekend. For now, I'll just get into it.




Burial Mound Pizza
Triangle Pizza

FHE (Family Home Evening)


   This week's Monday night activity was to make home-made pizzas. We met up at the church and split up into 3 groups. We were handed a bag of supplies and assigned a house where we went to create a unique pizza to share with the group. The rules were, no circle, square, or rectangle pizzas. The most unique pizza wins. Well, the ending designs were definitely unique. One group made a pizza that was stretched at the corners and I was told that it was a bear-skin rug. The other group made a triangular pizza that resembled a calsone. Our group won though : )


   The process of choosing a pizza design was a bit haphazard but we went from a triangle pizza shaped like the tri-force (See Zelda Games), to a sphere pizza with two halves put together, to covering a bread pan with the dough. Our plan was to put the toppings into the dough but we ended up just covering the dough and cutting some slits into the sides to stuff ingredients into the pizza. Well, honestly we didn't know what to call it but someone said it looked like a burial mound so we added a noodle with R.I.P. written on it before presenting our pizza for the vote. The best part was just spending time, in a big group, in a friend's home but the pizza designing seemed to be a good way to get us together.
Triforce
















C++



   A large portion of this week (nearly 30 hours) has been invested in the final project for my CS165 class. I finished the minimum requirements for the project after about 12 hours but I had made a list of features that I thought would enhance the game as well. My teacher was offering up to 20% extra credit on this project and I was at the point in the project where most things I added made the game more fun to play so I got a bit addicted to the project. My roommate Evan was gracious enough to play my game and let me record him so that I could show the family how it works. I'll include some links to videos that show my game when they are fully uploaded and sharable. In the meantime, here are some lists to add context:

Requirements:

Draw a ship that moves and fire bullets
Draw asteroids that begin at the edge of the screen and wrap around the screen when they reach an edge.
Allow collisions to occur between different types of objects (bullets break asteroids, asteroids break your ship, bullets break your ship)
Cause large asteroids to become smaller asteroids when they are destroyed.
Keep creating more asteroids.

(That's the gist of what was required but I added these and more)

Add-Ons

Create a level system, move to the next level when asteroids are gone
The number of lives, score, etc. are displayed between rounds.
The player has multiple lives, restarts in the middle when they die, is temporarily invulnerable when they respawn, and the number of lives left is displayed when a player dies.
A game over screen with the final score is displayed when lives run out
When the player respawns, a shield is drawn around them to show they can't be hurt
Upgraded weapons were added with the ability to cycle through them
An intro screen was added and the gameplay is demoed for you
-I later added the upgraded weapons to this demo

*I tried trimming this video but Youtube took several hours before I gave up on a link to the trimmed version. Feel free to skip around to see how the game plays.


Student Ambassadors (Final Week)


    It was a bittersweet occasion on Tuesday night but the end had to come. The last night of our Student Ambassador volunteer service was this week. I spent about half of the time making last minute calls so that we could reach out to all of our contacts. At the end we spent about half an hour enjoying some food and joking around. I wasn't feeling too well that night but it was nice to just relax and talk for a bit after all was said and done. Naturally, on our last day, the group wanted to take some pictures so we have the humorous picture here as well as the more serious one.














Letter from Miranda


   There's not a lot to say here but I did receive my first letter from Miranda since December. We do still Email every week so I don't feel behind on her mission life but it is always nice to receive something more tangible. There are definitely ups and downs in the mission field and she has had to deal with some of that but she seems to have taken on a new perspective about some things and to be doing quite well toward the end of the letter (the letter had several entries spanning, from what I could tell, a few weeks). She has been serving in Berryville, Arkansas since early February and it seems to be a growing experience for her so far- though not an especially easy one at times.


A Very Odd Friday

   Now for the part of the headline that you are probably wondering about the most. Friday night was an odd one for several reasons. We had a few guests over and ended up watching Taken until after midnight. There was a call for another movie and we started watching The Ring which lasted into the early AM. At some point during the movies, two of my roommates returned from an evening where they had gone, with a few girls, to a cemetery. They found an app for their phone that supposedly detects ghosts. I just shake my head when I hear them talking about it but I think they do it just to creep people out. In any case, they returned and offered a milkshake up to anyone who wanted some. My old roommate Jeffrey and I split the shake and neither of us finished our half. I'd say I finished about a quarter of what we were given. The milkshake was not very good... Flash forward a couple hours later and this roommate (Evan), Jeffrey, and I were up talking and joking around until about 5 AM. I remarked several times how I hand't been up until 5 AM for a long time and was surprised at how awake I felt.

   I came to find out that the milkshake tasted awful because it was a mix of leftovers from a few milkshakes that the group had bought. Not only that, but I also found out that one of the girls in the group had put some caffeine pills into the milkshake. I'm not sure she had a specific intent in doing so and was just doing something pointless out of boredom. In any case, I ended up unintentionally buzzed by the caffeine and didn't head to bed until after 5 AM. Not only that, but I only slept for about 4 hours once I finally did get to sleep. When we ended our chat, and I finally was getting into bed, I heard a very loud and deliberate knock at our door. I waited to see if I heard things correctly, and also to hear my roommates open the door... which they didn't.

   I left my room to answer the door to find two police officers standing there. They asked if Jacob Maughan was here (my roommate) and I told them that he was asleep upstairs. They said something to the effect that we probably were asleep too. It took about 30-40 minutes for us to find out what was going on but it boiled down to a concerned mother calling for the police to check on her son. He takes some medication for depression and she had been trying to reach him throughout the night but he never received the calls or returned her calls. Jake has been feeling some anxiety about heading back home to Michigan at the end of the Semester and has been having a bit of a hard time lately but the little visit that we had from the police seemed like a bit of overkill. It was about 6:00 when I did finally lay down to bed again but I did only sleep until about 10:00-10:30 before getting up and remaining fairly alert and awake until about 2 AM when I called it quits on my project for the day.

   Saturday was mostly spent programming at the house but we also made a trip to DI to pick up a TV stand. My roommate had decided that he wanted something we could watch with the lights on so he bought a 55" TV for the living room. On our trip outdoors, it was quite windy and one of my roommates was able to ride on the TV stand (it was on wheels) in the parking lot because the wind was so strong. There were actually some warnings about traveling in the wind because dust clouds can obscure visibility. It was a bit strange but I could definitely see the intensity of the wind causing issues with dry dust.

Sunday, March 22, 2015

Busy, busy, busy

Aloha Familia,

   I'm really sorry for the major delay since my last post. A lot has been happening and I've been fairly braindead when I have had some free time- my apologies for that. I'll briefly summarize what I've been up to over the past few weeks and then showcase a few of the more visual items below as well.

C++


   This Course has been largely focused on the Skeet shooting project and the principles that would be applied in it. We took what we learned about classes and methods and expounded upon it with "Is-A" and "Has-A" relationships. The general concepts are referred to as inheritance and polymorphism. I'll do my best to summarize those here using examples from my Skeet project. It was suggested by our instructor that we should consider creating abstract objects (something not found in life but the concept behind it is) to make our programming more efficient. We created an abstract object called a "movable" that could be used to share code for various objects. In the UML (Unified Modeling Language) diagram below, the relationships between objects is represented visually. There are "Has-A" relationships which are represented from left to right and "Is-A" relationships which are represented with up and down relationships. For example, a normal bird, a tough bird, and a strong bird are all birds (ie. a tough bird is a bird) and both a bird and a bullet "Is-A" movable object. Furthermore, all movable objects have a velocity (the speed and direction in which an object moves) and a point (where the center of an object is). What does all of this mean???

  I write code to tell the program what a movable object is. Now every other object that is also a movable object "inherits" the code that I used to explain what a movable object is and does. That way I only have to write the code once if the characteristics of all movable objects are exactly the same. If there is some slight variation (say a strong bird having 3 hit points vs. the other birds which have 1 hit point) I can write a unique version of one piece of that code which is specific to the inheriting / child object. Using a unique method or variable is what is known as "polymorphism" and allows mostly similar objects to have some particular uniqueness to them. By explaining to the program that a normal bird is a movable "Is-A" bird which "Is-A" movable object, the program now knows that the normal bird "Has-A" point and a velocity (follow the arrows for some visual help with this concept). Thus, I write the code once for the point but it is used in 6 places. If something is wrong with the code, I only have to change it in one place and not all 6 which is a great boon to efficiency.

   There were a few ways in which I experienced some tender mercies this week so I included some notes on that below as well to show gratitude. A tender mercy is essentially a relief or comfort that comes in life and really helps you to feel that you are being looked out for and are cared about.




Roommate (Evan) Demoing Skeet Shooting

03-17-2015
After stressing about my incomplete project over the weekend, I was still determined to accept the loss of some credit in school if I couldn't complete my work for Monday. I started Monday with the following list of assignments due:

Monday Morning: C++ chapter and quiz
Monday Evening: Digital Systems Homework assignment
Monday at Midnight / Tuesday Morning: C++ Project
Tuesday Morning: Chapter and Quiz for HCI

By the end of the day, this load was significantly reduced:

C++ Chapter & Quiz, delayed two days
Digital Systems HW, mostly completed by lab partner, took very little time
C++ Project, due date pushed back one day
HCI chapter & assignment, only took about half an hour to complete.

Tuesday: While trying to finish up my Skeet project, I couldn't figure out why my safe birds (stars) were no longer rotating. I had to leave my project to attend to my volunteer work as a student ambassador but found my answer while walking to my shift. I had removed some code earlier in the day and wasn't 100% sure why it was needed. That portion of code came back into my mind along with a clear explanation of why it was needed and what it did. I don't know why I didn't see it before that but I was really grateful for that spark of inspiration on something that had me quite perplexed more than once during my project.


HCI


  After about 35 hours of hard work and focus, I had produced a mostly functional and somewhat appealing skin for Windows Media Player. Though there were some minor issues at the end, I was able to turn in something that I was fairly proud of and received a 93% for my grade on the project. There will be a usability study performed on my WMP skin and I will likely need to make some changes to the skin but this is how it looks now. You can download the skin and try it out yourself if you have a Windows computer. The download link is below:



















Digital Systems

   OK, this one I'm not even really going to try to explain in detail. I'm definitely confused in this class but I'm doing my best to keep up. In short, we are working with circuits that return values back into a circuit. We are using counters and clocks. D-Gated Latches are a primary component and synchronous shifting of data are fairly common in our reading and lab work. Let me try to explain something in a real world context.

   You know those reader board signs that push words and other information across them from left to right? Data is stored in each portion of the readerboard. The circuit that holds all of this data is called a register. When a clock cycle occurs (think tick or tock) then the data moves down the circuit. What information was present in one part of the circuit (held in a D-Gate) is transferred to the next part of the circuit (the next D-Gate). When we are working with 1s and 0s, this is like telling our reader board sign that "this light is on but after the clock ticks it will be the next light that is on and this one will turn off." This creates the visual appearance of movement across the lights.




Circuit diagram from Recent Lab


































The rest of Life

   Everything else in life is going fairly well and filling in the gaps in my schoolwork. I found a game for my roommates and I to play on the X-Box and we put in about 12 hours over the course of a week. It is a lot of fun, and I thought we were going to play the game this weekend, but other things happened. I got invited to the "Academy of Comedy" show on Friday night. There was some good improv and some not-so-good improv but it was easily worth the $1 admission so it was a good change of pace for a Friday night. For some reason I have felt really braindead over the past few days and didn't do much schoolwork. Thankfully there was a slight break in my coursework though those are often more imagined than reality so we'll see if I regret going with what my brain was telling me for most of two days that I would normally study a lot. Last night I joined my roommates for their ward talent show and saw my roommate Brady play a song with a friend of his. They were definitely the best performance of the event... actually the turnout was poor but they did have the crowd clapping along. It was a good song choice. Other acts had chosen to play hymns or other songs not ideal for a setting meant to be more lively and social. Here's the song that they performed on Vimeo (not their performance).

Shark in the Water

   This week I haven't kept up on my weight lifting but I was seeing improvement each week before that and adding new exercises when I did put the time in to weight-lift. The other major thing that comes to mind is that I took part in my roommate's video editing class twice in the past week. Though I didn't have the comedic chops to find my place in the blooper reel, I did receive some reassurance about my acting skills. One of my roommates watched me in the Stress PSA video and asked if I even knew that recording was going on. I told him, "of course I did, it's called acting." It was a good laugh but I guess I was a bit more focused than some others in the videos. On the second video, the news cast, my scene was the only scene that was done in 1 take. Also, if you pay attention, there is some pretty random things that you can see in the videos to keep you laughing. I think this is it from me for now. I'll try not to delay so long before the next update but this is the final countdown as far as the semester goes. Just 3 more weeks and it's all over!

Parting Note:
If all works out for the family reunion this summer, we should definitely do this: https://youtu.be/1TphEh0Qgv0.



Stress PSA (With Bloopers)


















Friday, February 27, 2015

Mixed Feelings but ultimately the right decision



Hello Familia,

   This update comes at a bit of a strange time for me. I have been extremely busy and had spent just under 40 hours on school by the end of Yesterday. I have made a big change to my schedule and it will probably take a week or two before I really start to process the impact but I'll leave the vague intro there and get on with more specifics.


C++

   This class occupied a lot of my time last week, and that ran over into the first part of this week, but it was all related to my project Moon Lander. I ended up finishing the project with a few minor extras but refrained from going farther for two reasons. Adding onto code often has the unfortunate side-effect of breaking something unexpectedly and requiring far more time than planned to complete. I did not want to deal with that just before the big project was due. The other reason I wanted to move in is because I wanted to invest the time in my other classes. The lander program is very much playable but is only compiled for a Linux Machine and would need to be recompiled if moved to another computer- otherwise I would share a copy of the game with all of you. Maybe my instructor can help me figure out a way to do that later but, for now, you'll just have to imagine
how fun it is to play... Maybe I can make a video of the game play later if the other solution doesn't work out. The basic program involves a lander starting high on the screen while the ground and platform are randomly generated. The user gets to control 3 thrusters on the moon lander to move the lander up, right, or left and has a fuel counter visible in the upper corner. If you run out of fuel then the Lander drops and crashes. I added the ability to crash into the side of the platform as well as stars in the background though I originally intended those to be dust particles that moved around (I just ran out of time to add the motion but the stars still looked nice enough). In the image you can see all 3 thrusters firing at once and it gives you a general idea of what the program is like but this is also a glitch that occurs when trying to connect remotely to our Linux lab.


Digital Systems

   This class has been getting more demanding over the past couple of weeks. Before we were given adequate time to complete our labs during class time but I have repeatedly had to leave labs uncompleted at the end of class to head home and will have to spend a few hours in the lab tomorrow to catch up before we start a new lab on Monday. Our midterm also opens up on Monday and we have learned a lot of material lately that hasn't stuck as easily for me so I anticipate some exam preparation tomorrow and also waiting until later in the week to take the exam so that I can let my studying sink in before committing to the exam itself. We are doing a lot more that is software related now and, though it is easier to troubleshoot in theory, it can be a real pain to get things working sometimes and we often have to wait for our instructor before we can move on. Here's a mostly complete but somewhat incorrect circuit that we built on Monday. Sadly the right half is still off and we spent about an hour just trying to figure out what was wrong with our circuit. There are also 4 sub-circuits that feed into this one. It's pretty complicated to think of an example of why you would use a circuit like this but let's just say that many computer processors are set up similarly.


Human Computer Interaction

   This class has been a major focus for me this week. To be on track for the class, I was supposed to have a Windows Media Player skin created that performs (on a very basic level) the functionality that I had designed earlier in the class. Unfortunately I had nothing working by the time class was over so I sat down at my laptop and worked on the project... for hours... and hours... I got to school for class at 8:00, left at 9:30 and stayed in the hallway working on that project almost exclusively until 4 PM. I came home and rested for a bit, ate a snack, and worked away some more. After grocery shopping I continued working. I put in more than 10 hours on the project Yesterday and hit 12 hours of schoolwork in a day for the first time this semester. Thankfully, I have the basic panel working at about 90% of where I want it and I have some sample code to utilize to build the two side panels that I hope to include (they will be tricky at first but take less work over-all). The one major plus out of this all is that I spent hours using Adobe Photoshop and, though I wouldn't call myself proficient, I have definitely become far more comfortable and can use the program to build my interface fairly comfortably now. This class continues to be very challenging but also quite rewarding and I constantly feel like I am developing skills that will prove useful professionally. Here is a snapshot of my Windows Media Player skin as it stands and I promise to send out the completed project when the semester ends in about 6 weeks. The running legs are just a place holder for the scrubber and the yellow dot is a place holder for the volume slider but otherwise this image is a close approximation to the primary pane in my full design. I had to start really basic and build on it slowly (hence the 10+ hours of work yesterday) but the buttons respond and do as they are supposed to from what I can tell so things are looking significantly better than they did as recently as yesterday morning. At that point I had nothing working at all.  : /


Mobile Application Development (The Subject Line and the Big Announcement)

   After countless hours of internal debate, and a brief discussion from my instructor, I have opted to withdraw from this class. I really, really, really didn't want to but I have had to spend so much time on my other classes that I was on the fast track to an F and a withdrawal was my only other option at this point. I immediately felt some weight off of my shoulders when I determined to withdraw but my feelings are still very mixed. I guess I am having a hard time letting go of a class that I loved but simply didn't have the time for. My HCI class and this class were both out of my depth and the Digital Systems class was my first of its kind so I knew that this was going to be a challenging semester. I figured that perseverance and focus would help me win through but the major factor that I didn't account for was time and limitations on how many hours my brain would function. Thankfully this semester has taught me something about my limits and I have been able to push my boundaries as well as improving my approaches and techniques. I fully intend to take this course up again, either next semester or the following, and give it far more of my attention. The biggest issue with taking classes that are beyond my comprehension is that it takes longer to understand things. I'm already putting in roughly 40 hours a week on 3 classes and know I can be doing better is those classes if I have more time... now I do. I look forward to a second go at this class but, for now, will put those 3-6 hours a week into my other classes and maybe enjoy my time off of studies just a bit more, knowing that I won't be as far behind. I will also know what to study between tracks or over the summer so that I am well-prepared to tackle the class with far more momentum next time.


The rest of life

   As I mentioned last week, I did have a date on Friday. My date and I doubled with her brother and his girlfriend. We first went out for Mexican food and then went ballroom dancing on campus. The food was great, the dinner conversation was fine, but the dancing was soooo much fun. I had not done ballroom for several months and the warm up session with Foxtrot and East Coast Swing was all I needed to get into it. Though I don't like it as much, I even danced during a few Latin numbers. The girl was a one time date but probably will be a repeat dance partner in the future. I was supposed to have a date this week but that girl was too busy so we'll see about next week.

This week is a regional conference so us so I believe I will get an extra hour of sleep on Sunday but I'm not sure what else to expect other than a possible general authority speaker or change in leadership.

This week's devotional was not necessarily one of my favorites but the speaker used clips from the movie Polar Express to help us face our doubts and stick to the things that we know to be true, despite discouragement or times of intensity that cause us to lose focus.

One of my roommates went a little crazy and bought a weight bench, a popup punching bag (with water in the base), and some sparring gloves. It has been nice having it so easy to get a little exercise in so hopefully I'll be getting into better shape without much change in my normal routine.

That's it for me this week. I love you all and hope that life is treating you well.



Friday, February 20, 2015

Oh What a Day

Hello Mi Familia,

   I hope all is well with you. I have seen some pretty excellent pictures from Joe with the Johnsons in South Africa. I'm sure that they are on their way back by now but it was good to see their smiling faces and the good times that they had. I know that everyone has a lot going on and I hope that everyone is finding life rewarding. I don't have long to do so, but I wanted to drop a quick note to everyone and talk a bit about this week, but particularly the last day.

HCI

   The week started off with an "extended weekend" for President's Day. For me, however, it became a very focused study weekend as I spent about 11 hours on a single project alone (excluding my other classwork) between Saturday and Monday. I stayed up until 2:30 AM on Monday to turn in my 3rd project for my HCI course... which started about 5 1/2 hours after I went to bed. It was a long day but I also had a test that day and wasn't too disappointed with how I performed on the test. I think I received a B or B- on those particular endeavors but I have done far worse in the class and it was a real struggle to create what was expected of me (in part because I keep getting overly ambitious with my interface design). I had a chat with my instructor after class on Thursday and he helped me fine tune my idea to something a little more reasonable. It felt good to know that the idea itself wasn't way off base but that I just needed to execute things a little differently to coincide with the scope of the class.

C++

   This week we completed our last assignment of unit 2 and are now working anxiously to complete project 2 (moon lander) before it is due on Tuesday. Yesterday, I was working in the Linux Lab to finish the last assignment of the unit, when I had a question that I wanted to clarify with the instructor. He helped me with the last bit of the assignment and we briefly talked about the career fair that was going on that day. I honestly didn't expect much from it, as I am so early in my Computer Science journey, so I wasn't planning on going but my instructor told me to at least go and have a look around. I gathered some information and talked with a few people but one person (Dave) talked with me for a couple of minutes. I mentioned that I was early in my CS degree and he said that he likes to work with people around their first year. I was looking at Summer internship options (to try to soften the blow of college expenses and gain a little experience) and he seemed to respond positively to the idea of me applying. In fact, he showed me that he had an 8:00 appointment open the next morning and suggested I sign up for it. I told him that I would give it some thought and see him in a few minutes if I felt like it was a good move. I'm still wondering if I misunderstood him, but he did drop the pay of $18 / hr in conversation. I can hardly believe that interns would get paid so well so I'm thinking that he was referring to the full-time QA pay but that would be amazing if I heard him right. In any case, I thought about it, returned to tell Dave more about my experience thus far, and then signed up for the 8:00 time slot. Last night I went to a "programming party" (basically a gathering of students working on a project together with the instructor there to answer questions) for 4 hours, got some input from my instructor, and then edited my resume based on that feedback.

The Interview

   This morning, at 7:43, I left my house for my interview and I returned home around 8:40. The interview went quite well actually. I remembered creating a portfolio for my IBC course and decided to bring that to the interview (Dave loved it!). I printed off a few copies of my newly updated resume and brought my previous job info / references list on a flash-drive in case they were needed (they weren't). One of the questions involved how I would test a basic login dialog box that included text input for username and password, OK, and Cancel buttons. I ran through several suggestions such as testing correct input, incorrect input, incorrect case (upper / lower), etc. and Dave seemed pleased with my approach. He also suggested inputting SQL commands into the text boxes and using the link that is beyond the login screen to see if you could bypass the login altogether. It was a great test of analytic skills and I learned to think a little bit broader once I felt I had solved the question. Another question I was asked was to take the numbers from 1-100 and to count the number of times that the number "9" showed up. I'll put the the answer at the bottom of this post but encourage you all to try it and write it down if you need to. I did come up with the correct answer but my initial guess (before writing it down) was wrong so I'm glad that I simply said- "my initial guess is this but let me think about this for a moment."

   To summarize, the interview went great! Dave thought I really have the analytical skills and mind for QA. He said I should hear back soon but I really believe it because his reactions were positive pretty well the entire time. I'm sure some of you are wondering where Dave works. Well he actually works for the church so it's possible I would be doing Quality Assurance testing on Family Search if I was hired. That also means I would be living in Utah for the duration of the internship : ) I can't remember each of the places but Orem was one location that I do remember. If this works out, I may have to make a trip home and retrieve my car to use during the internship but we'll see. I'm optimistic but don't like to count my chickens before they've hatched.

So the good news: A great interview when I honestly wasn't expecting any real job opportunities for at least a few more semesters, two programming parties that have helped me make some good headway on my project (with a third scheduled for Saturday by a group of us who worked together last night), oh yeah- and I have a date tonight ; ) I'm still struggling immensely to keep up with my course load but a lot of good things are happening right now and I am doing well. I love you all and hope that you are finding lots of opportunities to live life and lots of dreams to look ahead to!

The Answer to that Question (number of 9s, counting 1-100):
Highlight the blank space below for the answer

09, 19, 29, 39, 49, 59, 69, 79, 89, 99 (10 was my initial answer, 99 counts as 2, then I remembered...
90, 91, 92, 93, 94, 95, 96, 97, 98     (I blurted out 20 and he said that was correct)