Tuesday, November 29, 2011

What a crock

At home we recently got a new slow cooker (a.k.a. crock-pot), but I have to say I'm very disappointed. We've cooked several recipes in it and each was overcooked. I noticed with the crock pot set to low the contents were boiling. I'm sorry, it should not boil on low.

From what I can tell this is true of all new crock pots. Apparently manufactures have increased the cooking temperatures by about 20 degrees. So whereas low used to be about 185 degrees it's now 205, and high went from about 200 to 220. This change angers me. Most crock pot recipes are designed to cook at a certain temperature for a certain length of time. But by increasing the temperature now all recipes won't cook the same without guesstimating how much to decrease the cook time. Also, shorter cook times mean you can't put the food in before you leave for work and come home to a hot dinner. Instead you'll come home to a burned dinner.

Why did they do this you ask? Good question. Everything I've read says manufactures were afraid of being sued because the slower cooking crock pots left food in the "danger zone" longer. The "danger zone" being 40 degrees to 140 degrees, the temperatures most likely to encourage bacterial growth. But this is being overly paranoid. As long as you let the food cook completely there's nothing to worry about. If I take food out of the oven early before it's finish cooking I could get sick. But is that the ovens fault? No, it's my own stupid fault. The same is true with crock pots.

As you can tell I'm a little peeved here. I really enjoy crock pot cooking, but this new crock pot is going to make that difficult. If I ever find a crock pot with actual temperature control (not just low/high) I'll buy one. And if you have an older crock pot, pray that is lasts a long time.

Monday, November 28, 2011

Star Wars Lego ornaments

With Christmas fast approaching I thought it might be time for a Christmas related post. Last year I discovered a build your own Death Star Christmas tree ornament made out of Legos. This kit is not an official kit, so you can't buy it in stores. Instead, you need to log onto Lego's Pick a Brick website and order the pieces manually. I received this as a gift last Christmas, so this year is the first year our Christmas tree is decorated with a Lego Death Star.


This kit is "cool" on so many levels. It's Star Wars and it's Legos, both of which were a huge part of my childhood. Even though this kit is not official, it's done very nicely. The instructions are as easy to follow as a genuine kit. It's made out of genuine Lego pieces. And the end product looks very cool. I highly recommend this for any Star Wars and Lego fan. It is a bummer that you have to order the pieces manually. But the cost is reasonable. I believe it was just under $20, which included shipping.

New for this year is a build your own Millennium Falcon Christmas tree ornament Lego kit. I can see it now, in a few short years my Christmas tree will be nothing but Star Wars ornaments made out of Legos. :)

Sunday, November 20, 2011

Elenco XP-720K

I recently built the Elenco XP-720K, a bench variable DC power supply that comes in kit form. This is my mini-review of that kit and the process.

My first impression of the kit was of the quality. For a relatively small device it had a lot of weight. The metal case for the power supply is from thick metal, not cheap and flimsy. The painting on the case is very nice, and all the components for the inside are of good quality as well. The instructions are clear and easy to follow. All and all it was a fun kit to build.

As I built the kit I didn't photographically document every step of the way, but if you want to check out pictures of someone else building the kit go here.

I did make several changes or "mods" to the design.

  1. I replaced the provided potentiometers with some Bourns 10-turn pots (3590S-2-202L). With more turns I have greater control over accuracy. I can easily dial the output power to within 2 thousandths of a volt. I could have added some "fine-tuning" pots in series with these pots for greater accuracy, but I don't need that level of accuracy.
  2. In addition to the new pots, I used metal knurled knobs from Kilo (OEJL-63-4-5).
  3. I covered the connections with the voltage regulators in heat shrink tubing to prevent shorts.
  4. Instead of the provided capacitors, I ordered new high-quality low-ESR Panasonic brand capacitors rated for power supply use. With these high-quality caps the power supply should run for a long time.


Here are some pictures of the changes I made to the original design.






If I had to do this over I think there is only one change I would make. The new knobs I used were 5/8" in diameter. I think I would use larger 3/4" or even 1" diameter.

