Countdown Timer
Partners
The Latest
Blog Navigation
Posted on: October 29th, 2009 by Famous Phil
From the title, I’m sure that you can infer that I recently experienced someone burning out or I burned out. To remove the inference, I’m fairly sure that I hit my breaking point this past Monday around midnight. I didn’t realize it until a few minutes after I hit the point, but I’m going to put some tips in this post that will help you identify when burn out occurs and why it can be spectacular to watch.
Normally, burnout occurs from having the answer the same question, or repeat yourself many times over and over. It eventually gets to the point where you can’t stand it anymore and you bust. Another instance that causes burn out (and in my case is true) is pushing yourself to the limit for long periods of time with little self time. Not setting time aside for yourself can make the burn out happen quickly and be the prime reason for fireworks. Now to define burnout. As wikipedia puts it, burnout is the experience of long-term exhaustion and diminished interest.
In my case, I am normally a very calm, patient person that is willing to put up with a lot of nonsense for a long period of time without loosing my temper or cool. Having experienced burnout only on Monday, I wasn’t really sure what was happening.
I was working as normal on coding for a school project due in a few weeks (I’m normally a week or two ahead of the due dates). For some reason around midnight, the lack of sleep coupled with I couldn’t get a piece of code to work properly caused me to hit the breaking point. For a few minutes, my laptop was likely worried (if it has feelings) that it might go out the window and 5 stories below the airborne way. Thankfully, I had a lot of other (non expensive) cups and papers and remotes that I could throw and erupt at.
I normally don’t throw stuff or really get upset like that but for some reason, it was simply an uncontrollable reaction. Because of this happening, I decided to take it easy this week and only slightly push to get the rest of my tasks for the week done. This weekend is going to be entirely taken off and I plan on watching several movies. Hopefully I can get this stress gone so that I can focus on school work again next week without the kind of stress that I’ve noticed lately.
Burnout can be quite spectacular. with me, I found it was totally uncontrollable. I also found that I was quickly able to fix the problems and lighten the load to make the stress go away quickly (basically that is why I keep a 1-2 week buffer on work due). I’ve also noticed that I’m slowly regaining my productivity that I lost a month ago when I started overworking myself. I’m assuming that I’m going to have to push starting next week again, but I will not push nearly as hard as I have been pushing.
In conclusion, always take time for yourself, you need it! Burnout does happen, and when it does, it is usually uncontrollable. You certainly don’t want that, do you? I don’t think so!
Tags: burnout
Posted in Student Life
|| 1 Comment »
Posted on: October 17th, 2009 by Famous Phil
Just by looking at the title, I’d hope that you can at least partially relate to what I’m going to blog about today. As you may or may not know, I am a computer science major at the University at Buffalo going on my 4th year of studies. In computer science classes, it is well known that you will be expected to complete programming assignments, it makes common sense doesn’t it. A big chunk of the computer science program at UB deals with programming assignments, and most of these projects are not trivial.
<Just an aside to why programming can be fun when compared to math>: Normally when completing a math assignment, there is only one way to come out to the correct answer (eg. 2+2=_; _=4). In programming, this is not the case. Usually there are at least 5 to 10 different methods to solve the same problem in a given language (C, C++, .NET, Java, Erlang, Prolog, Lisp, etc). For example, to add up all the numbers from 1 to 10 in Java, a programmer may choose to implement any kind of loop that increments a variable each time and save the answer or they may choose to just flat out add 1+2+3… on one single line and print out the answer.
To get back to the topic in hand, thr0ugh my entire time here at UB (up to but not including this semester), I would always begin my programming assignments the day they were handed out. I would then spend countless hours with all of my free time finishing them well ahead of schedule. This was partially because I am an early person and I hate being late with any type of commitment I have. The other half of this was because I normally had no clue what had to be done so I would spend countless hours researching the topic to figure out where to begin (this process included visiting professor and TA office hours). Almost always between this research and working on a project, I could expect to spend anywhere from 10 hours to 150 hours per project from start to finish.
An example of a 10 hour project when I first started learning Java in a freshman course was to make this fish tank program that had swimming fish. Naturally, most of the support code and advanced code was already written for me, but it would be my job to figure out what that code did and tie it together into what the assignment was asking. Unfortunately, not knowing what I was doing (I might have had a clue but not much more), it would take me on average 10 hours to learn what the assignment was asking me to do and figure out the 10 lines of code that made the project work. The projects that fall in this category tend to have a week to complete the assignment and I barely had enough time to learn what I was supposed to learn.
Later in the program, I got into projects that would easily take 100 to 200 hours to complete. A good example of such a project would be a program that works with storing data in the computer. In computer science, there are methods that allow the programmer to store data and these are called data structures. One such data structure that I had to work with in this project was a binary search tree. I doubt you know what this is, but the important part is to picture a tree outside. Think that all the leafs on the tree are the data stored in the tree and the branches are a way to get to those leafs, this is a very vague picture of what a binary search tree does. Anyways, the project example would use a tree of some sort to store a dictionary and implement a spell check functionality using a tree, which tends to be much faster in dictionary lookups than other data structures.
If you don’t understand whats above, don’t worry, I don’t expect that anyone outside of computer science would have the slightest clue to what I said above is actually trying to get across. The fact is, through all of my past 3 years, I discovered that I’m really good at estimating how long a project will take and I decided that I’d plan ahead for a project that was due a couple weeks ago. I gave myself *just* enough time to complete that project based on what I felt it would take in terms of time, etc.
You might say that I kind of started it at the last minute (although I started days ahead of time because I estimated it would take 100 hours or so). Anyways, I choose to start precisely 1 week prior to the due date for a project that had a full month to complete. Normally, this is acceptable in most disciplines. Since I thought I knew enough to do this project in 100 hours, that is why I decided to start later.
Up until this project, I have never risked starting a project so late, especially a programming project that I really care about. You might say that I was experimenting with seeing how late I could start and still finish on time. Unfortunately, starting late because I thought I knew what I was doing burned me. I ended up doing a programming marathon with little sleep from that Thursday to that Sunday when the project was due.
From this experience, I have learned never to start late. I consider it my one trial for lateness to see what happens when I start something late, and for me, I write horrible code and my work is crappy. I also learned that when I work under pressure, I tend to give up a lot easier on tiny bugs, and I also found that I didn’t even do common sense error checking that I normally would do. The result, I submitted a half working project that might get a 75/100.
Perhaps you can use this example to convince yourself that you should never plan time without adding a buffer to it. Starting at the last minute is bad news, especially if you need to ask questions that may not come up until you actually attempt to submit your project.
Tags: due, last minute, late, project
Posted in Student Life
|| No Comments »
Posted on: October 8th, 2009 by Famous Phil
As of yesterday, Microsoft’s Exchange 2010 team announced the release of the Exchange 2010′s RTM here: http://msexchangeteam.com/archive/2009/10/08/452775.aspx#comments. This is exciting news because I can finally request the RTM and begin migrating my systems to the new Exchange. I have been waiting a few months now for this release because it will be the start of many changes to my web hosting services as well that I need to take further steps to secure and improve performance on.
For those of you who don’t know what an RTM is, this is the Release to Manufacturing version that usually becomes the full version within a few months automatically. Unlike Release Candidates, the RTM version of any software packages will become the full version meaning they don’t require any re-installation or pose any security threats to use in production.
Exchange 2010 is important for me because it will introduce the send as function like hotmail and other providers have. I have many email addresses, but my University at Buffalo address is my most important, so I send as my @ Buffalo address. With 2010, this will no longer be the case because I will reply to email as the address it was sent to. I believe this will prevent a lot of confusion to contacts that don’t recognize my university address.
With Exchange 2010, I will also be upgrading the hardware that hosts my email infrastructure. I will be supporting Server 2008 R2 which is the latest operating system for Windows Server. I believe this was only fully released a few days ago and it is very similar to Windows 7. For those of you who don’t keep up with new releases of Windows, Windows 7 will be released to everyone late this month. I am currently using the RTM version of Windows 7 and I find that it is about 10x faster and more stable than Windows XP. Compared to Windows Vista, I’d say its about 50x more stable, faster, and more efficient. Since Server 2008 is Vista’s server operating system, I prefer to stay away from Server 2008 entirely.
For those of you who are thinking about upgrading to Windows 7, I’d strongly recommend it! First, if you are running Windows Vista, you’d be nuts not to goto Windows 7 within a few months of its final release. Windows 7 is practically the same but much more efficient. You will find that everything will be much easier to use on Windows 7 than Windows Vista. For those of you on Windows XP, it might be time to bite the bullet and upgrade (like I did). For the most part, if your system runs Windows XP fine, it will not have any issues running Windows 7 fine. I did find a few minor problems with XP applications (mostly MIDI musical instrument related) not working on Windows 7, but support is fairly good otherwise. Just one word of caution to the developers out there, if you want to run Visual Studio 2005/2008 on Windows 7, don’t install any Microsoft Office 2007 compatibility pack or PDF package. These will make Visual Studio’s Installation fail (on my preliminary tests).
Now to get into some security updates. I plan on migrating all of my systems to a more secure environment shortly after Exchange 2010 is fully implemented. I will have 1 gateway server that serves as a connection point for all services within Matthouse to keep everything tightened down. Within the next few months you can expect performance increases on sites that I host including my own (this one).
I have a lot more to blog about, and I hope to get around to it all as time permits. My next blog will hopefully be something about mail filtering.
Tags: exchange 2010, matthouse, Microsoft, release candidate, rtm, upgrade, windows
Posted in Hosting / Server Administration, Technology
|| No Comments »