There are so many probabilistic programming
languages that
it is hard to choose one. Because it is so hard to choose one,
a probabilistic programmer has two options:
- invent a new probabilistic programming language, or
- write probabilistic programs in a regular programming
language.
The former choice is easier to make, that’s why there are so
many different probabilistic programming languages. But writing
programs is so much easier in a regular language, and programs
in regular languages can do many useful things. Any modern
general-purpose programming language is suitable for
probabilistic programming. Take Go, for
example.
Read more →
[Poster: html, pdf]
A good part of today’s internet content is created and shaped
for delivering advertisements. Internet pages are interconnected
by links, and a visitor is likely to open multiple pages from
the same publisher. After a while, visitors leave the web site,
either due to clicking on an advertisement or just because they
get bored and switch to other content or activity.
Read more →
Sometimes, a data scientist is the first engineer in a software
project. More often though a data scientist joins the team when
there is working code, ready for deploying or even deployed.
Here is how the latter case rolls out:
We write a piece of software. Thanks to continous delivery,
we fix our bugs quickly and release new improved versions on
time. Our code is fully tested, easy to change, and pieces
fit each other smoothly.
Read more →
I went to a few job interviews during past weeks. Most interviewers asked me to
tell about problems I had solved, and to suggest a solution to a problem they
really needed to solve. Some though offered me to solve brain teasers —
problems they (or others) invented to test candidates. I solved most, but I
felt bad about it. I can imagine many bright candidates who would fail an
interview because of brain teasers.
Read more →