SlideShare a Scribd company logo
1 of 27
Download to read offline
Software
from Code into the Clouds
Code
a.   Code is a system of signals
     used to send messages
b.   Code is a system of symbols
     used for the purpose of identification or
     classification
c.   Code is a set of conventions
     governing behaviour
Pre Human Codes

pheromones
                 Gopal Aggarwal http://gopal1035.blogspot.com



                   body language




             http://commons.wikimedia.org/wiki/File:Genetic_code.svg



         information content in genetic material
Pre Computing Era
        < 1800
... consisted of all the
code used in
interactions between
humans
• Natural language evolved to
   become an important ingredient
   of the code used by humans       http://commons.wikimedia.org/wiki/
                                             File:Discussion.jpg


• Humans learned to translate
   between different natural
   languages
                                                ...
Proto Computing Era
    1800 - 1940
... now included all
the code used
within a computer
• Development of hardware that             http://commons.wikimedia.org/wiki/
                                      File:Babbage_Difference_Engine_%281%29.jpg
   understands a small code

• Hardware understanding is
   limited to arithmetic operations

• Humans translate arithmetic
                                                                      ...
   tasks into code with crude tools
Business Computing Era
        1970s
 ... now included all
 the code used in
 interactions between
 computers and                       http://commons.wikimedia.org/wiki/




                                                                                ...
                                               File:COBOL.png

 humans
 • Humans develop programming                                                     ...
    languages that borrow heavily
    from natural language

 • Compilers translate into a code
    that models the hardware

                                     http://commons.wikimedia.org/wiki/File:Cpc-wide-700.jpg
Network Computing Era
        1980s
 ... now included all
 the code used in
 interactions between
 computers
                                 http://upload.wikimedia.org/wikipedia/commons/thumb/
                                   4/41/Mislanet2003_3.jpg/120px-Mislanet2003_3.jpg
 • Humans use programming
    languages to express
    increasingly sophisticated
    network protocols

 • Focus shifts to computer-
    computer communication               ...            ...            ...
Internet Era
              1990s
... now consisted of
everything that is                  http://commons.wikimedia.org/wiki/

not hardware
                                    File:Internetanschl%C3%BCsse.PNG




• More and more of the code is                    ...
   expressed in programming
   languages

• The complexity that comes with



                                   ...




                                                                ...
   scale becomes the big
   productivity bottleneck

                                   ...            ...             ...
Web Application Era
       2000s
... increasingly
included interaction
with the web                         http://commons.wikimedia.org/wiki/File:Mfile.png



• The problem of scaling hardware
   and networks has been solved
                                                         ...
• The problem of scaling ...
   remains




                                      ...




                                                                       ...
• Making programming languages
   feel more like natural language
   doesn’t seem to help
                                                         ...
Cloud Era
                  2010s
... suffers from the
same problems as                    http://commons.wikimedia.org/wiki/

way back                               File:Cloud_computing_icon.svg




• when ... was all about exchange
   between humans

• Increasingly the artefacts
   exchanged are not hardware                       http://commons.wikimedia.org/wiki/
                                                             File:Discussion.jpg


• We are encoding ... in ...

• Hold that thought!                                            ...
...


... is a container of information that                    http://commons.wikimedia.org/wiki/
                                                             File:Photo_with_histogram.JPG
•   is created by a specific actor (human or a system)
•   is consumed by at least one actor (human or system)
•   represents a natural unit of work (for the creating and consuming actors)
•   may contain links to other ...
•   has a state and a life-cycle
...

We are encoding ... in ...
• ...

• <=> communication

• <=> information

• <=> programs

• <=> representations
Language Artefacts

A language artefact is a non-hardware artefact
•   information content of pheromones
•   information content of body language
•   live music
•   live speech
•   information content in traditional symbolic notations
•   program/diagram/hypertext/database content
•   information content of recorded sound/pictures/videos
•   information content of genetic material
Coding

