SlideShare a Scribd company logo
1 of 15
Download to read offline
Isolating Various Parts of a Bigger Problem: What We Face in the World of Software Engineering
Albeit invoking numerous unnecessary acronyms along the way.
Problem
Human requirements
analysts are
indispensable.
Unsystematic thinkers require
human requirements analysts to
produce minimally systematic
specifications (MSS-es).
Problem
Human minimally-
viable- programmers
are indispensable.
Non-programmers require human
programmers to compile MSS-es
into minimally viable programs
(MVP-s), and to deploy these in
production environments.
Problem
Human systems
engineers are
indispensable.
Non- systems- engineers require
human systems engineers to
modify MVP-s into reasonably
scalable programs (RSP-s).
???
I’m not sure if there is
a fourth stage, or not.
Presumably, until you have a
solution that smashes the first
three problems into oblivion,
getting to “arbitrarily scalable
programs” is an academic
concern.
You can probably tell, that this is really bugging me.
Problem
Human requirements
analysts are
indispensable.
Unsystematic thinkers require
human requirements analysts to
produce minimally systematic
specifications (MSS-es).
Problem
Human minimally-
viable- programmers
are indispensable.
Non-programmers require human
programmers to compile MSS-es
into minimally viable programs
(MVP-s), and to deploy these in
production environments.
Problem
Human systems
engineers are
indispensable.
Non- systems- engineers require
human systems engineers to
modify MVP-s into reasonably
scalable programs (RSP-s).
Why must we tolerate this?
Here’s how we currently do it.
Problem
Human requirements
analysts are
indispensable.
Unsystematic thinkers require
human requirements analysts to
produce minimally systematic
specifications (MSS-es).
Problem
Human minimally-
viable- programmers
are indispensable.
Non-programmers require human
programmers to compile MSS-es
into minimally viable programs
(MVP-s), and to deploy these in
production environments.
Problem
Human systems
engineers are
indispensable.
Non- systems- engineers require
human systems engineers to
modify MVP-s into reasonably
scalable programs (RSP-s).
“Rapid Application Development” Frameworks
E.g. Rails, Django, Laravel, Spring, .NET
Here’s what that leads to.
Unsystematic thinkers require
human requirements analysts to
produce minimally systematic
specifications (MSS-es).
Non-programmers require human
programmers to compile MSS-es
into minimally viable programs
(MVP-s), and to deploy these in
production environments.
Non- systems- engineers require
human systems engineers to
modify MVP-s into reasonably
scalable programs (RSP-s).
Framework X (e.g. Rails) Implemented by Joe.
Now we have framework X.1 “Rails interpreted by Joe.”
“Rails” Implemented by Petra.
Now we have framework X.2 “Rails interpreted by Petra.”
“Rails” Implemented by Chan.
Now we have framework X.3 “Rails interpreted by Chan.”
“Rails” PAINT ME A
Now we have framework X… N RAINBOW
This is
stupid...
1337 Hacker:
“Startups don’t need standards.”
Tired Hacker:
“Well, it's still a waste of founder money.
Because every time they switch freelances, the standards run.
So it's an overhead cost - not interesting.
Have you seen some of these codebases? LOL
The startups die because
the software cost too much to pivot.”
1337 VC:
“Don’t use freelances. Learn to code, or find a technical co-founder.”
Tired Founder:
“Fuck you.”
1337 VC:
“No, YOU’re fucked.”
(I’m sure we can do better than this.)
Let’s revisit the root problem.
Unsystematic thinkers require
human requirements analysts to
produce minimally systematic
specifications (MSS-es).
Non-programmers require human
programmers to compile MSS-es
into minimally viable programs
(MVP-s), and to deploy these in
production environments.
Non- systems- engineers require
human systems engineers to
modify MVP-s into reasonably
scalable programs (RSP-s).
We lack
- a system, with a user-interface for
non-technical users,
- that can accurately capture their
thoughts,
- and store them in a digital data-
structure.
We lack
- a compiler that transforms the same
data-structure into source-code
which follows the regulations of a
target open-source framework, with
guarantees that the output is both (1)
extensible and (2) scaleable for a low
cost, by a certified team, and
- a certification standard for such a
team.
We lack
- a compiler that transforms this data-
structure into a minimally viable
program that works for a few users in
a production environment,
- quickly (time),
- cheaply (money),
- repeatedly (for agility).
Can we reframe it, thus?
We lack
- a system, with a user-interface for
non-technical users,
- that can accurately capture their
thoughts,
- and store them in a digital data-
structure.
We lack
- a compiler that transforms the same
data-structure into source-code
which follows the regulations of a
target open-source framework, with
guarantees that the output is both (1)
extensible and (2) scaleable for a low
cost, by a certified team, and
- a certification standard for such a
team.
We lack
- a compiler that transforms this data-
structure into a minimally viable
program that works for a few users in
a production environment,
- quickly (time),
- cheaply (money),
- repeatedly (for agility).
TL; DR - we need to build...
A. The data-structure.
B. The user-interface.
C. The platform-as-a-service for minimally viable programs.
D. The software-as-a-service for standards-compliant whole-app-generation.
E. The framework extensions / heuristics that guide further manual development.
It’s a bit early for this, but if you’re looking for a growth trajectory...
A. The data-structure.
B. The user-interface.
C. The platform-as-a-service for minimally viable programs.
D. The software-as-a-service for standards-compliant whole-app-generation.
E. The framework extensions / heuristics that guide further manual development.
… all you have to do is make this network of services denser:
● your PaaS from C should extend to support the apps generated by D
● E should eventually target many different frameworks
● your UI from B should be the same UI that can be used for quick hacks on E
A. The data-structure.
B. The user-interface.
C. The platform-as-a-service for minimally viable programs.
D. The software-as-a-service for standards-compliant whole-app-generation.
E. The framework extensions / heuristics that guide further manual development.
… all you have to do is blur the lines here:
● your PaaS from C should extend to support the apps generated by D
● E should eventually target many different frameworks
● your UI from B should be the same UI that can be used for quick hacks on E
These are
B2B billables.
We’re vertically integrating
Software Development
From Startup-scale
To Enterprise-scale
A. The data-structure.
B. The user-interface.
C. The platform-as-a-service for minimally viable programs.
D. The software-as-a-service for standards-compliant whole-app-generation.
E. The framework extensions / heuristics that guide further manual development.
These are non-trivial problems.
Cognitive
Modelling
Human- computer
interaction
PaaS Scale
Enterprise
SaaS SLAs
Meta-systems
Architectures
Vacationeering
17 July 2015
Thank heavens for breaks in between paid work. I’d been meaning to work on
this, but hadn’t had time to think about it properly. I started out as a business-
user in 2008, and then tried to learn how to code web applications in order to
build my own projects. But I became dissatisfied with the ecosystem of
software development, in general. These are my current thoughts about a
broader problem in software development.
And then?
People keep asking me why I don’t work on my own startup. Well, for starters,
this is the size of problem that typically interests me. I have always thought it
would take many years to gain enough experience to attack problems of this
magnitude, and so here I am chipping away at them.
It’s the first time I’ve had space to consolidate my thoughts on this matter, and
so I haven’t decided which part of the problem to work on next, or if I should just
ask around for VC interest in the problem in general.
Later, later.
We’ll leave other problems to another day, and another slide deck.
As indicated at the beginning, there are many problems that concern me, such
as the efficiency of standard mathematical notion, the digitisation of
consciousness, the efficiency of tertiary pedagogies, and the computational
exploration of alternatives to Standard Theory [though perhaps, I should first aim
to properly grasp Standard Theory].
- Jerng

