Pharo Days 2017

May 18 & 19, Lille, France

Mark your calendar: on Thursday 18th & Friday 19th of May we are organising the Pharo Days 2017. This year we moved the location to Lille, France.

Schedule

Each day has a similar schedule. The morning consists of a handful of twenty minute tech talks, the afternoon is an open pair programming workspace, coding sprint and free demo room.

Slides:

Videos:

Thursday May 18 Morning

  • 08:30–08:45 — Registration and Welcome
  • 08:45–09:00 — Welcome (S. Ducasse)
  • 09:00–09:20 — Pharo 6 (M. D enker, P. Krivanek, E. Lorenzano)
  • 09:30–9:50 — 64 bits (E. Lorenzano)
  • 10:00–10:20 — VM Performance: Sista (C. Béra)

10:20–10:50 — Break

  • 11:00 – 11:20 — Raspberry is Getting Live with Pharo (D. Kudriashov)
  • 11:30 – 11:50 — Xmpp (P. Back)
  • 12:00 – 12:20 —Robotic Exploration and Mapping with Pharo (J. Dichtl, N. Bouraqadi and L. Fabresse)

12:30–14:00 — Lunch

Thursday May 18 Afternoon

  • 14:00 – 14:30  — Iceberg: Git with Pace in Pharo (E. Lorenzano)
  • 14:30 – 14:50  — Bloc tutorial (A. Syrel)
  • 14:30 – 14:50  — Coding Time

15:00 –15:30 — Break

  • 16:00 – 17:00 — Bloc tutorial (A. Syrel)
  • 16:00 –17:00 — Coding Time
  • 17h:00 – 17:20 — PharoJS (N. Bouraqadi)
  • 17h:30 – 18:00 — Navigating the blockChain (S. Bragagnolo)

19:00–21:00 — Social Event & Lunch

Friday May 19 Morning

  • 09:00–09:20 —Pharo 70 roadmap (S. Ducasse)
  • 09:30–9:50 — Seaside and ReactJS (J. Brichau)
  • 10:00–10:20 —Material Design Light for Seaside (C. Ferlicot)

10:20–10:50 — Break — Project Expo

  • 11:00 – 11:20 —Calypso (D. Kudriashov)
  • 11:30 – 11:50 — GT4Gemstone (A. Chis)
  • 12:00 – 12:20  — Jira API Automator, Jira Backup Explorer (P. Back)

12:30 – 14:00 — Lunch

Friday May 18 Afternoon

  • 14:00 – 14:20 Understanding Rewrite Expressions (J. Lecerf)
  • 14:30 – 14:50 Cargo preview (C. Demarey)

15:00 – 15:30 — Break 

  • 15:30 - 16:00 Show us your project
  • 16:00 – 16:40   — News about the consortium (S. Ducasse and C. Béra)

Registration

The registration is via this link https://association.pharo.org/event-2466801 (even if you are not member of the association). For association members, the reduction will be computed automatically.

The Pharo Days are a two day event with catering included (2 lunches, 1 diner, drinks and snacks) in a nice environment with full facilities (main room, auxiliary rooms, office furtniture and wireless network).

  • € 199 — Regular
  • € 149 — For individual Pharo Association Members
  • € 89 — For individual Pharo Gold Association Members
  • € 89 — For Pharo Consortium Members (1, 2 or 4 for bronze, silver or gold)
  • € 39 — Students (including diner)

Talks

Pharo 60

Summary Pharo 60 is about to be released and this talk will cover some of the work done during this year.

Pharo 70 roadmap (S. Ducasse)

Summary Pharo 70 will focus on stabilisation of a new process where Pharo source code will be stored in Git. It will see the use in production of the pharo bootstrap. Still new features are lurking at the start of Pharo 70. The new code pluggable browser, named Calypso (a famous explorer boat) will replace Nautilus. Calypso is able to browse remote system, ring metamodel. With Calypso will come also a command frameworks to be used everywhere in the system. We will take the opportunity of this talk to get feedback from the community in terms of missing features or parts of the system that deserve more love.

Robotic Exploration and Mapping with Pharo (N. Bouraqadi, J. Dichtl, L. Fabresse, and G. Lozenguez from IMT Douai)

Summary Indoor robot operations require robots to explore buildings and map them by themselves. This task is a prerequisite to any application such as packet transportation in a warehouse, guiding people in a museum, or delivering drugs and blood samples in a hospital. The challenge of robotic mapping inside a building is that GPS signals are unavailable. Therefore, robots rely on embedded sensors such as laser range sensors, to localize, as well as discover and map the environment. In this talk, we present our ongoing effort to build end to end Pharo-based robotic applications. This involves using Pharo for writing both robot drivers as well as code that perform heaving computations related to robotic Simultaneous Localization and Mapping (SLAM). We also discuss challenges we face including compliance with the existing de facto standard middleware ROS, testing, and obviously performance.

Bridging Seaside and ReactJS (Johan Brichau. 2Rivers)

Iceberg: Git with Pace in Pharo (E. Lorenzano)

Raspberry and Arduino are Getting Live with Pharo (D. Kudriashov and M. Denker)

Summary The traditional way of handling raspberry is to compile and deploy via ssh. Then when the code does not work, we should add trace recompile and redeploy. This talk will show how to manage RapberryPi device with Pharo using remote development tools.

gt4gemstone: molding objects with moldable tools in GemStone and Pharo by Andrei Chis

