Shared posts

18 Oct 16:44

The Ops Identity Crisis

by Susan Fowler

A big theme in the keynotes and conversation during Velocity Conf in NYC a few weeks ago was the role of ops in an "ops-less" and "server-less" world. It's also been a big feature in discussions on twitter and in conversations I've had with coworkers and friends in the industry. There are several things that stand out to me in these conversations: first, that some ops engineers (sysadmins, techops, devops, and SREs) are worried that they will be phased out if developers and software engineers are responsible for the operational tasks in their systems; second, that developers and software engineers do not have the skills needed to take over responsibility for operational tasks; and third, that building reliable systems is impossible without an operations organization. 

I'm considered by many to be an ops engineer by trade, because I'm a site reliability engineer (SRE) at Uber. At most companies, SREs are just like any old ops engineers: they're viewed by developers as the engineers who are responsible for running the software after the developers build it. At other companies (like Uber),  SREs aren't supposed to be your typical ops engineers - the majority of them aren't on-call for the microservices (the development teams are), they don't deploy the code (the developers do), but they do build tools to enable and empower developers to run their own services, and they are there to make sure that systems are built and run with reliability in mind. Even so, there's not that much that differentiates an SRE from a SWE (software engineer), and when people talk about an ops-less world, SREs (myself included) wonder where we fit into the picture. 

Let's start with a simple question: do we really need operations engineers? My answer is a very loud and firm "no". We don't need operations engineers. We don't need a separate organization whose responsibility it is to deploy all the code, to be on-call for all the services, to monitor everything, to do all of the debugging and troubleshooting and mitigating and resolving every time something breaks. As I've argued before, these tasks are best accomplished when they are the responsibility of whoever knows the application, service, or system best, and, in the majority of cases, the developers are the best engineers for the job. If developers are ready, willing, and trained to take over the operational tasks for their systems, then there's no reason to have a separate operations organization - but in the industry today, that's not the case: many developers aren't ready (they haven't been on-call before, they don't know anything about systems debugging and troubleshooting), they aren't willing (after all, who wants to get paged at 2:00 AM when their code causes the system to fail?), and they aren't trained (they don't know best practices for deployment, for logging, for monitoring, etc.). In short, if developers are responsible for running their own applications, services, or systems, then no, you don't need a separate operations organization - but if they aren't, then you most certainly do. 

To explain my reasoning behind this, I'm going to dig into each of the concerns I listed above. Let's start with the first concern: the fear that ops careers will be phased out. If we get to the point within a company where operational engineers are no longer needed, because developers are responsible for running and maintaining their own software, then we've done our jobs. One of the things that senior ops engineers have always told me is that ops should strive to automate themselves out of their jobs - automate monitoring, automate deployment, automate rollbacks when deployments go badly - and if you find yourself at a point where everything is automated, then it's time to either figure out how to make it even better (if you can), or move on to another company and set them up for success. Automating everything away isn't enough to justify running an ops-less organization, however: developers will need to become responsible for running the deployment systems, for understanding monitoring, for learning how to debug and troubleshoot complex systems problems. To run a successful ops-less organization, developers need to become experts in operations. 

Let's imagine that we find ourselves in a company where the developers are experts in operations, every operational task has been turned into a self-service tool that is maintained by developers, and there are no traditional operational tasks left for the ops engineer to work on. What happens to the operations engineers? The first possibility is that the operations engineer moves on to another company where developers aren't responsible for operations - if you love ops work, then this would be the right move. The second possibility is that operations engineers become the software engineers responsible for internal self-service tools and the application platform, and they build centralized systems that all development teams can use for logging, for monitoring, for debugging, for deployment, and the like. This second possibility requires that ops engineers be strong and capable programmers (if you've automated yourself out of operations, then you're likely a pretty competent programmer), and it comes with work that will never end nor be phased out: there will always be new and improved infrastructure tools that you can adopt and migrate your systems to, there will always be new challenges you will meet. In this second picture, there is practically no difference between a software engineer and an operations engineer - they both build and run their own systems - other than the domain: the software engineer builds and runs the top-level applications, while the (ex-)operations engineer builds and runs the infrastructure and tooling underneath the applications. 

