Karmona's Pragmatic Blog

Don't get overconfident… Tiny minds also think alike

Karmona's Pragmatic Blog

Google-App-Engine Development Environment

November 21st, 2008 by Moti Karmona | מוטי קרמונה · 4 Comments

“You can always start a weekend experiment but you can never know how it will end”  (Moti Karmona, 2008 ;)

I was very curios and wanted to take the GAE for a quick test drive but the Google documentation have few inaccuracies and isn’t sufficient if it is your first Python encounter so I lost three hours of precious beauty sleep and compiled this blog-post-capsule for future generations.

How to setup your development environment to work with Google-App-Engine 

  • Get yourself a GAE Account  
  • Install Google App Engine SDK, Python and Eclipse.
  • Install the PyDev Eclipse extension
    • Help –> Software Updates –> Available Software –> Add the http://pydev.sourceforge.net/updates site –> Install it –> Restart Eclipse
    • Configure Eclipse to use the Python interpreter by navigating to Window –> Preferences –> PyDev –> Interpreter –> Python –> New and select the location of python.exe on your system
  • Create your first project
    • File –> New –> PyDev project and click next –> Name your project and make sure Python 2.5 is selected.  
    • Add necessary App Engine libraries to your project | Right click your Project folder –> Properties –> PyDev – PythonPath (see image below)
      • C:\Program Files\Google\google_appengine
      • C:\Program Files\Google\google_appengine\lib\django
      • C:\Program Files\Google\google_appengine\lib\webob
      • C:\Program Files\Google\google_appengine\lib\yaml\lib

  • Create your project files (e.g. GAE examples)
    • app.yaml  
    • Your first python file 
  • Test your Local application
    • Update your Run configuration (see image below)
      • Change the Main Module field to C:\Program Files\Google\google appengine\dev_appserver.py
      • On the Arguments tab, type in “${project_loc}/src” 
      • Name this configuration and click apply and click run.
    • Open http://localhost:8080 with your browser and enojoy your stupid app :)

  • Upload your code to Google App Engine
    • Open a command prompt and navigate to your application directory.
    • Type appcfg.py –email=yourgmailaccount@gmail.com update src\ 
    • To publish code within Eclipse, open Run –> Run configurations and make a copy of your previous run configuration.  Change the Main Module to appcfg.py, and change the argument tab to –email=yourgmailaccount@gmail.com update “${project_loc}/src”
    • Your code is now live! Test it by going to http://yourapp.appspot.com

Enjoy :)



P.S. More about the framework in future posts.

→ 4 CommentsTags: Development · Google · Internet · Software

Random Thoughts on Google SearchWiki

November 21st, 2008 by Moti Karmona | מוטי קרמונה · 7 Comments

I don’t know if you have noticed but Google launched Search Wiki yesterday.

With Google SearchWiki, signed-in Google users can now customize their search experience by re-ranking, deleting, adding and commenting on search results. 


  • The re-ranking changes you make are private and only affect your own searches. 
  • Your comments are visible to the public 

Random thoughts on Google Search Wiki:

  • You need to be very brave to change usability patterns in your world-leading-search-cash-cow (!)
  • Why wasn’t it tested as yet another interesting Google Lab project?
  • The arrows “soup” is really too much for the lonely-searcher –> way too many arrows if all you wanted is just search.
  • The comments I saw until now are mainly spam or not interesting.
  • The most important feature in Search Wiki is a way to turn it off but it is still missing…
  • It is a good time to change your default search engine ;)
  • Is it only me or Search Wiki have the lively smell all over it?

I must be missing something since the Google guys are very far from being stupid (to say the least) and it will be a very interesting to see if Google will change the search experience yet again with this move.


Update (10 Dec. 2008) : Marissa Mayer promised that Google Search Wiki would soon have a toggle button that allow people to turn it off (“early Q1.”) – I can’t wait… :)

→ 7 CommentsTags: Conspiracy · Google · Search

The Dunning-Kruger Effect

November 15th, 2008 by Moti Karmona | מוטי קרמונה · 5 Comments

The Dunning-Kruger effect is a cognitive bias in which people who are worst at a task show the most illusory superiority, rating their own ability as above average (e.g. shut up I hack you :)