More Related Content

What's hot

Refactoring for Software Design Smells
Refactoring for Software Design SmellsRefactoring for Software Design Smells
Refactoring for Software Design SmellsGanesh Samarthyam
 
Tdd 4 everyone full version
Tdd 4 everyone full versionTdd 4 everyone full version
Tdd 4 everyone full versionLior Israel
 
Is there a future for Model Transformation Languages?
Is there a future for Model Transformation Languages?Is there a future for Model Transformation Languages?
Is there a future for Model Transformation Languages?Jordi Cabot
 
Technical stories v1.2
Technical stories v1.2Technical stories v1.2
Technical stories v1.2Jim Brisson
 
Software Architecture: Principles, Patterns and Practices
Software Architecture: Principles, Patterns and PracticesSoftware Architecture: Principles, Patterns and Practices
Software Architecture: Principles, Patterns and PracticesGanesh Samarthyam
 
SE CHAPTER 1 SOFTWARE ENGINEERING
SE CHAPTER 1 SOFTWARE ENGINEERINGSE CHAPTER 1 SOFTWARE ENGINEERING
SE CHAPTER 1 SOFTWARE ENGINEERINGAbrar ali
 
Periodic Table of Agile Principles and Practices
Periodic Table of Agile Principles and PracticesPeriodic Table of Agile Principles and Practices
Periodic Table of Agile Principles and PracticesJérôme Kehrli
 

