A Little Bit of Stable Diffusion

I’ve been looking into the infinite canvas as a design element. Applications like Figma, Excalidraw and Miro have perfected its implementation. Since most of my experiments use art as the subject, my most recent builds on a previous experiment – Artist Search Widget. Built using the Google Knowledge Graph Search API, it takes advantage of one of its key features, predictively completes elements in a search box.

For now, I’ve just set up the basic user interface and implemented a simple (albeit buggy) drag and drop feature.

Avocado, No Toast

Four years ago, I had the honor of running a hands on workshop at the second annual Afrotectopia Conference, held over a jam-packed summer weekend in August at Google NYC. The workshop was called, Intro to WebVR with A-Frame. WebVR was a JavaScript API that allows VR experiences to run in a web browser on VR headsets, mobile phones and tablets, and regular computers. It has since been deprecated and replaced by the WebXR Device API. At the time, I chose to teach the workshop participants A-Frame for a couple reasons:

  1. Accessibility (cost and open source ecosystem)

  2. Easy to share and publish content

A-Frame is an abstraction of three.js, another JavaScript library that uses WebGL API to render 3D graphics in the browser. Simply put, it is an HTML webpage that includes the A-Frame library, making it super simple for a newbie to get started.

Intro to WebVR with A-Frame (August 2019)

Participants worked on a live coding project where they learned the basics:

  1. Create a simple virtual reality website (using HTML)

  2. Learn the basics of the A-Frame library

  3. Work with primitive shapes like cubes and spheres (which they later swapped out for 3D assets)

Why Learn (and Teach) VR?

As a former architect,  urban planner and now product-minded  technologist I found myself uniquely poised to harness my spatial design and thinking skills. At the time, I was teaching a software engineering immersive course and my focus was squarely on the browser. Building and teaching others how to build this simple game was my initial foray into leveraging my body’s physical inputs — head and eyes — to interact with the computer.

How Can I Build Avocado, No Toast?

To learn how to set up a boilerplate WebVR project using the A-Frame library, check out the step-by-step instructions here.

Writing Commit Messages

I’ve recently started working at a startup company in New York City (read: four days) and as a new Software Engineer to the team, I’ve been thinking about the good practices I want to put in place for myself and the engineers who start after me — to make their on-boarding process easier. Today, I had to commit a few minor changes I’d made along with the assistance of my Tech Lead, to the product I’m going to be working on over the coming months.

In the past, I’ve written commit messages using what I thought was a standard format:

$ git add .
$ git commit -m "initial commit"
$ git push origin <branch name>

On one of the many on-site job interviews over the past two months, I learned about a different method of committing code. First, commit each file individually, then:

$ git add app.js
$ git commit

That’s it! This command opens up vim editor where you write your commit message. If you’re not used to vim, this part might be a bit tricky but just follow me :-)

  1. Press the letter i to enter insert mode

  2. Start typing the title of your commit message

  3. Once completed, hit ESC

  4. Finally, press :wq to save the file and exit the editor

When writing a commit message, convention is to summarize the entire commit on the first line in less than 50 characters, leave a blank line, then a detailed explanation of what’s been changed.

Another Amazing Creative Coding Festival

Last year, I attended my first Creative Coding Festival at NYU ITP and vowed to become a repeat attender. So, when the call came out for workshop presenters a few weeks ago, I jumped at the chance to give a talk on WebVR with A-Frame (an easy to use and open source virtual reality web framework). The code cane be found here.

IMG_0403.JPG

Creative Coding Festival NYC

The workshop focused on setting up a basic interaction for a simple WebVR game application.

Talking Heads

Janelle Monae's 'What's Your Frequency?' at 29Rooms vs. Lynn Hershman Leeson's “Mirror Face Woman,” 1966

lynn-hershman-leeson-seduction-03.jpg
lynn-hershman-leeson-seduction-02.png

The Eyes Have It

The other night I was watching an old Alfred Hitchcock movie called Spellbound starring Ingrid Bergman and Gregory Peck. The movie interested me because some of the set design was a collaboration between Salvador Dali and Hitchcock himself.

This particular "dream sequence" in Spellbound (see image 1) reminded me of the production designs of Josef Svoboda, the Czech artist and scenic designer, for Laterna Magika (see image 2).

Shortly after becoming familiar with the works of Svoboda, I came across this instagram post from a concert goer for Katy Perry's Witness Tour concert. I'm still figuring out who designed it, maybe Es Devlin.

spellbound-dali-04.jpg
svoboda-laterna-magika-01.jpg
katy-perry-witness-tour.jpeg