abstraction/federation – mary poppendieck at qcon

This is part of my live blogging from QCon 2015. See my QCon table of contents for other posts.

Excited to see Mary as the keynote. Good speaker and good role model.

Abstraction
The presentation started with Moore’s law going back to the very early calculators and covering the different generations of hardware. We are a trillion times faster since 1940’s. Massive minuiturization as well.

Happened both by becoming small and by abstracting out how classes of things. For eample, no motherboard in 1970’s.

Then she went into how code changed over her career. Fortran to HTML Baby steps as far as abstraction is concerned. Same generation. Changes not as vat in hardware.

Generation changes – reading/writing, printing press, personal computer, internet, culture of participation.

Currently a project where you can design your own sensor and plug into your phone.

Federation
Federation scale

  • mini-computer evoloved to embedded – control you rown process
  • pcs evolved to servers – retail software packages
  • internet evolve to services – websites
  • smartphone evolve to wearables – apps interact through the cloud

Federation leads to wide participating. Can share from own serice. More open source. Sharing helps industry grow. Reputation on sites like ebay allow anyone to share. Share practices on blogs. Education online.

If thinking about scale, think about how you can share.

Friction
Large systems don’t deal well with friction. Container ships helped with this. Standards size/shape.

Enterprises have databases. We create deep dependencies across apps because all hit same data. Which means high friction because hard to change. Amazon microservices have local data. Trying to decouple.

What is a microservice

  • A microservice must be indpededently deployable to be useful.
  • Small team-endto endreonsibility. You build it. You monitor it. You fix it
  • No central db. Extensive automation and monitoring. Canary releasing. Smart versioning services. Double mock contract services

Companies with very high volumes like Amazon seem to require microservices. Requires strict discipline/operational excellence. Teamsnee situational awarenss. Must know all the time how service impacts customers and providers.

If you and provider change rapidly, how do you know mock returns same value. Create a pact so can check. See pact github project

Goals: limit risk and lower friction

How do you deal with a monolith if you have one?
Pack dependent code into containers. If put service and dependencies into a container, can put box around it and isolate it. Refactoring to make smaller/simpler. [I like how nicely she got from container ships to virtual containers]. This gives you portability, consistency, isolation, ease of use and better server utilitation. Most importantly, get lower friction and less risk.

Smashing it doesn’t work. Poking it does. Smashing is like a releae. Poking it is continuous delivery.

DevOps
If have branching, aren’t doing continuous delivery. Deploy mainline always with new features on switches so can turn on when ready.

Some people want to be safe (safety goals) and some want to be experimental (aspirational goals). With safety, failure/setbacks cause more efforts. With aspirational goals, prasise causes more effort. For safety,attention is for bad behaviorand asprirational, it is for good. Ops tends to be safety and dev tends to be aspirational. Marriage works well when have both, but must work towards same goal.

Who is responsible? Everyone. “Nobody succeeds unless everyone succeeds”

Getting to continuous delivery isn’t inherently harder than other tech issues. The main obstacle is organization.

In military, need to maintain situational awareness one level up and command awarenestwo levels up.

Great talk. A nice start to the day. I like that she sprinkled book and blog references throughout

qcon – live blog table of contents

I’m attending QCon New York which is run by InfoQ.com. At the end, I’ll update this post to be a table of contents of my blog posts from the conference.

My live blog posts

Wednesday

Thursday

Friday

That’s 9742 words live blogged not counting this post (which gets it to 10K) and an average blog post size of 487. The “Too Big To Fail” session was an outlier at 827; must have liked it a lot.

My overall impressions
The conference in general seem set up well with 25 minutes between talks along with an open space by area at the end of the day (not presentations; discussions). For lunch they have tables designed for discussion – large normal confernece tables, 4 people discussion tables and “loner” tables. I also like the intro about usbility including the big names on the badge.

The intro also had each track lead give an overview of th talks in their track. This felt like overkill as this was online and most people think about what they want to attend before showing up.

Logistically, I really like that you gave feedback by putting a green, yellow or red paper as you walk out the door of the session. Low overhead; low time commitment and asked while you still remember the details.

Application Security USA 2013 – live blog index

I attended the Application Security USA conference this year. Similar to The Server Side Symposium two years ago, ago, I blogged about it.  This post a link to all of those blog posts.  For readers in the New York City area, OWASP has a quarterly meetup.  I’ve gone to the last three or so and found the speakers to be excellent.  And since the conference was in NYC this year, I took the opportunity to go.

Wednesday

Thursday

Plus how blogging with the iPad Air went.