Monday, February 28, 2005

A Positive Attitude

ChangeThis.com has come out with another great manifesto, if you have a few minutes you should jump on over and give it a read.

People like to be around people who are positive. They also like to be with people who listen to what others have to say. The article is basically a laundry list of traits, actions, and philosophies that would help one to "make it" in the world. The best approach would be to think about incorporating one point at a time, and seeing kind of a difference it makes.

Saturday, February 26, 2005

Mental Game

Mentally strained
at the end of the day the list is still long;
problems to solve,
books to read and
people to talk to.

Easy it would be to let it all go;
off into the void of the unprepared.

So one must be careful, attentive, and true
spending the requisite time
to learn the skills of the trade.

Though the hours may be long
the prize is worth the price
knowledge is power so they say.

So though the mind is exhausted,
one reaches deep to find
the will to keep going
striving
succeeding.

Friday, February 25, 2005

Interviews

While surfing the web last night, I came across this article by Joel Spolsky. As usual, he has given me something to really think about. It is spring, and many of this year’s CS graduates are writing blogs about interviewing and trying to find jobs. I am glad that I don’t have to worry about it at this second, but Joel’s essay did give me some time to think about my resume and job history.

I can’t say that I have had a lot of interview experience; I suppose that in reality I have only interviewed three times. Four years ago, I interviewed with Datamark for a marketing research position as an intern, and with the University of Utah as a photographic darkroom technician. I received offers from both companies. Two very different jobs, but I could have done either just as well. As it turned out, Datamark looked like it would be more intense than I needed as a first time college student, and the University of Utah had a better offer. At that point in time, I thought I wanted to be a medical doctor; both jobs had nothing to do with medicine. Maybe it was a sign of changes to come.

I spent a little over a year and a half with the University of Utah. In six months, I learned a lot about photography, made some friends, and bettered my skills in the darkroom. The job was great as when things were slow I could always work on the homework. As it turned out the budget for the darkroom job evaporated 6 months after I started working. At that point in time I had just purchased a brand new car, so unemployment was not an option. The University offered me a job in the same department as a courier, of course at a pay deduction. However, I was so stressed with the pre-med stuff that rather than looking for a new job I took the position. It was interesting to feel overqualified, and underpaid. Maybe everyone feels that way, but for this particular job, it was particularly true. I showed my supervisor that I could be of more use than just delivering equipment around the campus, and shortly I was doing a lot of the monthly billing for our group, and helping to implement a new automated equipment tracking system called web-checkout.

At times during the courier employment I often wondered about what my life would have been like had I accepted the Datamark position. Looking back on it now, I don’t think I would be where I am today without having had the courier experience. Not so much the courier job per se, but the accounting, and work with web-checkout. We were the beta-site for this new software, and it really peaked my interest regarding software development and testing. Though I knew nothing of computer programming, I could get around a computer pretty well, and the design/testing was a blast.

My third interview came about while I was working for the University as a courier. Eventually it lead me to the job that I currently hold. A neighbor thought that I would be an asset on one of the teams that he directed. He invited me to visit his office, to get acquainted with his business associates. What an interesting day that turned out to be. I had worked for this company before as a teenager doing odd things like data entry and creating budget spreadsheets, and working on a massive systems upgrade that involved medical records. Seeing the same company from a different angle several years later, I learned how privileged I was to gained the experience that my teenage job provided me. As my neighbor introduced me to each of the project managers they would ask questions about my experience in programming languages, applications, and past work experience. It seems that nothing could have prepared me for that. I was still a pre-med, and none of my classes to that point had to do with computing or IS. The final interview was a lunch interview with the CIO and my neighbor. The questions asked were all about problem solving, creativity, and my plans as a student. The whole thing was an interesting experience to say the least. I left the campus that day feeling completely inadequate, but comforting myself that I still had my job at the U, and that I was really going to be a doctor, so it didn’t really matter.

Six months later, in February of 2002, my neighbor called again and said that they had a position for an intern and that I should submit my resume again. The pay increase would be substantially more than I was making, so I decided to give it a try again. The job description was vague, but I knew that it would have something to do with financial systems, software development testing in RPG, and process reform. I was offered the job, and have been there ever since.