What's hot (10)

software
softwaresoftware
software
 
Refactoring for Software Design Smells
Refactoring for Software Design SmellsRefactoring for Software Design Smells
Refactoring for Software Design Smells
 
Tdd 4 everyone full version
Tdd 4 everyone full versionTdd 4 everyone full version
Tdd 4 everyone full version
 
Is there a future for Model Transformation Languages?
Is there a future for Model Transformation Languages?Is there a future for Model Transformation Languages?
Is there a future for Model Transformation Languages?
 
Chapter 12
Chapter 12Chapter 12
Chapter 12
 
Technical stories v1.2
Technical stories v1.2Technical stories v1.2
Technical stories v1.2
 
Software Architecture: Principles, Patterns and Practices
Software Architecture: Principles, Patterns and PracticesSoftware Architecture: Principles, Patterns and Practices
Software Architecture: Principles, Patterns and Practices
 
SE CHAPTER 1 SOFTWARE ENGINEERING
SE CHAPTER 1 SOFTWARE ENGINEERINGSE CHAPTER 1 SOFTWARE ENGINEERING
SE CHAPTER 1 SOFTWARE ENGINEERING
 
Refactoring 2 The Max
Refactoring 2 The MaxRefactoring 2 The Max
Refactoring 2 The Max
 
Periodic Table of Agile Principles and Practices
Periodic Table of Agile Principles and PracticesPeriodic Table of Agile Principles and Practices
Periodic Table of Agile Principles and Practices
 

Viewers also liked

Software Process Models
Software Process ModelsSoftware Process Models
Software Process ModelsHassan A-j
 
SDLC and Software Process Models
SDLC and Software Process ModelsSDLC and Software Process Models
SDLC and Software Process ModelsNana Sarpong
 
Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)Muhammad Ahmed
 
Lecture 02 Software Process Model
Lecture 02 Software Process ModelLecture 02 Software Process Model
Lecture 02 Software Process ModelAchmad Solichin
 
Software Engineering - Ch8
Software Engineering - Ch8Software Engineering - Ch8
Software Engineering - Ch8Siddharth Ayer
 
System Models in Software Engineering SE7
System Models in Software Engineering SE7System Models in Software Engineering SE7
System Models in Software Engineering SE7koolkampus
 
Generic Software Process Models
Generic Software Process ModelsGeneric Software Process Models
Generic Software Process ModelsEducation Front
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process ModelsAhmed Alageed
 

Viewers also liked (10)

Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
Process model in Software engeneering
Process model in Software engeneering Process model in Software engeneering
Process model in Software engeneering
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
SDLC and Software Process Models
SDLC and Software Process ModelsSDLC and Software Process Models
SDLC and Software Process Models
 
Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)
 
Lecture 02 Software Process Model
Lecture 02 Software Process ModelLecture 02 Software Process Model
Lecture 02 Software Process Model
 
