SlideShare ist ein Scribd-Unternehmen logo
1 von 27
Downloaden Sie, um offline zu lesen
The
Developers
World
For Entrepreneurs, Managers & Designers
Developers are 

creative problem solvers who use words
and logic to “model” stuff with objects,
properties, methods, inheritance,
composition, apis, and frameworks, 

to build: web sites, web apps, mobile
apps, and iot in a repository on a stack
with tools and tests at scale for our
users.
Creative Problem
Solvers
• Inventive
• Adaptive
• Curios
• Thoughtful
• Passionate
• Abstract
'Treat your developers like creative
workers – or watch them leave'
Jeff Lawson, Twilio CEO
“[Software engineering] is perhaps the
most creative field imaginable. It’s just
your thoughts and a screen waiting to be
filled with code. In that screen you can
create anything.”
Nick Malik, CEO 

Vanguard Enterprise Architects
Who Use Words
• More than 690 Programming Languages
• Maybe 2300 depending on how you count
• Instructions for computers to read
• Best when written for people to read




 “Any fool can write code that a computer can understand. Good
programmers write code that humans can understand”

Martin Fowler, Chief Scientist at ThoughtWorks

Founder of the Agile Software & Extreme Programming Movements
And Logic
• Logic is making decisions based on something

that ‘thing’ is what we call a ‘variable’
• The most basic logic is an ‘if’ statement

to check if the ‘variable’ contains a value
• Algorithms are sets of 

logic that accomplish 

a task like a bubble sort 

or binary tree search

(collected into a ‘function’)
To “Model” Stuff
• Represent things in the outside world
• Into things in the inside world











With Objects
• Objects are things we’re trying to represent

usually figured out from modeling the problem

also called a class - a kind of thing
• Banana





Properties
• Properties are how you’d describe an object

also sometimes called attributes
• Banana.color or 

Banana.ripeness or

Monkey.hunger





Methods
• Methods are how we manipulate an object

by attaching functions to an object
• Monkey.eat() or Monkey.eat(Banana)









Inheritance
• A class can inherit from another ‘parent’ class
• The child class (also called a subclass) gets all the
properties and methods defined on the parent
• This makes things more

efficient
• Mammal.eat()

Monkey < Mammal

Person < Mammal
• NOW BOTH CAN MONCH
Composition
• Assemble useful features that cross the 

inheritance boundaries
• Cool because its very reusable

even across different codebases
• Tail.wiggle()

Monkey uses Tail

Snek uses Tail
APIs
• An application programming interface is a defined set of
objects and methods
• Defined by a third party to allow our code to interact with
their stuff – like an operating system letting us save a file
• Many modern services offer remote access to their apis to
allow us to get data or trigger jobs for them to do











Frameworks
• A collection of tools designed to make building a
particular kind of app easier
• An pre-assembled set of standardized parts to let
us focus on what’s unique about this project
• Simple things like buttons all the way to full login
systems with just a few steps or lines of code







To Build
Web Sites
• HTML for the content & structure
• CSS for the presentation & layout
• JavaScript for the interactivity







1.8 BILLION WEBSITES

Netcraft Survey
Web Apps
• Building desktop-class application experiences via
a browser and implemented with web technologies

HTML - CSS - JavaScript
• Deliver to a broader audience than a particular
operating system
• Think GMAIL!





Mobile Apps
• Applications delivered on mobile devices
• Fundamentally limited by screen size, attention
span and low bandwidth
• Touch-oriented user experiences
• Implications of always on
IOT
• The internet of things will connect more new smart
devices as we put smarts into everything we use
• 20 billion connected ‘smart things’ by 2020
• Implications of crappy security
• Even more of an always on presence





In a Repository
• The code lives in a directory called a repository
• A history of the code changes is stored in the repository
too (usually with a tool called git)
• When code changes are ready we ‘commit’ them into
the repository (and we can revert to previous commits if
we make a mistake)
• A copy of the repository usually lives on a server
someplace too

like GitHub

On a Stack
• The software is ‘deployed’ onto a server that provide
many layers of functionality
• The application sits between 

those layers to connect the 

user and their data





