Statement of intent

So, I’ve set up the WP app on my phone. Having had a feeling of indigestion regarding the things I’ve been reading, the consistent flow and overflow of info from the people and books and experiences around me, I’m looking to spend my commute time writing and thinking rather than reading. 

Be warned, I’m generally going to be writing to get my thoughts in order. Anything useful to others is accidental :/

I’m hoping this plan comes together. 

Understanding Oracle and the CEO learning curve

“Softwar” by Matthew Symonds and Larry Ellison turned up in a second hand bookstore near me, and on a whim I purchased it.

It’s much, much more like journalism than a regular business biography — it’s clear that the two get along with each other, and Symonds is a convert to Larry’s vision for the future of computing at the time.

I’d only been vaguely aware of Oracle as an enterprise-level predator: a company that was renowned for being tough dealmakers and making expensive, high-end products for the leviathan companies that run the world.

There were a few first-order things I learned about management and leadership

  • Understand whether you’re a sprinter or a marathoner. Ellison and Bill Gates are archetypes of the two extremes, and have become successful in completely opposite ways.
  • Pick your strengths and lean into them. Oracle almost died a few times because they were reaching for the next big breakthrough while their competitors were milking the current state-of-the-art. When they managed to land those big leaps, they had a massive competitive advantage for at least the next generation of databases.
  • Culture is incredibly difficult to fix from the top-down. They mention that bad habits in the sales arm took years to stamp out even after changing their incentives and strategy.
  • If you don’t have time to do things the right way, you definitely don’t have time to do them the wrong way. One of the biggest debacles in the book is where they force a product out before it’s ready. The early adopters have such a terrible time that the ground-breaking leap forward gets a reputation for being unusable, and they spend a year digging themselves out of a hole of their own creation.

There’s a whole lot more. Also, Ellison comes across as a hilarious and smart guy who has become CEO through drive, intelligence and a lot of luck. The book has the unusual arrangement that Larry couldn’t ask for changes to the main text, but could respond in footnotes throughout the book. This gives it a conversational feel and some of his interjections were funny enough to share with others. I had not expected that!

The more interesting aspect for me was that it helped to make sense of what I have seen in the real world with a few CEOs — they’re smart and ambitious and hyper-competent, yet the organisation can sometimes engage in wasteful or damaging or just plain absurd behaviour. How does this come about?

Firstly, you have to adjust for the volume and difficulty of the things they deal with in an average day. For Ellison there’s his marriage breakdowns, a legal case/extortion attempt, and his America’s Cup quest. For others it can be family matters or health problems. This is in addition to the problems of the workplace and in a competitive sector.

There’s an Elon Musk quote about how the CEO has to deal with all the problems that no-one knows how to solve or is willing to take responsibility for, so you have to deal with the worst problems in the organisation. Hyper-competent person doing the work they have trained in, with the time and materials they need? That’s going to work out great. Same person, dealing with the third catastrophe of the morning, some area they don’t know much about, with other issues eating their energy and attention? They’ve been doing this continuously for months? They are no longer attempting perfection, they are going for ‘good enough’ so the organisation can keep moving.

Secondly, you are dealing with ambitious, competitive people. The ‘accidental CEO’ trope in books/TV/etc (See Silicon Valley for the latest example that comes to mind), but in real life someone who does not have the drive to do it is not going to last long. Whatever you know about the average mindset, ‘normal’ people, throw it away. It will not help you understand the set of people who work their way to executive positions.

They are also going through some multiplier on the average stress load of an individual. Their impact on employees, customers, even parters is huge. One friend was working with an ailing business, and after a disappointing week was told that he was going to cause the bankruptcy of the business and ruin the lives of a lot of people. Now, there is the obvious rejoinder from this distance that it was going badly before he entered the situation. At the time I could see how heavily it weighed on him emotionally. This collision of ambition and caution, of wanting to win but not to hurt or disappoint people, it can drive emotional behaviours that don’t make sense outside their immediate context.

Third, executives are learning machines surfing a wave of unique circumstances. Ellison was riding the wave of change in the tech industry. There were dozens of competitors, a changing environment, the customer’s desires are shifting while the products are being engineered. After the winners are known, it will all be made to look obvious. During the competition, it absolutely is not.