Software Engineering - Ch8
Software Engineering - Ch8Software Engineering - Ch8
Software Engineering - Ch8
 
System Models in Software Engineering SE7
System Models in Software Engineering SE7System Models in Software Engineering SE7
System Models in Software Engineering SE7
 
Generic Software Process Models
Generic Software Process ModelsGeneric Software Process Models
Generic Software Process Models
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 

Similar to A Software Problem (and a maybe-solution)

Fed Up Of Framework Hype Dcphp
Fed Up Of Framework Hype DcphpFed Up Of Framework Hype Dcphp
Fed Up Of Framework Hype DcphpTony Bibbs
 
Cloud computing - an architect's perspective
Cloud computing - an architect's perspectiveCloud computing - an architect's perspective
Cloud computing - an architect's perspectiveHARMAN Services
 
Over view of Technologies
Over view of TechnologiesOver view of Technologies
Over view of TechnologiesChris Mitchell
 
TechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - Trivadis
TechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - TrivadisTechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - Trivadis
TechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - TrivadisTrivadis
 
A Tale of Contemporary Software
A Tale of Contemporary SoftwareA Tale of Contemporary Software
A Tale of Contemporary SoftwareYun Zhi Lin
 
Synergy of Human and Artificial Intelligence in Software Engineering
Synergy of Human and Artificial Intelligence in Software EngineeringSynergy of Human and Artificial Intelligence in Software Engineering
Synergy of Human and Artificial Intelligence in Software EngineeringTao Xie
 
Introduction to Software Reverse Engineering
Introduction to Software Reverse EngineeringIntroduction to Software Reverse Engineering
Introduction to Software Reverse EngineeringTeodoro Cipresso
 
Teaching Elephants to Dance (and Fly!) A Developer's Journey to Digital Trans...
Teaching Elephants to Dance (and Fly!) A Developer's Journey to Digital Trans...Teaching Elephants to Dance (and Fly!) A Developer's Journey to Digital Trans...
Teaching Elephants to Dance (and Fly!) A Developer's Journey to Digital Trans...Burr Sutter
 
Ovp Introduction Presentation (04 Feb 10)
Ovp Introduction Presentation (04 Feb 10)Ovp Introduction Presentation (04 Feb 10)
Ovp Introduction Presentation (04 Feb 10)simon56
 
Slides chapter 1
Slides chapter 1Slides chapter 1
Slides chapter 113harpreet
 
Annotated Bibliography On Unreliable Software
Annotated Bibliography On Unreliable SoftwareAnnotated Bibliography On Unreliable Software
Annotated Bibliography On Unreliable SoftwareMary Brown
 
Development and QA dilemmas in DevOps
Development and QA dilemmas in DevOpsDevelopment and QA dilemmas in DevOps
Development and QA dilemmas in DevOpsMatteo Emili
 
The macro of microservices
The macro of microservicesThe macro of microservices
The macro of microservicesSoftware Guru
 
Agile architecture upload
Agile architecture uploadAgile architecture upload
Agile architecture uploadThe Real Dyl
 
ASAS 2014 - Simon Brown
ASAS 2014 - Simon BrownASAS 2014 - Simon Brown
ASAS 2014 - Simon BrownAvisi B.V.
 
Slides chapter 1
Slides chapter 1Slides chapter 1
Slides chapter 1gvkmku
 

Similar to A Software Problem (and a maybe-solution) (20)

Fed Up Of Framework Hype Dcphp
Fed Up Of Framework Hype DcphpFed Up Of Framework Hype Dcphp
Fed Up Of Framework Hype Dcphp
 
Cloud computing - an architect's perspective
Cloud computing - an architect's perspectiveCloud computing - an architect's perspective
Cloud computing - an architect's perspective
 
Over view of Technologies
Over view of TechnologiesOver view of Technologies
Over view of Technologies
 
TechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - Trivadis
TechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - TrivadisTechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - Trivadis
TechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - Trivadis
 
A Tale of Contemporary Software
A Tale of Contemporary SoftwareA Tale of Contemporary Software
A Tale of Contemporary Software
 
