Project Jupyter

Project Jupyter is an open source project allowing to run Python code in a web browser, focusing to support interactive data science and scientific computing not only for Python but across all programming languages. It is a spin-off from IPython I blogged about here.
Typically you would have to install Jupyter and a full stack of Python packages on your computer and start the Jupyter server to get started.
But there is also an alternative available in the web where you can run IPython notebooks for free:
This site does not allow you to save your projects permanently but you can export projects and download and also upload notebooks from your local computer.
IPython notebooks are a great way to get started with Python and learn the language. It makes it easy to run your script in small increments and preserves the state of those increments aka cells. It also nicely integrates output into your workflow including graphical plots created with packages like matplotlib.pyplot, and it comes with some primitive markup language to add documentation to your scripts.
The possibilities are endless with IPython or Jupyter – to learn Python as a language or data analysis techniques.
I was inspired by this video on IBM developerWorks to again get started with this: “Use data science to up your game performance“. And the book “Learning IPython for Interactive Computing and Data Visualization – Second Edition” by Cyrille Rossant is the source where I got this tip from about free Jupyter in the web.

Of course you can also sign up for a trial on IBMs Bluemix and start a IBM Data Science Experience project.


Playing, learning, growing …

Since October last year I am playing Atlantica, one of those MMPORGs which I think is similar to WOW ( I guess since I don’t know WOW yet ), but this one is free to play. I am fascinated by the real smart reward & reputation system of this game and how it keeps your motivation on a high level and thus keeps you going.

You level-up based on your experience and of course the higher you get the more experience you need to level-up. On a higher level you gain only little experience by fighting low level monsters, thus you have to deal with the difficult ones to grow your experience. At the beginning of a typical quest you just have to fight one party of monsters, occaisonally you might run into a second or third party in parallel if this place is very crowded. Later in the quest you are forced to enter those called shadow dungeons where it is almost guaranteed that you have to fight two or three parties in parallel. If you are not strong enough at that time you might decide to collaborate with other players and form parties yourself. Fighting in a team is rewarded by gaining extra experience points; basically experience made by one of your team members contributes to your experience growth as well.
I love this concept since it simply pays back to collaborate and get in touch with other players to accomplish missions. This "shared experience" gaining has given birth to what is called LDP in the game ( "Long Distance Parties" ): these are parties of player who are actually strong enough and don’t need to fight in parties, they just form one to boost their experience growth. Or if someone isn’t fighting currently he joins the party of someone else just to keep experience points coming in.
Atlantica also has a mentor concept and often a mentee joins the party of his mentor who typically is on a much higher level to profit by his experience growth.

As I said already: on a higher experience level you gain little experience points when fighting low level monsters. But sometimes you have to do it simply to gain important items or money. This then is a typical trade off you also have to make in real life sometimes: money versus experience, dollars versus skill improvement, learning and excitement. In other words: sometimes you have to do the boring stuff to earn money instead of doing "exciting projects" to grow your skills.
In that sense it is amazing how close such a game matches with reality. One blog article is actually not sufficient to describe all aspects of it, one could write an entire book about it. And even I play it almost a year already ( and have reached level 79, 120 is the maximum currently ) there are still new aspects of that reward and reputation system I learn from my guild buddies or other friends each day. It must have taken the developer of that game years to come up with a clever and complex system like that.

Let me simply list a few more features of the game I have not mentioned so far which also play a role for your "career" and "business" in Atllantica as well:

  • Like in real life money plays a role as well.
  • You can carry it with you or keep it on your bank account. In the first case you risk some loss when loosing a fight against an opponent.
  • You get some interest rates for money you keep on the bank, but you have to pay for transactions ( deposit or withdrawel )
  • You get money through fighting
  • or crafting items and selling on the market
  • or exchanging books and selling on the market
  • You learn extra ( magic ) skills through books
  • You can boost your intelligence, dexterity and other attributes in several ways, e.g. also through getting equipement and weapons. You can craft those on your own, buy it on the market, get it during a battle, upgrade it. To craft you need to have an appropriate crafting skill and you have to buy or collect material. You can also learn crafting skills from other players. The higher your level is the higher level equipment you need, which of course gets more and more expensive, thus you need more and more money.

In some sense this reward & reputation system mirrors real life to a great extent. In some sense I wished the reward & reputation system in large companies would work the same way: e.g.

  • a straight and objective experience measurement system. No "self-certifications" any more, you get experience points right away after you have accomplished something, not once a year based on some fuzzy rating delivered by your boss which might be more based on statistical or political aspects than anything else,
  • a reward for team play and mentoring
  • a permanent growing of your skills by ensuring your future missions ( e.g. projects ) fit to your current skill level in a way that they ask you to do a little more than you have done before; that’s what a healthy growth is all about: the "little more" over time.
  • earning money or some form of virtual credits you can use for future projects

This motivation mechanism in those games actually is that efficient that it can become dangerous. In the recent "bild der wissenschaft" magazine there has been an article about pathological gambling, a new disease of modern societies. WOW is mentioned as THE example of a dangerous game making people addicted and disabling them to survive in real life. MMPORGs are drugs for those people who use it to escape their real life, even to an extent where it becomes pretty dangerous for them: they loose their jobs or stop finding a new one, they even forget to eat and sleep.
Used in the right dosage however those games can provide a great experience. I know, reality is not a game. And of course we do not fight monsters, instead we try to help our customers and sell our solutions. But wait a minute, all the obstacles getting into our way – technical defects, plan changes, issues, change requests, budget cuts, team conflicts, politics, conflicting stakeholder interests – aren’t those like monsters in those games lurking at every corner waiting for us to get them out of our way ? What else can we learn form games like Atlantica for our corporate culture and the way we do our business ? Probably more than we initially thought when we said: "Hey, that is just a silly game !"

Engineers needed ! ( EWeek 2008 started in Germany )


EWeek is coming up again here in Germany. Since three years I am participating as one of the engineers sent to several schools in our area to explain students why it is important ( for our economy ) and exciting to become an engineer and what should be considered before chosing this profession.

As I updated my presentation for this year ( only some minor updates so far with some new statistics ), I discovered some interesting facts:

  • in the year 2006 48.000 job offerings could not be filled with engineers in Germany,
  • causing a loss of 3.5 billion Euro for our economy. Other studies even mention loosing orders worth 18.5 Euro !
  • Most engineers ( 15.000 ) have been missing for research and knowledge management related services,
  • 12.500 engineers have been missing for metal processing, electrical industry and automotive,
  • machine construction ( the classical and in Germany very traditional engineering discipline ) is on rank 3 with a lack of 8.000 engineers.
  • The average yearly salary of an engineer in Germany is 58.550 Euro, this is 20.000 above the overall average  salary in Germany ( pre-tax ).

Source: bild der wissenschaft 08/2007