Accepting that internship has turned into a real position with that company as a quality assurance tester with their financial and administrative systems team. In January of 2004 I changed my major, left biology and medicine behind, and moved on to Computer Science. I feel good about the change, and being a bit over a year into CS, I can say that while it is challenging, it is the right place for me. It is interesting to note the set of jobs that I took as a student, and to see the influence they had upon my career decisions.

While my current job is good, I would like to start expanding my horizons again. Hopefully this summer, I will be able to dedicate more time toward experience gaining. QA/testing is great, but I would really like to try my hand at development, if not with my current employer then maybe elsewhere.

Thursday, February 24, 2005

School, Work, and "fiddling" with Visual Studio

Generally Tuesdays and Thursdays are just long days. When I registered for this semester last fall I thought that having all of my classes on two days would optimize the school/work balance. When I made that decision, I hadn’t considered two things. First, what it is like to sit in a chair for six hours of class in one day. Second, how being in the office every day puts co-workers at ease, and keeps me on top of the work.

The chair time isn’t too bad provided that I have had a good rest the night before, but it makes for a long day by the time my Linear Algebra class ends at 6:30 PM. Sure, there are some good breaks, and time to study, but being on campus all day, and the homework load that comes from one day of classes can be quite menacing at times.

As far as work goes, I try to stay up on the email but there are some things that are just done better in person. Not to mention, delving into testing or a bug report isn’t the best thing to be doing from school in-between classes. I am getting the work done, while in the office, and working about the same number of hours, but things just seem to go better with the daily exposure of being in the office. Conceivably this is just one of the side effects of being the only part-time person on an entire staff of full-time persons.

Humorously, on my current assignment in Software Practice the following instruction appears: “After you unpack the two zip files, you will need to fiddle with Visual Studio to incorporate the new projects into your solution and get them to compile.” Last night, I “fiddled” with the project for three hours to no avail. Thank goodness this morning a TA helped to shed light on the issue. Apparently when the file unzipped an extra folder was being created, and Visual Studio didn’t like that. I think this is one of those times where it is really important to consider the value of the preverbal journey. For if you are the one who doesn’t subscribe to this school of thought, then the three hours I spent last night would be considered as time wasted. It seems that in CS, more so than my previous major, there is a lot of value in the journey. The major lessons appear to be learned in the struggle. Yes, there are well defined requirements in every assignment, but perhaps they play a lesser role than the requirement that one learn the critical thinking/problem solving skills that are required in software development today. That doesn’t mean that I wasn’t frustrated last night, because I surely was, it just means I am trying to put a happy note on it, and thinking about the aspects of visual studio that I have learned as a result. Software practice hasn’t been easy, but I am learning, sometimes painfully, but learning none the less.

Wednesday, February 23, 2005

Meeting

In a rather long specialist meeting today whilst discussing a rather heated topic, a co-worker leans over and says: “We like to do everything the same… differently.” Trying to consolidate an environment is not an easy task, we have come a long way in the past year, but it hasn’t been without strife. There are many talented people who have been around this set of hardware for a long time. To many of them, change doesn’t come easily.

I suppose that is just the name of the game. If anything, I am beginning to understand why most enterprise level changes come slowly. Not necessarily because it takes a long time to plan a change, though that may be some of it. It appears that most of the time is spent convincing all involved parties that the idea is good for the corporation, and that the implementation plan while discomforting for a bit, will be worth it to the bottom line. Building the software and making the programming changes sometimes seems more simple than getting the buyoff.

Consolidated systems are indeed complicated. More users taking up more greater resources, larger risk in the event of failure, more people to talk to when small decisions need to be made. However, the ease of data aggregation, data processing, and user management seems to be getting easier. There was once a time when to find something out about a user, or particular situation required 11 different logons, downloads, and consolidation into an excel spreadsheet. Now, I can simply grab the information I need and go from at most two locations. From the standpoint of QA/support it makes life much easier. The entry-level user may not understand or see this need, but it sure makes sense from the management/reporting perspective.

Maybe change would be easier if we spent more time to make sure that people understood the basics of computing. Or perhaps we as developers need to be more understanding of the non-native computer using generation. But really, how hard is it to change a password when prompted to do so?

