SlideShare ist ein Scribd-Unternehmen logo
1 von 27
Downloaden Sie, um offline zu lesen
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

Weitere ähnliche Inhalte

Andere mochten auch

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
 

Andere mochten auch (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
 

Ähnlich wie 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
 

Ähnlich wie 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
 

Mehr von 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
 

Mehr von 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
 

Kürzlich hochgeladen

SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 

Kürzlich hochgeladen (20)

SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 

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