several other similarly named terminal windows that's sitting on some desktop that I forget where I put it. Scale.... visual recognition... select... and I'm there
So far I find it easier to distinguish window titles than windows - they often look too similar (a terminal with hostname1 often looks like hostname2 - I do colour code hostnames for live, staging, etc but I don't do different colours for each host;) ) . So stuff ilke Scale or Windows 7's preview isn't as helpful to me. Windows 7's textual window title preview is helpful (esp when I often have about 30 task buttons (email, IM, explorer, putty, cmd, rxvt, remote desktop, editor, etc * multiple instances of each and it starts to add up!), So far it still is faster for me to switch windows than to keep closing and relaunching/reopening them later.
But I'm never handling the same number of applications within screen as I do my desktop. I could certainly emulate screen's window / task management in my desktop environment.
Just curious how would you do that on GNOME/KDE or whatever your desktop environment is (I think "awesome" or something can probably do it)?
It works as long as you do not need to switch rapidly amongst more than 9 windows at a time. There is actually support for bank switching but I think only a few would be able to use that well (I don't use it ).
To work with a new set of up to 9 windows, "raise" them in the reverse order you want and then press winkey+0 or alt+0 (I prefer alt).
Handy if you don't have access to big/multi screens, or need to copy and paste amongst more than two windows (I can never do alt-tab fast for three or more windows).
Years ago I had KDE lock up on me every now and then, sometimes I could ssh in, but I sure couldn't figure out how to save the work done in the GUI. There might have been a way to do it, but how many people in the world knew of it? AFAIK it's the same problem whether it's KDE, GNOME or Unity. There is no easy way to recover your work.
So tell me what's the big fucking difference? Either way you've lost work. Joe Sixpack doesn't care if the network stack is still up and responds to pings/ssh - his work is gone.
My XP SP3 machine has only crashed/hung because of hardware issues - flaky NIC, failing video card.
My Linux machine hasn't crashed much either (and only due to hardware too). But I don't run a GUI on it.
I think something is wrong somewhere. Windows XP SP3 can run very comfortably in 512MB virtual machine. And the 512MB virtual machine doesn't even have to use all 512MB of the host machine's RAM.
So what does the GUI give you for all that memory use? Or is it mostly bloat?
I doubt it provides "faster performance". Seems to me most GUI designers either don't really care about performance or are clueless about it. They keep creating extra steps to do common stuff. Or insert artificial delays so that they can show flashy animations (e.g. click, pause for flashy animation, then only click to launch/activate). OSX's expose is actually slower than just clicking on the taskbar button representing the window you want to "raise". And moving your hand to click on the task button is often slower than "alt+<number>".
By the way, to the GUI designers out there, if "GNU screen" manages windows/tasks faster/better than your GUI, you are doing something wrong. A GUI that is friendly to new users does not have to be slower than "screen" in the hands of expert users.
And both money and religion can be useful, sometimes even in a positive way.
When enough people believe it's real there can be a big impact.
Many people believe the US dollar is still worth a lot (despite the Federal Reserve creating more than 9 trillion of it in recent times).
Many people believe in the US Constitution, almost as if it's a perfect unchallengeable document, despite the fact their favourite precious bits are usually the _amendments_ to it.
Many missionaries believed enough to go to some distant poor country, sacrifice their lives to help out, start schools, hospitals.
Many soldiers or religious fanatics believe enough to go to some other country, kill other people and/or die trying.
Many people believe in their football team, enough to fight supporters of other teams over it.
Your bank PINs, bank account numbers and credit card numbers are all numbers too. Heck everything is a number to a digital computer.
That's why we have judges and courts to decide on stuff. Not autistic or retarded slashdotters.
FWIW Sony shouldn't have got away so easily for their rootkit stuff and there's much other evil they do. But the "it's just a number" argument is retarded.
For say an MMO you could have a "Like" and "Dislike" button, and have a limit of times you can use it per day. And you might only be able to use it on people who have been on your own team/side;). And you only see your score update after a week or so, or 30 dislikes/likes whichever comes first.
End of the month, the top X most liked might get a month's free play. The top Y most disliked might get monitored by staff (review interaction logs) to see if either they've been abusing T&C in ways that might get them banned, or the people who've been disliking them are the griefers.
That said if a griefer is going to set up 10 sock puppets and pay $$$ per puppet per month to "dislike" me, he's getting punished already;).
Might not wish to implement the dislike button - because the problem is the noobs might get disliked to death;).
It actually can be a lot easier to police certain virtual worlds than the real world, because you can log a lot of stuff.
That's a stupid remark. By your logic the creator of the game of chess/football would be malevolent or incompetent.
It's just hubris to assume that if there is a creator he/she should be on our side otherwise that creator has to be malevolent or incompetent. Also shows narrowmindedness and a lack of imagination.
Humans should grow up, just like babies and toddlers should grow up- the world isn't about catering to their every whim and fancy.
Batteries or other forms of energy storage are heavy too. You would need them in many classes of practical solar powered planes.
In the event we run really low on petroleum what would be more common is generating fuel on the ground (hydrocarbons from biofuel, solar, nuclear or whatever) and then filling up a conventional jet plane with it. That way passenger planes can still travel at 900+kph.
Solar powered planes on the other hand might be useful as drones or "satellites".
Oops I meant to say this instead: "Is there a reason why it would remain hard for the bacteria to stay dormant in the presence of sugar as long as there are antibiotics around?"
Actually I don't care whether it is native or not.
I want it fast. If they can get javascript to run fast, why can't they make perl faster? Heck get perl5 to run fast now and I don't mind "waiting for perl6" for another 20 years;).
I've asked a Buddhist friend whether viruses are the highest lifeform before nirvana instead of humans (there seems to be a popular assumption that humans are one of the higher ones).
Not much harder, perl malware would run on most linux distros, OS X, AIX, Solaris, *BSD. It'll even run on windows if you use pp to create an exe.
If malware users (who aren't always the writers) could get people to type in passwords decrypt encrypted zip files to install the malware (this actually happened!), they'd be able to get people to jump through hoops and run "perl Makefile.PL" to install "Antivirus 2011".
If the malware's purpose is to send spam and/or DDoS and/or copy user secrets (.ssh, client certificates, etc), there is no need for root access at all.
I HAVE written a multiplatform agent in perl. It's for legitimate and work purposes - it regularly does hardware and software scans and reports them back to HQ.
From what I see sending spam and DDoS packets with perl is far easier (done the same way on all platforms) than parsing the different hardware report formats for each OS/distro, and doing stuff like figuring out what should be "BIOS version", "system serial number", "motherboard serial number", "OS Version", for x86, OSX, AIX, Solaris. Or figuring out how to get perl https support on all linux distros (for some stupid reason linux distros don't provide it by default but OSX does). Don't need https support to DDoS/spam people...
Heck if fast internet connections become ubiquitous, then having the Windows version in a perl exe is not such a silly idea. It'll be interesting to see how the antivirus scanners cope with polymorphic perl malware - TMTOWTDI and all that. Currently a perl exe would be a bit big (3-4MB) for slower connections.
That is NOT a widespread practice. Most companies want - most companies DEMAND that you show up for work, do your job, and mostly go unnoticed. They don't want quirks.
Yeah that's why it is important to learn from school how to wake up early, be on time at a place you don't want to go, sit quietly at your place for hours without disturbing peers and superiors...;)
In some places the boss doesn't care that much if he/she just hired deadwood- the boss is reserving them for the time when the CEO says "I don't care how well you did, everyone has to cut staff by 10%".
For most projects you will never have all the requirements defined up front.
Writing detailed complete requirements takes about as long as writing code, and as you've mentioned clients usually don't know what they need.
So the developers/analysts will have to write the requirements for them and guess what they want and how they might change their mind in the future. How much they guess wrong depends on luck and experience;).
I've put in stuff before which people say they don't want, but later they want/need it because of some new external demand.
If you get the foundation/schema/design right, you don't have to rewrite stuff to add features they want later. You don't have to write all the code in advance, just prepare the way "just in case":).
One of the big pains I find is fixing/overhauling other people's code. I'm far from a great coder, but often it seems the reason other developers seem so fast is because they're skipping a lot of stuff, or even doing things plain wrong. The other big pain is dealing with crap like "legacy PHP" and similar crap that make it so hard to do stuff the right way.
FWIW, some people have had decent results writing the "user manuals" first! I see some merit with that idea, but I'm not sure what projects will be good with that approach.
Might not have much of a choice. **gripes** Here are my gripes about windows from an admin POV: 1) Unlike unix/unixlike OSes with Windows quite often you cannot rename/move/delete files/dirs that are in use. You might be able to do it in some cases, but not others, it's quite annoying if you are trying to atomically change/upgrade/update stuff without rebooting/restarting too much crap. You may think this is a small thing, but it has a major effect/limit on how you do stuff on windows (even Microsoft has to force reboots to change files). So you may have to resort to stuff like this: http://technet.microsoft.com/en-us/sysinternals/bb897556
Might not be as big an issue once you're large enough to use load balancers:).
2) The fine grained ACLs are good, but they often don't seem to work properly. On Win2k8 I've encountered cases where an account belongs to the Administrator's group but it somehow does not have enough permissions to rewrite/save a file that "full access" permissions to those in the Administrator's group. Why can't I open the file, change it and save it back? When I use that account to copy a file onto that file I get a "privilege escalation" prompt and if I "OK" it it overwrites the file. So the account is definitely in the Administrators group already...
3) I don't know why but lots of Windows stuff tends to have crappy logging by default. You often have unhelpful error messages that say "it hurts", but not tell you where it hurts, or what was being attempted, or what the target was. Some are even more useless! e.g. "UVD Information".
In theory this shouldn't be OS related but somehow I've had a lot less trouble figuring out what's going on from logs in linux/*bsd machines than from windows machines -e.g. it's faster/easier to figure out why email is not being received/sent with the former than the latter.
Searching for stuff in windows event logs is also a pain and a lot slower than using tail and grep on the unix/linux text logs.
4) Too often nobody seems to know what things actually do or how things actually work, not even people working for Microsoft - (e.g. this is not the full story: http://blogs.msdn.com/b/oldnewthing/archive/2007/10/08/5351207.aspx Apparently there's stuff like a not very documented ITaskList_Deleted property which also affects how windows are handled... Then there's the ServerXMLHTTP vs XMLHTTP - my colleague found out the hard way that there are cases where ServerXMLHTTP works and XMLHTTP doesn't - he still doesn't know why. I've not seen documentation on the real technical differences - this is light on the details: http://support.microsoft.com/kb/290761 ).
As a result there are messageboards, blogs and docs filled with incorrect information.
And there's often no practical way to find out (unless you're an uberhacker who can disassemble megabytes of code in your sleep). With OSS stuff, at least you can look at the source and have a better idea (but sometimes you just go wow it's amazing that stuff even works, maybe I should use something else;) ).
**tips** OK end of grumbling, here's what I use for when the automation breaks down;).
1) Add notepad, texteditor and hexeditor shortcuts to your SendTo folder. If you are unclear on where your SendTo folder is (because of roaming profiles or other weirdness), go to start, and run shell:sendto
Once you've done that you can right click on any file and open it with your editor/program of choice (add media player classic or VLC if you want;) ).
2) create a folder for utilities. e.g. c:\util or c:\bin and add it to your path (WinXP: winkey+pause, advanced, environment variables, system variables, path. Win2K8:start,right click computer, manage, advanced or something
several other similarly named terminal windows that's sitting on some desktop that I forget where I put it. Scale.... visual recognition... select... and I'm there
So far I find it easier to distinguish window titles than windows - they often look too similar (a terminal with hostname1 often looks like hostname2 - I do colour code hostnames for live, staging, etc but I don't do different colours for each host ;) ) . So stuff ilke Scale or Windows 7's preview isn't as helpful to me. Windows 7's textual window title preview is helpful (esp when I often have about 30 task buttons (email, IM, explorer, putty, cmd, rxvt, remote desktop, editor, etc * multiple instances of each and it starts to add up!), So far it still is faster for me to switch windows than to keep closing and relaunching/reopening them later.
But I'm never handling the same number of applications within screen as I do my desktop. I could certainly emulate screen's window / task management in my desktop environment.
Just curious how would you do that on GNOME/KDE or whatever your desktop environment is (I think "awesome" or something can probably do it)?
On Win XP/7 I do that with a program I wrote: http://sourceforge.net/projects/linkkey/
It works as long as you do not need to switch rapidly amongst more than 9 windows at a time. There is actually support for bank switching but I think only a few would be able to use that well (I don't use it ).
To work with a new set of up to 9 windows, "raise" them in the reverse order you want and then press winkey+0 or alt+0 (I prefer alt).
Handy if you don't have access to big/multi screens, or need to copy and paste amongst more than two windows (I can never do alt-tab fast for three or more windows).
"It doesn't get PC viruses." Now this isn't saying it doesn't get any viruses, but it's sure as hell implying it.
It gets Mac viruses, which are way cooler, rarer and more exclusive.
Feel like a stand up comedian telling jokes to an ostrich?
It's easier for jokes to woosh over heads that are below ground level...
OK say you are working on a document/email using Unity on Linux, and Unity crashes. What happens to your unsaved work? If you say "just save often", sometimes the GUI devs make it annoying to do so: https://bugs.kde.org/show_bug.cgi?id=270800 https://bugs.kde.org/show_bug.cgi?id=96901
Years ago I had KDE lock up on me every now and then, sometimes I could ssh in, but I sure couldn't figure out how to save the work done in the GUI. There might have been a way to do it, but how many people in the world knew of it? AFAIK it's the same problem whether it's KDE, GNOME or Unity. There is no easy way to recover your work.
So tell me what's the big fucking difference? Either way you've lost work. Joe Sixpack doesn't care if the network stack is still up and responds to pings/ssh - his work is gone.
My XP SP3 machine has only crashed/hung because of hardware issues - flaky NIC, failing video card.
My Linux machine hasn't crashed much either (and only due to hardware too). But I don't run a GUI on it.
I think something is wrong somewhere. Windows XP SP3 can run very comfortably in 512MB virtual machine. And the 512MB virtual machine doesn't even have to use all 512MB of the host machine's RAM.
So what does the GUI give you for all that memory use? Or is it mostly bloat?
I doubt it provides "faster performance". Seems to me most GUI designers either don't really care about performance or are clueless about it. They keep creating extra steps to do common stuff. Or insert artificial delays so that they can show flashy animations (e.g. click, pause for flashy animation, then only click to launch/activate). OSX's expose is actually slower than just clicking on the taskbar button representing the window you want to "raise". And moving your hand to click on the task button is often slower than "alt+<number>".
By the way, to the GUI designers out there, if "GNU screen" manages windows/tasks faster/better than your GUI, you are doing something wrong. A GUI that is friendly to new users does not have to be slower than "screen" in the hands of expert users.
And both money and religion can be useful, sometimes even in a positive way.
When enough people believe it's real there can be a big impact.
Many people believe the US dollar is still worth a lot (despite the Federal Reserve creating more than 9 trillion of it in recent times).
Many people believe in the US Constitution, almost as if it's a perfect unchallengeable document, despite the fact their favourite precious bits are usually the _amendments_ to it.
Many missionaries believed enough to go to some distant poor country, sacrifice their lives to help out, start schools, hospitals.
Many soldiers or religious fanatics believe enough to go to some other country, kill other people and/or die trying.
Many people believe in their football team, enough to fight supporters of other teams over it.
Your bank PINs, bank account numbers and credit card numbers are all numbers too. Heck everything is a number to a digital computer.
That's why we have judges and courts to decide on stuff. Not autistic or retarded slashdotters.
FWIW Sony shouldn't have got away so easily for their rootkit stuff and there's much other evil they do. But the "it's just a number" argument is retarded.
For say an MMO you could have a "Like" and "Dislike" button, and have a limit of times you can use it per day. And you might only be able to use it on people who have been on your own team/side ;). And you only see your score update after a week or so, or 30 dislikes/likes whichever comes first.
End of the month, the top X most liked might get a month's free play. The top Y most disliked might get monitored by staff (review interaction logs) to see if either they've been abusing T&C in ways that might get them banned, or the people who've been disliking them are the griefers.
That said if a griefer is going to set up 10 sock puppets and pay $$$ per puppet per month to "dislike" me, he's getting punished already ;).
Might not wish to implement the dislike button - because the problem is the noobs might get disliked to death ;).
It actually can be a lot easier to police certain virtual worlds than the real world, because you can log a lot of stuff.
Of course in some games, some people view the punishment as a reward: http://www.youtube.com/watch?v=usYzlP_9w_c&feature=related
That's a stupid remark. By your logic the creator of the game of chess/football would be malevolent or incompetent.
It's just hubris to assume that if there is a creator he/she should be on our side otherwise that creator has to be malevolent or incompetent. Also shows narrowmindedness and a lack of imagination.
Humans should grow up, just like babies and toddlers should grow up- the world isn't about catering to their every whim and fancy.
The patent system by design tends to reward the obvious.
:).
By the time the market and investors understand the really innovative nonobvious stuff, the patents would have expired
Whereas crap like "one-click" gets rewarded.
That's only assuming the Creator is solely on our side ;).
Batteries or other forms of energy storage are heavy too. You would need them in many classes of practical solar powered planes.
In the event we run really low on petroleum what would be more common is generating fuel on the ground (hydrocarbons from biofuel, solar, nuclear or whatever) and then filling up a conventional jet plane with it. That way passenger planes can still travel at 900+kph.
Solar powered planes on the other hand might be useful as drones or "satellites".
Oops I meant to say this instead:
"Is there a reason why it would remain hard for the bacteria to stay dormant in the presence of sugar as long as there are antibiotics around?"
Just wondering how long it would take for the bacteria to become resistant to this technique.
;).
Is there a reason why it would remain hard for the bacteria to stay dormant in the presence of antibiotics as long as there is sugar around?
Might be trivial enough for the bacteria to evolve around this by next month
Hmm I wonder if there's a decent free wifi mac address or BSSID geolocation database available.
Actually I don't care whether it is native or not.
;).
I want it fast. If they can get javascript to run fast, why can't they make perl faster? Heck get perl5 to run fast now and I don't mind "waiting for perl6" for another 20 years
It might not be permanent debilitation:
http://www.nytimes.com/2003/06/22/magazine/22SAVANT.html?pagewanted=1
http://wireheading.com/brainstim/savant.html
I've asked a Buddhist friend whether viruses are the highest lifeform before nirvana instead of humans (there seems to be a popular assumption that humans are one of the higher ones).
After all it seems likely that viruses have reduced amounts of craving and have pretty much minimal delusion: http://en.wikipedia.org/wiki/Buddhism#Suffering.27s_causes_and_solution
There are more viruses, so maybe that's good news - more and more entities are close to Nirvana ;).
Not much harder, perl malware would run on most linux distros, OS X, AIX, Solaris, *BSD. It'll even run on windows if you use pp to create an exe.
If malware users (who aren't always the writers) could get people to type in passwords decrypt encrypted zip files to install the malware (this actually happened!), they'd be able to get people to jump through hoops and run "perl Makefile.PL" to install "Antivirus 2011".
If the malware's purpose is to send spam and/or DDoS and/or copy user secrets (.ssh, client certificates, etc), there is no need for root access at all.
I HAVE written a multiplatform agent in perl. It's for legitimate and work purposes - it regularly does hardware and software scans and reports them back to HQ.
From what I see sending spam and DDoS packets with perl is far easier (done the same way on all platforms) than parsing the different hardware report formats for each OS/distro, and doing stuff like figuring out what should be "BIOS version", "system serial number", "motherboard serial number", "OS Version", for x86, OSX, AIX, Solaris. Or figuring out how to get perl https support on all linux distros (for some stupid reason linux distros don't provide it by default but OSX does). Don't need https support to DDoS/spam people...
Heck if fast internet connections become ubiquitous, then having the Windows version in a perl exe is not such a silly idea. It'll be interesting to see how the antivirus scanners cope with polymorphic perl malware - TMTOWTDI and all that. Currently a perl exe would be a bit big (3-4MB) for slower connections.
That is NOT a widespread practice. Most companies want - most companies DEMAND that you show up for work, do your job, and mostly go unnoticed. They don't want quirks.
Yeah that's why it is important to learn from school how to wake up early, be on time at a place you don't want to go, sit quietly at your place for hours without disturbing peers and superiors... ;)
In some places the boss doesn't care that much if he/she just hired deadwood- the boss is reserving them for the time when the CEO says "I don't care how well you did, everyone has to cut staff by 10%".
AFAIK the waterfall model was first used as an example of a flawed broken process in 1970.
http://en.wikipedia.org/wiki/Waterfall_model
http://www.cs.umd.edu/class/spring2003/cmsc838p/Process/waterfall.pdf
For most projects you will never have all the requirements defined up front.
;).
:).
Writing detailed complete requirements takes about as long as writing code, and as you've mentioned clients usually don't know what they need.
So the developers/analysts will have to write the requirements for them and guess what they want and how they might change their mind in the future. How much they guess wrong depends on luck and experience
I've put in stuff before which people say they don't want, but later they want/need it because of some new external demand.
If you get the foundation/schema/design right, you don't have to rewrite stuff to add features they want later. You don't have to write all the code in advance, just prepare the way "just in case"
One of the big pains I find is fixing/overhauling other people's code. I'm far from a great coder, but often it seems the reason other developers seem so fast is because they're skipping a lot of stuff, or even doing things plain wrong. The other big pain is dealing with crap like "legacy PHP" and similar crap that make it so hard to do stuff the right way.
FWIW, some people have had decent results writing the "user manuals" first! I see some merit with that idea, but I'm not sure what projects will be good with that approach.
Youtube is not too bad ;).
http://www.youtube.com/user/mockmoon2000#grid/user/F3C868A21F33E198
http://www.youtube.com/watch?v=Rk6_hdRtJOE
Yes it's not the same... But actually it's better than the "real" night sky where I live.
According to some studies 1 fifth of the world population can't see the milky way at night.
That's because they don't have internet access, otherwise they'd be able to see it even at daytime ;).
http://www.youtube.com/user/mockmoon2000#grid/user/F3C868A21F33E198
http://www.youtube.com/watch?v=Rk6_hdRtJOE
Might not have much of a choice.
**gripes**
Here are my gripes about windows from an admin POV:
1) Unlike unix/unixlike OSes with Windows quite often you cannot rename/move/delete files/dirs that are in use. You might be able to do it in some cases, but not others, it's quite annoying if you are trying to atomically change/upgrade/update stuff without rebooting/restarting too much crap. You may think this is a small thing, but it has a major effect/limit on how you do stuff on windows (even Microsoft has to force reboots to change files).
So you may have to resort to stuff like this: http://technet.microsoft.com/en-us/sysinternals/bb897556
Might not be as big an issue once you're large enough to use load balancers :).
2) The fine grained ACLs are good, but they often don't seem to work properly. On Win2k8 I've encountered cases where an account belongs to the Administrator's group but it somehow does not have enough permissions to rewrite/save a file that "full access" permissions to those in the Administrator's group. Why can't I open the file, change it and save it back? When I use that account to copy a file onto that file I get a "privilege escalation" prompt and if I "OK" it it overwrites the file. So the account is definitely in the Administrators group already...
3) I don't know why but lots of Windows stuff tends to have crappy logging by default. You often have unhelpful error messages that say "it hurts", but not tell you where it hurts, or what was being attempted, or what the target was. Some are even more useless! e.g. "UVD Information".
In theory this shouldn't be OS related but somehow I've had a lot less trouble figuring out what's going on from logs in linux/*bsd machines than from windows machines -e.g. it's faster/easier to figure out why email is not being received/sent with the former than the latter.
Searching for stuff in windows event logs is also a pain and a lot slower than using tail and grep on the unix/linux text logs.
4) Too often nobody seems to know what things actually do or how things actually work, not even people working for Microsoft - (e.g. this is not the full story: http://blogs.msdn.com/b/oldnewthing/archive/2007/10/08/5351207.aspx
Apparently there's stuff like a not very documented ITaskList_Deleted property which also affects how windows are handled...
Then there's the ServerXMLHTTP vs XMLHTTP - my colleague found out the hard way that there are cases where ServerXMLHTTP works and XMLHTTP doesn't - he still doesn't know why. I've not seen documentation on the real technical differences - this is light on the details: http://support.microsoft.com/kb/290761 ).
As a result there are messageboards, blogs and docs filled with incorrect information.
And there's often no practical way to find out (unless you're an uberhacker who can disassemble megabytes of code in your sleep). With OSS stuff, at least you can look at the source and have a better idea (but sometimes you just go wow it's amazing that stuff even works, maybe I should use something else ;) ).
**tips** ;).
OK end of grumbling, here's what I use for when the automation breaks down
1) Add notepad, texteditor and hexeditor shortcuts to your SendTo folder. If you are unclear on where your SendTo folder is (because of roaming profiles or other weirdness), go to start, and run shell:sendto
Once you've done that you can right click on any file and open it with your editor/program of choice (add media player classic or VLC if you want ;) ).
2) create a folder for utilities. e.g. c:\util or c:\bin and add it to your path (WinXP: winkey+pause, advanced, environment variables, system variables, path. Win2K8:start,right click computer, manage, advanced or something