Splitting blogs, my personal development posts now at SeeItAsItIs.wordpress.com

I guess maintaining a single blog for so many diverse  and unrelated topics was getting a little confusing for interested readers (both of them :) ) to follow.

So, this blog will now be exclusively dedicated to tek posts (as it was intended originally), usually targeting business data intelligence :) & other general software development topics.

My other blog at seeitasitis.wordpress.com will be dedicated to my other hobby, Personal Development, with a special focus on the role of human perception. A companion scoop.it page is available at http://www.scoop.it/t/see-it-as-it-is

Rui

Troubleshooting–Beware the Inattentional Blindness

The last post (and first podcast) on You’re not so smart blog caught my attention and reminded something I’ve seen and experienced personally when doing most kinds of troubleshooting sessions (bugs, performance issues, security audits,…).

Did you saw it?

If you didn’t see the video, here it is, give it a try(even if you saw the original one or read the book).

So, how does all this relate to troubleshooting?Well, It’s true the video/study targets particularly our visual perception, but I would say it can be much more powerful that just visual perception.


Back to troubleshooting…

When we are searching for a specific thing/cause we usually miss all kinds of information. Note that our brains actually do that for all kinds of good & practical reasons, it’s just that it can also severely impair our troubleshooting workflow & accuracy.

Generally, and when troubleshooting, I would say to postpone any hunches or possible causes for a specific problem as long as you can. Focus on collecting useful  information first, do not think, do not analyze, be a passive observer… be as curious as you can but aside from that do not be the first to… “shoot”.

When you finally go for some  solutions/causes, then be aware that you will be more susceptible to miss, filter information or even distorting it to make it “fit” to your thinking.

We usually don’t like being wrong too, and our ego can also further disrupt further relevant information processing. We also, again… usually :), don’t like to be the root cause of the spotted issue/problem/bug… we will resist to that, the “certainly, it was not me” syndrome.

Final thoughts

So, what does this mean for for software developers, testers, and many other related roles? Well… some thoughts:

  • know your stuff, but accept  that problems usually don’t choose technologies or fields just because you’re particularly skilled at them
  • first, gather all the information you can, be a passive observer, go for a diverse baseline of data/information
  • having that, then start diagnosing, putting the pieces together
  • when searching for something specific, try to keep perspective & all possibilities open, know a little bit how your brain usually works, your biases (confirmation,inattentional Blindness)
  • let your ego out of it, it’s not personal
  • and (particularly for software developers) please learn to properly read stacktraces! :)

I think there’s a reason for Edgar Poe’s Dupin, Agatha Christie’s Poirot or Conan Doyle’s Sherlock Holmes to usually only reveal the puzzle solution right near the end of the story. It’s not that they waited until the end… it’s that they focused on gathering information, then putting the pieces together, not the other way around.

Further reading

 

PS-What do you hear?

What about another amazing ride on the power of our brain reality twisting skills? Hear for yourself!

 

 

Now…back to this annoying “bug”… :)

Regards,

Rui

Fixing Amazon Kindle Daily Review page usability on touch enabled tablets – a case for “url site scripting” ;)

In a previous post (see Kindle eBooks as a great Learning/Self Development platform) I’ve shown how to get the best from Amazon’s Kindle Highlights feature. This feature and all the amazon highlight personal store features are probably the main reasons for not buying physical books anymore, except for a very few cases.

Anyway, I was using the daily review page occasionally on my laptop. Then I got the chance to start using a tablet to review my notes, and the page suddenly appeared much more interesting and useful.

Useful indeed, but not usable! as the small preview/next buttons are only at the top, and touching the flashcard or the page don’t jump to the next page as it should…

image

Waiting for amazon to fix this… well, good luck! So, I was pleased to see that there were actually a pretty workable solution: just fixing the code inline, injecting an additional click handler directly! Amazon surely is using jquery right? Right indeed, they are!

How do you inject custom javascript behavior on a site? Well, easily through the address bar, just prefix your code with javascript: and you’re done! or off course you can try to spot a cross site scripting  flaw on amazon site… but  I doubt it would be an easy task. :)

So, go to the daily review page and just paste the following code in the address bar:

