Exploration and Creative Coding

Sometimes I need a break from writing new code. I’ve found it’s important to take the time to find inspiration and learn new things.

Feeling inspired rekindles my desire to keep pushing and always look for the better solution. When work gets busy, sometimes this gets tough, but finding this mindset is important. When I’m inspired, I’ve noticed the positive impact it makes — on my co-workers, clients, family, and the quality of the work I produce.

In addition to the daily habits of reading blogs, following twitter, etc., here’s a snapshot of how our creative coding team has been keeping ourselves challenged and inspired.

Replicate the physical, in digital
Take something that already exists, and try to make it a new way. Inside Bluecadet: Paul was inspired by Breakfast’s Electromagnet dot display. He took his own spin on this, using a Leap Motion to control hand movements, and projecting the interactive on the wall as a fun experiment in the office.

541e1dd7757f63a326c1695e8037f06baf6958f4

Understand different programming languages
Sometimes more than one programming language can get the job done, and you have to select what is best for your project. There are great people contributing to a number of different frameworks, so get familiar with at least a few of them. This will expand your horizons so you can understand more tutorials, code snippets and forums. Inside Bluecadet: Have you heard of The Nature of Code, by Daniel Schiffman? If not, check it out. All of the samples are in Processing, and it’s fantastic. We’ve been reviewing some math strategies, translating the Processing samples to Cinder, and picking up great tricks.

Follow concepts to use later
Even if I don’t have an immediate use for a certain functionality, I like to know how things are made. Following new code means I can look for ways to incorporate these ideas in future projects. Inside Bluecadet: I’ve admired the work of Marcin Ignac for some time. Based on his blog post “Cindermedusae : Making Generative Creatures,” I tried my hand at creating my own moving creature. I began by copying code he’d already written, then morphing it and inevitably creating some patterns.

Learn how other people work
Play with other people’s samples until you break them. Then start over and do it again. You’ll learn a lot, I promise. Inside Bluecadet: We’re intrigued when we see different ways to use cameras to track people’s movements within a 3D space. Paul played with Cinder’s OpenCV samples, and got a face detection sample running. Starting with this as a jumping-off point would be a great option if we use this technology in future projects.

5a07826a96e7561f3aabeffce266b727a8cba45bContribute back
The coding communities surrounding Processing, openFrameworks and Cinder have very open and inclusive attitudes. By experimenting with the contributions of other developers, we’ve been able to quickly pick up on new techniques. As we continue to learn, we’re excited to contribute and participate in this cycle. Inside Bluecadet: We’ve been working internally on a touch system for touchscreen applications built with Cinder. This system manages incoming touches and distributes them to the application. We recently made it a Cinder block. Our first go of posting it can be found here:https://github.com/bluecadet/Cinder-Touch.

Inspire others
Find ways to help your teammates think bigger. Listen to what inspires the people around you. Ask them to think big and imagine new possibilities. As a creator, you can to try to turn their ideas into a working product. Inside Bluecadet: This is ongoing, but we love to send around interesting links, talk over coffee, and keep lists of things we’d love to create. These things reveal what excites those around you. Many times these small chats inspire new experiments.