News

Visual Studio Live! Keynote: Go with the Creative Flow

Unlocking creativity in developers is a matter of getting into a creative flow and having tools to support that.

Developers are all creators. It takes a tremendous amount of creativity to write code and develop applications. So developers need strategies for maintaining the creative flow and tools to help with this process. "In this ever changing and evolving world of technology, we have to be innovating to stay ahead," says Kasey Uhlenhuth as she began her Wednesday morning keynote address. Uhlenhuth is the program manager for the .NET Managed Languages at Microsoft.

Uhlenhuth proved she knew her audience; starting off by wishing everyone in the audience a Happy Pi Day, as it was March 14. She also revealed she had memorized the first hundred digits of Pi. After that creative entry into a talk about creativity, she explains her belief that everyone has capacity to be creative. "You have to be in right setting and the right environment and have the right tools," she says. "Dev tooling can help us be more creative and innovative."

The first thing she discussed is what's called creative flow, or how creative people feel when they are in the zone. She posed several questions she planned to address. "Where does [creative flow] come from? What are the impediments to our creative flow and how we can overcome those impediments with dev tooling? Dev tools can democratize creativity for everyone."

 Microsoft's Kasey Uhlenhuth at the Visual Studio Live! Keynote in Las Vegas
[Click on image for larger view.] Microsoft's Kasey Uhlenhuth at the Visual Studio Live! Keynote in Las Vegas

She moved on to her definition of creativity and the creative process. "Creativity is the use of original ideas in production of our work," she says. "That's all great and dandy, but how to you be creative?" She pointed to extensive research that has identified how and when humans are most inclined to be creative.

"A lot of it boils down to creative flow," she says. "You sit down to solve a problem and it feels like 15 minutes. You look at the clock and five hours have gone by. So how can we help developers get into that flow and be productive?"

Some of the research she referenced described chemical reactions in the brain when one is in that creative state. "Your brain is changing when you're in a state of creative flow," she says. "It makes you more confident. It also helps you make connections faster and make correlations you weren't able to make before so there's actual science behind the flow and how you can get there."

Uhlenhuth moved on to the impediments to creativity and how to circumvent those. "So what are the impediments? What prevents us from being creative?" There are four factors, she says:

  • Distraction
  • Complexity
  • Friction
  • Division

"Distraction prevents you from getting into your creative flow," she says. "If you really want to be creative, you need long, uninterrupted periods of time." Unfortunately, in this age of mobile phones and social media, distractions are commonplace. As it turns out, they can also be costly.

Ulenhuth cites a study on the cost of distraction in workplace that outlines the potential damage it can cause. "While 82 percent of work interrupted is resumed that same day. That's the good news. However, it takes 23 minutes to get back to the context of the original work, and you're actually working with higher stress and frustration."

So how to dev tools help avoid distractions? "An IDE puts all the stuff you need into one area so you don't get distracted by the outside stuff," she says.

Complexity is another inhibitor to creativity and higher level mental functions like pattern recognition and lateral thinking. "Complexity hinders your ability to recognize patterns," she says. Dev tools can help overcome complexity by letting you work at higher level of abstraction. "You can problem solve the way your brain naturally does."

The next impediment is friction, which she says refers more to taking risks. "Imagine trying to learn guitar when you can't make a mistake. That's impossible," she says. "And that's what is great about being in the flow. You lose all self-doubts you have. You can be innovative. And that's why mental risk-taking is important." Dev tools help in this regard by providing more feedback within the typical cycle of writing code, editing, debugging and code analysis.

The last impediment is division. "What I mean is the opposite of collaboration," she says. "Division hinders your ability to think laterally." She then moved into a demo of VS Live Share to show how developers can work together from any location.

These types of dev tools democratize creativity, says Ulenhuth. "It makes it easy to reach for anyone. It helps us level the playing field. And that's what gets me jazzed every day."

The next Visual Studio Live! events are Visual Studio Live! Austin from April 30-May 4 and Visual Studio Live! Boston from June 10-14.

About the Author

Lafe Low is the editorial liaison for ECG Events.

comments powered by Disqus

Featured

  • Compare New GitHub Copilot Free Plan for Visual Studio/VS Code to Paid Plans

    The free plan restricts the number of completions, chat requests and access to AI models, being suitable for occasional users and small projects.

  • Diving Deep into .NET MAUI

    Ever since someone figured out that fiddling bits results in source code, developers have sought one codebase for all types of apps on all platforms, with Microsoft's latest attempt to further that effort being .NET MAUI.

  • Copilot AI Boosts Abound in New VS Code v1.96

    Microsoft improved on its new "Copilot Edit" functionality in the latest release of Visual Studio Code, v1.96, its open-source based code editor that has become the most popular in the world according to many surveys.

  • AdaBoost Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the AdaBoost.R2 algorithm for regression problems (where the goal is to predict a single numeric value). The implementation follows the original source research paper closely, so you can use it as a guide for customization for specific scenarios.

  • Versioning and Documenting ASP.NET Core Services

    Building an API with ASP.NET Core is only half the job. If your API is going to live more than one release cycle, you're going to need to version it. If you have other people building clients for it, you're going to need to document it.

Subscribe on YouTube