DevOps Bookmarks. Move Fast and Break Nothing. I've given a lot of talks and written a lot of blog posts about software development and teams and organizations.
Probably one way to sum them all up is: more communication. I think companies function better by being more transparent, and if you build your environment correctly, you can end up with better code, a good remote work culture, and happier employees. But god, more communication means a ton of shit. Emails. Notifications. If everyone is involved with everything... does anyone really have enough time to actually do anything? Having more communication is good. Be mindful of your coworker's time It's easy to feel like you deserve the time of your coworkers.
This goes doubly so for companies with remote workers. Seven Steps to Start Your DevOps Initiative. Analyst(s): Ronni J.
Colville Step One: Define DevOps for You There are many definitions of DevOps that can be found, depending on where you look. Gartner defines it as "a change in IT culture, focusing on rapid IT service delivery through the adoption of agile, lean practices in the context of a system-oriented approach, where system-oriented is the process of understanding how things, regarded as systems, influence one another within a whole. " DevOps emphasizes people (and culture) over tools and processes, and seeks to improve collaboration between operations and development teams. Guidance: The definition is only as important as getting everyone on the same page. Step Two: Pick the App. 2nd International Workshop on Release Engineering, Mountain View, CA, USA, 2014. Abstract: Within the software development community the practices of continuous integration, continuous delivery, and other development process improvements have become widely adopted in recent years.
It's generally accepted that these improvements to tools, process, and culture will have a positive impact on a software product's time to market, quality, feature set, etc.
7 DevOps Habits. Glenn O'Donnell and Kurt Bittner, Forrester Research analysts, have published a report that describes how developers and operations see each other when working in isolation and offers seven habits of collaboration between the two.
Their "The Seven Habits Of Highly Effective DevOps" are: Getting the two sides to talk to each other Taking an outside-in approach to everything Automating the build, test and release processes so they contain less human error Simplifying and standardizing the development and production environments Instilling a culture of systems engineering across both development and operations Implementing feedback and feed-forward loops Putting developers on the front line of support They go into detail for each of them: Getting the two sides to talk to each other Talking face to face is a good way to learn about each other's daily challenges and struggles. Taking an outside-in approach to everything. Arrested DevOps – Podcast.
Dev. Ops. Devops, software engineering, performance, being awesome. Fabric 1.8 documentation - systems administration tasks. Firefox Release Engineering. Recently, the Mozilla Release Engineering team has made numerous advances in release automation for Firefox.
We have reduced the requirements for human involvement during signing and sending notices to stakeholders, and have automated many other small manual steps, because each manual step in the process is an opportunity for human error. While what we have now isn't perfect, we're always striving to streamline and automate our release process. Our final goal is to be able to push a button and walk away; minimal human intervention will eliminate many of the headaches and do-overs we experienced with our older part-manual, part-automated release processes. In this chapter, we will explore and explain the scripts and infrastructure decisions that comprise the complete Firefox rapid release system, as of Firefox 10. This chapter describes the mechanics of how we generate release builds for Firefox. 2.1. This mindset has three important consequences: 2.2. Who Can Send the "Go to Build"? 2.3. Facebook release engineering. Facebook is headquartered in Menlo Park, California at a site that used belong to Sun Microsystems.
A large sign with Facebook's distinctive "like" symbol—a hand making the thumbs-up gesture—marks the entrance. When I arrived at the campus recently, a small knot of teenagers had congregated, snapping cell phone photos of one another in front of the sign. Thanks to the film The Social Network, millions of people know the crazy story of Facebook's rise from dorm room project to second largest website in the world. But few know the equally intriguing story about the engine humming beneath the social network's hood: the sophisticated technical infrastructure that delivers an interactive Web experience to hundreds of millions of users every day. I recently had a unique opportunity to visit Facebook headquarters and see that story in action. This is how Facebook Develops and Deploys Software. Should you care?
A recently published academic paper by Prof.
Dror Feitelson at Hebrew University, Eitan Frachtenberg a research scientist at Facebook, and Kent Beck (who is also doing something at Facebook), describes Facebook’s approach to developing and deploying their front-end software. While it would be more interesting to understand how back-end development is done (this is where the real heavy lifting is done scaling up to handle hundreds of millions of users), there are a few things in the paper that are worth knowing about. Continuous Deployment at Facebook is not Continuous Deployment Rather than planning work out in projects or breaking work into time boxed Sprints, Facebook developers do most of their work in independent, small changes which are released frequently.
This makes sense in Facebook’s online business model, everyone constantly tuning the platform and trying out new options and applications in different user communities, seeing what sticks. Code Ownership Testing? Security???