home
text

Pipe Logic

Delightfully useless epiphany: Suppose the null-byte is an electron. Then, /dev/zero provides an infinite supply of electrons and /dev/null has an infinite appetite for them. Let’s call these devices Vss and Vdd, respectively.

In this model, a UNIX pipe acts like a wire, that is, a conductor with parasitic capacitance. If the pipe is connected to Vss, its pipe buffer in kernel space quickly fills up with null-bytes, and the pipe acts like a negatively charged metal plate. If it is connected to Vdd, the pipe buffer is drained, and the pipe acts like a positively charged metal plate.

Pipes may thus carry logic signals: A pipe that is filled with null-bytes corresponds to a logic zero, and a pipe that is completely empty corresponds to a logic one. A pipe that contains some null-bytes, but is neither full nor empty, corresponds to a voltage in the undefined range, and will act as a one or a zero depending on how we measure it.

[Source]

1 month ago

January 21, 2012
photo Excellent book, very well written.

Excellent book, very well written.

7 months ago

July 26, 2011
photo I’m in heaven :D It works flawlessly :)

Model description

git-flow

I’m in heaven :D It works flawlessly :)

Model description

git-flow

11 months ago

March 9, 2011
text

Manufacturing at home!

Sometime ago I was fascinated about Maker-Bot 3d printer.

Unfortunately there was lack of intuitive (for me) software to design 3d models … until now:

tadam

OpensCAD

So to design a pawn I’ve to write a little piece of code like:

union(){
cube([40,40,4],true);
cylinder(40,15,5);
translate([0,0,40])sphere(10);
}
and OpensCAD will render it for me.

Of course project can be exported to STL file which can be “rendered” into the real world using MakerBot.

I start gathering funds to get my 3d printer … :D

11 months ago

March 6, 2011
link Rzeczy, których nigdy nie powinieneś robić, część I

Stara mantra “pierwsza wersja jest do wyrzucenia” jest niebezpieczna, gdy zastosuje się ją do produktów komercyjnych wielkiej skali. Jeśli piszesz eksperymentalny kod, możesz chcieć usunąć funkcję, którą napisałeś tydzień temu, gdy wpadniesz na lepszy algorytm. To jest w porządku. Możesz chcieć zrefaktoryzować klasę, by dało się z niej łatwiej korzystać. To też jest w porządku. Wyrzucanie całego programu to jednak głupota i jeśli tylko Netscape miałby jakiś dojrzały nadzór i doświadczenie w branży, to mógły uniknąć tak bolesnego strzału w stopę.

1 year ago

July 17, 2010
text

UTF-8 - the future of programming ;)

php에[/quote][/quote]> > [quote][quote]추상 클래스 arrayManipulator ( 추상 함수 arrayChecker () 공개; 추상 함수 arraySorter () 공개; $ 테스트> 방법인 print_r (); ) (예외 $ e)를 잡기 ( $ 전자> GetMessage ()를 에코; ) ?>

1 year ago

June 25, 2010