SlideShare a Scribd company logo
Pharo. One Year Later

M. Denker
http://www.pharo-project.org
Smalltalks 2010
             Smalltalks2010


 Text
Pharo?
Why do we not continuously improve

           what we use


             ????
Pharo

A flexible environment to support the
    innovation in/of Smalltalk.
Pharo

A robust environment to support doing
       business in Smalltalk.
And?
Since Last year

 535 Updates
 >1050 Issues closed
 5 Pharo Sprints
 1 “Deep into Smalltalk” School (Focus: VM)
Since Last year

 1.3 is released
 1.4 alpha started
 Jenkins server for testing release
 All VMs are automatically generated using Jenkins
Since Last year

 Hired Igor Stasenko Nov 2011


 Second Full Time Engineer in Feb 2012


 Pharo Consortium: Got OK from INRIA
Industry Success

Seaside.st
Yesplan.be, netstyle.ch, pinesoft.co.uk.....
Pier, DrGeo
Cmsbox.ch: Content Management
beta9.be: T3 Easy (Pharo server side)
Moose: www.moose-technology.org
Airflowing
Community Projects
Better widgets (A. Plantec, G. Chambers, B. van Ryseghem)

Better browsers (B. van Ryseghem, C. Bruni)

Key mapper (G. Polito)

Serializer (M. Dias, M. Martinez-Peck), Full Proxy (M. Martinez-Peck)

New source code model: Ring (V. Uquillas Gomez, A. Kellens, S. Ducasse)

New compiler (J. Ressia/M. Denker/JB Arnaud)

Zoomable interface (I. Stasenko)

Bootstrap (B. van Ryseghem/S. Ducasse)

Package distribution infrastructure (D. Henrichs)

Network (Zinc S. van Caekenberghe, Ocean N. Bouraqadi, L. Fabresse, J. Laval)

Remote Smalltalk (N. Papoulias and N. Bouraqadi)
It is Working!
Progress is
Accelerating
Feedback Loop
Roadmap
Code Model Infrastructure
Able to query all the versions
What were the senders of this method in version
13168?
What is the diff between the senders in the past and
the one now?
Support for merging
Distributed source code             (Veronica Uquillaz-Gomez)
Code Model Infrastructure
Ring (V. Uquillaz Gomes/A. Kellens/S.Ducasse)
  Source code metamodel
  API compatible with Smalltalk objects
Adding layers on top of it
Porting all the tools to use it!
Reuse tools
Next Steps


Server for queries
New source code model
Athens Graphics
New Canvas
 Vector Graphics API
 Layered Architecture
   Backend Cairo /
   OpenGL OpenVG....


 (Igor Stasenko)
Next Steps

OpenGL bindings using NativeBoost
    done on Windows
Stabilize API
Adapt Morphic
Opal
We need a more flexible
and simpler compiler
Hooks for DSL support
Better API
New generation of tools


(J. Ressia/M. Denker/JB Arnaud)
Next Steps


To be added in 1.5
Throw away the old compiler
Then improving the API
Fuel: Fast Serialization

 Don’t use ImageSegment (removed in 1.4)
   Fuel is faster (!!)
   Much more flexible and easier to understand


 Done by M. Diaz, M. Martinez-Peck, (T. Bourgeois & S.
 Ducasse)
Next Steps


Replace existing serializers
Migration path
Binary code loader
Scripting Syntax: Coral
 We want to write scripts in Pharo :)
   Headless
   REPL
   Good OS interface (OSProcess for now)
 So we get Coral
   (D. Pollet and S. Ducasse)
Browsers and Tools

Throw away StringHolder hierarchy (Yes Browser
inherits from StringHolder)
Browser based on a model
Nautilus by B. van Ryseghem
Glamour
Mini Image and Bootstrap

Pavel’s Mini image
  4.2 mb for Seaside
Work on declarative bootstrapped kernel
  Analyzed existing solutions
Pharo Consortium


How to sustain Pharo?
How to structure the community?
Can we always rely on peoples free time?
Consortium

You can participate to the consortium:
  Pay a fee (company)
  Individual (free)


The consortium will pay a full-time engineer to support
Pharo tasks
Consortium FAQ

Pharo will stay free!
No negative impact: just a better Pharo
Idea: Organizations should be able to pay
  Membership
  Morale License
