All of the interesting technological, artistic or just plain fun subjects I'd investigate if I had an infinite number of lifetimes. In other words, a dumping ground...

Friday 29 February 2008

Test Attachments

test attachments

Porting tools

http://datacenterworks.com/stories/port.html

For example, we just had an engineer on a project to port a 32-bit driver to run on a 64-bit system. Porting drivers is something of a evil task, with a lot of unfamiliar requirements. We'd therefor prefer to reduce the "strength" to something we already know how to do.

While we can't make the whole task of porting easy, we can turn part of it into something every developer is used to doing: fixing compiler error messages.


Thursday 28 February 2008

Tahoe: secure, decentralized filesystem

http://allmydata.org/pipermail/tahoe-dev/2008-February/000405.html
Folks:

Interested in the Tahoe secure, decentralized filesystem, but don't
have time to install from source [1]? No problem! Just point your
web browser at

http://tahoebs1.allmydata.com:8123/

and you can use it interactively (by clicking on links and buttons)
or programmatically (by sending RESTful commands per webapi.txt [2]).

There is a publically writeable shared directory, which is linked to
from the TestGrid wiki page [3]. Feel free to scribble a note there.

Regards,

Zooko

[1] http://tahoebs1.allmydata.com:8123/
[2] http://allmydata.org/source/tahoe/trunk/docs/webapi.txt
[3] http://allmydata.org/trac/tahoe/wiki/TestGrid

Clutter - animated graphical user interfaces

http://www.clutter-project.org/blog/
http://www.clutter-project.org/docs.html

Clutter is an open source software library for creating fast, visually rich and animated graphical user interfaces.

Clutter uses OpenGL (and optionally OpenGL ES for use on Mobile and embedded platforms) for rendering but with an API which hides the underlying GL complexity from the developer. The Clutter API is intended to be easy to use, efficient and flexible.

Clutter currently features the following:

  • Scene-graph of layered 2D interface elements manipulated in 3D space via position, grouping, transparency, scaling, clipping and rotation.
  • Frame based animation engine providing path interpolation, transitions and other custom effects via Behaviours and Timelines.
  • Scriptable JSON based layout and animation file support.
  • Advanced input event handling.
  • Custom Pango renderer providing efficient internationalised UTF8 text rendering.
  • Support for high end Open GL features such as Shaders and FBOs.
  • Support for media playback with GStreamer, Cairo graphics rendering and GTK+ embedding are available via optional add-on libraries.
  • Object oriented design via GObject with a familiar GTK+ like API.
  • Runs on Linux, Windows and OSX with backend window system support for GLX, EGL, SDL and Cocoa.
  • Support for mobile devices with fixed point internals and portability across Open GL and OpenGL ES
  • Developed in C, with language bindings for Perl, Python, C#, C++, Vala and Ruby.

Clutter aims to be non specific -- it implements no particular style, but rather provides a rich generic foundation that facilitates rapid and easy creation of higher level tool kits tailored to specific needs.


Tuesday 26 February 2008

Online / Offline applications

Mozilla Labs Prisim
http://labs.mozilla.com/2007/10/prism/

OpenLaszlo is an open source platform for creating zero-install web applications with the user interface capabilities of desktop client software.

OpenLaszlo programs are written in XML and JavaScript and transparently compiled to Flash and, with OpenLaszlo 4, DHTML. The OpenLaszlo APIs provide animation, layout, data binding, server communication, and declarative UI. An OpenLaszlo application can be as short as a single source file, or factored into multiple files that define reusable classes and libraries.

http://www.openlaszlo.org/
http://www.openlaszlo.org/lps4/laszlo-explorer/index.jsp?navset=nav10.xml&bookmark=Introduction

Monday 18 February 2008

Mathematics and Art combined

http://www.bridgesmathart.org/art-exhibits/jmm08/

Automatic computer image generation

 

Electric Sheep is a free, open source screen saver run by thousands of people all over the world. It can be installed on any ordinary PC or Mac. When these computers "sleep", the screen saver comes on and the computers communicate with each other by the internet to share the work of creating morphing abstract animations known as "sheep". The result is a collective "android dream", an homage to Philip K. Dick's novel Do Androids Dream of Electric Sheep?.
this sheep was designed by cqfd93.



Anyone watching one of these computers may vote for their favorite animations using the keyboard. The more popular sheep live longer and reproduce according to a genetic algorithm with mutation and cross-over. Hence the flock evolves to please its global audience. You can also design your own sheep and submit them to the gene pool. 


Jenn3d.org for visualizing Coxeter polytopes




What is Jenn?

Jenn is a toy for playing with various quotients of Cayley graphs of finite Coxeter groups on four generators. Jenn builds the graphs using the Todd-Coxeter algorithm, embeds them into the 3-sphere, and stereographically projects them onto euclidean 3-space. (The models really live in the hypersphere so they looked curved in our flat space.) Jenn has some basic motion models governing the six degrees of freedom of rotation of the hypersphere.




Welcome to the CFDG Gallery!

CFDG is a simple language for generating stunning images. With only a few lines you can describe abstract art, beautiful organic scenery, and many kinds of fractals. It's highly addictive!

The CFDG Gallery is a public repository for artwork made using the language.

What now?

The links at the top of the page will navigate you around the site. If you're a first time user, learn more here (and get the software!) or browse the most recent uploads. Once you've started making your own, join us to post your images!
thumbnail