Tuesday, February 22, 2005

Exam Day

What an exam. Every question was fair, and if you subscribe to the idea that even exams should be learning experiences this exam would be a perfect candidate. You would think that this far into my university experience I wouldn’t mind sitting for a two hour exam. No matter how you look at it, two hours is a long time to sit in a chair. Physically exhausting, not really; mentally strenuous? Absolutely.

There wasn’t anything “new” on the exam, but there were some interesting bridges to cross. Algorithmically it wasn’t terrible, and could have been a lot worse. In fact, the whole exam could have been a lot worse. It was just a big thinking exercise. The real challenge came in the form of its length. One really needed to understand assembly in order to get through the exam problems quickly enough to finish thoroughly, and correctly. There simply wasn’t time to “figure out” what needed to be written.

On the whole, the exam was a good experience. One of my friends came out saying that the law of averages would be the friend of this class. Unfortunately for this class, I don’t think that you can bet on the law of averages to work in my favor. School is just too competitive, the results are too constrained. The name of the game is staying at or above the average, which for this class means hours spent studying. Not just doing the homework, but assimilating it.

The next exam is going to be about how computers do binary math. It is probably time to get started on the studying. Given this first test experience, there is no way anyone would get through the entire exam questions if they don’t learn it cold.

Monday, February 21, 2005

Snow Shoeing and Homework yet to be Finished


Drift
Originally uploaded by CodeFin.
Yes, on a day that my conscience told me that I needed to be locked up in the Marriot Library working on Computer Science, I decided that I would take off with a group of close friends and snow shoe. A first for me, as I haven't had the best relationship with snow; this trip was a lot of fun. I managed to stay warm, dry, and have a lot of fun. Year round, Big Cottonwood Canyon is just breathtaking. It is no wonder that the skiers love it so much. I am glad that I had the camera along. The set is pretty similar, and I didn't do much photoshop work at all.

The trip provided a good rest from what was a pretty intense weekend. Now it is time to get back to business with the homework. There is a test tomorrow morning, and an assignment due on Wednesday. Things are coming along, but I am feeling the twinges of guilt for taking Friday and Saturday off. Computer Science is a time consuming major, but the thing more frightening than the time commitment is how quickly one can fall behind. It takes constant diligence to stay on top of it all.

Though I feel a bit guilty about the snow shoeing adventure because of the school stuff that is still looming in the foreground, it was nice to fill my lungs with clean mountain air, and rejuvenating to connect with nature and good friends. I suppose everyone needs a respite once in a while.

Sunday, February 20, 2005

How well can you problem solve?

A few questions recently asked at a Microsoft interview.

Sunday Quote

"Blasted with sighs, and surrounded with tears,
hither I come to seek the spring,
and at mine eyes, and at mine ears,
Receive such balms, as else cure everyting;"


- John Donne "Twickenham Garden"

Friday, February 18, 2005

In Pursuit

Oh Faster Than Kudzu, Joshilyn Jackson said:

“I feel like a very EARNEST hamster in a wheel, a SQUEEKY wheel that goes WREE WREE WREE, and I am always DOING but never get anything DONE. But at least wheel-running is fun and I am a hamster so how bright can I be? Maybe I don't KNOW I am not getting anywhere.”

Oh boy can I ever relate. Sometimes, in the pursuit of our goals we loose sight of the big picture and feel that we are running on the hamster wheel, with no comprehension of the fact that the wheel will just keep spinning as long as we run on it. It feels like we aren’t really making a lot of progress, because the only thing that we are capable of seeing while on the wheel is that which is right in front of our noses.

I feel like I have been running on the wheel since spring semester started on January 10th. The funny thing is that it feels like I don’t control the pace of the hamster wheel that I am running on, and for the last two weeks, someone, somewhere, turned up the pace. I am spending more hours studying than I ever have before. The current set of tasks feels daunting. The tasks are complex, and the solutions generally are not trivial.

