Pharo Update


Published on

ESUG 2012, Ghent

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Pharo Update

  1. 1. Pharo: steadily improvingS. Ducasse and M. Denker
  2. 2. PharoMIT licenseMac, Linux, Android, iOS, WindowsGreat community of active doersImproving steadilyMany many many excellent libraries
  3. 3. Our goal...
  4. 4. Create an ecosystemwhere business/innovation can bloom
  5. 5. We want **you** can make money withPharo.inventing solutions to existing problems.
  6. 6. Create an ecosystemwhere business/innovation can bloom
  7. 7. Powerful innovative dynamic language tobuild OUR/YOUR future.New rethought language/system.
  8. 8. Create a system to enableyou to create!
  9. 9. Some Pharo’s, SmalltalkHub,, netstyle.chPier, DrGeo, VBridge,, objectFusion, T3 Easy (Pharo server side)Moose,, synectique, miriamTech, 2denker...
  10. 10. We want more successstories!
  11. 11. A powerful engine to invent our future
  12. 12. Since may 2008Pharo 1.0 - oct 2009 (470 updates)Pharo 1.1 - jul 2010 (410 updates)Pharo 1.2 - mar 2011 (500 updates)Pharo 1.3 (700 updates)Pharo 1.4 - Apr 2012 (860 updates)Pharo 2.0 alpha (759 updates)
  13. 13. Pharo 1.4Lot lot improvementsMore important: Summer maintenance release Fall maintenance release
  14. 14. Roadmap for 2.0 Building the infrastructure for the next generation PharoVision.pdf
  15. 15. Glimpse at 2.0 alphacore: 1.36 mb so far (hazelnuts: 120 KB)(integration process using metacello! soon)rewriting most tools with SpecNautilus: new browserFilesystem (no more FileDirectory :)new package implementationnew system announcement (no moreSystemChangeNotification)(package manifest = package meta data soon)
  16. 16. Ongoing Community WorkBetter widgets, UI Builder (A. Plantec, G. Chambers, B. van Ryseghem)Key mapper (G. Polito)Serializer (M. Dias, M. Martinez-Peck), Full Proxy (M. Martinez-Peck)Opal New compiler (J. Ressia/M. Denker/JB Arnaud)Vectorial canvas (I. Stasenko)Better FFI (I. Stasenko, E. Lorenzano)Package distribution infrastructure (D. Henrichs)PDF generation (O. Auverlot)Network: Zinc, Zodiac, WebSockets (S. van Caekenberghe)Seamless: Remote Smalltalk (N. Papoulias and N. Bouraqadi)
  17. 17. Code Model (1.4)Off-image browsingRepresenting Smalltalk source codeRing (V. Uquillaz Gomes/A. Kellens/S.Ducasse) Source code metamodel API compatible with Smalltalk objects in Pharo 1.4Adding layers on top of itReusing tools
  18. 18. Next StepsDatabase to storeBetter source modelServer for queries
  19. 19. Athens Graphics (2.0) New Vector Graphics Canvas OO Design Layered Architecture Backends Cairo BitBlt CoreGraphics
  20. 20. Next StepsNew TextModelAdapt MorphicClean all the canvases
  21. 21. Opal (2.0) a more flexible and simpler compiler Will be added in 2.0 next week! Hooks for DSL support Better API New generation of tools
  22. 22. Next StepsDecompiler (was the last missing bit) is nearly finishedThrow away the old compilerThen improving the API
  23. 23. Fuel: Fast Serialization (1.4) Done by M. Diaz, M. Martinez-Peck, (T. Bourgeois & S. Ducasse) Don’t use ImageSegment (removed in 1.4) Fuel is fast and even faster (!!) Much more flexible and easier to understand
  24. 24. Next StepsBinary code loader: Tanker (Pharo 3.0)
  25. 25. Distributions: towards acertified 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.
  26. 26. Package certification (2.0|3.0) Packages should be more self contained Tests LintRules managed with false positives Meta data Run and automatically certified
  27. 27. ProcessYou use Metacello!You publish in your repo!When you want, push the code to a distribution projectAll the code then is recursively copied to thedistribution spaceAll the tests and quality rules are checkedPeople use your code but with a certain level ofconfidence :)
  28. 28. Native Boost (2.0) By I. Stasenko (mac, linux and windows 32bits) Generate machine code on the fly :) FFI Implement primitives
  29. 29. Next Steps Merge FFI and NB API Real documentation Cleaning load Alien, FFI, NativeBoost
  30. 30. New IDE Tools (2.0) Throw away StringHolder hierarchy Browser support refactoring, groups, plugins and a lot more :) by B. van Ryseghem
  31. 31. VMExpand knowledgeWelcome newbies and idiots (like Stef)Increase testsEnable sharing: yes the code is in GITRelease VM builders from stupid tasksTraceability/Branding
  32. 32. VM buildsAnybody is now able to build a vm!
  33. 33. VM Infrastructure VM validation after ANY changes Automatic recompilation Automatic test regressions
  34. 34. Mini Bootstraped Image (3.0) Pavel’s Mini image 4.2 mb for Seaside Guillermo and Benjamin’s Hazelnuts State: 1.36 mb for core+compiler Soon Hazelnut: 120 KB
  35. 35. Pharo ConsortiumHow to sustain Pharo?How do we make sure that infrastructure continues toimprove?How to structure the community?Should we always rely on people free time?
  36. 36. Consortium MembersManaged by INRIA for nowWho: companies, institutions, user groupsPrivileged access to the core development teamInfluence priorities of the next developmentEngineering support timeJob postsTraining/Conferences special prices
  37. 37. Your fears :) Pharo will stay free! No negative impact: just a better Pharo Better maintained system
  38. 38. Consortium SponsorYou can also be a sponsor Normal Diamond
  39. 39. Tuitions Gold 4000 4 days of engineering time + multiple job descriptions for job dashboard + diamond sponsor. Silver 2000 two days of engineering time + one job description + diamond sponsor. Bronze 1000 one day of engineering time + diamond sponsor.
  40. 40. WhenStarted discussions with INRIA two years agoINRIA put money on the table 60 KEuros (Esteban)More than 25 companies are interestedAvailable 3rd week of September
  41. 41. Pharo Users AssociationManaged by the Pharo AssociationIndividuals Premium (99 Euros) Normal (40 Euros)In the mid-term it will manage the consortium
  42. 42. Pharo booksPharo by example translated to french, merci! translated to spanish, gracias! japanese, german startedNew book soon: Deep into Pharo
  43. 43. The future is what we do!
  44. 44. Every single contribution isimportant
  45. 45. You can get impact
  46. 46. Everybody can helpReporting bugsConfirming bugsWriting testsWriting examplesWriting commentsSimple contributing fixesDeep discussion...
  47. 47. Open Pharo SprintsMay 2008 BernJuly 2009 BernOctober 2009 LilleNovember 2009 Buenos AresMarch 2010 BernMay 2010 Buenos AresJune 2010 BernJune 2010 BruxellesJuly 2010 LondonSeptember 2010 BarcelonaSeptember 2010 LilleJanuary 2011 LilleJuly 2011 LilleOctober 2011 BruxellesFebruary 2012 BernApril 2012 Lille