All language artefacts are expressed in code
• Each code adheres to a syntax defined in a meta code
• The producer typically associates
   a desired intent with a language artefact
• The semantics of a language artefact are determined
   by the reactions of consumers, not by the producer
• The desired intent and the semantics of a syntax
   can only be aligned through
   extensive instantiation (by producers)
   and semantic processing (by consumers)
   of example language artefacts


                                                        http://commons.wikimedia.org/wiki/
                                                        File:Encoding_communication-1-.jpg
Meta Code
                               Syntax definitions
                              •     molecular structure
                              •     postures, gestures
                              •     instrument-specific sound production rules
                              •     pronunciation rules
                              •     grammars (for natural languages, mathematics, music, ...)
                              •     grammars (for human/computer languages)
                              •     audio formats, image formats, video formats
                              •     genetic code

                               Meta code is a subset of code (recursion!)
http://geekandpoke.typepad.com/geekandpoke/2010/04/meta.html
Modularity

Familiar language artefact modules
•   molecules
•   posture, gestures
                                                        low
•   beats, phrases, songs
                                                expressive
•   words, sentences
                                                    power
•   paragraphs, chapters, books, terms, equations
•   program/diagram/hypertext/database files
•   audio/image/video files
                                                        high
•   nucleotides, genes
Scalability
http://commons.wikimedia.org/wiki/
      File:Modular_origami.jpg



                  Modules preserve simplicity
                  •    molecules
                  •    posture, gestures
                                                                          low
                  •    beats, phrases, songs
                                                                 information
                  •    words, sentences
                                                                     content
                  •    paragraphs, chapters, books, terms, equations
                  •    program/diagram/hypertext/database files
                  •    audio/image/video files
                                                                          high
                  •    nucleotides, genes
Pain Point
http://commons.wikimedia.org/wiki/
  File:Ann_dependency_graph.png


               Dependency graphs must also be modularised
               •     molecules
               •     posture, gestures
                                                                                low
               •     beats, phrases, songs                              number of
                                                                    semantic links
               •     words, sentences                             between modules
               •     paragraphs, chapters, books, terms, equations
               •     program/diagram/hypertext/database files
               •     audio/image/video files
                                                                               high
               •     nucleotides, genes
Why Do We Need Google Search?
   The file system abstraction does not scale
   •   In conflict with human cognitive limitations
   •   The folder structure does not allow for multiple view points
   •   The number of semantic dependencies between files really hurts
   •   When it gets complex, humans draw pictures/diagrams,
   •   and tap into the power of collaboration & multi-brainstorming,
   •   and tap into multi-channel/media communication
Software



Software is an arbitrary
set of language artefacts
Models
                                                      Class : Mammal
                                                  dateOfBirth



Models are
language artefacts
that represent                     Class : Dog                          Class : Cat
                           isPoliceDog                      [2]                              [2]



the desired intent                                          [*]                              [*]




associated with a system
                           Dog : Jack                             Cat : Coco
                           {1/5/03, yes}                          {4/3/07}

in a human-friendly                        Dog : Susie
                                           {1/2/00, no}
                                                                               Cat : Peter
                                                                               {10/9/98}

syntax
Software



Software increasingly
consists of models
Modelling is about Clarity

All models are code
• a system of symbols used for
  • identification
  • classification in the sense of grouping
• a system of signals used to send messages
• a set of conventions governing behaviour
Modelling is meta coding
to improve clarity of code
Communication Costs

Not all code is a model
• a system of signals that includes a
   translation of messages to deal with someone else’s syntax
• a system of symbols used for
   classification in the sense of obfuscation or encryption




                                 http://commons.wikimedia.org/wiki/File:Encryption_-_decryption.svg