Last night, after working on the CS assignment of the week, my classmate and I were standing in the parking lot discussing the complexity of our current assignments. For a brief moment we were able to get off of the hamster wheel and take a look at the big picture. It has been a little over a year since I started on the road to becoming a computer scientist. When I started, I didn’t know a thing about programming. I couldn’t have told you anything about Scheme, Java, algorithm analysis, or data structures. Looking back on that learning, I can say that school is helping to form a strong foundation onto which the rest of my skills can be built. My current class schedule is grueling. One would think that 12 credit hours wouldn’t be too difficult, but again the bar has been raised, and it is my task to learn all I can. The exercises are at times maddening, and feel somewhat pointless and impossible, but lessons are being learned. If I didn’t understand the C++ memory model before this week, it has been engraved on my brain because of this most recent set of exercises. If I didn’t understand the need for well commented, well organized and defined code, playing with the code from “J. Hacker” has taught me the importance of readability and maintainability. All of the object orientation in the world can’t save you if you are going to be lazy and careless when it comes to writing code. I guess the point of this paragraph is to say that yes, school is hard. I am putting forth a lot of effort. But I am also receiving the rewards for the effort. I am learning. Sometimes the lessons are painful, and I haven’t been getting the perfect A’s that I wanted, but at least I am learning and growing.

I used to not understand why the college of engineering would call its degrees “professional degress”. I thought that those were reserved for the lawyers and the doctors of the world. CS is not a “soft science”. We take these machines, and the men and women who make them work for granted. A great deal of science goes into making the bleeding edge software of today. Yes, abstraction helps to remove some of the bloody details from daily life, but how can someone call himself a developer if he doesn’t recognize that there is a great deal of math and science running beneath their program? If one is to create cutting edge software, and be competitive in today’s market, they must understand these things.

What a rant. If you made it this far, congrats! Make me happy, give me a comment.

Thursday, February 17, 2005

Exhaustion

1:50 PM
I am not near an internet connection at this second, but I am too tired to work on school, so I thought I would blog.

One would think that after 5 hours of sleep and 32 ounces of diet Coke that I would be alert, awake, and ready to go for more school. However, I am here to say that certainly is not the case. Exhaustion has set in, and I think that I will be lucky if I make it through the day today. Still on the to-do list for the day would be two classes, (software practice, and linear algebra) and then the standard studying until 11 or 12. With any luck, I will manage to fix a few more of the bugs that are residing in the software practice debug project.

It is time to get ready to go into class. One of these days here soon I really need to write a more technical entry. I have a lot to say, but time has been at a premium.

3:30 PM
I just sat through the longest class of my life, staying awake was the biggest struggle, and it was even the type of conversation that I would normally like to participate in. I am pretty converted to the idea of project planning and the virtues of UML however, the sheer exhaustion was really getting to me.

Maybe I will get to sleep in on Saturday morning. Just until 8 or so would be fantastic, provided that I was in bed before midnight.

A Brief Update

Monday: My cousin passed away after a tragic battle with a bacteria that she just couldn’t fight off.

Tuesday: Classes at school, studying at the library in the evening.

Wednesday: Class in the morning, went to work, spent the evening in the library studying.

I have been rather distant for the last few days. It is not for lack of having things to say; it is more a case of not knowing exactly what to say. Life is extremely busy, and there has been a lot going on. I am finding that pretty much the only way to get the school work done in a timely manner is to put in the hard time. The advantage is that I know that I am doing a thorough job.

Tonight I had the opportunity to go to a Linear Algebra review session that my professor was teaching. Interestingly, and lucky for me, I was the only one who showed up. Really, it was quite the opportunity. 1:1 tutoring with the professor is not something that a student gets every day. It was nice to be able to ask questions and have them answered and re-hashed until he was sure that I understood.

I wish I didn’t have such a love-hate relationship with mathematics. I love the journey so much, yet it pains me greatly to do the homework. The stress of the exams and the strains that I go through to learn it would seem to make me want to leave it as soon as I could. Yet, I am taking this class of my own elected volition. Am I just a glutton for punishment? Why do I like it if it hurts so much? Should I finish the minor? Tremendously interesting, but I should probably come back down to earth and remind myself that I have had a math tutor to help me since I was in 8th grade. With all of this help, I get by. Could I actually pull it on my own?

Lots of questions, and not a lot of answers, at least not tonight.

Sunday, February 13, 2005

Tragic