When

Started discussions with INRIA two years ago
INRIA is ok to put money on the table
  1 Engineer for one Year
More than 25 companies are interested
Join!
Thanks
    Alexandre Bergel
                            Matthew Fulmer
                            Hilaire Fernandes
                                Julian Fitzell
                                                    Laurent Laffont
                                                    Joseph Pelrine
      Cedric Beler             Tudor Girba
                                                      Alain Plantec
   Torsten Bergmann            Sean Glazier
                                                    Damien Pollet
     Matthias Berth          Norbert Hartl
                                                     Lukas Renggli
      Ralph Boland            Dale Henrichs
                                                      Jorge Ressia
    Noury Bouraqadi          Reinout Heeck
                                                     Mike Roberts
      Brian Brown           Eric Hochmeister
                                                   Robert Rothwell
    Guillermo Polito           Keith Hodges
                                                  David Rotlisberger
    Damien Cassou        Henrik Sperre Johansen
                                                    Michael Rueger
     Nicolas Cellier         Pavel Krivanek
                                                       Bill Schwab
    Gary Chambers              Adrian Kuhn
                                                     Niko Schwarz
      Miguel Coba            Adrian Lienhard
                                                     Igor Stasenko
     Gabriel Cotelli         Andreas Leidig
                                                  Francois Stephany
    Carlos Crosetti      Mariano Martinez Peck
                                                   Serge Stinckwich
    Cyrille Delaunay           Dave Mason
                                                     Mathieu Suen
     Simon Denier             John McIntosh
                                                  Lawrence Trutter
     Marcus Denker         Johnaton Meichtry
                                                    Andrew Tween
   Ramiro Diaz Trepat          Eliot Miranda
                                                  martin von loewis
   Stephane Ducasse      Hernan Morales Durand
                                                    Andres Valloud
 Morales Durand Hernan       Philipp Marshall
                                                      Juan Vuletich
  Stephan Eggermont             Jannik Laval
                                                      Steven Wirts
      Luc Fabresse            Yann Monclair
                                                  Hernan Wilkinson
                            Oscar Nierstrasz

More Related Content

Similar to Pharo. One Year Later

Businessmodelgeneration preview 71358
Businessmodelgeneration preview 71358Businessmodelgeneration preview 71358
Businessmodelgeneration preview 71358
RicardoAV1990
 
Businessmodelgeneration preview
Businessmodelgeneration previewBusinessmodelgeneration preview
Businessmodelgeneration preview
Alex Oliva
 
Businessmodelgeneration Preview
Businessmodelgeneration PreviewBusinessmodelgeneration Preview
Businessmodelgeneration Preview
Fadi Ghaleb Zaid, MSc, CFA, CSMA
 
Businessmodelgeneration Preview
Businessmodelgeneration PreviewBusinessmodelgeneration Preview
Businessmodelgeneration Preview
Patrick van Abbema, PMP, CBAP, CSP
 
Business models
Business modelsBusiness models
Businessmodelgenerationpreview 100125081253-phpapp01
Businessmodelgenerationpreview 100125081253-phpapp01Businessmodelgenerationpreview 100125081253-phpapp01
Businessmodelgenerationpreview 100125081253-phpapp01
Emanuele Silveira
 
Business model generation
Business model generationBusiness model generation
Business model generation
Ricardo Vieira
 
Business Model Generation
Business Model GenerationBusiness Model Generation
Business Model Generation
Bridge2Food
 
Businessmodelgeneration preview
Businessmodelgeneration previewBusinessmodelgeneration preview
Businessmodelgeneration preview
Emprèn UPF
 
Businessmodelgeneration preview
Businessmodelgeneration previewBusinessmodelgeneration preview
Businessmodelgeneration preview
joanrasconnovoa
 
Business model generation
Business model generationBusiness model generation
Business model generation
Hanseong Kim
 
Businessmodelgenerationpreview 100125081253-phpapp01
Businessmodelgenerationpreview 100125081253-phpapp01Businessmodelgenerationpreview 100125081253-phpapp01
Businessmodelgenerationpreview 100125081253-phpapp01
Gabriel Capuia
 
