forked from SquareBracketAssociates/books.pharo.org
-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.html
281 lines (223 loc) · 16.3 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Pharo books</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- Bootstrap core CSS -->
<link href="css/bootstrap.min.css" rel="stylesheet" media="screen">
<!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!--[if lt IE 9]>
<script src="http://cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.2/html5shiv.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/respond.js/1.4.2/respond.js"></script>
<![endif]-->
</head>
<body>
<div class="jumbotron">
<div class="container">
<h1>Pharo Books</h1>
<p><a href="http://www.pharo.org/">Pharo</a> is a clean, innovative, open-source, live-programming environment. Get immersed in a world of living objects!</p>
<p>Contribute to the SquareBracketsAssociates community free books <a href="https://github.com/SquareBracketAssociates/">https://github.com/SquareBracketAssociates/</a></p>
</div>
</div>
<div class="container">
<div class="row">
<div class="well well-lg"><h1>Recent books</h1></div>
</div>
<div class="row"><!-- first row -->
<div class="col-md-4">
<a href="./learning-oop/" title="Learning Object-Oriented Programming, Design and TDD with Pharo"> <img src="learning.jpg" alt="Learning Object-Oriented Programming, Design and TDD with Pharo" class="img-thumbnail" style="height:400px"></a>
<p><em>Learning Object-Oriented Programming, Design and TDD with Pharo </em> is a new book on OOP and OOD using TDD and presenting essential aspects of object-oriented programming in Pharo. <a href="http://www.lulu.com/commerce/index.php?fBuyContent=21579230"><img src="http://static.lulu.com/images/services/buy_now_buttons/en/blue.gif?20180328205139" border="0" alt="Support Pharo books!"></a></p>
<p><a class="btn btn-default" title="Pharo By Example" href="./learning-oop/" role="button">View details »</a></p>
</div>
<div class="col-md-4">
<a href="./updated-pharo-by-example/" title="Pharo by Example 50"> <img src="upbe.jpg" alt="Pharo by Example 50" class="img-thumbnail" style="height:400px"></a>
<p><em>Pharo by Example 50 </em> is a new version of Pharo by Example for Pharo5.0. 2017</p>
<p><a class="btn btn-default" title="Pharo By Example" href="./updated-pharo-by-example/" role="button">View details »</a></p>
</div>
<div class="col-md-4">
<!-- <h2>Entreprise Pharo: separate folder treated</h2> -->
<a href="./enterprise-pharo/" title="Enterprise Pharo: a Web perspective"> <img src="pfte.jpg" alt="Enterprise Pharo: a Web perspective" class="img-thumbnail" style="height:400px"></a>
<p><em>Enterprise Pharo</em> is the third volume of the series. This book covers libraries and frameworks for enterprises, and in particular those doing web development. 2015</p>
<p><a class="btn btn-default" title="Enterprise Pharo: a Web perspective" href="./enterprise-pharo/" role="button">View details »</a></p>
</div>
</div> <!-- end of first row -->
<div class="row"><!-- second row -->
<div class="col-md-4">
<a href="./spec-tutorial/" title="The Spec UI framework"> <img src="spec.jpg" alt="The Spec UI framework" class="img-thumbnail" style="height:400px"></a>
<p><em>The Spec UI framework</em> explains the default framework for building user interfaces in Pharo, called Spec. 2017</p>
<p><a class="btn btn-default" title="The Spec UI framework" href="./spec-tutorial/" role="button">View details »</a></p>
</div>
<div class="col-md-4">
<a href="./booklet-WithStyle/" title="Pharo with Style"> <img src="bklet-Style.jpg" alt="Pharo with Style" class="img-thumbnail" style="height:400px"></a>
<p><em>Pharo with Style</em> explains the difference between code that runs and code that talks to the reader. 2019</p>
<p><a class="btn btn-default" title="Pharo with Style" href="./booklet-WithStyle/" role="button">View details »</a></p>
</div>
</div><!-- end of second row -->
<div class="row"><br><br></div>
<div class="container">
<div class="row">
<div class="well well-lg"><h1>The Pharo Technology Collection</h1></div>
<div class=".col-md-8">
<p class="lead">Far too many good chapters or material were written and pending to be part of a future book. But producing a good book is a huge task, so we decided to divide the work and produce autonomous and focused booklets. We are expecting to have GLORP, Magritte, Voyage, Reddit and probably much more as booklets. If you have material just contact us. We will migrate the current one to a good format and offer lulu printing.</p></div>
</div>
</div>
</div>
<!-- third row -->
<div class="container">
<div class="row">
<div class="col-md-4">
<a href="./booklet-Scraping/" title="Scraping with XPath"> <img src="./booklet-Scraping/bklet-scraping.png" alt="XPath HTML Scraping booklet" class="img-thumbnail" style="height:400px"></a>
<p><em>XPath </em> is a powerful technology. In this tutorial we show how we use it to scrap information from HTML page. Booklet written by S. Ducasse and P. Kenny. You can find the latest version <a href="https://github.com/SquareBracketAssociates/Booklet-Scraping">here</a>.</p>
</div>
<div class="col-md-4">
<a href="./booklet-Voyage/" title="Voyage"> <img src="booklet-Voyage/bklet-Voyage.png" alt="Voyage booklet" class="img-thumbnail" style="height:400px"></a>
<p><em>Voyage</em> is a powerful Object Mapper for Pharo. Booklet written by E. Lorenzano, S. Ducasse, J. Fabry and N. Hartl</p>
</div>
<div class="col-md-4">
<a href="./booklet-Glorp/" title="Glorp"> <img src="booklet-Glorp/bklet-Glorp.jpg" alt="Glorp booklet" class="img-thumbnail" style="height:400px"></a>
<p><em>Glorp</em> is a powerful Object Relational Mapper for Pharo. Booklet written by E. Maringolo, N. Pratt and R. Withney</p>
</div>
</div>
</div>
<!-- third row -->
<div class="container">
<div class="row">
<div class="col-md-4">
<a href="./booklet-Smacc/" title="Smacc: a Compiler-Compiler"> <img src="./booklet-Smacc/bklet-Smacc.png" alt="Smacc: a Compiler-Compiler" class="img-thumbnail" style="height:400px"></a>
<p><em>Smacc </em> is a powerful frameworks to parse languages. In this book we show how we use it first with a tutorial. Then we describe the advanced aspects of Smacc. Written by J. Brant, J. Lecerf, T. Goubier S. Ducasse, and A. P. Black. You can find the latest version <a href="https://github.com/SquareBracketAssociates/Booklet-Smacc">here</a>.</p>
</div>
<div class="col-md-4">
<a href="./booklet-Commander/" title="Commander20: a Command Framework"> <img src="./booklet-Commander/bklet-Commander.png" alt="Commander20: a Command Framework" class="img-thumbnail" style="height:400px"></a>
<p><em>Commander20 </em> is a simple and powerful command frameworks. In this book we show how we use it first with a tutorial. Then we describe its internal and design decisions.Written by S. Ducasse and Julien Delplanque. You can find the latest version <a href="https://github.com/SquareBracketAssociates/Booklet-Commander">here</a>.</p>
</div>
<div class="col-md-4">
<a href="./booklet-ConcurrentProgramming/" title="Concurrent Programming in Pharo"> <img src="./booklet-ConcurrentProgramming/bklet-Concurrent.png" alt="Concurrent Programming in Pharo" class="img-thumbnail" style="height:400px"></a>
<p>This book explains the concurrency model and some implementation aspects of Pharo <a href="https://github.com/SquareBracketAssociates/Booklet-ConcurrentProgramming/">here</a>.</p>
</div>
<!-- <div class="col-md-4">
<a href="./booklet-Voyage/" title="Voyage"> <img src="booklet-Voyage/bklet-Voyage.png" alt="Voyage booklet" class="img-thumbnail" style="height:400px"></a>
<p><em>Voyage</em> is a powerful Object Mapper for Pharo. Booklet written by E. Lorenzano, S. Ducasse, J. Fabry and N. Hartl</p>
</div>
<div class="col-md-4">
<a href="./booklet-Glorp/" title="Glorp"> <img src="booklet-Glorp/bklet-Glorp.jpg" alt="Glorp booklet" class="img-thumbnail" style="height:400px"></a>
<p><em>Glorp</em> is a powerful Object Relational Mapper for Pharo. Booklet written by E. Maringolo, N. Pratt and R. Withney</p>
</div>
</div>
third row -->
</div>
<!-- four row -->
<div class="container">
<div class="row">
<div class="col-md-4">
<a href="./booklet-uffi/" title="Unified FFI - Calling Foreign Functions from Pharo"> <img src="./booklet-uffi/bklet-uffi.png" alt="Unified FFI - Calling Foreign Functions from Pharo" class="img-thumbnail" style="height:400px"></a>
<p><em>UFFI </em> is a powerful framework to invoke foreign functions. In this book we show how we use it first with a tutorial. You can find the latest version <a href="https://github.com/SquareBracketAssociates/Booklet-uFFI">here</a>.</p>
</div>
<div class="col-md-4">
<a href="./booklet-Zinc/" title="Zinc: an industrial quality level HTTP/S framework"> <img src="./booklet-Zinc/bklet-Zinc.png" alt="Zinc: an industrial quality level HTTP/S framework" class="img-thumbnail" style="height:400px"></a>
<p><em>Zinc </em> is a powerful and elegant framework to build HTTP client/server applications. You can find the latest version <a href="https://github.com/SquareBracketAssociates/Booklet-ZincHTTP">here</a>.</p>
</div>
<div class="col-md-4">
<a href="./booklet-ManageCode/pdf/2020-05-12-ManageCode.pdf" title="Manage your code with Git and Iceberg"> <img src="booklet-ManageCode/bklet-Manage.jpg" alt="Manage your code with Git and Iceberg" class="img-thumbnail" style="height:400px"></a>
<p>Booklet written by G. Polito and S. Ducasse with A. Oliviera</p>
</div>
</div>
<div class="row"><br><br></div>
<div class="container">
<div class="row">
<div class="well well-lg"><h1>The Pharo TextBook Collection</h1></div>
<div class=".col-md-8">
<p class="lead">Here is a collection of booklets that are not technology oriented but will teach you fundamental aspects of computation.</p></div>
</div>
</div>
<div class="container">
<!-- fifth row -->
<div class="col-md-4">
<a href="./booklet-ReflectiveCore/" title="A simple reflective object kernel"> <img src="booklet-ReflectiveCore/bklet-reflective.png" alt=" " class="img-thumbnail" style="height:400px"></a>
<p><em>"A simple reflective object kernel"</em> explains ObVlisp a simple reflective kernel and it shows how to build step by step this kernel based on two classes: Object and Class. Booklet written by S. Ducasse.</p>
</div>
<div class="col-md-4">
<a href="https://files.pharo.org/books-pdfs/booklet-CallStack/2018-01-23-CallStack.pdf" title="Call Stack Management"> <img src="booklet-CallStack/bklet-callstack.png" alt=" " class="img-thumbnail" style="height:400px"></a>
<p><em>"Call Stack Management"</em> explains how a call stack is represented in virtual machines. Written by C. Bera with S. Ducasse.</p>
</div>
<div class="col-md-4">
<a href="./booklet-AMiniSchemeInPharo/" title="Physche: A Little Scheme in Pharo"> <img src="booklet-AMiniSchemeInPharo/bklet-scheme.png" alt="Physche: A Little Scheme in Pharo" class="img-thumbnail" style="height:400px"></a>
<p><em>"A Little Scheme in Pharo"</em> explains how to build a simple interpreter for a language such Lisp or Scheme with a particular focus on closures. Written by S. Ducasse with G. Polito.</p>
<p><a class="btn btn-default" title="Physche: A Little Scheme in Pharo" href="./booklet-AMiniSchemeInPharo/" role="button">View details »</a></p>
</div>
</div>
<div class="container">
<div class="row">
<div class="well well-lg"><h1>To be ready soon booklets</h1></div>
<div class=".col-md-8">
<p class="lead">Some booklets need feedback. There are listed below. Usually draft versions have a white cover.</p>
</div>
</div>
<!-- fourth row -->
<div class="col-md-4">
<a href="http://files.pharo.org/books-pdfs/booklet-Bloc/2017-11-09-memorygame.pdf" title="Bloc"> <img src="booklet-Bloc/bklet-Bloc.jpg" alt="Bloc Memory Game booklet" class="img-thumbnail" style="height:400px"></a>
<p><em>Bloc Memory Game (alpha)</em> is a first tutorial on Bloc the new graphics core for Pharo. Booklet written by A. Chis, S. Ducasse, A. Syrel.</p>
</div>
</div>
</div>
<div class="row"><br><br></div>
<div class="container">
<div class="well well-lg"><h1>The Pharo Book Collection</h1></div>
<div class="row">
<div class="col-md-4">
<!-- Deep into Pharo: separate folder treated -->
<a href="./deep-into-pharo/" title="Deep into Pharo">
<img src="dip.jpg" alt="Deep into Pharo" class="img-thumbnail" style="height:400px">
</a>
<p><em>Deep into Pharo</em> is the second volume of a series of books covering Pharo. Whereas the first volume is intended for newcomers, this second volume covers deeper topics. </p>
<p><a class="btn btn-default" href="./deep-into-pharo/" title="Deep into Pharo" role="button">View details »</a></p>
</div>
<div class="col-md-4">
<!-- <h2>Numerical Methods</h2> -->
<a href="./numerical-methods/" title="Numerical Methods in Pharo">
<img src="numerical.jpeg" alt="Numerical Methods in Pharo" class="img-thumbnail" style="height:400px">
</a>
<p><em>Numerical Methods In Pharo</em> is a book from Didier Besset on numerical methods. It covers many topics related to data science: function interpolation, iteration, zeroes, linear algebra series, statistics, estimation, minimisation, and data mining.</p>
<p><a class="btn btn-default" title="Enterprise Pharo: a Web perspective" href="./numerical-methods/" role="button">View details »</a></p>
</div>
<div class="col-md-4">
<!-- <h2>Agile Visualization</h2> -->
<a href="http://agilevisualization.com" title="Agile Visualization"> <img src="AgileVisualization.png" alt="Agile Visualization" class="img-thumbnail" style="height:400px"> </a>
<p><em>Agile Visualization</em> covers aspects that are relevant for practitioners, businesses, and academics to successfully design and implement highly interactive visualizations.</p>
<p><a class="btn btn-default" title="Agile Visualization" href="http://agilevisualization.com" role="button">View details »</a></p>
</div>
</div>
<div class="row">
<div class="col-md-4">
<a href="./tinyblog-tutorial/" title="Tiny Blog Tutorial"> <img src="./tinyblog-tutorial/TinyBlogEN-cover.png" alt="Tiny Blog Tutorial" class="img-thumbnail" style="height:400px"> </a>
<p><em>Tiny Blog</em> is a tutorial from Olivier Auverlot, Stéphane Ducasse and Luc Fabresse. It brings you step by step through the building of a little web blog application. This tutorial is part of the <a href="http://mooc.pharo.org">Pharo MOOC</a>.</p>
<p><a class="btn btn-default" title="Tiny Blog Tutorial" href="./tinyblog-tutorial/" role="button">View details »</a></p>
</div>
<div class="col-md-4">
<a href="./tinyblog-tutoriel/" title="Tutoriel Tiny Blog"> <img src="./tinyblog-tutoriel/TinyBlogFR-cover.png" alt="Tutoriel Tiny Blog" class="img-thumbnail" style="height:400px"> </a>
<p><em>Tiny Blog</em> est un tutoriel écrit par Olivier Auverlot, Stéphane Ducasse et Luc Fabresse. Ce tutoriel vous guide pas à pas dans la réalisation d'une petite application Web. Cette ressource est une partie du <a href="http://mooc.pharo.org">MOOC Pharo</a>.</p>
<p><a class="btn btn-default" title="Tutoriel Tiny Blog" href="./tinyblog-tutoriel/" role="button">Voir des Détails»</a></p>
</div>
</div>
</div>
<div class="row"><br><br></div>
<div class="container">
<div class="well well-lg"><h1>By Example Series</h1></div>
<div class="col-md-4">
<!-- <h2>Pharo by Example</h2> -->
<a href="./pharo-by-example/" title="Pharo by Example"> <img src="pbe.jpg" alt="Pharo by example" class="img-thumbnail" style="height:400px"></a>
<p><em>Pharo by Example</em>, intended for both students and developers, will guide you gently through the Pharo language and environment by means of a series of examples and exercises.</p>
<p><a class="btn btn-default" title="Pharo by example" href="./pharo-by-example/" role="button">View details »</a></p>
</div>
<div class="col-md-4">
<!-- <h2>Pharo par Example</h2> -->
<a href="./pharo-par-lexemple/" title="Pharo par l'exemple"> <img src="pbefr.jpg" alt="Pharo par l'exemple" class="img-thumbnail" style="height:400px"> </a>
<p><em>Pharo par l'exemple</em> est la traduction en de Pharo by example.</p>
<p><a class="btn btn-default" title="Pharo par l'exemple" href="./pharo-par-lexemple/" role="button">View details »</a></p>
</div>
</div>
<hr>
</div>
</div> <!-- /container -->
</body>
</html>