Loved this http://zedshaw.com/archive/the-master-the-expert-the-programmer/
But I learnt boxing not martial art.
And I think he is all wrong to trying to change people by antagonizing them.
The too long too read is what we call experts are idiots in apprenticeship like young monks in the story of the Tao. And as a good monk he blames it on the person not having the enlightenment of the religion of Art or programming vs the Technique/expertise of programming.
The martial art bull crap that made me stop karate-do, anything do in fact including viet vo dao.
I was a nerd as a kid. And I was bullied. So I did the logical stuff. Learning to fight.
But martial art were not fighting. To ridiculuously codified.
Do you have nice salute and respect from your opponents in the street? Do you have intimidations, tricks?
There was ALWAYS with the tenant of any martial art of trying to prove their superiority with an attack situation where they could finish you in a death grip with the finishing falcon punch of their kind.
Then, I learnt boxing. French boxing. Derived from the street fighting.
And then they did not won a single time their testosteron concept in which they would assert an alpha male dominancy by tricking you in accepting false condition of fight.
My only trick, was the one that works. Feinting to test your opponent and protect yourself as long as you have not judged your opponent. Be fierce, defensive, and always hiding your true intention so that you can surprise an eventually stronger opponent.
Yep. Just double your fastest direct at longest distance you are able to connect, and when you can connect hide the true intention of connecting an heavily balanced direct to the tip of the jaw that would ensure fast lucky victory which is a good idea when you don't know your opponent. Always aim at defeating better opponents by any mean possible. A good ultimate boxer was the ferocious young myke tyson.
And then he became confident.
I have survived a lot of true fighting situations. The basics of surviving is trusting no rules.
Most aggression situation I have been facing were always due to a confidence in their numerical superiority.
On a ring in 1v1 conditions, french guard is risible. That is why competition uses the english guard.
In the street, taking a good habit at not losing information of your peripheral vision is an hell of a good idea.
When people are distracting you by speaking loud and seeming impressive, you should really take a stand as soon as you begin to see they are trying anyway to make a situation of superiority that did not existed.
In the cité speaking loud is a way to call for reinforcement to generate the situation of superiority. The same way speaking with the loud word of authority calls for the forces of order elsewhere.
Most experienced fighter know that until the fight is made, the outcome of a fight are really violent and uncertain. And fighters that want to become legends by staying alive the longest reduce the uncertainties.
Either by artificially rigging the competition to a less uncertain outcome in their favour, or by avoiding situations in their defavor.
Me being a nerd, not very athletic, but surprisingly good on a boxing ring, I learnt to run like hell as soon as I was seeing opponents creeping in the back.
Thanks to the expertise of my maître d'arme.
Thanks to boxing I have learned to run away like a coward. I learned there was no pride in going headstrong to a defeat that was planned. I learned also that one of my relations "from the street" I appreciated a lot died of being proud ... "on a ring" in Las Vegas.
It is not the violence of the streets that killed him but the one of the ring.
I don't like boxing for its guidance in life. And that's where I hate the bulsshit crap of martial art pretending to be something it is not.
Boxing is about staying a living nobody rather than become a dead legend.
For the ungifted like me, there is no art in staying alive. There are tricks, and learning tricks.
Learning to punch vast, move fast, look fast, stay alert, and be scared like shit.
Sometimes I was scared to put my gloves one. Scared. Like hell. But repeating the same moves, learning to spare, physicial conditions all tricked me into confidence.
And I learned that fighting requires good teaching from masters. But teaching are just tricks in making you have confidence... Because the ultimate trick was that in a fight you had to look like nothing that was in a book to be able to fight efficiently. Else you can be anticipated.
The biggest trick about boxing is learning by the book, and then understanding that the book was a very good joke about throwing away the book at the end. And that fighting is about fighting against the rings and not the fighters.
What about the joy of sparring with friends. Would you go with a friend to the point of probably finishing with one of you in the coma ?
Well, if you love fighting you may like to fight ... friendly. And be able to say stop when the opponent made a point.
We do not need to wait until one on the kendo practioner and the canne d'arme practitioner lost an eye to see who is the funniest. Needless to say, moving in straight line is not very efficient. You can stop at first blood, or when wood makes a loud knocks on the bones :)
I don't know if I would survive out of a nice garden and in a friendly situation a fight. I hate violence. Neither having to endure it, nor giving it appeal to me. But I love boxing when it is friendly, because it is a place where we make confrontation codified, non lethal and made on anything but merit.
That's the joke of efficient street fighting. You may dislike violence, but you begin to enjoy the fight. Because you have a ring that makes it fun ... between practitioners ... without a public.
The violent part of the ring is not what happens on the ring. I do love to watch some match. But most monetary incentive in sport sometimes make it look like a boucherie where people are more interested on the blood on the screen than the good health of the athletes. They don't seem to have an empathy with boxers on the ring wishing to show their best boxes, but with the violence. Violence is not in boxing, but in the eye of the managers that are setting the ring.
I think the mastery versus expertise difference is indeed existing in our jobs too.
Like leveling up with experience points versus Dowloadable Playing Content (you buy your superiority). And like how we are valuing more DLC behaviours versus experience built behaviours.
There is an aristocracy of design that is brutal. But is not violent. The same way boxing result in brutal results but the violence comes from the context.
Some people are confusing the brutality of community management based on results with violence. Like Codes Of Conducts flourishing from social experts coming for their share on the back of the coders.
Did social science never had been curious about how free / source open software community is by a lot of standard one of the most diverse in the world?
Mono cultural on computers, but shared with hundreds of countries, type of government, political opinion, religious opinion, "races" and sexual orientations. Except for free software, NO QUESTIONS ASKED. Radical non discrimination in the realm of craft. And CoC is about asking questions all the time. That are non relevant to producing.
As if having an obvious common shared bias could erase the other biases. And as far as I am concerned, it works. Not always at my liking though. But it works better than corporate programming.
We saw the raise of the UFC/MMA federation called IT corporation and startup is making the ring violent. Like :
Street fight has no gloves, let's remove the gloves ... and the shoes, and the capacity to run like hell ...
Okay, unless you are not a homeless in very special condition, in France you have shoes. You even have clothes... that you could even use as weapons....
The MMC/UFC makes fight more realistic by pushing the vulnerability... No serious... In the street, in real boxing, not any serious fighter will go for increasing his vulnerability compared to the real situation.
You act accordingly to the situation and you adapt and not fighting is totally okay, even if you have something precious to protect, you run away.
Expertise is about making developers more vulnerable to the external context.
It is about selecting the best athletes, pushing them on a ring, having a rigged organization and generating reasons of conflicts that do not exists in the first place to have people throw at each others throats.
The no poaching agreement makes developer having to have an artificial loyalty to companies to keep their job. Companies with their paradigm of coding/framework and BS crap they exclusively share or adhere to. In weird extreme polarizations.
The holy grails of IA, machine learning, Agile & scrums, Go/Rust, RDBMS vs nosql .... whatever you want you name it.
But these fights are just a ring that had been set. I do think that IA is overprimising and will not likely to be deliver because the craftman problem is about just building more robusts architecture. One that know it can fail even when its inventors said the opposite.
All these tools are like combat technique. They are nice and must be learned by the book.
But the problem we have now is not a problem of knowing new fighting techniques in a specific context, but much more focus on winning the fights really at hands here in real conditions.
More complexity and dogmatism thrown away at solving inherently complex architecture will not result in more robust system.
Coding and fighting are alike. There is only one proof of being a good one, it is by first surviving and there are no diplomas nor easy way to prove it other than dealing with it. Good coders might not think the way you want, but that may be the reason why they are still efficient coders.
And sometimes there are days the technique we are spreading are inherently the wrong one.
Where the tyrany of the expertise make everyone blind about the problems at hand.
Politics does not mix well with code. And an organization big enough will put its politic in its code.
An organization are for me buildings made of politic. From the vision of a designer emerge an organizational unit that is consistent in a corporate culture that becomes good at probem solving.
This is made through sharing an informal order that ignore itself: culture.
Like the belief that we can solve an initially screwed idea by throwing more stupidity at the initial stupidity?
Simple question, is it worth caring about timezones?
It is a fight already lost. The TZ format try to solve the situation to the bad initial conceptual way to solve the need for a universal time by throwing even more confidence in persevering in the absurd decision of agreeing to disagree. Nice.
It is not the physical nature of time that makes us unable to synchronize. It is not the computers. It is not the coder. It is a fucking XML file...
That is the result of very well intentioned person updating the changes in the time zones based on publication of offices reporting that will, may have changed the definition of time locally.
Well the first problem is since people have been confusing the books and reality there is a nice story about this in a book.
It is called the Babel tower.
It is not the unification of the data format that will improve the world. Or more technicity. Today the problem are probably in the handling of an overly connected multicultural world.
I think the bug in our coding might come from our cultural bias in what we are supposed to be versus what we really are.
A conway law, code is reflecting the way the organization are evolving.
And the more we coders are successful the more the powerful and economy likes us. We are tools too. And if our corporate professional culture is shifting towards expertise (LDC) vs mastery (XP), it is not only because we eat our own dogfood, but it is also because it is part of our culture to enforce it. We are trying to be the ideal user we plague our design with. We are trying to win hard on ring of the idealism and the belief in engineering/rock star/frameworks ... while the real world is made of human failures.
We focus very hard on imposing a view of the righteousness of engineering/our techniques while our product decrease in measurable quality. Conformity to the real condition of use.
Good coders are not overconfident. They doubt because they are scared to lose. Because good reflex comes from healthy fear of being crushed.
But they move. They are confident. Not only because they trained. But most importantly because they survived. And sometimes they failed. And they also learn to stand up again. To improve and gain confidence, but not too much and remember how much defeat is painful.
More prudent, yet aggressive... Displaying confidence in your skill, is darn stupid for someone who survived real fights. Over confidence is what put you in trouble. The first user from which a design has to protect itself is the designer. So good designer should accept they can fail and doubt themselves.
My dear expert dealer of bullshit crap, you maybe the best technicians I ever saw out there. You are impressive.... I admit these techniques that need a lot of time to master are impressive... if ever you are in a tank that was ready to blast a poor bee passing by and call it an efficient technique against a poor bee passing by.
But you are as impressive as romans senator babbling about the techniques to be the most efficient surviving gladiator in the Arena, not seeing the gladiators wiped every months. And as Spartacus have been proving, the best way to not lose a rigged fight is to rebel against rigged fights when you don't want to lose.
I loved coding. It was funny fights, some of which I won. But now, I am throwing away the gloves.