javascript:$(“.reviewContentWrapper”).click(function(e) {$(“.nextReviewArrow”).click();});

Nothing happens right? Well, just click the flashcard, your next flashcard should load automatically! Much better now! My fingers can finally rest from that “humongous” effort. :)

image

Sure it works on iPad, just add a bookmark with the link. Every time you open /reopen the daily review page just select the bookmark. You won’t go anywhere, but the page will become far easier to use. As long you don’t close the page it will keep working, even when you choose to review another book.

image

Not a permanent fix but a very usable one from my recent experience! ;)

 

Have fun!

Rui

Kindle eBooks as a great Learning/Self Development platform

Almost a year now since I got my first Kindle. :) Being a somehow frenetic reader way before ebooks, and although I still like to read “regular” books, I must confess that when it comes to learning&self development, ebooks & kindle are hard to beat!

Why is that? Well… lots of reasons, but for now I’ll focus on the  highlights & notes feature. It’s amazing as it allows you to really extract so much more value from ebooks & reading in general. Curious thing, I had never been an “highlighter”… and always left my books in a pure & “pristine” state.

So for the basics, you highlight & add notes on any kindle reader (I prefer the real Kindle to do this , although I sometimes use the free mobile reader, as I’m always switching between them both).

You can then return to the ebook, on any reader (mobile, cloud,etc) and see all the hightlights & notes you’ve made. It all syncs to your amazon kindle profile, so you also have a great backup.

 

photo (13)

Kindle Mobile Reader – Book Highlights

 

photo (8)

Kindle Cloud Reader – Book Highlights

image

 

You can also review all your notes & highlights directly on the Kindle device, selecting  the My Clippings book (you can see it like a dynamic ebook on your device, collecting all you highlights & notes).

photo3

My Clippings on Kindle Device

There’s also a .txt file available with the content if you connect the kindle to the desktop with usb.

But there’s a minor catch here, the “My Clippings file only saves the highlights you do on that specific kindle device. If you highlight on the android/iphone the notes won’t make it to the file. That can be annoying, specially when you switch kindle devices.

Anyway, there’s much more to that. All your highlights are also available online at your kindle profile page here. Like this:

imageKindle Home Page

From there you can go to any book and recover your highlights&notes, and also share them publicly.

 

image

 

In one page you can see all you highlights & notes. A great starting point for building a quick personal  ebook. ;)

image

 

with a little copy & paste, and minor editing you can get a pretty good ebook with all you preferred content, like this one wich contais all my notes, ever!:

 

 

photo

I even created a table of contents with one chapter for each book I’ve read. For periodic & quick recaps that’s amazing.

 

Amazon also got it right that we often buy books for learning & changing, not just reading, and there’s a specific feature that helps you to review & remember  your books highlights, its called the daily review. It will cycle trough all your finished books, periodically, and show all your highlights, one at a time.

image

The daily review

You can also check other books highlights & posts… (Ferriss “on fire”, as always! :) )

 

image

image

And follow some interesting fellows :)

image

 

BTW, don’t miss this week free books. Just create your account and buy them “free” . :) Then, read them on free cloud/mobile readers. You don’t need to have a Kindle!

clip_image001

clip_image001[5]


So, that’s it for now, keep reading, and learning! :)

 

Rui

On the new Chris Anderson “Email Charter”, Some additional notes

There’s clearly a trend in the last few years of a serious growing concern on email processing overload. Yes I suffer from this too. Who doesn’t? :)

The Chris Anderson Email Charter

Recently, Chris Anderson took the stand on this and did a precious effort in trying to gather some of the best guidelines available on the issue. And so we have now the a new Email Charter with 10 small/quick to read good practices.

I love Chris books & posts, the amazing TED work Chris does as curator, but I really think people are getting the email issue a little wrong!

I can’t also agree with even a much more radical view of email :) of one of my favorite bloggers, Leo Babauta on his amazing zen habits blog.

Disclaimer:The following applies mostly to work related email, that’s email we all exchange with team members, partners, customers, suppliers . In this context we’re almost always goal driven. Mail, as a communication tool, supports all involved in pursuing specific goals.

