Website Downloader

Every once and a while there will be a website that goes offline temporarily, and it can be annoying. There are also the online web clients for source repositories that you can browse, but you would like to have an offline copy of the files. Enter HTTrack. This is a pretty simple tool that does exactly what you want it to, download and make offline copies of websites.

Link

Tags: , ,

Another Reason Macs Suck

I am admittedly a 100% anti-mac guy, but this is another reason why Macs are not a good platform to invest in.

I came across an article on CNET basically stating that Apple will not service your Mac if you, or anyone in your household, smokes. This is ridiculous. According to the recent Mac commercials, they have the highest rated customer satisfaction (even more than PCs). Obviously they forgot to ask the people who had been denied repair service on their Macs for ridiculous reasons.

Tags: , ,

OnLive – Future or Pipe Dream?

Ever since OnLive was demoed at GDC as a new technology, there has been quite a buzz about the internet about it. I have been doing some research and looking into it, because I think it is an interesting possibility. The only problem that I have is that, given the current state of the internet, I do not think that it is really a big possibility for most people.

First things first. When OnLive launches, they have said that it will only be available in the United States. If you want to do your gaming in full HD, you will need at least a 5MBps conneciton to the internet. I know that 5MBps is not a big deal in larger cities, but in more rural areas it isn’t always possible. Don’t forget the fact that internet service providers don’t like providing large bandwidth to customers for free, and many have started putting download caps and charging extra for overages. For many of the people who would want the true HD experience, they would be downloading 5MBps – if you played for an hour, you would download aroung 2GB an hour. If you were to play an hour a day, all month that would be ~60GB just for your gaming. And if you have VoIP, Skype, MSN, want to check your emails, even download something – you are going to have problems.

There was someone who brought up the fact that it would take enormous processing power to encode a 1920 by 1080 image 60 times a second (which they are aiming for) and send it to the web.

And what about the cost? Servers do not come cheap because they are built to run 24/7 and for years, they are more reliable than desktop computers but come at a price. They are talking about running everything with top of the line hardware, which is definitely not cheap. Graphics cards alone cost $300-$600 per card, not to mention the processor ($200), memory($50), motherboard ($100), and hard drive($100), server case($200). Even using very conservative pricing, the cost for one system would be ~$1000/system. Unless they have this really amazing deal with Dell or HP or someone, the start up investment alone would be massive! Also, lets not forget the bandwith costs either. It is common to see in data centers the cost for bandwith to be as low as $5/MBps. If they wanted to support 100 people playing at any given time, playing in full HD, they would need to have 500 Mbps connection for everything (without any overhead), which would cost $25/month. Granted its not a lot, but you just keep adding the number of people that want to play at any given time, its going to be a lot of money for an extremely fast internet connection.

They haven’t even specified how much this service is going to cost per month. I don’t know about you, but if I’m paying lots of money I want to at least have something to show for it at the end of it all. Say it was priced for a mere $29.99/month. After 12 months you would have paid $360 and have nothing to point to after a year. For the amount that you’re paying for OnLive you could’ve almost gone and bought yourself a PS3 (and you would have a great Blu-ray player on top of everything) a cheap XBox360, or even a Wii and you wouldn’t have to tie up your internet connection just to play a game.

Don’t forget the state of the internet, because it is such that I just do not believe that it can support the same immersive experience that having a console at home can. On any given day, a good response time (that is the time it takes for one round trip of data from your computer to another) with Google is ~30ms. 30ms is about the length of 1frame, when running at 30fps. It wouldn’t be so bad for a game like The Sims, but what about a game that is all based upon timing and reflexes, like FEAR or any other First Person Shooter.

Games would be 100% digitally distributed. That would mean that there would be no lending your copy of GTA4 to your friend to play. I am for digital distribution to a certain point, because I still rather have a box for a game that I paid $60 for. The little games like Flock, Counter Strike, Team Fortess 2, and others like that I’m okay not having a box.

