Mountain Creek

mountain

Bought a new ream of A2 heavyweight paper in the real world.
Went home and decided to draw it digitally instead.

Liquify Mesh

ddmesh1

ddmesh2

ddmesh3

Changed to a new pair of glasses. Seems like I might be getting vertigo from the sudden change of floor depth. Couldn’t continue writing while dizzy, so played with grids and meshes instead. Playing with the Liquify tool is fun – but not quite improving the vertigo situation.

Where were you in ’95? – Finite capacities and data retrieval in physical media formats.

Recently I rewatched two films which I had fond memories of watching as a teenager, by dint of them both having been aired on one of the late night television slots – Johnny Mnemonic (based off a story by William Gibson), and Strange Days (screenplay written by James Cameron). Both were made in 1995 and somehow bore some similarities to each other in terms of topic matter and their representation of what they perceived to be the future of cyberspace. Here are some of my thoughts on them both:

Johnny Mnemonic (A Summary):

In 2021, the world is completely connected to the internet. Many are suffering from Nerve Attenuation Syndrome, which people develop from overexposure to electromagnetic radiation from electronic devices. Human “software” can be modified or enhanced; brains can be modified to become data storage, at the expense of deleting some of your organic memories. A data courier, Johnny Mnemonic, who has wiped out part of his childhood memory in order to store more data gets trapped in a deal gone wrong, and is forced to download some mysterious data, which turns out to be the medical cure for NAS that has been hidden from the world by PharmaKom, the big pharma company, in order to profit from selling people expensive drugs for NAS that do not cure it but prolong its symptoms. Johnny Mnemonic is forced to go on the run as he is being pursued by the Yakuza and other hitmen (including a crazed pseudo street preacher “without a single natural bone in his body”), who want to destroy the information forever. He finally finds himself in Lotek HQ, the anti-technology and anti-establishment guerilla resistance (which regularly jams media channels to send out its pirate broadcasts), where they use the help of a dolphin to hack the data encryption in Johnny’s brain so they can transmit the cure to NAS and make it public data…

Johnny Mnemonic’s (In)finite Capacity Hard Drive

For long time I wondered why Johnny Mnemonic’s brain was able to take more data than specified on its label. In the film, the entire drama starts because Johnny’s brain is overloaded with more data it can take and this data is said to have been uploaded at the cost of wiping out more and more memories from his childhood. But, why was the electronic side of his brain able to affect all of his organic memories in the first place? How much data is “too much data”? Why was there even this so-called threshold anyway of brain disk space anyway? Convienient plot device to draw comparisons between Johnny’s humanity (his natural memories), and his business as a data courier (the world’s data and memories)?

After thinking about it for some time, the only reason I can come up with to explain this, is the fact that the mind technically never actually runs out of space, unlike hard drives which are built with finite capacities. We continue thinking thoughts all the time and all these thoughts would, conceivably take up more and more “space” in our brains, but yet we never ever run out of space, because this is not any normal kind of “space” that we can describe or define with any kind of boundaries or normal sense of physicality. So the supposed finite capacity of Johnny Mnemonic’s cyberbrain should be false because this is merely the assumption we tend to have of normal harddrives. Ignoring those preconceptions, I suppose it could be possible to “overload” Johnny Mnemonic’s brain infinitely.

Strange Days (A Summary):

In 1999, the city of LA is in complete anarchy and chaos; there are racial tensions and clashes against the police state. Some years ago, the police developed a method of recording people’s memories and experiences straight from the cerebal cortex, allowing them to be played back over your reality with “wet-wiring” hardware, also known as “Squid” (Super-conducting Quantum Interference Device). The equipment was no longer being used by the cops but now had a thriving blackmarket. An ex-cop, Lenny Nero, who has fallen on hard times has become a dealer in these “experiences” or “memories”, especially illegal or slightly immoral activities which one would feel morally obligated to not participate in, despite having the desire to do so. However, someone seems to be targeting Lenny and sending him “blackjack” or “snuff movie” tapes, which horrifies Lenny. Not only does it involve rape and murder but the perpetrator also forces the victim to wear the wet-wire and see and feel what their attacker is experiencing at the same time. One of the tapes also involves the murder of a high-profile african american rights activist and rapper. Unable to trust the police, he decides to send the tape to the one good police commissioner he still knows, and he confronts the people whom he thinks have been sending him the tapes.

