Bits & Pieces: Glitch art | Ina Vare

HART art magazine column, Published September 14, 2022.

Bits & Pieces: .gif art | Cofveve by Lorna Mills

HART magazine column, published March 2022.

WAGMI: an awkward dance of art and crypto

WAGMI is a concise article for Belgian art magazine HART about collecting digital art in the NFT space. Published March 2022, in HART magazine #222.

Fun Facts. ~ column

Verschenen in H ART Magazine #176, december 2017 Leestijd: 2 minuten en 10 seconden. Woorden functioneren in kunstteksten al te vaak als ondoordringbare rookmachines. Het kan natuurlijk ook anders: er zijn prachtige … Lees Meer

Richter’s semantische kwestie. ~ column

In deze reeks ontrafelt Alexandra Crouwers het kunstjargon. Verschenen in H ART Magazine #175, november 2017 Voor de omslag van het doorwrochte naslagwerk ‘Gerhard Richter. Editions 1965 – 2013’ wordt een klein … Lees Meer

Bollen en sterren. ~ column

Alexandra Crouwers legt het kunstjargon onder de loep. Verschenen in H ART Magazine #174, oktober 2017 De nog nahijgende topsporter wordt door de interviewer gevraagd of hij het recordresultaat van de wedstrijd … Lees Meer

Met titel. ~ column

In deze reeks legt Alexandra Crouwers de relatie tussen tekst en beeldende kunst onder de loep. Verschenen in H ART Magazine #173, september 2017 In 1871 werd het schilderij ‘Arrangement in grey … Lees Meer

Kunstbot. ~ column

Alexandra Crouwers bespreekt het kunstjargon, internationaal beter bekend als ‘art speak’. Verschenen in H ART Magazine #172, augustus 2017 Computers en robots nemen steeds meer taken van ons over. Dat beperkt zich … Lees Meer

In dialoog met open deuren. ~ column

Verschenen in H ART Magazine #171, juni 2017 In deze reeks kijkt Alexandra Crouwers kritisch naar het kunstjargon. Eén van de meest gebruikte gemeenplaatsen in de beeldende kunsttaal is ‘het werk treedt … Lees Meer

Meubilaire slapstick. ~ column

Verschenen in H ART Magazine #170, mei 2017 Alexandra Crouwers legt het kunstjargon onder de loep. Naast krantenartikelen, romans, gebruiksaanwijzingen, nummerplaten, stripboeken en reclamefolders lees ik ook H ART, De Witte Raaf, … Lees Meer

1 2
// script.js document.addEventListener("DOMContentLoaded", function() { // Check if the body has the specific page class if (document.body.classList.contains('page-id-400605')) { const container = document.getElementById("container"); // Function to create and position images function createImage(src) { const img = document.createElement("img"); img.src = src; img.classList.add("image"); // Set random width and rotation const randomWidth = Math.random() * (150 - 50) + 50; // Random width between 50px and 150px const randomRotation = Math.random() * 30 - 15; // Random rotation between -15deg and 15deg img.style.width = `${randomWidth}px`; img.style.transform = `rotate(${randomRotation}deg)`; // Random position within the container img.style.top = Math.random() * (container.clientHeight - randomWidth) + 'px'; img.style.left = Math.random() * (container.clientWidth - randomWidth) + 'px'; img.draggable = true; // Event listeners for dragging img.addEventListener("dragstart", function(e) { e.dataTransfer.setData("text/plain", null); // For Firefox compatibility img.style.transition = 'none'; // Disable transition during drag }); img.addEventListener("dragend", function() { img.style.transition = 'transform 0.1s'; // Re-enable transition after drag }); img.addEventListener("drag", function(e) { const x = e.clientX - container.getBoundingClientRect().left - randomWidth / 2; // Adjust for image width const y = e.clientY - container.getBoundingClientRect().top - randomWidth / 2; // Adjust for image height img.style.transform = `translate(${x}px, ${y}px) rotate(${randomRotation}deg)`; // Keep rotation }); container.appendChild(img); } // Load images from a specified folder const imageFolder = 'https://yourwebsite.com/path/to/your/images/'; // Update with your image folder path let i = 1; // Initialize the counter while (true) { // Infinite loop to keep trying to load images const imageUrl = `${imageFolder}image${i}.jpg`; // Adjust this to match your image naming convention const img = new Image(); img.src = imageUrl; // Check if the image exists before creating it img.onload = function() { createImage(imageUrl); }; img.onerror = function() { console.log(`Image ${imageUrl} does not exist. Stopping further attempts.`); break; // Stop loading more images if one doesn't exist }; i++; // Increment the counter } } });