Sunday, February 14, 2016

Moon Walking with Einstein, Spider diagrams and Chicken Sexing

I recently finished "Moon Walking with Einstein" (1) and it's given me an idea regarding blogging: I want to start writing a weekly blog, as this seems like a good thing to do and a interesting creative exercise. However the problem is where to start i.e. the dreaded blank page.


One of the parts the book "Moon Walking with Einstein" which I particularly enjoyed was his conversations and analysis of the work of popular psychologist Tony Buzan (2) . I loved the part about his bullshit detector going on red alert … but he does also credit Tony Buzan with having some good points, which he has promoted heavily, although he drops the ball by writing unscientific nonsense.


Anyway, back to the good part of Tony Buzan's work: "Inventor of Mind Maps". Even if it is not clear to me if Buzan invented Mind Maps, or Leonardo da Vinci (2,3) or whether spider diagrams (as I like to call them) are just a simple visualization technique for free association (my personal opinion); I like mind maps for several reasons:
  • I would rather turn up at a cafe with a pen and paper than a laptop
  • In presentation I don't like regular note taking and apparently there are some scientific studies showing that students doing spider diagrams are more effective [need citation]


On Friday I was having a very good lunch with an old colleague/friend, and I want to finish this your blog post with a short piece from this book which was really touched a nerve for me. In the 3rd chapter called 'The expert expert' he talks about the chicken industry and the hard problem of distinguishing between male and female baby chickens. This is a tough economic problem as you don't want to waste too much resources developing male chickens who are not required for the egg production. Up until the 1920s most farmers had to wait until about eight weeks before they could tell the male and the female apart which meant a lot of economic resources were wasted and eggs were more expensive.


Now the fascinating part is that in the 1930s a Japanese based solution came along (4): they found by squeezing gently the tummy The tell me of a baby chicken this pushed the almost embryonic genitals out and although they weren't yet well formed, people with a lot of experience could just distinguish between the male and the female at one day old! This is a huge economic advantage, however it was a very complicated process which took thousands of hours of training and a lot of the students failed even after completing complex training. So the value of the highly skilled chicken sexer was enormous and they were flown around the world…


The bit which fascinates me is it I can see parallels with
  • the 10,000 hour rule
  • the IT industry  with people tend to 10-20 years experience

about 10 years ago many of us in the UK IT industry were encouraged to step aside from complex technical roles, as big business predicted that this area being purely outsourced India in the future. It is true Indian outsourcing has become an enormous part of the IT industry, but there are still good highly skilled jobs in the West and some has even come back to the more expensive Western organizations. This is particularly true of some of the top IT work being done in expensive cities  (San Fransico, Seattle, Washington, London, Amsterdam, Berlin, Sydney …) and so probably a win-win situation, as Indian IT is booming but they haven't got 100% of the cake :)


Links


(1) The official wiki page https://en.wikipedia.org/wiki/Moonwalking_with_Einstein and for a nice chapter-by-chapter summary http://www.maxmednik.com/home/notes-on-moonwalking-with-einstein by a Google Engineer


(2) The official wiki page https://en.wikipedia.org/wiki/Tony_Buzan and


(3) The official wiki page https://en.wikipedia.org/wiki/Mind_map and some interesting spin on http://www.tonybuzan.com/  


Wednesday, December 25, 2013

Russel Brand on Mrs Thatcher

It has been a good year for Russell Brand, his wild child, devil may care image has been challenge for me after his confrontation with Paxman.

However it was today, reading an article for the Guardian reviewing top articles from 2013, that his piece on Mrs Thatcher really caught my eye:

http://www.theguardian.com/politics/2013/apr/09/russell-brand-margaret-thatcher

While looking back on events it easier to understand and to judge, but the record of the British Political elite in the 1980s still look very patchy.

I understand that their primary concern is drive forward British strategic and business interests, however it seems short sighted to me and history may judge them harshly.

I made a few notes and added them to my every expanding mind-map project:


Sunday, April 3, 2011

Oracle on Linux - hugepage conciderations

Memory « Oracle Scratchpad This is an interesting article about the significant per process memory overhead of running Oracle on Linux without hugepages:
Upgrade to a 64-bit operating system and a 3GB SGA and you need 8 bytes for each page in the memory map and have 786,432 pages, for a total of 6MB per process.
The principles are explained very clearly in this article, but the key thing is that this overhead can build up quickly:

They should be using ”huge pages” (a.k.a large pages) for memory mapping. I can’t remember whether their platform supported 1MB or 2MB pages, but even at 1MB per page that would be 3,072 pages which means 24KB per process, for a total of 7.9 MB – reclaiming most of 2GB, which could go straight into the SGA, targeted at the buffer cache.

Saturday, December 18, 2010

Subnet Masks and Subnetting


I haven't work very much previously with network configuration but I am looking at more and more RAC issues recently.

I have started reading up to: Pro Oracle Database 10g RAC on Linux

This is a very good book, I have seen Julian present at an Oracle SIG before, and was rather baffled by the advanced RAC issues he tackled (I was a newbie DBA at the time). Still he had lots of enthusiasm and I have since read a number of presentation online.

Anyway while reading up about I decided I needed a refresher on the background network concepts:

The "Subnet Masks and Subnetting" webpage gives a simple example of how to use a 255.255.255.128 subnet mask to a create a restricted part in a class C network (e.g. 192.168.1.0) for a small enterprise.

Next I moved on to a more detailed explanation on wikipedia, subnetwork masks:

This logical addressing structure permits the selective routing of IP packets across multiple networks via special gateway computers, called routers, to a destination host if the network prefixes of origination and destination hosts differ, or sent directly to a target host on the local network if they are the same. Routers constitute logical or physical borders between the subnets, and manage traffic between them. Each subnet is served by a designated default router... The routing prefix of an address is written in a form identical to that of the address itself. This is called the network mask, or netmask, of the address. For example, a specification of the most-significant 18 bits of an IPv4 address, 11111111.11111111.11000000.00000000, is written as 255.255.192.0.

another important background concept for CIDR notation :

192.168.0.0, netmask 255.255.0.0 is written as 192.168.0.0/16
192.168.1.0, netmask 255.255.255.0 is written as 192.168.1.0/24

this concept is clearest by looking at the full binary format:

Binary form Dot-decimal notation
IP address 11000000.10101000.00000101.10000010 192.168.5.130
Subnet mask 11111111.11111111.11111111.00000000 255.255.255.0
Network prefix 11000000.10101000.00000101.00000000 192.168.5.0
Host part 00000000.00000000.00000000.10000010 0.0.0.130

so going back to the first example, which has a restricted access server on the 2nd half of there private class C network with IP 192.168.1.131, netmask 255.255.255.128 is written as 192.168.1.3/25

Binary form Dot-decimal notation
IP address 11000000.10101000.00000001.10000011 192.168.1.3
Subnet mask 11111111.11111111.11111111.10000000 255.255.255.128
Network prefix 11000000.10101000.00000101.10000000 192.168.1.1
Host part 00000000.00000000.00000000.00000011 0.0.0.3







Friday, November 26, 2010

Perl and Oracle

This page (http://www.orafaq.com/wiki/Perl) shows all the basics of setting up a perl script connection to an Oracle database can making basic calls...

PHP Oracle FAQ - Oracle Wiki

PHP Oracle FAQ - Oracle Wiki

A very good page showing how to work with PHP and Oracle.

I stumbled onto this page as I was just looking for a sample/simple stored procedure to borrow:

create procedure proc1(p1 IN number, p2 OUT number) as

begin

p2 := p1 + 10;

end;

|MG| Win7codecs 2.6.9 Download

|MG| Win7codecs 2.6.9 Download

There is something mysterious about codecs ... this one comes highly recommended :)