Synergy of Human and Artificial Intelligence in Software Engineering
Synergy of Human and Artificial Intelligence in Software EngineeringSynergy of Human and Artificial Intelligence in Software Engineering
Synergy of Human and Artificial Intelligence in Software Engineering
 
Introduction to Software Reverse Engineering
Introduction to Software Reverse EngineeringIntroduction to Software Reverse Engineering
Introduction to Software Reverse Engineering
 
Teaching Elephants to Dance (and Fly!) A Developer's Journey to Digital Trans...
Teaching Elephants to Dance (and Fly!) A Developer's Journey to Digital Trans...Teaching Elephants to Dance (and Fly!) A Developer's Journey to Digital Trans...
Teaching Elephants to Dance (and Fly!) A Developer's Journey to Digital Trans...
 
Ovp Introduction Presentation (04 Feb 10)
Ovp Introduction Presentation (04 Feb 10)Ovp Introduction Presentation (04 Feb 10)
Ovp Introduction Presentation (04 Feb 10)
 
Micro services
Micro servicesMicro services
Micro services
 
Slides chapter 1
Slides chapter 1Slides chapter 1
Slides chapter 1
 
Annotated Bibliography On Unreliable Software
Annotated Bibliography On Unreliable SoftwareAnnotated Bibliography On Unreliable Software
Annotated Bibliography On Unreliable Software
 
Session3
Session3Session3
Session3
 
Development and QA dilemmas in DevOps
Development and QA dilemmas in DevOpsDevelopment and QA dilemmas in DevOps
Development and QA dilemmas in DevOps
 
The macro of microservices
The macro of microservicesThe macro of microservices
The macro of microservices
 
Agile architecture upload
Agile architecture uploadAgile architecture upload
Agile architecture upload
 
Slides chapter 1
Slides chapter 1Slides chapter 1
Slides chapter 1
 
Slides chapter 1
Slides chapter 1Slides chapter 1
Slides chapter 1
 
ASAS 2014 - Simon Brown
ASAS 2014 - Simon BrownASAS 2014 - Simon Brown
ASAS 2014 - Simon Brown
 
Slides chapter 1
Slides chapter 1Slides chapter 1
Slides chapter 1
 

More from YangJerng Hwa

Structuring Marketing Teams
Structuring Marketing TeamsStructuring Marketing Teams
Structuring Marketing TeamsYangJerng Hwa
 
Architecturing the software stack at a small business
Architecturing the software stack at a small businessArchitecturing the software stack at a small business
Architecturing the software stack at a small businessYangJerng Hwa
 
Reactive datastore demo (2020 03-21)
Reactive datastore demo (2020 03-21)Reactive datastore demo (2020 03-21)
Reactive datastore demo (2020 03-21)YangJerng Hwa
 
JavaScript - Promises study notes- 2019-11-30
JavaScript  - Promises study notes- 2019-11-30JavaScript  - Promises study notes- 2019-11-30
JavaScript - Promises study notes- 2019-11-30YangJerng Hwa
 
2019 10-09 google ads analysis - eyeballing without proper math
2019 10-09 google ads analysis - eyeballing without proper math2019 10-09 google ads analysis - eyeballing without proper math
2019 10-09 google ads analysis - eyeballing without proper mathYangJerng Hwa
 
2019 malaysia car accident - total loss - diy third-party claim - simplifie...
2019   malaysia car accident - total loss - diy third-party claim - simplifie...2019   malaysia car accident - total loss - diy third-party claim - simplifie...
2019 malaysia car accident - total loss - diy third-party claim - simplifie...YangJerng Hwa
 
2019 09 tech publishers in malaysia
2019 09 tech publishers in malaysia2019 09 tech publishers in malaysia
2019 09 tech publishers in malaysiaYangJerng Hwa
 
2019 09 web components
2019 09 web components2019 09 web components
2019 09 web componentsYangJerng Hwa
 