Pov-Ray
The Persistence of Vision Raytracer is a high-quality, totally free tool for creating stunning three-dimensional graphics



Friday 15 February 2008

Compile options to harden code (and occasionally catch bugs)

http://lwn.net/Articles/267961/#Comments

The specific features enabled are described in the original posting as well as with more detail on the Debian wiki entry for Hardening. They are:

  • using -Wformat to catch printf() family calls that do not have a string literal for the format string which can lead to problems if the argument came from an untrusted source and contains format specifiers.
  • using -D_FORTIFY_SOURCE_ to validate glibc calls such as strcpy() when the buffer sizes are known at compile time, which can help stop buffer overflow attacks.
  • using -fstack-protector to thwart most stack smashing attacks.
  • creating Position Independent Executables (PIE) which facilitates using the Address Space Layout Randomization that is available in some kernels. This makes it difficult for an attacker to have any knowledge of what the addresses for the program's sections will look like.
  • using ld -z relro to change certain sections to be read-only once ld has made its modifications while loading the program. This can thwart attacks that try to overwrite the Global Offset Table (GOT).
-Weffc++ - check C++ code for scott myers effective C++ definitions

flight of the conchords

Flight of the Conchords

Thursday 14 February 2008

LWN - distribution technologies

But, if one were to look at facilitating a more direct relationship between development project and their users, one would want to take advantage of a number of maturing technologies. These include:

  • OpenID. Any process of distributing distributions must look at distributed identity, and OpenID is the way to do it.

  • DOAP. "Sounds terrible" but it's a useful way of describing a project with XML. With a DOAP description, a user can find a project's mailing lists, bug tracker, source repository, etc.

  • Atom. This is how projects can distribute information about what they are doing.

  • XMPP. This is a Jabber-based message queueing and presence protocol. It can be used to more active publishing of information than Atom can do.

  • Distributed revision control. Lots of functionality for integration between projects, and between upstream and downstream. Jeff sees git as a step backward, though; some of the other offerings, he thinks, have much better user interfaces.

fasp file transport

http://asperasoft.com/technology/solution/index.html

The File Transfer Problem

Transferring large data sets—big files, big collections of files—via inexpensive IP networks,instead of shipping tapes, discs, or film, promises to change fundamentally the economics of content production, distribution, and management.

Under ideal conditions, data may be moved quickly and inexpensively using ordinary file transfer methods such as FTP, HTTP, and Windows CIFS copy. However, on real wide-area and high-speed network paths these methods' throughput collapses, failing to use more than a small fraction of available capacity. This is a consequence of the design of TCP, the underlying protocol they all rely on. New TCP stacks and new network acceleration devices are marketed to help, but they fail to fully utilize many typical wide-area network paths.Consequently, conventional FTP, and even new "acceleration" solutions, cannot provide the speed and predictability needed for global file transfers.

Monday 11 February 2008

Semantic web and Website design

http://www.readwriteweb.com/archives/reuters_calais.php
http://blogs.cnet.com/8301-13505_1-9861841-16.html?tag=blg.orig
http://www.opencalais.com/

What is Calais?

We want to make all the world's content more accessible, interoperable and valuable. Some call it Web 2.0, Web 3.0, the semantic web or the Giant Global Graph - we call our piece of it Calais.

The core of Calais is our web service. We're working to make this service more accessible by developing sample applications, supporting developers and offering bounties for specific capabilities.


http://semweb.salzburgresearch.at/apps/rdf-gravity/index.html


RDF Gravity is a tool for visualising RDF/OWL Graphs/ ontologies.
Its main features are:

  • Graph Visualization
  • Global and Local Filters (enabling specific views on a graph)
  • Full text Search
  • Generating views from RDQL Queries
  • Visualising multiple RDF files

RDF Gravity is implemented by using the JUNG Graph API and Jena semantic web toolkit.


Website design

http://www.freecsstemplates.org/

http://www.oswd.org/

The Zen of CSS Design: Visual Enlightenment for the Web (Voices That Matter) (Paperback)
by Dave Shea (Author), Molly E. Holzschlag (Author)


http://www.amazon.com/gp/product/0321303474



Staplr

http://area51.myyearbook.com/trac.cgi/wiki/Staplr

Staplr

Staplr is a trending analysis application. It uses rrdtool to store the data and make the graphs. It is written in PHP and is intended to be run via cron and using the cli php application.

Staplr out of the box currently monitors Apache, lighttpd, memcached, MySQL, pgBouncer, PostgreSQL and SysStat. Staplr was designed to make it very easy to implement new monitors. For more information on writing your own plugin monitors for Staplr, check out the Developer Documentation.

Monday 4 February 2008

Pi searcher

http://www.angio.net/pi/piquery

Why the Pi Searcher?

In 1996, Arthur Bebak of Netsurfer Digest jokingly suggested the idea. I put the site online, linked from the now-defunct Useless Web Pages Pages. The original suggestion was to find your birthday in Pi, but things got out of hand. The original pi searcher featured 1.25 million digits. It was upgraded in 1998 to 50 million, in 2001 to 100 million, and in 2005, to 200 million digits to keep up with the times. The Pi Searcher has proven both exceptionally useless (see the comments below) and occasionally useful to math & early science classes.


http://3.141592653589793238462643383279502884197169399375105820974944592.com/


http://www.eveandersson.com/pi/


tim's shared items

Add to Google Reader or Homepage