Modelling
Language
Design                                   http://commons.wikimedia.org/wiki/File:Human_Cognition.jpg




 Modelling language design
 is a balancing act between simplicity
 and not compromising the desired intent
 • Focus is on the view point of human cognitive ability
 • Modelling languages often make use of multiple syntax elements
    (visual containers, visual symbols, text, mathematical expressions)
 • Syntax elements are either borrowed from existing language artefacts,
    or are designed and incrementally refined in close collaboration with
    the user community
Evolution


Software continuously evolves,
whether we like it or not
Software shapes us
and we attempt to shape software
A dynamic system
with increasingly fast feedback loops
More Information
The Role of Artefacts            tiny.cc/artefacts
From Muddling to Modelling       tiny.cc/muddleToModel
Model Oriented Domain Analysis   tiny.cc/domainanalysis

Multi-Level Modelling            tiny.cc/gmodel

                                 tiny.cc/sematpos_jbe,
Perspective on SEMAT
                                 tiny.cc/sematslides_jbe

Denotational Semantics           tiny.cc/densem



              Thank you
    Jorn Bettin                   jbe @ sofismo.ch
Software is Models                www.sofismo.ch

More Related Content

Viewers also liked

Multi Level Modelling
Multi Level ModellingMulti Level Modelling
Multi Level ModellingJorn Bettin
 
A Guide to Effective Benchmarking of Applications Development
A Guide to Effective Benchmarking of Applications DevelopmentA Guide to Effective Benchmarking of Applications Development
A Guide to Effective Benchmarking of Applications DevelopmentComputer Aid, Inc
 
The nature of management, managers and their
The nature of management, managers and theirThe nature of management, managers and their
The nature of management, managers and theirMuXamil Haider
 
From Muddling to Modelling
From Muddling to ModellingFrom Muddling to Modelling
From Muddling to ModellingJorn Bettin
 
Charles E. Lindblom: The science of muddling through.
Charles E. Lindblom: The science of muddling through. Charles E. Lindblom: The science of muddling through.
Charles E. Lindblom: The science of muddling through. Chalitha Priyadarshani
 
Ppt science muddling_critique(joseph)
Ppt science muddling_critique(joseph)Ppt science muddling_critique(joseph)
Ppt science muddling_critique(joseph)nida19
 
Decision making theory and process
Decision making theory and processDecision making theory and process
Decision making theory and processArdha
 
Organisational Decision Making models
Organisational Decision Making modelsOrganisational Decision Making models
Organisational Decision Making modelsKalpana Udhaya
 
21. Decision making model
21. Decision making model21. Decision making model
21. Decision making modelNBHS
 

Viewers also liked (9)

Multi Level Modelling
Multi Level ModellingMulti Level Modelling
Multi Level Modelling
 
A Guide to Effective Benchmarking of Applications Development
A Guide to Effective Benchmarking of Applications DevelopmentA Guide to Effective Benchmarking of Applications Development
A Guide to Effective Benchmarking of Applications Development
 
The nature of management, managers and their
The nature of management, managers and theirThe nature of management, managers and their
The nature of management, managers and their
 
From Muddling to Modelling
From Muddling to ModellingFrom Muddling to Modelling
From Muddling to Modelling
 
Charles E. Lindblom: The science of muddling through.
Charles E. Lindblom: The science of muddling through. Charles E. Lindblom: The science of muddling through.
Charles E. Lindblom: The science of muddling through.
 
Ppt science muddling_critique(joseph)
Ppt science muddling_critique(joseph)Ppt science muddling_critique(joseph)
Ppt science muddling_critique(joseph)
 
Decision making theory and process
Decision making theory and processDecision making theory and process
Decision making theory and process
 
Organisational Decision Making models
Organisational Decision Making modelsOrganisational Decision Making models
Organisational Decision Making models
 
21. Decision making model
21. Decision making model21. Decision making model
21. Decision making model
 

Similar to Software, from Code into the Clouds

More than a 1000 words
More than a 1000 wordsMore than a 1000 words
More than a 1000 wordsTimothy Kunau
 