Even though I'm very pleased with this kit, I can think of some improvements I would suggest to Elenco.

  • The traces and the pads on the circuit board are too large. I suspect this is to make it easier for a beginner to solder, but it actually does the opposite. Because the there is so much copper on the board, it takes longer to heat the copper to get the solder to flow properly. So this actually makes it harder to solder.
  • Soldering the 12 wires onto the voltage regulators was not the easiest. If there were some sort of clip to slide onto the regulators, or if the regulators were soldered onto a second board with a ribbon cable connector between them, it would make assembly easier would help in reliability.
  • Use bridge rectifiers instead of 4 individual diodes. Fewer solder connections and would be quicker and easier.
  • Offer a model that includes a built-in display for voltage. Always having to use a multimeter to dial-in the voltage will get old fast.
  • Offer a model that is based around the switch-mode power supply design versus the linear design of the XP-720K. Sure it would cost more, but it would be more efficient and would be even more fun to build.


The Elenco XP-720K is a great kit and a useful product once complete. If you find yourself in need of a variable DC power supply, consider this product (or the smaller XP-15K).

Wednesday, November 16, 2011

Electrical surges addendum

In my last post I talked about electrical surges, how devices like vacuums generate them and how good-quality surge protectors guard against them. I can already see it, someone who it read is thinking "are you saying that a vacuum on the same circuit as a TV or computer without a surge protector would mean instant damage to the TV/computer?" Surely you can't be making that claim, because I've done just that before and the TV/computer still works, so your claims are false. Well, I don't claim this scenario will always result in damage to the TV/computer, but if you repeat this scenario eventually it will fail. Let me explain why this is.

The electricity coming into your house is AC (alternating current). The problem is very few devices use AC, most require DC (direct current). Therefore, every TV, computer, radio, etc. has an AC to DC power supply. Inside that power supply is the same protection circuitry located in a surge protector. That's why the device does not fail after one power spike.

"If the TV/computer protects itself against surges, why bother with a surge protector?" I'm glad you asked. The first reason is what I said in the last post - the circuity can only protect against X number of surges, after that it's useless. So if you don't use a surge protector eventually the TV will break and you'll have to replace or repair it, but if you use a surge protector you can replace the surge protector for much cheaper. The second reason is because the TV/computer probably contains a low-level of protection, i.e. it only protects against a low number of joules of energy. A good-quality surge protector will protect against more joules.

Also, if the TV/computer is on or off during the surge makes little difference. The device is probably more susceptible to surges when powered on, but may still be overloaded when turned off. The only way to truly protect it is by disconnecting it from the socket.

One final thing I'll mention is polarized AC plugs. You've probably noticed some AC plugs are polarized (one connector is larger than the other). If AC flows in both directions why is the plug polarized? The answer has to do with the protection circuitry. Manufactures put the protection circuitry on the "hot" wire and leave the "neutral" wire unprotected. Thus the polarized plug ensures the protection circuity is properly protecting the device. Manufactures could protect both the hot and neutral (and indeed some do), but this costs more money. If you've ever "forced" a polarized plug to fit the wrong way, the device was no longer protected. Also, if you have a wiring fault in your home, the device is unprotected as surges could come up the neutral wire. Both of these are still more reasons to use a good-quality surge protector. A good surge protector protects hot, neutral, and ground.

Electrical surges

Recently I learned some very useful info related to electrical surges and surge protection. An electrical surge can be described as additional voltage and/or current above and beyond the expected amounts. These surges can come from two main sources, outside your house (e.g. lightning strike) or inside your house (more on that later). Regardless of the source, a surge could easily damage newer electronic devices which are very sensitive to surges. Despite common believe, fuses do not protected against surges. Fuses only protect against too much current (amperes) not too much voltage.

Before I discuss protection, I wanted to talk a little more about surge sources. It's easy to understand surges external to your house - the most obvious example would be lightning strike. But surges generated inside your house are a little more difficult to understand. I won't go into the electrical science, but the short answer is any large inductive device has the potential to create voltage surges. The most common inductive device capable of generating large surges is large electrical motors. Whenever you turn off an electrical motor it creates a voltage surge on the household circuit on which it's connected. And yes you read that correctly, the surge is created after the motor is turned off, not before or during. This is one of the main reasons why refrigerators, washer and dryer, and air conditioners are typically on their own circuit. If other appliances were connected to the same circuit as these appliances they would get a surge every single time the motor switches off. There is however one large motor in your house which is not on a dedicated circuit - your vacuum cleaner. Vacuum cleaners have deceptively large powerful motors in them. It's not uncommon for a vacuum cleaner to pull 12 amps or more. That is a lot of power! So if you plug your vacuum cleaner into the same circuit as your expensive TV or computer, when you turn the vacuum off you're subjecting those devices to a surge. After vacuum cleaners, the next biggest source of surges would have to be fans (both those plugged into the wall and ceiling fans).