Appendix - arc of development
Appendix  - arc of developmentAppendix  - arc of development
Appendix - arc of developmentYangJerng Hwa
 
Deep learning job pitch - personal bits
Deep learning job pitch - personal bitsDeep learning job pitch - personal bits
Deep learning job pitch - personal bitsYangJerng Hwa
 
Monolithic docker pattern
Monolithic docker patternMonolithic docker pattern
Monolithic docker patternYangJerng Hwa
 
What people think about Philosophers & Management Consultants
What people think about Philosophers & Management ConsultantsWhat people think about Philosophers & Management Consultants
What people think about Philosophers & Management ConsultantsYangJerng Hwa
 
Process for Terminating Employees in Malaysia
Process for Terminating Employees in MalaysiaProcess for Terminating Employees in Malaysia
Process for Terminating Employees in MalaysiaYangJerng Hwa
 
Pour-over Coffee with the EK43
Pour-over Coffee with the EK43Pour-over Coffee with the EK43
Pour-over Coffee with the EK43YangJerng Hwa
 
OTP application (with gen server child) - simple example
OTP application (with gen server child) - simple exampleOTP application (with gen server child) - simple example
OTP application (with gen server child) - simple exampleYangJerng Hwa
 
Intro to Stock Trading for Programmers
Intro to Stock Trading for ProgrammersIntro to Stock Trading for Programmers
Intro to Stock Trading for ProgrammersYangJerng Hwa
 
A Haphazard Petcha Kutcha
A Haphazard Petcha KutchaA Haphazard Petcha Kutcha
A Haphazard Petcha KutchaYangJerng Hwa
 

More from YangJerng Hwa (19)

Structuring Marketing Teams
Structuring Marketing TeamsStructuring Marketing Teams
Structuring Marketing Teams
 
Architecturing the software stack at a small business
Architecturing the software stack at a small businessArchitecturing the software stack at a small business
Architecturing the software stack at a small business
 
Reactive datastore demo (2020 03-21)
Reactive datastore demo (2020 03-21)Reactive datastore demo (2020 03-21)
Reactive datastore demo (2020 03-21)
 
JavaScript - Promises study notes- 2019-11-30
JavaScript  - Promises study notes- 2019-11-30JavaScript  - Promises study notes- 2019-11-30
JavaScript - Promises study notes- 2019-11-30
 
2019 10-09 google ads analysis - eyeballing without proper math
2019 10-09 google ads analysis - eyeballing without proper math2019 10-09 google ads analysis - eyeballing without proper math
2019 10-09 google ads analysis - eyeballing without proper math
 
2019 malaysia car accident - total loss - diy third-party claim - simplifie...
2019   malaysia car accident - total loss - diy third-party claim - simplifie...2019   malaysia car accident - total loss - diy third-party claim - simplifie...
2019 malaysia car accident - total loss - diy third-party claim - simplifie...
 
2019 09 tech publishers in malaysia
2019 09 tech publishers in malaysia2019 09 tech publishers in malaysia
2019 09 tech publishers in malaysia
 
2019 09 web components
2019 09 web components2019 09 web components
2019 09 web components
 
Appendix - arc of development
Appendix  - arc of developmentAppendix  - arc of development
Appendix - arc of development
 
A Docker Diagram
A Docker DiagramA Docker Diagram
A Docker Diagram
 
Deep learning job pitch - personal bits
Deep learning job pitch - personal bitsDeep learning job pitch - personal bits
Deep learning job pitch - personal bits
 
Monolithic docker pattern
Monolithic docker patternMonolithic docker pattern
Monolithic docker pattern
 
What people think about Philosophers & Management Consultants
What people think about Philosophers & Management ConsultantsWhat people think about Philosophers & Management Consultants
What people think about Philosophers & Management Consultants
 
Process for Terminating Employees in Malaysia
Process for Terminating Employees in MalaysiaProcess for Terminating Employees in Malaysia
Process for Terminating Employees in Malaysia
 
Pour-over Coffee with the EK43
Pour-over Coffee with the EK43Pour-over Coffee with the EK43
Pour-over Coffee with the EK43
 
