Python, Software complexity and readable code
Grigory Petrov, DevRel at Evrone
About speaker: Full-time software developer since the late nineties. Was involved in such software projects as Radmin, Advanced IP Scanner, NPTV, Voximplant. A frequent conference and meetup speaker with main areas of interest in software development management and cross-platform development. Works full-time as a DevRel at Evrone, a custom software development and digital artworks company.
Theses: How often do we say "this code is impossible to change, it should be rewritten"? Sadly, the code in question can be our creation from a few years ago. What can we do to make the code more readable? To address this painful question I will dig into neurophysiology, cognitive intuition and source code, the origin of software complexity problem and how we can deal with it. The talk will follow decomposition, different ways to set navigation beacons within our code, how useful identifiers are crafted and how types are used as traps for future errors. Finally, I will talk about a "gradual" code writing technique that extends Python "gradual typing" approach outside of types.