With Tools
• Code is written in text files, so the most
fundamental tool is the text editor
• Bigger text editors with integrated code cleanup or
parent object look-ups or whatever are called
integrated development environments (or IDE)
• Some tools provide graphic interfaces for building
layouts or modifying databases
• There are tools for visually building API services
And Tests
• Tests make new code better by considering the
edge cases
• Tests make new code safer because the tests show
you didn’t break anything else in the system
• Tests make it easier to cleanup old code — called
refactoring
• Tests are the only way to sleep at night
At Scale
• We can build a house or we can build a skyscraper,
but we can’t use the same foundation on both

















For Our Users
• Every decision is about what the user experiences,
and how that delivers value for that user
• That needs to be the top priority and should be part
of every decision we make together as a team













And We Wish You
Understood That
Code Monkey
Written by Jonathan Coulton
A Former Software Developer

Weitere ähnliche Inhalte

Was ist angesagt?

SenchaCon 2016: An Ext JS Dashboard for IoT Data - Dan Gallo
SenchaCon 2016: An Ext JS Dashboard for IoT Data - Dan Gallo   SenchaCon 2016: An Ext JS Dashboard for IoT Data - Dan Gallo
SenchaCon 2016: An Ext JS Dashboard for IoT Data - Dan Gallo Sencha
 
iPad Development Slides #ilta12
iPad Development Slides #ilta12iPad Development Slides #ilta12
iPad Development Slides #ilta12Ike Ellis
 
用Serverless技術快速開發line聊天機器人
用Serverless技術快速開發line聊天機器人用Serverless技術快速開發line聊天機器人
用Serverless技術快速開發line聊天機器人Kevin Luo
 
Hexagonal architecture - message-oriented software design
Hexagonal architecture  - message-oriented software designHexagonal architecture  - message-oriented software design
Hexagonal architecture - message-oriented software designMatthias Noback
 
Design for scale
Design for scaleDesign for scale
Design for scaleDoug Lampe
 
From the Monolith to Microservices - CraftConf 2015
From the Monolith to Microservices - CraftConf 2015From the Monolith to Microservices - CraftConf 2015
From the Monolith to Microservices - CraftConf 2015Randy Shoup
 
Bringing AI to the edge: On-premise Azure Cognitive Services
Bringing AI to the edge: On-premise Azure Cognitive Services Bringing AI to the edge: On-premise Azure Cognitive Services
Bringing AI to the edge: On-premise Azure Cognitive Services Luis Beltran
 
Class1
Class1Class1
Class1inti
 
Patrick Debois - From Serverless to Servicefull
Patrick Debois - From Serverless to ServicefullPatrick Debois - From Serverless to Servicefull
Patrick Debois - From Serverless to ServicefullServerlessConf
 

Was ist angesagt? (9)

SenchaCon 2016: An Ext JS Dashboard for IoT Data - Dan Gallo
SenchaCon 2016: An Ext JS Dashboard for IoT Data - Dan Gallo   SenchaCon 2016: An Ext JS Dashboard for IoT Data - Dan Gallo
SenchaCon 2016: An Ext JS Dashboard for IoT Data - Dan Gallo
 
iPad Development Slides #ilta12
iPad Development Slides #ilta12iPad Development Slides #ilta12
iPad Development Slides #ilta12
 
用Serverless技術快速開發line聊天機器人
用Serverless技術快速開發line聊天機器人用Serverless技術快速開發line聊天機器人
用Serverless技術快速開發line聊天機器人
 
Hexagonal architecture - message-oriented software design
Hexagonal architecture  - message-oriented software designHexagonal architecture  - message-oriented software design
Hexagonal architecture - message-oriented software design
 
Design for scale
Design for scaleDesign for scale
Design for scale
 
From the Monolith to Microservices - CraftConf 2015
From the Monolith to Microservices - CraftConf 2015From the Monolith to Microservices - CraftConf 2015
From the Monolith to Microservices - CraftConf 2015
 
Bringing AI to the edge: On-premise Azure Cognitive Services
Bringing AI to the edge: On-premise Azure Cognitive Services Bringing AI to the edge: On-premise Azure Cognitive Services
Bringing AI to the edge: On-premise Azure Cognitive Services
 