Physical Formats and Libraries of Memories

This film is simplier and in some ways, pitched slightly more “low-tech” than Johnny Mnemonic, but it keeps it true to how things are even today. The issue I have with this concept of a big black market for “recordings of lived experiences” is that in the film it was conceived of being a trade of physical media copies (a rather limiting world view), rather than something conducted via a network. The image of a man sitting in his bedroom with a shoebox full of memories that he plays back for nostalgia’s sake is a classic one, and I imagine that physical data formats will continue to be the main way in which we choose to store our most important memories even as more and more things exist only in a virtual or digital form – I upload everything to the cloud but I still continue to keep special data in physical formats in a shoebox as well.

I don’t see it possible that it would be a trade involving scattered peddlars, but something of this level would have been the domain of organised crime (if made illegal). And also, the possibilities of such a technology could be extended to dreaming. Why didn’t anyone try to put it on to a sleeping person to record their experience? Why couldn’t you put it on someone else to playback other experiences over their dreams to see what would happen to the dream? But speculation aside, the issue of physical media is that it is prone to deterioriation over time. So a world in which memories are consigned to physical formats is still finite in its survival. You would not be able to retrieve the memory after the physical format of this media is destroyed or disintegrates; this is similar to how memories will be lost if the person is dead, and this is also similar to how we are not the same as a network (although we do things that try to approximate it (see things like “Quantified Self”) – our “abstracted” data – how do we make sense of this? Can we analyse it and make it meaningful information?

One thing I didn’t see in the movie was a library of memories. I would imagine that if such technology exists, then people would start amassing warehouses and catalogues of memories to accompany this black market trade of memories. To be able to record, also means being able to document. To inventorise, and to However, this also brings me back to the idea that it should be depicted in the context of a distribution and storage network. Digital formats are great because things like CDs and MDs and external harddrives can take up very little space in the real world so our compulsive hoarding of data does not actually crowd us out of our homes. Can it be true that a saleman of memories only has his small “special shoebox” of memories, rather than a massive library of it? The point is that anything with a physical format is still taking up physical space so the reality is that some storage is still involved, unlike the “purity” of it being all somehow “online”, which would also mean that if its storage was “digitised” then it could also be conceivably be sorted and searched by computers. The whole point of digitising information is also that we can sort it, and use the computer to help us analyse it and find meaningful connections within the data itself.

From Philip K Dick’s VALIS: “We appear to be memory coils (DNA carriers capable of experience) in a computer-like thinking system which, although we have correctly recorded and stored thousands of years of experiential information, and each of us possesses somewhat different deposits from all the other life forms, there is a malfunction – a failure – of memory retrieval.”

Moodboard – Demons and their Sigils of Summoning, Occult Geometry, and Neon Spirits

As Arthur C Clarke says: “Any sufficiently advanced technology is indistinguishable from magic.” These beautiful symbols have been making the internet rounds lately. In this form, they appear almost like circuit diagrams. I approve of this graphical style! Internet indicates that some of these resemble sigils in the Lesser Key of Solomon.

I put together some moodboards with similar artwork that I like.

moodboard001
In Walter Miller’s “A Canticle for Leibowitz”, Civilisation is described as having been once destroyed by a nuclear war, and subsequently a backlash occurs against technology (which had led to the development of nuclear weapons), resulting in “Simplification” and the killing of intelligent people and burning of books.

Centuries after this event, there was an monastic order that somehow survived (a little bit like how monk’s would have lived in the dark ages) and the abbey was focused on preserving and copying these religious texts. Over the course of the book, we soon realise that these religious text they had hoarded and preserved were similar to mundane things we see in the present century – shopping lists, receipts, science notes, circuit diagrams. They had copied and memorised it as if it were knowledge from God although they did not always know what it meant, but this information had actually been the detailed knowledge and diagrams of the science and technology that man once had, but had chosen to forget because of the terrors of nuclear war…

moodboard002
Neon lights and the occult are something that seem perfectly matched as we move into an LED-lit era. Chinese funerals, temple festivals, and certain other taoist religious ceremonies in Singapore are also commonly festooned with intense, running neon light displays.

IMG_0288
Yama, God of Hell, at Newton Circus Food Centre last year.

detail_from_enter_the_void
Here is more detail from Gaspar Noe’s Enter the Void, which was a somewhat indulgent and long-winded film with long tracking shots, but also lovely drugged out visuals with soft focus and mainly neon colours. Appropriately, the film is also modelled after The Tibetan Book of the Dead, which piques the interest of the main character just before he is unexpectedly and suddenly killed, and his soul seems to float through the feverish, neon-lit nights of Tokyo…

From SFgate: “Noé says, “The longest astral trip you can find is the one described in the ‘Tibetan Book of the Dead,’ so I thought that book would be a great way to structure a hallucinatory vision for two hours.” To research psychedelic experience firsthand, Noé journeyed to Latin America.

“In the Peruvian jungle, I drank some extremely hallucinogenic ayahuasca,” he recalls. “Everything seems like it’s made out of neon lights. It would have been a lot easier if the designers had tried it themselves because it is difficult to explain these visions to people who never had those experiences.””

Traversing XML structures – Loops

I am working on a AS3 project with an XML data sheet and this week I figured out another solution to traversing the structure in a better fashion…

<?xml version="1.0" encoding="utf-8"?>
<TIMELINE>
 <YEAR NAME="2000">
  <ARTICLE>
   <MONTH>January</MONTH>
   <NAME>Lorem Ipsum</NAME>
   <DESCRIPTION>Lorem Ipsum is simply dummy text.</DESCRIPTION>
   <IMAGE>image1.jpg</IMAGE>
  </ARTICLE>
  <ARTICLE>
   <MONTH>December</MONTH>
   <NAME>Ipsum Lorem</NAME>
   <DESCRIPTION>Lorem Ipsum is simply dummy text.</DESCRIPTION>
   <IMAGE>image2.jpg</IMAGE>
  </ARTICLE>  
 </YEAR>
 <YEAR NAME="2003">
  <ARTICLE>
   <MONTH>April</MONTH>
   <NAME>Ipsum Lorem Ipsum</NAME>
   <DESCRIPTION>Lorem Ipsum is simply dummy text.</DESCRIPTION>
   <IMAGE>image3.jpg</IMAGE>
  </ARTICLE>  
 </YEAR>
</TIMELINE>

Basically, in my XML sheet, there were years, and within those years there could be more than one article. Some years had numerous articles. Some years had only one article.

myXML.*.*.length();

When I traced something like this, I would get the total number of articles. I could also traverse all the articles as if the year was not of consequence and all the articles were just being counted and assigned numbers in order from 0 onwards.

myXML.*.ARTICLE[articleNum].DESCRIPTION.toString();

The quandrary was that I needed to be able to scroll through all the articles chronologically but I needed to be able to tell what year it was from, according to the article number (which was now effectively independent from the year), and also be able to find out the article number within that year alone, rather than as a whole.

The solution I came up with: Use a loop to check for number of articles in all previous years, add them up so i can subtract it from the full number of articles. This gives you the article number within that year alone, instead of the article number within the entire “timeline” sheet.

var g:Number = 0;
//myXML.*.ARTICLE[articleNum].parent().childIndex() is year index for that article
while (g < myXML.*.ARTICLE[articleNum].parent().childIndex())
   {
        //myXML.YEAR[g].*.length() is the number of articles in g year
        articleNumContainer += myXML.YEAR[g].*.length();
        g += 1;
   }
// one is added to articleNum cos it actually starts at zero
articleNumberWithinYear = (articleNum + 1) - articleNumContainer;

Flash AS3 and SoThink SWF Decompiler

While saving my work, I had an error and lost the FLA while fortunately, having first published a perfect SWF. If you are saving your work in Flash and Flash crashes before it saves, it often causes your FLA to completely disappear. Always backup your work periodically. Thus I was forced to decompile my own code with SoThink SWF Decompiler to recover my work into an FLA file (for speed) but I also realised that it had decompiled it in a different way from how I had originally coded it. It was easy to figure out and I recovered my entire file within an hour to almost the exact way I had originally coded it. Here are some notes on what I noticed about how it had changed my code in the process of decompiling from swf to fla.

  1. All variables that are randomly declared all over the code are collected and put at the top of the code.
  2. New variables are given names like “_loc_2” or “_loc_3”. Anything with many brackets is also assigned various variable names for different parts of the equation, and then a few of these temporary functions are added up together instead.
  3. All for loops are turned into while loops.
  4. “this.” is added to any objects referred to on the main timeline
  5. It also makes use of the rather uncommon addFrameScript, which adds script to movieclips in AS3. If you leave bits of code outside functions by mistake (eg stage display items), it might group them together in a function called frame1.
  6. It adds the “end function” comment at the end of functions.

Example of typical while loop as decompiled in SoThink:

while (t < max_T_Number)
            {
                // do this
                t = (t + 1);
            }

Example of typical addFrameScript function as decompiled in SoThink:

public function MainTimeline()
        {
            addFrameScript(0, this.frame1);
            return;
        }// end function

function frame1()
{
stage.scaleMode = StageScaleMode.SHOW_ALL;
stage.align = StageAlign.TOP_LEFT;
stage.displayState = StageDisplayState.FULL_SCREEN;
}// end function
}