Though the story is not mine to tell, I can say that these are the moments that mold and define us as people. I don’t have the words to express my feelings adequately, but John Rutter set the words of this prayer to music several years ago, and I find that they bring a great feeling of peace.
The Prayer of Saint Francis
"O Lord, make me an instrument of Thy Peace!
Where there is hatred, let me sow love;
Where there is injury, pardon;
Where there is discord, harmony;
Where there is doubt, faith;
Where there is despair, hope;
Where there is darkness, light, and
Where there is sorrow, joy.
Oh Divine Master, grant that I may not
so much seek to be consoled as to console;
to be understood as to understand; to be loved
as to love; for it is in giving that we receive;
It is in pardoning that we are pardoned;
and it is in dying that we are born to Eternal Life."

Friday, February 11, 2005

How to Manage Smart People

Scott Berkun, who worked as a program manager at Microsoft for nine years wrote a very interesting essay for changethis.com called How to Manage Smart People. Though I am not a manager, I would fancy myself as one someday in the distant future. Scott has some wonderful ideas, if you have a second, you should hop over to the site and read his essay.

Here are a few excerpts:

“There’s no one way to manage people, but there are some approaches that I think most good managers share.”

“Everyone is talented. Certainly not everyone is as talented as everyone else, but every individual has certain things they are good at, and certain things they suck at. Good managers must step back from the hierarchy… and actually see people not for what they do …but for what they can do that they are currently not doing.”

“While managers need to establish themselves… they also need to help establish the people on their team along with them.”

flickr graph - a great flickr app

Check it out!

Here is a web that I came up with branching off of myself.



Pretty Dang cool if I do say so myself. No I didn't find it on my own, it was front page news on the flickr! blog.

I have always been impressed with what can be done using flash. I have never taken the time to learn how to use it though. The more I see, the more I would really like to learn it.

Thursday, February 10, 2005

Before I leave the library and sleep

I thought I would write about my day.

Just as I thought that I was heading for a nice and relaxing weekend, it occurred to me that I still have a lot to do. Thank goodness, that in my Computer Organization class the professor had the good sense to give us a 24 hour extension. This will buy me some time tomorrow to work the bugs out of my binary search tree that I have been implementing in MIPS. It was comforting to hear the professor admit that the assignment that he had given us was not trivial. He confessed that had he to do it himself it would take some time and concentration. Hopefully I will be able to pound it out tomorrow, and get it turned in.

Regarding software practice, I just submitted my six bugs. That was a total pain. I still think that black box testing in the real world would NEVER be this bad. I hope that I get decent marks on this one. The grading will be quite subjective, as the guidelines were pretty spacey. Next week, we supposedly will be working with the same code—but this time we will actually get to look at the code, this could however, turn out to be a curse. Only time will tell.

The math test that I took today wasn’t as terrible as I had expected. That doesn’t mean that I aced it though. 16% of the exam was wrapped up in some pretty complex proofs. One about proving the linearity of a linear transformation, one about proving some facts about an n x n matrix with various special properties, and one about the inverse rotation matrix. The last one was pretty interesting, I made some of it up, but it looked good. I still have a lot of math to do this weekend, mostly finishing up the maple lab from last week, and making sure that my chapter three homework is complete.

I have a cold, the cough, the post-nasal drip, yuck. I want to sleep. Tomorrow I will face the workplace (that I have ignored since Monday).

The tide is coming in fast; there is a lot to do if one is to not drown. Maybe THIS weekend I will get a stronger grip.

Wednesday, February 09, 2005

Pressure Cooker

As Rich so noted in yesterday’s comments the treadmill of life keeps going. Though, I would really appreciate it if the pace would ease up for the next couple of miles. The cold was back in full force today. Not in the form of a sore throat, but it sure turned on the snot tap. I am ok as long as there is a box of tissue near by. I took the day off work today, in hopes of being able to catch up on the school, and nurse myself back to health. It seems that neither fate was totally in the cards. I did manage to get some studying done for my math exam tomorrow; I also spent a great deal of time working on an assembly assignment.

I am running out of time. I just don’t know how I am going to find more of it. I think that I need to get at least 6 hours of sleep to be able to function. My math tutor says that I should be studying 15-16 hours a day! How does one work and do that at the same time?