Something will inevitably turn up in the blind spot of the executive team, and will cause a huge amount of disruption. To outsiders, a series of structural or short-term issues appear as some kind of ongoing and persistent personality trait. For the CEO themselves, it can be a major learning point and tends to be transformative. For example, Ellison learns a lot about his management style, who he works well with and what the warning signs are of things going off the rails. Each time the management team implodes, he learns something to bring to the next set of relationships. So while he’s portrayed as a perpetually problematic leader, he’s actually getting more skilled and is running into different issues each time.

Which brings us to the interesting systemic problem for Oracle/Larry Ellison. The curse of the ‘sprinter’ personality is the need for someone good enough to run the company when he’s away, and who will step down when he comes back. A person like that could run the entire show themselves, so why would they be happy working to Larry’s rhythm? Someone with the talent and ambition to be #2 at Oracle could easily be #1 elsewhere, so (per point two above) there is an internal contradiction to the person/position you are trying to set up. That contradiction shows up in the disruptive cycle at Oracle the book documents.


 

This isn’t just an Oracle dynamic. I’ve been in workplaces where the CEO is comfortable in the top-dog / alpha-male / leader-of-the-pack position, through personality and practice. They may understand the need for up-and-comers to challenge them, but it can be appealing to put people in their place by subtle and unsubtle means.

And you can reach a comfortable stasis / profitable business where people know and are happy in their place. The invisible problem is that ambitious, talented people have to either leave or stay and become drones. The executive team has to genuinely commit to the challenging work of creating peers rather than servants, or you wind up with a cloud of yes-men masking what is really happening in the business. This is where I think the COO role can be powerful, as a connector between execution and the executive team.

On that topic, it takes an excellent business communications structure for rapid turnaround of messages from frontline staff to the executive team and back. Griffin Alliance had the most exceptional communications structure I’ve ever been a part of, and I wish more people would form their businesses like this. Monday was a 12-hour day, with feedback from all front line teams cascading up through each layer to the executive team itself. To give some context:

  • Griffin Alliance hires out DJs / MCs / door staff / marketing services / equipment to nightclubs and pubs
  • Most of the staff were casual or contractor
  • The org structure had a ‘Site Coordinator’ responsible for a specific night at the venue. The Site Coordinator’s direct reports would be the door staff and the entertainers. The site-co would report to the Site Coordinator Manager.
  • The Site Co would touch base with their DRs on the Sunday or Monday morning to find out any problems or suggestions from the front line staff regarding their shifts that week.
  • Mondays would start with the team meeting for key people from the venue, followed by the site coordinator meeting to discuss what was happening across venues. Then the SiteCo manager would go into a meeting with the other department heads, such as equipment and doorstaff. Then you would finally have the executive meeting in the evening.
  • Let’s say one of your front-line staff sees an opportunity late on a Saturday shift. Or a massive risk or problem. They can report that to the person above them, and it will flow all the way up to the executive (if necessary) by Monday evening for a decision. Tuesday morning, the business is in a position to act on anything in time for the next weekly cycle (a few Thursday night events, more on Friday and lots on Saturday) and you can email the decisions and actions to every member of the business. It was fucking glorious to have this sense of rapid communication / decision-making and preparation for action, and I have felt the lack of it in every workplace since.

A lot of this comes from “The Rockefeller Habits”,  but it is the most thorough optimisation of the communication inside a business cycle that I am aware of.


 

To return to Oracle and the dynamics of the CEO role: people pick the wrong role models and as a result entirely misunderstand what leadership means. When so many people make the same mistake the same way, you know you’re looking at a cultural problem.

This is going to look totally unrelated, but I promise this digression brings us back after a few paragraphs.

Another book from the same store was David Mamet’s “True and False“. He argues that Method acting is a step backwards and that any performance improves when it is simple and truthful.

The actor should enter the scene with their objective in mind, say the lines clearly and respond to the others on the stage. If the script is good, then the actor improves nothing by over-emoting. If the script is bad, the actor cannot save it with an overwrought performance.

This creates performances that push the reaction onto the audience. The audience feels the uncertainty of the moment, is brought to question and ponder the matters facing the characters. These performances “do not conduce to the immediate ejaculation ‘bravo‘” he says, even though these performances are the heart of acting. What about performances which do elicit the bravo reaction, which is to say, where the audience responds to the actor’s acting?