Although the decompiler is perhaps not the most ethical way of accessing other people’s source code, I think the decompiler still makes an excellent learning tool for flash. When I have more time I will download more swfs or analyse more of my old swfs to see if the conditions listed above are consistently true.

Mushroom

Picture 18
Picture 16

Picture 17

Give me give me moire.

Just some fun sketches I made in flash.

20-minute Photo Recolouring

ding_original
Original Photo of my father’s side of the family
(he’s one of the little ones)

ding_recolour

Recoloured Version done in photoshop in 20 minutes.
Yes, this is what I do for leisure…

Picture 14

iSeismograph on the MRT

The circle line played me out once again. Lured by the sign that said “to Dhoby Ghaut”, I got on the circle line, only to realise that part of the line was not running. The only way from Labrador Park to Dhoby Ghaut was a preposterous 50 minute ride via Bishan. So I had to take a series of connections between the Circle, North-East, and North-South lines instead. To make this less boring, I started playing with a seismograph app that I had gotten some time ago:

I’ve spent a long time listening to train sounds on rjdj and with Dimensions, so much that the sound of trains is starting to change in meaning for me. I was thinking that perhaps each train line had its own sound or vibration signature, and maybe I could graph or map it with my iphone’s accelerometer….

iSeismograph Features:
– Samples Accelation / G-Force with up to 180 samples / s
– Plots the accelation data for all three axis
– Exports the samples data as ASCII-File
– Pause and resume sampling
– Automatically save sampling session
– Select and resume older sampling sessions
– Adjust sampling rate in between 5 – 180 samples / s
– Tare function