Businessmodelgenerationpreview 100125081253-phpapp01
Businessmodelgenerationpreview 100125081253-phpapp01Businessmodelgenerationpreview 100125081253-phpapp01
Businessmodelgenerationpreview 100125081253-phpapp01
Newlink
 
Ostenwalder Business Model Generation Preview
Ostenwalder Business Model Generation PreviewOstenwalder Business Model Generation Preview
Ostenwalder Business Model Generation Preview
Rob Blaauboer
 
Businessmodelcanvas 100604022417 Phpapp01
Businessmodelcanvas 100604022417 Phpapp01Businessmodelcanvas 100604022417 Phpapp01
Businessmodelcanvas 100604022417 Phpapp01
Ian Kelly
 
Osterwalders rammeverk
Osterwalders rammeverkOsterwalders rammeverk
Osterwalders rammeverk
markup_consulting
 
UK HealthCare IT Strategic Plan
UK HealthCare IT Strategic PlanUK HealthCare IT Strategic Plan
UK HealthCare IT Strategic Plan
Tim Tarnowski
 
State of the Word 2014
State of the Word 2014State of the Word 2014
State of the Word 2014
photomatt
 
Codestrong 2012 keynote nolan wright, appcelerator's cto
Codestrong 2012 keynote   nolan wright, appcelerator's ctoCodestrong 2012 keynote   nolan wright, appcelerator's cto
Codestrong 2012 keynote nolan wright, appcelerator's cto
Axway Appcelerator
 
Bll 15 creatures of the waters
Bll 15   creatures of the watersBll 15   creatures of the waters
Bll 15 creatures of the waters
peacelawacademystudent
 

Similar to Pharo. One Year Later (20)

Businessmodelgeneration preview 71358
Businessmodelgeneration preview 71358Businessmodelgeneration preview 71358
Businessmodelgeneration preview 71358
 
Businessmodelgeneration preview
Businessmodelgeneration previewBusinessmodelgeneration preview
Businessmodelgeneration preview
 
Businessmodelgeneration Preview
Businessmodelgeneration PreviewBusinessmodelgeneration Preview
Businessmodelgeneration Preview
 
Businessmodelgeneration Preview
Businessmodelgeneration PreviewBusinessmodelgeneration Preview
Businessmodelgeneration Preview
 
Business models
Business modelsBusiness models
Business models
 
Businessmodelgenerationpreview 100125081253-phpapp01
Businessmodelgenerationpreview 100125081253-phpapp01Businessmodelgenerationpreview 100125081253-phpapp01
Businessmodelgenerationpreview 100125081253-phpapp01
 
Business model generation
Business model generationBusiness model generation
Business model generation
 
Business Model Generation
Business Model GenerationBusiness Model Generation
Business Model Generation
 
Businessmodelgeneration preview
Businessmodelgeneration previewBusinessmodelgeneration preview
Businessmodelgeneration preview
 
Businessmodelgeneration preview
Businessmodelgeneration previewBusinessmodelgeneration preview
Businessmodelgeneration preview
 
Business model generation
Business model generationBusiness model generation
Business model generation
 
Businessmodelgenerationpreview 100125081253-phpapp01
Businessmodelgenerationpreview 100125081253-phpapp01Businessmodelgenerationpreview 100125081253-phpapp01
Businessmodelgenerationpreview 100125081253-phpapp01
 
Businessmodelgenerationpreview 100125081253-phpapp01
Businessmodelgenerationpreview 100125081253-phpapp01Businessmodelgenerationpreview 100125081253-phpapp01
Businessmodelgenerationpreview 100125081253-phpapp01
 
Ostenwalder Business Model Generation Preview
Ostenwalder Business Model Generation PreviewOstenwalder Business Model Generation Preview
Ostenwalder Business Model Generation Preview
 
Businessmodelcanvas 100604022417 Phpapp01
Businessmodelcanvas 100604022417 Phpapp01Businessmodelcanvas 100604022417 Phpapp01
Businessmodelcanvas 100604022417 Phpapp01
 
Osterwalders rammeverk
Osterwalders rammeverkOsterwalders rammeverk
Osterwalders rammeverk
 
UK HealthCare IT Strategic Plan
UK HealthCare IT Strategic PlanUK HealthCare IT Strategic Plan
UK HealthCare IT Strategic Plan
 