… there is a spontaneously occurring position in the acting profession. It is that of the Great Actor. This is, in effect, an honorary position, awarded from a cultural need for the place to be filled, and not according to the merit of the individual. Indeed there is little or no merit required from the person so designated, save the willingness (whether in awe or vanity) to go along with the gag.

Why? What cultural dynamic does this serves? Mamet argues that the Great Actor takes the burden of the emotional moment from the audience. They can praise the Great Actor and convince themselves that they appreciate art, but it is really vanity. Instead of feeling the moment themselves, they show they can see it in others. Praising the Great Actor allows you to glorify yourself while pretending to be humble. In a gorgeous sentence from Mamet

His presence reassures us that we need not be moved by art.

So, how does this apply to the Great CEO?

I feel like it shifts the burden of understanding the difficulties of leading people and managing organisations.

Idealising Steve Jobs has allowed a whole bunch of tech entrepreneurs to indulge their worst conceits when they really should have tried to feel and reflect upon and learn from their uncertainties — how to manage people, how to deal with the non-deterministic systems that make up your company and environment. How to cope with the fact that even if you do everything right, you may fail for reasons beyond your knowledge or control.

It feels terrible, to begin with, when you realise just how little you are prepared for. How many beasts lurk in the forest, waiting for your attention to wander. If you are in a startup or running your own small business, the daily/weekly/monthly existential threats can be feel suffocating.

The only way out is by taking action. What are our priorities? What’s the best decision we can make, given our time / energy / attention available? What can we do, right now, to move in the right direction?

Curiously, some of my happiest days at MenuPad were the days we heard a competitor had closed down. They had had more money, or more connections, or a better website, or a bigger client than we did, but we had managed to hustle and stay alive while they burned money and burnt users. I look back at the high points of the time, like a new site going live or a new POS integration or the Apple feature article, and they hardly ever seemed like a huge boost at the time, surrounded as they were by 12-18 hour days and a mountain of other things to do. One does not win a hurdle race by stopping after every hurdle to congratulate oneself for doing well so far. But to hear a competitor had failed? One less beast in the shadows. A rare vindication of our guesses and hard work. A cause for celebration before turning back to the screen.

The attitude that develops is an inversion of the average. You clear a hurdle, then look for the meanest one that you reasonably think you can do, and quickly. If you can pick better and execute faster than the others, you can gradually build competitive advantages. The more valuable and difficult the hurdle is, the smarter the solution you come up with, the better you execute, the further you can get ahead. Because there is no way forward except through the obstacles. The obstacles are the way forward.

The Great CEO lets you skip this painful reorganisation of the self. Pick someone who through great talent and good planning and sheer good luck has made it, and you can act like you are wise in the ways of leadership. You and your circle can praise them, bask in their reflected glory, feel like you have finished the race without confronting the terror and uncertainty of jumping any hurdles.

Steve Jobs’ presence reassures you that you need not be moved by leadership. You need not be moved by your employees. You need not be moved by circumstances.

In contrast, the best CEOs are not, to steal Mamet’s phrase, conducive to the immediate bravo. Lew Cirne from New Relic is one of them. Technical founder, clear vision of what the company is going to do and what the culture is going to be, an immense curiosity and playfulness and concern for people. If you haven’t heard about him, you should read up.

I saw him present at Future Stack 2014 (I was a guest of New Relic and have done webinars and testimonials for them, being a huge fan of their iOS analytics products) and he just seemed so… level headed and nice. Here is someone who cares about his users and his employees and the technology and the broader culture. Onstage he talked about what they were doing to  encourage diversity in the tech sector.

He was not acting out a Jobs-style salesman part. He spoke clearly. He had his objective in mind. He had a compelling script. His enthusiasm burst through, and not through manipulation or forced emotion. I dislike a lot of things about startup culture and Silicon Valley, but I trust this guy and would work for him in a heartbeat.

Another excellent CEO is Cormac Barry at Sportsbet. The exec team at work are actually doing the right things on a number of fronts: strategy, culture, internal development. I recently read Good To Great and have been rereading the Rockefeller Habits and they are systematically working through important items as fast as the organisation can absorb.