Class1
Class1Class1
Class1
 
Patrick Debois - From Serverless to Servicefull
Patrick Debois - From Serverless to ServicefullPatrick Debois - From Serverless to Servicefull
Patrick Debois - From Serverless to Servicefull
 

Ähnlich wie The Developers World

Choosing the right Technologies for your next unicorn.
Choosing the right Technologies for your next unicorn.Choosing the right Technologies for your next unicorn.
Choosing the right Technologies for your next unicorn.Gladson DSouza
 
Android application development
Android application developmentAndroid application development
Android application developmentLinh Vi Tường
 
Agile Secure Cloud Application Development Management
Agile Secure Cloud Application Development ManagementAgile Secure Cloud Application Development Management
Agile Secure Cloud Application Development ManagementAdam Getchell
 
Matteo Gazzurelli - Andorid introduction - Google Dev Fest 2013
Matteo Gazzurelli - Andorid introduction - Google Dev Fest 2013Matteo Gazzurelli - Andorid introduction - Google Dev Fest 2013
Matteo Gazzurelli - Andorid introduction - Google Dev Fest 2013DuckMa
 
Cara Tepat Menjadi iOS Developer Expert - Gilang Ramadhan
Cara Tepat Menjadi iOS Developer Expert - Gilang RamadhanCara Tepat Menjadi iOS Developer Expert - Gilang Ramadhan
Cara Tepat Menjadi iOS Developer Expert - Gilang RamadhanDicodingEvent
 
Angular mobile angular_u
Angular mobile angular_uAngular mobile angular_u
Angular mobile angular_uDoris Chen
 
Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Nuxeo
 
Docs Like Code: Strategies and Stories
Docs Like Code: Strategies and StoriesDocs Like Code: Strategies and Stories
Docs Like Code: Strategies and StoriesAnne Gentle
 
DevOps Friendly Doc Publishing for APIs & Microservices
DevOps Friendly Doc Publishing for APIs & MicroservicesDevOps Friendly Doc Publishing for APIs & Microservices
DevOps Friendly Doc Publishing for APIs & MicroservicesSonatype
 
Docs as Part of the Product - Open Source Summit North America 2018
Docs as Part of the Product - Open Source Summit North America 2018Docs as Part of the Product - Open Source Summit North America 2018
Docs as Part of the Product - Open Source Summit North America 2018Den Delimarsky
 
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
(SPOT205) 5 Lessons for Managing Massive IT Transformation ProjectsAmazon Web Services
 
Introduction to Android Development and Security
Introduction to Android Development and SecurityIntroduction to Android Development and Security
Introduction to Android Development and SecurityKelwin Yang
 
Canada DevOps Summit 2020 Presentation Nov_03_2020
Canada DevOps Summit 2020 Presentation Nov_03_2020Canada DevOps Summit 2020 Presentation Nov_03_2020
Canada DevOps Summit 2020 Presentation Nov_03_2020Varun Manik
 
Engineering Culture and Infrastructure
Engineering Culture and InfrastructureEngineering Culture and Infrastructure
Engineering Culture and InfrastructureSchubert Zhang
 
Building mobile apps with PhoneGap and Backbone
Building mobile apps with PhoneGap and BackboneBuilding mobile apps with PhoneGap and Backbone
Building mobile apps with PhoneGap and BackboneTroy Miles
 
Starting from scratch in 2017
Starting from scratch in 2017Starting from scratch in 2017
Starting from scratch in 2017Stefano Bonetta
 
8. Software Development Security
8. Software Development Security8. Software Development Security
8. Software Development SecuritySam Bowne
 
Rich Internet Applications and Flex - 1
Rich Internet Applications and Flex - 1Rich Internet Applications and Flex - 1
Rich Internet Applications and Flex - 1Vijay Kalangi
 

Ähnlich wie The Developers World (20)

Choosing the right Technologies for your next unicorn.
Choosing the right Technologies for your next unicorn.Choosing the right Technologies for your next unicorn.
Choosing the right Technologies for your next unicorn.
 
