C’est un article qui date mais, parfois, il est bon de revisiter les algorithmes de base, ne serait-ce que pour les avoir encore bien en tête quand le jour viendra où vous en aurez besoin pour un problème bien particulier! Parce que les cours universitaires, ils commencent à être loin loin loin dans mes pensées!
Si le monde de l’open source vous intéresse ou que vous voulez tout simplement savoir quels sont les projets/outils/langages informatiques du moment qui pourraient vous aider ou grandement vous simplifier la vie, je vous recommande fortement le podcast de FLOSS Weekly (FLOSS étant l’acronyme pour Free Libre Open Source Software).
Le podcast est disponible en version vidéo et audio. Les sujets abordés y sont variés et clairement expliqués, l’animateur Randall Schwartz s’efforçant de vous offrir une vue d’ensemble plutôt que les détails infiniment techniques accessibles aux seuls initiés. L’animation est sympathique et les entrevues faites dans un style décontracté.
Assurément, un de mes immenses coups de coeur en cuisine! Je viens de me taper un 10 heures de visionnement des vidéos du chef Michel Dumas sur sa chaîne YouTube et j’en redemande! Le type est ultra-sympathique, amusant et surtout intéressant. Son amour pour le dressage, la présentation et aussi la technique en cuisine expliquent aussi certainement le succès de ses vidéos. Par ailleurs, il se fait un point d’honneur d’utiliser des produits locaux, « made in Québec » ! Son style « bullet point » est un brin déconcertant au début mais on s’y fait vite. Il a également sa page Facebook et son compte Instagram.
Take a look to the sky just before you die It’s the last time he will Blackened roar, massive roar, fills the crumbling sky Shattered goal fills his soul with a ruthless cry Stranger now, are his eyes, to this mystery He hears the silence so loud
A modest man from Mandrake Traveled rich to the city He had a need to discover A use for his newly-found wealth Because he was human Because he had goodness Because he was moral They called him insane Delusions of grandeur Visions of splendor A manic-depressive He walks in the rain Eyes wide open Heart undefended Innocence untarnished Cinderella Man Doing what you can They can’t understand What it means Cinderella Man Hang on to your plans Try as they might They cannot steal your dreams, whoa In the betrayal of his love, he awakened To face a world of cold reality And a look in the eyes of the hungry Awakened him to what he could do He held up his riches To challenge the hungry Purposeful motion For one so insane They tried to fight him Just couldn’t beat him This manic-depressive Who walks in the rain Cinderella Man Doing what you can They can’t understand What it means Cinderella Man Hang on to your plans Try as they might They cannot steal your dreams
In the previous post I mentioned using Iceberg successfully.
The code I was pushing is
a simple linear regression calculator, written to take Oleksandr Zaytsev's
DataFrame library for a spin, by way of
porting Jason Brownlee's excellent
simple linear regression in Python
Firstly, install DataFrame. This also pulls in Roassal.
SLRCalculator implements mean, variance, covariance, coefficients etc, and
also incorporates the Swedish automobile insurance dataset used by Jason in
his Python example.
The computation for covariance also uses DataFrame.
Let's see how to use SLRCalculator to perform linear regression, with
graphing using Roassal. First declare the variables and instantiate some objects:
Next, split the data set into training and test subsets. Splitting without
shuffling means to always take the first 60% of the data for training.
Set up for graphing. Load `allData' as points.
Create the points to plot the linear regression of the full data set, using
the coefficients computed from the training subset.
Make the plot look nice.
Putting the code altogether:
Copy/paste the code into a playground, press shift-ctrl-g...
Straight up, now tell me , Do you really wanna love me forever, Oh, oh, or am I caught in hit and run? Straight up, now tell me, Is it gonna be you and me together, Oh, oh, oh, or are you just havin’ fun
We are very happy to announce the alpha version of a moldable editor built in Brick (https://github.com/pharo-graphics/Brick) which is based on Bloc (https://github.com/pharo-graphics/Bloc). This is primarily the work of Alex Syrel. The project was initially financially sponsored by ESUG and it is currently supported by feenk. And of course, the project is based on the tremendous work that went into Bloc and Brick by all contributors.
The basic editor works and it is both flexible and scalable. For example, the last example shown in the video is an editor opened on 1M characters, which is reasonably large, and as can be seen see one can interact with it as smoothly as with the one screen text. It actually works just as fine with 100M characters.
The functionality of the editor includes: rendering, line wrapping, keypress and shortcut handling, navigation, selection and text styling. Currently, the editor is 1260 lines of code including method and class comments. This is not large for a text editor and this is possible because most of the work is done by generic concepts that already exist in Bloc such as layouts and text measurements. Beside the small maintenance cost, the benefit is that we have the option to build all sorts of variations with little effort. That is why we call this a moldable text editor.
Another benefit of using elements and layouts is that we can also embed other kinds of non-text elements with little effort (such as pictures), and obtain a rich and live text editor. We already have basic examples for this behavior, and we will focus more in the next period on this area.
The next immediate step is to add syntax highlighting. Beside the text attributes problem, this issue will also exercise the thread-safety the implementation is. The underlying structure (https://en.wikipedia.org/wiki/Rope_(data_structure)) is theoretically thread-safe, but it still needs to be proven in practice.
We think this is a significant step because the editor was the main piece missing in Brick and it will finally allow us to build value that can be directly perceived by regular users on top of Brick and this, in turn, will generate more traction. Please also note that because now Bloc is directly embeddable in Morphic it means that we can actually start using it right away. For example, the picture below shows the text element being shown through a live preview in the GTInspector.
This is another puzzle piece towards the final goal of engineering the future of the Pharo user interface. There is still a long way to go to reach that goal, but considering the work that is behind us, that goal that looked so illusive when Alain and Stef initiated the Bloc project is now palpable.
We will continue the work on this over the next period and we expect to announce new developments soon.
If you want to play with it, you can load the code like this (works in both Pharo 6 and 7):
Iceberg enableMetacelloIntegration: true.
On a laptop that I've just rebuilt recently, I created and have been using
an ED25519 SSH key pair, including with Github. Iceberg doesn't work with
it though, throwing the error 'LGit_GIT_ERROR: No ssh-agent suitable
credentials found". This is because Iceberg uses libgit2, which uses
libssh2, which apparently doesn't support ED25519 keys. Created a new RSA
key pair, registered it with Github, and Iceberg works.
OS = Linux Mint 18.1
Pharo image = 60510-64
Pharo VM = pulled from GH opensmalltalk-vm today and built on said laptop
Live programming frees developers from the “edit-compile-run” loop and allows people to interact with running programs very easily. Live programming is getting popular, but many of its features have been present in Smalltalk for a very long time.
We want to understand how Smalltalk software developers use live programming features in practice. We would be grateful if you could participate in our 10-minute survey on this subject: http://bit.ly/2ufcg2D
As a thank you for your participation, you will be able to participate in a raffle to win a Smalltalk book of your choice. If you wish to participate, you will need to share your email with us, so that we can contact you.
– push Smalltalk awareness in Live Programming research community,
– bring new integrated electronic communication ideas, and
– bring new ideas to improve our Smalltalk Live Programming experience
We will close the survey on Wednesday, August 9, 2017 AoE.
Thank you and we really hope you enjoy participating in our survey!
Juraj Kubelka, PhD Student at the University of Chile
Romain Robbes, Professor at Free University of Bozen-Bolzano
Alexandre Bergel, Professor at the University of Chile
Vous manquez d’inspiration culinaire? Je vous conseille la chaîne YouTube de Daddy Jack (Jack Chaplin de son vrai nom). C’est sans prétention, simple et sympathique, comme Jack! Son resto a aussi une page Facebook.
I manage some of my projects already in GitHub. For example Tealight which is also in catalog.
Anything you have to do is
1) to create a “tag” in git (see https://stackoverflow.com/questions/18216991/create-a-tag-in-github-repository), I name the tags with the according version number like 0.0.2 following semantic versioning (http://semver.org)
2) provide a ConfigurationOf (as you had in the past) where the “version” references the “git tag” with the same name
a) also #stable has to point to the “version” as it was in the past
optional: b) the #development should point to the Baseline in the git branch that you typically use for development (this allows for loading of bleeding edge as before)
3) upload the Configuration to a MetaRepo as before to appear in catalog