State of the Word 2014
State of the Word 2014State of the Word 2014
State of the Word 2014
 
Codestrong 2012 keynote nolan wright, appcelerator's cto
Codestrong 2012 keynote   nolan wright, appcelerator's ctoCodestrong 2012 keynote   nolan wright, appcelerator's cto
Codestrong 2012 keynote nolan wright, appcelerator's cto
 
Bll 15 creatures of the waters
Bll 15   creatures of the watersBll 15   creatures of the waters
Bll 15 creatures of the waters
 

More from Marcus Denker

Soil And Pharo
Soil And PharoSoil And Pharo
Soil And Pharo
Marcus Denker
 
ConstantBlocks in Pharo11
ConstantBlocks in Pharo11ConstantBlocks in Pharo11
ConstantBlocks in Pharo11
Marcus Denker
 
Demo: Improved DoIt
Demo: Improved DoItDemo: Improved DoIt
Demo: Improved DoIt
Marcus Denker
 
First Class Variables as AST Annotations
First Class Variables as AST AnnotationsFirst Class Variables as AST Annotations
First Class Variables as AST Annotations
Marcus Denker
 
Supporting Pharo / Getting Pharo Support
Supporting Pharo / Getting Pharo SupportSupporting Pharo / Getting Pharo Support
Supporting Pharo / Getting Pharo Support
Marcus Denker
 
Lecture: "Advanced Reflection: MetaLinks"
Lecture: "Advanced Reflection: MetaLinks"Lecture: "Advanced Reflection: MetaLinks"
Lecture: "Advanced Reflection: MetaLinks"
Marcus Denker
 
thisContext in the Debugger
thisContext in the DebuggerthisContext in the Debugger
thisContext in the Debugger
Marcus Denker
 
Variables in Pharo
Variables in PharoVariables in Pharo
Variables in Pharo
Marcus Denker
 
Lecture. Advanced Reflection: MetaLinks
Lecture. Advanced Reflection: MetaLinksLecture. Advanced Reflection: MetaLinks
Lecture. Advanced Reflection: MetaLinks
Marcus Denker
 
Improving code completion for Pharo
Improving code completion for PharoImproving code completion for Pharo
Improving code completion for Pharo
Marcus Denker
 
VUB Brussels Lecture 2019: Advanced Reflection: MetaLinks
VUB Brussels Lecture 2019: Advanced Reflection: MetaLinksVUB Brussels Lecture 2019: Advanced Reflection: MetaLinks
VUB Brussels Lecture 2019: Advanced Reflection: MetaLinks
Marcus Denker
 
Slot Composition
Slot CompositionSlot Composition
Slot Composition
Marcus Denker
 
Lecture: Advanced Reflection. MetaLinks
Lecture: Advanced Reflection. MetaLinksLecture: Advanced Reflection. MetaLinks
Lecture: Advanced Reflection. MetaLinks
Marcus Denker
 
PHARO IOT
PHARO IOTPHARO IOT
PHARO IOT
Marcus Denker
 
Open-Source: An Infinite Game
Open-Source: An Infinite GameOpen-Source: An Infinite Game
Open-Source: An Infinite Game
Marcus Denker
 
Lecture: MetaLinks
Lecture: MetaLinksLecture: MetaLinks
Lecture: MetaLinks
Marcus Denker
 
PharoTechTalk: Contributing to Pharo
PharoTechTalk: Contributing to PharoPharoTechTalk: Contributing to Pharo
PharoTechTalk: Contributing to Pharo
Marcus Denker
 
Feedback Loops in Practice
Feedback Loops in PracticeFeedback Loops in Practice
Feedback Loops in Practice
Marcus Denker
 
Pharo6 - ESUG17
Pharo6 - ESUG17Pharo6 - ESUG17
Pharo6 - ESUG17
Marcus Denker
 
Pharo6
Pharo6Pharo6

More from Marcus Denker (20)

Soil And Pharo
Soil And PharoSoil And Pharo
Soil And Pharo
 
ConstantBlocks in Pharo11
ConstantBlocks in Pharo11ConstantBlocks in Pharo11
ConstantBlocks in Pharo11
 
Demo: Improved DoIt
Demo: Improved DoItDemo: Improved DoIt
Demo: Improved DoIt
 