internet jjjjjjbi but nnn n he jpkkhuy a lot
internet jjjjjjbi but nnn n he jpkkhuy a lotinternet jjjjjjbi but nnn n he jpkkhuy a lot
internet jjjjjjbi but nnn n he jpkkhuy a lotOENDRILDAS
 
Electronic Publishing 2.0: Reimagining the Publication and Preservation of E ...
Electronic Publishing 2.0: Reimagining the Publication and Preservation of E ...Electronic Publishing 2.0: Reimagining the Publication and Preservation of E ...
Electronic Publishing 2.0: Reimagining the Publication and Preservation of E ...Leonardo Flores
 
2015 bioinformatics python_introduction_wim_vancriekinge_vfinal
2015 bioinformatics python_introduction_wim_vancriekinge_vfinal2015 bioinformatics python_introduction_wim_vancriekinge_vfinal
2015 bioinformatics python_introduction_wim_vancriekinge_vfinalProf. Wim Van Criekinge
 
Using and Developing with Open Source Digital Forensics Software in Digital A...
Using and Developing with Open Source Digital Forensics Software in Digital A...Using and Developing with Open Source Digital Forensics Software in Digital A...
Using and Developing with Open Source Digital Forensics Software in Digital A...Mark Matienzo
 
Facsimiles of Text and Music from Distributed Resources
Facsimiles of Text and Music from Distributed ResourcesFacsimiles of Text and Music from Distributed Resources
Facsimiles of Text and Music from Distributed Resourcesblalbritton
 
2016 bioinformatics i_python_part_1_wim_vancriekinge
2016 bioinformatics i_python_part_1_wim_vancriekinge2016 bioinformatics i_python_part_1_wim_vancriekinge
2016 bioinformatics i_python_part_1_wim_vancriekingeProf. Wim Van Criekinge
 
I love free – transforming your classroom with web 2.0
I love free – transforming your classroom with web 2.0I love free – transforming your classroom with web 2.0
I love free – transforming your classroom with web 2.0Jan Coley
 
Principles of New Media [Fall 2012 RTF 319 Session 02]
Principles of New Media [Fall 2012 RTF 319 Session 02]Principles of New Media [Fall 2012 RTF 319 Session 02]
Principles of New Media [Fall 2012 RTF 319 Session 02]William J. Moner
 
ICT in teacher education, fundamentals of computer
ICT in teacher education, fundamentals of computerICT in teacher education, fundamentals of computer
ICT in teacher education, fundamentals of computerSHARMA EDUCATION
 
e-Services to Keep Your Digital Files Current
e-Services to Keep Your Digital Files Currente-Services to Keep Your Digital Files Current
e-Services to Keep Your Digital Files Currentpbajcsy
 
AICPA Leadership Retreat - Technology
AICPA Leadership Retreat - TechnologyAICPA Leadership Retreat - Technology
AICPA Leadership Retreat - TechnologyASAE
 
夜宴25期《Web的未来》
夜宴25期《Web的未来》夜宴25期《Web的未来》
夜宴25期《Web的未来》Koubei Banquet
 
Koubei banquet 25
Koubei banquet 25Koubei banquet 25
Koubei banquet 25Koubei UED
 

Similar to Software, from Code into the Clouds (20)

More than a 1000 words
More than a 1000 wordsMore than a 1000 words
More than a 1000 words
 
internet jjjjjjbi but nnn n he jpkkhuy a lot
internet jjjjjjbi but nnn n he jpkkhuy a lotinternet jjjjjjbi but nnn n he jpkkhuy a lot
internet jjjjjjbi but nnn n he jpkkhuy a lot
 
Electronic Publishing 2.0: Reimagining the Publication and Preservation of E ...
Electronic Publishing 2.0: Reimagining the Publication and Preservation of E ...Electronic Publishing 2.0: Reimagining the Publication and Preservation of E ...
Electronic Publishing 2.0: Reimagining the Publication and Preservation of E ...
 
