SlideShare a Scribd company logo
1 of 46
Pharo 2.0: an exciting
milestone
S. Ducasse and M. Denker
http://www.pharo.org
Thanks SCG, T. Girba and you
Sensus HighOctane
It feels like...
Pharo
Pure object language
Great community of active doers
Powerful
Elegant and fun to program
Living system under your fingers
VM running on MacOSX, linux, Windows
Compiler, Core classes (stream, collections, unicode)
IDE (editor, inspector, debugger, code versioning,...)
UI frameworks (widgets, theme)
FFI
Graphics (soon opengl)
Hyper fast object serializer
Network, HTTP
Web frameworks: seaside, iliad, HTTP2
XML, HTML scraping, Zodiac (HTTPS)
Graphics frameworks: Roassal, Mondrian, EyeSee
Tool builder: Glamour, MetaTools: Moose
Database: DBXTalk, Mongo, Riak, CouchDB
Proxy, Logging
Units (Aconcagua, Units)
Parser: Petit Parser, SmaCC
Mathematical ...
A powerful engine
	 	 	 	 	 	 	 	 to invent our future
Our goal...
Create an ecosystem
where business/innovation
can bloom
We want that **you** can make money with
Pharo. We want to be able to invent
solutions to existing problems.
We want a powerful innovative dynamic
language where we can build our future.
Some Pharo’s success
stories
Seaside.st, SmalltalkHub,
Yesplan.be, netstyle.ch,
Pier, DrGeo, VBridge,
Cmsbox.ch, objectFusion,
T3 Easy from beta9.be,
moosetechnology.org, pinesoft.co.uk,
Airflowing, synectique, miriamTech, 2denker...
We want more success
stories!
Pharo 2.0 -
Apr 2013
(593 updates)
A massive amount of improvements
Since may 2008
Pharo 2.0 - Apr 2013 (593 updates)
Pharo 1.4 - Apr 2012 (860 updates)
Pharo 1.3 (700 updates)
Pharo 1.2 - mar 2011 (500 updates)
Pharo 1.1 - jul 2010 (410 updates)
Pharo 1.0 - oct 2009 (470 updates)
2.0: UI
Spec: a new way to build UI (chapter under way)
Widget enhancements. Revamp progress bar
Layout improvements/cleanups.
Keybindings
New icons (famfam). "Growl" style notifications.
Rectangle intersection improvements.
2.0: Developer tools
Nautilus Browser: groups, hierarchy, icon navigation
Critics Browser
Interactive navigation (cmd+click on class/selector)
Spotlight (shift+enter)
Diff tools enhancements
Unify/clean Smartcharacters and completion
Shout themes
Andreas’s Profiler
2.0: Compiler
RB AST
Error Node
the foundation for the AST interpreter in 3.0
Networking
New version of Zinc
Zodiac SSL
2.0: System
SystemAnnouncer (first class events no symbol)
RPackage (just plain real object)
Manifest (Package meta-data)
Extensible Command-line
NativeBoost
Ring Meta Model
2.0: System (2)
Fuel instead of ‘smart’ ref streams
FreeType fonts better handling (resources)
Session-aware code
Metacello
FileSystem
DateAndTime refactoring (UTC internally)
2.0: VM
Latests cog builds
Branding
SSLPlugin
FilePlugin enhancements
SocketPlugin fixes
Included libraries: freetype2, cairo
2.0: Cleanups
Removal of FileDirectory
Removal of ReferenceStream and bros
2.0: Infrastructure
ZeroConf script (chapter)
Continuous integration for everything
pharo/core
pharo/contributions (ask if you need)
SmalltalkHub
Vision Document around 2.0
https://gforge.inria.fr/frs/download.php/30434/
PharoVision.pdf
3.1 Towards a small kernel [we have
it now we should think about
migration]
3.2 Towards a verified package
catalog [On the way]
4.1  A Robust and Extensible System
Events [Beta and should be in 3.0]
4.2 Rewrite of Filesystem/Streams
[DONE for Files]
4.3 Announcements and Ephemerons 
[Annoucements Done. More Enh for
3.0]
4.4 UI Canvas for Zoomable Interface
[Waiting for TextModel and 3.0]
4.5 Bootstrap of the Core [Done
should be integrated in 3.0]
4.6 Fully parametrized compiler tool
chain [Start with Opal in 3.0]
4.7 Packages as real objects [in 2.0
and will improve in 3.0]
4.8 Package Meta-Data [Done]
4.9 Less Model Clutter and
Duplication [Started in 2.0 will be
accentuated in 3.0]
4.10 Building and Reusing UI Logic
[First cut in 2.0 UIPainter for 3.0]
4.11 New Network Layer [Nothing]
4.12 Serializers [Done]
4.13 SystemChangeNotifier
replacement [Done]
4.14 Cleaning Morphic [To be
continued in 3.0]
5.2 VMs identification and regression
testing [On the way]
5.3 One Unified FFI framework
[before June]
We want to improve the
complete system!
Not just a nice library on top
of ...
Of course not everything is
perfect
Retrospective analysis to
make progress
But we believe in non linear
growth
Community Ongoing Work
Better widgets, UI Builder (A. Plantec, G. Chambers, B. van Ryseghem)
Better browsers (B. van Ryseghem, C. Bruni)
Proxy (M. Martinez-Peck)
New compiler (J. Ressia/M. Denker/JB Arnaud/)
Vectorial canvas (I. Stasenko)
Better FFI (I. Stasenko, E. Lorenzano)
Bootstrap (G. Polito/S. Ducasse/N. Bouraqadi/L. Fabresse)
Package distribution infrastructure (D. Henrichs)
PDF generation (O. Auverlot, G. Larcheveque)
Network (Zinc, Zodiac S. van Caekenberghe)
Remote Smalltalk (N. Papoulias, N. Bouraqadi)
New Process
To dynamise and stabilize a long cycle
Chunked per month
Retrospective analysis
Continue to have a Summer release and an alpha
Glimpse at 3.0
OPAL for real
Athens
Integration process using metacello!
UIPainter
Remove PackageInfo for real
Validated packages
Distributions: towards a
certified catalog
I want to go to Mars with just a DVD,
and still be able to load the projects I want,
and get the right ones loaded.
Package certification
Packages should be more self contained
Tests
LintRules
Meta data
Run and automatically certified
Automated
Validation
Configs
DistributionInbox
Configs
Distribution
Configs
BrokenDistribution
Process
You use Metacello!
You publish in your repo!
When you want you can release code to a distribution
All the code then is recursively copied to the
distribution space
All the tests and quality rules are checked
People use your code but with a certain level of
confidence :)
MyProject
ConfigOf
MyProject
MyCore
MyUtils
MyTests
Con
figs
13Distrib
Inbox
13Distrib
13Distrib
Broken
Con
figs
Con
figs
Con
figs
14Distrib
Inbox
14Distrib
14Distrib
Broken
Con
figs
Con
figs
Con
figs
15Distrib
Inbox
15Distrib
15Distrib
Broken
Con
figs
Con
figs
Core and ...
+ SpecificationsCore
Certified
Packages
Specific
Images
Certified
Packages
loads
produces
Core
Spec
Certified packages
Changes
New Core
New Spec
New Certified packages
Consortium & Association
How to sustain Pharo?
How to structure the community?
Let us talk about it tomorrow :)
@@Consortium Web Site@@
Pharo books
Pharo by example
translated to french, merci!
translated to spanish, gracias!
japanese, german started
New books are coming
Deep into Pharo
Pharo for the Entreprise
If you want to contribute...
A glimpse at VM
We thank all the contributors, we know
who you are :)
Thanks SCG & T. Girba for this cool
conference
Inria and RMoD for their continuous
support