OTP application (with gen server child) - simple example
OTP application (with gen server child) - simple exampleOTP application (with gen server child) - simple example
OTP application (with gen server child) - simple example
 
ERTS diagram
ERTS diagramERTS diagram
ERTS diagram
 
Intro to Stock Trading for Programmers
Intro to Stock Trading for ProgrammersIntro to Stock Trading for Programmers
Intro to Stock Trading for Programmers
 
A Haphazard Petcha Kutcha
A Haphazard Petcha KutchaA Haphazard Petcha Kutcha
A Haphazard Petcha Kutcha
 

Recently uploaded

Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...Christina Lin
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 

Recently uploaded (20)

Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 

A Software Problem (and a maybe-solution)

  • 1. Isolating Various Parts of a Bigger Problem: What We Face in the World of Software Engineering Albeit invoking numerous unnecessary acronyms along the way. Problem Human requirements analysts are indispensable. Unsystematic thinkers require human requirements analysts to produce minimally systematic specifications (MSS-es). Problem Human minimally- viable- programmers are indispensable. Non-programmers require human programmers to compile MSS-es into minimally viable programs (MVP-s), and to deploy these in production environments. Problem Human systems engineers are indispensable. Non- systems- engineers require human systems engineers to modify MVP-s into reasonably scalable programs (RSP-s). ??? I’m not sure if there is a fourth stage, or not. Presumably, until you have a solution that smashes the first three problems into oblivion, getting to “arbitrarily scalable programs” is an academic concern.
  • 2. You can probably tell, that this is really bugging me. Problem Human requirements analysts are indispensable. Unsystematic thinkers require human requirements analysts to produce minimally systematic specifications (MSS-es). Problem Human minimally- viable- programmers are indispensable. Non-programmers require human programmers to compile MSS-es into minimally viable programs (MVP-s), and to deploy these in production environments. Problem Human systems engineers are indispensable. Non- systems- engineers require human systems engineers to modify MVP-s into reasonably scalable programs (RSP-s). Why must we tolerate this?
  • 3. Here’s how we currently do it. Problem Human requirements analysts are indispensable. Unsystematic thinkers require human requirements analysts to produce minimally systematic specifications (MSS-es). Problem Human minimally- viable- programmers are indispensable. Non-programmers require human programmers to compile MSS-es into minimally viable programs (MVP-s), and to deploy these in production environments. Problem Human systems engineers are indispensable. Non- systems- engineers require human systems engineers to modify MVP-s into reasonably scalable programs (RSP-s). “Rapid Application Development” Frameworks E.g. Rails, Django, Laravel, Spring, .NET
  • 4. Here’s what that leads to. Unsystematic thinkers require human requirements analysts to produce minimally systematic specifications (MSS-es). Non-programmers require human programmers to compile MSS-es into minimally viable programs (MVP-s), and to deploy these in production environments. Non- systems- engineers require human systems engineers to modify MVP-s into reasonably scalable programs (RSP-s). Framework X (e.g. Rails) Implemented by Joe. Now we have framework X.1 “Rails interpreted by Joe.” “Rails” Implemented by Petra. Now we have framework X.2 “Rails interpreted by Petra.” “Rails” Implemented by Chan. Now we have framework X.3 “Rails interpreted by Chan.” “Rails” PAINT ME A Now we have framework X… N RAINBOW This is stupid...
  • 5. 1337 Hacker: “Startups don’t need standards.” Tired Hacker: “Well, it's still a waste of founder money. Because every time they switch freelances, the standards run. So it's an overhead cost - not interesting. Have you seen some of these codebases? LOL The startups die because the software cost too much to pivot.”
  • 6. 1337 VC: “Don’t use freelances. Learn to code, or find a technical co-founder.” Tired Founder: “Fuck you.” 1337 VC: “No, YOU’re fucked.” (I’m sure we can do better than this.)
  • 7. Let’s revisit the root problem. Unsystematic thinkers require human requirements analysts to produce minimally systematic specifications (MSS-es). Non-programmers require human programmers to compile MSS-es into minimally viable programs (MVP-s), and to deploy these in production environments. Non- systems- engineers require human systems engineers to modify MVP-s into reasonably scalable programs (RSP-s).
  • 8. We lack - a system, with a user-interface for non-technical users, - that can accurately capture their thoughts, - and store them in a digital data- structure. We lack - a compiler that transforms the same data-structure into source-code which follows the regulations of a target open-source framework, with guarantees that the output is both (1) extensible and (2) scaleable for a low cost, by a certified team, and - a certification standard for such a team. We lack - a compiler that transforms this data- structure into a minimally viable program that works for a few users in a production environment, - quickly (time), - cheaply (money), - repeatedly (for agility). Can we reframe it, thus?
  • 9. We lack - a system, with a user-interface for non-technical users, - that can accurately capture their thoughts, - and store them in a digital data- structure. We lack - a compiler that transforms the same data-structure into source-code which follows the regulations of a target open-source framework, with guarantees that the output is both (1) extensible and (2) scaleable for a low cost, by a certified team, and - a certification standard for such a team. We lack - a compiler that transforms this data- structure into a minimally viable program that works for a few users in a production environment, - quickly (time), - cheaply (money), - repeatedly (for agility). TL; DR - we need to build... A. The data-structure. B. The user-interface. C. The platform-as-a-service for minimally viable programs. D. The software-as-a-service for standards-compliant whole-app-generation. E. The framework extensions / heuristics that guide further manual development.
  • 10. It’s a bit early for this, but if you’re looking for a growth trajectory... A. The data-structure. B. The user-interface. C. The platform-as-a-service for minimally viable programs. D. The software-as-a-service for standards-compliant whole-app-generation. E. The framework extensions / heuristics that guide further manual development. … all you have to do is make this network of services denser: ● your PaaS from C should extend to support the apps generated by D ● E should eventually target many different frameworks ● your UI from B should be the same UI that can be used for quick hacks on E
  • 11. A. The data-structure. B. The user-interface. C. The platform-as-a-service for minimally viable programs. D. The software-as-a-service for standards-compliant whole-app-generation. E. The framework extensions / heuristics that guide further manual development. … all you have to do is blur the lines here: ● your PaaS from C should extend to support the apps generated by D ● E should eventually target many different frameworks ● your UI from B should be the same UI that can be used for quick hacks on E These are B2B billables. We’re vertically integrating Software Development From Startup-scale To Enterprise-scale
  • 12. A. The data-structure. B. The user-interface. C. The platform-as-a-service for minimally viable programs. D. The software-as-a-service for standards-compliant whole-app-generation. E. The framework extensions / heuristics that guide further manual development. These are non-trivial problems. Cognitive Modelling Human- computer interaction PaaS Scale Enterprise SaaS SLAs Meta-systems Architectures
  • 13. Vacationeering 17 July 2015 Thank heavens for breaks in between paid work. I’d been meaning to work on this, but hadn’t had time to think about it properly. I started out as a business- user in 2008, and then tried to learn how to code web applications in order to build my own projects. But I became dissatisfied with the ecosystem of software development, in general. These are my current thoughts about a broader problem in software development.
  • 14. And then? People keep asking me why I don’t work on my own startup. Well, for starters, this is the size of problem that typically interests me. I have always thought it would take many years to gain enough experience to attack problems of this magnitude, and so here I am chipping away at them. It’s the first time I’ve had space to consolidate my thoughts on this matter, and so I haven’t decided which part of the problem to work on next, or if I should just ask around for VC interest in the problem in general.
  • 15. Later, later. We’ll leave other problems to another day, and another slide deck. As indicated at the beginning, there are many problems that concern me, such as the efficiency of standard mathematical notion, the digitisation of consciousness, the efficiency of tertiary pedagogies, and the computational exploration of alternatives to Standard Theory [though perhaps, I should first aim to properly grasp Standard Theory]. - Jerng