In October we hosted a successful London Careers Open House, welcoming many budding Craftspeople to our office for a highly enjoyable evening of talks and networking.
Keeping up-to-date with technology trends is part of what we do and therefore this month we're pleased to include a word from Principal Craftsperson James Birnie. You can also find included in this issue a podcast episode featuring our co-founder Sandro Mancuso, an article on ‘7 Testing Sins' and an introduction to Category Theory for Programmers - enjoy!
Until next time, The Codurance team
What does Quantum Supremacy Mean for Cryptography?
By James Birnie
When the story broke in September that Google was claiming quantum supremacy, it merited not much more than small footnotes in the popular press. It was enthusiastically received in the technology press which makes me think that it is time to start thinking about a world after RSA is dead.
"Quantum supremacy" means (if verified) that Google has a real quantum computer that can solve a real world problem more efficiently than any classical (digital) computer. The chances are that the cost of using this computer is astronomical and seemingly beyond the means of any individual or most corporations... but weren't IBM's machines in their early days?
What we experienced back in the early digital age was what we should expect to happen now. As soon as practical uses exist, investment will pour in and improvements in the technology will be rapid, likely exponential. Given that most research has been funded by financial institutions, it is a fairly safe bet that those same institutions will be racing one another to translate quantum supremacy into financial market dominance.
Why should we be concerned about this and what does it have to do with encryption? Well, Shor's algorithm factorises numbers, promising that if you can factorise a product of two large prime numbers in a reasonable timeframe, you break RSA and related cyphers, which account for pretty much all of the messages in the world now.
We are a few years away from a time with a powerful enough quantum computer to break current RSA keys but if quantum supremacy is proven, you can be sure that time is closer than you think. Don't forget, your messages are probably being stored by several government agencies the world over right now. Your messages are secure now but if you care about this being the case 5 or 10 years from now, you should be asking why we aren't using quantum safe cryptography now.
Gojko Adzic's presentation from GOTO Copenhagen 2017 remains a firm favourite for those considering serverless architecture; the talk includes practical advice on the lessons he learned during the process of rewriting services to run in AWS Lambda.
Codurance's Sam Davies published this post to provide examples of difficult to read test code, complete with the alternatives that can be used to strive towards comprehensive and maintainable tests in the future.
Maintainable is a podcast exploring real-world approaches to technical challenges, with expert practitioners sharing their stories. Our co-founder Sandro Mancuso appears in their latest episode, discussing the skills that make a successful software consultant.
Bartosz Milewski's popular blog posts have been translated to print and provide the major concepts behind this abstract branch of mathematics, within the context of computer code. One for fans of functional programming languages and in particular, Haskell.