More Related Content

Viewers also liked

What it takes to manage Lake Okeechobee
What it takes to manage Lake OkeechobeeWhat it takes to manage Lake Okeechobee
What it takes to manage Lake OkeechobeeChristin Erazo
 
Ciaran Naomhan
Ciaran NaomhanCiaran Naomhan
Ciaran NaomhanElghinn
 
Repco home finance q4 fy13 earnings
Repco home finance q4 fy13 earningsRepco home finance q4 fy13 earnings
Repco home finance q4 fy13 earningsPurv
 
Logistiscom 2014 - ADEW consulting group (UEH)
Logistiscom 2014 - ADEW consulting group (UEH)Logistiscom 2014 - ADEW consulting group (UEH)
Logistiscom 2014 - ADEW consulting group (UEH)Long Quách Toàn
 
Đo lường mức độ thỏa mãn của cán bộ công nhân viên đối với tổ chức tại Xí ngh...
Đo lường mức độ thỏa mãn của cán bộ công nhân viên đối với tổ chức tại Xí ngh...Đo lường mức độ thỏa mãn của cán bộ công nhân viên đối với tổ chức tại Xí ngh...
Đo lường mức độ thỏa mãn của cán bộ công nhân viên đối với tổ chức tại Xí ngh...Thư Viện Số
 
Alam mo ba na (Mitolohiya ng Rome) Pagsasanay
Alam mo ba na (Mitolohiya ng Rome) PagsasanayAlam mo ba na (Mitolohiya ng Rome) Pagsasanay
Alam mo ba na (Mitolohiya ng Rome) PagsasanayJenie Rivera
 
