%!PS %% %% desc{ This prints a randomly chosen Oblique Strategy. } %% /inch {72 mul} def /rand-fraction { rand 16#7FFFFFFF div } bind def /randindex { length cvr rand-fraction mul cvi } bind def % array - int /rand-between { /min exch def /max exch def min max gt { /temp min def /min max def /max temp def } if /range max min sub def range cvr rand-fraction mul min add } def % Seed the randomizer: /realtime where { pop realtime } { 1 } ifelse srand 10 { rand pop } repeat /Helvetica findfont 9 scalefont setfont % font and size to use gsave 1.5 inch 0 5 inch rand-between add 1.5 inch 0 8 inch rand-between add moveto .8 setgray (O b l i q u e S t r a t e g i e s) show grestore /Q [ (\(Organic\) machinery) (A line has two sides) (Abandon desire) (Abandon normal instructions) (Abandon normal instruments) (Accept advice) (Accretion) (Adding on) (Allow an easement \(an easement is the abandonment of a stricture\)) (Always first steps) (Always give yourself credit for having more than personality \(given by Arto Lindsay\)) (Always the first steps) (Are there sections? Consider transitions) (Ask people to work against their better judgement) (Ask your body) (Assemble some of the elements in a group and treat the group) (Assemble some of the instruments in a group and treat the group) (Balance the consistency principle with the inconsistency principle) (Be extravagant) (Be less critical) (Be less critical more often) (Breathe more deeply) (Bridges -build -burn) (Cascades) (Change ambiguities to specifics) (Change instrument roles) (Change nothing and continue with immaculate consistency) (Change specifics to ambiguities) (Children -speaking -singing) (Children's voices -speaking -singing) (Cluster analysis) (Consider different fading systems) (Consider transitions) (Consult other sources -promising -unpromising) (Convert a melodic element into a rhythmic element) (Courage!) (Cut a vital connection) (Decorate, decorate) (Define an area as `safe' and use it as an anchor) (Destroy -nothing -the most important thing) (Destroy nothing; Destroy the most important thing) (Discard an axiom) (Disciplined self-indulgence) (Disconnect from desire) (Discover the recipes you are using and abandon them) (Discover your formulas and abandon them) (Display your talent) (Distort time) (Distorting time) (Do nothing for as long as possible) (Do something boring) (Do something sudden, destructive and unpredictable) (Do the last thing first) (Do the washing up) (Do the words need changing?) (Do we need holes?) (Don't avoid what is easy) (Don't be afraid of things because they're easy to do) (Don't be frightened of cliches) (Don't be frightened to display your talents) (Don't break the silence) (Don't stress one thing more than another) (Emphasize differences) (Emphasize repetitions) (Emphasize the flaws) (Faced with a choice, do both \(from Dieter Rot\)) (Faced with a choice, do both \(given by Dieter Rot\)) (Fill every beat with something) (Find a safe part and use it as an anchor) (From nothing to more than nothing) (Get your neck massaged) (Ghost echoes) (Give the game away) (Give way to your worst impulse) (Go outside. Shut the door.) (Go slowly all the way round the outside) (Go to an extreme, come part way back) (Go to an extreme, move back to a more comfortable place) (Honor thy error as a hidden intention) (How would someone else do it?) (How would you have done it?) (Humanize something free of error) (Idiot glee \(?\)) (Imagine the music as a moving chain or caterpillar) (Imagine the music as a set of disconnected events) (Imagine the piece as a set of disconnected events) (In total darkness, or in a very large room, very quietly) (Infinitesimal gradations) (Intentions -credibility of -nobility of -humility of) (Intentions -nobility of -humility of -credibility of) (Into the impossible) (Is it finished?) (Is something missing?) (Is the intonation correct?) (Is the style right?) (Is the tuning appropriate?) (Is there something missing?) (It is quite possible \(after all\)) (It is simply a matter of work) (Just carry on) (Left channel, right channel, centre channel) (Listen in total darkness, or in a very large room, very quietly) (Listen to the quiet voice) (Look at the order in which you do things) (Look closely at the most embarrassing details and amplify them) (Lost in useless territory) (Lowest common denominator) (Lowest common denominator check -single beat -single note -single riff) (Magnify the most difficult details) (Make a blank valuable by putting it in an exquisite frame) (Make a sudden, destructive unpredictable action; incorporate) (Make an exhaustive list of everything you might do and do the last thing on the list) (Make it more sensual) (Make what's perfect more human) (Mechanicalize something idiosyncratic) (Move towards the unimportant) (Mute and continue) (Not building a wall but making a brick) (Once the search is in progress, something will be found) (Only a part, not the whole) (Only one element of each kind) (Openly resist change) (Put in earplugs) (Question the heroic approach) (Remember those quiet evenings) (Remember quiet evenings) (Remove a restriction) (Remove ambiguities and convert to specifics) (Remove specifics and convert to ambiguities) (Repetition is a form of change) (Retrace your steps) (Return to the Introduction) (Revaluation \(a warm feeling\)) (Reverse) (Short circuit \(example; a man eating peas with the idea that they will improve his virility shovels them straight into his lap\)) (Shut the door and listen from outside) (Simple subtraction) (Simply a matter of work) (Slow preparation, fast execution) (Spectrum analysis) (State the problem as clearly as possible) (State the problem in words as clearly as possible) (Take a break) (Take away the elements in order of apparent non-importance) (Take away the important parts) (Tape your mouth \(given by Ritva Saarikko\)) (The inconsistency principle) (The most easily forgotten thing is the most important) (The most important thing is the thing most easily forgotten) (The tape is now the music) (Think - inside the work -outside the work) (Think of the radio) (Tidy up) (Towards the insignificant) (Trust in the you of now) (Try faking it \(from Stewart Brand\)) (Turn it upside down) (Twist the spine) (Use `unqualified' people) (Use an old idea) (Use an unacceptable color) (Use cliches) (Use fewer notes) (Use filters) (Use something nearby as a model) (Use your own ideas) (Voice your suspicions) (Water) (What are the sections sections of? Imagine a caterpillar moving) (What context would look right?) (What is the reality of the situation?) (What is the simplest solution?) (What mistakes did you make last time?) (What to increase? What to reduce? What to maintain?) (What would your closest friend do?) (What wouldn't you do?) (When is it for?) (Where is the edge?) (Which parts can be grouped?) (Work at a different speed) (Would anybody want it?) (Would anyone want it?) (You are an engineer) (You can only make one dot at a time) (You don't have to be ashamed of using your own ideas) (Your mistake was a hidden intention) ([blank]) ] def %%%% And now the spiral-texting stuff: % Copyright (C) 1987 by Pipeline Associates, Inc. % Permission is granted to copy and distribute this file if % this message is left intact and nothing is charged for it. % spiral text /pi 3.1415923 def /str1 ( ) def /SHRINK .9982 def % amount the shrink on each winding /spiral { gsave /rad exch def % radius /ptsize exch def % point size /str exch def % string to show % use xrad for width computations... % fudged by adding 1/4 point size to % real radius; done to tighten up % intercharacter spacing /xrad rad ptsize 4 div add def % start spiral at lhs of page 180 rotate str { % ASCII value of char /charcode exch def % convert to string str1 0 charcode put % show string str1 angshow SHRINK dup scale } forall grestore } def /angshow { /char exch def % angular "width" of character /angle char stringang def gsave % rotate through 1/2 char's width angle 2 div neg rotate % show character at end of radius rad 0 translate % char is perpendicular to radius -90 rotate % center character and show char stringwidth pop 2 div neg 0 moveto char show grestore % rotate through char's "width" to set % up next char angle neg rotate } def /stringang { stringwidth pop % x width of string 2 xrad mul pi mul % diameter of circle div 360 mul % convert to degrees } def %% Finally: gsave 320 % origin: X value (across from bottom left) 350 % origin: Y value (up from bottom left) translate 2 2 scale % size of spiral 360 cvr rand 16#7FFFFFFF div mul cvi rotate Q Q randindex get -200 % how tight to pack the characters 102 % how much space between the windings spiral showpage grestore %% End