For long I had hate/love relationship with conferences. Their idea, the way I see it, was lost. Conferences I attended in early 2007/2008 were different. At some point everything has changed and went wrong (or maybe I evolved?).
We tend to attend big conferences. The bigger the better, right? Organisers bragging about 1000+ attendees, giving up yo-yos, bags full of useless gadgets. They let us play the most ridiculous sponsors’ games (Q: “What will be result of `i++; j+(–i)+(++j)+(i++)`”; My Answer: “I don’t want to work in a company that produces such a mess”). The venue is big, the venue is overwhelming. And while we “feel” that we are taking part in something really big, I say we aren’t really.
Does it mean that 1k+ conferences are all bad? No! There are some I will always enjoy going to. What I say is, that organising numerous conference is a challenging undertaking. Task that requires a lot experience in logistics, management, while in the same time keeping the “spirit” of the event that is being organised. I feel that many conferences fail miserably on those fields.
But it’s not only about the venue and the way we are treated. Content also matters. All those evangelists, pushing blindly their (or their employers) view of the world. You might be laughing how everything is now “reactive”, “micro”, “nano” and “dockerized”. Few years ago everything was “DDDed” and before that there were other buzzwords. The pattern is as old as the industry. But this matter is not funny, it’s polluting and it’s contagious. Being a junior/mid developer nowadays, not doing microservices, not running on Docker.. makes you feel, well, left behind the curve. But believe me, the “curve” does not exist! I will repeat that strongly, the curve does not exist. It’s a phantom, imaginary unicorn. Crafted, carved and then distorted.
“No wait a minute!” you might say “Are you saying that Reactive programming, Microservices, Docker, all those technologies does not make any sense?” Of course they do make sense! There is no doubt about it. However there are two problems:
- Some of those popular topics are just buzzwords. They are naming things that were already invented. They exist in literature, they live in existing software. Don’t get me wrong, there is nothing bad in giving new, cool names to good ideas, just to make them exciting one more time. Making them thrilling, agitating for the new generation of developers is one thing. Promoting them as a new, fresh “thing” just to sell your product/book/framework is where I cross the line.
How we should evolve as an industry if we keep on reinventing things. “History keeps repeating itself” I say we should rather learn from our past.
- I will repeat one more time: Reactive programming, Micorservices and all other current buzzwords, they all make sense. They do, but in the given context! Reactive programming might be most stoning, performant, productive way to create software in one scenario, while in the same most ridiculous in other. There is no silver bullet. It’s always about the context, the problem that you try to solve. Unified problem solver does not exists (or it does if answer `42` satisfies you). There is always *context* that must be taken into consideration. What are the benefits, what are the drawbacks. Will it fit my problem. Did I understood the concept correctly?
Take Micorservices for an example. While bringing a lot of benefits, they come with a cost (just google: distributed programming). I don’t hear about problems that this model might arise while listening to the n-th micro-something presentation. Consider Docker for a moment. Looks really neat and simple when you visit samples and tutorials. It’s the production deployment were all the magic happens, were all the dragons live.
I’ll ask this out loud: how many people (7-8 years ago) got excited with the whole DDD and failed miserably? How many people did not understand the most vital concept behind DDD (domain modeling) but got thrilled with aggregates and other implementation details? What was later cost of that? How many DDD evangelists warned about pitfals, mistakes and problems that might arise? How many presentations went beyond simple “DDD 101”?
And last but not least is us. The attendees. Yes, there’s no shame admitting it. And you might be like “What? Why? What did I do?”. I will ask you this:
- How many times did you attend conference only to hangout with your friends and colleagues, people you already knew?
- How many times did you choose track / presentation of a topic you were fairly familiar with or it was really close your current interests?
- Did you ever talked to the speaker after his presentation? And I’m not counting Q&A or asking few question after presentation. I’m asking about real conversation, engaging both sides.
If your answers are “Always. Always. Never”, then my follow up questions is this: Why not just stay home? Most conferences publish their content (even if videos cost money, it is almost always less then what you’ve paid for the ticket). You can simply (in the comfort of your couch) open a bottle of your finest beer, skip presentations you don’t like and (after watching things that you do like) move to the nearest pub to hang out with your buddies. There is no point to pay extra, if you can do all that back home. What is the point?
Conferences should be all about stimulating your brain. Making you fell again small & humble. If you don’t leave your comfort zone, you will never grow, you will never have in your life that “Aha. wait.. what? WOW” moment. You need to talk to the people you don’t know. You need to see presentations about stuff you’ve never heard of. And most importantly: if something does grab your focus, don’t let it go. Find the speaker, talk to him. Ask him even the most ridiculous questions.
“Well, easy for you to say” you might judge “I’m 100% Introvert. People scare me, go to hell”. I never said this might be any easy step, especially if the whole community acts the same way (talking in small, closed groups during breaks between presentations). Doing that “Hi. I’m Pawel. Wow, that last presentation sucked, don’t you think?” is hard, requires maybe a bit charisma or probably even unbridled audacity and insolence. But there is a better way. A lot easier way to engage in the conference experience…
Go to the small, indie conference. More then 200 people is already too big. Go to the conference that does not strictly correspond to your current job status. This does not mean it has to be something completely out of whack with your interests. It might be something that you’ve always wanted to be finally good at but never got the chance. Let me give you my example.
Last year (2015) I’ve attended the most amazing conference on which I have ever been – LambdaConf in Boulder US. Conference (as you can guess from its name) dedicated to Functional Programming – of which at that time I knew a lot less then I know now (which is still very little). Conference was for I think not more then 150 people. And even though I maybe understood just 20% of what was going on on the Advanced track, this conference shifted my way I view software development, the industry and myself as professional developer.
Talking to speakers? Not really an issues since they’ve constituted ~20% of the crowd. Talking to random strangers? Not really an issue since (because the crowd was really not that big) I could hardly call anyone a stranger the second day. Even standing in a queue for lunch triggered awesome conversations.
Everyone was super friendly. Even though it’s been almost a year and Atlantic ocean lies between us, friendships I’ve made that last spring, are here to stay.
I’m not saying that you should actually go to the LambdaConf (even though you really should 😉 ). What I’m saying: find a small conference just like that somewhere near you and simply enjoy the experience.
On the side note
This post was not suppose to be a rant of any kind. More a warning and a weak up call. Strong opinions I’ve presented here are probably not new (especially not for me).
Because of the issues described above, one year ago I’ve started (with some of my friends) an initiative I would call an “Anticonference”. Chamberconf (http://chamberconf.pl) is a small event for 80 people. It’s not only unique because of the attendance microsize, lack of sponsors and a venue (a real castle!). It’s main power is that it purely runs on quality of the attendees. We have speakers (only four) but they are only background for the discussions that are happening in between. Having a mixture of presentations, unconference, hackhathons & alcoholic libation, we’ve manged to shift the vector. There is still this relation speaker – attendees, but this time, it’s not the speaker who is really important.
The event takes place in Poland and is 100% Polish. But who knows, maybe one day, we can make an international edition? Would you care?