The retail marketplace would change in a very drastic way. I’m not saying that this would happen, but imagine if a lot of people adopted OnLive as their primary (if not only) method of playing games. Well then what would be the need for Gamestop? I don’t think that there would be enough adopters to actually threaten the giant Gamestop, but its just a thought.

One happy note is that I think that OnLive would make piracy near, if not completely, impossible. Because you have no copy of the game local to you, how would you circumvent the security features?

OnLive seems very interesting, but I don’t really think that it will work 100% as advertised. But here’s hoping that maybe I’m wrong on this matter.

Tags: , ,

Obama’s USTR and Anti-Piracy

Recently the ESA cheered the USTR for “spanks” Canada for poor Anti-Piracy methods. The reason cited was the Canada needs copyright reform, which of course good ol’ Uncle Sam knows the way to help us.

First of all, I work in the Video Game industry so I generally believe in the ESA and what they try to do for my industry. But I am always for the rights of individuals over the rights of companys, but I believe that law should find a balance between the rights of individuals (consumers) and the rights of enterprises.

I did a quick google search for piracy rates, and I found a few links that cited piracy percentage rates in Canada. In 2000 the piracy rates were approximately 40% in Canada (according to this report, which I do not say is a valid one). According to the GamePolitics.com article, the current piracy rate is 31%. So over the past 9 years, the piracy rate in Canada has actually gone down. Sure we have more liberal laws on many things, because you should never legislate human behaviour.

One of the big complaints of the ESA is that we allow “game copiers” and “mod chips”. First of all, making them illegal will not eliminate the problem. You can do a quick Google search and find a bunch of websites that will ship a “mod chip” to almost anywhere. Oh, and don’t forget that when you buy a new computer, you are almost assuredly buying something that the ESA would not want you to have – a game copier (your DVD writer in your new computer). Sure they have some software protection built in, but its not that hard to circumvent it – use Google and I’m sure that you will find instructions pretty easily.

Another thing that good ol’ Uncle Sam thinks is that he has the answer, guess what – He doesn’t. Canada is not just the America to the North, as a Canadian citizen I receive many benefits that my neighbours to the South don’t have. Let’s see, first of all we have universal health care, I never had to go through a metal detector to get into school, I never had to worry about the Patriot Act, and those are just off the top of my head.

Sure, I am all for anti-piracy methods – but as long as they do not restrict the consumer. EA recently understood not to mess with consumers, with the DRM lawsuit over Spore.

Oh no! Canada has been put on the USTR’s “Priority Watch List” and as a result, is the country with the lowest piracy rates out of all of the currently list members. I hope that Ron Kirk doesn’t represent the direction that the Obama administration is heading, because we just got through with a useless American president that made the world a worse place.

Tags: , , ,

Lost Drivers

Windows. Plaged by drivers issues, and my only real complaint about Windows XP. I recently reinstalled Windows XP x64 after formatting my program install partition and my system partition – only had a fresh install once in 3 years after my system/program drive went up in a literal puff of smoke. I went online to the Creative Labs website and attempted to download the driver for my antiquated, but very much still functional, web cam.

Of course, couldn’t find it because they seemingly removed the driver download from their website. However, being the creative geniuses they are (no pun intended) they actually put a copy of the installer into the install directory and I thankfully imaged my hard drive before formatting it, and all was saved. I have a Creative Webcam Live! and there were no 64 bit drivers to be found anywhere (did find 32 bit ones though).

I even have a copy of Driver Detective who also couldn’t find a copy of my driver for me to download. So if anyone else shares in my plight, feel free to download a copy from my server here.

Tags: , , ,

File Replication

Recently I have been searching around on the internet to find a solution to a recent problem. I need to be able to have two copies of a particular folder (and all the subdirectories and files contained within) on two different servers. The reason being, in the world of web servers and hosting, you need to have redundancy for times of peril. I recently experienced an outage, not on a mission critical server, but on a server nonetheless.

