Skip to content

Commit d1ae944

Browse files
author
Fabian Morón Zirfas
committed
chore(import all gallery content):
1 parent 868b6de commit d1ae944

File tree

83 files changed

+719
-2
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

83 files changed

+719
-2
lines changed

.netlify/state.json

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"siteId": "c081644c-312b-486e-8594-8bb5c3a869ca"
3+
}

.node-version

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
v11.9.0

_source/_layouts/gallery-item.html

+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
---
2+
layout: default
3+
---
4+
<section>
5+
<h1>{{page.title}}</h1>
6+
<p>{{page.description}}</p>
7+
{%- for author in page.authors -%}
8+
{%- if author.url != null -%}
9+
<a href="{{author.url}}">{{author.name}}</a><span>, </span>
10+
{%- else -%}
11+
{{author.name}}</a><span>, </span>
12+
{%- endif -%}
13+
{%- endfor -%}
14+
</section>
15+
16+
<main>
17+
{{content}}
18+
</main>
Loading
Loading
Loading
Loading
Loading
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
1+
---
2+
authors:
3+
- name: Felicitas Katharina Merz
4+
url: http://www.felicitas-merz.de
5+
- name: Inken Zierenberg
6+
url: null
7+
8+
layout: gallery-item
9+
title: "Affected Perception"
10+
description: The automated design works with the typographical layout content. Out of the manual word categorization eight arrays are sorted after the word importance. The automated scripting changes the words in the single arrays after the defined objectstyles. Through this the most important word groups stay readable and the less important word groups get less readable.
11+
---
12+
13+
14+
![](./images/7_DSC_0402_17.jpg)
15+
16+
The developed theme „Affected perception“, refers to an abridgment of the text „Program or be programmed“ by Douglas Rushkoff. The goal was to create an appereance based on the manipulated perception of the typographical layout content. The project should represent an example of the field of abstraction, modification, readability and alienation. The improvement of the workflow consists of the steps: Manually creation by hand , generating and modifying by code and re-editing for print publishing by hand. The concept is based on eight classified word groups (arrays). Every word is sorted after its importance in the text. The goal is to automate the determinations of a single word group by a certain defined object style. The object styles hel- ped to define the difference of the visual appearance. Through the defined object styles the color changed into transparent and a cast shadow is added. The cast shadow gets bigger with the unimportance and the opacity is reduced with the unimportance of the words. The soft edges and the additional drop shadows help to create a liquid shade of words hierarchical sorted after importance. As result of the code the most important word group stays readable and the less important words get unreadable.
17+
18+
![](./images/1____DSC_0402_191-466x350.jpg)
19+
20+
![](./images/2_DSC_0363_2-492x350.jpg)
21+
22+
![](./images/4____DSC_0436_32-527x350.jpg)
23+
24+
![](./images/6_DSC_0393_13-489x350.jpg)
25+
26+
### Source
27+
28+
{%- highlight javascript -%}
29+
#includepath "~/Documents/;%USERPROFILE%Documents";
30+
#include "basiljs/bundle/basil.js";
31+
32+
function draw() {
33+
34+
var impWords1 = ["human", "beings", "listen", "speak", "read", "write", "digital", "reality", "programs", "programmed", "landscape", "software", "Program", "access", "control", "panel", "digital", "technologies", "Computers", "networks", "living", "things", "technology", "future", "programming", "cooperation", "blueprint", "design", "progress", "knowledge", "civilization"];
35+
var impWords2 = ["language", "literacy ", "choice", "tools", "instructions", "characterize", "shaping", "possibilities", "ability"];
36+
var impWords3 = ["acquired", "learned", "gained", "use", "increasingly", "make", "emerging", "create", "Choose", "ways", "natural", "means", "way", "live", "work", "world", "creating", "collective", "social", "economic", "practical", "artistic", "spiritual", "tremendous", "gave", "shared", "inconceivably", "conceivable", "entirely", "engaged","connected", "responding", "unpredictably", "opposed", "interactive", "incapable", "learn", "works", "give"];
37+
var impWords4 = ["move", "highly", "simple", "former", "latter", "real", "get", "many", "growth", "went", "markedly", "different", "more", "mere", "comes", "come", "take", "increasingly", "important", "explicit", "matters", "together"];
38+
var impWords5 = ["not", " just", "into", "must", "but", "ahead,", "will", "really", "gain", "could", "last", "make", "while", "out", "before", "like", "Unlike", "even", "also", "as", " such", "After", "pass", "now"];
39+
var impWords6 = ["rake", "pen", "jackhammer", "words", "people", "call", "role"];
40+
var impWords7 = ["When", "we", "how", "them", "you", "be", "it", "are", "what", "They", "themselves", "with", "itself", "our", "will", "both", "without", "why", "We", "they"];
41+
var impWords8 = ["to", "And", "In", "an", "or", "It´s", "the", "and", "For", "than", "a", "This", "is", "it", "its", "of", "on", "it's", "itself.", "in", "That's", "that,", "them.", "themselves", "that", "That´s", "this", "The", "for", "to", "so"];
42+
43+
var story = b.doc().stories[0]; // first story in document
44+
45+
var words = b.words( story );
46+
47+
b.layer("generated");
48+
49+
for( var i = 0; i < words.length; i++ ) {
50+
51+
if(!words[i].isValid) {
52+
b.warning("ungültiges Wort, vermutlich ausserhalb der TextFrames!");
53+
return;
54+
}
55+
56+
var tf = words[i].parentTextFrames[0];
57+
b.page(tf);
58+
59+
var bounds = b.bounds(words[i]);
60+
var newTf = b.text(words[i].contents, bounds.left, bounds.top, bounds.width + 3, bounds.height);
61+
62+
try{
63+
lookUpWord(words[i], newTf, impWords1, "imp1");
64+
lookUpWord(words[i], newTf, impWords2, "imp2");
65+
lookUpWord(words[i], newTf, impWords3, "imp3");
66+
lookUpWord(words[i], newTf, impWords4, "imp4");
67+
lookUpWord(words[i], newTf, impWords5, "imp5");
68+
lookUpWord(words[i], newTf, impWords6, "imp6");
69+
lookUpWord(words[i], newTf, impWords7, "imp7");
70+
lookUpWord(words[i], newTf, impWords8, "imp8");
71+
} catch(exception) {
72+
continue; // gehe zum nächsten wort
73+
}
74+
75+
}
76+
77+
78+
function lookUpWord(word, newTf, stringArray, objStyleName){
79+
80+
for( var q = 0; q < stringArray.length; q++ ) {
81+
82+
if( stringArray[q] === word.contents ){
83+
b.println(objStyleName);
84+
var style = b.doc().objectStyles.itemByName(objStyleName);
85+
newTf.applyObjectStyle(style);
86+
throw new Exception();
87+
}
88+
}
89+
90+
}
91+
92+
}
93+
94+
95+
b.go();
96+
97+
{%- endhighlight -%}
Binary file not shown.
Loading
Loading
Loading
+93
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
---
2+
authors:
3+
- name: Jessica Campbell
4+
url: null
5+
- name: Riem Ibrahim
6+
url: null
7+
8+
layout: gallery-item
9+
title: "Alphabet Bars"
10+
description: Our designs visualize the text, Program or Be Programmed by Douglas Rushkoff, alphabetically with rectangles of varying length. The length of each rectangle or bar is determined by the amount of times a letter or character appears on the page. Our goal was to use JavaScript to deconstruct the meaning of text completely, and reorganize and restructure the way it is read.
11+
12+
---
13+
14+
![](./images/alpha1-246x350.jpg)
15+
16+
We used the alphabet as an organizing principle of this deconstruction to conserve some level of readability. There are two codes. One draws horizontal alphabet bars, the other draws vertical alphabet bars.
17+
18+
The images on this page represent three pages of Douglas Rushkoff’s book.
19+
20+
![](./images/alpha2-246x350.jpg)
21+
22+
![](./images/alpha3-246x350.jpg)
23+
24+
### Source
25+
26+
27+
[Download Source](./downloads/alphabet_bars.zip)
28+
29+
{%- highlight javascript -%}
30+
#includepath "~/Documents/;%USERPROFILE%Documents";
31+
#include "basiljs/bundle/basil.js";
32+
33+
function draw() {
34+
35+
b.canvasMode(b.MARGIN);
36+
37+
var hash = new HashList();
38+
var preString = b.selections()[0];
39+
var longString = preString.contents;
40+
41+
var tf1 = b.text( longString, 0,0,b.width,200 );
42+
var words = b.characters(tf1);
43+
44+
var str;
45+
for( var i = 0; i < words.length; i++){
46+
str = words[i].contents;
47+
switch(str.toString()){
48+
case "SINGLE_RIGHT_QUOTE":
49+
str="'";
50+
break;
51+
case "EM_DASH":
52+
str="-";
53+
break;
54+
case "DOUBLE_LEFT_QUOTE":
55+
str='"';
56+
break;
57+
case "DOUBLE_RIGHT_QUOTE":
58+
str='"';
59+
break;
60+
}
61+
62+
str = b.trimWord(str);
63+
str = str.toLowerCase();
64+
if(hash.hasKey(str) ){
65+
hash.set(str, hash.get(str) + 1);
66+
} else {
67+
hash.set( str, 1 );
68+
}
69+
}
70+
71+
tf1.remove();
72+
preString.remove();
73+
var keys = hash.getSortedKeys();
74+
var valueKeys = hash.getKeysByValues();
75+
76+
for(var i = 0; i < hash.length; i++) {
77+
b.println(hash.get( keys[i] ));
78+
79+
b.text(keys[i], 0, b.height/hash.length*i, 20, b.width/30);
80+
81+
b.textAlign(Justification.CENTER_ALIGN);
82+
b.textFont("American Typewriter","Light");
83+
b.textSize(9);
84+
85+
var bars = b.map(hash.get( keys[i] ),1,hash.get( valueKeys[0] ), 10, b.width-30);
86+
87+
b.rect(20, b.height/hash.length*i, bars, b.width/35);
88+
}
89+
90+
}
91+
92+
b.go();
93+
{%- endhighlight -%}
Loading
Loading
Loading
Loading
+75
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
---
2+
authors:
3+
- name: Kate Marie Koyama
4+
url: null
5+
- name: Kyulee Kim
6+
url: null
7+
- name: Fatima Montiel
8+
url: null
9+
10+
layout: gallery-item
11+
title: "Breaking the Grid"
12+
description: Our goal was to relate our experiments to the given text (Program or Be Programmed by Douglas Rushkoff), for example, when you take a program as it is you find yourself in a grid with certain limitations; however when you learn to control the program you allow yourself to stray from the grid, break free from it.
13+
---
14+
15+
16+
17+
![](http://basiljs.ch/wp-content/uploads/2013/03/Sudoku_MainImage.jpg)
18+
19+
After analyzing the text “Program or Be Programmed”—by Douglas Rushkoff—we developed a series of experiments using a grid as our basis. With the use of Javascript, we divided the area within the margins of the page into 750 equally sized and distributed rectangles. Then, we highlighted a portion of the text and placed the individual letters in the boxes. Each time the characters exceeded the number of boxes in the page, a new rule would apply. The rules varied from position on the page, size, baseline and addition of elements such as bars.
20+
21+
![](http://basiljs.ch/wp-content/uploads/2013/03/Explorations-246x350.jpg)
22+
23+
![](http://basiljs.ch/wp-content/uploads/2013/03/Explorations-copy-21-246x350.jpg)
24+
25+
![](http://basiljs.ch/wp-content/uploads/2013/03/Explorations-copy-3-246x350.jpg)
26+
27+
### Source
28+
29+
{%- highlight javascript -%}
30+
#includepath "~/Documents/;%USERPROFILE%Documents";
31+
#include "basiljs/bundle/basil.js";
32+
33+
var myBoxes = new Array();
34+
var myCounter = 0;
35+
36+
function draw() {
37+
b.canvasMode(b.MARGIN);
38+
b.noStroke();
39+
buildBoxes();
40+
41+
var selItems = b.selections();
42+
b.characters(selItems[0], function(ch, n){
43+
if(n > myCounter){
44+
b.addPage(b.AFTER);
45+
buildBoxes();
46+
}
47+
if(n > 750 && n<1500){
48+
b.typo(tf, "baselineShift", b.random(50,-100));
49+
}
50+
if(n > 1500){
51+
b.typo(tf, "pointSize", 7);
52+
b.typo(tf, "underline", true);
53+
b.typo(tf, "underlineWeight", b.random(.25, 10));
54+
}
55+
tf = myBoxes[n];
56+
b.typo(tf, "contents", ch.contents);
57+
b.typo(tf, "capitalization", Capitalization.ALL_CAPS );
58+
b.typo(tf, "pointSize", b.random(2,9));
59+
});
60+
}
61+
62+
function buildBoxes(){
63+
for (var j = 0; j < b.height-1; j+=b.height/30){
64+
for (var i= 0; i < b.width-1; i+=b.width/25){
65+
b.textAlign(Justification.CENTER_ALIGN, VerticalJustification.CENTER_ALIGN);
66+
b.stroke("preto");
67+
b.strokeWeight(.25);
68+
myBoxes[myCounter] = b.text(" ",i, j ,b.width/25, b.height/30);
69+
myCounter++;
70+
}
71+
}
72+
}
73+
74+
b.go();
75+
{%- endhighlight -%}
Loading
Loading
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
---
2+
authors:
3+
- name: Bettina Schneebeli
4+
url: null
5+
layout: gallery-item
6+
title: Ending the Depression through Amazon
7+
description: A text – image correlation between an article by Bernhard London from 1932 and according product pictures from amazon.com.
8+
---
9+
10+
11+
<iframe src="http://player.vimeo.com/video/57749978?portrait=0" width="600" height="337" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>
12+
13+
This book results from delving into the topics of data and consumption and from the exploration of basil.js. The text of Bernhard London from the year 1932 proposes the solution of the economic crisis at that time through the introduction of a law that would force the citizens to hand in their products for destruction after a certain amount of time. The visual correlation of the text’s words with product images from Amazon results in a dialogue between the essay from the thirties with an economic system typical for today – the online shop. The flood of goods that is proposed by the author is therefore visible as a flood of product images and the imagined system is set into a relationship with today’s intensity of consumption and the currently often short lifetime of products. Through the way of the images being defined by the text, they form a seemingly random accumulation of goods. Those hereby suffer from a loss in value. This is depicting a change of attitude towards products, that would be a precondition for the system demanded by London.
14+
15+
![](./images/schneebeli2_1.jpg)
16+
17+
![](./images/schneebeli1-524x350.jpg)
Loading
Loading
Loading
Loading
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
---
2+
authors:
3+
- name: Simon Ziffermeyer
4+
url: http://simon-ziffermayer.ch/
5+
layout: gallery-item
6+
title: Flow of Goods / Data Stream
7+
description: Twelve per cent of all imported goods in Switzerland are coming through the seaport of Basel. The piece «flow of goods / data stream» gives an overview over all goods and streams in the year of 2012.
8+
---
9+
10+
11+
[Simon Ziffermeyer](http://simon-ziffermayer.ch)
12+
13+
Twelve per cent of all imported goods in Switzerland are coming through the seaport of Basel. The piece «flow of goods / data stream» gives an overview over all goods and streams in the year of 2012.
14+
15+
[http://simon-ziffermayer.ch/bachelor-thesis-3/](http://simon-ziffermayer.ch/bachelor-thesis-3/)
16+
17+
![](./images/ZEM8253_b1-e1395762362440.jpg)
18+
19+
Many resources that we use are coming through the ports of Basel. Therefore year per year resources with a total weight of about seven million tons passed the Swiss Rheinports. Especially for the import this harbor takes an essential role. Between ten and 12 per cent of all imported goods reach Switzerland by water.
20+
21+
For the starting position I have used a document in which all involved countries were listed. Each product and its weight is listed and ordered according to its country of origin. The goal of the project is to give an overview of the whole import and export situation in contrast to complex data sets. The visualization allows the viewers to see the intensity and quantity at a glance. This way of representation also allows for a comparative analysis of the origins of the continents where the goods come from or where the final destinations are.
22+
23+
By applying a script the data is made representable as forms. The size of the forms visualizes the weight. Each shape is representing a product such as green shapes for organic products as example.
24+
25+
![](./images/ZEM8212_b1-552x800.jpg)
26+
27+
![](./images/ZEM8287_b1-600x399.jpg)
28+
29+
![](./images/ZEM8301_b1-600x399.jpg)
Binary file not shown.
Loading
Loading
Loading

0 commit comments

Comments
 (0)