2013 lecture-02-syntax shortnewcut
2013 lecture-02-syntax shortnewcut2013 lecture-02-syntax shortnewcut
2013 lecture-02-syntax shortnewcutPharo
 
PharoDAYS 2015: Pharo Status - by Markus Denker
PharoDAYS 2015: Pharo Status - by Markus DenkerPharoDAYS 2015: Pharo Status - by Markus Denker
PharoDAYS 2015: Pharo Status - by Markus DenkerPharo
 
2013-Smalltalks-conference: Pharo is Yours
2013-Smalltalks-conference: Pharo is Yours2013-Smalltalks-conference: Pharo is Yours
2013-Smalltalks-conference: Pharo is YoursPharo
 
Generic VSC and Low Level Switching Control Models for Offline Simulation of ...
Generic VSC and Low Level Switching Control Models for Offline Simulation of ...Generic VSC and Low Level Switching Control Models for Offline Simulation of ...
Generic VSC and Low Level Switching Control Models for Offline Simulation of ...Luigi Vanfretti
 
2010 pharo-esug-final
2010 pharo-esug-final2010 pharo-esug-final
2010 pharo-esug-finalPharo
 
Вспомогательная система для борьбы с аномалиями слухового восприятия - презен...
Вспомогательная система для борьбы с аномалиями слухового восприятия - презен...Вспомогательная система для борьбы с аномалиями слухового восприятия - презен...
Вспомогательная система для борьбы с аномалиями слухового восприятия - презен...Sofya Latkina
 
Cash is King: How To Manage Cash Flow & Increase Working Capital to Support B...
Cash is King: How To Manage Cash Flow & Increase Working Capital to Support B...Cash is King: How To Manage Cash Flow & Increase Working Capital to Support B...
Cash is King: How To Manage Cash Flow & Increase Working Capital to Support B...Hitachi Business Finance
 
5. Inheritances, Packages and Intefaces
5. Inheritances, Packages and Intefaces5. Inheritances, Packages and Intefaces
5. Inheritances, Packages and IntefacesNilesh Dalvi
 
6. Exception Handling
6. Exception Handling6. Exception Handling
6. Exception HandlingNilesh Dalvi
 

Viewers also liked (20)

What it takes to manage Lake Okeechobee
What it takes to manage Lake OkeechobeeWhat it takes to manage Lake Okeechobee
What it takes to manage Lake Okeechobee
 
Ciaran Naomhan
Ciaran NaomhanCiaran Naomhan
Ciaran Naomhan
 
Repco home finance q4 fy13 earnings
Repco home finance q4 fy13 earningsRepco home finance q4 fy13 earnings
Repco home finance q4 fy13 earnings
 
Logistiscom 2014 - ADEW consulting group (UEH)
Logistiscom 2014 - ADEW consulting group (UEH)Logistiscom 2014 - ADEW consulting group (UEH)
Logistiscom 2014 - ADEW consulting group (UEH)
 
7. Multithreading
7. Multithreading7. Multithreading
7. Multithreading
 
Đo lường mức độ thỏa mãn của cán bộ công nhân viên đối với tổ chức tại Xí ngh...
Đo lường mức độ thỏa mãn của cán bộ công nhân viên đối với tổ chức tại Xí ngh...Đo lường mức độ thỏa mãn của cán bộ công nhân viên đối với tổ chức tại Xí ngh...
Đo lường mức độ thỏa mãn của cán bộ công nhân viên đối với tổ chức tại Xí ngh...
 
Alam mo ba na (Mitolohiya ng Rome) Pagsasanay
Alam mo ba na (Mitolohiya ng Rome) PagsasanayAlam mo ba na (Mitolohiya ng Rome) Pagsasanay
Alam mo ba na (Mitolohiya ng Rome) Pagsasanay
 
2013 lecture-02-syntax shortnewcut
2013 lecture-02-syntax shortnewcut2013 lecture-02-syntax shortnewcut
2013 lecture-02-syntax shortnewcut
 
PharoDAYS 2015: Pharo Status - by Markus Denker
PharoDAYS 2015: Pharo Status - by Markus DenkerPharoDAYS 2015: Pharo Status - by Markus Denker
PharoDAYS 2015: Pharo Status - by Markus Denker
 
2013-Smalltalks-conference: Pharo is Yours
2013-Smalltalks-conference: Pharo is Yours2013-Smalltalks-conference: Pharo is Yours
2013-Smalltalks-conference: Pharo is Yours
 
History of tcp
History of tcpHistory of tcp
History of tcp
 
Generic VSC and Low Level Switching Control Models for Offline Simulation of ...
Generic VSC and Low Level Switching Control Models for Offline Simulation of ...Generic VSC and Low Level Switching Control Models for Offline Simulation of ...
Generic VSC and Low Level Switching Control Models for Offline Simulation of ...
 