2015 bioinformatics python_introduction_wim_vancriekinge_vfinal
2015 bioinformatics python_introduction_wim_vancriekinge_vfinal2015 bioinformatics python_introduction_wim_vancriekinge_vfinal
2015 bioinformatics python_introduction_wim_vancriekinge_vfinal
 
Digitization
DigitizationDigitization
Digitization
 
Using and Developing with Open Source Digital Forensics Software in Digital A...
Using and Developing with Open Source Digital Forensics Software in Digital A...Using and Developing with Open Source Digital Forensics Software in Digital A...
Using and Developing with Open Source Digital Forensics Software in Digital A...
 
I say emulate
I say emulateI say emulate
I say emulate
 
P1 2018 python
P1 2018 pythonP1 2018 python
P1 2018 python
 
P1 2017 python
P1 2017 pythonP1 2017 python
P1 2017 python
 
Facsimiles of Text and Music from Distributed Resources
Facsimiles of Text and Music from Distributed ResourcesFacsimiles of Text and Music from Distributed Resources
Facsimiles of Text and Music from Distributed Resources
 
2016 bioinformatics i_python_part_1_wim_vancriekinge
2016 bioinformatics i_python_part_1_wim_vancriekinge2016 bioinformatics i_python_part_1_wim_vancriekinge
2016 bioinformatics i_python_part_1_wim_vancriekinge
 
I love free – transforming your classroom with web 2.0
I love free – transforming your classroom with web 2.0I love free – transforming your classroom with web 2.0
I love free – transforming your classroom with web 2.0
 
Principles of New Media [Fall 2012 RTF 319 Session 02]
Principles of New Media [Fall 2012 RTF 319 Session 02]Principles of New Media [Fall 2012 RTF 319 Session 02]
Principles of New Media [Fall 2012 RTF 319 Session 02]
 
ICT in teacher education, fundamentals of computer
ICT in teacher education, fundamentals of computerICT in teacher education, fundamentals of computer
ICT in teacher education, fundamentals of computer
 
e-Services to Keep Your Digital Files Current
e-Services to Keep Your Digital Files Currente-Services to Keep Your Digital Files Current
e-Services to Keep Your Digital Files Current
 
AICPA Leadership Retreat - Technology
AICPA Leadership Retreat - TechnologyAICPA Leadership Retreat - Technology
AICPA Leadership Retreat - Technology
 
夜宴25期《Web的未来》
夜宴25期《Web的未来》夜宴25期《Web的未来》
夜宴25期《Web的未来》
 
Koubei banquet 25
Koubei banquet 25Koubei banquet 25
Koubei banquet 25
 
MULTMEDIA DATABASE.ppt
MULTMEDIA DATABASE.pptMULTMEDIA DATABASE.ppt
MULTMEDIA DATABASE.ppt
 
Unit 1
Unit 1Unit 1
Unit 1
 

More from Jorn Bettin

From collective insanity to organisational learning 2019 03 11 brisbane bus...
From collective insanity to organisational learning   2019 03 11 brisbane bus...From collective insanity to organisational learning   2019 03 11 brisbane bus...
From collective insanity to organisational learning 2019 03 11 brisbane bus...Jorn Bettin
 
From artificially intelligent systems towards real thinking tools and human s...
From artificially intelligent systems towards real thinking tools and human s...From artificially intelligent systems towards real thinking tools and human s...
From artificially intelligent systems towards real thinking tools and human s...Jorn Bettin
 
From collective insanity to organisational learning
From collective insanity to organisational learningFrom collective insanity to organisational learning
From collective insanity to organisational learningJorn Bettin
 
From artificially intelligent systems towards real thinking tools and human s...
From artificially intelligent systems towards real thinking tools and human s...From artificially intelligent systems towards real thinking tools and human s...
From artificially intelligent systems towards real thinking tools and human s...Jorn Bettin
 