It seems I only have more questions right now.

From my software practice lecture yesterday:

-Develop a “do it right the first time” mentality -- helps your employer and saves your sanity
–-Gets you into the zone where development is the key, not testing, debugging, maintaining
-Painful, maybe, but this class is taking you out of your comfort zone and giving a view of what it’s like to develop software in the “real world”. How does it feel?


Honestly, it feels horrible. There is a rush that is coming along with the pressure, but if I don’t thrive this will kill me. I just want to do well and prove that I can do this stuff. Never did I expect it would be so “uncomfortable”. As a QA/tester in the “real world”, nothing I have faced in the workplace is like what I am facing at school right now.

Tuesday, February 08, 2005

Mid Day Break

After finishing up my mathematics lab, I had a nice lunch break today. The apple was tart and sweet. It was nice to take a moment for myself. I think that last week’s late nights caught up with me and I really didn’t feel too great on yesterday and Sunday. I felt good enough to take a jog after lunch; it was very invigorating to spend a few minutes on the treadmill. I am finding that it gives me some time to think, time that I don’t have to worry about doing anything but running. Interestingly, one of the side effects is that I get a lot of thinking done.

There is still a lot to do this week. Honestly, I don’t know how I will get it done on the allotted time. One step in front of the other I suppose. That which doesn’t kill us only makes us stronger.

Monday, February 07, 2005

Port Blocking

It started with locking any ports that would be used by instant message clients. They didn’t really say they would be locking the ports; it came by way of an “update”. Though it was inconvenient, it allowed me to get a lot more done. They also came up with an internal message system that works very well for all users internally. Not quite as featured as other clients, but it works.

Three months later, we get another set of updates, and I notice that FTP is gone. I decided that I could live without FTP, as I have a flash drive that I can carry with me.

Today, I tried to set up outlook so that I could check my school email from work. Guess what? Those ports are also locked. I tried to SSH to the school server to see if perhaps I could check my email using pine… locked as well.

What does that leave? The web.

I suppose I could forward all of the mail from the school account to Comcast, or Gmail. I can still get at both of those via the web. Maybe we will be loosing that soon as well though forwarding out of the school account defeats the purpose of having an IMAP email account.

Oh well. At least I have a job. It is probably a good thing that they care to make sure that we are as productive as possible. From a security point of view, it makes a lot of sense to make sure that information can’t leave the system via any un-approved channels. It is annoying though.

I am done blogging from work. I don't want to be part of the reason that they would want to restrict employees from the web as well.

Sunday, February 06, 2005

Early to Bed

I am going to go to bed early tonight. I didn’t accomplish as much as I had hoped to this weekend. I don’t think that it is really any one persons fault, though I think that burning the candle at both ends isn’t a good idea. I haven’t felt so good today. I really can’t afford to get sick.

There is a great deal to do in the upcoming week. One bit at a time is the only way that it will all get done.

Week at a glance:

- Math:
Homework from chapter three will be due on Thursday; I will also have my first exam in that class covering chapter’s one, two and three.

-Computer Organization:
Have you ever desired to implement a binary search tree in assembly? It will be simple, and won’t have to balance, but it will be due on Thursday as well. At this point I am glad to know that it won't be the first time I have implemented a BST by hand. It seems that again and again, I am able to refer back to my experiences with CS2010 and the LiSP language Scheme.

-Software Practice:
We have been working on “black box” testing. It would be nice if we had even the smallest inkling about what we were supposed to be doing, but the professor wants us to have “real world” experience. Finding the bugs in a language I can barely program in sounds like a good challenge.

As you can see there are plenty of hoops to jump this week. Throw 20 hours of work on top of all that and you have a complete week. Heaven help me to get it all done, and done well.

Friday, February 04, 2005

Is there catching up?

An update is in order. It seems like Wednesday to today just flew by in a blur, and all that is left is me trying to come up with a strategy that will allow me to cope with this new life of mine that seems to run faster than I can keep up with. Balance seems to be the key to finding sanity, but as of now that key seems to be lurking in a deep corner. I haven’t found the key, just like I didn’t find all of the bugs in this week’s C++ fun. As I mentioned in January, I registered for three classes that came to a total of 12 credit hours. I didn’t think that would be too hard to balance with work, and trying to have a little bit of fun on the side. Man was I wrong.