And as a communication tool, what’s the main purpose of sending an email? It’s actually getting recipients to have the better perception possible of the reality around a a specific task/goal, so they can take the best action possible , avoiding misunderstandings, misperceptions and so working towards the goal with the minimum effort.

What’s the purpose of communication in general? getting recipients to have the minimum perception-reality gap regarding any subject you’re trying to present at the moment. And trust me, that’s not as easy as it seems.

With this in mind, let me explore some rules on the Chris Email Charter for which I have some doubts:

1. Respect Recipients’ Time
This is the fundamental rule. As the message sender, the onus is on YOU to minimize the time your email will take to process. Even if it means taking more time at your end before sending.

No, it is not!!! (IMO) it should be …. the onus is on YOU to minimize the time recipients will take to complete the intended goal/task the mail is all about, not only “reading/processing” time . Even if it means taking more time at your end before sending.

Do you see the difference? Yes, all seems great when we’ll start receiving cryptic twitter like mails with partial information… that we read in a snap in order to cure our “mail” problem, only to waste much more time fixing bad decisions later caused by wrong perceptions and lots of misunderstandings.

5. Slash Surplus cc’s
cc’s are like mating bunnies. For every recipient you add, you are dramatically multiplying total response time. Not to be done lightly! When there are multiple recipients, please don’t default to ‘Reply All’. Maybe you only need to cc a couple of people on the original thread. Or none.

Yes, I agree not overuse cc, but be careful not sharing relevant information with recipients that may have to take decisions on the thread at a later date. CC recipients aren’t usually required to get back to you so it won’t delay total response time.

As a personal note, I read all my mail carefully, being in the to or cc, I don’t care. Yes, I’m aware that I’m a kind of information “freak”…

“9. Cut Contentless Responses
You don’t need to reply to every email, especially not those that are themselves clear responses. An email saying “Thanks for your note. I’m in.” does not need you to reply “Great.” That just cost someone another 30 seconds. “

Yes, but you should judge this wisely, always with the end goal  you’re pursuing  in mind. Would you spare a thank you email which costs both 30 seconds, risking demotivation of your coworker or team member?

Yes, sometimes people like getting feedback, sometimes they need it to boost motivation, and guess what happens when people feel motivated? Goals are much easier to reach! Focus on your goal, the mail is a only tool! Don’t trade mail time for wasted time!

My alternative email best practices

So, some rules of my own for work related email that have been very useful to me:

1) For the need to communicate you’ve identified, is email the best tool you have so that the recipients can get the message with minimal perception-reality gap? Some times it is, sometimes it isn’t. Judge it carefully. (this only would need another post)

2) Get rid of irrelevant emails, in which you have no role whatsoever. Or at least create some rules to move them out of the way, being able to recover them at a later time if needed. Almost all mail I receive serves a specific work purpose.

3) Actually read the emails! carefully… don’t speed reading for the sake of “email processing productivity”. That’s not the point, the point is improve your decision making skills and reach goals.

You will avoid lots of bad decisions and wasted time just carefully reading the mails. I actually can read relatively fast… and I have a bad habit of scanning through emails when stressed out …. avoid that!

You should want to get all the information you can, with minimal distortion. Take your time. There have been times when only reading a mail for the 3rd time I got the proper message in a way that finally my perception closely matched reality allowing me make a better decision.

4) When writing emails: It’s not about how good your writing skills or style are!! That’s not the point It’s about helping recipients getting the message loud & clear as easy as possible. It’s about getting results! 

Resist the embellishment of your mails just because you’re skilled . Control your “ego”!

I was so damn guilty of this… I feel ashamed. People really don’t like long & verbose emails (I actually do but I don’t mail me very often… :) ) they will miss important information lost in your long paragraphs (like this one)… and misunderstandings are more probable to happen.

Currently I try to only use a sentence per line.

Like this.

With lots of space between sentences.

Got it?

5) When you know your recipients mail reading habits, adapt your style accordingly to make their life easier. Know the probable context.

For example, some people don’t read ccs, some don’t read long emails, some don’t read emails, some only read subjects, some only read the mail if is stays on the mailbox long enough to be visible at the top…

Don’t assume everyone should or is handling mail the way you do! Don’t assume to much, you’ll be disappointed.

