Förvillelser
link

a data structure that relies on hash functions for representing a set. The actual structure is a bunch of bits and a few hash functions. To add an element to a Bloom filter, compute the hashes for each hash function, and set each bit high. To test if an element has been added to the Bloom filter, compute the hashes and return true if all the bits are already high.

link

This project provides a Python package that creates an environment for graphics applications that closely resembles that of the Processing system.

The project mission is to implement Processing’s friendly graphics functions and interaction model in Python. Not all of Processing is to be ported, though, since Python itself already provides alternatives for many features of Processing, such as XML parsing.

The pyprocessing backend is built upon OpenGL and Pyglet, which provide the actual graphics rendering. Since these are multiplatform, so is pyprocessing.

Uppdatering: Prender verkar vara liknande.

link

Tack till Don Simon för tipset.

oF Syjunta är som en helt vanlig syjunta, fast vi kodar istället för att sy. Man träffas, hackar lite på sitt eget, pratar lite, utbyter ideer, tips och kod, dricker en kopp kaffe.

Grymt initiativ! Vill ha något liknande i Göteborg.

link
link
Hur låter koden?

Cessus blog hittade jag, tack vare Matti, ett inlägg om hur han hade slängt ihop ett verktyg med hjälp av Valgrind för att logga lite god information från exekverande program. Sedan mer kod för att spela upp ljud och animation av det hela. Något av det coolaste jag sett och hört på länge!

Here’s what one would here if the bits one to seven in the result of each addition and subtraction would indicate a very short ping. All those bits being zero corresponds to the barely audible 24.5 Hz, or the sub-contra G. Roughly ten highest notes are unfortunately ultrasound, but this was nevertheless the best representation I could come up with.



link
OpenFrameworks, C++ och nyttan med att pröva nya verktyg

För mina kreativa utlopp så använder jag gärna Processing. Anledningen är de många biblioteken och min kännedom om Java. Det är väldigt bra att ha hyffsat djup kunskap om verktyget man arbetar med för att kunna koncentrera sig på det kreativa istället för det tekniska.

C++ har jag aldrig satt mig in i. Anledningen var min dåvarande nörd-kärlek till C och dess “renhet” a la UNIX. När jag senare började läsa på universitetet så var det Java som användes vid utlärning av OOP. Efter det har det helt enkelt inte varit behövligt för mig att lära mig C++. Om man kan Java och C så känns det inte som det borde vara jobbigt alls att bara sätta sig ner och spruta ut C++kod. Jag tänker försöka mig på just det inom kort då openFrameworks äntligen släppt en publik pre-release.

Varför då besvära mig själv med nytt språk, med allt vad det innebär av syntaxförvirring och API-läsning? Min tro är att det vidgar mina vyer så att säga, låser upp en del spärrar som jag inte visste fanns eller bara ger mig nya idéer. Kan vara bra att bryta gamla mönster och få börja famla lite igen. Helst skall ju ens verktyg och miljö inte påverka det slutgiltiga verket, men tror det är svårt att undvika. Sedan skadar det inte att bekanta sig med ännu ett språk.

openFrameworks.

link

SQL-injektioner blir bara mer och mer aktuellt när allt skall drivas med databaser. Läs artikeln med lite sköna Java-specifika bitar.

link
JDK7, nyheter
Java.net rapporterar att JDK7 kommer bjuda på lite schysta kosmetiska tillägg:

The second small change from coin project, new numeric litterals has been integrated to jdk7/tl workspace and will be soon promoted into jdk7 main workspace.

The patch introduces two new notations for numeric litterals:

1. Binary litteral Litteral coded in binary starting with prefix 0b. This prefix can be prefixed by minus for negative number.

0b11 == 3
-0b11 == -3

More examples here.

2. Underscores in litterals Allow to use underscore (‘_’) to separate digits in litterals. Underscore can be used anywhere between two digits.

long aBankAccountBalance = 1_000_000_000;
long aVisaCardNumber = 1234_1234_1234_1234;
long aFrenchPhoneNumber = 01_60_95_77_33;

Of course, these two new syntax can be mixed:

int value = 0b11111111_00000000_11111111_00000000;

link
link

Biopython is a set of freely available tools for biological computation written in Python by an international team of developers.

It is a distributed collaborative effort to develop Python libraries and applications which address the needs of current and future work in bioinformatics. The source code is made available under the Biopython License, which is extremely liberal and compatible with almost every license in the world. We work along with the Open Bioinformatics Foundation, who generously provide web and CVS space for the project.

link
Life as an Ableton developer

We figured the best people to persuade developers to come to Ableton are our own staff. We interviewed some of our developers and came up with this: a 16 minute movie about working at Ableton. We hope that once you’ve watched it, you’ll want to work here, too.

Trevlig video som verkligen får Ableton att framstå som en schyst arbetsplats för en musikintresserad utvecklare. Mer info på Abletons hemsida.

link

Processing för nybörjaren.

link

1.0.7 innehåller en del sköna uppdateringar.

Tweaks for Mac OS X Snow Leopard, to force it to run in 32-bit mode.
This should bring back the video library (if temporarily), and hopefully
fix serial as well, though I didn’t have a serial device handy to test.

+ Fix problem where line highlighting was off in ‘static’ mode.
http://dev.processing.org/bugs/show_bug.cgi?id=1263

+ Auto-format was killing Unicode characters (how did this last so long?)
http://dev.processing.org/bugs/show_bug.cgi?id=1312

+ PVector.angleDistance() returning NaN due to precision errors
http://dev.processing.org/bugs/show_bug.cgi?id=1316

+ Removed a major try/catch block from PApplet.main(), hopefully
this will allow some exception stuff to come through properly.
link

Fantastisk artikel om H1N1, den så kallade Svininfluensan, med sköna paralleller till programmering.

link

Collada, eller COLLAborative Design Activity är ett format för att beskriva 3dmodeller. Det börjar bli lite av en standard. QC4 har stöd för det, och snart processing kan vi hoppas på!