One of the pleasures of living in a small village in the
mountains is to light the fire in the evening. Me and Marti,
we like to watch flames and we straighten arms and say
'hhhhh' when we finally sense heat. Virgi is also happy to
see that we managed to put fire only in the oven and not to
the entire house.
Khan is kind of modern Prometheus who stole fire from
Zeus and brought to humanity. This time, instead of a torch
he brought youtube videos with him, where he explains on a
blackboard calculus, algebra, analysis, physics, biology and
history from the simplest concepts to the advanced topics.
The videos are for free and distributed in the best 'Open'
manner. You can download 30 giga of videos if you like, or
watch them on youtube. I personally am working through the
'Laplace Transform" videos, stuff which I never learnt
before. I think the videos (and examples to work through)
are very useful both to students but also for people who
already attended university and would like to fill some
leaks in their knowledge.
To enter Khan Academy, click here, pick out some
video, I am sure you'll enjoy the relaxed style used by Khan
to teach about anything, even the most advanced topics. To
read more on wikipedia about it, click here.
* I was recovered three days at the hospital to cut off the
cystifellea as I had too much fast food when I was student.
They should put on any fast food the photos of my
cystifellea and the stones they found in it to better
advertise their meals. WhenI was waiting for operation, I
"repaired" the laptop of my room's neighbour by simply
taking off the battery so that it could restart. He called
me a "PC doctor" :-) I think it is easier to repair
computers than humans. In fact they do not cry if you do
something wrong, nor they need anaestesia. Anyway, this is
the introduction to the next paragraph :-)
Heart Transplantation for Andromeda
The screen on my laptop "andromeda" broke about three months
ago after 9 years of duty. It is an XE3 HP laptop 1GHz, 512
MB RAM, 40 GB of RAM, on which I developed most of my Open
Source projects. It was one of the first laptops sold with
Windows XP, on which I installed first Red Hat 8.0, Suse
9,9.2 and 9.3, Debian 5.0 and ended with Gentoo. I also used
the laptop during my study in Zürich, computed stuff with
Maple for physics and maths courses, wrote "Hubble in a
Bottle" for the zBox supercomputer, deltasql and GPU.
By chance I found an older XE3 laptop with 900 MHz, 256 MB
RAM, 30 GB hard disk and decided to execute the operation
"make one out of two", which works with basically any device
of the same or similar kind (my uncle did it with 2 BMWs).
The main advantage is that no matter how you work you end up
with lots of spare parts and the disadvantage is you need
space to store them.
There were two possibilites: 1. take the screen of the older
laptop and put into the newer, or 2. take memory and disk
from the newer to the older. I did it in sequence, as the
newer laptop is faster (although the plastics has so many
rips), but when I exchanged the screen, the laptop mainboard
answered with a beeeep which basically was the official last
breath of the newer laptop.
I then chose the second option, not really a choice as the
newer laptop died. So that now I am writing this blog entry
older laptop, which was by the way almost never used,
plastic intact and shiny. It has also a robust appearance. I
hope to keep this one for another ten years :-)
The point of developing software on old things is that if
you get it working reasonably on it, you know that on newer
hardware it will fly ! Also it remembers you that the
heuristics you choose is way more important than the
hardware you are on top.
Fractal dimension of Internet
* This is left as an exercise for the reader:
Write a bash script that rolls 4 dices with 255 faces (quite
a big dice!) and concatenate them with a dot. Scan the
obtained random IP number to verify if there is something
behind it. If you find very weak computers with IP numbers
starting from 127.x.y.z try to break into them (when you
realize that you are attacking your own 'localhost', you can
leave this part of the exercise). From the ratio of
computers which answer compute how many computers are
attached to the Internet. Call this number N.
Next modify the bash script so that instead of scanning the
IP number, it traceroutes the random IP number, so that you
get the distance from your computer to the other computer
(in 'hops'). Compute an average distance and call it 'l'.
Ok now take Mandelbrot formula N ~ l^d/d and solve
numerically for d. d represents then the 'Fractal dimension'
Well, according to Wikipedia, the Internet is not fractal,
only the WWW is :-(
Feynman Lectures on Physics
I bought the books three years ago, and now finally found a
bit time to read among them. Some things which I understand
a bit more are: how Maxwell completed Faraday law when
applying it to the condensator; how Einstein looked at the
problem of a moving charge feeling a magnetic force if
moving in proximity of a rod with electric current: for
reasons of symmetry, if the rod is moving with current and
the charge stays, the charge should still feel a force, but
there isn't any force in classical physics which does it.
Einstein then put an electric force and explained its
existence with a relativistic argument (- charge are
travelling, plus charges are at rest, - charges are
travelling fast, therefore there is contraction of length,
which implies an overall positive charge of the rod which
generates an electric field which attracts the charge). The
quantization of spin discovered by the Stern-Gerlach
experiment and how spin states relate to linear algebra in
quantum mechanics, how Schrödinger wave equation explains
the valence model, how the heat equation works, Green and
Stokes theorems applied to Maxwell equations...
* and I should rewrite the heat equation in simclimate as
GPU II preview for developers
* This is taken from the project news:
currently undergoing its 4th rewrite, codenamed freedom (3th
was named solaris which reached version 0.963, 2th polaris,
1th unnamed). The preview package has version 0.5.0. This
package is solely intended for developers as there is
still no client working, just a bunch of unit tests.
The package should sketch the whole idea of the next
generation GPU. Some people might be disappointed that GPU
moves away from peer-to-peer to become a client-server
architecture, but we believe this is the only drawback. The
highlights of the coming release (probably 6 months from
- client/server architecture should allow scaling of nodes
up to several thousands of clients
- client is in Freepascal and can be compiled on Windows,
Linux and Mac OSX
- Server is in PHP/mySQL and runs everywhere where LAMP
- All software used to develop GPU II is Open Source and
- The plugin architecture of GPU I is retained, although the
plugin layer has been rewritten (available in preview) and
plugins need to be ported as well
- Communication is entirely over HTTP, workunits can be
downloaded, and resulting workunits can be uploaded via HTTP
back to the server (available on GPU preview package)
- HTTP makes GPU transparent to most proxies, so that
clients can run also in companies and not only at home
- GPU II retains features like channels (to run whiteboard,
chat and sensor networks), job management, clustering
services, all rewritten in light of the experiences
done with GPU I (available on GPU preview package)
- GPU II will stay a multipurpose distributed computing
architecture, so that any client and any server will support
any computation (unlike the BOINC architecture)
- Each server should be able to support 40-100 clients
according to some initial computations, the network should
scale with number of servers
- One superserver will manage the whole network of servers
The package contains most of the server, communication layer
client and server side, plugin layer clientside.
we hope the release will fuel some more interest into the
* I read the book Crypto by Dan Brown and end up thinking
how I would build my 'Digital Fortress' algorithm
Digital Fortress à la dangermouse
Depending on what to cipher, I would first choose the best
compression algo, e.g. for text .zip, for pictures PNG or
JPG (with loss) and apply compression to the 'plain text'.
Then generate a hash of 'plain text' and append it. With ISAAC,
pseudorandom algorithm I had the chance to analyze
(initialized with some PBKDF2 of the 'key') I would generate
a pseudorandom sequence of the same length of the compressed
'plain text' plus hash. Then XOR 'plain text' plus hash and
pseudorandom sequence and finally execute a set of
predefined statistical tests to ensure that at least the
standard properties of white noise hold.
* To conclude I would cipher 'I love you' and send it to
Virgi so that she can cranck on it :-)