MiXiT [mɪks ɪt]
For people who don’t know MiXiT yet, let’s try to explain what it is.
- a two days conference
- mostly French speaking but also English speaking (80/20)
- definitly oriented toward computer science and programming
- also for people concerned about society issues
We can probably sum up saying it is a:
generalist developer conference with a lot of people’s concerns inside
Organization & food
Attendees and organizers were very calm. No unneeded stress raised during the event. It may seems not important but it was in fact very peacefull and this global mood make the overall conference very enjoyable.
As organizer are strongly concerned by environmental questions, no goodies were given at the entrance! The food, locally produced and cooked, was great and every flatware were recycled in front of the conference building, by a local reclycler of course!
The entire conference is also well known for the open crepe stand taking place during the all conference.
A main amphitheatre, receiving the keynotes, and 6 smaller rooms offered a 7 parallel tracks conference. It is a bit too much in my opinion because of the hard choice.
In the evening, a great reception take place in the Lyon’s city hall, impressive.
In order to give hints about talk’s content, severals tracks themes have been defined:
- Makers: dedicated to makers, diy, products
- Aliens: defining talks outside the computer science scope
- Tech: hype technologies
- Design: self explaining
- Hacktivism: concerned IT
- Learning: to learn about many different topics
We were obviously able to choose which talk to attend among the 7 tracks except for one slot each day: the “random talk” slot. Two 20 minutes talks were randomly attributed to each attendee. During these ones, you just have to sit down in your attributed room, listen and discover! Those random slots were as interesting as the other slots!
Not sure if you would have chosen the same talks as me. My selection was maybe not very dev oriented (who said it is age-related)?
The first keynote was presenting the role of leader in a group introducing this notion with a orchestra conductor. I found very interesting to watch how a simple movement or breath can drive the group.
Author: Samuel Couffignal
The second keynote introduced a local money from Lyon: la gonette. We discovered an experimentation attempting to promote local first goods and services.
Author: Nicolas Briet
After lunch we had a great talk about rights and responsibilities regarding software creation and programming. Do you know that every single person working in this industry, in France, is subject to the Code d’éthique et déontologique de l’ingénieur logiciel?
We shared a lot of interesting toughts about copyright, data usage, code and algorithms.
Author: Guillaume Champeau
At the end of the day we learned about a voting alternative solution. Our french two rounds election mechanism have many drawbacks. It was very interesting to hear about majority… how this can radically change the result of our presidential elections
Author: Rida Laraki
Video: Le Jugement Majoritaire
We started the second day with a presentation of a modern and autonomous village concept. Aquaponics, solar panel, chickens, compost, a new way of building villages.
Author: Marjolein Shiamatey
Video: ReGen Villages
After lunch, we learned how universal revenue (debated during French campaign) can change our life. Fighting again poverty, sharing resources, adapting to the evolution of employment market, are the root causes of universal revenue.
Authors: Les écoloHumanistes
The day ended with two Java (Indonesia) women, explaining how they started Java programming and how they promote Java and IT education on their island.
Authors: Nety Herawaty, Mila Yuliani
Cargo Cult Agile
After failling to attend the Jenkins 2 workshop (packed), I switched to this cool talk.
The introduction explained the history of the term Cargo Cult. After being colonized by Australian (England colony) at the end of 19’s century, Papuans tried to reproduced unknow technicals stuff hoping to have the result!
For instance, after watching people talking into headphones to get goods (coming from planes) they recreated wood headphones (coconuts based), bamboo antennas… Naturally, they expected to see the same goods droped by planes as when Australia’s talked into their real headphones.
Of course it failed.
It led to a definition of Cargo Cult: “Copy a behaviour without understanding it and hoping to have the same benefits”.
Emilie then presented her 7+ year experience of this cult applied to Agile. It was mainly related to reproducing only some specific parts of agile practices without understanding the whole thing and expecting to get full Agile methodology benefits.
“We are Agile because we have post-its”, “we are agile because we don’t have specifications”…
She then presented some real-life examples she cames across in different companies:
- 45 mins standup meetings, controlled by the chief and KPI oriented
- Retrospective: Only positive or only negative, with no planned actions
- Agile hipsters: dress old practices with Agile terms
She finally presented how, in her opinion, to successfully introduce agility within a team or a company If you work in a startup you can start from scratch. Otherwise, you must start with a real willingness to change, a good sponsor and then gradually move towards team autonomy.
Author: Émilie Esposito
Video: Cargo Cult Agile
Il est temps de Repenser notre Manière de Travailler (It is time to rethink how we are working) [Learning]
This talk start with this video.
As expected, this slot was about work, workers and management. It first started with facts describing how employment evolved during last years. Not very positive indeed.
Marie-Cécile then explained that being under constant pressure (in many different ways) is not necessary and can be conterproductive.
She then gave us some hints to rethink the vision we can have on employment and how we can make it evolve. Interesting and refreshing.
Author: Marie-Cécile Paccard
La marque est morte, vive l’IA (Brand is dead, long life to AI) [Random]
First random talk, 20 minutes to understand the revolution coming with AI.
Nowadays, brands are well identified with logos, applications, devices. As AI is rising, the direct contact between customer and brand is decreasing. How brands can interact with the customer through Alexa for instance?
Manon presented, with a lot of fun, how developers should understand and integrate brands in their work while alerting on potential dangers.
Author: Manon Gruaz
Conquerir le monde avec CoreOS (World domination with CoreOS) [Tech][Workshop]
This workshop aimed at playing with CoreOS, a minimalist OS dedicated to run containers. It is configured out of the box to run Docker and rkt containers.
We first created a Trooper container (nodejs app). Then we built a CoreOS VM on Amazon to deploy Trooper containers.
We used Fleet to orchestrate containers. Fleet is a CoreOs development built on top of sytemd and etcd designed to manage systemd units across a cluster.
Fleet is cool but is no longer maintained and CoreOS will now use Kubernetes to deal with containers orchestration.
In a second step, we deployed another CoreOS VM hosting a Kubernetes node in order to deploy our Troopers.
The workshop was a bit dense (as usual) but well animated and fun!
Authors: Yan Matagne, Antoine Stalin
Apprendre à apprendre (Learn to learn) [Learning]
Anyone who already dealt with trainings or lessons creation knows that sharing knowledge is not so easy.
During this session Laurent presented us his personal (complex) path to video games creation. He is now also teaching video games oriented developments to game design students. Diving into a lot of details, he presented the difficulties he encountered while teaching to rather young students (post teenagers):
- Reading difficulties
- No programming clue
- Attention on school marks
- High expectations
- Frightened to ask questions
He then gave us some hints to make the learning process easier.
Very interesting talk with a lot of concerns regarding the society.
Author: Laurent Victorino
Video: Apprendre à Apprendre
Myths and pattern of organizational change [Learning]
Amazing and disturbing talk about humans and organization behaviours.
Linda, dived into myths that drive our entire life:
Smart people are rational. Of course it is not so simple. If you think you are rational and everyone should listen and understand your rational argument, you will be very disappointed when people will argue. Regarding neuroscience research, none of our decisions are rational.
Good always triumphs over evil. We are not living in a movie. Even if you come with a nice and useful idea, it does not mean that you will be able to promote this idea inside your company (DevOps, Agile,…).
If I just had enough power I could make people change. You need commitment, not compliance. It is easy to force people doing things but if they are not convinced, they will move back as soon as they can.
Skeptics, cynicsn resistors-those people, well, they must be bad or stupid or both! Ignore them! People are different and think differently, but (mostly) everyone has his place in the team, in the company. Some people are pushing new stuff, some don’t care and some resist. Even if you fired resistant or laggards people, the remaining people are going to recreate the same groups pattern (promoters, followers, resitants,…). You need resistant people to make your ideas, proposals, better.
You’re a smart person and you don’t need help from others. After all, it’s your idea. As smart as you are, you cannot do everythings by yourself, you need help and you have to say thanks to people.
My favorite quote:
Maria’s rule: “There are very few problems that cake cannot solve.”
Author: Linda Rising
Le Streaming d’API : pourquoi et comment transformer vos APIs statiques en données temps réel ? (API streaming: The end of polling) [Tech]
How to create addictive applications. Make it move!!!
Audrey explained to us how to transform our static API into real time data flow:
- (Long) Polling: Periodic API call. Basic usage that can lead to serious issues!
- WebHooks: A provider calls your callback URL when something happens. Interesting but no standard at all. Every provider can implement what he wants… or not.
- Pub/Sub (PubSubHubHub): A publisher pushes the updated resources to the Hub wich will ping every subscriber asking for being notified. The consumer will then have to GET updated resource.
- Web-socket: Real time bidirectional comunication (2 different protocols…). /!\ Network issues (proxy), no defined data format (do what you want).
- Server-Sent Event: Unidirectional real time full HTTP text communication. Many implementations, probably the most suitable solution.
In fact the choice is mainly based on API update frequency and usage.
She ended by promoting an API proxy her company is proposing (Streamdata.io) to ease API consumption (with incremental updates).
Audrey finally make her drone fly, by hand (wifi trouble).
Author: Audrey Neveu
Video: Le Streaming d’API
Au secours, ma prod est sous Docker ! (Help! I am running Docker in prod) [Tech]
I am pretty sure you know Docker. Docker in production is not that easy.
This talk was here to warn people about Docker in production.
Many folks imagine that Docker will answer everything: that’s definitely wrong. Docker is very interesting for packaging and shipping applications. However, applications have to fit within containers (think about 12 factors apps). Non functional requirements (availability, fault tolerance, maintainability) are as important as functionnal one.
Francois pointed out that it is quite easy to test a container alone but that inter-connections are hard to test and especially in a production-like context. He then dived into orchestration issues, volumes management, logs managment, monitoring to explain that your production stack will remain complex and should be well managed.
We can summarize by saying that Docker is a tool and not a silver bullet. Production concerns still need to be seriously considered and have to be managed in the context of containers in production with Docker.
Author: Francois Teychene
Travailler moins pour gagner moins (Work less for less pay) [Alien]
After a while working in the same job and/or in the same company, you may have already consider to change.
Thomas explained us how he moved from full time work to part time work (80%). He works for the BBC in England and was one of the first employes to ask for a part time without having a child! He presented the benefits of working less regarding motivation, personal fulfilment and effective job tasks achivement.
This second random talk described something I am convienced about:
time is a treasure
Author: Thomas Parisot
La théorie des graphes, appliquée à git (Graph theory applied to git) [Tech]
Mathemathical theory applied to git. After a reminder on graph theory, Geoffrey presented how it is related to the way Git operates.
Oriented graph, reachability,… let’s go back to courses to understand fast forwards and rebase commands!
Author: Geoffrey Bachelet
Être Un Développeur Après 40 (being a developer after 40) [Makers]
Nice and motivating talk on how to still enjoy your developer job after a while!
Adrian talked first about old softwares (netscape 3.0, …) and then gave us his thoughts in order to appreciate development ever and ever.
- forget the hype
- keep on learning
- read books
He concluded saying that your age does not matter, as long as you are happy to wake up in order to create great apps!
“Nothing is as simple as it seems at first, or as hopless as it seems in the middle, or as finished as it seems in the end”
Author: Adrian Kosmaczewski
Video: Being a developer after 40
Dev rencontre Ops, un an après
This last talk was very pleasant for a DevOps enthousiast, like me.
Aurore and Pauline explained to us their project organization and how they implemented a DevOps approach in their context. 11 devs (3 teams) and one ops for a dedicated application (e-commerce website). Agile methodology for features development, Kanban approach for the ops backlog.
They bootstraped a brand-new microservices application with a dedicated infrastructure on Amazon. Infrastructure As Code using Terraform. So they are using Docker images for Dev, CI and QA and they are using golden images for pre-prod and prod.
They presented several issues they had during the application development and explained how they changed their overall approach (more DevOps) to cope with those issues.
- A cron script executed twice in production: Devs producing some material tested (and working) on a non production environment can led to issue when moving in a 2 columns production!
- Configuration file delivery took too much time: Ops gave Devs control on some file (using S3 storage) for faster changes. Security have been implemented to enable configuration rollback. Anticipation and planification, reducing dependencies can avoid such issues.
- Daily deployment not possible: organisations can lead to a lot of time consumed to manage deployments. If you are working with teams on several time zone, you may have to adapt your dev workflow (gitflow…) and your environments (integration) to enable real daily deployment.
- Ops deal with production bugs alone: one Dev have been dedicated to solve production issues(with the Ops). Doing so, the dev increased his understanding of the production environment. More automated tests have been also implemented.
Here are the main advises they gave us to achieve good project build&run:
- Automate, automate, automate
- Work in the same floor
- Debug jointly (Dev&Ops)
- Talk and argue about requirements and not solutions (share before deciding)
- You can fail (fail fast)
- Know your deployment environments
- Celebrate successes
Best quote ever:
“The best DevOps KPI is: The number of beers Devs and Ops have after work!”
Authors: Aurore Malherbes, Pauline Bourjot
MixTeen took place during the last afternoon. As Devoxx4Kids, animators proposed interactive and practical lessons for young hackers.
From basic algorithms to IoT programming, kids developed new IT related skills.
MiXiT is definitly a singular conference. It can probably offend some people attenting conferences only for technical purpose.
I personally spent two great days learning many different things on a lot of different topics, technical as well as non technical. This is clearly one of the interests and also a singularity of such a conference.
If you never attended MiXiT, you should give it a try (even if ticket are not so easy to get)!