From project to product mindset and onwards to product platform architectures
From project to product mindset and onwards to product platform architecturesFrom project to product mindset and onwards to product platform architectures
From project to product mindset and onwards to product platform architecturesJorn Bettin
 
Semantic Search – Do you know what I mean?
Semantic Search – Do you know what I mean?Semantic Search – Do you know what I mean?
Semantic Search – Do you know what I mean?Jorn Bettin
 
The Story of Life is Language
The Story of Life is LanguageThe Story of Life is Language
The Story of Life is LanguageJorn Bettin
 
Sharpening your collaborative edge
Sharpening your collaborative edgeSharpening your collaborative edge
Sharpening your collaborative edgeJorn Bettin
 
Curation of information and knowledge
Curation of information and knowledgeCuration of information and knowledge
Curation of information and knowledgeJorn Bettin
 
Advanced modelling made simple with the Gmodel metalanguage
Advanced modelling made simple with the Gmodel metalanguageAdvanced modelling made simple with the Gmodel metalanguage
Advanced modelling made simple with the Gmodel metalanguageJorn Bettin
 
Model Oriented Domain Analysis - Industrialized Software Specifications
Model Oriented Domain Analysis - Industrialized Software SpecificationsModel Oriented Domain Analysis - Industrialized Software Specifications
Model Oriented Domain Analysis - Industrialized Software SpecificationsJorn Bettin
 
Artefacts - Bringing Clarity & Simplicity to Modelling
Artefacts - Bringing Clarity & Simplicity to ModellingArtefacts - Bringing Clarity & Simplicity to Modelling
Artefacts - Bringing Clarity & Simplicity to ModellingJorn Bettin
 

More from Jorn Bettin (12)

From collective insanity to organisational learning 2019 03 11 brisbane bus...
From collective insanity to organisational learning   2019 03 11 brisbane bus...From collective insanity to organisational learning   2019 03 11 brisbane bus...
From collective insanity to organisational learning 2019 03 11 brisbane bus...
 
From artificially intelligent systems towards real thinking tools and human s...
From artificially intelligent systems towards real thinking tools and human s...From artificially intelligent systems towards real thinking tools and human s...
From artificially intelligent systems towards real thinking tools and human s...
 
From collective insanity to organisational learning
From collective insanity to organisational learningFrom collective insanity to organisational learning
From collective insanity to organisational learning
 
From artificially intelligent systems towards real thinking tools and human s...
From artificially intelligent systems towards real thinking tools and human s...From artificially intelligent systems towards real thinking tools and human s...
From artificially intelligent systems towards real thinking tools and human s...
 
From project to product mindset and onwards to product platform architectures
From project to product mindset and onwards to product platform architecturesFrom project to product mindset and onwards to product platform architectures
From project to product mindset and onwards to product platform architectures
 
Semantic Search – Do you know what I mean?
Semantic Search – Do you know what I mean?Semantic Search – Do you know what I mean?
Semantic Search – Do you know what I mean?
 
The Story of Life is Language
The Story of Life is LanguageThe Story of Life is Language
The Story of Life is Language
 
Sharpening your collaborative edge
Sharpening your collaborative edgeSharpening your collaborative edge
Sharpening your collaborative edge
 
Curation of information and knowledge
Curation of information and knowledgeCuration of information and knowledge
Curation of information and knowledge
 
Advanced modelling made simple with the Gmodel metalanguage
Advanced modelling made simple with the Gmodel metalanguageAdvanced modelling made simple with the Gmodel metalanguage
Advanced modelling made simple with the Gmodel metalanguage
 
Model Oriented Domain Analysis - Industrialized Software Specifications
Model Oriented Domain Analysis - Industrialized Software SpecificationsModel Oriented Domain Analysis - Industrialized Software Specifications
Model Oriented Domain Analysis - Industrialized Software Specifications
 