6) Don’t trade email processing time for wasted time on misperceptions & misunderstandings! If you’re a decision maker, and you need 4 hours a day reading & processing mail in order to make very good decisions you’re probably doing what you must.

Be careful with “lets kill email once & for all strategies”. You’re probably much better to keep paying attention to the mail.

7)If you’re working or leading teams, train & mentor them on writing & reading email skills, always with focus on attaining good communication flowing constantly, supporting good decisions and getting results faster.

8) Do not read what it’s not there! Our mind loves to fill the gaps, not knowing is something that feels naturally uncomfortable… We like to know everything, and when we don’t…. we create our own version of reality, not what is, but what we think it is…. and we don’t note the difference!

Although filling the gaps is one of our most powerful skills, at the least note the difference between what you’re reading, and what your mind is creating for you.

Final thoughts…

Our senses get an huge, HUGE, input of data (visual, sound,etc) every second… but that’ wasn’t a reason for an overload or shutdown, its actually critical so that we perceive the world around us and make our survival possible with a really close view of reality.  Brain evolved to handle the load.

So it should be with communication tools like email and others. Yes, we need more publicly accepted charters and guidelines (Chris has a good start), but never forgetting that communication has a purpose that may well pay back the time you spend using it.

That’s it, I’m relieved this is not a mail, so long that it turned out to be! :)

What do you think?

 

Kind Regards,

Rui

J.D. Meier [Principal Program Manager on the Microsoft patterns & practices team] great blogs & books

Principal Program Manager Microsoft patterns & practices team,  J.D. Meier work has caught my attention long ago, when security was one of my regular hobbies. Smile His books & work at the p&p team at Microsoft were always a great source of inspiration. And I’m sure it will continue be that way in the years to come. You can check his “p&p” blog here.

With some surprise, I must confess Smile, I recently discovered that JD is also extremely passionate on other, “more mundane”, topics like Personal Development, Emotional-Intelligence, Leadership & many others. And he dedicates his other *great* blog Sources of Insight to these topics!

So if you’re struggling for some work-life balance… first of all, good luck! Smile second, please check JD blog!

Other particular point of interest for me, is that he takes some core principles of agile methodologies into work-life balance topics. And that’s fresh!

And there’s also his book “ Getting Results the Agile Way “, witch its available to read online here, and buy at amazon here. Hope to read it soon. Unfortunately there’s not a Kindle version available yet. Sad smile I’ll  probably “instapaper” some of the free available content.

Some interesting posts …there are so many… :

Five-Minute Thinks – Sources of Insight
http://sourcesofinsight.com/2011/01/07/five-minute-thinks/

How To Read Faster – Sources of Insight
http://sourcesofinsight.com/2010/12/16/how-to-read-faster/

What is a PM? – J.D. Meier’s Blog – Site Home – MSDN Blogs
http://blogs.msdn.com/b/jmeier/archive/2010/07/03/what-is-a-pm-at-microsoft.aspx

Personal Development Books – Sources of Insight
http://sourcesofinsight.com/Personal-Development-Books/

Day 8 – Dump Your Brain to Free Your Mind – Sources of Insight
http://sourcesofinsight.com/2010/08/08/day-8-dump-your-brain-to-free-your-mind/

40 Hour Work Week at Microsoft – J.D. Meier’s Blog – Site Home – MSDN Blogs
http://blogs.msdn.com/b/jmeier/archive/2010/10/21/40-hour-work-week-at-microsoft.aspx

(interesting quote on BI , JD says: “Smart BI (Business Intelligence).   In an online, connected world, there is no reason to be flying blind.  You can guess at what works, or you can instrument, test, and measure.  This is the key to Amazon’s online success.  They can learn and respond.  By using BI effectively, you can figure out exactly what customers want, how much they want it, how they are looking for it, and where they are finding it.  Don’t “push” products.  Find the “pull.”  You can find the appetite or the demand to help drive and shape your supply.”)

Little disclaimer: please note that regarding work-life balance, “pie in the sky”, “get all these great things done” kind of books you should (IMO) take some distance & skepticism , some things works on specific contexts, some apply to you, some  probably don’t. But they frequently have something that you can use someday, somewhere… (I hope…) Smile