Now for the second concern: that developers and software engineers (some places use the terms interchangeably, some do not, so I'm including both terms here) simply don't have the skills, knowledge, and/or expertise needed to take over operational tasks. There is a little bit of truth to this, because many developers work in organizations where they've never had to do any operational tasks. If they were told they were responsible for their own operations, many of them would have no idea where to start or what to do. However, the majority of developers are very capable and competent engineers who know the fundamentals of software engineering and computer science - if they can write an application, they can definitely debug, monitor, deploy, and be on-call for that application. Like anything else, learning how to handle operational tasks just takes time, training, and help. 

There are three domains of expertise that experienced operations engineers tend to have. They have a lot of low-level systems knowledge: they know how to debug low-level systems problems, they understand the fundamentals of networking, they know the intricacies of the Linux kernel and they know every Linux command on this earth. They also have a lot of high-level distributed systems knowledge: they know how entire production systems fit and work together, they know how to design for scalability and reliability, they know how things should be deployed and monitored and logged. They also have solid programming skills: they know multiple languages quite well, and can easily write applications and tools for developers to use. The tricky thing about replacing operational engineers with software engineers is that software engineers tend to only be experts in the latter domain. In an ops-less organization, developers need to have the skills and experience in the two former domains as well. Again, this isn't impossible, and I've met many, many software engineers who are extraordinarily skilled in all three areas. 

Finally, the third concern: that building a reliable system is impossible without an operations organization. This is, once again, something that is true in organizations where developers aren't responsible for operational tasks and lack the systems and best practices knowledge that operational engineers bring to the table. If you build a system without engineers that have (i) deep understanding of computer systems at a low-level, (ii) knowledge of operational best practices, and (iii) experience with building and running large-scale production systems, then yes, you are going to have a really horrible experience trying to build a reliable system. But if your developers are trained and have experience in these three areas, then you will be just fine. 

I think the identity crisis in ops is justified. Ops roles have been around for many, many years, and recently the conversation in the industry has shifted so much that industry leaders are beginning to ask if having a separate operational organization even makes sense. In organizations that train and expect their developers to run what they build, the operations roles will change dramatically - in my opinion, they will change for the better, and we'll be building large, complex systems and self-service tools and application platforms and all kinds of wonderful, exciting, cool things. However, I think that the majority of operations engineers will find that the their roles will stay the same for a very long time: there will (probably) always be organizations that prefer to split their engineering resources between those who build (developers) and those who run (operations), and there will always be new organizations who are moving toward ops-less but need operations engineers to pave the way, to train the developers, to build the systems and automate things to the point that developers can begin taking on the operational responsibilities. 

In summary: the identity crisis is real, and it's here, and it's unavoidable, but I don't think that it's a sign that things are getting worse for operations and for the tech industry. It's a sign that things are getting better. It's an exciting sign that the field is changing, evolving, growing. It's a sign that responsibility is (finally!) valued in the world of software engineering. 

24 Jul 10:50

This Tree Created by Artist Sam Van Aken Grows 40 Different Kinds of Fruit

by Christopher Jobson

In 2008, while locating specimens to create a multi-colored blossom tree for an art project, artist and Syracuse University art professor Sam Van Aken had the opportunity to acquire a 3-acre orchard from the New York State Agricultural Experiment Station. Fascinated by the practice of grafting trees since a young age, Aken began to graft buds from the 250 heritage varieties found on the orchard onto a single stock tree.

To create the Frankenstein-esque tree, Aken worked with stone fruits (fruits with pits) like peaches, plums, apricots, almonds, and nectarines. Over the course of five years he successfully grafted dozens of plants onto the same tree, and with that, the Tree of 40 Fruit project was born. Because of their similarities, all 40 fruits bud, bloom and fruit in near perfect unison.

Aken has since grafted at least 16 different “Trees of 40 Fruit” which are planted across the U.S. in places like Newton, Massachusetts; Pound Ridge, New York; Short Hills, New Jersey; Bentonville, Arkansas; and San Jose, California. Each tree is specific to its environment, using both local and antique varieties.

National Geographic recently met up with Aken to interview the artist about how he makes each tree. You can hear him talk about the project in the video above. (via Digg)








07 Jan 13:16


22 Aug 19:48

Hello from Iceland

by Sabine Hossenfelder
So here I am on an island in the middle of the Atlantic ocean that's working on its next volcano eruption.

In case you missed yesterday's Google Hangout, FQXi just announced the winner's of this year's essay contest and - awesomeliness alert! - my essay "How to save the world in five simple steps" made it first prize!

I'm happy of course about the money, but what touches me much more is that this is vivid documentation I'm not the only one who thinks the topics I addressed in my essay are relevant. If you've been following this blog for some while then you know of course that I've been thinking back and forth about the problem of emerging social dynamics, in the scientific communities as well as in society by large, and our inability to foresee and react to the consequences of our actions.

Ten years ago I started out thinking the problem is the modeling of these systems, but over the years, as more and more research and data on these trends became available, I've become convinced the problem isn't understanding the system dynamics to begin with, but that nobody is paying attention to what we've learned.

I see this every time I sit in a committee meeting and try to tell them something about research dedicated to intelligent decision making in groups, cognitive biases, or the sociology of science. They'll not listen. They might be polite and let me finish, but it's not information they will take into account in their decision making. And the reason is basically that it takes them too much time and too much effort. They'll just continue the way it's always been done; they'll continue making the same mistakes over again. There's no feedback in this system, and no learning by trial and error.

The briefest of brief summaries of my essay is that we'll only be able to meet the challenges mankind is facing if our social systems are organized so that we can react to complex and emerging problems caused by our own interaction and that with our environment. That will only be possible if we have the relevant information and use it. And we'll only use this information if it's cheap, in the sense of it being simple, fast, and intuitive to use.

Most attempts to solve the problems that we are facing are based on an unrealistic and utopian image of the average human, the well-educated, intellectual and concerned citizen who will process all available information and come to smart decisions. That is never going to happen, and that's the issue I'm taking on in my essay.

I'll be happy to answer questions about my essay. I would prefer to do this here rather than at the FQXi forum. Note though that I'll be stuck in transit for the next day. If that volcano lets me off this island that is.
20 Aug 15:57

A Softer World: 1142

buy this comic as a print!
Or share on: facebookreddit
If you enjoy the comic, please consider supporting A Softer World on Patreon
31 Oct 19:01

12 Indispensable Mindful Living Tools

by zenhabits
By Leo Babauta

The focus of my life in recent months has been living mindfully, and while I don’t always remember to do that, I have learned a few things worth sharing.

The first is a mindful life is worth the effort. It’s a life where we awaken from the dream state we’re most often submerged in — the state of having your mind anywhere but the present moment, locked in thoughts about what you’re going to do later, about something someone else said, about something you’re stressing about or angry about. The state of mind where we’re lost in our smartphones and social media.

It’s worth the effort, because being awake means we’re not missing life as we walk through it. Being awake means we’re conscious of what’s going on inside us, as it happens, and so can make more conscious choices rather than acting on our impulses all the time.

The second thing I’ve learned is that we forget. We forget, over and over, to be awake. And that’s OK. Being mindful is a process of forgetting, and then remembering. Repeatedly. Just as breathing is a process of exhaling, and then inhaling, repeatedly.

The third is that mindful living isn’t just one thing. It’s not just meditation. Nor is it just focusing on the sensations around you, right now in this moment. I’ve found mindful living to be a set of very related tools, perhaps all different ways of getting at the same thing, but each useful in its own regard.

I’ll share them in this post, and hope that you’ll consider each in turn.

Why You Should Care

Why bother to spend the time learning these tools? Is it just for some ideal of living a peaceful, stress-free life?

No. A stress-free life doesn’t exist, but these tools will definitely make you more prepared to deal with the stresses that will inevitably come your way.

But just as importantly, they’ll help you overcome the fear of failure and fear of discomfort that’s holding you back, that’s keeping you from making positive changes in your life.

These tools will help you launch your new blog, start a business, write a book, put out your first music album online, find your purpose in life, become the person you’ve always wanted to be.

This is what I’ve found. I’m certain you’ll find these tools just as useful.

The Toolset

This list, of course, is not complete. It’s a collection of things I’ve been learning about, and am still practicing, things I’ve found useful enough to share.

  1. Meditation. Meditation is where mindful living starts. And it’s not complicated: you can sit still for even just 1 minute a day to start with (work up to 3-5 minutes after a week), and turn your attention to your body and then your breath. Notice when your thoughts wander from your breath, and gently return to the breath. Repeat until the minute is up.
  2. Be Awake. Meditation is practice for being awake, which is not being in the dream state (mind wandering into a train of thought, getting lost in the online world, thinking about past offenses, stressing about the future, etc.) but being awake to the present, to what is. Being awake is something you can do throughout the day, all the time, if you remember. Remembering is the trick.
  3. Watch Urges. When I quit smoking in 2005, the most useful tool I learned was watching my urges to smoke. I would sit there and watch the urge rise and fall, until it was gone, without acting on it. It taught me that I am not my urges, that I don’t have to act on my urges, and this helped me change all my other habits. Watch your urge to check email or social media, to eat something sweet or fried, to drink alcohol, to watch TV, to be distracted, to procrastinate. These urges will come and go, and you don’t have to act on them.
  4. Watch Ideals. We all have ideals, all the time. We have an ideal that our day will go perfectly, that people will be kind and respectful to us, that we will be perfect, that we’ll ace an exam or important meeting, that we’ll never fail. Of course, we know from experience that those ideals are not real, that they don’t come true, that they aren’t realistic. But we still have them, and they cause our stress and fears and grief over something/someone we’ve lost. By letting go of ideals, we can let go of our suffering.
  5. Accept People & Life As They Are. When I stopped trying to change a loved one, and accepted him for who he was, I was able to just be with him and enjoy my time with him. This acceptance has the same effect for anything you do — accept a co-worker, a child, a spouse, but also accept a “bad” situation, an unpleasant feeling, an annoying sound. When we stop trying to fight the way things are, when we accept what is, we are much more at peace.
  6. Let Go of Expectations. This is really the same thing as the previous two items, but I’ve found it useful nonetheless. It’s useful to watch your expectations with an upcoming situation, with a new project or business, and see that it’s not real and that it’s causing you stress and disappointment. We cause our own pain, and we can relieve it by letting go of the expectations that are causing it. Toss your expectations into the ocean.
  7. Become OK with Discomfort. The fear of discomfort is huge — it causes people to be stuck in their old bad habits, to not start the business they want to start, to be stuck in a job they don’t really like, because we tend to stick to the known and comfortable rather than try something unknown and uncomfortable. It’s why many people don’t eat vegetables or exercise, why they eat junk, why they don’t start something new. But we can be OK with discomfort, with practice. Start with things that are a little uncomfortable, and keep expanding your comfort zone.
  8. Watch Your Resistance. When you try to do something uncomfortable, or try to give up something you like or are used to, you’ll find resistance. But you can just watch the resistance, and be curious about it. Watch your resistance to things that annoy you — a loud sound that interrupts your concentration, for example. It’s not the sound that’s the problem, it’s your resistance to the sound. The same is true of resistance to food we don’t like, to being too cold or hot, to being hungry. The problem isn’t the sensation of the food, cold, heat or hunger — it’s our resistance to them. Watch the resistance, and feel it melt. This resistance, by the way, is why I’m doing my Year of Living Without.
  9. Be Curious. Too often we are stuck in our ways, and think we know how things should be, how people are. Instead, be curious. Find out. Experiment. Let go of what you think you know. When you start a new project or venture, if you feel the fear of failure, instead of thinking, “Oh no, I’m going to fail” or “Oh no, I don’t know how this will turn out”, try thinking, “Let’s see. Let’s find out.” And then there isn’t the fear of failure, but the joy of being curious and finding out. Learn to be OK with not knowing.
  10. Be Grateful. We complain about everything. But life is a miracle. Find something to be grateful about in everything you do. Be grateful when you’re doing a new habit, and you’ll stick to it longer. Be grateful when you’re with someone, and you’ll be happier with them. Life is amazing, if you learn to appreciate it.
  11. Let Go of Control. We often think we control things, but that’s only an illusion. Our obsession with organization and goals and productivity, for example, are rooted in the illusion that we can control life. But life is uncontrollable, and just when we think we have things under control, something unexpected comes up to disrupt everything. And then we’re frustrated because things didn’t go the way we wanted. Instead, practice letting go of control, and learn to flow.
  12. Be Compassionate. This sounds trite, but compassion for others can change the way you feel about the world, on a day-to-day basis. And compassion for yourself is life-changing. These two things need remembering, though, so mindful living is about remembering to be compassionate after you forget.

The Practice

OK, that seems like a lot to digest and remember, right?

Well, there’s hope. I often forget all of this stuff, but then I remember, and say, “Ah, I was doing it again!” And then I practice again.

And then I forget, but I reflect, and I learn, and I practice again.

This is the process of learning mindfulness. It’s forgetting, and then remembering, again and again.

And it’s worth remembering, again and again.

15 Oct 10:47

10/11/13 PHD comic: 'Post-Doctor Who, Pt. 3'

Piled Higher & Deeper by Jorge Cham
Click on the title below to read the comic
title: "Post-Doctor Who, Pt. 3" - originally published 10/11/2013

For the latest news in PHD Comics, CLICK HERE!

18 Jun 16:42

"Leaving is not enough. You must stay gone. Train your heart like a dog. Change the locks even on the..."

“Leaving is not enough. You must stay gone. Train your heart like a dog. Change the locks even on the house he’s never visited. You lucky, lucky girl. You have an apartment just your size. A bathtub full of tea. A heart the size of Arizona, but not nearly so arid. Don’t wish away your cracked past, your crooked toes, your problems are papier mache puppets you made or bought because the vendor at the market was so compelling you just had to have them. You had to have him. And you did. And now you pull down the bridge between your houses, you make him call before he visits, you take a lover for granted, you take a lover who looks at you like maybe you are magic. Make the first bottle you consume in this place a relic. Place it on whatever altar you fashion with a knife and five cranberries. Don’t lose too much weight. Stupid girls are always trying to disappear as revenge. And you are not stupid. You loved a man with more hands than a parade of beggars, and here you stand. Heart like a four-poster bed. Heart like a canvas. Heart leaking something so strong they can smell it in the street.”

- Frida Kahlo 
17 Jun 18:52

Children’s Textbook Covers in 1920s Japan

by 50 Watts
Covers and endpapers from a series of Japanese textbooks, 小学生全集 ("Complete Works for Elementary School Students") via the National Diet Library 1929 (cover used for both "Little Lord Fauntleroy" and "Marshal Togo and General Nogi") I stumbled upon this book series while rooting around again in the massive NDL. I featured a handful of these covers back in 2009 in some posts of Japanese book covers, though at the time I knew nothing about them (not that I know much more now). I also featured Takeo Takei's illustrations for the H. C. Andersen volume. I think the series ran to 80+ books—the NDL has digitized 37 volumes published between 1927 and 1929. The books covered many topics—Western classics, Japanese history, fairy tales, science, religion—as you'll see from the rough Google translations given below each image. Many volumes were edited, translated, or written by Kan Kikuchi (菊池 寛). It's hard to determine the illustrators and designers responsible for most of these. (One problem is that often different artists are responsible for the covers and interior illustrations, but the NDL usually catalogs only the interior illustrator. Another is that I don't read Japanese!) If you like this post, don't miss the "Takeo Takei" filter. 1929, "Story of Astronomy and Minerals" 1928, illustration by Seiko for The Blue Bird 1927, Alice in Wonderland (appears to have been translated by the mighty Akutagawa) 1927, "Interesting Library" 1928, "Physical Chemistry," illustration signed "BIN" 1928, "Children's Industrial Story" 1928, "Story of Insects," illus. signed "SA" 1927, "Meiji Emperor" 1927, "Robinson Crusoe" 1928, "Story of an Airplane," illus. signed "Sen" 1928, "Religious Fairy Tale Collection" 1929, "Animal Botany for Children" 1929, "Engineering for Children" 1929, "To the mountain to the sea" 1928, "Japanese Tale of Heroism" 1929, "Boy's Encyclopedia" 1929, "Foreign History" 1929, "Story of the Army and Land Battles" 1928, "Taiheiki Story" 1928, "Chushingura Story, Soga Story" 1929, "Way to the World" 1929, endpapers, "Story of Astronomy and Minerals" 1928, endpapers, "Chushingura Story, Soga Story" 1928, endpapers, "Story of an Airplane" 1928, endpapers, "Physical Chemistry" 1928, endpapers, "Story of Insects" 1928, endpapers, "Children's Physiology and Hygiene" 1929, endpapers, "Way to the World" 1929, title page, "Story of Astronomy and Minerals" 1928, title page, "Story of Insects" 1928, cover by Takeo Takei I've featured this before but NOW I KNOW IT'S FOR THE JUNGLE BOOK! Previous posts on Japan This post first appeared on , June 18, 2013 on 50 Watts
11 Jun 10:33