So I did some searching on the internet and kept having the same response, use the Distributed File System built into Win2K3. So I tried that out, and well that didn’t yield any results (I had tried using the DFS before, but to no avail). The problem is that it is simply way too difficult to use. Links, roots, and targets and what they all did were just not worth it. So I decided that maybe I wanted to write my own software to do it, but that rarely works out because I usually get half way through a project and then dump it (or simply not finish it). So it took a Google search, and a hop over to freshmeat.net and Sourceforge until I found the perfect fit. At first I didn’t even know that I had found what I needed. The program I found was FreeFileSync. It has an attractive user interface, and is written in C++ (found plenty of programs written in java, but real programs are written in C++). So I installed it tried it out, and it turns out that it has advanced scripting features (aka it can function as a command line tool for sysadmins). The only thing that it lacked was the ability to watch specific folders and propogate changes to mirrored folders. So I decided that I would use C# (I know, Microsoft lacky) to make a little daemon that’ll sit in my system tray and will monitor certain folders and copy them over when needed. I also had to add the program to the Windows startup list (using regedit) so that I don’t need to manually start it every time I shut down a server (which is rare, but happens).

What happened is that I only had to spend an hour fiddling around with some of the most basic code I’ve written in a while and the way that I can watch several folders and then propagate the changes to other folders.

I have included this little project, but I do not warrant that this will work. All you have to do is enter the directory to watch and the script to execute when the directory changes in some way – it looks like this:

C:\Test|C:\scripts\sync.cmd

sync.cmd being the script generated by FreeFileSync. And that’s it, and its pretty easy. So if you want, download the file here

Please note that you need to download and install FreeFileSync to have everything work.

There are some bugs that I am aware of, but if you have any comments or suggestions please let me know.

Tags: , ,

Automated Build Server

An automated build server. Whats this you ask? An automated build server is an extremely useful tool to use in development. This type of server is dedicated specifically to running building scripts when you want. Most automated build servers come with at least one SCM plugin, usually for the ever popular open source CVS and SVN. A third, more restrictively licensed, popular SCM is Perforce (mostly commercial, however is available for small teams for free). These servers can build on schedules, or watch a SCM server and build whenever there is a commit. This means that you could do many great things, submit them to your SCM server, and be informed when something breaks, meaning hindering the development of other team members because you forgot to submit the changes to one of your files.

There are several automated build servers out there, such as Apache Ant, and NAnt (there are more, but I’m just listing two to keep the list short). There are some others, and there are two of my favourites.

The first hails from a group called Zutubi and they have a product called Pulse. Bascially, it runs as a java binary on your system (and because it is java it supports many different operating systems) and has a great web interface. Top notch product that you can’t go wrong with. Has everything that you need.

The second one is from a company called Atlassian. This one is called Bamboo. Just as great as Pulse, but also has some additional features such as Build Metrics and integration with other Atlassian products. Has a really awesome web interface to the java binary running on your system.

The really great things about the two that I’ve mentioned is the fact that they are from companies trying to make money, but they are really good in the fact that they support open source software development. Meaning that if you’ve got an open source software project, you may be able to get some free dev tools. Zutubi also offers small licenses for free to projects without a large dev team. Either one of these companies is a sure win because they aren’t out there just trying to make a buck, they are out there trying to be part of the solution and the community.

Tags: , , ,

Programmer Productivity

As any season programmer could tell you, productivity is a huge problem. I cannot recall the number of hours that I have spent wasting time on things that I didn’t think that I needed to be doing, and now there is proof that I was right. From typing out the same long lines of code again and again, with the Intellisense Database always being the best for C++. I have discovered several products that have have helped me increase my productivity.

Visual Assist X
This piece of software is excellent for code sensing and completion. This has helped me save time in figuring out the exact syntax or name of a function that I named ever so long ago. It has a whole wealth of features and comes with the ever so helpful(or annoying for some) Tip of the Day. If you’ve ever use Visual Studio for any .NET development and seen the code sensing for the .NET library and liked it you won’t be sorry for picking up a license of Visual Assist X.

