In the first talk after the morning keynote, Vlad Zelinschi introduces his alternative to State Management for React, without Redux. An interesting talk that shows how little is required to manage state yourself in React. However, we do not see a significant advantage of the presented solution over Redux. Whichever tools you choose to manage your state, it still involves some boilerplate, so why come up with your own solution or go for an alternative without the community support that comes with Redux? We do like the use of React hooks, however. It’s something we’ve been looking at internally already and that we are looking forward to use in the future, perhaps also to reduce boilerplate with Redux.
Kresten Krab Thorup shares his experiences developing a log analytics system and “delegating the ‘hard parts’ of distributed systems to Kafka”. Kafka’s low-latency properties allowed his team to set up a system capable of analysing terabytes of logs via an advanced SQL-like query language.
Nadia Alshahwan presents her team’s effort to automate test design and bug fixing at Facebook with their “Sapienz” system. Sapienz aims to be smarter than a “random fuzzer” testing system and approximating human, manual testing. A testing system that improves through analysis of its random test paths seems an interesting approach, and their auto fix workflow brings tangible benefits to the development process. With the collected test data, the Sapienz team was able to identify the top causes for crashes of their Facebook for Android app, with Null Pointer exceptions leading the board by a long way. Their tool can suggest patches for certain types of issues and submit them for code review, where it auto-assigns as reviewers the developer who introduced the issue and anyone heavily involved in that part of the product. This is certainly something we would like to try back at Caplin!
Some of the talks we are finding most interesting on the last day of QCon London 2019 are on the non-technical “career hacking” track. Andy Walker presents Surviving the Zombie Apocalypse, in which he pleads for developers to look after themselves – get enough sleep, watch your diet and exercise. He’s got some interesting points about context switching, minimising interruptions and prioritising your own work – for some things it’s good to know what’s coming, but tackling low-priority issues too early can disrupt your flow and can lead to more work overall.
“Why are we here?” – existential questions in Aaron Randall’s talk Take Control of Your Career: A Personal Growth Framework. Randall suggests taking matters into your own hands and regularly pick something to improve on. As engineers, it seems natural for us to pick technical skills to improve on. But that’s an easy choice and there are other important aspects that we could pick instead – communication, leadership or business knowledge, for example. The speaker suggests finding your “North Star”, a bigger picture goal that you want to achieve next in your career – this may be a new role, or growing into your current role. Based on this you can assess where you are, where you need to improve and define achievable short-term goals, which you could discuss with your peers and/or manager. Sounds like a good way to ensure your career stays on track and you stay happy with your work.
We’ve attended a host of interesting and inspiring talks at QCon London 2019 and we’ve pencilled in many more talks to catch up on when the recordings become available. There have been some great ideas over the past three days that we can bring back to Caplin, and we’re already looking forward to next year’s QCon with a new range of topics to learn about and share with the team.