February 5, 2012 – 2:02 am
In the previous post, we explored a very basic way of plotting images: shooting a ray from the center of every pixel, and plot the color of the object we hit. The result is a rather flat, very jagged image Border jagging arises from the fact that we are sampling with a discrete grid (our [...]
November 5, 2011 – 9:18 pm
A quick addition needed to the raytracer is providing freedom to add more objects to the rendering scene. In Part 1, the design was such that only one object, a sphere, could be drawn. The new code allows much more flexibility. I added a Plane object, introduced assignment of colors to the objects, divided the [...]
September 5, 2011 – 11:53 pm
Some time ago I visited Sydney, and I made a tragic mistake: I entered the University bookshop. Why a mistake, you say? I am book maniac. As soon as I enter a book shop (live or on web) I end up spending up to a thousands euro every time. This time, it was not the [...]
August 11, 2011 – 11:00 pm
Imagine you are a professor in organic chemistry. You received financial support for a project, and you are ready to hire a Ph.D. student to make it happen. The project requires the synthesis of a new compound. Imagine you interview your best candidate. At the whiteboard, you present him with various problems of how to [...]
Vim is a great, great programming tool. Even after years of experience with it you still get to discover, either by change or by sharing, fantastic tips to make an impossible task incredibly easy. It is the case with my recent problem of exporting the visual aspect of vim (as from terminal) to an HTML [...]
Occasionally, I get to find very interesting scientific apps for the Mac. In light of the recent events, SeisMac is definitely one of those. While not technically useful for the general public, it is a very important application for research. All Mac laptops include the so-called Sudden Motion Sensor, a Micromechanical system (MEMS) accelerometer. This [...]
February 22, 2011 – 12:55 am
I recently bought this 240 Gigabytes of awesomeness, conveniently packed into a 2.5″ SATA box. It’s an Other World Computing Mercury Extreme Solid State Hard Drive. It has no moving parts, it consumes less battery, and it’s fast. Damn fast. This thing is so fast it opens applications before you lift your finger from the [...]
November 30, 2010 – 5:47 pm
I had to perform base32 encoding in javascript, and I found nothing ready for the task, so I started cramming out code, and here it is I release this code under the obnoxiously named but quite appropriate WTFPL license. I left the decode, as it is commonly said, as an exercise for the reader. Seriously, [...]
September 5, 2010 – 2:27 pm
I am dusting my Fortran 90 skills. One big gotcha that always leaves me baffled is the following. Suppose you write the following program program test implicit none call testsub() call testsub() end program subroutine testsub() implicit none integer :: var var = 0 print *, var var = 5 print *, var end [...]
Google decided to interrupt further development of Wave. The service itself remains active, though. I appear not to be good at predictions: a year ago, I expected Wave to take over email definitely. To be fair, a condition I added was for the server to be made public for third parties, something that never happened [...]