2010 pharo-esug-final
2010 pharo-esug-final2010 pharo-esug-final
2010 pharo-esug-final
 
Вспомогательная система для борьбы с аномалиями слухового восприятия - презен...
Вспомогательная система для борьбы с аномалиями слухового восприятия - презен...Вспомогательная система для борьбы с аномалиями слухового восприятия - презен...
Вспомогательная система для борьбы с аномалиями слухового восприятия - презен...
 
AGCS @ Le Bourget 2013
AGCS @ Le Bourget 2013AGCS @ Le Bourget 2013
AGCS @ Le Bourget 2013
 
Cash is King: How To Manage Cash Flow & Increase Working Capital to Support B...
Cash is King: How To Manage Cash Flow & Increase Working Capital to Support B...Cash is King: How To Manage Cash Flow & Increase Working Capital to Support B...
Cash is King: How To Manage Cash Flow & Increase Working Capital to Support B...
 
Chapter1
Chapter1Chapter1
Chapter1
 
5. Inheritances, Packages and Intefaces
5. Inheritances, Packages and Intefaces5. Inheritances, Packages and Intefaces
5. Inheritances, Packages and Intefaces
 
6. Exception Handling
6. Exception Handling6. Exception Handling
6. Exception Handling
 
Templates
TemplatesTemplates
Templates
 

Similar to 2013 pharo conference

Pharo Update
Pharo UpdatePharo Update
Pharo UpdateESUG
 
2013 pharo is yours revisited. Santiago DCC University of Chile Presentation.
2013 pharo is yours revisited. Santiago DCC University of Chile Presentation.2013 pharo is yours revisited. Santiago DCC University of Chile Presentation.
2013 pharo is yours revisited. Santiago DCC University of Chile Presentation.Pharo
 
Pharo 2.0: An Exciting Milestone
Pharo 2.0: An Exciting MilestonePharo 2.0: An Exciting Milestone
Pharo 2.0: An Exciting MilestoneMarcus Denker
 
2013 lecture-01-introduction
2013 lecture-01-introduction2013 lecture-01-introduction
2013 lecture-01-introductionPharo
 
Analyzing data with docker v4
Analyzing data with docker   v4Analyzing data with docker   v4
Analyzing data with docker v4Andreas Dewes
 
Introduction to Streaming Distributed Processing with Storm
Introduction to Streaming Distributed Processing with StormIntroduction to Streaming Distributed Processing with Storm
Introduction to Streaming Distributed Processing with StormBrandon O'Brien
 
Fosdem 13: Pharo 2.0 update
Fosdem 13: Pharo 2.0 updateFosdem 13: Pharo 2.0 update
Fosdem 13: Pharo 2.0 updateMarcus Denker
 
2011 Pharo Roadmap explained
2011 Pharo Roadmap explained2011 Pharo Roadmap explained
2011 Pharo Roadmap explainedPharo
 
Big Data Everywhere Chicago: Apache Spark Plus Many Other Frameworks -- How S...
Big Data Everywhere Chicago: Apache Spark Plus Many Other Frameworks -- How S...Big Data Everywhere Chicago: Apache Spark Plus Many Other Frameworks -- How S...
Big Data Everywhere Chicago: Apache Spark Plus Many Other Frameworks -- How S...BigDataEverywhere
 
Ceph Day Amsterdam 2015 - Ceph Ecosystem Update
Ceph Day Amsterdam 2015 - Ceph Ecosystem Update Ceph Day Amsterdam 2015 - Ceph Ecosystem Update
Ceph Day Amsterdam 2015 - Ceph Ecosystem Update Ceph Community
 
Ceph Day SF 2015 - Community Update
Ceph Day SF 2015 - Community Update Ceph Day SF 2015 - Community Update
Ceph Day SF 2015 - Community Update Ceph Community
 
BonAHA framework - IEEE CCNC 2009
BonAHA framework - IEEE CCNC 2009BonAHA framework - IEEE CCNC 2009
BonAHA framework - IEEE CCNC 2009Suman Srinivasan
 
Minko - Targeting Flash/Stage3D with C++ and GLSL
Minko - Targeting Flash/Stage3D with C++ and GLSLMinko - Targeting Flash/Stage3D with C++ and GLSL
Minko - Targeting Flash/Stage3D with C++ and GLSLMinko3D
 
LO-PHI: Low-Observable Physical Host Instrumentation for Malware Analysis
LO-PHI: Low-Observable Physical Host Instrumentation for Malware AnalysisLO-PHI: Low-Observable Physical Host Instrumentation for Malware Analysis
LO-PHI: Low-Observable Physical Host Instrumentation for Malware AnalysisPietro De Nicolao
 
Building Scalable Data Pipelines - 2016 DataPalooza Seattle
Building Scalable Data Pipelines - 2016 DataPalooza SeattleBuilding Scalable Data Pipelines - 2016 DataPalooza Seattle
Building Scalable Data Pipelines - 2016 DataPalooza SeattleEvan Chan
 
NoLambda: Combining Streaming, Ad-Hoc, Machine Learning and Batch Analysis
NoLambda: Combining Streaming, Ad-Hoc, Machine Learning and Batch AnalysisNoLambda: Combining Streaming, Ad-Hoc, Machine Learning and Batch Analysis
NoLambda: Combining Streaming, Ad-Hoc, Machine Learning and Batch AnalysisHelena Edelson
 
Cyberinfrastructure and Applications Overview: Howard University June22
Cyberinfrastructure and Applications Overview: Howard University June22Cyberinfrastructure and Applications Overview: Howard University June22
Cyberinfrastructure and Applications Overview: Howard University June22marpierc
 
Programming IoT Gateways with macchina.io
Programming IoT Gateways with macchina.ioProgramming IoT Gateways with macchina.io
Programming IoT Gateways with macchina.ioGünter Obiltschnig
 

Similar to 2013 pharo conference (20)

Pharo Update
Pharo UpdatePharo Update
Pharo Update
 
2013 pharo is yours revisited. Santiago DCC University of Chile Presentation.
2013 pharo is yours revisited. Santiago DCC University of Chile Presentation.2013 pharo is yours revisited. Santiago DCC University of Chile Presentation.
2013 pharo is yours revisited. Santiago DCC University of Chile Presentation.
 
Pharo 2.0: An Exciting Milestone
Pharo 2.0: An Exciting MilestonePharo 2.0: An Exciting Milestone
Pharo 2.0: An Exciting Milestone
 
2013 lecture-01-introduction
2013 lecture-01-introduction2013 lecture-01-introduction
2013 lecture-01-introduction
 
Analyzing data with docker v4
Analyzing data with docker   v4Analyzing data with docker   v4
Analyzing data with docker v4
 
Introduction to Streaming Distributed Processing with Storm
Introduction to Streaming Distributed Processing with StormIntroduction to Streaming Distributed Processing with Storm
Introduction to Streaming Distributed Processing with Storm
 
Zenoh: The Genesis
Zenoh: The GenesisZenoh: The Genesis
Zenoh: The Genesis
 
Fosdem 13: Pharo 2.0 update
Fosdem 13: Pharo 2.0 updateFosdem 13: Pharo 2.0 update
Fosdem 13: Pharo 2.0 update
 
2011 Pharo Roadmap explained
2011 Pharo Roadmap explained2011 Pharo Roadmap explained
2011 Pharo Roadmap explained
 
Big Data Everywhere Chicago: Apache Spark Plus Many Other Frameworks -- How S...
Big Data Everywhere Chicago: Apache Spark Plus Many Other Frameworks -- How S...Big Data Everywhere Chicago: Apache Spark Plus Many Other Frameworks -- How S...
Big Data Everywhere Chicago: Apache Spark Plus Many Other Frameworks -- How S...
 
Ceph Day Amsterdam 2015 - Ceph Ecosystem Update
Ceph Day Amsterdam 2015 - Ceph Ecosystem Update Ceph Day Amsterdam 2015 - Ceph Ecosystem Update
Ceph Day Amsterdam 2015 - Ceph Ecosystem Update
 
Ceph Day SF 2015 - Community Update
Ceph Day SF 2015 - Community Update Ceph Day SF 2015 - Community Update
Ceph Day SF 2015 - Community Update
 
BonAHA framework - IEEE CCNC 2009
BonAHA framework - IEEE CCNC 2009BonAHA framework - IEEE CCNC 2009
BonAHA framework - IEEE CCNC 2009
 
Minko - Targeting Flash/Stage3D with C++ and GLSL
Minko - Targeting Flash/Stage3D with C++ and GLSLMinko - Targeting Flash/Stage3D with C++ and GLSL
Minko - Targeting Flash/Stage3D with C++ and GLSL
 
LO-PHI: Low-Observable Physical Host Instrumentation for Malware Analysis
LO-PHI: Low-Observable Physical Host Instrumentation for Malware AnalysisLO-PHI: Low-Observable Physical Host Instrumentation for Malware Analysis
LO-PHI: Low-Observable Physical Host Instrumentation for Malware Analysis
 
Building Scalable Data Pipelines - 2016 DataPalooza Seattle
Building Scalable Data Pipelines - 2016 DataPalooza SeattleBuilding Scalable Data Pipelines - 2016 DataPalooza Seattle
Building Scalable Data Pipelines - 2016 DataPalooza Seattle
 
NoLambda: Combining Streaming, Ad-Hoc, Machine Learning and Batch Analysis
NoLambda: Combining Streaming, Ad-Hoc, Machine Learning and Batch AnalysisNoLambda: Combining Streaming, Ad-Hoc, Machine Learning and Batch Analysis
NoLambda: Combining Streaming, Ad-Hoc, Machine Learning and Batch Analysis
 
Cyberinfrastructure and Applications Overview: Howard University June22
Cyberinfrastructure and Applications Overview: Howard University June22Cyberinfrastructure and Applications Overview: Howard University June22
Cyberinfrastructure and Applications Overview: Howard University June22
 
Programming IoT Gateways with macchina.io
Programming IoT Gateways with macchina.ioProgramming IoT Gateways with macchina.io
Programming IoT Gateways with macchina.io
 
Malstone KDD 2010
Malstone KDD 2010Malstone KDD 2010
Malstone KDD 2010
 

More from Pharo

Yesplan: 10 Years later
Yesplan: 10 Years laterYesplan: 10 Years later
Yesplan: 10 Years laterPharo
 
Object-Centric Debugging: a preview
Object-Centric Debugging: a previewObject-Centric Debugging: a preview
Object-Centric Debugging: a previewPharo
 
The future of testing in Pharo
The future of testing in PharoThe future of testing in Pharo
The future of testing in PharoPharo
 
Spec 2.0: The next step on desktop UI
Spec 2.0: The next step on desktop UI Spec 2.0: The next step on desktop UI
Spec 2.0: The next step on desktop UI Pharo
 
UI Testing with Spec
 UI Testing with Spec UI Testing with Spec
UI Testing with SpecPharo
 
Pharo 7.0 and 8.0 alpha
Pharo 7.0 and 8.0 alphaPharo 7.0 and 8.0 alpha
Pharo 7.0 and 8.0 alphaPharo
 
PHARO IoT: Installation Improvements and Continuous Integration
PHARO IoT: Installation Improvements and Continuous IntegrationPHARO IoT: Installation Improvements and Continuous Integration
PHARO IoT: Installation Improvements and Continuous IntegrationPharo
 
Easy REST with OpenAPI
Easy REST with OpenAPIEasy REST with OpenAPI
Easy REST with OpenAPIPharo
 
Comment soup with a pinch of types, served in a leaky bowl
Comment soup with a pinch of types, served in a leaky bowlComment soup with a pinch of types, served in a leaky bowl
Comment soup with a pinch of types, served in a leaky bowlPharo
 
apart Framework: Porting from VisualWorks
apart Framework: Porting from VisualWorksapart Framework: Porting from VisualWorks
apart Framework: Porting from VisualWorksPharo
 
XmppTalk
XmppTalkXmppTalk
XmppTalkPharo
 
A living programming environment for blockchain
A living programming environment for blockchainA living programming environment for blockchain
A living programming environment for blockchainPharo
 
Raspberry and Pharo
Raspberry and PharoRaspberry and Pharo
Raspberry and PharoPharo
 
Welcome: PharoDays 2017
Welcome: PharoDays 2017Welcome: PharoDays 2017
Welcome: PharoDays 2017Pharo
 
Pharo 6
Pharo 6Pharo 6
Pharo 6Pharo
 
Robotic Exploration and Mapping with Pharo
Robotic Exploration and Mapping with PharoRobotic Exploration and Mapping with Pharo
Robotic Exploration and Mapping with PharoPharo
 
Pharo 64bits
Pharo 64bitsPharo 64bits
Pharo 64bitsPharo
 
Smack: Behind the Refactorings
Smack: Behind the RefactoringsSmack: Behind the Refactorings
Smack: Behind the RefactoringsPharo
 
Pharo VM Performance
Pharo VM PerformancePharo VM Performance
Pharo VM PerformancePharo
 
Git with Style
Git with StyleGit with Style
Git with StylePharo
 

More from Pharo (20)

Yesplan: 10 Years later
Yesplan: 10 Years laterYesplan: 10 Years later
Yesplan: 10 Years later
 
Object-Centric Debugging: a preview
Object-Centric Debugging: a previewObject-Centric Debugging: a preview
Object-Centric Debugging: a preview
 
The future of testing in Pharo
The future of testing in PharoThe future of testing in Pharo
The future of testing in Pharo
 
Spec 2.0: The next step on desktop UI
Spec 2.0: The next step on desktop UI Spec 2.0: The next step on desktop UI
Spec 2.0: The next step on desktop UI
 
UI Testing with Spec
 UI Testing with Spec UI Testing with Spec
UI Testing with Spec
 
Pharo 7.0 and 8.0 alpha
Pharo 7.0 and 8.0 alphaPharo 7.0 and 8.0 alpha
Pharo 7.0 and 8.0 alpha
 
PHARO IoT: Installation Improvements and Continuous Integration
PHARO IoT: Installation Improvements and Continuous IntegrationPHARO IoT: Installation Improvements and Continuous Integration
PHARO IoT: Installation Improvements and Continuous Integration
 
Easy REST with OpenAPI
Easy REST with OpenAPIEasy REST with OpenAPI
Easy REST with OpenAPI
 
Comment soup with a pinch of types, served in a leaky bowl
Comment soup with a pinch of types, served in a leaky bowlComment soup with a pinch of types, served in a leaky bowl
Comment soup with a pinch of types, served in a leaky bowl
 
apart Framework: Porting from VisualWorks
apart Framework: Porting from VisualWorksapart Framework: Porting from VisualWorks
apart Framework: Porting from VisualWorks
 
XmppTalk
XmppTalkXmppTalk
XmppTalk
 
A living programming environment for blockchain
A living programming environment for blockchainA living programming environment for blockchain
A living programming environment for blockchain
 
Raspberry and Pharo
Raspberry and PharoRaspberry and Pharo
Raspberry and Pharo
 
Welcome: PharoDays 2017
Welcome: PharoDays 2017Welcome: PharoDays 2017
Welcome: PharoDays 2017
 
Pharo 6
Pharo 6Pharo 6
Pharo 6
 
Robotic Exploration and Mapping with Pharo
Robotic Exploration and Mapping with PharoRobotic Exploration and Mapping with Pharo
Robotic Exploration and Mapping with Pharo
 
Pharo 64bits
Pharo 64bitsPharo 64bits
Pharo 64bits
 
Smack: Behind the Refactorings
Smack: Behind the RefactoringsSmack: Behind the Refactorings
Smack: Behind the Refactorings
 
Pharo VM Performance
Pharo VM PerformancePharo VM Performance
Pharo VM Performance
 
Git with Style
Git with StyleGit with Style
Git with Style
 

Recently uploaded

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
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
 
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
 
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
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
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
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
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
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
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
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
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
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 

Recently uploaded (20)

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
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...
 
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
 
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
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
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 ...
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
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
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
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
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 

