Category: launch

Convert a PHP/MySQL site to Jamstack and host on Github Pages

One of the first items on my sabbatical to do list last year was to convert the Camp La Jolla Military Park website to a static Jamstack site hosted at Github Pages. This post documents that process.

I originally created the site as a research tool using PHP and a MySQL database for data entry, to record, organize, and ultimately publish research about the military history of UCSD. Moving the project to Github Pages would simplify maintenance and hosting costs, but was no small task. Technically it didn’t cost me extra to host, but the domain was $20/year, which adds up. Further, maintaining a PHP/MySQL website with a custom admin tool requires a bit of overhead for security and updates. Additionally, I wanted to continue having the benefit of using template engines or some way to include files (like PHP’s require()) to save time coding the site.

There are a plethora of tools available to publish a database-driven site on a static host. They mostly can be categorized as follows (ordered by most to least dynamic data sources):

  • Move the database to a remote service like Firebase, Atlas, et al. — ⚠️ Ultimately creates vendor lock-in, potential hidden costs, and probably more maintenance issues in the future.
  • Create a static version of the database by converting MySQL to flat files (JSON, CSV, etc.), which still allows for querying using one of various tools — 🤔 This method is interesting, because it still decouples the data from the presentation and allows for potentially more options later, including a remote database. I am already using this in various forms but worry again about maintenance, or issues with the client’s ability to manipulate the data as needed.
  • Generate a static version of the site, including all its pages which contain the data formerly dynamically inserted from MySQL. — 🤔 I like this concept, and have been using it to auto-publish my class lectures and tutorials using Markdown and Grunt with Marp. Plus, there are many site generators to choose from, which I explore below.
  • Scrape the site and save pages as static files. After all, everything is static once the HTML is rendered on the frontend. — ⚠️ While fast, this requires the site be built first and would make updates difficult.

Essential Concepts

Here I outline some concepts on rendering. See SSR vs CSR vs ISR vs SSG for a more in-depth look:

  • Client-Side Rendering (CSR) (e.g. Single-Page Application (SPA)) – JS renders pages in client’s browser with empty HTML files + raw data from the server. (e.g. React, Vue, Angular)
  • Server-Side Rendering (SSR) (e.g. Fullstack) – Generates pages on server with dynamic data before delivering to client. Improves SEO and loading, decreases server performance. (e.g. EJS, PHP, or Next.js)
  • Static Site Generation (SSG) (e.g. JAMStack) – Pre-renders all pages as static HTML during build process. Fast loading times, enhanced security, and dynamic content can still be achieved via “islands”.
  • Incremental Static Regeneration (ISR) – Combines SSR and SSG to pre-render static pages during build time while periodically regenerating specific pages with updated data.
  • Edge-Side Rendering (ESR) – Rendering process is pushed to the CDN’s edge servers which handles requests and generates HTML. Requires Nitro engine.

Requirements

Requirements for most of the projects I mention above.

  1. Javascript-based
  2. The data will be static, but editable using Git
  3. The data should be searchable using a tool like chosen
  4. The site design will be simple, but I should have creative control
  5. The site will be public, and be presented mostly using the same design as the original site
  6. HTML/CSS validation + Accessibility checks
  7. Convert from Google Maps to Leaflet
  8. Host the site on Github Pages

While planning the project I also wanted to select a method I could use for other potential static (or nearly static) sites like:

  1. A new site documenting the hundreds of examples and overlapping categories of Critical Web Design and internet art I’ve been collecting for an upcoming book. Update: I built it with SvelteKit
  2. Converting tallysavestheinternet.com to a static site (currently SSR) and unlinking the extension from the server to use local data only
  3. Moving away from WordPress more generally (and its security problems) and blogging with Markdown instead, starting with this blog (NO MORE TYPING IN A WEB FORM!!)

It’s nice to learn new tools. I already have some experiences with React, Next.js, and Vue.js, but wouldn’t say I’m confident in any. I found that publishing apps using React Native is very frustrating and unreliable, and my general distrust of Facebook makes me lean towards Vue. Still, I went in with an open attitude.

Tool Comparison

A breakdown of some tools I considered. Some of the icons are clickable…