A couple of months ago, I participated in the Sportsbet/Paddy Power Leadership Summit, and it was clear that the global executive group is genuinely committed to building up the organisations from within. A few small moments — being encouraged to speak up about culture issues rather than play ‘happy worker’ for the CEO, watching the exec team interact with each other — and you could tell that they are determined to take on the challenges of setting and maintaining a high-performance, low-bullshit culture.

Sportsbet also held a #careerdevfest last week (yes, the name is a hashtag because online company. Stay focused on the prize, which is that we even have such a thing) at which Cormac spoke. And it was not the Great CEO speech, where your attention is forced to focus on him doing executive stuff and you know where to clap. It was a surprisingly candid story about his background and the path to CEO, including his down times and mistakes and shortcomings. Many people expected to hear how Sportsbet is the greatest thing ever and we should all slog our guts out for the company. Instead, they heard that the CEO has a coach, that he is interested in the online sector beyond gambling, that he is still learning to be better at his job.

He spoke clearly. He had his objective in mind. He had a compelling script.

The burden of the moment was entirely on the audience: Who do we want to be at work? How do we want our careers to progress? What will we do to achieve our desires?

That, dear friend, is the performance of an excellent CEO.

‘Good to Great’ and what really happened at Intel…

So I’ve been reading a fair bit lately. Some lucky coincidences helped make a few more connections than would have otherwise been the case, and I thought I’d share.

Good to Great” by Jim Collins is a book you’ve probably heard of: it takes several pairs of businesses, in roughly the same position to begin with where over the course of time one becomes 10x the other. This looks a little bit like science, because you’re trying to remove as many confounding factors as you can. It makes a lot of sense to look for these differences if you are looking for patterns that work across sectors and people.

GtG does a great job of synthesising a huge amount of info and provides a list of lessons that make sense, individually and as a system of framework for running a company. I finished the book and felt like an evangelist for the ideas and principles they had found.

Also in my eBook backlog was ‘The Intel Trinity‘ by Michael Malone. It had been recommended by a tech blogger, and I wanted to deep-dive into some of the details behind the Intel / AMD comparison.

There is a huge divergence between the two. A lot of Intel’s success came from the unique people running it. Like, literally one of the early game-changers for Intel was having the Nobel prize-winner for the nascent field as the CEO — doors opened that would otherwise have been closed. How do you recreate that anywhere else?

In fact, the whole GtG comparison seems weird when you find out that AMD only really existed as a competitor because of the personal relationship between one Intel founder and the AMD CEO.

This is not to say that GtG isn’t a good book: it helped articulate a range of ideas and interactions which are important to running a company well in a competitive environment. If you want to be able to bring what you learn to your work environment, however, I think it’s much more useful to know the rest of the story and understand how the real leaders did their job at the time and within the constraints of their energy, knowledge and time available.

I have a pile of notes in both ebooks, but I feel like the real value of the exercise was the in-depth exploration of the whole thing. I would highly recommend reading them as companion volumes, so that you understand the extent to which GtG is a very condensed and edited summary of what really happens in creating a business.


 

 

While I’m at it, I would highly, highly recommend “High-Output Management” by Andy Grove. It’s a book that keeps coming up over and over again in tech management circles, and for good reason. He is extraordinarily clear about the value of management processes and disciplines, from each tiny piece to the way they fit together and work as a whole. It will make you a better manager and/or team member, and provides an excellent background to understanding the Intel that Grove created.

In the spirit of ‘Learn from the masters, not their students’ I would more highly recommend time with Grove’s book and anything by Drucker. Extending their insights to modern organizations is an exercise in understanding the fundamentals of their approaches.

Getting cURL working on OSX Mavericks with self-signed client SSL certificate

So, here’s what you’re going to have to do to get this to work:

  1. Install the latest curl. I used MacPorts to get 7.35, but all the cool kids use Homebrew. Unfortunately, `brew doctor` has a very long list of complaints ever since installing some libraries (*cough* libusb libfreenect *cough* you bastards *cough*) to play around with the Kinect sensor. so `port install curl +ssl` it is. The +ssl is a variant, which I hadn’t used before. \
  2. It’s going to be /opt/local/bin/curl, (at least, it was for me) so check your $PATH or `curl -V`
  3. I played it safe, and opened the openssl-created certificate in Keychain access and added it to the login keychain.

