Things that will be lost on Windows reset (unless you backup)


  • GPG4WIN 
    • settings
    • keys
  • PuTTY 
    • settings
    • keys should be fine as long as they are stored in a ordinary folder


The other perspective

"If you look forward to go to work in the morning that counts for something as well, doesn't it?" - Succesful friend of mine answering questions from economics 101 some years ago.


What is going on with the search results?

When I see googlers in online forums defending the search results they often ask for data sets showing the problem. This isn't a data set but here should be some reproducible test cases that fails horribly for what was once the undisputed place to go for relevant search results.

Example 1: "sublime text 2" "focus group"

Query: "sublime text 2" "focus group"
Expected result: Documents including the word groups "sublime text 2" and "focus group".
First result: http://www.sublimetext.com/2
Problem: Irrelevant
Possible explantion: Extensive linking using  "focus group"as link text? (Doesn't prevent it from being utterly irrelavant.)

Example 2: cisco "anyclient"

Query: cisco "anyclient"
Expected results: A list of documents containing something like cisco + the exact word "anyclient"
First page of results: All results are for "AnyConnect". Which seems to be the correct product name but was not what I was searching for. I was searching to see if anyclient was a common mistake, if there had been a product called anyclient etc so I would not embarrass myself.
Problem: Silent rewrite of my query. I'm all for usability features like suggest, "Did you mean" etc. "Showing results for <something else>, did you mean <what you searched for>?" is a pita to me but I can see it being useful for less technically inclined people and people who hasn't developed the same kind of tunnel vision as me. Silently rewriting counts as bug or arrogance in my book.

Trying to get around these issues

Report the problem

This is obviously a bug so lets report it. Done. Months ago. No change yet.
Image showing Googles error reporting interface. Trying to report the problem is an exercise in futility. They may or may not fix it but on one point they are very clear:  They will never inform you. The only way you will ever know is if you see a change sometime.

Activate the "verbatim" search tool

 Turns out Google has thought of this. Here is the verbatim ("ordrett") search tool. Good idea, one minor flaw: It doesn't work!

No, "Backup Exec" is not "Shopify". And this is hardly what I'd call verbatim.

Using another search engine

I love competition. So I tried with a couple of other search engines.

DuckDuckGo also insists that BackupExec is relevant when searching for Shopify.


Recovering files from an unsaved project in Visual Studio

Woke up early this morning and decided to train a little more .Net. Only to find that the project was not available under recent files. In hindsight this is how I think it happened:
  • I worked on an unsaved project without noticing it was unsaved.
  • The machine lost power
  • Windows didn't hibernate properly because the disk was crammed
 Luckily the files where available under Visual Studio 2010\Backup Files and getting my work back was as simple as creating a new project with a new Form with the same name that the old one had and then copy the old stuff into the new files.

So far I like Visual Studio as long as using Java feels equally wrong, why not? (loved to read Groklaws summary of yesterdays filings btw. If it ends the way it is heading now there might even be hope for the Java language.)


Review: Zenoss 4/5

Have been runnning Zenoss for over a full year, here is my verdict:

Product (4/5):
  • Monitors hundreds of nodes running of a not to beefy vm.
  • Easily extendable.
  • Smooth upgrades. (Not automatic but well documented.)
  • User interface is sometimes a little hard to understand. Not bad for a product the size of Zenoss but not perfect either.
Documentation (4/5):
  • Lots of official documentation freely available covering most of what one needs to know.
  • Forums were migrated to Jive a couple of years ago leaving lots of broken links.
Community (5/5):
  • Nice and helpful community.
  • Lots of contributed plugins a.k.a. ZenPacks. Examples 
    • Hardware health status on HP servers
    • Oracle databases
    • vmware ESX and ESXi

I did a lot of reading up front before implementing Zenoss and considered 
  • Zabbix,
  • Hyperic,
  • OpenNMS, 
  • Nagios 
 before making the decision. I personally liked both Zabbix and OpenNMS and have heard good things about the but Nagios/Icinga and Hyperic but chose Zenoss because of 
  • agent-less architecture 
  • hp hardware monitoring almost out-of-the-box
  • snmp trap handling.
I recently asked myself  if I'd use Zenoss again and the answer is: Yes, at least if I have to monitor hardware.

However keep in mind that a full implementation might easily take weeks even for a skilled sysadmin, depending on the size of the monitored network, the status of the network (is snmp enabled? Who has to approve it? etc.)


Review: Flexiglass 5/5

If you are a Mac user that have spent any time on recent desktop Linux, chances are you will be missing Compiz-like window management.

(On a side note: Even Windows converts may be missing some niceties such as double click to maximize, or resize by any corner or window edge that wasn't added until Lion.)

I bought a Flexiglass license a couple of months ago and I love it. Flexiglass offers:
  • Move a window using alt + two fingers (think alt-dragging in gnome/kde)
  • Resize using alt + three fingers (Mac OS X > 10.7 can't resize a window by dragging any corner/border) 
  • Real maximize by right clicking the plus button (Make a window fill the screen, instead of leaving to the window manager to guess how much space it needs. )
  • Real close by two finger clicking the cross button. (Actually closes the application instead of closing the window and leaving the application running.)
  • Shortcuts for resize/move to specified postitions. Nice for when you want a howto and a terminal side by side.
I have a Divvy-license from before but after I started using Flexiglass I don't need it anymore as Flexiglass offers all I used Divvy for and more.

Below are some screenshots from the settings to show the configurability of Flexiglass:

Basic settings for Move and Resize. The settings are customizable for both mouse and trackpad and Flexiglass automatiaclly changes profile when you attach or remove a mouse. Nice!
The exceptions list: I don't need it but I figure graphical artists might need to be able to use the mouse together with modifier keys in some applications without activating Flexiglass.

I thought I'd use the "Real Zoom" and the "Real Close" features a lot, but as it turns out I end up double clicking in the window title bar to maximize it instead. On the other hand I use the Quick Layout Shortcuts a lot for example to tile up two shells at the right of the screen and the documentation on the left

Autostart? Yes!


Do those stylesheets really need to be in the page body?

I once worked on a medium size enterprise software project that felt very sluggish and slow. I was new to the technology stack, new to anything but small web applications and I figured it just wasn't possible to get that particular stack any faster.

As the project went on features were added, more optimizations were added by expensive consultants,  a few performance regressions were weeded out but the app was still as sluggish as ever until one day the ux designer came and asked if there was any reason the consultants needed the stylesheet in the page body instead of in the head.

There wasn't, and at the next deploy the app was suddenly a whole lot faster and smoother. So much for the cruft of StringBuilder for every string concatenation. So much for higly efficient log statements, each spanning three lines, applied liberally across the whole codebase.

From that day on I became a little more pragmatic, a little less uninformed regarding that particular stack, the expensive consultants that happend to know it and optimizations for web applications.

Disclaimer: Of course, I'm not saying you should ditch StringBuilder and stop checking if debugIsEnabled() in thight loops, but in the average controller code in the average enterprise web project I guess they won't matter much.