## Keyboard Playing Dock Icons

Some months ago, I began using RocketDock. It seemed (and proved) a good way to keep all important applications at hand without having tons of shortcuts in the taskbar or having to display the desktop each time. Yet something bothered me: the icons.

# The problem

On a desktop, I’ve always been disturbed to see icons so different from one another. On an application dock, icons are so close to one another that the differences can only be highlighted.

It already gives you an edge by allowing you to customize the icons. As a consequence, if, like me, you use Eclipse as a $\TeX$ editor, you can set your own icon to it (below, I used the icon for $\TeX$ mimetype from the Crystal Clear icon set).

And here you come with a dock which looks like that:

What about getting icons from the internet? Some icon sets are quite neat. Right, but I have not found yet one which covers all my needs.

# The solution

So what did I do? I merely began my own icon set. I defined some ground rules about what the icons should look like, and went on. I am no designer, though, but am quite satisfied with what I got yet. Don’t you prefer it that way?

## Philosophy

I wanted icons which somehow all belonged to the same family, so here I came. A rounded-corner square, filled. A logo cut in it. Shadow on a white background. And color. There you go!

The KP Dock Icons icon set is to focus on docks. But I mainly use docks at work, so the icons will include the tools I use most there: Eclipse, FileZilla, …

Still, my icon set could be of some use to other developers or IT professionals. Yet, by restricting only to my applications, I would be a bit too restrictive. So, adding some generic icons is a great idea.

And here the project was born.

## Licensing

The icons are licensed under the CC BY 3.0, which means that I basically let you do anything with it but would appreciate a mention of my contribution somewhere the end-user could see (a comment in the HTML source code of a web page would do if you use it on a website).

But don’t worry, I won’t get mad if you forget me. If you like the icons, feel free to use them.

## Hosting

### Getting the icons

Edited: The icons are now available on PNG Factory.

I opened a board on Trello (nice to-do application; you have to register to comment, but you can connect with your Google account). This board lists all icons which are to be made, and offers you the possibility to request for an icon I might have forgot.

If you do though, keep in mind that the set was primarily designed for my own use and, above all, a professional or developer’s use. I will extend later, but this might remain quite restrictive. Time will tell.

The board is accessible here.

### Contributing

As I have said, I have not decided yet how these will be hosted. Yet, I’d like to find an open source platform so that other designers may contribute if they want to (I will write a how-to file for designing one’s own icons). If you have suggestions, do not hesitate to share via the comments.

## Removing entries from a Map in Java

Today, I ran through some code iterating over a Java map to remove outdated values. I found the way it was done utterly disgusting. Yet, thinking it through, I would probably have done it the same way a couple of years ago.

As a consequence, I thought it would be a good idea to share the solution I now use.
Continue reading Removing entries from a Map in Java

## Forcing latest rendering engine in Internet Explorer

Internet Explorer and compatibility modes… I already posted about that topic earlier.

Yet, I recently began trying out Bootstrap (as you may have noticed if you keep an eye on Keyboard Playing’s homepage, or if you tried to have a look at the About or cyChop page which appear in the top menu) and discovered a new <meta /> tag in it. This was the right way to do it…

# Replacing something dirty with something clean

Last time, I wrote (inspired from a French blog post) that to force IE, a sufficient way was to force a version number higher than any IE existing yet:

This works. Yet, there is a cleaner way to do this:

There are two interesting things:

• IE=edge will force Internet Explorer to use the latest rendering engine available;
• chrome=1 tells that if Google Chrome Frame is installed, it should be used to render the page.

## Of the place of the tag in page [Update 2013-12-04]

When running a page through IE with the compatibility mode active, you can meet this warning:

This simply means IE already began rendering your HTML and cannot change the mode it chose. To prevent this, just remember: <meta/> tags should always be at the top of the <head/> section. No other tag before all <meta/> have been written.

# Still getting better

Don’t want to add this header to all your pages? If you use a .htaccess file (or even better, if you have access to your Apache configuration file), you can set your server to send this instruction along with the HTTP headers (as I have done on Keyboard Playing, and should extend to the blog soon). It will then automatically apply to all the pages of your website.

Here is the code you would need to apply:

There, you’re all set!

(edit: a reader highlighted the fact that, as of IE11, IE has no longer ‘MSIE’ in its user agent, but is using ‘Trident’ instead)