Now that we know the sources of surges, what can we do about it? Obvious you say, we use a surge protector. Well yes and no. The answer is a surge protector, but not all surge protectors are created equal. Most people refer to the following item as a surge protector:

This may be a surge protector, but chances are good it's just a power strip. A power strip is nothing more than multiple outlets with an on/off switch. It offers zero protection against over-voltage or over-current. A true surge protector is usually a little larger in size and costs more. The only way to tell them apart is to either open them up and look on the inside, or read the specs that came with the product. Chances are if you spent less than $10 or $20 on it, then it's probably a power strip not a surge protector. Probably the most respected name is APC, they make high-quality devices. There are other good brands as well.

Even if you have good-quality surge protectors, you may not be covered. As it turns out surge protectors breakdown over time. In effect they can only protect against a certain number of surges before they fail. When they fail the surge protector will still provide power, but the surge protection aspect is gone.

So what's the take-away from all this.

  1. Identify the circuits on your house with expensive electronic items (TVs, computers, etc.). Never use a vacuum cleaner on these circuits. Also, if possible avoid fans on these circuits.
  2. Buy and use good quality surge protectors NOT power strips.
  3. Even if you have good-quality surge protectors, don't assume you're safe as they have a limited lifespan.


If you really want to know more on this, I recommend you watch this video in which he does a great job of explaining inductive spikes. Also, the following article dissects a surge protector and goes into more details.

Monday, November 14, 2011

Electronic parts

Lately I've been doing a lot of electronics repair. It's kind of a fun little hobby. Say your flat-panel computer monitor dies on you. You could throw it away, or for about $4 and 5 minutes of time you can repair it. Of course, you need to know how and what to repair, and I'm not really going to cover that here. The other thing you need is replacement parts, which is what I wanted to talk about today.

Say you need a diode, capacitor, resistor, etc. to repair an item. You could go down to your local Radio Shack or other electronics supply shop, but I would recommend against it. First, these places have a very limited supply, and second if you buy online you can get higher quality components. Also, the prices online are cheaper, although when you add in shipping the final cost will be about the same.

I recommend digikey.com. There are other sites, but digikey is my preferred supplier. Let's say you're looking for a 680 uF 16 volt capacitor (like this):

Knowing how to find this on digikey's site can be overwhelming the first time you try it.

  1. Enter "capacitor" in the search box on digikey's site and hit enter.
  2. The next screen shows all the different type of capactitors (e.g. ceramic, tantalum, etc.). In this case we're looking for "aluminum" so click on that. (BTW: you just need to learn that aluminum is another name for standard electrolytic capacitors.)
  3. On the next screen, you need to filter down the selection. Under capacitance select "680uF." Under voltage select "16V." Under mounting type select "through hole." Finally check "in stock" and click Apply Filters.
  4. This filtered it down to 17 choices. From here you can find the one you want, or further filter using manufacture, dimensions, etc.


Depending on which one you select, the capacitor is only .40 - .75 plus shipping (which is cheap for small orders). Once you learn to navigate digikey's site they have some really cool stuff such as thousands of LEDs of ever shape and color. If you're into electronics repair, hobby kit building, RC planes/cars, etc. give digikey a look, they are very useful.

Friday, November 11, 2011

Stupid ISP

For the longest time I've had this unusual email problem at home. My work email account, I can read my email but I could not send emails. If I take my laptop into the office and connect to the Internet there I can read and send emails. So the problem isn't my computer, the problem is my network at home.

I finally decided to research this and found the problem. It turns out a lot of ISPs block port 25 which is the standard port for sending emails. They do this to cut down on the amount of spam being sent from their network. I understand wanting to cut down on spam, but it would have been nice if they told me they were blocking this port.

So what do you do if you're in a similar situation? I can only think of two possible situations. First, check to see if your email provider offers a second port through which emails can be sent (my provider offered this). The only other solution I can think of is to create a VPN tunnel into a different network (e.g. office network) that doesn't block port 25.

Thursday, November 10, 2011

Hard drive sizes - why marketing should be shot

Have you ever bought a new hard drive for your computer, but after installation the drive isn't as large as the package claims? Well the short answer is because the marketing department at the hard drive company lied to you. Every manufacture does it, and there is some precedence for what they've done.

