the new spring of artificial intelligence and models · the new spring of artificial intelligence...
TRANSCRIPT
The NEW SPRING of
ARTIFICIAL INTELLIGENCE and MODELS
AI, ML, Deep Learning…
Ask About AI: The Future of Work and Learning, Tom Vander Ark | November 2017
The NEW SPRING of
ARTIFICIAL INTELLIGENCE and MODELS
Software evolution
• Over time, systems have become incredibly complex, requiring multiple dependencies and integrations as well as layers upon layers of functionality and interfaces.
• All of these components must be manually managed and updated by humans, leading to inconsistencies and unresolvable bugs.
The NEW SPRING of
ARTIFICIAL INTELLIGENCE and MODELS
The skills shortage
• Tech experts predicted that the demand and usage of applications will continue to grow and is projected to generate $188.9 billion in revenue.
• According to Code.org, Techrepublic.com, there are less than 50,000 Computer Science graduates in 2017, for over 500,000 open computing positions in the United States. In 2020, the available seats for this position will exceed qualified applicants by a million.
• Based on the research done by ACT (The App Association), there are more than 220,000 job openings in the US. They said that there are more job openings than there are qualified applicants to fill them. Companies might find it extremely challenging to find the right talent.
• Colleges and universities graduated a little less than 30,000 new computer science majors every year. With this current pace, it might take about 8 years to match the open job roles.
• About 58% of all STEM (Science, Technology, Engineering, Mathematics) are in computing but only 8% of STEM graduates have a degree in Computer Science. US primary and secondary education systems have not upgraded the programs to include the technical skills needed to meet this demand. fullscale.io,The Talent Shortage of Software Developers in 2019, January 2019
Demand and usage of applications will continue to grow
In 2020, the available seats for this position will exceed qualified applicants by a million
Companies might find it extremely challenging to find the right talent
It might take about 8 years to match the open job roles
Education systems have not upgraded the programs to include the technical skills
The NEW SPRING of
ARTIFICIAL INTELLIGENCE and MODELS
How AI is Going to Help Developers?
Artificial intelligence (AI) is back, and the tech industry’s interest is stronger than ever
Key Takeaways:• AI Will improve, accelerate, and disrupt the software
development life cycle (SDLC)• AI Will enable developers to build apps that learn like humans• Be prepared for the challenges and risks
© 2016 Forrester Research, How AI Will Change Software Development And Applicationsby Diego Lo Giudice, November, 2016
The NEW SPRING of
ARTIFICIAL INTELLIGENCE and MODELS
How is AI transforming software development?
Traditional SDLC
AI/ML empowered SDLC
© METAMAVEN, 6 Ways AI Transforms Software Development by Mariya Yao, Mar 2018
@ QUIDGEST
The NEW SPRING of
ARTIFICIAL INTELLIGENCE and MODELS
Software Development Process Using Artificial Intelligence
• Technology tools are set to change the traditional processes of software development.
• Artificial intelligence (AI) and machine learning (ML) technologies are about to revolutionize the human-driven era of writing code, which solved deterministic problems using logic:
• Creating an MVP fast• Managing the project• Automatic debugging• Automated Testing• Code generation: Pattern detection techniques could help AI systems to generate software code
by putting together some predefined modules.
• Although AI systems are still in its nascent stage, it will grow in importance to provide ample support for the developers.
• The tools will be able to shorten the product development cycle with new and innovative techniques.
© CIOReview, Making an Efficient Software Development Process Using Artificial Intelligence, February 2019
The NEW SPRING of
ARTIFICIAL INTELLIGENCE and MODELS
What about the future of programming?
• The real future of AI in engineering is using technology so that human engineers work more efficiently, faster and with fewer bugs.
• AI is going to turn human developers into far more robust programmersrather than entirely replace humans.
• Thus, the most profound impact of AI on computer programming is the unraveling of how humans perceive, define, and execute software development.
• There will be a long ramp-up as knowledge diffuses through the developer community, but in ten years I predict most software jobs won’t involve programming. (this is to say, manual coding)
hackernoon.com, Is Computer Engineering Really Going to Be Automated?, Sergii Shanin, May 2018
Pete Warden's blog, Pete Warden, Google research engineer, November 2017)
The NEW SPRING of
ARTIFICIAL INTELLIGENCE and MODELS
Why demand for software engineers is going to stay high
• The whole world runs on software
• Most things get built many times
• Code has limited lifetime
• Code sharing didn’t happen
• Tools are improving but projects are getting more complex
• New platforms come out
• Extra (for fun): AI to replace software engineers?• Imagine someone designs software that can replace most engineers. For example,
instead of a team of ten engineers, there’s one human “tech lead” who gives very high-level commands and the program translates them into bug-free code…
Medium.com, Martin Konicek, October 2018
The NEW SPRING of
ARTIFICIAL INTELLIGENCE and MODELS
Software 2.0?
• Software 1.0 is what we’re all familiar with — It consists of explicit instructions to the computer written by a programmer.
• Software 2.0, in contrast, can be written in much more abstract, human unfriendly language, such as the weights of a neural network.
• Some benefits of the new paradigm:• More homogeneous and easier to manage• Constant running time and memory use• High degree of portability• High degree of agility and integrability• Easier to learn for future developers• Better than the best human coder in certain functions/verticals (i.e.
images/video, sound/speech, and text)
Medium.com, Software 2.0, Andrej Karpathy, Director of AI at Tesla, Nov, 2017
ModelDriven
Development
The NEW SPRING of
ARTIFICIAL INTELLIGENCE and MODELS
The future of software development
• Companies are leveraging on low-code or no-code platforms to expedite application delivery by allowing analysts in the line of business to create enterprise-grade applications with minimal coding knowledge.
• Software engineering and web development have seen massive innovation over the past few years. Teams are shipping code faster than ever, with greater quality and with greater complexity.
• AI and software intelligence tools aim to make software development easier and more reliable for frontline software engineers rather than steal the jobs of traditional programmers.
• So what will software development look like ten years from now?
• I guess we’ll have to wait and see.thenextweb.com, by RAYGUN — Sep 19, 2017
The NEW SPRING of
ARTIFICIAL INTELLIGENCE and MODELS
5 ways artificial intelligence is upgrading software engineering
• #1 Software design
• #2 Software testing
• #3 GUI testing
• #4 Using Artificial Intelligence in Strategic Decision-Making
• #5 Automatic Code generation/Intelligent Programming Assistant• “Coding a huge project from scratch is often labour intensive and time
consuming. • An Intelligent AI programming assistant will reduce the workload by a great
extent.”
packtpub.com, Melisha Dsouza - September, 2018
We call it Genio
The NEW SPRING of
ARTIFICIAL INTELLIGENCE and MODELS
The future has started
• Programming trends suggest that software development will undergo a radical change in the future: the combination of machine learning, artificial intelligence, natural language processing, and code generation technologies will improve in such a way that machines, instead of humans, will write most of their own code by 2040.
• Good code generators will be the most helpful and useful tools for coding by 2040, Jay Jay Billings, Oak Ridge National Laboratory
Will humans even write code in 2040 and what would that mean for extreme heterogeneity in computing?JJ Billings, AJ McCaskey, G Vallee, G Watson - 2017
The NEW SPRING of
ARTIFICIAL INTELLIGENCE and MODELS
Genio
• Code describes in detail the steps to accomplish the goal
• C#, Visual Basic, C++, Java, and low-code platforms primarily
support imperative (procedural) programming
Imperative
Programming
• Code (or Model) describes what is the goal
• T-SQL, Prolog, and Genio Models are declarative
Declarative
Programming
• Deduce or conclude from evidence and reasoning rather than
from explicit statementsInference
The NEW SPRING of
ARTIFICIAL INTELLIGENCE and MODELS
Model Driven
Development
=
Technological
Independence
Rapid
Application
Development
=
Simulation
Software
Production Line
=
Mass
Personalization
Artificial
Intelligence
Inference
=
Automatic Code
Generation