The Servant Leader

Yesterday I consumed one of the 1-hour-replays of a project management education session I have to go through in order to gain my PMI re-certification in 2016 ( 60 hours of education are required to get re-certified ).
It was about the concept of the "Servant Leader" and I found that concept quiet astonishing. Many think of a leader as the one who has people working for him in order to accomplish a mission. According to the nice quote by Dwight Eisenhower:

"Leadership is the art of getting someone else to do something you want done because he wants to do it."

The concept of the "Servant Leader" actually changes the point of view: leadership as a service, so to speak. The leader servers the team to accomplish something. She enables and empowers the team to get the job done. He identifies barriers and moves those away. He coaches and educates and ensures things are moving into the right direction.
Brilliant concept, in my opinion. My current team lead is actually doing a quiet good job with this.
How about you ? Have you ever met a Servant Leader ?

How to write your own OpenOffice Calc Functions

Today I have been looking for a function in OpenOffice which I would call ( and know from many programming languages ) ‘substring’ and which would allow me to split a string into chunks using a pre-defined delimiter and then return one or more words from this collection of chunks. Did I explain this well ? If not, here is an example: from a string like ‘+   6.84%’ I just need the numeric part, the 6.84 so to speak – to then be able to convert that to a number.

Unfortunately such a function is not offered with OpenOffice. Or should I say … fortunately ? Because I actually started to figure out how to write my own functions in OpenOffice using Visual Basic For Applications, aka VBA. And at the end of the day I know how to do this and probably write many more functions in the future.

Here is my substring function in VBA:

Function substring(str As String, start As Integer, optional n As Integer, optional delim As String) As String
  If isMissing(n) Then
      n = 1
  EndIf
  If isMissing(delim) Then
      delim = " "
  EndIf  
  out_str = ""
  cnt = 0
  Dim arr() as String 
  arr = Split(str,delim)
  For i = 0 to UBound(arr)
      If (i+1) >= start Then
          If arr(i) <> "" Then
                    cnt = cnt + 1            ' Ignore empty values
          EndIf
          if cnt <= n Then
              if cnt = n Then
                  delim = ""                ' no more delimiter needed at the end
              EndIf
              out_str = out_str & arr(i) & delim
          EndIf
      EndIf
  Next
  substring = out_str
End Function

As you probably can see it takes a string and a starting position as parameter 1 and 2, the number of words to return and the delimiter to use as optional parameter 3 and 4. Parameter 3 will be 1 as default, parameter 4 a white space, if not specified.

Here is an example how I now can use this function to do my data tweaking together with two of the built-in functions SUBSTITUTE and VALUE to finally achieve what I described above:

=VALUE(SUBSTITUTE(SUBSTRING(SUBSTRING(A1;2;1;” “);1;1;”%”);”.”;”,”))

would get me 6,84 in numeric format if cell A1 contains ‘+   6.84%’.

So far, so good. How to get such a function into OpenOffice Calc ?

It starts with navigating to the Macro Organizer: Tools –> Macros –> Organize Macros –> OpenOffice.org Basic

From here I select “My Macros” –> “Standard” –> “Module1” and then click the Edit button. An IDE for VBA opens allowing me to paste in the code I have shown above. Done.

That IDE is quiet useful since it also allows me to do debugging, like setting breakpoints and inspecting the content of variables.

Do you really need what you want ?

"Do you really need what you want ?" has been the quote on one of my fortune cookies I got with a lunch last week.
This side "This Is Why I am Broke" ( recommended in an article about 15 web sites to visit when you are bored on "digital inspiration" ) certainly offers many funny products I don’t need. Well, frankly: I also wouldn’t want most of those, for instance this one:

And certainly not this one:

Data Volume 2012

1.8 zettabyte of data has been produced world wide in 2012, according to bild der wissenschaft plus "Auf in die Zukunft".
That’s a lot. That’s 1.8 times 10 million petabyte. 1 petabyte is 1000 terabyte. 1 terabyte 1000 gigabyte.
1.8 zettabyte is ~ 200 × estimated information content of all human knowledge (as of mid-1999), according to Wolfram Alpha.
And here is another interesting figure from this magazine: there are 18 victims of cyber crime every second, 1.5 million daily, according to Symantec’s Cybercrime Report.
Welcome to the era of "Big Data" !

2013 in review

The WordPress.com stats helper monkeys prepared a 2013 annual report for this blog.

Here’s an excerpt:

The concert hall at the Sydney Opera House holds 2,700 people. This blog was viewed about 24,000 times in 2013. If it were a concert at Sydney Opera House, it would take about 9 sold-out performances for that many people to see it.