Honeybees and Dolphins Help Humans Find Lethal Mines

by Perrin Ireland

Dolphins Make Naval History!

Dolphins have uncovered a marvel of naval history: the 125-year-old Howell torpedo, the first torpedo that could be released into the ocean and follow a track to smash a target without leaving a wake. Only 50 were made between 1870 and 1889 by a Rhode Island company before the competition copied the design. There are two others of its kind known to exist, housed in naval museums in Washington and Rhode Island. Now dolphins working for the Navy have turned up a third.

The dolphins are trained to dive in search of underwater objects like mines or lost naval swimmers. On a search, they touch the front of the boat if they’ve found something, and the stern of the boat if not.

In March, on a routine mine-hunting training exercise, a dolphin named Ten surfaced and touched the front of the boat in an area the team didn’t expect to find anything, so they ignored it and moved on. When a week later another dolphin named Spetz did the same thing in that area, they sent Spetz to mark the object’s location with a weighted buoy line. Further investigation revealed a broken torpedo in two parts, which the navy ultimately identified as a long-lost Howell torpedo.

Since the 1960s, the Navy Marine Mammal Program has been training dolphins to find mines, underwater objects expensive enough to warrant a search rather than a replacement, or weapons that might be a danger to Navy vessels. Dolphins use echolocation to map and navigate space, sending out calls and assessing distances and shapes based on the echoes they receive as their sounds bounce off objects in the environment. This capacity is the most sophisticated sonar known to man, an ability humans can barely understand, but which we have attempted to mimic in our own sonar technology.

