so make it performant No images? Click here Written, spoken, drawn or draftedBasic persistable entity type definitions. That's where I'm at with the CMS. Next is probably storage. Jason (of FullSteam Labs) expressed a need for changesets in his initial UI work, so maybe I should be going into that shortly. Keep him unblocked. Code BEAM V Europe Good conference so far. I'll be missing it today as I decided to spend the afternoon with my family instead as our 1 year old daughter has been in a mood and my wife has been plenty accomodating about me attending already. The Whova web plattform is really bad, I really hope it makes organizing the conf a lot easier. The app is good for in-person events, the web thing is an unresponsive mess. The Toucan lounges are still quite good for the social thing. Publishing since last newsletter Previous livestream on native UI with wxWidgets and the Erlang wx module is on the site and on YouTube. We only dipped our toes but this is easily one of the most brain-tickling pieces of tech in Erlang/OTP to me. Just the potential of it. Teaching Elixir using Livebook and Elixir School arrived at the Enum module. Beam Radio has published episode 10 where we speak to Chris Miller and Andre Bryan who interviewed Jose Valim on their YouTube channel. Lots of talk about learning Functional Programming. Livestream today Today's livestream will be way early at 11.00 CEST and on the YouTube channel. I'm considering starting a bit of a project that we can hack on as we go. I'm thinking web crawling. Because it's fun to visualize things in real-time with Elixir. Communication is keyOverspecialize and you breed in weakness I'm not the best coder. Objectively, statistically, subjectively, in my own experience, in other people's experience. But I'm a pretty good developer and my clients tend to be happy. I have more work opportunities than I can actually take on. Why? I have a wide technical skillset, I have significant experience and I communicate pretty well. The last part make the preceding parts matter. I feel comfortable talking about, explaining and discussing tech in both speech and writing. This allows me to work through interview situations, sales calls and actually do the kind of consulting where you give actual advice to your clients, not just crank out code. If you code real good but can't be bothered to string some words together in a sensible way you are minimizing your impact. If you are trying to cross a language boundary into an english-focused dev space and haven't gotten past a certain point of clairty you are at an immense disadvantage. That's not particularly fair but it remains true from what I see. I've traditionally valued text the highest and I think Slack, email, Github, ticket systems and all of that means it will remain the most important communication skill for developers. It is culturally ingrained (open source over email and IRC) and it also sticks pretty close to the actual work of writing code. There is a reason devs tend to appreciate markdown. I think bang-for-buck and for widening that bottleneck, text is critical. If you have dyslexia or similar, whatever you can do to mitigate and correct for it I would recommend putting effort into. I've seen dyslexic devs thrive so it certainly is doable but much like second-language in english spaces, it is a base-level disadvantage. With the proliferation of video calls we are definitely seeing the speech come back as well. It has even more challenges for non-native speakers in my estimate and it combines with fear of public speaking or being shy in general to make for a scarier prospect to a lot of people. But this is very often the best tool for reaching an understanding with product owners, sales, marketing and generally communicating high-bandwidth things. I can write about what I'm doing until my fingers turn blue and it doesn't necessarily mean that a product owner will feel like I have things under control until they can hear me tell them "this works like so and that part will come later". Some people will not read while some people will not listen. If you need to be understood and can communicate in multiple channels, consider doing that. For your dev-team you might find text is enough, sweet. If it isn't, escalate. I had a colleague that just never responded when I sent email until I started sending videos showing what I wanted input on. "But people should put some effort in and do their damn job, read the damn text" Sure, they should. And you should probably try your best to adapt. Or in another angle, is it the principle that matters or the outcome? Are you doing the minimum or are you trying your best? All this to say. I think time invested in communication is incredibly underrated. For the practice if nothing else. Communication is probably not a multiplier, I do think it is a bottle-neck. Small companies are more nimble and move faster than big ones. Their communication patterns can be simple, the required channels can be kept to a minimum, the people and personalities involved is known. Small companies are barely bottle-necked on communication, they might be at 0.9x. Some large companies need to implement formal process making projects move forward with approvals at every stage and any piece of communication needs to reach multiple people successfully. This might be 0.01x. You might actually be able to be a relative 10x developer if you can communicate at 0.1x in a 0.01x organization. How about that! I see communication bottle-necking individuals too. You have your great ideas, you look for opportunities, you get excited about things but you never respond to email. Or you take weeks to get back on DMs. At certain volumes this is very understandable, I doubt most people have that problem. I personally have a habit of turning around email on the same day most of the time. Because I know it helps me immensely to get timely replies. And I try not to expect quick turnaround from others because that just fosters frustration in me but of course I prefer it. The important parts of communication are of course not about round-trip time, that is just a bit of an efficiency peeve of mine. What's worse than responding slowly is arguably responding poorly. A short message with no thought given to tone can wreck someone's day. Text tends to start out negative on the harshness-spectrum. Throw a context-appropriate emoji in there to indicate that you aren't mad. If you know you write tersely and often feel misunderstood, that's probably a lot about tone. Interestingly proper punctuation can make you seem very strict on the Internet and you should probably ease it up a bit with either being funny or just ^.^ If you feel like you write long things that people don't read, you probably need to edit yourself down. I certainly need to edit myself down. I reserve the right to be long-winded here though. You should know this by now ;) Communication, much like software development, is a process. You figure out what works with a particular org, a particular person, a particular situation. But make sure you communicate. Over-communicating is generally preferable in digital environments because it is much harder to work with a lack of information than it is to have a bit more than you'd prefer. Are you good at communicating? Am I, or did I screw this one up entirely? You can always email me about these things at lars@underjord.io or start a conversation on Twitter where I'm @lawik. Thank you for reading, I appreciate your attention. - Lars Wikman |