It all comes down to math. Computers operate in terms of binary, 1s and 0s. A single 1 or 0 is called a bit. They group 8 of these bits together and call it a "byte." A byte is the smallest representation of data that computers store. When talking about larger numbers typically use prefixes like Kilo, Mega, etc. A kilobyte (KB) is 1,024 bytes. 1024 might seem like an odd choice, but they use it because 2^10 equals 1,024. And since computers use binary this was the obvious choice.

So where does the precedence come in? Well 1,024 is fairly close to 1,000 and as far as the human brain is concerned, doing math with 1,000 is a lot easier than 1,024. So it became common practice to use 1,000 to represent kilobytes. The problem is, as sizes get larger, the error compounds itself. Check out the following table:

Size / Percent difference

Kilobyte / 2.4%
Megabyte / 4.9%
Gigabyte / 7.4%
Terabyte / 10.0%

As you can see the error increases with each increased size. So if you buy a brand new 4 terabyte hard drive, it can actually store only 3.6 terabytes, or 90% of the claimed value. Hopefully at some point hard drive manufactures will discontinue this lie and accurately label their products.

How to select apples

I wanted to share a tip for selecting the best apples. This tip deals with the color of the skin, basically you need to ignore the color of the skin. I've noticed apples come in three main skin colors; solid red, solid green, and red/green combo. If the apple is suppose to have solid red or solid green colored skin, then you're not going to find them in the grocery store with the wrong skin color. So this tip mainly applies to the third type of apples.

Probably two of the most common red/green colored apples are Fuji and Gala. These also happen to be my favorite varieties of apples. I think a lot of people believe that the more red the skin the sweeter the apple will be. But this is wrong. On these types of apples, think of the red color as a sun burn. Basically the apples that grew on the top of the tree in direct sunlight will be more burned (red) than apples shaded by branches and leaves. But this doesn't affect the sweetness or taste. The best way to pick a good apple is to feel the apple for firmness. Feel the apple all the way around and select the firmest apple you can. All around softness is a sign of over ripeness and soft spots are an indication of having been dropped. In fact, in the store I typically select "greener" apples because most people want the "red" apples so you have better success finding firm green apples.

Again, this tip is most useful for apple varieties such as Fuji and Gala.

Monday, November 7, 2011

My ultimate free software list

Lately I've been on this big kick about finding the best free software on the Internet, and I've been pleasantly surprised. I found a lot of great programs out there that are totally free. Below is my grand list of what I've found up 'til now, for each item I tried to put a short description. There are too many in the list for me to put longer descriptions. I've broken the list down into software category types.

Multimedia

  1. Audacity - Powerful and useful audio editor that supports all the major audio formats.
  2. Avidemux - A good video editor. Does everything VirtualDub does and then some.
  3. CamStudio - Capture your desktop as a video. Great for recording product demos, youtube how-to videos, etc.
  4. FLAC - The audio encoding tools for FLAC, the free lossless audio codec.
  5. Gimp - An extremely powerful image editor (think Photoshop). The only downside is it has a steep learning curve.
  6. Greenfish Icon Editor Pro - Editor for Windows icon files. Not as powerful as Gimp, but smaller and has some nice features.
  7. HuluDesktop - Watch all the content of Hulu on your computer but without requiring a web browser.
  8. IrfanView - Powerful and yet simple image viewer program that includes some lightweight image editing tools.
  9. Lame - Audio encoding tools for MP3 audio files.
  10. Media Player Classic Home Cinema - A very good video and audio player. Has very simple UI and controls, like a program should.
  11. OGG - The audio encoding tools for the OGG audio format.
  12. VLC - Another simple video and audio player. Not as good as MPC-HC in my opinion, but has some unique features such as the ability to play internet streams.
  13. VirtualDub - A simple video editor. Can't do complex tasks, but can do simple tasks like rotate, adjust colors, adds subtitles, etc.
  14. WaveStudio - A free audio editor similar to Audacity, although not as good.
  15. Winamp - Audio player for pretty much any audio format.