Xoreax IncrediBuild
For any programmer who has ever spent time watching your build progress counting the lines of code that could be written while your build finishes, I have some software for you. Xoreax has this incredible piece of software called IncrediBuild that will allow you to utilize multiple cores not just on your computer, but on other licensed networked computers connected to the Build Coordinator. Using the idea of distributed compiling, IncrediBuild drastically reduces the compile time even for the simpliest of projects. I had a small game that usually took ~2 minutes or more to compile, that would take at most 1 minute. Even for a small project like that, the compiling time reduction was amazing! And that was only on one computer with a quad core processor. Imagine utilizing 20 cores to build an extremly large project, your compile times will be greatly reduced with IncrediBuild.

VisualSVN
First off, if, as a programmer, you don’t know what source control is – look it up. Source control has saved my butt so many times because I erased some code 30 revisions ago that I don’t remember but I need right now, and who really wants to reinvent the wheel? VisualSVN is a cool little plugin for Visual Studio to use Subversion really easily right in the IDE. It does save time when trying to commit and make changes and stuff. You could use the Winodws Explorer and do it that way, but again that wastes time

Tags:

Handy Software

There is tons of software available for your computer these days, and if you want to find some to speed up your computer, you’ve come to the right place. There is software for productivity, games, browsing the internet, and more. There is also a bunch of software for optimizing your computer and making it faster. The most common piece of software is probably the registry optimizer. I have two types of software that will help speed up your computer and possibly easy wear and tear.

Pre-Caching
There is a special feature that is now included with Windows Vista, called SuperFetch (also ReadyBoost is associated with this feature). Basically SuperFetch uses a USB Key or any other type of fast read device (quicker than a hard drive) to store commonly used programs so that they load faster. While many people are reluctant to switch to Windows Vista (as they should be) there is an alternative for people still using the solid Windows XP, and it is called eBoostr. This program intelligently monitors your program usage and stores what it believes to be the most commonly used programs in memory. This program actually is both a ReadyBoost and SuperFetch alternative available for XP.

There are many people who would choose to not pay for this software, and I have to say that for this particular piece of software you can go wrong purchasing it. The cost is ~$25 (depending on the version you choose) and you get pretty good support. This program (depending on your version) can store programs on a USB key or directly in your system’s RAM for lightning fast access. I had a problem installing this program and I emailed them and they were quite helpful. This program is great for getting programs to launch really quickly, and speed your computer up.

Great news is, that the program comes with support for both 32 and 64 bit Windows XP.

http://www.eboostr.com

RAM Disk
Although slightly related, this type of software is a little related to pre-caching. This type of software creates a virtual hard drive in your computer’s RAM. This can be incredibly useful for programs that are constantly accessing information from your system’s hard drive and can be a good place to store temporary internet files. If you download a lot of little files that you don’t keep or browse the internet a lot, having a RAMdisk can be quite helpful. The next good thing is, you can get it for free. Doing a simple google search brought up the following website:

http://www.mydigitallife.info/2007/05/27/free-ramdisk-for-windows-vista-xp-2000-and-2003-server/

They have great info about what a RAMdisk is and a download link for you to get the files you need and set everything up. The bad news is that this particular website doesn’t have the x64 version, but never fear there is a version.

http://www.planetamd64.com/index.php?showtopic=12230

You’ll have to sign up, but they provide all the info that you need.

Finally, for those of you who want an even better solution, there is the commercial option. There is a program called RamDisk Plus that will allow you to do everything and then some. The program also allows you to keep everything from your RamDisk so that it doesn’t get deleted when you restart your computer. They also have a 32 and 64 bit version for you to use.

http://www.superspeed.com/ramdisk.php

So I hope that this helps, and good luck to you all with speeding up your computers

Tags: