Your SlideShare is downloading. ×
0
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
2013 lecture-01-introduction
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

2013 lecture-01-introduction

343

Published on

An introduction of Pharo. …

An introduction of Pharo.
Pharo is a new dynamically typed language. It is inspired from Smalltalk and it is
elegant, simple and powerful. http://www.pharo.org

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
343
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
8
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Pharo:A malleable and powerfulplatformS. Ducasse and M. Denkerhttp://www.pharo.org
  • 2. What is it?Language + EnvironmentSimple LanguageObject-Oriented, Dynamic, ReflectiveExplore + Change running systemsThe Ultimate Live ProgrammingEnvironment!
  • 3. PharoMIT licensePure object languageGreat community of active doersPowerfulElegant and fun to programLiving system under your fingersMac, Linux, Android, iOS, Windows
  • 4. Compiler, Core classes (stream, collections, unicode,...)IDE (editor, inspector, debugger, code versioning,...)UI frameworks (widgets, theme)FFIGraphics (soon opengl)Hyper fast object serializerNetwork, HTTP
  • 5. Web frameworks: Seaside, iliad, HTTP2Parsers: XML, HTML, JSONGraphics frameworks: Roassal, Mondrian, EyeSeeTool builders: Glamour, MooseDatabases: DBXTalk, Mongo, Riak, CouchDBParser generators: Petit Parser, SmaCCInfrastructure: Proxy, LoggingUnits: Aconcagua, Units...
  • 6. 240 000 downloads on the Inria gforge40-50 active commiters> 600 mailing-list members180 license agreements50 association members10 industrial consortium membersaround 300 external projectsPharo in numbers
  • 7. SqueakSource: old Forge3672 users3459 projects158 987 packages
  • 8. A powerful engine to invent our future
  • 9. Our goal...
  • 10. Create an ecosystemwhere business/innovationcan bloom
  • 11. We want that **you** can makemoney with Pharo. We want to inventsolutions to actual problems.We want a powerful innovativedynamic language where we can buildour future.
  • 12. Some Pharo’s successstoriesSeaside.st, SmalltalkHub,Yesplan.be, netstyle.ch,Pier, DrGeo, VBridge,Cmsbox.ch, objectFusion.fr,T3 Easy from beta9.be,moosetechnology.org, pinesoft.co.uk,Airflowing, synectique, miriamTech, 2denker...
  • 13. Continuous API Testingkeep your services under control 24/7Norbert Hartl norbert@2denker.dewww.2denker.de
  • 14. WEBDRUCK.CHWeb-To-Print Solution• Design and createindividual printedmatter• eShop with creditcard payment• High quality PDFoutput with PrintingProcess integration• Thousands of ordersfor seven Swissprinting companies
  • 15. NTed: disaster scenariorecovery
  • 16. iBizLog - http://www.ibizlog.comA product by SmallworksTuesday, May 15, 12
  • 17. Pinesoft MBagger
  • 18. We want more successstories!
  • 19. Daily ActiveDevelopmentA massive amount of improvements
  • 20. Since may 2008Pharo 2.0 - Apr 2013 (1657 closed cases)Pharo 1.4 - Apr 2012 (988 closed cases)Pharo 1.3 (736 closed cases)Pharo 1.2 - mar 2011 (691 closed cases)Pharo 1.1 - jul 2010 (918 closed cases)Pharo 1.0 - oct 2009 (307 closed cases)Very HighActivity
  • 21. 2.0 StatisticsStarted April 20121657 issue tracker entriessince start: 7663420 open, all have seen activity in 2012593 incremental updatesVery HighActivity
  • 22. 2.0: OverviewUI:New UI Builder, Widget enhancements. Layout improvements.Shout ThemesKeybindings. New icons. "Growl" style notifications. Rectangleintersection improvements.ToolsBrowser: new default browser, critics browserSpotlight (shift+enter), unify Smartcharacters and completionCompiler enhancement: new AST + ErrorNodeImproved HTTP and SSLSystemVery HighActivity
  • 23. Vision Document around 2.0https://gforge.inria.fr/frs/download.php/30434/PharoVision.pdf3.1 Towards a small kernel [we haveit now we should think aboutmigration]3.2 Towards a verified packagecatalog [On the way]4.1  A Robust and Extensible SystemEvents [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 for3.0]4.4 UI Canvas for Zoomable Interface[Waiting for TextModel and 3.0]4.5 Bootstrap of the Core [Doneshould be integrated in 3.0]4.6 Fully parametrized compiler toolchain [Start with Opal in 3.0]4.7 Packages as real objects [in 2.0and will improve in 3.0]4.8 Package Meta-Data [Done]4.9 Less Model Clutter andDuplication [Started in 2.0 will beaccentuated 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 SystemChangeNotifierreplacement [Done]4.14 Cleaning Morphic [To becontinued in 3.0]5.2 VMs identification and regressiontesting [On the way]5.3 One Unified FFI framework[before June]
  • 24. We want to improve thecomplete system!
  • 25. Not just a nice library on topof ...
  • 26. Of course not everything isperfect
  • 27. But we believe in non lineargrowth
  • 28. We are a cool community
  • 29. www.10pines.comwww.2denker.dewww.agilitic.comwww.airflowing.comwww.anymorphic.comwww.ardishealth.comwww.beta9.bewww.bombardier.comwww.cmsbox.comwww.finworks.bizseaside.gemstone.comwww.ibizlog.comwww.inceptive.bewww.jooshr.comwww.majcon.dewww.mindclue.chwww.miriamtech.comwww.myneat.orgwww.netstyle.chwww.objectfusion.frwww.panasoft.comwww.pinesoft.co.ukwww.promedmedical.netwww.sharedlogic.cawww.smallworks.com.arwww.trantaria.comwww.square-i.netyesplan.beCompanies
  • 30. University of Bueno AiresUniversity of Bern scg.unibe.chUniversity of Brussels soft.vub.ac.be/soft/Ecole des Mines www.ensm-douai.frUniversité de Savoie www.imus.univ-savoie.frIvan Franko National University of UkraineCzech Technical UniversityUniversity of Life Sciences in PragueNorthen Michigan University www.nmu.eduUniversity Catholic of Argentina www.uca.edu.arUniversity of Santiago www.uchile.clUniversitat Policnica de Catalunya www.upc.eduLectures
  • 31. Lafhis (University of Bueno Aires )Software Composition Group (scg.unibe.ch)CAR (Ecole des mines www.ensm-douai.fr)RMOD (Inria)Ummisco (IRD)Reveal (University of Lugano)Lysic (University of Bretagne Occidentale)Pleiad (University of Santiago)CEA-ListResearch Groups
  • 32. New Dev ProcessTo galvanize and stabilize a long cycleChunked per monthRetrospective analysisContinue to have a Summer release and an alpha
  • 33. Community Ongoing WorkBetter 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/C. Bera/)Vectorial canvas (I. Stasenko)Better FFI (I. Stasenko, E. Lorenzano)Bootstrap (G. Polito/S. Ducasse/N. Bouraqadi/L. Fabresse)PDF generation (O. Auverlot, G. Larcheveque)Network (WebSocket, Oauth, Zinc, Zodiac S. van Caekenberghe)
  • 34. Glimpse at 3.0OPAL visitor and IR compilation chainAthens (vector graphics)Integration processNew widgetsUIPainterValidated packages
  • 35. Distributions: towards acertified catalogI 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. AutomatedValidationConfigsDistributionInboxConfigsDistributionConfigsBrokenDistribution
  • 37. ProcessYou use Metacello!You publish in your repo!When you want you can release code to a distributionAll 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 :)
  • 38. MyProjectConfigOfMyProjectMyCoreMyUtilsMyTestsConfigs13DistribInbox13Distrib13DistribBrokenConfigsConfigsConfigs14DistribInbox14Distrib14DistribBrokenConfigsConfigsConfigs15DistribInbox15Distrib15DistribBrokenConfigsConfigs
  • 39. + SpecificationsCoreCertifiedPackagesSpecificImagesCertifiedPackagesloadsproducesCoreSpecCertified packagesChangesNew CoreNew SpecNew Certified packages
  • 40. Consortium & AssociationHow to sustain Pharo?How to structure the community?Let us talk about it tomorrow :)
  • 41. Pharo Consortium@@ Web site @@
  • 42. 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
  • 43. Pharo User Association
  • 44. Pharo User AssociationManaged by the Pharo AssociationIndividualsPremium (99 Euros)Normal (40 Euros)Join and participate what we do!
  • 45. Pharo booksPharo by exampletranslated to french, merci!translated to spanish, gracias!translated to japanese, ありがとう!german started
  • 46. New books are comingDeep into PharoPharo for the EntrepriseIf you want to contribute...A glimpse at VM
  • 47. The future is what we do!
  • 48. Every single contribution isimportant
  • 49. Everybody can helpReporting bugsConfirming bugsWriting testsWriting examplesWriting commentsSimple contributing fixesDiscussion, feedback
  • 50. Open Pharo SprintsMay 2008 BernJuly 2009 BernOctober 2009 LilleNovember 2009 Buenos AiresMarch 2010 BernMay 2010 Buenos AiresJune 2010 BernJune 2010 BruxellesJuly 2010 LondonSeptember 2010 BarcelonaSeptember 2010 LilleJanuary 2011 LilleJuly 2011 LilleOctober 2011 BruxellesFebruary 2012 BernOctober 2012 BernApril 2012 LilleAugust 2012 GhentOctober 2012 Perto MadrynJanuary 2013 SantiagoFebruary 2013 LilleApril 2013 Lille
  • 51. http://www.pharo.org
  • 52. Creating good energy,software quality,learning and having funhttp://pharo.orgJoin Us

×