But naval dolphins might soon be out of a job: in 2017, the US Military may begin retiring dolphins in favor of cheaper mine-hunting robots.

Honeybees Associate TNT with Sugar and Help Save Lives

The honeybee may be the ideal mine-hunter: its minute stature, plus a natural talent for detecting the smell of explosives, means bees are able to wander through a Croatian field littered with landmines and detect them without being harmed.

Nikola Kezic of Zagreb University, a honeybee behavioral expert, is training bees to associate the smell of TNT, the most common explosive of the Balkan Wars, with food. By conducting trainings where TNT is placed in the same containers as sugar water, Kezic is training one bee at a time to navigate towards the TNT.

During the Balkan wars of the early 1990s, 90,000 land mines were littered around the area with no plan and no map. Since the wars ended, over 300 people have died from exploding landmines, and these accidents occur most frequently in areas thought to be de-mined, where landmines can remain buried in soil.

Once the training is brought to scale, the Tiramisu project, which funds Kezic’s work, hopes to track the bees’ movements with heat-seeking cameras, making it possible to find and deactivate the lethal mines by tracking the movements of the swarm. Kezic says there is a great difference between training one bee and a swarm of bees, but if critical mass could be achieved, these animals would be able to help identify unexploded mines without getting harmed in the action—unlike previous minehunters such as dogs and rats, whose weight can trigger the mines.

The post Honeybees and Dolphins Help Humans Find Lethal Mines appeared first on Visual Science.