The application iSeismograph is able to export the data via email, where they will also send you this message: “The data consists of the date code and the corresponding g-values for the x, y and z axis. The column is seperated using a tab. Please pay attention that iSeismograph uses a dot as decimal seperator.”

The resultant exported chart looks like this, and can be easily imported into Excel.

Date Code G-Force X [g] G-Force Y [g] G-Force Z [g]
2012-01-11 13:07:28.154 -0.1322174 0.01535034 -1.061234
2012-01-11 13:07:28.171 -0.134201 0.0173645 -1.061249
2012-01-11 13:07:28.190 -0.1352234 0.01838684 -1.056427
2012-01-11 13:07:28.209 -0.1342316 0.01443481 -1.054459
2012-01-11 13:07:28.227 -0.1351929 0.01445007 -1.059326
2012-01-11 13:07:28.246 -0.134201 0.01637268 -1.059311
2012-01-11 13:07:28.260 -0.1352081 0.01739502 -1.060303
2012-01-11 13:07:28.284 -0.1322327 0.0202179 -1.063171
2012-01-11 13:07:28.295 -0.1312561 0.01629639 -1.057343
2012-01-11 13:07:28.314 -0.1282959 0.01522827 -1.060226
2012-01-11 13:07:28.332 -0.1302643 0.01429749 -1.05928
2012-01-11 13:07:28.349 -0.1361694 0.01548767 -1.05545
2012-01-11 13:07:28.372 -0.1371765 0.01940918 -1.059326
2012-01-11 13:07:28.383 -0.1361847 0.02035522 -1.059311
.
.
.