Android application development
Android application developmentAndroid application development
Android application development
 
Agile Secure Cloud Application Development Management
Agile Secure Cloud Application Development ManagementAgile Secure Cloud Application Development Management
Agile Secure Cloud Application Development Management
 
Matteo Gazzurelli - Andorid introduction - Google Dev Fest 2013
Matteo Gazzurelli - Andorid introduction - Google Dev Fest 2013Matteo Gazzurelli - Andorid introduction - Google Dev Fest 2013
Matteo Gazzurelli - Andorid introduction - Google Dev Fest 2013
 
Cara Tepat Menjadi iOS Developer Expert - Gilang Ramadhan
Cara Tepat Menjadi iOS Developer Expert - Gilang RamadhanCara Tepat Menjadi iOS Developer Expert - Gilang Ramadhan
Cara Tepat Menjadi iOS Developer Expert - Gilang Ramadhan
 
Angular mobile angular_u
Angular mobile angular_uAngular mobile angular_u
Angular mobile angular_u
 
Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011
 
Docs Like Code: Strategies and Stories
Docs Like Code: Strategies and StoriesDocs Like Code: Strategies and Stories
Docs Like Code: Strategies and Stories
 
DevOps Friendly Doc Publishing for APIs & Microservices
DevOps Friendly Doc Publishing for APIs & MicroservicesDevOps Friendly Doc Publishing for APIs & Microservices
DevOps Friendly Doc Publishing for APIs & Microservices
 
Docs as Part of the Product - Open Source Summit North America 2018
Docs as Part of the Product - Open Source Summit North America 2018Docs as Part of the Product - Open Source Summit North America 2018
Docs as Part of the Product - Open Source Summit North America 2018
 
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
 
Introduction to Android Development and Security
Introduction to Android Development and SecurityIntroduction to Android Development and Security
Introduction to Android Development and Security
 
Canada DevOps Summit 2020 Presentation Nov_03_2020
Canada DevOps Summit 2020 Presentation Nov_03_2020Canada DevOps Summit 2020 Presentation Nov_03_2020
Canada DevOps Summit 2020 Presentation Nov_03_2020
 
Docs Like Code
Docs Like CodeDocs Like Code
Docs Like Code
 
Devops
DevopsDevops
Devops
 
Engineering Culture and Infrastructure
Engineering Culture and InfrastructureEngineering Culture and Infrastructure
Engineering Culture and Infrastructure
 
Building mobile apps with PhoneGap and Backbone
Building mobile apps with PhoneGap and BackboneBuilding mobile apps with PhoneGap and Backbone
Building mobile apps with PhoneGap and Backbone
 
Starting from scratch in 2017
Starting from scratch in 2017Starting from scratch in 2017
Starting from scratch in 2017
 
8. Software Development Security
8. Software Development Security8. Software Development Security
8. Software Development Security
 
Rich Internet Applications and Flex - 1
Rich Internet Applications and Flex - 1Rich Internet Applications and Flex - 1
Rich Internet Applications and Flex - 1
 

Kürzlich hochgeladen

Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
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
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
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
 

Kürzlich hochgeladen (20)

Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
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
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
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
 