First Class Variables as AST Annotations
First Class Variables as AST AnnotationsFirst Class Variables as AST Annotations
First Class Variables as AST Annotations
 
Supporting Pharo / Getting Pharo Support
Supporting Pharo / Getting Pharo SupportSupporting Pharo / Getting Pharo Support
Supporting Pharo / Getting Pharo Support
 
Lecture: "Advanced Reflection: MetaLinks"
Lecture: "Advanced Reflection: MetaLinks"Lecture: "Advanced Reflection: MetaLinks"
Lecture: "Advanced Reflection: MetaLinks"
 
thisContext in the Debugger
thisContext in the DebuggerthisContext in the Debugger
thisContext in the Debugger
 
Variables in Pharo
Variables in PharoVariables in Pharo
Variables in Pharo
 
Lecture. Advanced Reflection: MetaLinks
Lecture. Advanced Reflection: MetaLinksLecture. Advanced Reflection: MetaLinks
Lecture. Advanced Reflection: MetaLinks
 
Improving code completion for Pharo
Improving code completion for PharoImproving code completion for Pharo
Improving code completion for Pharo
 
VUB Brussels Lecture 2019: Advanced Reflection: MetaLinks
VUB Brussels Lecture 2019: Advanced Reflection: MetaLinksVUB Brussels Lecture 2019: Advanced Reflection: MetaLinks
VUB Brussels Lecture 2019: Advanced Reflection: MetaLinks
 
Slot Composition
Slot CompositionSlot Composition
Slot Composition
 
Lecture: Advanced Reflection. MetaLinks
Lecture: Advanced Reflection. MetaLinksLecture: Advanced Reflection. MetaLinks
Lecture: Advanced Reflection. MetaLinks
 
PHARO IOT
PHARO IOTPHARO IOT
PHARO IOT
 
Open-Source: An Infinite Game
Open-Source: An Infinite GameOpen-Source: An Infinite Game
Open-Source: An Infinite Game
 
Lecture: MetaLinks
Lecture: MetaLinksLecture: MetaLinks
Lecture: MetaLinks
 
PharoTechTalk: Contributing to Pharo
PharoTechTalk: Contributing to PharoPharoTechTalk: Contributing to Pharo
PharoTechTalk: Contributing to Pharo
 
Feedback Loops in Practice
Feedback Loops in PracticeFeedback Loops in Practice
Feedback Loops in Practice
 
Pharo6 - ESUG17
Pharo6 - ESUG17Pharo6 - ESUG17
Pharo6 - ESUG17
 
Pharo6
Pharo6Pharo6
Pharo6
 

Recently uploaded

UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
Data structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdfData structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdf
TIPNGVN2
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Zilliz
 

Recently uploaded (20)

UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
Data structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdfData structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdf
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
 