FrameworkSPASSRSSGMDThemesSearchCons
Jekyll❌❌✅✅✅?❌ Ruby
Hugo❌❌✅✅✅?❌ Go
Astro✅✅✅✅✅✅React, Vue, Svelte in dynamic islands, simple routing
Vue.js✅✅✅✅✅?✅ vuepress
Nuxt.js✅✅✅✅✅?Built on Vue
SvelteKit✅✅✅✅✅✅MD rendering not native but supported via MDX
Next.js✅✅✅✅✅✅MD rendering not native but supported via MDX

Next

My experience with Next.js SSG was painful.

  • Constantly running into subtle changes in syntax across versions
  • Adding an image is ridiculously difficult.
  • Exporting the SSG ultimately created dead links, packaged up in Next code that was hard to understand.
  • So much automation to make a static site in the end you can’t do anything unless you have the exact right code, in the right version, in the right paths.
  • Error messages are rarely helpful or pinpoint the line number causing the issue in the stack.
  • I followed so many tutorials that ultimately ended in dead-ends, incorrect versions, or that completely didn’t work.

Astro

I ended up choosing Astro for the final project, which can be seen here https://omundy.github.io/camplajolla/. While they appear to have many similarities, I found Astro soooooo much easier than Next.js. It’s fairly simple to install, even using a starter theme, and it didn’t take long torip out tailwind to add bootstrap.

“Owen Mundy just ruined the Internet” and the last days for the kickstarter

It has been an intense couple weeks since my last post. It turns out the internet loves cats even more than data, maps, and politics. So here is an update on many things “cat”…

Update on the project

I Know Where Your Cat Lives has received an overwhelmingly positive response from international press. Besides photos of cats on a world map, there are charts, an FAQ and (now) links to press on the website.

I have to admit I specifically picked cat photos as an accessible medium with which to explore the privacy issue. Still, I was astounded at just how much the internet responded. It’s not only cats, the issue was important for discussion, and I appreciated that as well as the thoughtful responses from everyone. Even the puns.

The privacy implications of cat pictures (4:24) MSNBC Interview with Ronan Farrow

Meet The Guy Who’s Putting Your Cat On The Map — To Prove A Point (2:12) Interview with National Public Radio’s All Things Considered

NPR logo

“If you have posted a picture of your cat online, data analyst and artist Owen Mundy, and now, the rest of the world, knows where it lives. And, by that logic, he knows where you live, too. That should probably creep you out a little bit, and that’s really the point.”

“Owen Mundy just ruined the Internet” and the last days for the kickstarter

“Using cat pictures — that essential building block of the Internet — and a supercomputer, a Florida State University professor has built a site that shows the locations of the cats (at least at some point in time, given their nature) and, presumably, of their owners.”

“Owen Mundy just ruined the Internet” and the last days for the kickstarter

“Attention all 4.9 million users of the #Catstagram hashtag: You’re being watched.”

“Owen Mundy just ruined the Internet” and the last days for the kickstarter

“I recognize that a single serving site like this should be easy to quit, but I’ve been refreshing for hours and looking at all the different cats of the world. Near, far, wherever they are, these cats just go on and on and on.”

“Owen Mundy just ruined the Internet” and the last days for the kickstarter

“If I put up a “cat” photo on Instagram, I am not just sharing a cat photo on Instagram. I am offering up data about my, and my cat’s, location. “I Know Where Your Cat Lives” is, as a title, meant to be vaguely threatening.”

“Owen Mundy just ruined the Internet” and the last days for the kickstarter

“Owen Mundy just ruined the Internet. What were once innocuous photos of grumpy cats, tired cats, and fat cats, have now become adorable symbols of just how little privacy we have online.”

“Owen Mundy just ruined the Internet” and the last days for the kickstarter

Some charts

Because, charts.

Map of cats around the world

Cats of the world compared with cities of the world

Map of cats in Europe

Map of cats in Austria and Germany

Traffic and hosting

So far 19,169 cats have been removed from the map due to privacy settings on their photographs being increased. I think this is awesome. And, it is also the ironic part of this project in that its success is measured in increased privacy. Meaning, the more people who are convinced to manage their data better, the less cats I will be able to represent on the map!

Truthfully speaking, I don’t think I have to worry about running out of cats, since this is a small portion of the total one million. And, I figured out a clever way to show this progress as it unfolds:

