The Future of Software Development
by
Ody Mbegbu
Who am I?
@odytrice
medium.com/real-world-fsharp
Who am I?
- Work at Cyberspace
- Head of Social/Cognitive Unit
- Responsible for Naijawella Platform
What do I do?
- Web Technologies
- Android (Java/Kotlin)
- Machine Learning (F#/R)
- .NET (C#/F#), NodeJs, Ruby, Java(Kotlin)
Any Future that doesn't have some kind of connection to today doesn't exist
Emeka Mbegbu
(My Dad)
Categories of Innovation
- Coding - Functional Programming
- Process - Continuous Integration/Delivery
- Infrastructure - Containerization, Serverless
- Application Paradigm - Machine Learning
Programming Language Evolution
What do we do today?
- Most languages are largely Object Oriented and Imperative
- We give instructions one line at a time
- Applications are meticulously crafted
- Applications today are largely unstable
- Programming is largely an Art
Programming Language Evolution
The Future is Functional
- Declarative model of programming
- Data Transformations and PipelinesÂ
- Careful mutation and side-effects
- Programming will be more like a Science
Process (SDLC)
What do we do today?
- Waterfall Process
- Big Bang releases
- Manual deploymentsÂ
Process (SDLC)
Agile DevOps is the future
- Iterative Process
- Smaller more frequent deployments
- Automated builds and deploymentsÂ
Infrastructure Evolution
What do we do today?
- Deploy whole applications to Virtual Machines/Hosting
- Applications are Monoliths
- Applications aren't easily portable/scalable
- "It works on my machine syndrome"
Bare OS/ Virtualization
Infrastructure Evolution
Where are we heading?
- Containers (e.g. Docker)
- Serverless e.g. Functions as a Service, Backend as a service
Docker
Azure Functions
Amazon Lambda
Application Paradigm
What do we do today?
- Expert Systems (with help from Domain Experts)
- Analyze structured Data
- Data is stored in one Database in one format
Application Paradigm
ML will play a strong role in the near future
- "Programming with Data"
- Algorithms are valuable IP
- Analyze both structured and unstructured Data
- Data is heterogenous
- Algorithms smarter than Experts will emerge
(e.g. Chess) - Programs with "Intuition"
Thank You
The Future of Programming
By Ody Mbegbu
The Future of Programming
Engine One Meetup
- 251