Now you should be able to successfully log in with:

curl -v -q -k -E client-2048.pem https://identitysso.betfair.com/api/certlogin -d “username=XXXXXXXX&password=YYYYYYYY” -H “X-Application: commandLineTest”
Response:
{“sessionToken”:”Y5aYvLMyN3V8rsJzQ5x6haDNzYQd2Fu7zPfsNGnRaJc=”,”loginStatus”:”SUCCESS”}
Well, I managed to successfully login after a few hours of effort!

OSX Mavericks broke cURL use with self-signed client certificates.

So the path to here was:

  1. Let’s play with an API and POSTMan / Jetpacks.
  2. Can’t use the work API, not from home at least
  3. How about BetFair?
  4. Signup at http://developer.betfair.com, create API tokens etc
  5. Create a self-signed certificate with Keychain Access, which looks like it should work. But it doesn’t, with the error “curl: (56) SSLRead() return error -9841”
  6. Cryptic post on a forum indicates “-k” doesn’t work for cURL on OSX. remove that and get the error {“loginStatus”:”CERT_AUTH_REQUIRED”}
  7. Maybe it was something in Keychain Access. Open iTerm and create one with openssl at the command line. Same error.
  8. Go for a deep, deep dive. Eventually find this post wherein it is revealed that Apple has made some changes and –cert has broken. Not only that, the suggestion is to download and compile the latest curl, then use .p12 files since .PEM isn’t supported in the Security API. <Sigh>
  9. Leave this aside for later. I should have quit earlier and searched programmable web for something else to play with.

Edit: Found and fixed the issue, steps in this post.

The Killer Inside Me – A few thoughts

This book by Jim Thompson was highly recommended. Puts the Dexter series to shame. The first Dexter book was so pleasantly written, but lost its way in the sequels. This is a very different internal take, with a main character who is diagnosed as paranoid schizophrenic (but who is clearly a clinical psychopath, to be pedantic) after killing a bunch of people to avenge his brother’s murder.

Rating: worth a read if you loved the first Dexter book.

Johnny got his gun – A few thoughts

Read this last night when I was having trouble sleeping. The author has written screenplays for Stanley Kubrick, this is a pacifist story published just before WWII.

It’s very well written, nicely shifting viewpoints and impressions as Johnny regains consciousness in hospital, having lost all senses and ability to interact. The stream of consciousness as he tries to control his attention and wrestles with nihilism and powerlessness was very effective.

It refers to a way of life that is very dead now — a bucolic childhood, if poor. It’s a PKD-worthy thought experiment about what is left when the senses are removed.

Rating: Enjoyed it and would recommend to others.

New approach to blog posts

Having seen Neha Narula’s approach to reviewing the things she reads, I’m thinking of doing a lot more short posts about interesting things I read.

If it’s worth reading, it should be worth writing about, even in a very short form.

Currently at the NSCamp weekend in Kinglake, Victoria. Didn’t know there were so many interesting devs based in Melbourne, it’s been great to meet more of them!

Oculus VR

Just arrived on Friday: an Oculus VR dev kit.

I spent a little while on Saturday unboxing and connecting everything, needed to download TF2 on a windows box to get the VR integration, then a few hours today messing around, firstly with the VR calibration and settings in TF2 and then with the SDK and sample projects.

I’m not a game developer, so I guess my interests are very different to the majority of the other kickstarter backers. I would love to use this for
1. Eye candy. Pull some audio-responsive video patches out into 3d
2. Data visualisation. After working with reams of JSON data, I was thinking of how to assemble into useful visualizations so you could see outliers or interesting stats at a glance. Or even moving through a graph of some kind — either JIRA task relationships or source code analysis.

Anyway, baby steps to get this useful.

First priorities are to put together some Quartz Composer plugins for the sensor input on user head direction,
Secondly another plugin to simplify the user config — Inter-pupillary distance being a big deal in getting the 3d effect to pop out at you. Ideally, use the figures the TF2 calibration gives you, since that seems to have the easiest process for calibrating.
Thirdly, rendering to the goggles. They present as a 1280x800display, one half for each eye. So your render dest is the same scene but with the POV moved by ~64mm and with some focal distortion applied.

I’m going to have to dust off my OpenGL textbook and my C++ skills!