Codecamp_The Festival is a one-of-a-kind experience, mixing learning from the best speakers out there, from all over the world, with the glitz and glamour of a true music festival.
Four awesome stages, three inspiring keynotes, seeing your superheroes up close and personal and making new connections, in a laid back and friendly scenery, who said learning can’t be fun?
Meet the superheroes that changed the game in software development.
Yeap, they’re all coming to Romania! Grab a coffee with them and prepare to be starstrucked.
Get the Codecamp app
09:00 – 09:30
Welcome to Codecamp_Festival!
09:30 – 09:45
Intro, Dan Nicola & Florin Cardasim
09:45 – 10:00
Confidently looking forward, Lucian Ungureanu
10:00 – 11:00
Take Five – A countdown of what’s essential in software development, Kevlin Henney
11:00 – 12:00
Ten Years of Technology From the Trenches, James Lewis
Code Red: the business impact of code quality, Adam Tornhill
Modernize your on-premises SQL and Oracle databases to Azure, Alexandra Ciortea
12:00 – 13:00
Shift left on security and testing in modern software development, Cristi Gherghe, Roxana Mecea & Amit Dube
Cloud Native Application Bundles… another specification? Or rather a new level of packaging?, Alexandru Dejanu
Exploring the Tree of Knowledge: Utilizing Graphs for Corporate Action Predictions, Arik Brutian, Mihai Ilie & Armen Inants
13:00 – 14:00
14:00 – 15:00
Why Responsive Iterative Design is Evil, James Coplien
15:00 – 16:00
Why You Can’t Buy Cloud Native, Holly Cummins
Using Spring Cloud Functions with AWS Lambda, Dragos Constantinescu
Software Craftsmanship – Growing a Technical Culture, Victor Rentea
16:00 – 17:00
From software to systems: skills we need now, Diana Montalion
Addressing the transaction challenge in a cloud-native world, Grace Jansen
Fantastic Transformers and Where to Deploy Them, Bogdan Musat
17:00 – 18:30
WhatsApp, Web3, and Wordle: Evolving a Digital Society, Dylan Beattie
18:30 – 19:30
19:30 ⋆⁺₊⋆ ☾
These high-end learning events feature top trainers and IT specialists from all over the world. The workshops represent an in-depth, hands-on, practical approach, addressing a diverse range of disciplines and technologies like architecture, Java, .NET.
Get the Codecamp app
We are always on a quest for techniques or concepts for thinking about and organising software and its development, and there’s no shortage of recommendations. But if we limit ourselves to five ideas, with a further constraint the fifth idea is made up of five parts, the fourth idea is made up of four parts, the… you get the idea. What we will find is that we have a simple set of recommendations that cut through a lot of the noise we are deafened by in software development. We can answer questions of design quality, of delivery, of improvement, of knowledge by using these five ideas as a tool for questions and answers.
In his talk, James takes a look back over the last decade, at the technology shifts that have occurred and makes some guesses on where we might be going in the next decade. Whilst new and shiny are always exciting, it’s good to know your history.
Code quality is an abstract concept that fails to get traction at the business level. Consequently, software companies keep trading code quality for new features. The resulting technical debt is estimated to waste up to 42% of developers’ time, causing stress and uncertainty, as well as making our job less enjoyable than it should be. Without clear and quantifiable benefits, it’s hard to build a business case for code quality.
In this talk, Adam takes on the challenge by tuning the code analysis microscope towards a business outcome. We do that by combining novel code quality metrics with analyses of how the engineering organization works with the code. We then take those metrics a step further by connecting them to values like time-to-market, customer satisfaction, and road-map risks. This makes it possible to a) prioritize the parts of your system that benefit the most from improvements, b) communicate quality trade-offs in terms of actual costs, and c) identify high-risk parts of the application so that we can focus our efforts on the areas that need them the most. All recommendations are supported by data and brand new research on real-world codebases. This is a perspective on software development that will change how you view code. Promise.
Are you looking to move your SQL Server and Oracle workloads to Azure but don’t know where to start? Come and join us in this demo filled session to hear about our latest migration tooling innovations, that simplifies your decision making and execution through new migration tools. No matter which stage of the migration journey you are in, these tools will help you with your database migration projects by providing seamless tooling support across discovery, assessment and database migrations.
Shift left on bugs, with Roxana
The shift left testing movement is about pushing testing in all stages of the software development process. However most times it happens to be considered a myth, we should talk about it. Roxana will show how testing at an early stage impacts delivery time, reduces the required rework time investment. She will also point that it’s not just about the technical solutions it’s also about culture too.
Terraform toolkit for CI/CD, with Amit
With infrastructure written as code using Terraform, it’s critical to have a set of tools in the infrastructure pipeline to achieve continuous integration. During this talk, Amit will classify various stages in the Terraform CI pipeline, why they are critical, and will shed some light around the set of tools available for successfully implementing these stages. He will focus mostly on testing during continuous integration – one of the most critical steps in every software development lifecycle. The talk should help everyone involved in Infrastructure as Code(IAC) to write testable terraform code and better CI/CD pipelines.
In this talk, Alex will discuss about Cloud Native, what CNAB is trying to solve, and how Systematic leverages the power of both. The purpose of this talk is to provide an insight into the Cloud Native Application Bundles and shed light on how to integrate them in your workflow. Additionally, he will touch upon the current situation of the industry tech-stack status.
Graph structures help not only normatively define relationships within a knowledge domain, but can also be useful in explicating actual relationships and even predicting future relationships between entities, with the support of a reasoning mechanism. Morningstar Sustainalytics Digital Innovation Team has utilized graph neural networks to predict the corporate sustainability (ESG) performance in general and corporate involvement in sustainability-related controversies.
Most agile folks would agree that “getting it right the first time” is a dubious proposition. Most agile practice is based on developing software that represents some hypothesis, shipping it, and then using feedback over time to iterate the result into an optimum solution. The problem with this approach is that it focuses only on whether the new iteration is better than the old one. That can lead to local optima, and can take many iterations to reasonably explore the design space.
Instead of comparing a new hypothetical direction with the status quo, it is much better to consider a set of design solutions together in a kind of bake-off. This is called set-based design. Teams can evaluate multiple alternatives for a host of design considerations by actually starting to develop them; arresting development; scoring the alternatives for each of the design considerations with several weighted scores; and using the result to eliminate alternatives. The team repeats this process with increasingly fewer design considerations and increasingly more scoring considerations. When all but one alternative has been eliminated for each of the considerations, you are ready to ship the result.
This approach more rapidly converges on a good solution than the traditional approach and is less like to suffer from landing on local optima. The approach is broadly used by Google, by the U.S. military, by Toyota, and others, as a powerful and effective approach to design in areas that are complex with high levels of uncertainty. It provides a powerful alternative to the traditional “inspect and adapt” approach to agile. It allows the team to control the exploration instead of having the exploration control the team.
The virtual shelves are filled to bursting with cloud native technologies; containers, runtimes, CI pipelines, observability tools. The more an organisation buys, the more cloud native it is, right? And the more network communication an app involves, the more cloud native it is, right? Well, not so much. It turns out cloud native is about how you deliver software, not the tools you use. This talk explains these often-overlooked elements for cloud native success:
Figuring out what problem we’re trying to solve
Testing, but not the way you’re used to
Spring cloud functions is a framework that facilitates easy transition of code from cloud provider to cloud provider with minimal effort. In this presentation we’ll be looking at how to start using it and how fast we can develop and move the code.
Decades ago, IT started as a single engineering practice, but over the years it grew increasingly fragmented. The overspecialization we face today, in the context of a management-first agile transformation leads to a lack of responsibility, blaming games, repeated patching, painful communication overhead, and fulminating costs. The software craftsmanship movement is rising in this post-agile world with professionals that take control of their careers and continuously learn in the pursuit of mastery. But changing mindset requires determined team efforts and communities, especially when working remotely. What techniques and tricks can you use to grow such a culture of learning in your team? Find out from the founder and lead of one of the largest software craftsmanship communities in the world.
This talk is about technical culture and attitude.
With microservices comes great benefits but also great challenges! One such challenge is data consistency and integrity. Traditionally, tightly coupled transactions were used to ensure strong consistency and isolation. However, this results in strong coupling between services due to data locking and decreasing concurrency, both of which are unsuitable for microservices. So, how do we provide consistency guarantees for flows that span long periods of time in cloud-native applications? We’ll address this challenge by investigating the Saga pattern for distributed transactions, the MicroProfile Long Running Action (LRA) specification and how these can be used to develop effective cloud-native Java microservices.
The Transformer architecture has revolutionized in the last couple of years the way neural networks are regarded and used through fields like natural language processing and computer vision. With the latest models in NLP, I dare to say we are close to solving the old Turing imitation test. The bitter lesson however is that Transformers scale with data and model complexity. Current state of the art models can reach up to 540b neural connections and are extremely data hungry, which is why only a few labs in the world can afford to scale to such complexities. The question is then how can we make Transformers more affordable to everyone and even more important how to deploy them on the edge and make use of their true potential. We should strive to find the shortest computer program that can solve the task at hand. The length of this shortest computer program is also known in algorithmic information theory as Kolmogorov’s complexity. In order to search for such a solution, we can use techniques like pruning and quantization in combination with heuristic approaches or automated machine learning frameworks. This presentation will cover the latest breakthroughs in the field of AI that are using Transformers as a core technology and then some solutions from neural network optimization and deployment which could make Transformers more affordable to everyone.
We live in a networked world. Between our laptops, our phones, and the smart gadgets in our kitchen, many of us are online 24/7. We work and play, communicate and collaborate, across digital networks powered by open protocols – the standards and specifications that form the backbone of the modern internet.
But, within the last decade, we’ve seen many online interactions move away from open protocols and onto closed platforms. We’ve abandoned SMS for Signal and WhatsApp, we’ve abandoned email in favour of Slack, Teams, and Discord; restaurants use Instagram and Facebook instead of running their own websites. And, most of the time, it works – but as more and more of our digital experiences are mediated by corporations and the platforms they control, what does this mean for the future of the internet?
Amidst all the hype about “web 3” and the “metaverse”, let’s take a moment to remind ourselves how we got here, and remember what’s at stake. We’ll look back at the promise of “web 2.0” and what it actually delivered, we’ll talk about digital identity and net neutrality – and we’ll learn what the Apollo/Soyuz space missions have to do with the digital protocols that underlie our connected society.