“Owen Mundy just ruined the Internet” and the last days for the kickstarter

The bandwidth and computing resources consumed by this project have been crazy. Even with a very fast Amazon EC2 server (high I/O computing-intensive 4XL server with 16 virtual cpus and 30 GB RAM) I watched the CPU hover at 100% for the entire day of The New York Times article. And this is after I put many hours indexing the database columns and making the scripts efficient in other ways. All told my bill for “going viral” was $1,019.73 (the month of July 2014).

“Owen Mundy just ruined the Internet” and the last days for the kickstarter

I used a few different logging tools to monitor the status of the server. Here are some basic stats (from awstats installed on the server) from the three weeks since I launched the project. This is for the requests and bandwidth on the EC2 server only. It does not include the actual cat photos, only the website itself (html, css, json, php, etc):

  • 353,734 unique visits
  • 14,141,644 pages (total clicks on the site)
  • 16,786,127 requests (additional files)
  • 8846.24 GB bandwidth (again, only text files)

I also used CloudFlare CDN (thanks for the tip Tim Schwartz!) to cache the site files and cat photos and serve the data from various locations around the world. This helped with the speed and to decrease my costs. Since all requests are routed through their DNS I believe their stats are likely the most reliable. According to CloudFlare, they served:

  • 20,631,228 total requests (3,089,020 of which were served through CloudFlare’s cache)
  • 10.2 TB bandwidth!! (437.3 GB of this data (site files and cat photos were served by CloudFlare)

“Owen Mundy just ruined the Internet” and the last days for the kickstarter

The Kickstarter has <3 days left!

And great news, thanks to 123 backers, including a big push from the awesome folks at Ghostery and Domi Ventures, the Kickstarter will be funded! There’s still time however, to help contribute to the number of years I can keep the site live while getting fun rewards from the project like I Know Where Your Cat Lives themed beer koozies and plush fish-shaped catnip-laced cat toys, as well as a limited edition signed I Know Where Your Cat Lives archival ink jet print. The kickstarter closes on Sat, Aug 9 2014 11:49 AM EDT.

“Owen Mundy just ruined the Internet” and the last days for the kickstarter

Thanks again to everyone who supported the project. It’s been fun.

“Owen Mundy just ruined the Internet” and the last days for the kickstarter “Owen Mundy just ruined the Internet” and the last days for the kickstarter

I Know Where Your Cat Lives launched

I just launched a new ongoing project this week. Here’s the text, a video and some screenshots. I’ll post more about how I made it soon.

Welcome to the today’s internet—you can buy anything, every website is tracking your every move, and anywhere you look you find videos and images of cats. Currently, there are 15 million images tagged with the word “cat” on public image hosting sites, and daily thousands more are uploaded from unlimited positions on the globe.

“I Know Where Your Cat Lives” iknowwhereyourcatlives.com is a data experiment that visualizes a sample of 1 million public pics of cats on a world map, locating them by the latitude and longitude coordinates embedded in their metadata. The cats were accessed via publicly available APIs provided by popular photo sharing websites. The photos were then run through various clustering algorithms using a supercomputer at Florida State University in order to represent the enormity of the data source.

This project explores two uses of the internet: the sociable and humorous appreciation of domesticated felines, and the status quo of personal data usage by startups and international megacorps who are riding the wave of decreased privacy for all. This website doesn’t visualize all of the cats on the net, only the ones that allow you to track where their owners have been.

Folks can also contribute to a kickstarter to help with hosting costs.

I Know Where Your Cat Lives

I Know Where Your Cat Lives

I Know Where Your Cat Lives

I Know Where Your Cat Lives

I Know Where Your Cat Lives

I Know Where Your Cat Lives

I Know Where Your Cat Lives

Packet Switching, College of Journalism and Communications at the University of Florida

Joelle and I have completed our Packet Switching (Weimer Hall) commission in the College of Journalism and Communications at the University of Florida. Read about the process for this project here.

Packet Switching (Weimer Hall), detail

Packet Switching (Weimer Hall), (detail) College of Journalism and Communications, University of Florida, inkjet on polyester on panel, 177.5 ft. x 20.21 ft., 2012; Photograph by Steve Johnson / UF College of Journalism and Communications

Packet Switching (Weimer Hall), detail

Packet Switching (Weimer Hall), (detail) College of Journalism and Communications, University of Florida, inkjet on polyester on panel, 177.5 ft. x 20.21 ft., 2012; Photograph by Steve Johnson / UF College of Journalism and Communications

Packet Switching (Weimer Hall), detail

Packet Switching (Weimer Hall), (detail) College of Journalism and Communications, University of Florida, inkjet on polyester on panel, 177.5 ft. x 20.21 ft., 2012; Photograph by Steve Johnson / UF College of Journalism and Communications

Packet Switching (Weimer Hall), detail

Packet Switching (Weimer Hall), (detail) College of Journalism and Communications, University of Florida, inkjet on polyester on panel, 177.5 ft. x 20.21 ft., 2012; Photograph by Steve Johnson / UF College of Journalism and Communications

Packet Switching (Weimer Hall), detail

Packet Switching (Weimer Hall), (detail) College of Journalism and Communications, University of Florida, inkjet on polyester on panel, 177.5 ft. x 20.21 ft., 2012; Photograph by Steve Johnson / UF College of Journalism and Communications

Packet Switching (Weimer Hall), detail

Packet Switching (Weimer Hall), (detail) College of Journalism and Communications, University of Florida, inkjet on polyester on panel, 177.5 ft. x 20.21 ft., 2012; Photograph by Steve Johnson / UF College of Journalism and Communications

Packet Switching (Weimer Hall), detail

Packet Switching (Weimer Hall), (detail) College of Journalism and Communications, University of Florida, inkjet on polyester on panel, 177.5 ft. x 20.21 ft., 2012; Photograph by Steve Johnson / UF College of Journalism and Communications

Packet Switching (Weimer Hall), detail

Packet Switching (Weimer Hall), (detail) College of Journalism and Communications, University of Florida, inkjet on polyester on panel, 177.5 ft. x 20.21 ft., 2012; Photograph by Steve Johnson / UF College of Journalism and Communications

Packet Switching project: ColladaFragmenter software, Kassel, Germany and University of Florida Public Commission

3D model in Rhino

Joelle Dietrick and I embarked on a new body of work this summer called “Packet Switching.” Inspired by her Sherwin Series images and wall paintings, and my work deconstructing and re-visualizing source code and other data, we’ve created two new software projects, as well as a series of limited edition prints, large photo installations, wall-sized paintings, and animations.

3D model in Photoshop

The full statement explains our process and intent clearly:

Packet Switching is an ongoing body of work by Joelle Dietrick and Owen Mundy that visualizes architecture as fragments affected by economic and communications systems.

The title of the series references how contemporary communications systems break digital files into smaller manageable blocks of data called packets. Each packet is then sent through a network, taking the quickest route possible, and reassembled once they reach their destination. One JPG image, for example, might be broken into several packets, each of which may travel a different path through the net, even through different cities, before being recompiled into a copy of the original file.

To reference this common process used in networked systems, we wrote custom software that deconstructs a 3D model’s source code and produces unique fragments. We further remixed these fragments using an original application created in Processing. The resulting images become limited edition prints, large photo installations, wall-sized paintings, and animations.

Our process underscores how incidental fragmentation and automation can streamline markets, but also make them vulnerable to systems failure. The use of architecture specifically points to recent real estate market volatility and considers how communication technology-enabled pursuits of profit margins alters our most basic needs.

3D model in SketchUp

The first software, that “deconstructs a 3D model’s source code and produces unique fragments,” is open source and available on Github. Essentially, the PHP software, parses a 3D COLLADA file and exports a set number of geometries, that can then be further broken down and used in an artwork or design.

The second software, which we will release soon, remixes these fragments using Processing. The video below shows an example of the whole process.

Wall painting at “Temporary Home” in Kassel, Germany

While artists-in-residence at Temporary Home, in Kassel, Germany, which coincided with Documenta13, Joelle Dietrick and I completed a wall-sized temporary painting based on the architecture from the Bauhaus School at Dessau and 2012 American color forecasts.

Packet Switching, installed at Temporary Home, Kassel, Germany

Packet Switching, installed at Temporary Home, Kassel, Germany

Packet Switching, installed at Temporary Home, Kassel, Germany

Commission at Weimer Hall at the University of Florida

Joelle and I have also received a commission to complete Packet Switching (Weimer Hall) at the University of Florida College of Journalism and Communications this fall. This will be inkjet on adhesive polyester on a large wall (approx. 177.5 ft. x 20.2 ft.). More details soon.

PaletteVisualizer

I’ve been working on a lot of projects this summer using various color palettes. Since my work involves writing programs to use these palettes in different visual outcomes, I keep wishing for an easy way to view and negotiate the lists of colors. So today I wrote a simple app to visualize a list of hexadecimal values and sort them by hue, saturation, and value (HSV). The app can be used here, and the code is open under the MIT License.

PaletteVisualizer screenshot

Thanks to Alexei Kourbatov for the color format exchange functions.

Project Presentation and Mini-Seminar: Live Project Launch, Workshop Outcomes and Talks on [Social] Media Hacking

Project presentation at WORM

Tonight Tim Schwartz, Walter Langelaar, Birgit Bachler, and I share our new project. The concept has taken a turn from the original plan, but will be exciting nonetheless.

Project Presentation and Mini-Seminar: Live Project Launch, Workshop Outcomes and Talks on [Social] Media Hacking
Friday, July 27, 2012

Tonight we launch the new version of “Give Me My Data!”, a project that together with Artists In Residence Tim C. Schwartz and Owen Mundy was revised and revived in WORM’s moddr_lab.

Give Me My Data offers functionality to its users with which they can retrieve and backup data and files from several key social networks; partly designed as a backup tool moreover targeted at networks that completely lack these functions.

Besides launching the project and am in-depth presentation by the artists, Walter Langelaar of WORM will give an introduction and overview of similar (art)works and earlier projects that came out of WORMs studios like the “Web2.0 Suicide Machine”.

Further more we’ll have presentations of current and ongoing projects from the lab, like Birgit Bachler’s ‘online social gardening’ platform “Talk To The Plant”, the Force of Freedom (Roel Roscam Abbing and Micha Prinsen) present “partsba.se”, and Geert Lovink talks about the “Unlike Us” initiative. The last addition to tonights programme is a presentation by Greenhost.nl on their very excellent RePress project; a WordPress plugin that automagically converts your site to a proxy-server countering censorship on the internet!

In conclusion there will be an open Q&A and panel discussion moderated by Florian Cramer of Creating010.

Projects & Speakers

Florian Cramer – Creating010
Florian Cramer, is a reader and programme director at the applied research center Creating 010 at Hogeschool Rotterdam, The Netherlands. he is a critical writer on arts, culture and information technology. Recent publications include: Exe.cut(up)able statements: Poetische Kalküle und Phantasmen des selbstausführenden Texts, Wilhelm Fink, 201.

Unlike Us / Geert Lovink
The aim of Unlike Us is to establish a research network of artists, designers, scholars, activists and programmers who work on ‘alternatives in social media’. Through workshops, conferences, online dialogues and publications, Unlike Us intends to both analyze the economic and cultural aspects of dominant social media platforms and to propagate the further development and proliferation of alternative, decentralized social media software.

Tim C. Schwartz – moddr_/WORM Artist in Residence
Tim Schwartz grew up in St. Louis, MO. He received a BA in Physics from Wesleyan University and an MFA in Visual Arts from the University of California, San Diego. In January 2010, he developed a technology to help reunited missing people affected by the earthquake in Haiti and now co-runs an organization dealing with family reunification. Last year Schwartz spent four months traveling the country in a mobile research laboratory investigating what is lost as archives become digital.

Birgit Bachler – moddr_/WORM
Birgit is an Austrian artist living and working in Rotterdam/NL. She graduated as BA in Information Design / Media & Interactiondesign at the University of Applied Sciences in Graz/AT and is a recent graduate of the MA Networked Media at Piet Zwart Institute Rotterdam. She has a background in interactive, audiovisual media and programming. Her interests focus on the influence of new media on our everyday lives and the similarities and differences between human and computational behavior.

RePress / Greenhost.nl
“This plugin was made in response to the ongoing limitation of the Open Web. In the dawn of 2012 we found ourselves confronted with a court-ruling blocking the Piratebay.org in the Netherlands. On the other side of the ocean new laws are being discussed to curtail web-freedom even further.”

We zijn pioneer in groene hosting. We ontwikkelden een innovatief energiebesparend hostingplatform waardoor we 70% minder energie gebruiken dan andere hosters. Onze servers staat bij Evoswitch, het meest duurzame datacenter van Nederland.

Owen Mundy – moddr_/WORM Artist in Residence
Owen Mundy is an artist, designer, and programmer who investigates public space and its relationship to data. His artwork highlights inconspicuous trends and offers tools to make hackers out of everyday users. He has an MFA in Visual Art from the University of California, San Diego and is an Assistant Professor of Art at Florida State University.

partsba.se / Force Of Freedom
At partsba.se you can upload, share and download digital designs for real physical products. Partsba.se allows you to share designs of any nature, whether these designs are copyrighted or dangerous. Unlike other websites partsba.se does not claim any rights of your designs once you upload them.In the near future partsba.se will run on a fully secure and anonymous server.

We believe that users should be free to reverse engineer any everyday objects that surround them. Either to improve these objects, customize them, repair them or just to understand them.

The Force Of Freedom is a Rotterdam based collective founded by Micha Prinsen and Roel Roscam Abbing in 2009. Researching ways in which we can relate to things that happen on-line.

Kaarten
De volgende kaarten zijn beschikbaar:
Normaal Voorverkoop: € 5.00 Deurverkoop: € 5.00

Locatie
WORM
Boomgaardsstraat 71
3012 XA Rotterdam

Freedom for Our Files: Canvas starter (Facebook) app

I’m happy to share the code from a Facebook app I created for a workshop earlier this year.

This simple Facebook canvas application was originally demoed during the Freedom for Our Files workshop at the 2011 Art Meets Radical Openness festival in Linz, Austria. You can view and download the source code on github

The application is very simple; it creates a Facebook object, performs calls to get data belonging to the current user, then prints the data exactly as it is returned. It has examples of basic Facebook Graph API calls as well as an example of FQL (Facebook Query Language).

Freedom for Our Files: Canvas starter (Facebook) app

Drain Magazine – Power issue and new site

I am happy to announce the launch of the new website for Drain: Journal of Contemporary Art and Culture and the corresponding release of issue #11 POWER, which I co-organized with Avantika Bawa.

Drain Magazine Power issue

POWER, issue #11

This issue of Drain attempts to expose the cultural faciality of power, as well as manifestations of power as simulacra which obfuscate traditional inquiries into its construction. If power connects the virtual and the actual, how does cultural creativity channel or destabilize this connectivity? The corporate-academic-entertainment-military-industrial complex and its front-end, the global information machine floods us with images and images of images, to cause sensory overload, and yet, at the same time, acute sensory deprivation. Most of all, power entrenches a visual literacy that allows us to see only its style, leaving us unable to access other ways of seeing and becoming. How can we parody this visual literacy, and the speed, cadence and grammar of this power and its affects?

Drain Magazine Power issue, feature page


Necropolis by Roi Kuper

If the simulation of power is necessary and absolute, can creative acts and molecular politics slip through the surveillance and desensitizing of territorializing systems?

Drain Magazine Power issue, color palette


GWOTEM by J.M. Badoud

This issue of Drain presents artworks, essays, and other creative works to actualize answers to these questions and re-channel them into different connectivities, ways of becoming and conceptual production.

Drain Magazine Power issue, Tiralo page


The Gift of Giving by Oscar Perez

We are pleased to present Ian Buchanan and Roi Kuper as our feature writer and featured artist. This issue also includes essays by Emma Cocker and Chris Revelle, as well as interviews by Alexander Stewart with artist Andy Roache and Bertha Husband with Blazo Kovacevic. In our Creative Writing section, we present works by Camille Meyer, BT Shaw & Elizabeth Lopeman, Vanessa Norton, Emma Cocker and Morgan Campbell. Art projects works by Jamie Badoud, Diana Heise, Cyrico Lopes, Bob Paris and Oscar Perez.

Drain Magazine past issues page


Past issues

UFF-FSU.ORG

I recently completed a redesign of United Faculty of Florida – Florida State University (UFF-FSU) union website at uff-fsu.org with colleague, Phil Steinberg. This site runs on WordPress CMS with an altered Twenty Eleven theme. Here are some screenshots:

Picture 11

Picture 11

Give Me My Data upgrade: New API, authorization, and data formats

Picture 28

No one would be surprised to learn that almost all of the user-generated content websites use our personal data to sell advertisements. In fact 97% of Google’s revenue comes from advertising.[1] That’s why it’s important these sites provide as much access as possible to the real owners of our data‐us. After all, we put it there and allow them to use it in exchange for the use of their software. Seems like a fair trade if you ask me.

A year and a half ago Facebook didn’t provide any access. That’s why I created Give Me My Data, to help users reclaim and reuse their personal data they put on Facebook.

By giving more agency to users of online systems, Give Me My Data may have already impacted the nature of online application development. In November 2010, almost a year after I launched Give Me My Data, Facebook created their own service for users to export their profile from Facebook as a series of HTML pages. Unlike Give Me My Data, the Facebook service doesn’t allow you to select which data you want or to choose custom formats to export. It also doesn’t give you options for visualization like the custom network graphs that Give Me My Data offers.

I believe their motivation originates in part with my application, likely due to the popularity of Give Me My Data, and points to the potential usefulness of similar apps. While years down the road may reveal many other online systems giving users control over their data, I see this as a positive effect where the content we create, as well as the means to share and manage it, are democratized.

Meanwhile, the above also keeps me hard at work developing the Give Me My Data project. This week I rewrote the program to use Facebook’s new OAuth authorization, which also required rewriting all of the code that fetches the data. Previously it used the REST API which is being deprecated (sometime?) in the future. I also added new data types, fixed the CSV format (which had the rows and columns mixed-up), and added the possibility to export in the JSON data format.

Finally, in the data selector, I distinguished standard data and customized data types. When I say customized, I mean that I’ve written code that mashes together more than one data table and/or addresses a specific question. For example, right now users can select from two types of network graphs and corresponding formats. One describes the user’s relationship to their friends, and the other describes the user’s relationship to their friends, as well as all their friends’ relationships to each other in various graph description languages. This is how I made the network graph image below. I’m also interested in hearing other suggestions for custom queries I might add. The project will be open source on Github soon, so even code contributions will be welcome.

Anyway, please try out the new version. You may have to delete the app from your allowed applications and then re-authorize it if you’ve used it before. As usual, you can provide feedback on the application page, and you can also contact me on Twitter via @givememydata.

Facebook mutual friends network graph

[1] “Google Financial Tables for Quarter ending June 30, 2009” Retrieved October 13, 2010

Give Me My Data and exporting mutual friends

On the one-year anniversary of the beginning of Give Me My Data I’m very happy to announce that you can now export your friends and your mutual friends from facebook using two new formats. Both of the data formats are geared towards making graphs by displaying objects and their relationships. Needless to say, this is the most often requested feature since the official beta launch in April 2010. See below for more information

The DOT language

DOT is a plain text graph description language and can be rendered using a variety of layout applications like Graphviz or Tulip.

This example (saved as a plain text file with the .dot extension)

graph G
{
	a -- b -- c;
	b -- d;
}

Produces something like this

Mutual friends network exported as a DOT file

Python / Nodebox 1.0

NodeBox logo

The other file format is also for visualizing relationships. You can copy and paste the contents into a plain text file saved with a .py extension and open it in Nodebox, a Mac application that uses Python to create 2D visuals. Learn more about creating graphs in Nodebox.

Here’s an example file. My mutual friends exported from Facebook…

Facebook mutual friends network graph

Recent and ongoing projects

Howdy, it’s been awhile since I last shared news about recent and ongoing projects. Here goes.

You Never Close Your Eyes Anymore at AC Direct

1. You Never Close Your Eyes Anymore

You Never Close Your Eyes Anymore is an installation that projects moving US Geological Survey (USGS) satellite images using handmade kinetic projection devices.

Each device hangs from the ceiling and uses electronic components to rotate strips of satellite images on transparency in front of an LED light source. They are constructed with found materials like camera lenses and consumer by-products and mimic remote sensing devices, bomb sights, and cameras in Unmanned Aerial Vehicles.

The installation includes altered images from various forms of lens-based analysis on a micro and macro scale; land masses, ice sheets, and images of retinas, printed on reflective silver film.

On display now until July 31 at AC Institute 547 W. 27th St, 5th Floor
Hours: Wed., Fri. & Sat.: 1-6pm, Thurs.: 1-8pm

New video by Asa Gauen and images
http://owenmundy.com/site/close_your_eyes

2. Images and video documentation of You Never Close Your Eyes Anymore will also be included in an upcoming Routledge publication and website:

Reframing Photography: Theory and Practice
by Rebekah Modrak, Bill Anthes
ISBN: 978-0-415-77920-3
Publish Date: November 16th 2010
http://www.routledge.com/books/details/9780415779203/

Give Me My Data logo

3. Give Me My Data launch

Give Me My Data is a Facebook application designed to give users the ability to export their data out of Facebook for any purpose they see fit. This could include making artwork, archiving and deleting your account, or circumventing the interface Facebook provides. Data can be exported in CSV, XML, and other common formats. Give Me My Data is currently in public-beta.

Website
http://givememydata.com/

Facebook application
http://apps.facebook.com/give_me_my_data/

The New York Times logo

4. Give Me My Data was also covered recently by the New York Times, BBC, TechCrunch, and others:

Facebook App Brings Back Data by Riva Richmond, New York Times, May 1, 2010
http://gadgetwise.blogs.nytimes.com/2010/05/01/facebook-app-brings-back-data/

Picture 6

5. yourarthere.net launch

A major server and website upgrade to the yourarthere.net web-hosting co-op for artists and creatives. The new site allows members of the community to create profiles and post images, tags, biography, and events. In addition to the community aspect, yourarthere.net is still the best deal going for hosting your artist website.

Website
http://yourarthere.net

More images
http://owenmundy.com/site/design_yourarthere_net

Portrait from The Americans

6. The Americans

The Americans is currently on view at the Northwest Florida State College in Niceville, FL. It features a new work with the same title.

More images
http://owenmundy.com/site/the-americans

Oblique view of a schematic

7. Your Art Here billboard hanger

I recently designed a new billboard hanging device and installed it in downtown Bloomington, IN with the help of my brother Reed, and wife Joelle Dietrick.

Stay tuned here for news about Your Art Here and the new billboard by Joelle Dietrick.
http://www.facebook.com/pages/Your-Art-Here/112561318756736

Sitemap of lockheedmartin.com, drawn in red

8. Finally, moving to Berlin for a year on a DAAD fellowship to work on some ongoing projects, including Automata.

More images
https://owenmundy.com/blog/2010/07/new-automata-sitemaps/

I’ll be giving a paper about Automata at the upcoming ISEA2010 conference in Ruhr, Germany.
http://www.isea2010ruhr.org/conference/tuesday-24-august-2010-dortmund

Many thanks to Chris Csikszentmihályi, Director of the Center for Future Civic Media http://civic.mit.edu/ , for inviting me to the MIT Media Lab last August to discuss the project with his Computing Culture Group: http://compcult.wordpress.com/

New yourarthere.net website is live

After 4 months the new yourarthere.net website and member-run content management system is now live. Thanks to Braylin and Brittany Morales, Beth Lee, and Chris Cumbie for all their hard work.

The site is valid XHTML/CSS and runs on PHP/MySQL using the Codeigniter framework. All the details from our research from inception onward are archived here.

This site is based around the idea that members should have control of the content on the website. Every member has a profile where they can add images, text, tags, and events to promote their artwork or group. Members can create a new profile for every domain they host with yourarthere.nets.

Picture 6

Picture 8

Give Me My Data updates

Give Me My Data is a Facebook application that helps you reclaim and reuse your facebook data. It is currently in-development but starting to receive an amazing amount of traffic from Facebook users. Apparently the developers at Facebook made a change to the interface this week leaving many users unable to find or display specific information they had added to their pages. Give Me My Data helps users circumvent the problems they are having with the interface by giving them another way to access their data.

Due to the amount of questions I have received about the application I decided to launch a new website to share information about it here: givememydata.com

Give Me My Data website

Give Me My Data app


Facebook application interface

Map of Give Me My Data users


Visitors from this week (via statcounter)

The application profile page
Use the application