I am assistant professor and researcher in Communication studies at the University of Burgundy in Dijon. My researches are mostly focused on the evolution of social mobilisation and citizen engagement at the age of the Internet. I try to better understand the impacts of digital practices on the emerging and building processes of social critique.
I have recently worked on a new research exploring the on line political debate and collective action forms hosted in the Discord channels supporting the political mouvement « La France Insoumise ». This community acts autonomously in the margins of the official political organisation. It was not the first time I was working on the ethnographic observation of an on line political community and dealing with a huge amount of data. But this time I had the chance to experiment the potentialities of Pharo system applied to the Social Sciences research. Esteban Lorenzano developed a Pharo tool that he ironically called « Record » as it is able to Record the Discord. https://github.com/estebanlm/record
Still experimental, this tool allows the researcher to store different channels of debates and to update them by a simple click without opening the Discord platform. Moreover, it can index the posts by date, author or semantic fields. It is really an amazing tool for creating and analyzing on line corpora by avoiding the tedious manual importing activities. It allows you to easily and quickly import pertinent data, identify the whole content published by a single author or dealing with a specific issue. It can also help you in working with statistics of words or other types of discourse analysis methods.
The first results of this project have been presented in the paper « La politique aux marges du parti : enquête sur les débats numériques des militants de la France Insoumise » at the Conference « La politique autrement, innovations citoyennes et défiance partisane » that took place the 12th and the 13rd of October 2017 at the « Maison des Sciences de l’Homme » in Dijon.
The work is still on going and we are figuring out new functionalities and new synergies between the Open Source and the Social Sciences universe. Informatics can serve social purposes and critical thought :)
Thanks Pharo !
Our first MVP (Contestia Darwin) is aimed to help hosting startup contests and hackathons. You start defining the input form. Once you start receiving applications, you invite evaluators to work on them. Finally, you choose the criteria to determine which applications pass to the next round(s) (or win the contest). You get immediate visibility of how the contest is progressing, identifying any hotspots you need to pay attention to.
Currently, one of our key customers, BBVA's Innovation Center, is using Contestia to manage all the workflow details for the BBVA Open Talent 2017 (https://www.centrodeinnovacionbbva.com/en/opentalent):
The world’s biggest fintech challenge for startups, which this year has grown significantly. A truly global hunt for the best of the best in the world of fintech and digital banking
Contestia is based on an event-based microservices architecture. The core and other services are running Pharo 6 and are integrated with other microservices based on different stacks through asynchronous messaging using RabbitMQ and REST APIs.
Pharo has been a key piece to successfully apply our Domain-Driven Design (DDD) approach for Contestia development. We have developed a service following an hexagonal architecture and based on event sourcing and CQRS. Pharo provides an agile live development environment that allows us a very fast development pace and building a reliable and maintainable software system said R. Luque from OSOCO.es
CliPro is a surgery appointment planner for an eye surgery clinic. It is web based and enables all employees to work with by using a web browser. The backend system interfaces a legacy patient management system and microsoft exchange calendars as data sources.
CliPro finds, based on doctors working schedule and type of surgery, the best possible date for a planned surgery. Phases of a surgery a mapped onto workflows and made accessible to the staff in charge. Working plans and fill-out forms are prepared by CliPro for print out.
iPOS, integrated Points Of Sales, is a complete integrated solution to manage points of sales. iPOS is a very flexible and adaptable to various operational needs to answer at the different customer requirements.
With iPOS you can manage orders using mobile devices connected via wifi, select the products according to functional classification considered the most useful (for the restaurant: drinks - cooking products - pizza etc. etc.) managing so hundreds of products with just a few clicks.
Once the ordering done, the system handles the production steps at the processing centers (the pizza oven - kitchen - ..). Each machining center is equipped with an interactive display and / or tickets printer, by means of which are reported in detail the productions to be performers.
iPOS manages payment step through various cash points, recovering and integrating any orders or creating new shopping lists, with the possibility to scan the products that have an associated a bar code (such as those on cigarette packets).
Pharo speeds up our development cycle, greatly reducing the time between conception of a feature and its realization of the same, through a continuous improvement cycle.
The application setting, which replicates the real world, is another key aspect, because it allows a realistic verification of what is developing. "Coupled with Gemstone object-oriented database the deployment works like a charm," said Dario Romano Trussardi developer of the application.
From 2008 to 2015 ATMs deployed in Moscow streets were developed and run using Pharo. People use them to pay for services with cash and cards (phone, internet, taxes, parking, etc).
"Pharo was a really enabling technology. We developed user interfaces using advanced flow control based on continuations and mixed prototype with class-based programming. We supported various kind of equipment and allow customers to tune application look and feel preferred for their business. Pharo lets us develop fast a reliable and flexible software system. Now we can say it publicly!” said Denis Kudriashov Chief architect.
www.321via.ch is a free swiss platform for learning the Italian language. Italian is one out of four swiss national languages. The platform's intention is to help the swiss people in learning the Italian language by doing e-lessons with content from the Italian part of Switzerland.
The platform went online in fall 2016 and has won an international e-learning prize from the IELA E-Learning Association.
Users can quickly register by login through Facebook, Google or directly on the platform and start doing lessons, keep track of their results and collecting them in their portfolio and download a PDF certificate. For teachers there are many special functions to use the platform within their classroom.
There is a backend for the e-lesson editors, who can create the lessons with a specialized webbased construction tool. They can composite a lesson from many exercise building blocks.
Technically it is developped on Pharo 4 and runs on GemStone on the production server. We use Seaside and Pillar as external libraries.
ALLSTOCKER (https://allstocker.com) is the Asia's largest online marketplace for industrial machinery such as construction equipment and agricultural machinery. A Japanese startup called SORABITO Inc. is developing and operating it. The beta version of ALLSTOCKER was released in March, 2015, and it was officially launched in November, 2015. Construction equipment, in demand for building and road construction, are traded not only in Japan but across the world. By switching from the analog sales method to an Internet-based method, customers can make secure transactions anytime, anywhere. This also solves the challenging problem of selling and purchasing large sized, expensive products online.
ALLSTOCKER was developed using Pharo. Major frameworks such as Seaside, Teapot, Mustache, and Glorp are used. Also, we have developed AWS SDK, Elasticsearch API Client, etc. that are required for the service and stored them on SmalltalkHub amongst others. ALLSTOCKER was first developed using Pharo 3.0; currently, it is being transitioned to Pharo 5.0.
"With Pharo, we could quickly develop our ideas and projects. It continues to provide high value to our clients. It is also very impressive that we could develop our first prototype in two weeks. I think it is an excellent development environment for startups to use. In Japan, there are only a few developments that use Pharo, but we also want to spread this wonderful development environment," said Sho Yoshida, CTO of SORABITO Inc.
Lam Research, a leading supplier of wafer fabrication equipment and services to the global semiconductor industry, is an experienced user of the Smalltalk programming language. Smalltalk is a key component in Lam's software control system for a broad range of the equipment it manufactures. Tudor Girba is a leading member of the tools and environment development effort in Pharo, having architected the Glamorous Toolkit for live programming. Eliot Miranda is author of the Cog virtual machine that underlies Pharo and other Smalltalk dialects.
Lam has engaged Tudor and Eliot to explore potential enhancements in Lam's use of Smalltalk. These enhancements range from running highly optimized Smalltalk on low cost, single board computers, to enhancing Lam's Smalltalk development practices with state-of-the-art live programming. During the engagement, Tudor and Eliot successfully moved a key communication component of the control system to Pharo. It was a challenging task aimed at extending the reach of Lam’s system to the Pharo world including the option of executing on ARM processors.
Sysmocom is a leading provider of Free Software Mobile Communication solutions. In 2012 we have started a long term project to develop a complete ASN1, TCAP, MAP, CAP, GSN stack using the Pharo Object Environment. We have decided to use Pharo because of the increased productivity, the great tooling, the live inspection and if necessary modification of a running system to deploy a critical bugfix. Pharo has allowed us to focus on what is important.
The stack was used to uncover security and privacy issues inherent to the MAP protocol design in 2014/2015. We have used the stack to build a carrier-grade AuthenticationCenter (AuC) and helped a customer to move their production traffic off a proprietary system to ours. We look forward to move a HomeLocationRegister (HLR) into production this year. said Holger Freyther CEO.
IDE4PLC (https://ide4plc.wordpress.com/) is a programming environment for Programmable Logic Controllers (PLC), a family of embedded computers widely used for automation tasks in industrial environments. It supports the graphical language Ladder, allowing a user experience similar to that given by mainstream commercial tools. IDE4PLC is based on an abstract model of controller, what enables it to support different controller architecures, and on a software model which strictly complies the IEC 61131-3 standard. It is a free, open and multiplatform (Windows, Linux, IOS) product, contrarily to most PLC programming environments and tools, which are tightly coupled with device vendors. This product is developed mainly by Eric Pernia. Carlos Lombardi collaborates with the software design.
IDE4PLC is the official PLC programming environment for CIAA project (http://proyecto-ciaa.com.ar), an initiative by ACSE (http://www.sase.com.ar/asociacion-civil-sistemas-embebidos/) and CADIEEL (http://www.cadieel.org.ar/esp/index.php) supported by several institutions of the state, university, and business sectors, aiming to design and assemble Open Industrial Computers in Argentina. As such, it was shown in several academic and business events across the country.
IDE4PLC is completely developed on Pharo, using Morphic extensively for the complex and highly-dynamic GUI for graphical programming. The combination of the agility of the programming experience in Pharo, the features given by Morphic for flexible and interactive UI, and the modeling power of object-oriented design, allowed to craft IDE4PLC in one person-year, an order of magnitude less time than that what can be expected using more traditional tools and methodologies. The ability of explore the software model of a running IDE4PLC instance, and to perceive immediately the effects of code change, were crucial for the success of this project. Carlos Lombardi.
FINWorks http://finworks.biz provides online system services in the Financial Services industry. FINWorks started out as a consulting company in 2005. It provided outsourced development services from 2006 (in Smalltalk mostly). In 2007 the company started the development of its own system, in Smalltalk. FINWorks gradually improved and expanded our system and through the years the business moved to where all revenue come from providing the system as a service.
FINWorks currently runs 7 live systems, which include hot standby, test and training environments for each customer. Each customer’s site is custom branded. Each customer uses different parts of the system functionality, with various degrees of overlap. We provide an all in service, including hosting and support; the customer needs internet access and a web browser. The system is mobile phone and touchpad friendly.
The system runs entirely on Pharo in the development environment and is deployed to GemStone for object persistency. We believe that this technology enables implementing systems with complex problem domains and a high degree of customisation. Pharo certainly is a core technology component in our company and we will continue to rely on this tool. said O. Behrens CEO
Phratch http://www.phratch.com is a visual programming language based on Scratch (https://scratch.mit.edu/) on top of Pharo. More than just an overlay, the goal of Phratch is to bring closer the visual blocks and the language. Phratch is highly extensible, which makes it easy to implement new blocks and new features. The main goal of Phratch is to become a robotics development environment for non-experts. It already works on top of the Lego Mindstorms using the JetStorm library and on the Robosoft Kompai.
Phratch is based on Pharo because Pharo provides a lot of stable and innovative libraries. For example, the Fuel serializer is used for saving Phratch projects, the Metacello version manager is used to manage add-ons. Another thing that makes Pharo the best choice for Phratch is the community activity: as a developer, I am sure to have a great support when I have problems with a library. J. Laval.
Some cool videos:
Cable eXpertise is a system for monitoring a network headend for small ISPs. It provides a high level dashboard with key indicators colored according to a policy that looks on the condition of the parts making up each top level element from which the user can then drill down. Based on a configuration tree for the equipment configuration, it provides an inspector-style UI to explore various contextual aspects of a configuration element such as monitoring graphs, modem views, temperatures, … It also works on mobile with a responsive UI.
Pharo proved to be instrumental in delivering a working system, especially when it comes to understanding what’s going on under the hood during development. It also enabled to discuss and explore issues with non-technical people easily in the live, interactive environment over screen share sessions, as well as to quickly understand (and fix!) what was going on on production sites using the integrated VNC server said Philippe Back, lead developer.
The Citroen Multicity partner platform was a system for geo-fence based marketing in the car rental market. It enabled companies to place shops and offers onto a city map to be advertized when customers are nearby. On occurrences like the return of a rental car the system will figure out nearby advertisements and will contact the customer via mobile phone to send an offer. Received messages can act as vouchers for the offer.
''Pharo has been very helpful in that project. The unique development experience made it possible to realize this project in a short time frame. The whole system of managing mobile devices, mobile messaging and geo advertisement is driven by the pharo runtime. Pharo is an integral part of development at 2Denker" -- N. Hartl CTO of 2Denker
Pharo @ Beta Nine
Since 2010, Pharo is an important part of the technology stack of Beta Nine for the development and daily operation of the T3 Platform.
From the REST back end for T3 Easy to the T3 Mobile responsive mobile first web app, over binary protocol proxies to the data mining for housekeeping, bookkeeping & invoicing, and prototyping for new product development, Pharo has proven itself again and again in commercial production use.
For more information, https://medium.com/concerning-pharo/pharo-beta-nine-59ee972d321a
Quuve is a portfolio management and research platform for securities investors. It is a virtualized, scaleable, web application developed with Pharo and deployed on GemStone/S. Quuve is a product of Debris Publishing, Inc..
The initial vision for Quuve in 1996 was an economics simulator for the purposes of investing. In 1998 the first steps were taken to model businesses using spreadsheets for the purposes of value-based investing. The Quuve Dream grew into one of an integrated environment for securities research and portfolio management; as the dream grew larger it slithered across Python from: 2001 to: 2007. Exhausted by the constant language revisions of Python, Quuve was migrated to Smalltalk in 2007. By 2012 we began to add a web user interface via Seaside and a host of other wonderful, free tools available in the Pharo environment. While the economics simulator has not yet been realized, we have realized a powerful portfolio management and research tool.
Pharo has and continues to provide us with a first class development environment, which coupled with the expressiveness of Smalltalk, has allowed us to produce a powerful product (Quuve) with minimal effort. Pharo combined with GemStone/S gives us everything we need to build a real application for Big Data using a language we like. Compared to the spreadsheet prototypes crafted back in 1998, Quuve is in a new league now. said Cameron Sanders CEO
iBizLog was an eCommerce of eCommerces. Everything you can find in a professional eCommerce.
- Shopping Cart
- Sales Tracking
- Easily scalable
It was developed by one person in six months, one third of the time and people estimated on other platforms. - Esteban Lorenzano, CTO
Yesplan (http://www.yesplan.be/en) is versatile software for efficient event planning, built with Pharo, the Seaside web application framework and GemStone/S.
Yesplan came into being as a result of Arts Centre Vooruit’s search for good software to support its activities. Because it couldn’t find any solutions which were suited to the specific characteristics of the planning process for events, Vooruit decided to develop it itself. As a consequence Vooruit entered into a collaboration with Inceptive bvba, set up by three PhD software architects. This meant that Yesplan was building on functional and cultural expertise on the one hand and technical knowhow on the other. Today Yesplan is the largest SaaS firm in the events planning sector in Benelux and the software is frequently praised for its intuitive and flexible interface. In the coming years Yesplan will continue to concentrate on arts institutions, cultural centres, festivals, city events, events agencies and events locations worldwide.
“Pharo's live programming environment is essential to succeed in Yesplan's fast-paced development roadmap.“ - Johan Brichau, Director of Technology and co-founder.
Pharocloud is a Platform-as-a-Service provider which gives Pharo developers a tool for deployment of web applications in cloud. Our aim is to make a process of web application running regardless of its complexity as easy as making a couple of clicks. Pharocloud provides a developer with Pharo itself and the whole infrastructure needed for complex web-applications like databases, file storages and others.
More than a year of our experience with Pharocloud assured us that Pharo is a perfect platform for business-oriented web applications. We have a strong belief that it will definitely take its major place in the global market of web applications in the future. Therefore Pharocloud global idea is to develop a Pharo platform for web application market, which will allow Pharo developers to easily distribute their business web-applications in the world. said Mike Filonov PharoCloud CTO
Dr. Geo is an open, easy to study, modify and extend interactive geometry software working on most platforms and tablets and even XO. It is distributed with its source code that you can modify while using it. Dr. Geo XO bundle was downloaded more than 180'000 times! And DrGeo won several prizes. Ten years old kids use Dr. Geo to explore Euclidean geometric sketch, agile kids extend and program it with its embedded dynamic language and user interface.
What sets Dr.Geo apart from the other geometry software is the possibility of studying and even modifying/extending its source code while s/he is using it to create a figure.
All in all, its philosophy is also to empower the user with direct access to the Dr. Geo arcane and programming. For example, with script, one can build a geometric sketch to compute the slope at an arbitrary location of a given curve. Dr. Geo is Modify-me Ready! But don't be afraid, if you only want to design interactive sketch, Dr. Geo is intuitive and easy to use.
Programming in Pharo is addictive, fun and fast (H. Fernandes)
Spesenfuchs is a web application for Travel Expense Accounting according to the german law. It is written in Pharo and uses MongoDB.
"Pharo is a powerfull and stable development environment. Together with its web framework seaside and a lot of useful software parts like integration of JQuery, Rickshaw, MongoDB and the pdf generator Artefact, it is possible to write software which is reliable and maintainable. The very active and friendly pharo community makes it a pleasure to work with Pharo." (S. Knoefel) CEO
Post-ID and MBagger are developed by http://www.pinesoft.co.uk. Post-ID supports scanning addresses and information about postal items efficiently. MBagger is a standalone product to copy address labels quickly and efficiently, offering a 100% return on investment typically within 100 hours of use. Both are based on the Pinesoft toolkit.
We have worked with Pinesoft over several years and it helps that they are familiar with our business as well as our technology requirements. Paul Taylor, CEO, Swiss Post
The Pinesoft toolkit has a modular architecture, where each module, referred to as a processor, represents a different part of a process flow. Unique applications are created by selecting a collection of processors, configuring how each processor behaves, and deciding how the selected output or selection of outputs of a processor are mapped, (“wired”), to the selected input(s) of another or other connected processor(s).
Object Profile is a company founded in 2012 that develops code software engineerings tools for VisualWorks and Pharo programmers. Users of Object Profile range from academic research group to large coorporations.
"Pharo is a booster of ideas, a rocket for prototyping, a platform to make things happening. Agility supported by its programming environment significalty reduces the usually high time-to-concretize of ideas." - Alexandre Bergel
CSOB Financial Markets and KBC Research mobile applications provide everyday news and broad analysis from financial markets, annual and quarterly forecasts, calendar of important events from markets, FX and interest rates. They are free of charge for Android and iOS (CSOB Financial Markets apps Android / iOS KBC Research apps Android / iOS). They serve more than 5000 users daily.
All mobile applications are powered by a backend written in Pharo 1.4 and Pharo 3.0 with the help of most popular and successful Smalltalk frameworks such as Seaside and Seaside-REST, JQueryMobile, Magritte (a metamodelling solution), Fuel (a fast serializer) and Zinc (a professional HTTP server).
Original Pharo 1.4 solution successfully passed security and penetration tests. It is in production since more than one year operation in CSOB Financial Markets. Pharo 1.4 solution was smoothly upgraded to Pharo 3.0 version together with the upgrade of all frameworks to the latest stable versions.
About CSOB, CSOB is a universal bank, which is one of the top three banks in the Czech Republic. CSOB is a wholly-owned subsidiary of KBC Bank NV based in Brussels, Belgium.
Using Pharo has been a real success in terms of development costs: we developed the full solution in less than 3 months while estimates made by other teams were from one and half year to two full years. Pharo’s agility, mature frameworks and powerful tools are a killer app. And this is fun to develop in Pharo. said T. Kukol lead architect.
Airflowing was a web application that provides management to service companies. With simplicity in mind, it allows your operations team to coordinate jobs and tasks across different teammates and have all your clients' jobs organized in one place. It allows you to send estimates, outsource jobs and also keep all its financials clearly and easily organized.
The history here in the company is divided in two parts, in terms of organization: before airflowing, and after airflowing. Before, we had many flaws, today, our efficiency is... Different? A whole lot better ~ Zepa Gonçalves founder of Zepa Cine Video
Here is an interview with one of our customers, Zepa Gonçalves founder of Zepa Cine Video (includes english captions):
Airflowing runs on an architecture that allows to nicely scale load demand horizontally across many Pharo workers and servers with ACID transactional features. Is using Seaside as foundation plus flowing’s own conventions and code on top of it.
Pharo is the first thing that came to our minds to make a business based on open source Smalltalk. Pharo is strategic for flowing. Is just too productive to ignore. ~ Sebastian Sastre founder of flowing
VBridge was a webapp to select job agencies.
Synectique is a company founded in 2013. The company proposes innovative solutions to understand and maintain software, and manage software quality. Synectique, harnessing the power of meta-tools and more than 35 years of experience offers tools specifically adapted for clients' needs of software analysis and enable decision. Inventive Toolkit, Synectique solution, integrates several tools for software analysis: dashboard with key indicators, duplication detection, impact analysis, reverse engineering legacy applications, control over fine-grained software evolution, dedicated rules, and developer comprehension tools. Inventive Toolkit’s extendable engines (parser, tool builder, visualization, meta modeling, metric generators...) allow Synectique to deliver new analyses to cover any company-specific customizations. Inventive Toolkit is already deployed and used by prestigious clients: Generali-FR and Generali-BE (insurance), ATOS (consulting) and Thales (military).
"Pharo provides the enabling technology for Synectique solutions. Specifically, Moose with its software analysis engines for parser, meta-models for software artifacts, browsers, and visualizations make it possible to propose adapted and customized solutions. The technologies in Pharo provide an excellent leverage to prototype a software analysis solution for a new language from the ground up in a matter of a few weeks. Once software information identified and represented, award-winning technologies in Pharo provide vehicles to express user interfaces, which show pertinent information for decision-making. From the language point of view, pure object-orientation, testing frameworks, full-stack debugger, object inspector, reflection facilities, and other innovative features make it first choice development platform for developer productivity and quality software development." - Synectique CTO, Usman Bhatti
Reflex vacances was a french platform for holiday rentals.
This is an iOS/Android application with backend developed in Pharo.
http://www.siropglobal.com is a publish & search web platform for scientific projects (Master, Bachelor, PhD, etc.). It has more than 6000 registered users (Scientists & students) and several thousand unregistered public users (Students)
- It has extended and simple search interfaces. User can save his search queries and create RSS/XHTML/XML-Feeds.
– It supports I18n for GUI and data objects. All content from the user can be multy-language. – Free form user data objects. The user can define the structure of his published information. – Workflow & todo management for users – Email notifications & mass email handling – Landing pages management. Admins can install predefined search results for landing pages. – Sophisticated user permission framework. Each user carries „badges“, which can allow/deny an action – Internal Smalltalk based search optimisation (No SQL database, no external search indexer) – Lots of complex user interfaces (Seaside components) – User friendly multistep wizards (e.g. for publishing process). Temporary work is being stored as draft automatically. – Separated comprehensive backend UI for admins
GetItMade was a platform to support crowdfunding for innovators. It was developed in 2010 in a couple of months. It proposed batch production, selling before, no loss of IP, serve the long tail & niche markets.
It was built in Pharo and based on the Pier CMS with the Magritte meta model and Seaside 3.0, JQuery UI. Pier gave a competitive advantage for building it: It supports restful url handling, user permissioning and management, add-ons (blog, twitter, tag-cloud, search), consistent way for add-ons to access the model.
The world’s first online platform fully supporting risk-based test management.
NoRizzk is an innovative platform for risk-based test management.
"The experience with Pharo exceeded our own expectations. During the sales phase we were able to prototype a working version of the product while our competition was still sketching PowerPoint presentations. Once we went into production the servers ran uninterruptedly for months, without a single glitch nor downtime." - Esteban A. Maringolo (CTO)
TrentoSur is a company funded in 2013 that develops mobile software solutions for the trade and retail industry, backed by Pharo running in cloud servers. The company has large consumer goods manufacturers as its customers and currently has two Pharo enabled solutions.
One solution is for scheduling and routing management of manufacturer's retail stockers working in the biggest chain stores in the country (Argentina). This solution comprises a REST API for the mobile application, as well as web based administration and dashboard features built with Seaside. This solution was released by the end of 2013, and its been running flawlessly since then.
Recently, it released a second software solution for the reception of transfer orders performed during trade fairs. The application runs in tablets, and the server comprises the same features as the previous one.