Pharo. One Year Later

  • 1. Pharo. One Year Later M. Denker http://www.pharo-project.org
  • 2. Smalltalks 2010 Smalltalks2010 Text
  • 3. Pharo? Why do we not continuously improve what we use ????
  • 4. Pharo A flexible environment to support the innovation in/of Smalltalk.
  • 5. Pharo A robust environment to support doing business in Smalltalk.
  • 7. Since Last year 535 Updates >1050 Issues closed 5 Pharo Sprints 1 “Deep into Smalltalk” School (Focus: VM)
  • 8. Since Last year 1.3 is released 1.4 alpha started Jenkins server for testing release All VMs are automatically generated using Jenkins
  • 9. Since Last year Hired Igor Stasenko Nov 2011 Second Full Time Engineer in Feb 2012 Pharo Consortium: Got OK from INRIA
  • 10. Industry Success Seaside.st Yesplan.be, netstyle.ch, pinesoft.co.uk..... Pier, DrGeo Cmsbox.ch: Content Management beta9.be: T3 Easy (Pharo server side) Moose: www.moose-technology.org Airflowing
  • 11. Community Projects Better widgets (A. Plantec, G. Chambers, B. van Ryseghem) Better browsers (B. van Ryseghem, C. Bruni) Key mapper (G. Polito) Serializer (M. Dias, M. Martinez-Peck), Full Proxy (M. Martinez-Peck) New source code model: Ring (V. Uquillas Gomez, A. Kellens, S. Ducasse) New compiler (J. Ressia/M. Denker/JB Arnaud) Zoomable interface (I. Stasenko) Bootstrap (B. van Ryseghem/S. Ducasse) Package distribution infrastructure (D. Henrichs) Network (Zinc S. van Caekenberghe, Ocean N. Bouraqadi, L. Fabresse, J. Laval) Remote Smalltalk (N. Papoulias and N. Bouraqadi)
  • 16. Code Model Infrastructure Able to query all the versions What were the senders of this method in version 13168? What is the diff between the senders in the past and the one now? Support for merging Distributed source code (Veronica Uquillaz-Gomez)
  • 17. Code Model Infrastructure Ring (V. Uquillaz Gomes/A. Kellens/S.Ducasse) Source code metamodel API compatible with Smalltalk objects Adding layers on top of it Porting all the tools to use it! Reuse tools
  • 18. Next Steps Server for queries New source code model
  • 19. Athens Graphics New Canvas Vector Graphics API Layered Architecture Backend Cairo / OpenGL OpenVG.... (Igor Stasenko)
  • 20. Next Steps OpenGL bindings using NativeBoost done on Windows Stabilize API Adapt Morphic
  • 21. Opal We need a more flexible and simpler compiler Hooks for DSL support Better API New generation of tools (J. Ressia/M. Denker/JB Arnaud)
  • 22. Next Steps To be added in 1.5 Throw away the old compiler Then improving the API
  • 23. Fuel: Fast Serialization Don’t use ImageSegment (removed in 1.4) Fuel is faster (!!) Much more flexible and easier to understand Done by M. Diaz, M. Martinez-Peck, (T. Bourgeois & S. Ducasse)
  • 24. Next Steps Replace existing serializers Migration path Binary code loader
  • 25. Scripting Syntax: Coral We want to write scripts in Pharo :) Headless REPL Good OS interface (OSProcess for now) So we get Coral (D. Pollet and S. Ducasse)
  • 26. Browsers and Tools Throw away StringHolder hierarchy (Yes Browser inherits from StringHolder) Browser based on a model Nautilus by B. van Ryseghem Glamour
  • 27. Mini Image and Bootstrap Pavel’s Mini image 4.2 mb for Seaside Work on declarative bootstrapped kernel Analyzed existing solutions
  • 28. Pharo Consortium How to sustain Pharo? How to structure the community? Can we always rely on peoples free time?
  • 29. Consortium You can participate to the consortium: Pay a fee (company) Individual (free) The consortium will pay a full-time engineer to support Pharo tasks
  • 30. Consortium FAQ Pharo will stay free! No negative impact: just a better Pharo Idea: Organizations should be able to pay Membership Morale License
  • 31. When Started discussions with INRIA two years ago INRIA is ok to put money on the table 1 Engineer for one Year More than 25 companies are interested Join!
  • 32. Thanks Alexandre Bergel Matthew Fulmer Hilaire Fernandes Julian Fitzell Laurent Laffont Joseph Pelrine Cedric Beler Tudor Girba Alain Plantec Torsten Bergmann Sean Glazier Damien Pollet Matthias Berth Norbert Hartl Lukas Renggli Ralph Boland Dale Henrichs Jorge Ressia Noury Bouraqadi Reinout Heeck Mike Roberts Brian Brown Eric Hochmeister Robert Rothwell Guillermo Polito Keith Hodges David Rotlisberger Damien Cassou Henrik Sperre Johansen Michael Rueger Nicolas Cellier Pavel Krivanek Bill Schwab Gary Chambers Adrian Kuhn Niko Schwarz Miguel Coba Adrian Lienhard Igor Stasenko Gabriel Cotelli Andreas Leidig Francois Stephany Carlos Crosetti Mariano Martinez Peck Serge Stinckwich Cyrille Delaunay Dave Mason Mathieu Suen Simon Denier John McIntosh Lawrence Trutter Marcus Denker Johnaton Meichtry Andrew Tween Ramiro Diaz Trepat Eliot Miranda martin von loewis Stephane Ducasse Hernan Morales Durand Andres Valloud Morales Durand Hernan Philipp Marshall Juan Vuletich Stephan Eggermont Jannik Laval Steven Wirts Luc Fabresse Yann Monclair Hernan Wilkinson Oscar Nierstrasz