Artefacts - Bringing Clarity & Simplicity to Modelling
Artefacts - Bringing Clarity & Simplicity to ModellingArtefacts - Bringing Clarity & Simplicity to Modelling
Artefacts - Bringing Clarity & Simplicity to Modelling
 

Recently uploaded

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 

Recently uploaded (20)

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 

Software, from Code into the Clouds

  • 2. Code a. Code is a system of signals used to send messages b. Code is a system of symbols used for the purpose of identification or classification c. Code is a set of conventions governing behaviour
  • 3. Pre Human Codes pheromones Gopal Aggarwal http://gopal1035.blogspot.com body language http://commons.wikimedia.org/wiki/File:Genetic_code.svg information content in genetic material
  • 4. Pre Computing Era < 1800 ... consisted of all the code used in interactions between humans • Natural language evolved to become an important ingredient of the code used by humans http://commons.wikimedia.org/wiki/ File:Discussion.jpg • Humans learned to translate between different natural languages ...
  • 5. Proto Computing Era 1800 - 1940 ... now included all the code used within a computer • Development of hardware that http://commons.wikimedia.org/wiki/ File:Babbage_Difference_Engine_%281%29.jpg understands a small code • Hardware understanding is limited to arithmetic operations • Humans translate arithmetic ... tasks into code with crude tools
  • 6. Business Computing Era 1970s ... now included all the code used in interactions between computers and http://commons.wikimedia.org/wiki/ ... File:COBOL.png humans • Humans develop programming ... languages that borrow heavily from natural language • Compilers translate into a code that models the hardware http://commons.wikimedia.org/wiki/File:Cpc-wide-700.jpg
  • 7. Network Computing Era 1980s ... now included all the code used in interactions between computers http://upload.wikimedia.org/wikipedia/commons/thumb/ 4/41/Mislanet2003_3.jpg/120px-Mislanet2003_3.jpg • Humans use programming languages to express increasingly sophisticated network protocols • Focus shifts to computer- computer communication ... ... ...
  • 8. Internet Era 1990s ... now consisted of everything that is http://commons.wikimedia.org/wiki/ not hardware File:Internetanschl%C3%BCsse.PNG • More and more of the code is ... expressed in programming languages • The complexity that comes with ... ... scale becomes the big productivity bottleneck ... ... ...
  • 9. Web Application Era 2000s ... increasingly included interaction with the web http://commons.wikimedia.org/wiki/File:Mfile.png • The problem of scaling hardware and networks has been solved ... • The problem of scaling ... remains ... ... • Making programming languages feel more like natural language doesn’t seem to help ...
  • 10. Cloud Era 2010s ... suffers from the same problems as http://commons.wikimedia.org/wiki/ way back File:Cloud_computing_icon.svg • when ... was all about exchange between humans • Increasingly the artefacts exchanged are not hardware http://commons.wikimedia.org/wiki/ File:Discussion.jpg • We are encoding ... in ... • Hold that thought! ...
  • 11. ... ... is a container of information that http://commons.wikimedia.org/wiki/ File:Photo_with_histogram.JPG • is created by a specific actor (human or a system) • is consumed by at least one actor (human or system) • represents a natural unit of work (for the creating and consuming actors) • may contain links to other ... • has a state and a life-cycle
  • 12. ... We are encoding ... in ... • ... • <=> communication • <=> information • <=> programs • <=> representations
  • 13. Language Artefacts A language artefact is a non-hardware artefact • information content of pheromones • information content of body language • live music • live speech • information content in traditional symbolic notations • program/diagram/hypertext/database content • information content of recorded sound/pictures/videos • information content of genetic material
  • 14. Coding All language artefacts are expressed in code • Each code adheres to a syntax defined in a meta code • The producer typically associates a desired intent with a language artefact • The semantics of a language artefact are determined by the reactions of consumers, not by the producer • The desired intent and the semantics of a syntax can only be aligned through extensive instantiation (by producers) and semantic processing (by consumers) of example language artefacts http://commons.wikimedia.org/wiki/ File:Encoding_communication-1-.jpg
  • 15. Meta Code Syntax definitions • molecular structure • postures, gestures • instrument-specific sound production rules • pronunciation rules • grammars (for natural languages, mathematics, music, ...) • grammars (for human/computer languages) • audio formats, image formats, video formats • genetic code Meta code is a subset of code (recursion!) http://geekandpoke.typepad.com/geekandpoke/2010/04/meta.html
  • 16. Modularity Familiar language artefact modules • molecules • posture, gestures low • beats, phrases, songs expressive • words, sentences power • paragraphs, chapters, books, terms, equations • program/diagram/hypertext/database files • audio/image/video files high • nucleotides, genes
  • 17. Scalability http://commons.wikimedia.org/wiki/ File:Modular_origami.jpg Modules preserve simplicity • molecules • posture, gestures low • beats, phrases, songs information • words, sentences content • paragraphs, chapters, books, terms, equations • program/diagram/hypertext/database files • audio/image/video files high • nucleotides, genes
  • 18. Pain Point http://commons.wikimedia.org/wiki/ File:Ann_dependency_graph.png Dependency graphs must also be modularised • molecules • posture, gestures low • beats, phrases, songs number of semantic links • words, sentences between modules • paragraphs, chapters, books, terms, equations • program/diagram/hypertext/database files • audio/image/video files high • nucleotides, genes
  • 19. Why Do We Need Google Search? The file system abstraction does not scale • In conflict with human cognitive limitations • The folder structure does not allow for multiple view points • The number of semantic dependencies between files really hurts • When it gets complex, humans draw pictures/diagrams, • and tap into the power of collaboration & multi-brainstorming, • and tap into multi-channel/media communication
  • 20. Software Software is an arbitrary set of language artefacts
  • 21. Models Class : Mammal dateOfBirth Models are language artefacts that represent Class : Dog Class : Cat isPoliceDog [2] [2] the desired intent [*] [*] associated with a system Dog : Jack Cat : Coco {1/5/03, yes} {4/3/07} in a human-friendly Dog : Susie {1/2/00, no} Cat : Peter {10/9/98} syntax
  • 23. Modelling is about Clarity All models are code • a system of symbols used for • identification • classification in the sense of grouping • a system of signals used to send messages • a set of conventions governing behaviour Modelling is meta coding to improve clarity of code
  • 24. Communication Costs Not all code is a model • a system of signals that includes a translation of messages to deal with someone else’s syntax • a system of symbols used for classification in the sense of obfuscation or encryption http://commons.wikimedia.org/wiki/File:Encryption_-_decryption.svg
  • 25. Modelling Language Design http://commons.wikimedia.org/wiki/File:Human_Cognition.jpg Modelling language design is a balancing act between simplicity and not compromising the desired intent • Focus is on the view point of human cognitive ability • Modelling languages often make use of multiple syntax elements (visual containers, visual symbols, text, mathematical expressions) • Syntax elements are either borrowed from existing language artefacts, or are designed and incrementally refined in close collaboration with the user community
  • 26. Evolution Software continuously evolves, whether we like it or not Software shapes us and we attempt to shape software A dynamic system with increasingly fast feedback loops
  • 27. More Information The Role of Artefacts tiny.cc/artefacts From Muddling to Modelling tiny.cc/muddleToModel Model Oriented Domain Analysis tiny.cc/domainanalysis Multi-Level Modelling tiny.cc/gmodel tiny.cc/sematpos_jbe, Perspective on SEMAT tiny.cc/sematslides_jbe Denotational Semantics tiny.cc/densem Thank you Jorn Bettin jbe @ sofismo.ch Software is Models www.sofismo.ch