The following is a review of a presentation given at FLOSSUK Spring DevOps Conference. The event was held at Mary Ward House in London between 15th-17th March 2016. Although this is a description of a presentation with some dissection of what was discussed it is not a verbatim account and will contain personal impressions and interpretation. The content therefore does not reflect the quality of the original presentation and should be considered a review and personal opinion.
This is one of a series of reviews of the talks I saw at the event.
Mandi is a software developer currently working for Chef in London, the talk wasn’t about Chef though, it was about the Open Source world and our part within. Mandi started with a discussion an early large HP conference that she attended. The event had a number of communities gathered together to discuss a certain topic, however they were still segregated, this is an attitude that still persists today. We might have shared features but we remain tribal about our software choices.
The Software World
The world itself has changed, when you meet people today there is a sea change from the days of massive, expensive, and singular control systems to smaller, cheaper, multiple systems that are deployed and made to interact with each other via open APIs.
Part of this change has been at the behest of the adoption to Open Source, OS software is now a dominant player in many larger systems, corporations and projects. It has taken over from proprietary systems. This gives rise to the idea that:
technology becomes more varied when not constrained by controls
There is a number of issues. One of the ones that aggrieves Mandi is the larger enterprise customers who use open source software in ‘largely an opportunistic fashion’. This is where they will build large systems upon open source but fail to engage with contribution to code or communities that created the software.
OS sometimes seems to sneak into corporate environments, this might be because of: advocacy by a particular programmer; by being the only acceptable solution without creating an in-house solution; or having features and abilities not found in proprietary systems.
Organisational change is hard, some of them seem to be doom-laden, heading inexorably, Titanic-like, towards a disaster. They are risk-averse and therefore change-averse.
It is often too hard to change the mindset of an entire organisation, even with a great deal of advocacy or solution solving, therefore the goal should be shifted towards the individual.
Changing orgs is hard but people-change is easier.
This sea of change has started to enter the corporate world. It is now impossible to find careers that last a lifetime in a single organisation, or organisations who look further than a decade in terms of their existence. Organisations, like the software platforms they depend upon, seem to have a shorter and more evolutionary lifespan. Corporations, systems and programming languages seem to fall in and out of fashion without and real reasons or need.
There is a growing pace in this state of change so that it is increasingly hard to keep abreast of changes to software, to innovation and to the new.
The Learning Trap
We have reached a crunch with developers, innovators and technical employees where Enterprise has exported the risk of learning and acquisition of new knowledge onto the individual, removing it from the corporate structure. This pressure unfairly benefits those who are younger or unattached and places greater responsibility on individuals to:
Gain experience in multiple existing technologies Be pliable and flexible to new learning
Part of an individual's response to this, in order to keep some sense of progression, must be to build ‘aspiration models’ into their daily life. There is a need to ‘be naturally curious’. Programming attracts people who are naturally curious, who want to see how something works, and this behaviour should be encouraged. You may need to ‘make yourself curious’ about a topic by using ‘curious language’ in order to relate or describe it.
You must learn to embrace your vulnerabilities, to see them not as a weakness but as an area to be aspirational about. You must always approach anything as a learning experience, this is especially true if you think you know it, try to approach it as if you do not understand, use the language associated with learning.
New is scary (and exciting) and that is a great challenge
In this learning environment where you may have greater knowledge or experience it is important to be wary of creating a negative environment. This is especially helpful to those who do not yet know but are trying to learn. So many people have turned away from a particular solution or language because of the toxicity encountered with their first innocent questions.
Learn to be self-aware. Be wary of how attitudes can force behaviours. Anyone who has knowledge and experience has a position of power and therefore a responsibility. Your opinion, your choices, will create an environment that may be opposite to what you may want to achieve.
Mandi finished with some basic principles:
- Learn cool stuff
- Hang out with cool people who build stuff
- Build your own skills
- Come to know about the cool things
Always look out for an opportunity and ways to learn
[Don't forget that you can join in this conversation by using the comments form or by tweeting at @shadowcat_mdk]