Sebastian Schmieg is getting creative with code (see below). As far as I interpret the code right (and I just vaguely understand this 01-gibberish) he uses the Google image search for similar images and starts with a black image. And always uses the first resulting image for a next search and so on. And putting all the results together in a video. And the fun part: even though the start is just a blank/black image, a (little random, still amusing) narrative is created. Totally generative with no human manipulation at all. It’s a bit dry, though, without any soundtrack. Try listening to this in background while watching the video: Philip Glass, Glassworks.

import re, subprocess, time

class GoogleSearchByImage :

    GOOGLE_URL = "http://www.google.com"

    GOOGLE_SBI_URL = "/searchbyimage?image_url="
    
    AGENT_ID = "Mozilla/5.0 (X11; Linux x86_64; rv:7.0.1) Gecko/20100101 Firefox/7.0.1"

    MIN_SECONDS_BETWEEN_REQUESTS = 2

    _myLastRequestTimestamp = 0
    
    _myCurrentHtml = ""

    def scrape(self, theReference) :
        if time.time() - self._myLastRequestTimestamp < self.MIN_SECONDS_BETWEEN_REQUESTS :
            time.sleep(self.MIN_SECONDS_BETWEEN_REQUESTS - (time.time() - self._myLastRequestTimestamp))
            return self.scrape(theReference)
        else :
            self._myCurrentHtml = self.getHtml(self.GOOGLE_URL + self.GOOGLE_SBI_URL + theReference)
            self._myLastRequestTimestamp = time.time()
 
    def getHtml(self, theUrl) :
        try :
            myHtml = subprocess.check_output(["curl", "-L", "-A", self.AGENT_ID, theUrl], stderr=subprocess.STDOUT)
            return myHtml
        except :
            print "Curl error. Will sleep for 10 seconds"
            time.sleep(10)
            return self.getHtml(theUrl)
         
    
    def getSimilarImages(self) :
        myPattern = re.compile("\" href\=\"\/imgres\?imgurl\=(.*?)(\&amp|\%3F)")        
        myImages = myPattern.findall(self._myCurrentHtml)
        myImagesUrls = []        
        for myImage in myImages :
            myImagesUrls.append(myImage[0])
        return myImagesUrls
    
    def getLinkToSimilarImagesPage(self) :
        myPattern = re.compile("\<a href\=\"([^\"]+[.]?)\"\>Visually similar images\<\/a\>")
        myPageUrl = myPattern.findall(self._myCurrentHtml)
        myPageUrl = str(myPageUrl[0]).replace("&amp;", "&")
        myPageUrl += "&biw=1600&bih=825" # always keep this
        return self.GOOGLE_URL + myPageUrl
(via Lebowitz)

Marius Watz talks at the Eyeo Festival: “I have no formal education – not in art, not in design, not in programming”. A proof that artistry is not forcibly created through old fashioned educational institutions. On the other hand Marius gave a wonderful seminar at my university.

(via Digital Tools)

A robot that paints. It listens to it’s own sounds which occur by all the motors and mechanical elements. And uses these sounds as creative input to paint. So that makes a true interactive cycle between the artwork on a real canvas and the robot artist. And a human visitor could also modify the art by whispering in the microphone.

(via Today And Tomorrow)

Content is Queen.

(via FastCompany)

Super Computer Romantics. Primitive and advanced “lifeforms” shake their asses to music.

Ygramul Style Flocking Samurai Projection

Taichi Saotome - an androgynous Japanese actor - is fighting some shadowgraphy virtual and flocking particle blobs and Samurai (or Ninjas?). The show is called “Dragon and Peony”. I’m not sure if the projection is a static movie or next-gen generative interactivity. For further reading check Ygramul on the Neverending Story character list.

(via Lebowitz)