Archive of May 2008
Gödel, Escher, Bach - Wikipedia, the free encyclopedia
The mother of a friend lent me this book. I haven’t read much yet, but I’m already blown away. This Douglas Hofstadter guy is brilliant.
08:32 PM | 0 CommentsThis is an “open movie” created by the Blender people using Blender and other open source software.
Crazy stuff result when you put 3D mathematicians together with programmers and artists…
10:22 PM | 1 CommentThe further the spiritual evolution of mankind advances, the more certain it seems to me that the path to genuine religiosity does not lie through the fear of life, and the fear of death, and blind faith, but through striving after rational knowledge.
Einstein’s view of religion is really interesting. Richard Dawkins talks a lot about it in The God Delusion
This visualization of braindump data is the result of 25 lines of python, using the awesome Graph library from NodeBox. It pulls in the data using BQL over XML-RPC, and graphs it out. Pretty cool, huh?
06:49 PM | 0 CommentsBuddhism has the characteristics of what would be expected in a cosmic religion for the future: It transcends a personal God, avoids dogmas and theology; it covers both the natural and spritual; and it is based on a religious sense aspiring from the experience of all things, natural and spiritual, as a meaningful unity.
It’s interesting how both Einstein and, according to Seed, Robert Oppenheimer had an affinity for Buddhism. Have to look into that.
HTML is precisely what we were trying to PREVENT— ever-breaking links, links going outward only, quotes you can’t follow to their origins, no version management, no rights management.
It’s funny how Ted Nelson doesn’t like the way the internet, which he more or less envisioned, actually was implemented. He might be comforted by wikis, which do keep track of inward links and version management – little walled gardens of organization.
Tracking inward links never happened because it requires a centralized link registry – like the triples table in braindump or the links table that wiki systems must have – which never happened for the whole web because the whole point is to be decentralized. Of course there’s Google, which counts all the links with its massive infrastructure. As close as you’re gonna get, Ted.
Drunken Ramblings
This photo of the movements of a person around Paris for a year got me thinking about the narrowness of my own thoughts – how during the course of a week they go in certain patterns, around and around, and often thoughts lead to other thoughts, forming a path that sometimes I trace often. But as the months go by, new discoveries cause my thoughts to go in new directions, and every week I have a different set of thought-ruts.
I thought the concept of thought-ruts was cool, how the things we all think about over and over can tell a lot about us, and how much peoples’ ruts differ – the strangeness when people of completely different ruts meet, the conflicts when they differ in a violent manner, the goodness when they fit together well.
Then I thought it would be cool to map out thought – all thought, let’s say. At the bottom there’s the massive buzz of animals and insects, who’s brains just operate on simple rules that direct them towards food and mates. Above that there’s normal humans – the lower and middle classes, who are concerned with food and jobs and such. Above that are the artists and scientists and writers and stuff, who deal with abstract concepts like love and consciousness and identity and society. And above that there are the super-abstract thinkers like theoretical physicists, who think about the most basic nature of things, and mathematicians, who try to get at the basic nature of numbers which represent…. Too abstract for me.
So above the buzz would be the sparse few thought-traces of great thinkers, which arc up almost to … God? I don’t think so, but that’s the next step a lot of people would take…
I also read a book once about this person who could see people’s souls one day. They looked at a person and saw this magnificent, intricate light-structure floating in/above their head – with little bits of light going around representing thought and colors representing the emotions they’re feeling. Sort of like Dust in the His Dark Materials trilogy, where Mary Malone or whatever her name is can see dust swarm around people as they think – she looks at a child and it swarms around in fast little currents, and then she looks at its mother and the dust moves in more organized, purposeful patterns. It would be cool to see people’s minds as you walk down the hall – this person has a huge inferiority complex hanging on the side like a leech, this person has a huge self-esteem wall around a weak interior, one person says something to another person that punches a hole in their mind-structure, causing it to wobble and then start growing around the wound… Lots of possibilities.
This visualization of the blogosphere inspired me to think about visualizing web communities. People who know each other link to each other’s blog posts and call each other by nicknames. It’s a little closed circle of communication (you can see them scattered around the photo) in the middle of the Big Internet, which one of the community occasionally breaks by linking out to something the community usually doesn’t deal with.
It’s also interesting to look at how language is reduced as you journey towards the “epicenter” of such a community. An outsider, writing for an audience not familiar with a certain subject, would refer to to Ruby on Rails, for example, as “a web framework called Ruby on Rails”. As you read blogs of people writing for an audience more likely to know what Ruby on Rails is, they say something more like just “Ruby on Rails”, and then there’s the tight-knit group of contributors and such that refers to it simply as “Rails”.
Or take the creator of Rails, David Heinemeier Hansson. I wrote who he was because I figured people reading this wouldn’t know. Reading stuff normally read by people who do know, his name isn’t prefaced by who he is, and then at the epicenter of hardcore Rails fans he’s referred to as just “DHH”.
Extracting a social network from a bunch of web pages written by and for people who know each other is an interesting and daunting task. If you browse around for a while, you learn that this person created this, this person works for this company, they usually go by this username, etc. Important people like DHH are scattered all over the web – profiles, blogs, offhand mentions in hundreds of posts, etc. I once stumbled upon a blog by someone I sort of know from school – they linked to someone else’s blog, who I also sort of knew and they linked to someone else’s – I eventually figured out who they all were, but it was confusing because they were all going by strange little internet aliases and some had multiple abandoned sites and stuff… Reminds me of Google’s cool social graph API.
Well, I’m done now. That’s the problem with tumblelogging – blogging little bits of found interestingness like I’ve been doing lately, what chyrp is good for — every now and then you have to ramble like this and tie all those bits together. Ted Nelson was right – splitting things into little chunks is denying the basic structure of information – everything is deeply interwingled.
09:30 PM | 0 CommentsThis is a map of Paris, and the black line is the path of a student around the city during the course of a year. The person who made the map was astonished by the narrowness of the subject’s movement – their movements basically made a triangle between a school, her residence, and her piano teacher, and there are big areas that the person never went to.
It’s from this post, via a comment on this flickr photo. The movement of the cat in the flickr photo – from food to heat – reminds me of a simple robot I read about – a small, wheeled thing that steers randomly, backs up and turns when it bumps into something, and homes in on its charger when it’s starting to run out of power. I remember thinking how cool that was – it’s completely autonomous, just following a simple set of rules. Some guy built it, and it ran around its house.
09:22 PM | 0 CommentsIt’s cool how you can drag a box over an area in a photo in Flickr and write a little note about what’s in that area that people read by mousing over it — and in Facebook, how people put boxes over each other’s heads in photos, “tagging” that area as Bob and enabling links like “pictures of Bob” and “pictures of Bob and you”.
Too bad these tags, which add so much significance and meaning to images, are dependent on complex, site-specific javascript and server-side processes and database structure – when you move a photo from site to site, all that metadata is lost.
I wonder if there’s some sort of standardized, perhaps XML-based language or something for adding metadata overlays to images. I think I heard of this somewhere… Can’t remember
09:13 PM | 0 CommentsI’m pretty sure this is a pattern made by someone walking around a city with a GPS receiver. (more photos)
Kind of reminds me of an awesome Seed piece that I can’t find that’s called “The Living City”
08:16 PM | 0 CommentsMeiosis - Wikipedia, the free encyclopedia
it was first discovered in sea urchin eggs. who would have guessed.
08:27 PM | 0 CommentsHere's a Cool Hack
I first saw it a while ago in in this rails ActiveRecord tutorial – as the guy plays with the object relational mapper in one terminal window, all the SQL it’s running comes out in another terminal window. I saw that he had typed tail -f logs/development.log in the second window, so I investigated: tail displays the “tail” end of a specified file; -f keeps it going, spitting out new changes as the file is modified. In the case of the video, the file was a log file that rails writes all the SQL it runs to.
So I did this with braindump. Now if you set log_queries to true in app/config.php, the system saves every SQL query it runs to a log file at core/query-log.txt. So now I can type tail -f query-log.txt in the terminal, and the next time I go to a page on braindump, it spits out the requested URL and then all of the SQL that was run in the course of creating that page, like so:
tail -f core/query-log.txt # go to a page, and viola: /pages/index SELECT * FROM pages ORDER BY name DESC
It’s very useful for debugging, to see what’s going on behind the scenes. It’s also just cool to browse around and watch the terminal spit out SQL. It’s as if my program, braindump, is in the space between the browser window and the terminal window—you can see the cycle from HTTP request to SQL query and all the way back to HTML output.
It’s also cool to have the BQL console running in one terminal window and the SQL tail running in another. I type a BQL query into the console like so:
python xmlrpc_console.py braindump> get creator of braindump
and immediately the other window spits out the SQL queries that my BQL parser needed to get the answer:
SELECT id FROM pages WHERE name = 'creator' SELECT id FROM pages WHERE name = 'braindump' SELECT object_id FROM triples WHERE predicate_id = 1 AND subject_id = 2 SELECT name FROM pages WHERE id = 3
and then the answer comes back to the first window:
python xmlrpc_console.py braindump> get creator of braindump pedro
Anyway, yeah. If you didn’t follow that, oh well. This is a show-off post, not an informative one :)
07:34 PM | 0 CommentsBQL is Braindump Query Language
I just implemented it last night. The idea is to create an english-like language á la SQL to simplify reading and writing information about entities in braindump. Right now there are four commands:
- set —
'set color of apple to red' => true - get —
'get color of apple' => 'red' - list —
'list where color is red' => ['apple'] - unset —
'unset apple' => true
It still needs some work, but that’s the gist of it. It’s mostly used internally now, but I also wrote a simple console program in python which lets you run BQL queries on a braindump server over XML-RPC. More about this later.
09:16 PM | 0 CommentsChariots of Fire - Wikipedia, the free encyclopedia
The title was originally “Running”. but you win four oscars with “Chariots of Fire,” not “Running”. kinda funny.
08:36 PM | 0 Commentsthis guy was a keyboardist in a rock band before he was a über smart physicist. My life seems kind of boring right now.
07:40 PM | 0 CommentsI just emailed Trevor about thinking chair and GMail gave me an ad for obese office chairs. (“up to 750lb. capacity!”)
05:42 PM | 0 CommentsTED - Pangea Day, May 10, 2008
“On May 10, 2008, join the world on Pangea Day — a celebration of the power of film to unite us.”
clever
08:51 PM | 0 CommentsDjango
As a web developer getting my hands dirty with Python, I had to check out Django. As of now I’ve just browsed through a little documentation and introductory stuff, and so far I’m impressed. Things seem to be pretty well thought out, and it has all the goods – caching, ORM, database drivers, super scaffolding, etc.
I especially like their little naming tweak – instead of Model View Controller, they call the controller the view and the view the template (MTV!). At first it seems weird, but it makes a lot of sense: “controller” isn’t quite accurate because in a well-designed app, all the controller does is use the model to fill a certain variable with values from the database and then pass that to the view/template to be displayed. So really what it’s doing is deciding which facet of the data it shows you, from which angle you “view” the data, how the data is sliced. (in a blog there could be a list of users, a list of posts for a user, a list of comments for a post, etc) “Template” is also more accurate than “view”, (the things that other frameworks use to render their views are even called “template engines”!) because really a view is just markup with little spots where variables are stuck in.
Anyway, yeah. Very nice. I’ll have to write an app to really get familiar with it, though. Maybe put something on AppEngine. We’ll see.
09:43 PM | 0 Comments