Though the schedule is grueling, and I am struggling to find a semblance of order, I am learning a lot. It seems that sometimes the most efficient form of learning and refinement comes only within the walls of the crucible that challenging projects, extenuating circumstances, and deadlines provide. C++ syntax is coming more readily than it did two weeks ago, and I am gaining more confidence in my ability to problem solve and trouble shoot.

This week I also wrote my first assembly program in MIPS. It was a nifty function that determined whether or not a number entered was prime. Special isn’t it? Thank goodness for the simple stuff. Assembly really teaches one about how stupid computers really are. It would give anyone a real appreciation for the modern computer, and all of the millions of things that it does to make our lives ‘easier’, though that could be a debate in and of its self.

I have the weekend ahead of me to catch up. I am determined to not play this game a day behind or the second before it is due. My poor math class has been so neglected. I am sure that if the teacher were to associate my participation in class with my performance on the last quiz and two assignments he would be completely shocked. I really need to take the time to introduce myself next week. I also need to take the time to catch up with his lectures. I think that there are three or four sections in the book that I need to do the homework on before Tuesday, if I am to be concurrent. That probably represents the better part of a day working on problems. I also need to prepare for the exam coming in that class next Thursday. Sounds like a weekend plan doesn’t it?

In addition to Math, there are assignments in both of my other classes as well. It is overwhelming.

In software practice, we had two lectures about debugging/software testing, and I found it very interesting to see what academia had to say about the subject. There are some great tools/ideas out there to help in the QA process, but how many companies are really willing to invest in them? I was most interested by the idea that programmers should write suites to test their code at the function level. That way when the programmer passes off the code to QA, he knows that the program does what he programmed it to do, at least at the function level. If programmers were to do that in my workplace, I am convinced we would send a much cleaner product out to our users. As a software tester, I can’t test at the function level, nor is it reasonable to think that I can test every conditional branch of the code. Generally, I don’t even see the code to test from. My position as a QA/tester affords me “black box” almost at is blackest. That wouldn’t be such a problem, if there was more guarantee that the product had been thoroughly “white box” tested. I think that the issue is that often our black box testing works just fine, and it would cost a lot more to have the programmer actually write a test suite for every new class/RPG program that he/she writes. Nonetheless, I still think that adding more white box tests to our process would help the product we ship to our users. The cost would be up front, but with subsequent changes, it would often help to verify cleanliness of the code. Not to mention, it would allow us to test software much more quickly, being able to feed scenarios directly to the code that would take hours to set up when running individual tests black box style over and over again. Another advantage would be that rather than having version after version of “fixes” we would then be free to make more enhancements. The software development process fascinates me. Though sometimes these lectures seem very far from the code we write in our assignments, I can see that there is real world application that students should be aware of.

On a final note, here is another interesting article about Firefox.

Oh... and my laptop came yesterday! I think I got all of the software on it last night. (I can’t believe I have so much software that it takes 15 gigs of a 40 gig hard drive)

Wednesday, February 02, 2005

In the Wee Small Hours of the Morning

The classic tune speaks of love... I don't know that I can talk about love right now, but I can tell you about what programming is like at this time.

I am beginning to understand now better than ever before why so many programmers joke about late nights and caffeine. It seems that sometimes you just have to have the un-interrupted time to think and work. It was almost eight hours on one function this evening/morning.

Some of my friends are beginning to finish the assignment. I still have two more functions to go. Hopefully I can wrap it up tomorrow (or should I say today?).

Software Practice is consuming WAY too much time. Somehow I need to get it under control, or my grades will begin to suffer for the deficit in time that they are aggregating by the day.

Surely my professor must know how much time is going into these killer C++ adventures?!?

Tuesday, February 01, 2005

Who would want to listen to music on a computer?

"If it solves a problem, then people will use it (even if it isn't perfect)."
- Aaron Boodman

Go read his article, I was able to relate to it quite well. I especially agree with his resolution on pushing through with his ideas even if there are some problems with them.

Perhaps it is an axiom I should take up with my current set of homework challenges.