Summary gt4gemstone is a version of the Glamorous Toolkit aimed at supporting remote development with GemStone/S. The aim of gt4gemstone is to enable rapid customisation of development tools. Currently gt4gemStone makes it possible to express most custom views for GTInspector exactly in the same way both in Pharo and in GemStone. With the ability of having the same code working both in Pharo and in GemStone, the scenario of building in Pharo and deploying in GemStone is even more appealing (http://www.humane-assessment.com/blog/introducing-gt4gemstone).

Xmpp by Philippe Back

Summary XmppTalk is an XmppClient that uses LibStrophe as its XMPP communication library. LibStrophe provides encryption support. XmppTalk provides the ability to declare and write Stanza handlers in Pharo. This enables the developer to easily debug communication using the powerful Pharo debugging infrastructure and the XmppLogEvent inspired from the ZnLogEvent which makes the XMPP events easily inspectable in GTInspector. This translates into an ability to implement XEPs (XMPP Extension Protocols) easily. With XmppTalk, a Pharo developer can create custom XMPP clients for all kinds of purposes. It is worth noticing that WhatsApp and the US Military uses similar technology for their instant messenging needs. A set of XEPs are already implemented in XmppTalk. The intended use is to make it easy to create clients that can talk to each other, possibly supporting specific XEPs for business purposes (exchanges of contract, stock, presence, signature information) in real time and in a scalable manner.

Jira API Automator, Jira Backup Explorer, Zephyr Test Explorer, Cross Reports Generator and Web frontend by Philippe Back

Summary These are tools to extract and process date from the Jira agile issue tracking tool as well as from the Zephyr testing add on: They allow one to have a historical view of the activities of the team using Jira snapshots, produce contextual reports and help with tracking team activities at the budget level.

Used technologies: Pharo, XMLPullParser, Zinc, REST, GTInspector custom presentations, Announcers, Spec, Seaside, Material Design Lite, TaskIt2, ProcessWrapper, GTSpotter, Microsoft Azure, Windows Server 2012 R2, NSSM, Thinfinity Client

Calypso: a new tool suite for Pharo 70 (D. Kudriashov)

Summary Calypso project provides alternative tool set for browsing images. It implements system and method browsers based on new navigation model which is optimised for remote development. This talk will demonstrate current functionality of Calypso and will show with examples how to extend it. Calypso is extensible and it will replace Nautilus in Pharo 70.

Material Design Light for Seaside by Cyril Ferlicot

Summary Material Design guidelines defines a visual language for users that synthesizes the classic principles of good design. This specification developed by Google offer an alternative to the front-end framework Twitter Bootstrap.

In Material Design Lite for Seaside we offer simple web components following Material Design's guidelines for the visual aspect. We also build more complex widgets to ease the development of web applications.

Understanding Rewrite Expressions by T. Goubier and J. Lecerf

Sista:PharoVM performance (C. Béra)

Summary This talk summarises recent performance improvements in the Pharo VM, including GC and code execution speed-up. Then, short-term future work is discussed, with early results and integration status. Bio After working during 5 years on different aspects of the Pharo runtime as an engineer then as a PhD student, Clement is now finishing his PhD and is about to work on various evolutions of the Pharo virtual machine.

64 bits (C. Béra/E. Lorenzano)

Blockchain Analysis with Pharo (S. Bragagnolo)

PharoJS: Develop in Pharo, Run on Javascript (N. Bouraqadi)

Summary Pharo code available on repo: http://smalltalkhub.com/#!/~noury/PharoJS Doc available at: [http://pharojs.org/](http://pharojs.org/)

How to Reach us

The conference will happen at Inria Lille Nord Europe http://www.inria.fr/lille.

40 avenue de Halley
59650 Villeneuve d'Ascq

To reach the conference building http://rmod.lille.inria.fr/web/contact

GPS coordinates: latitude: 50.6057704 - longitude: 3.1501158

Getting to Haute Borne

By car:

If you are coming from Paris via the A1/E15 motorway:

  • Go past Lille, following the signs for Villeneuve d'Ascq/Roubaix/Gand/Bruxelles (A22 / E17)
  • Take exit 2 (Roubaix/Villeneuve d’Ascq N227).
  • At the traffic lights, turn right into Rue du Président Paul Doumer
  • At the first roundabout, turn right.
  • The Inria Lille – Nord Europe research centre is the first building on your left.

If you are coming from Tournai via the N7:

  • Follow the signs to Lille/Lamain
  • Follow the signs to Paris/Lille on the E42
  • Drive into Villeneuve d’Ascq and take the right-hand exit at the roundabout towards Rue Nicolas Appert (D146)
  • Continue straight on into Rue du Président Paul Doumer
  • At the first roundabout, turn right
  • The Inria Lille – Nord Europe research centre is the first building on your left.

If you are coming from Gand via the A22/E17:

  • Head towards Tourcoing Centre/Lille/ Paris
  • Drive past Roubaix and follow the signs for Paris/Villeneuve d’Ascq/Valenciennes
  • Follow the main road until you reach the exit marked "Cité scientifique"
  • At the roundabout, turn right and keep going until you reach the traffic lights.
  • Turn right into Rue du Président Paul Doumer
  • At the first roundabout, turn right
  • The Inria Lille – Nord Europe research centre is the first building on your left

By metro:

  • Take line 1 towards "4 cantons"
  • Get off at the "4 cantons" terminus
  • The centre is a five-minute walk from the station.
  • Take Rue Paul Langevin, near the guarded cycle park (a sign will point you towards the park)
  • After the Club House, cut through the car park on the right
  • Once you get to the roundabout, you will see the building on your left
  • Visit the Transpole website for further information about public transport in the Lille area