Disc Utilities

  1. CDCopy - Utility for ripping audio CDs to WAV files for encoding to MP3, OGG, and/or FLAC.
  2. DISCInfo - Simple utility that displays info about your optical drives such as types of discs read/written, speeds, and firmware versions.
  3. DVD Decrypter - Allows you to backup/copy DVDs.
  4. DVD Shrink - Create copies of DVDs, remove unwanted material to save space.
  5. ImgBurn - Great utility for burning CDs. Burns either files to the CD, or burn from an ISO image.
  6. oscdimg.exe - Command line tool from Microsoft for creating ISO images. No download link for just this program, you'll find the file inside the Windows Automated Installation Kit download (1 GB in size).
  7. WinCDEmu - Mounts ISO files as virtual drives. I prefer version 3.4 which offers a "portable" version of the program.


Compression

  1. 7Zip - Awesome encryption that can be twice as much as the venerable PKZip.
  2. PKZip - Good old PKZip, where would the world be without you!?!
  3. Rar - Another good compression tool.


Security

  1. KeePass - Centrally store and manage all your passwords in one secure file.
  2. Microsoft Security Essentials - My favorite free anti-virus program.
  3. TrueCrypt - Create encrypted containers to store files, encrypt USB thumb drives, even encrypt entire disk partitions.
  4. Spybot - Scan for all the other types of malicious software that virus scanners don't check for.


Communications

  1. DNSBenchmark - Test the speed of your DNS servers against public DNS servers to find the best DNS servers for you to use.
  2. Google Chrome - Second best browser in my opinion. Has very good adherence to web standards.
  3. Firefox - Everyone should be using Firefox, the best browser as far as I'm concerned. Don't forget to add the plugins AdBlock Plus and Flashblock.
  4. FileZilla Server - FTP server for your computer.
  5. LeechFTP - A very good FTP client.
  6. Putty - A telnet and secure shell program.
  7. Thunderbird - The best email client, from the makers of Firefox.
  8. TightVNC - TightVNC is a remote desktop program. The built-in program with Windows is better, but if you can't use that for some reason try TightVNC. Other good options include RealVNC and TigerVNC.
  9. WinSCP - FTP and secure FTP client.


File Utilities

  1. Locate32 - Find files on your machine faster than Windows ever could.
  2. NTFSDelete - Recover previously deleted files. I personally prefer the look and feel of version 0.93 of this program.
  3. WinMerge - View the differences between two files and folders graphically.


System Information and Utilities

  1. AquaKeyTest - Program to test keyboards, helps you determine how many simultaneous keystrokes your keyboard can detect.
  2. CCleaner - Clean your system so it runs faster. Has an option to run as a portable application.
  3. CPU-Z - Shows you everything about your CPU, motherboard, chipset, and RAM.
  4. Defraggler - Defrag your hard drive. I think one is better than what comes with Windows. Has an option to run as a portable application.
  5. GPU-Z - Similar to CPU-Z but focuses on your graphics card.
  6. HWMonitor - Real-time display of all the hardware sensors inside your computer such as temperature, fan speed, and voltage.
  7. PCITree - View info about all the PCI devices in your computer.
  8. RegShot - Take snapshots of your computers registry and difference them to show you exactly what changed.
  9. SharpKeys - This program is used to map keys on the keyboard to other values.


Tool Suites

  1. AnalogX - Lots of good utilities here.
  2. Freezerware - Utilities written by yours truly.
  3. NirSoft - Tons of programs and all very useful. Most are available in 64-bit as well. Most, if not all, are portable.
  4. SysInternals - Now owned by Microsoft. Easily the best suite of tools on the Internet. Every Windows power user/developer needs these tools.


Games

  1. DoomLegacy - Play the original Doom and Doom 2 using new enhanced graphics such as lighting effects. Requires the original Doom WAD files.
  2. FCEUX - Emulator for the Nintendo Entertainment System (NES).
  3. Kega Fusion - Emulator for the Sega Master System, Genesis/Mega Drive, Game Gear, 32X, and Sega CD.
  4. MAME - Emulator for arcade machines.
  5. NagaSkaki - A really good chess program.
  6. Snes9x - Emulator for the Super Nintendo (SNES).
  7. Streets of Rage Remix v5 - An AWESOME fan remake of the Streets of Rage series on the Sega Genesis/Mega Drive. Download no longer available, but if you search the web you can find it.