Cisco VPN Client 64 bits, Windows 7, A few setup Problems & solutions

Just remembered that I had to struggle to proper setup the cisco CPN client (now 64 bits, finally!) on my Windows 7.

The errors are extremely misleading :(, after poking around msi logs, online foruns & others, here’s what solved it for me:

First error – Right on the setup startup I was getting “installation ended prematurely because of an error” . Reason for this one was that wise installer needs vbscript to cycle between setup dialogs. And although I could execute vbs scripts properly, something was wrong with the dll registration … so it failed right in the beginning.

Through the msi logs you can see a more detailed error. (Really the delay on all this is only on getting to the *real* error messages… lots of try/catch/throw “unexpexted exception” style of coding, probably good from a security perspective, but a pain to diagnose… a lot like working with sharepoint out of the box, Winking smile cof… )

To fix this I had to run both of these steps (almost sure that I needed both, just the vbscript re-registration was not enough):

(yes, you’re advised to backup the key before deleting, just in case…)

reg delete “HKCU\SOFTWARE\Classes\Wow6432Node\CLSID\{B54F3741-5B07-11CF-A4B0-00AA004A55E8}” /f

regsvr32 c:\windows\syswow64\vbscript.dll

 

That fixed the first error, Right to the second one. The setup was now running but crashing when setting up network drivers&filters with another….yes… extremely useful (!)  error message that read “unable to manage networking component. Operating system corruption may be preventing installation”

That’s really (another) annoying error message…so verbose mode on msi again… check the logs and found 0x8004a029 error witch translated to something like “maximum number of network filter drivers has been reached.”

And in my case this was due mainly to lots of network filters like the ones needed by virtual pc, virtual box, wireshark & some others (I can only imagine…).

So you can uninstall some of them or increasing the limit directly in the registry (of course the limit is there so that you don’t overload the network stack…)

Something like increasing the value in :

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network\MaxNumFilters

 

Ok, back to the setup, all  was solved now right? ah….wrong!! Now another error pops up “”Error 27854: The Network Configuration LOck is held by another application.  Close all applications and run Setup again. …”

Ok, that one was actually my fault Smile .  At least the message made sense and lead me in the right direction, I forgot to close my network connections properties, that I had opened to try to diagnose the previous error message.

So, network properties closed, run the setup again and that’s done! Loaded my pcf files and it’s been working like a charm! Smile

 

Hope this helps someone.

Finally ,some additional resources that helped to this, rather surprisingly, painful troubleshooting process:

VPN Client 5.0.04.0300 Installation Issue
https://supportforums.cisco.com/thread/184691

Is there a maximum number of Network Filter Drivers in Windows 7?
http://social.technet.microsoft.com/Forums/en/w7itpronetworking/thread/4deb27fc-33ce-4fc0-a26f-3fec5b57733d

VPC and Windows XP Mode installation problems
http://social.technet.microsoft.com/Forums/en/w7itprovirt/thread/44345f66-87fc-4a9e-aede-153a976a4b49

How to (Successfully) Install Cisco VPN Client on Windows 7 – Brenton House
http://weblogs.asp.net/bhouse/archive/2009/01/15/how-to-successfully-install-cisco-vpn-client-on-windows-7.aspx

Error 2738 Could Not Access Vbscript Runtime For Custom Action – You Can Easily Fix it Now!
http://www.articlesbase.com/data-recovery-articles/error-2738-could-not-access-vbscript-runtime-for-custom-action-you-can-easily-fix-it-now-991609.html

Error 2738. Could not access VBScript run time for custom action.
http://www.jakeludington.com/windows_7/20091115_error_2738_could_not_access_vbscript_run_time_for_custom_action.html

Cisco VPN client x64 for win7 – will not install
https://supportforums.cisco.com/thread/2045330?tstart=0&viewcondensed

Blog or Die! » Msi Installer errors on CISCO VPN under Windows 7
http://www.blogordie.com/2010/08/msi-installer-errors-on-cisco-vpn-under-windows-7/

Fatal Error During Installation with Windows VISTA
http://lodensoftware.com/forum/index.php?topic=9.0