Show only titles Show articles

Distributed and self-filtered message passing system

Hide [-] Show [+]

February 15th, 2012

I've had recently an idea (inspired by society outcry after the ACTA was signed by our goverment, but not only) I want to share. It might not be particularly original at a glance, but I find its details pretty exciting.

Abstract: Distributed and totally decentralized message passing system which automatically (protocol level) promotes popular messages ('I like it/Dislike it/Tell a friend' - type), and drops less popular with time. It includes all features found in other known solutions (like following someone, responding, thread talk, #hashtags, extensive searching) + ensures authorship with ECC signatures and grants certain level of anonimity to users who require it. By default, passed messages are public, but @ they can also be encrypted, also it should not be possible to post files (but see the spec). Message length is limited by the UDP packet size/ethernet MTU, but it can reach over 500 bytes (this paragraph up to the @ character).

Ah, and I've called it Weespur (pronounced: whisper) from the name of the passed messages - whispers.

Preliminary "specification" (or rather personal brainstorm file) can be seen in three formats exported from org-mode (I prefer the first file myself, suit your taste. :P):
Weespur specification / emacs html
Weespur specification / exported html
Weespur specification / ascii

Personally I would implement it (if at all) using Python and Xapian as a search engine/DB. If anyone is willing to participate - give me a heads up.

Simple fix for HID Manta MM821 gamepad / driver

Hide [-] Show [+]

January 12th, 2011

Each gamepad for PS3 seems to need a bit different fix/activation routine to run under PC/Linux. No idea why. I've seen already 2-3 fixes on the internet, but none worked with my gamepad. So, if you have one of the Manta gamepads (MM821 is mine) you can try this program.

Random Productions Present

Hide [-] Show [+]

May 9th, 2010

Random small implementations I did recently. Featuring web clock synchronisation checker, and rocket simulator, (and if I recall anything more I'll put it here. ;p)

Tags: Project

Infra-Red Guitar Tuner

Hide [-] Show [+]

March 13th, 2010

Two days experimenting with a sensor, three for gathering parts, soldering and thinking about implementation details. Tuner determines string sound frequency by illuminating it with infra-red light emitting diode and gathering string "blinks" with an optotransistor.

Raytracing revisited

Hide [-] Show [+]

August 27th, 2009

Name? bla.
Sex? Male.
Hobby? Raytracing!
Duh. ;-/

Another program realized for my university; this time the main idea was to write something multitasking in assembler of x86. The program raytraces only quaternion julia fractals and is much more fun from benchmarking point of view. Program was written in C first, then using OProfile I've checked which functions take the most of the CPU time and those got rewritten in asm.

Algorithm has C version (x86/x64), optimized SSE2 assembler (x86), plain CUDA version (tested on x64 only, no crosscompilation) and mixed version - CUDA + C. They are selectable using compile-time macros. What makes it more fun is that the C version can be compiled by GCC using either x87 arithmetics or (naive) SSE2. Pictures, links and benchmark summary follow.

Inverted pendulum, balancing robot

Hide [-] Show [+]

October 12th, 2008

It was a very long-timed project, albeit not a very intensive one. The robot was developed pretty slowly: if I'd place photos of each version in a line it would resemble homo sapiens evolution chart... the first and the current version differ even more then monkey and human. One film, some source code and brief description follow.

C++ Raytracer

Hide [-] Show [+]

May 22nd, 2008

I've finished a work on my Computer Programming assignment for studies few months ago but haven't had time to publish it... so without further introduction all related files are here.

AVR ATmega64/32/16 Extension Board

Hide [-] Show [+]

May 18th, 2008

During my current robotic project I was using ATTiny26 with L298 motor controller on one universal board, accelerometer on another board (home etched), serial level converter (max232) on yet another universal board and for programming I was using another (fourth) board...

It was modular - ok, but I got tired with all the wires, problems, keeping code below 2KB level and that's why I designed, ordered, soldered and tested new board implementing all required features. I just wanted to share the PCB schemas and ideas. Keep in mind that it's mine third board design ever. Previous designs shall not be commented (I know they are awful)...

Prepare for ray tracing

Hide [-] Show [+]

February 9th, 2008

In previous post I already mentioned that I'm going to write in incoming semester a simple ray tracer in C++ as a "programming project" (already finished, description is here). As C++ is not mine favorite language out there I've decided to give ray tracing a try with Objective Caml. Brief illustrated history follows...

HTTP Proxy Port Bridge

Hide [-] Show [+]

August 7th, 2007

There are many networks where connection is limited to HTTP, FTP over Proxies (Academical networks; publicly available wi-fi's etc.) or where http proxy has much faster connection than other protocols.

I also wanted to review Linux networking and write some general-usage tool. And so I did...


Hide [-] Show [+]

May 17th, 2007

What can you do with a free weekend, yacc+lex compilers and a stupid idea? Just another highly requested esoteric language I suppose.

This one is based on a slang of one of the Polish street subcultures (the one with a special love to the track suits. Track suit = "Dres"). It employs a rather dirty language. Language specification and the idea itself was developed about a year ago by me and my two colleagues (tmd and shm) on IRC, but we were lacking the necessary wisdom and a will to implement it.

Language is called "Dress". Its compiler is able to compile conditional expressions (branching and loops), few register operations (inc/dec/set) and simple I/O into x86 assembler. It's by no means complete but I doubt if I'll do something more with this compiler. I just wanted to prove it's not so difficult to implement.

Theoretically it should be easy to port language specification so it would be based on a facultative dialect.

NVM 2.0 Released

Hide [-] Show [+]

April 7th, 2007

I'd like to proudly announce availability of the fresh release of NVM (I'm known of overcomplicated sentences, especially in English. Pity, that this overcomplexity doesn't come with grammatical correctness).

NVM stands for NVM Virtual Machine (yes, right. It's the still-and-forever popular recursive acronym). It's a small, quite portable and as I hope fast virtual machine. I've written it without precise purpose as a work for studies but I'm considering using it for scripting one of my µC projects (mobile robot).

This is a mail of my good friend who loves rubbish email. Send him some if you want to land on my not-so-welcome lists: John Sparrow john(at)