Applications

  1. Adobe Flash - I personally hate Flash, but you can't get by without it these days.
  2. Adobe Reader - Not the best PDF reader in my opinion, but it is from the original creators of the PDF format which carries some weight.
  3. Adobe Shockwave - Again, I hate Shockwave, but you kind of need it.
  4. Hallo Northern Sky - Free planetarium software. Great for locating planets and constellations in the sky.
  5. LibreOffice - Free office software like Microsoft Office, only without all the bloat. LibreOffice is a branch of the more commonly known OpenOffice.
  6. Microsoft Mathematics - Free math software. Think of it as a graphing calculator on your computer - it even looks like a graphing calculator.
  7. Microsoft Office Viewers - If you just want to view Microsoft Office files not create them, then you need to download these Office Viewers.
  8. SumatraPDF - Small, simple PDF viewer. Way better than Adobe Reader. Includes a plug-in for browsers like Firefox.
  9. Sunbird - Calendar and organizer from the makers of Firefox.


Editors

  1. HxD - Very powerful hex editor. Edit files and disk sectors in hexadecimal.
  2. Notepad++ - Very powerful text editor. Blows the doors off of Notepad included with Windows, and pretty much every other text editor out there.


Development

  1. Application Verifier - Force bugs in code to cause exceptions which makes them much easier to find and fix.
  2. Interactive Disassembler (IDA) - Disassemble binary files, great for reverse-engineering.
  3. Microsoft Orca - Tool for creating and editing Windows Installer files (MSI). Included in the Windows SDK download.
  4. Microsoft Visual Studio Express - Free versions of the Microsoft flagship compilers. Has some features removed.
  5. VerySleepy - Profile applications to improve speed. Not as good as the Profiler including with Visual Studio, but that version requires the highest level of Visual Studio which many developers don't have.
  6. WinDbg - Very powerful and useful debugger. Included along with the Debugging Tools for Windows in the Windows SDK.
  7. Wireshark - The best packet sniffer available, period.
  8. WMIExplorer - Browse the WMI namespace on your computer.


Databases

  1. Microsoft SQL Server Express Edition - Free version of Microsoft's SQL server with a 4GB size limit.
  2. Microsoft SQL Server Management Studio Express - GUI editor for Microsoft SQL databases. This is a great companion to the free SQL Server Express.


Virtual Machines

  1. Virtual PC 2007 - Really good VM program, my personal favorite. Has good integration with the OS, both the host and client OS.
  2. VirtualBox - A VM program from Oracle. Has some cool features like USB pass-through. I believe it's also available for Linux.
  3. VMWare Player - VM program from VMWare, the biggest player in this market segment. Has lots of bells and whistles.


Operating Systems

  1. Ubuntu - Best version of Linux for the average person. Surprisingly user-friendly and easy to setup. If you want/need an operating system and you don't want Windows, this is your best choice.
  2. Windows PE - Yes, a free version of Windows. But not too useful for most people. Best used as a bootable CD to run diagnostics, backup, etc. Included in the Windows Automated Installation Kit download.


Bootable Utilities

  1. DiskCopy - Copy, clone, backup, and restore disk partitions.
  2. Memtest86 - Test your system memory for problems.
  3. Partition Wizard Home Edition - Move, resize, create, delete, etc. disk partitions.

Friday, November 4, 2011

Creating a C++ project without the C runtime library

So you're creating a very small C/C++ program using Visual C++, but you've noticed your program links to the C runtime library (CRT) even though you don't use the CRT. If your project links to the CRT it could cause problems. For starters your file size will be larger, and maybe a small file size is critical for your application. But the more serious problem is one of dependencies. By linking to the CRT your application is now dependent on the CRT libraries which may or may not be installed on every computer your application runs. You can get around this by statically linking to the CRT multithreaded libraries, but this increases your file size even further.

The better solution is to tell the compiler not to link to the CRT in the first place. To do that make the following changes in the project settings:


  1. C/C++ | Code Generation - Disable "Basic Runtime Checks." Anything that adds /RTCx to the command line must be removed.
  2. C/C++ | Code Generation - Disable "Buffer Security Check," i.e. add /GS- option.
  3. Linker | Input - Change "Ignore All Default Libraries" to Yes.
  4. Linker | Advanced - Set the "Entry Point" to "wmain"
  5. Finally in your code, create the entry point "int __stdcall wmain(void)"


This should allow you to compile and link without the CRT. You can create some incredibly small executables this way. However be aware this is best suited for simple apps. Anything more complex, like apps that link to MFC, this technique won't work as most other libraries and DLLs require the CRT.

DNS benchmarking

If you know how the Internet works, then you know how vital DNS servers are. Basically they convert human-readable names like "www.google.com" into addresses like "74.125.47.104." Loading an average webpage results in multiple DNS queries. So a slow DNS server means slower page loads, fast DNS equals faster Internet.