Click here to see the complete report.

PimpGoogleBookmarks.js

My latest Greasemonkey / jQuery script PimpGoogleBookmarks.js I wrote to – as the name of that script already says it – pimp Google Bookmarks.

One thing I hate about the Google Bookmarks Screen is the long list of tags on the left ( yep, I do have many tags ) which makes the entire document very long ( high, to be precise ).
My little GM script adjusts the height of the list of tags on the left and the list of search results on the right to my screen size and gives both areas a scroll bar, thus I can scroll down the tags list or the list of search results separately.

In addition it is possible to search for a combination of tags by doing a double-click on those.

Sweet, isn’t it ? Greasemonkey and jQuery are two powerful friends when it comes to tweak web pages to just work a bit better and become more convenient to use.

Paris Day 7, Saturday 7/20/2013

For our last day in Paris we purchased another 10-rides-metro-ticket and took a train to  Montparnasse. The catacombs we skipped facing a huge line of tourists waiting in front of the entry. We walked

Friedhof Montparnasse
"Friedhof Montparnasse"

to a Cafe located at Montparnasse cemetery, where we met a French person speaking German very well who explained to us a lot about the historic events in this quarter of Paris.  Afterwards we visited the cemetry, where one can get a map at the entry showing the graves of all the famous people resting here. After a while we found the one of  Jean-Paul Satre and Simone de Beauvoir, and we also visited Samuel Beckett’s last stop.

Blick von Turm zu Turm
"Blick von Turm zu Turm"

 

After leaving the cemetry we ended up in a street market and following the row of boothes we directly got to  Tour Montparnasse.  € 13.50 was the entry fee for an elevator getting us up to level 56, 200 meters away from the ground. A few more stair cases led to a terrace from where we had an ingredible view to the city of Paris. That view here had two major advantages over the one you get from Tour d’Eifel: no multi-hour wait, and: Tour d’Eifel is included in that view.

Das Tor des Triumphs
"Das Tor des Triumphs"

A short while later we strolled along  Boulevard du Montparnasse to Place Pablo Picasso, took a left there und reached a  Cafe at Jardin du Luxembourg two blocks later, where we had some sandwich and salad for lunch. In another Cafe we tried those Éclair, which always look delicious when you see them in a glass cabinet, but which are quiet sweet and sticky when you eat them, especially when not cooled sufficiently, which luckily wasn’t the case here.

Traffic in Paris
"Traffic in Paris"

Now we took the metro again to reach Arc d’Triumph and thru a passage underground we got directly below the impressive building where the grave of an unknown soldier is located with a flame burning forever to make all of us think about the many who have fallen during rescent wars. We took a seat on some warm stone, meanwhile conveniently located in the shadow of Arc d’Triumph and watched all the traffic circling that famous building in this large roundabout where 12 roads run into each other. One of those is

Eine Handtasche für € 15.000 gefällig ?
"Eine Handtasche für € 15.000 gefällig ?"

Champs Elysées, which we explored a little later, following the shadow-side of this world famous shopping mile to the part where shops are replaced by trees and parks. We did not buy any of those handbags for € 15.000, nor a  Rolex or a Renault. Just peeking thru the display windows and receiving some arabic parfum sample from an avid sales person was sufficient for us.

We needed another rest on a shadily park bench before we boarded a metro train again taking us to  Centre Pompidou.

Fontaine Stravinsky
"Fontaine Stravinsky"

In a Bar with surpringly many good looking and kissing young men we had some beer to clean our throats from the dusty air, before we visited the bizarre and colorful fountains at Centre Pompidou and of course the Centre  itself. Here again, as almost everywhere in Paris: many people, bustling activities and hundreds of bars and restaurants. We roamed to  Les Halles, where a large construction project has started, then to the next metro station to get back into “our” quarter with “our” hotel.

Le Centre Pompidou
"Le Centre Pompidou"

In the evening with beginning nightfall we made another walk to the famous  Moulin Rouge surrounded by a cheap red-light district and found a nice bar a little later and further away where we had our last beer here in Paris.

Next morning after breakfast we walked to Gare de l’Est just ten minutes away from our hotel and arrived there early enough to catch our TGV train to Stuttgart which had changed its schedule to depart 10:50 am instead of 11:17 am which was the plan I had seen when booking that train. Well, that train was surprisingly empty that day.

Moulin Rouge
"Moulin Rouge"

From Stuttgart we took an Intercity train to Mainz departing at 03:16 pm and arriving in Mainz one and a half hour later.

Follow

Get every new post delivered to your Inbox.