The Developers World

  • 2. Developers are 
 creative problem solvers who use words and logic to “model” stuff with objects, properties, methods, inheritance, composition, apis, and frameworks, 
 to build: web sites, web apps, mobile apps, and iot in a repository on a stack with tools and tests at scale for our users.
  • 3. Creative Problem Solvers • Inventive • Adaptive • Curios • Thoughtful • Passionate • Abstract 'Treat your developers like creative workers – or watch them leave' Jeff Lawson, Twilio CEO “[Software engineering] is perhaps the most creative field imaginable. It’s just your thoughts and a screen waiting to be filled with code. In that screen you can create anything.” Nick Malik, CEO 
 Vanguard Enterprise Architects
  • 4. Who Use Words • More than 690 Programming Languages • Maybe 2300 depending on how you count • Instructions for computers to read • Best when written for people to read
 
 
 “Any fool can write code that a computer can understand. Good programmers write code that humans can understand”
 Martin Fowler, Chief Scientist at ThoughtWorks
 Founder of the Agile Software & Extreme Programming Movements
  • 5. And Logic • Logic is making decisions based on something
 that ‘thing’ is what we call a ‘variable’ • The most basic logic is an ‘if’ statement
 to check if the ‘variable’ contains a value • Algorithms are sets of 
 logic that accomplish 
 a task like a bubble sort 
 or binary tree search
 (collected into a ‘function’)
  • 6. To “Model” Stuff • Represent things in the outside world • Into things in the inside world
 
 
 
 
 

  • 7. With Objects • Objects are things we’re trying to represent
 usually figured out from modeling the problem
 also called a class - a kind of thing • Banana
 
 

  • 8. Properties • Properties are how you’d describe an object
 also sometimes called attributes • Banana.color or 
 Banana.ripeness or
 Monkey.hunger
 
 

  • 9. Methods • Methods are how we manipulate an object
 by attaching functions to an object • Monkey.eat() or Monkey.eat(Banana)
 
 
 
 

  • 10. Inheritance • A class can inherit from another ‘parent’ class • The child class (also called a subclass) gets all the properties and methods defined on the parent • This makes things more
 efficient • Mammal.eat()
 Monkey < Mammal
 Person < Mammal • NOW BOTH CAN MONCH
  • 11. Composition • Assemble useful features that cross the 
 inheritance boundaries • Cool because its very reusable
 even across different codebases • Tail.wiggle()
 Monkey uses Tail
 Snek uses Tail
  • 12. APIs • An application programming interface is a defined set of objects and methods • Defined by a third party to allow our code to interact with their stuff – like an operating system letting us save a file • Many modern services offer remote access to their apis to allow us to get data or trigger jobs for them to do
 
 
 
 
 

  • 13. Frameworks • A collection of tools designed to make building a particular kind of app easier • An pre-assembled set of standardized parts to let us focus on what’s unique about this project • Simple things like buttons all the way to full login systems with just a few steps or lines of code
 
 
 

  • 15. Web Sites • HTML for the content & structure • CSS for the presentation & layout • JavaScript for the interactivity
 
 
 
 1.8 BILLION WEBSITES
 Netcraft Survey
  • 16. Web Apps • Building desktop-class application experiences via a browser and implemented with web technologies
 HTML - CSS - JavaScript • Deliver to a broader audience than a particular operating system • Think GMAIL!
 
 

  • 17. Mobile Apps • Applications delivered on mobile devices • Fundamentally limited by screen size, attention span and low bandwidth • Touch-oriented user experiences • Implications of always on
  • 18. IOT • The internet of things will connect more new smart devices as we put smarts into everything we use • 20 billion connected ‘smart things’ by 2020 • Implications of crappy security • Even more of an always on presence
 
 

  • 19. In a Repository • The code lives in a directory called a repository • A history of the code changes is stored in the repository too (usually with a tool called git) • When code changes are ready we ‘commit’ them into the repository (and we can revert to previous commits if we make a mistake) • A copy of the repository usually lives on a server someplace too
 like GitHub

  • 20. On a Stack • The software is ‘deployed’ onto a server that provide many layers of functionality • The application sits between 
 those layers to connect the 
 user and their data
 
 

  • 21. With Tools • Code is written in text files, so the most fundamental tool is the text editor • Bigger text editors with integrated code cleanup or parent object look-ups or whatever are called integrated development environments (or IDE) • Some tools provide graphic interfaces for building layouts or modifying databases • There are tools for visually building API services
  • 22. And Tests • Tests make new code better by considering the edge cases • Tests make new code safer because the tests show you didn’t break anything else in the system • Tests make it easier to cleanup old code — called refactoring • Tests are the only way to sleep at night
  • 23. At Scale • We can build a house or we can build a skyscraper, but we can’t use the same foundation on both
 
 
 
 
 
 
 
 

  • 24. For Our Users • Every decision is about what the user experiences, and how that delivers value for that user • That needs to be the top priority and should be part of every decision we make together as a team
 
 
 
 
 
 

  • 25. And We Wish You Understood That
  • 26.
  • 27. Code Monkey Written by Jonathan Coulton A Former Software Developer