True-Color GIF Example

The mistaken belief that GIF has a limit of 256 colors probably comes from the way GIF was first used when it came out. In the late 1980’s, PC video cards generally supported no more than 256 colors. Image exchanges were becoming popular among BBS systems and the Internet and viewer programs were quickly produced. No one tried or needed to generate images with more than 256 colors since they could not be viewed on anything less than high priced graphics workstations. Programs that converted images to GIF worked up a number of methods to reduce the number of colors to 256 or fewer. Some actually did a very good job. GIF files were constructed with just a single image block, even though the GIF standard placed no limit on the number of blocks. Since there was no use for more than 256 colors, there was no use for more than one image block. This practice became effectively ingrained into the computer culture and eventually everyone “knew” that GIF supported no more than 256 colors. The fact is, the programs that generated GIF files supported no more than one image block, and thus didn’t have a means to deal with more than 256 colors. The top image shows that a GIF file really can have more than 256 colors.

(via http://phil.ipal.org/tc.html)

GooSync – Nokia N73 Configuration

Here’s a post I found at the GooSync forum about how to manually configure GooSync on a Nokia N73, which should also work the same way on the Nokia N95:

To manually configure your Nokia N73 device please use the following steps.

  1. Open the main menu
  2. Locate and open the Synchronisation application by selecting Menu then Tools
  3. Select the Options menu and select the New sync profile option
  4. Provide this profile with a name
  5. Select Applications and then the Calendar option
  6. Set the Include in sync option to Yes
  7. Provide a Remote database name of Calendar
  8. Leave the Synchronisation type set to Normal
  9. Return to Applications and select the Contacts option (only for Premium accounts)
  10. Set the Include in sync option to Yes
  11. Provide a Remote database name of Contacts
  12. Leave the Synchronisation type set to Normal
  13. Return to the sync profile menu and select Connection settings
  14. Enter the settings as shown below:
  • Server version: Ensure this is set to 1.2
  • Server ID: Leave this blank, this will be provided by the GooSync server during the first sync
  • Data bearer: Set this to Internet
  • Access point: Select the required access point for your mobile device account
  • Host address: Set this to http://sync.goosync.com/
  • Port: Leave this set to 80 for standard connection or 443 for SSL connections
  • User name: Set this to your GooSync username
  • Password: Set this to your GooSync password
  • Allow sync requests: Leave it set to Yes
  • Accept all sync reqs.: Leave this set to No
  • Network authentic.: Leave this set to No

In order to synchronise you need to highlight your sync profile from the Sync application and select the Synchronise option from the Options menu.
Please note: some users have reported that there may be a bug in the URL retrieval algorithm of certain devices. Because of this we recommend that you enter the trailing ‘/’ character at the end of the sync server URL.

(via GooSync Forums)

Reasons to Trash or Rewrite Your Resume

Lifehacker.com has a great post today on rewriting your resume. Here are some excerpts:

Having a resume begs for you to go into that big machine that looks for relevant keywords, and begs for you to get a job as a cog in a giant machine. Just more fodder for the corporate behemoth. That might be fine for average folks looking for an average job, but is that what you deserve?

Don’t focus on your responsibilities, focus on what you achieved. […] Most people do not think in terms of quantified achievements when they are in the job, but on the resume, that’s the only part of the job that matters. No one can see that you were a “good team player” on your resume unless you can say “established a team to solve problem x and increased sales x%” or “joined under-performing team and helped that team beat production delivery dates by three weeks.”

(via Lifehacker: Reasons to Trash or Rewrite Your Resume)

PNG transparency test

Examine the test images in the left column below. To determine how your browser handles PNG transparency, find the images on the right that look the most similar.

Not all possible results are shown; there are too many combinations of background colors and shapes of the opaque region. However, I intend to include every result that actually occurs in a mainstream browser. If I am missing any, please let me know.

It’s come to my attention that my images which show how alpha transparency should look are not quite perfect in regard to precisely how transparent they are at various points. Rather than try to modify this page to test gamma correction issues as well, I’ve created a separate test page for that.

This test page was constructed by Jason Summers. Comments may be emailed to jason1@pobox.com.
There are other test pages listed at the PNG web site.

(via PNG transparency test)

Null-Coalescing Operator

While at a rather disappointing MSDN event yesterday, I came across one gem of C# 3.0 candy in the form of a null-coalescing operator. This is basically a short-cut for the oft seen:

string emailAddress = parsedValue != null ? parsedValue : “(Not provided)”;

OR

string emailAddress = String.Empty;
if (parsedValue != null) {
emailAddress = parsedValue;
}
else {
emailAddress = “(Not provided)”;
}

Using the Null-Coalescing Operator
These can now instead be re-written using the new null-coalescing operator as:

string emailAddress = parsedValue ?? “(Not provided)”;

This can roughly be read as “Set emailAddress equal to parsedValue unless it is null, in which case set it to the literal (Not Provided)”.

(via Null-Coalescing Operator)