Justin Kruger & David Dunning have tested and verified the following predictions:

  • Incompetent individuals tend to overestimate their own ability and performance 
  • Incompetent individuals fail to recognize genuine skill in others (it takes one to know one ;)
  • Incompetent individuals fail to recognize the extremity of their inadequacy (“One puzzling aspect of our results is how the incompetent fail, through life experience, to learn that they are unskilled”)
  • If they can be trained to substantially improve their own skill level, these individuals can recognize and acknowledge their own previous lack of skill (There is still some hope)

Do you have the confidence that this post isn’t about you? 

Think again… (!!!) – “ignorance more frequently begets confidence than does knowledge” (Charles Darwin)

Do you think this post is about you?

Might be considered vain but interesting enough, the same research have shown that the top performers tended to underestimate their own performance compared to their peers (see chart below). 

So… if you find this post boring, obscure, stupid, annoying, poorly written or inappropriate than please keep in mind it isn’t something I have committed knowingly.

→ 5 CommentsTags: Blogging · Conspiracy · People · Psychology

Cogito Ergo Sum Pragmaticus

November 10th, 2008 by Moti Karmona | מוטי קרמונה · 2 Comments

“Cogito Ergo Sum Pragmaticus” (= I think, therefore I am Pragmatic | I am not a native latin speaker but the sound felt right ;)

I will dare to claim that eating restrictions and drinking contradictions for breakfast* is one of the first steps in the pragmatic** manager journey.

The ability to combine a revolution-like sense-of-urgency characteristics

  • Opportunistic result oriented thinking with basic strive for early result (a.k.a. Constant search for simple low-hanging-fruits)
  • Edgy pro-activeness in identifying and mitigating possible risks, bottlenecks or any other result-pooper
  • Choosing the right battles with healthy pareto mindset

Spiced with René Descartes methodological skepticism

  • Constant questioning and reflection: Why are we doing it? What problem are we solving? Is it really worth it? Is there an easier way? What will happen if we will drop it?
  • Embrace doubt in current assumptions, restrictions, taboos, procedures, personal and corporate comfort zones or any other sacred cows
  • Decipher the important vs. the urgent

With some Chinese long-term thinking

  • Define a clear vision and goals
  • Team building
  • Invest time in analyzing market trends and technological direction

Are only some of the basic elements needed to reach a pragmatism Zen (!)


Three Pragmaticus Tips:

* Don’t Skip Breakfast – Breakfast is the Most Important Meal of the Day! ;)

** Schedule a weekly recurring meetings in your schedule to proactively reflect on your life contradictions

*** Google engineers have launched a new Google Blog Directory – Very inresting reading…

→ 2 CommentsTags: Leadership · Management · Project Management

Unauthorized Network Activity at Google Developer Day | 2008

November 4th, 2008 by Moti Karmona | מוטי קרמונה · 1 Comment

I have missed the latest Google Developer Day due to other obligations (we have uploaded a brand new people directory to the Delver site :) and although the Chrome session by Bill Hesse was very interesting (so I was told), I felt lucky when I saw the email the participants got after the event (a.k.a. “Unauthorized Network Activity at Google Developer Day”)

From: Developer Day <developerday.il@gmail.com>
Date: Mon, Nov 3, 2008 at 11:00 AM
Subject: PLEASE READ: Unauthorized network activity at Google Developer Day
To: ####@#####.com

Dear attendee,

First of all thanks for attending Google Developer Day yesterday, we hope you found it useful. Unfortunately, we need to let you know about an incident which took place during the conference which you may need to take precautionary action on.

We identified unauthorised activity on the public wired Ethernet network which was provided by the convention centre for conference attendees to access the Internet. This may have affected a limited number of  attendees accessing websites and online applications through the wired Ethernet connection. We have no evidence so far to suggest that the wireless network also provided at the event, and which was used by most attendees, was affected.

Due to the unauthorised activity, there is a chance that if you used the wired network, any user name and password entered to access a website may have been put at risk. When trying to access a secure website (a website using https), you may have received an alert indicating that the page had an invalid security certificate. In any case, we advise users as a precaution to change the passwords for any websites or services they accessed through the wired connection during the conference.

We’re really sorry that this has happened but we believe that the vast majority of attendees won’t have been affected by this incident. In the meantime, we look forward to seeing you at future events very soon.

The Google Developer Day Team

→ 1 CommentTags: Conspiracy · Google