Picture 1
NOW WHAT…?

Maybe a reworking of my old “NEXT STOP RAFFLES PLACE” piece?

 

Score For Next Stop Raffles Place Interchange (2008)

Mediawiki Lockdown – How to make your wiki private

 

For some years now I have been using a couple of private wikis for storing and sorting short notes on topics and interests.

Wikicliki – general wiki
Design Patterns – design and scripting wiki (for my students)
Disukowiki – language wiki

Lately there have been some issues with spam bots which seem to be getting smarter but even more bizarre, creating generic account names of the same type, and generating or writing over my pages with what looks a lot like actual paragraphs of useful information about random irrelevant topics (examples being: homopathy, ugg boots, weather, self-confidence mastery, etc) sometimes with no outbound links. Why do the spambots do this, it is still a complete mystery to me. It serves no purpose (not even SEO-wise for them) except to be a real pain in the ass to the wikisysop.

What makes me sad is the abuse of the system that actually has the potential of providing open space for some really interesting things, so I almost find it a pity to close it up. Some years back, once there was someone who posted on my wiki saying they were doing an experiment in which they stored chunks of (gibberish/encoded) data over a number of open wikis.

They set up anonymous accounts on people’s open wikis (like mine), and posted these encrypted chunks of data in text form. In posting these fragments of the file online, their experiment/goal was to create a system in which people could transmit a really large and encrypted file to someone else. The recipient would have to locate and visit all these wikis to find the numerous segments of encrypted data, and then recompile it together with their prearranged encryption key to get the original huge file. A brilliant idea, although perhaps it would be a bit tedious in practice.

On that bittersweet note:
If you haven’t edited your wiki’s settings yet, do this now. Add this to LocalSettings.php:

# Disable anonymous editing
$wgGroupPermissions['*']['edit'] = false;

# Disable editing by ALL users
$wgGroupPermissions[‘user’][‘edit’] = false;

# Enable editing by ONLY sysops
$wgGroupPermissions[‘sysop’][‘edit’] = true;

# Prevent new user registrations except by sysops
$wgGroupPermissions[‘*’][‘createaccount’] = false;

After doing this, make sure you open up your FTP browser and chmod LocalSettings.php to 600. Duplicate a copy of LocalSettings.php and rename it to LocalSettings_date.php so that in case something unexpected happens you still have a backup of LocalSettings.php from when it was still alright…

Picture 23
You can look at the Mediawiki guide to Preventing Access to see more options on how you can tailor the privacy settings (for example, you could set it so that only users with accounts of a certain age, like say a few weeks, can create new pages).

Understanding Early Telegraph Systems

Last year I worked on an educational project about the Titanic’s Marconi Room. In this I was trying to understand the component parts inside the Marconi Room. I was determined to understand the entire diagram above, but not having any real foundation in understanding schematic diagrams meant it was quite hard to figure out what was going on.

wireless
Diagram with my annotation (click to see larger version)
However, I was struck by this anecdote regarding how necessity and commercial competition drove the invention of the multiple tuner:

From Spark Museum: “Prior to the introduction of the Multiple Tuner by the Marconi Wireless Company, receivers had only limited tuning ability which left them with no effective way of discriminating between the signals of multiple simultaneous transmitters. Marconi was well aware of this limitation which was brought painfully home to him in 1903 during a demonstration of his wireless apparatus by Dr. J. Ambrose Fleming. According to the story, Fleming was about to demonstrate the system when the Morse printer began chattering rapidly with the words: “There was a young man from Italy, who diddled the public so prettily…” The source of this embarrassment to Fleming and Marconi was a business rival who had set up his own transmitter as an attempt to discredit Marconi.

While the incident was certainly embarrassing, it did provide Marconi with an excruciatingly clear message: For wireless to be of commercial value, the ability to distinguish between multiple transmitters was a must.”

Imagine a time so far back when people were just creating transmitters, without having the concept of being able to send it only to different receivers! I often feel like that when I am trying to build something and I don’t even know what I’m doing when all of a sudden, I become aware of the bigger picture!

Picture 22
Final Artwork (Illustration by DBBD)


See also:
More information on the Marconi Wireless Room
Spark Museum