2013 pharo conference

  • 1. Pharo 2.0: an exciting milestone S. Ducasse and M. Denker http://www.pharo.org
  • 2. Thanks SCG, T. Girba and you
  • 5. Pharo Pure object language Great community of active doers Powerful Elegant and fun to program Living system under your fingers
  • 6. VM running on MacOSX, linux, Windows Compiler, Core classes (stream, collections, unicode) IDE (editor, inspector, debugger, code versioning,...) UI frameworks (widgets, theme) FFI Graphics (soon opengl) Hyper fast object serializer Network, HTTP
  • 7. Web frameworks: seaside, iliad, HTTP2 XML, HTML scraping, Zodiac (HTTPS) Graphics frameworks: Roassal, Mondrian, EyeSee Tool builder: Glamour, MetaTools: Moose Database: DBXTalk, Mongo, Riak, CouchDB Proxy, Logging Units (Aconcagua, Units) Parser: Petit Parser, SmaCC Mathematical ...
  • 8. A powerful engine to invent our future
  • 10. Create an ecosystem where business/innovation can bloom
  • 11. We want that **you** can make money with Pharo. We want to be able to invent solutions to existing problems. We want a powerful innovative dynamic language where we can build our future.
  • 12. Some Pharo’s success stories Seaside.st, SmalltalkHub, Yesplan.be, netstyle.ch, Pier, DrGeo, VBridge, Cmsbox.ch, objectFusion, T3 Easy from beta9.be, moosetechnology.org, pinesoft.co.uk, Airflowing, synectique, miriamTech, 2denker...
  • 13. We want more success stories!
  • 14. Pharo 2.0 - Apr 2013 (593 updates) A massive amount of improvements
  • 15. Since may 2008 Pharo 2.0 - Apr 2013 (593 updates) Pharo 1.4 - Apr 2012 (860 updates) Pharo 1.3 (700 updates) Pharo 1.2 - mar 2011 (500 updates) Pharo 1.1 - jul 2010 (410 updates) Pharo 1.0 - oct 2009 (470 updates)
  • 16. 2.0: UI Spec: a new way to build UI (chapter under way) Widget enhancements. Revamp progress bar Layout improvements/cleanups. Keybindings New icons (famfam). "Growl" style notifications. Rectangle intersection improvements.
  • 17. 2.0: Developer tools Nautilus Browser: groups, hierarchy, icon navigation Critics Browser Interactive navigation (cmd+click on class/selector) Spotlight (shift+enter) Diff tools enhancements Unify/clean Smartcharacters and completion Shout themes Andreas’s Profiler
  • 18. 2.0: Compiler RB AST Error Node the foundation for the AST interpreter in 3.0
  • 19. Networking New version of Zinc Zodiac SSL
  • 20. 2.0: System SystemAnnouncer (first class events no symbol) RPackage (just plain real object) Manifest (Package meta-data) Extensible Command-line NativeBoost Ring Meta Model
  • 21. 2.0: System (2) Fuel instead of ‘smart’ ref streams FreeType fonts better handling (resources) Session-aware code Metacello FileSystem DateAndTime refactoring (UTC internally)
  • 22. 2.0: VM Latests cog builds Branding SSLPlugin FilePlugin enhancements SocketPlugin fixes Included libraries: freetype2, cairo
  • 23. 2.0: Cleanups Removal of FileDirectory Removal of ReferenceStream and bros
  • 24. 2.0: Infrastructure ZeroConf script (chapter) Continuous integration for everything pharo/core pharo/contributions (ask if you need) SmalltalkHub
  • 25. Vision Document around 2.0 https://gforge.inria.fr/frs/download.php/30434/ PharoVision.pdf 3.1 Towards a small kernel [we have it now we should think about migration] 3.2 Towards a verified package catalog [On the way] 4.1  A Robust and Extensible System Events [Beta and should be in 3.0] 4.2 Rewrite of Filesystem/Streams [DONE for Files] 4.3 Announcements and Ephemerons  [Annoucements Done. More Enh for 3.0] 4.4 UI Canvas for Zoomable Interface [Waiting for TextModel and 3.0] 4.5 Bootstrap of the Core [Done should be integrated in 3.0] 4.6 Fully parametrized compiler tool chain [Start with Opal in 3.0] 4.7 Packages as real objects [in 2.0 and will improve in 3.0] 4.8 Package Meta-Data [Done] 4.9 Less Model Clutter and Duplication [Started in 2.0 will be accentuated in 3.0] 4.10 Building and Reusing UI Logic [First cut in 2.0 UIPainter for 3.0] 4.11 New Network Layer [Nothing] 4.12 Serializers [Done] 4.13 SystemChangeNotifier replacement [Done] 4.14 Cleaning Morphic [To be continued in 3.0] 5.2 VMs identification and regression testing [On the way] 5.3 One Unified FFI framework [before June]
  • 26. We want to improve the complete system!
  • 27. Not just a nice library on top of ...
  • 28. Of course not everything is perfect
  • 30. But we believe in non linear growth
  • 31. Community Ongoing Work Better widgets, UI Builder (A. Plantec, G. Chambers, B. van Ryseghem) Better browsers (B. van Ryseghem, C. Bruni) Proxy (M. Martinez-Peck) New compiler (J. Ressia/M. Denker/JB Arnaud/) Vectorial canvas (I. Stasenko) Better FFI (I. Stasenko, E. Lorenzano) Bootstrap (G. Polito/S. Ducasse/N. Bouraqadi/L. Fabresse) Package distribution infrastructure (D. Henrichs) PDF generation (O. Auverlot, G. Larcheveque) Network (Zinc, Zodiac S. van Caekenberghe) Remote Smalltalk (N. Papoulias, N. Bouraqadi)
  • 32. New Process To dynamise and stabilize a long cycle Chunked per month Retrospective analysis Continue to have a Summer release and an alpha
  • 33. Glimpse at 3.0 OPAL for real Athens Integration process using metacello! UIPainter Remove PackageInfo for real Validated packages
  • 34.
  • 35. Distributions: towards a certified catalog I want to go to Mars with just a DVD, and still be able to load the projects I want, and get the right ones loaded.
  • 36. Package certification Packages should be more self contained Tests LintRules Meta data Run and automatically certified
  • 38. Process You use Metacello! You publish in your repo! When you want you can release code to a distribution All the code then is recursively copied to the distribution space All the tests and quality rules are checked People use your code but with a certain level of confidence :)
  • 40. Core and ... + SpecificationsCore Certified Packages Specific Images Certified Packages loads produces Core Spec Certified packages Changes New Core New Spec New Certified packages
  • 41. Consortium & Association How to sustain Pharo? How to structure the community? Let us talk about it tomorrow :)
  • 43. Pharo books Pharo by example translated to french, merci! translated to spanish, gracias! japanese, german started
  • 44. New books are coming Deep into Pharo Pharo for the Entreprise If you want to contribute... A glimpse at VM
  • 45.
  • 46. We thank all the contributors, we know who you are :) Thanks SCG & T. Girba for this cool conference Inria and RMoD for their continuous support