WEBVTT

00:00:08.450 --> 00:00:11.110 align:middle
If you are either a beginner or 
an expert in object-oriented programming

00:00:11.110 --> 00:00:13.970 align:middle
you will love this MOOC because
it will change the way you program with objects.

00:00:14.190 --> 00:00:17.310 align:middle
I am Stéphane Ducasse, with
Luc Fabresse and Damien Cassou,

00:00:17.310 --> 00:00:19.090 align:middle
we will present this
MOOC about Pharo.

00:00:19.290 --> 00:00:19.970 align:middle
What is Pharo? 

00:00:19.980 --> 00:00:22.970 align:middle
Pharo is a dynamic and pure language
that will offer you

00:00:22.971 --> 00:00:25.490 align:middle
a unique development experience
in which you will be 

00:00:25.490 --> 00:00:27.459 align:middle
in constant interaction
with live objects.

00:00:27.460 --> 00:00:30.900 align:middle
Pharo is a language and an open source
environment in the tradition of Smalltalk.

00:00:30.900 --> 00:00:35.640 align:middle
It is fun to use,
elegant and very powerful.

00:00:36.080 --> 00:00:37.600 align:middle
Why do I say that
Pharo is elegant?

00:00:37.600 --> 00:00:40.590 align:middle
In fact, it is very simple:
its full syntax, and I insist

00:00:40.590 --> 00:00:43.529 align:middle
on “full”, can be written
on a postcard and its object-oriented

00:00:43.530 --> 00:00:46.900 align:middle
model written in 4 lines. 
Moreover, Pharo and its environment are

00:00:46.900 --> 00:00:50.220 align:middle
written in Pharo itself exclusively 
with objects and messages.

00:00:50.550 --> 00:00:53.310 align:middle
All these points make Pharo
very easy to learn and

00:00:53.310 --> 00:00:55.670 align:middle
once you have understood the syntax,
you will have access to

00:00:55.670 --> 00:00:58.400 align:middle
the whole Pharo world, hence it is written 
in Pharo itself.

19 align:middle
00:00:58,630 --> 00:01:00,780
That is why Pharo is
used in about thirty

00:01:00.780 --> 00:01:03.700 align:middle
universities all over the world
to teach object-oriented programing.

00:01:05.430 --> 00:01:07.700 align:middle
In this MOOC, you will
discover that Pharo is fun.

00:01:08.240 --> 00:01:10.820 align:middle
In fact, when programing in Pharo,
you are immersed in a world of 

00:01:10.820 --> 00:01:13.230 align:middle
live objects. Each time 
the programer modifies 

00:01:13.230 --> 00:01:16.610 align:middle
its code, the 3D animation changes
and he can see immediately

00:01:16.610 --> 00:01:17.200 align:middle
the result of its program.

00:01:18.240 --> 00:01:21.080 align:middle
In Pharo, the programer modifies continuously
objects with immediate feedback.

00:01:21.250 --> 00:01:24.630 align:middle
These objects can represent web 
applications, graphics in 2D,

00:01:24.760 --> 00:01:27.630 align:middle
in 3D, network,
or even code itself.

00:01:28.090 --> 00:01:30.400 align:middle
You will see that in Pharo
everything is object.

00:01:30.820 --> 00:01:32.930 align:middle
In this MOOC, you will discover
that Pharo is also a powerful

00:01:32.930 --> 00:01:36.370 align:middle
language, used in companies.

00:01:36.640 --> 00:01:38.550 align:middle
And you can discover
some success stories

33 align:middle
00:01:38,550 --> 00:01:39,590
on Pharo’s website.

00:01:41.770 --> 00:01:44.520 align:middle
In this MOOC, we will also
present Pharo’s web stack.

00:01:44.530 --> 00:01:46.850 align:middle
and how this stack revolutionizes
the way web applications

00:01:46.850 --> 00:01:49.340 align:middle
are designed. 
During this MOOC, you will deploy

00:01:49.340 --> 00:01:51.590 align:middle
a web application fully written
in Pharo.

00:01:51.780 --> 00:01:54.450 align:middle
Beyond this, we will revisit
fundamental principles

00:01:54.450 --> 00:01:57.560 align:middle
of programing by illustrating
how Pharo uses them.

00:01:58.020 --> 00:02:00.460 align:middle
We will present some coding idioms
and design patterns

00:02:00.460 --> 00:02:01.620 align:middle
to better design web applications.

00:02:02.220 --> 00:02:04.540 align:middle
Such concepts can be applied
to any object-oriented language

00:02:04.590 --> 00:02:05.250 align:middle
beyond Pharo.

00:02:06.400 --> 00:02:08.750 align:middle
Moreover, you will have access to 
many resources such as

00:02:08.750 --> 00:02:11.370 align:middle
the book “Pharo by example” which is
available on Pharo’s website.

00:02:11.620 --> 00:02:14.480 align:middle
For the most experienced of you,
this MOOC will provide a new

00:02:14.480 --> 00:02:17.200 align:middle
vision of the fundamental principles
of object-oriented programming

00:02:17.430 --> 00:02:19.540 align:middle
(i.e. late binding 
and polymorphism).

00:02:20.020 --> 00:02:23.520 align:middle
Through out this MOOC come and 
discover or rediscover object-oriented

00:02:23.520 --> 00:02:25.900 align:middle
programing in a different world,
the world of Pharo…