I just discovered two completely free DNS benchmarking utilities. They both do the same job and both do it will, so I'll mention them both here and let you decide which to run (or do as I did and run both). Both programs require a list of DNS servers to test, and both of them get this list from the same locations. 1) A built-in list of public DNS servers, 2) your computer's configured DNS servers (most likely assigned automatically to you by your ISP via DHCP), and 3) allow you to manually input additional DNS servers.

DNS Benchmark by GRC
GRC has made a lot of great free utilities over the years, and this one is no exception. I think everything this guy does is 100% hand-written assembly which is impressive. This also means the programs are small, fast, and simple (all good qualities).

Namebench by Goolge
Namebench is a program that came out of Google's "20% project." All developers at Google can use 20% of their time to work on personal projects. This is one of those projects. Namebench runs more tests than DNSBench which can be good, but it also takes longer.

Both of these are great programs and if you know what DNS servers are and how they work, I encourage you to give them a try. If you don't know what a DNS server is then don't bother, you're more likely to mess up your Internet connection then improve your speed.

Thursday, November 3, 2011

Watch Bing bleed!

I know I just made an anti-IE post, but I wanted to follow up with an anti-Bing post. It's not that I'm trying to rag on Microsoft. A lot of what they do is great, I mean heck my day job is as a Windows programmer so I owe my existence to them. But that's not to say I have to love everything they do.

Case in point - Bing. I have never been a huge fan of Bing. I'll admit, it's probably the second best browser out there, but the question remains, why use Bing when Google exists? Apparently I'm not alone in this thinking, and Microsoft has been loosing some serious money with Bing. To quantify it, between June 2009 and September 2011 Microsoft lost $5.5 billion dollars! And to make matters worse, the rate of loss is increasing not decreasing. Just check out this graph:


Whether or not you like Bing, this trend cannot continue. So either Microsoft will have to make drastic changes and/or cuts to Bing, or Bing will cease to exist before to long. Should be interesting to see happens.

Down with IE!!!

I've long hated Internet Explorer. I won't really go into the technical details of why, just to say that Internet Explorer is the worst browser and anyone still using it (regardless of the version) needs to switch now. Well the good news is, people are doing just that! IE has been in a steady decline for several years while Firefox has been on the rise and Google's Chrome is on a rapid climb. It's now official, for the first time in over a decade IE accounts for less than half of the browsing done on the Internet. If you look at just desktop computers or if you add in tablets and smart phones, IE is in a downward spiral.

Anyone who's a fan of IE could point out that IE is still the single largest browser in use with almost the same amount of use as Firefox and Chrome combine. My answer to that is to look more closely at the numbers. The best figure I can find is over 91% of all desktop computers run Microsoft Windows, with the remaining 9% running another operating system such as MacOS or Linux. So what this means is over 91% of the computers on the Internet come with IE preinstalled, and yet IEs share has dropped to less than half, which means a lot of people are bothering with the trouble to download and install a better browser (i.e. Firefox and/or Chrome).

So if you haven't already downloaded Firefox and/or Chrome, you need to do so. Let's see how low we can get IEs market share.

MP3 versus OGG

Recently I talked about FLAC, the free lossless audio codec. Although lossless is a good thing, me personally I couldn't hear a difference so I decided to go with the space savings of MP3 / OGG. But today I wanted to talk more about MP3 and OGG files.

Without a doubt the MP3 format is the de facto audio format. Everyone uses it, just about every device and piece of software reads that format. But that doesn't mean it's the best format. I recently took a closer look at the OGG format and was surprised by what I learned. Unfortunately I can't show you like I could with the picture samples in my post about image compression, so you'll just have to download some samples and judge for yourself.

Put simply the OGG format offers better compression for the same bitrate compared to MP3. So what this means is you can have smaller files than MP3 without sacrificing quality. Or you could have files of the same size but with better quality. At first I didn't believe these claims, I think part of me was hesitant to give up my trusty MP3 format. But listening to some samples and reading about the two formats it is true. Think of it this way, MP3 dates from the early 90s whereas OGG is from 2000. In that decade they improved upon the technique of compressing audio without losing quality. This is how OGG is able to compress more without loss of quality compared to the MP3 format.

So starting now I'm going to switch to the OGG format for all my furture audio needs.