Arts and Culture
More from Google
Add by RSS Feed
Get the Android app
Get the iOS app
Future of Coding
Future of Coding
The Future of Coding podcast features interviews with toolmakers, researchers, computational artists, educators, and engineers, all with compelling viewpoints on what the future of computing could be.
Jun 14, 2020
Jennifer Jacobs: Para & Dynamic Brushes
"Metaphors are important here." There's a small handful of people that I've been requested again and again to interview on the Future of Coding podcast. Jennifer Jacobs is one of those people. Her work on Dynamic Brushes in particular, and parametric drawing in general, occupies a major intersection between disciplines and provides insights that we can all apply to our own work. This interview touches on childhood education, programming tools for both non-programmers and expert programmers, tangible interfaces, wearable and embodied computation, aesthetics, the relationship between academia and industry, means of evaluating the efficacy of projects, geometric encodings of first-order logic, symbolic representations, whether Scratch could exist outside MIT, and more. Jennifer does a wonderful job articulating the nature her own work, but also the works of her collaborators, peers, and influences, so that we come away with a great understanding for the broader spaces in which her research fits. Jennifer is already am important figure in our Future of Coding field, and I am very excited to follow her career and see all the places the impacts of her work will be felt. You'll notice right away that Steve is sitting in the interviewer chair this time. This is the first of a handful of episodes that Steve recorded in 2019 but didn't release. I'm planning to edit and release them throughout 2020, so you'll hear a bit more of Steve yet. The transcript for this episode was sponsored by Repl.it. Show notes and the full transcript are available here: https://futureofcoding.org/episodes/48 See omnystudio.com/listener for privacy information.
1 hr 53 min
May 12, 2020
Max/MSP & Pure Data: Miller Puckette
Miller Puckette created "The Patcher" Max (the precursor to Max/MSP), and later Pure Data, two of the most important tools in the history of visual programming and computer music. Max was designed by Miller in the mid-1980s as an aid to computer-music composers who wanted to build their own dynamic systems without needing write C code. Max had no facility for sound generation at first, but that would come eventually with the addition of MSP. A decade later, after some academic politics nonsense forced him away from Max, Miller went on to create its successor, the open source Pure Data. Both Max/MSP and Pure Data have become wildly popular, with Max/MSP as a more polished-looking commercial product developed by Cycling '74 (now owned by music behemoth Ableton), and Pure Data as the thriving independent community project of hackers and techno-punks. Node-and-wire visual programming languages are almost a cliche at this point, as the vast majority of them either borrow heavily or at least reference the visual design of Miller Puckette's original Max patcher and its MSP/Pd offspring. Though as you'll hear in the interview, many of them are poorer for not rethinking some of the underling assumptions of their inspiration. I decided to bring Miller on the show after hearing a fabulous interview of him by Darwin Grosse on the Art + Music + Technology podcast. (Tip: subscribe, it's good.) Miller gave a great retelling of the history of Max and Pure Data and the forces at play when he created them, and that episode is a tidy complement the more design-focussed interview here on our show. Miller mentioned in passing that one of the three books he has yet to write would be his thoughts on realtime scheduling, so that was the initial hook for my interview. Looking back on the 30+ years of Max/Pd history, what has he learned about the design of tools? What were the alternative ideas that he didn't pursue? Where is there room for improvement, perhaps by others picking up where he left off? In this interview, Miller said a handful of things that were, well, painful for me to hear as a dogmatic champion of visual programming. So if you come into this thinking it'll be a well-earned hour of congratulation and adoration, sit up and get ready to flip the dang table. This interview was a blast; on a personal level, I was thrilled to have the chance to talk to such an influential figure in the history of my field, and I hope you enjoy it as much as I did. Quote of the Show: "It's not only powerful, but it's also inadequate." The transcript for this episode was sponsored by Repl.it. For the full transcript and links go to https://futureofcoding.org/episodes/047 See omnystudio.com/listener for privacy information.
1 hr 10 min
Apr 25, 2020
2020 Community Survey
This was originally meant to be a little mini-episode halfway through March, with the next full episode coming at the start of April. Would you believe me if I told you that some things happened in the world that caused me to change my plans? Shocker, I know. Well, it's finally here. In today's episode, I'll reflect and commentate on the results of the first ever Future of Coding Community Survey. The show notes for this episode are full of graphs of the survey results, so be sure to take a look at that too. As ever, thanks to Repl.it for sponsoring those show notes. See omnystudio.com/listener for privacy information.
1 hr 4 min
Mar 1, 2020
Orca: Devine Lu Linvega
Orca is a visual programming environment for making music. Except it's not graphical, it's just text arranged in a grid. Except it doesn't actually make music, it just silently emits digital events across time. When you first see it, it's utterly alien. When you start to learn how it works and why, the logic of it all snaps into place, and it becomes a thrilling case study for authors of live programming environments and interactive media tools. Devine Lu Linvega, Orca's creator, struck a wonderful balance between flashy style and significant utility. Orca is typically encountered as an inky black and seafoam green alphabet soup, pulsating to some species of broody electronic industrial throb. But it is also a forgiving learning environment that doesn't crash, puts code and data together in the same space, lets you directly manipulate code and data interchangeably, allows generous recovery from mistakes, and supports discovery through freeform play. I invited Devine to come on the show specifically to brain dump about the design process of Orca, how he started the project and built it up to what it is today. During our three-hour conversation we wound up talking a lot about all the other tools he's created, and you can hear that discussion on last month's episode. This time it's all Orca — inspirations, execution model, operators, interface, system design, ports & reimplementations, interactions with other tools, and the community. This episode contains many snippets of music, as examples of what you can make using Orca. All of it was created by Devine, and is available on his Youtube channel. If you like a particular piece and want to hear the full thing — and see exactly how Devine made it — they are all linked in the transcript at the point that they appear in the show. So just scroll and skim, or search the transcript for some phrase that neighbours the song you want to find. Quote of the show: "It's for children. The documentation fits in a tweet, basically." Links Devine Lu Linvega is our guest. He and his partner Rekka funnel their lives and creativity into Hundred Rabbits. Devine has created countless tools, but Orca is the focus of today's episode. He also appeared on the previous episode. Support them on Patreon, so they can keep making amazing things like Orca. At the dawn of time, Devine was inspired to make a game by misunderstanding an Autechre music video. I don't know which one he meant, but here's a classic. And, why not, here's my favourite song of theirs. Yes, that's one song. Put on some big headphones and play it loud while you read, debug, sleep, drive, trip, what have you. In the theme of creation through misunderstanding, Orca was inspired by a misunderstanding of Tidal. It's not mentioned in the episode, but I wanted to link to this Tidal remix (By Lil Data, aka FoC community member Jack Armitage) of a song by Charli XCX. This remix slaps, but... you can't really feel what the music is going to do based on the code, hey? Rami Ismail hosted a year long game jam, for which Devine and a friend created a little block-based puzzle game named Pico, which would eventually become Orca. Sam Aaron created the music coding tool Sonic Pi, which is included by default with Raspbian. It reminded Devine a little bit of Processing without the compile time, and seemed similar to Xcode's Playgrounds. Dwarf Fortress, ADOM (Ancient Domains of Mystery), and other Roguelike games are precursors to the 2D character grid of Orca. The code structures you create resemble the patterns in Game of Life. Learning how to read Orca code is like learning to read the code in The Matrix. Orca's traveling N E S W operators are likened to Rube Goldberg machines, rolling ball sculptures, and the Incredible Machine. Orca is a language that uses "bangs", a concept borrowed from Max/MSP and Pure Data. Devine also made a similar looking flow-based web framework called Riven. Generative music arguably went mainstream with In C by Terry Riley. Here is the definitive recording, and here is one of my favourite renditions. While you can make generative music with Max/MSP, or Ableton Live, Orca offers a much richer, easier approach. The Chrome version of Orca is easy to get up and running with no dependencies, thanks to web platform features like WebMIDI and WebAudio— much easier than tools like Tidal or Extempore, especially if you use Orca's companion synthesizer app Pilot. Orca is so simple that it's been ported to Lua and C. The C version runs nicely on the Norns, which is a little sound computer by Monome. Ivan recently listened to a fantastic interview with Miller Puckette (creator of Max and Pure Data), which sparked curiosity about realtime scheduling for live-coded music tools. Orca's Euclid operator U was inspired by the Euclidean Circles synth module. The community around Orca largely grew out of the "lines" community, a forum started by Monome. They make a lot of pieces you can use as part of a modular synthesizer rig — you know, one of those giant cabled monsters used by the likes of Tangerine Dream in the 70s. People still do that, and it's better than ever. It seems like all node-and-wire visual programming languages, like Origamiand Node-RED, are perpetuating certain conventions borrowed from modular synthesis without any awareness of that history and the limitations it imposes. This makes your humble host a touch grumpy. The THX deep note was an early example of the wild polyphony afforded by computer-synthesized audio, as opposed to the limited polyphony or even monophony of analog synthesizers. You can use Orca to control Unity, which is neat. You can use it to play QWOP, which is nuts. Speaking of QWOP, it's part of a whole genre of hard-to-control games like Surgeon Simulator, Octodad, I Am Bread. Devine has used Kdenlive and Blender to edit videos, since they're both really good (for an open source programs). Better than editing just with FFmpeg. Remember when Jack Rusher said "Orcal"? Yeah, good times. The transcript for this episode was sponsored by Repl.it. They're amazing, and seeing stories like this just melts my heart. Email email@example.com if you'd like to work on the future of coding and, hey, help kids discover the joy of computing. For the full transcript go to https://futureofcoding.org/episodes/045#full-transcript See omnystudio.com/listener for privacy information.
1 hr 34 min
Feb 3, 2020
Making Your Own Tools: Devine Lu Linvega
We live in a world that is gradually becoming more closed off, more controlled, more regional. Our relationship with technology is now primarily one of consumption, buying new hardware on a regular cycle, using software conceptualized to meet a market need and fulfill promises made to venture capitalists. It's common to hear people talk about both computing hardware and software as though they were appliances, not meant to be user-serviced, not meant to be modified. The tools we use are being designed for the 80% who live in a city, use grid electricity, want to keep up with the industry, and have an unacknowledged learned helplessness about the limitations of their tools. Devine Lu Linvega and his partner Rekka live on a sailboat. He makes art, music, software, and other cultural artifacts. When Photoshop's DRM required that he maintain a connection to the internet, he wrote his own creative suite. When his MacBook died in the middle of the ocean, he switched to Linux with hardware he could service. His electricity comes from solar panels, and every joule counts — so that's out with Chrome and Electron and in with Scheme, C, assembly, and maybe someday Forth. I wanted to interview Devine with a main focus on just one of the dozens of tools he's created over the past few years — Orca, a spatial programming environment for generating synchronized realtime events. It's ostensibly a tool for music, but has been applied to all sorts of other disciplines in wildly creative ways. Devine and I ended up talking for over three hours, and after editing out everything superfluous there was still too much matter for just one episode. So we're going to take this in two pieces. Today, you'll hear the bits of our conversation that covered everything other than Orca — Devine's philosophy, the stories of his other tools, the ways in which boat life have forced certain technology choices on him. On the next episode we'll have the rest — a deep dive into Orca, covering the thinking and story behind the design of the tool, the community that has picked it up and run with it in all sorts of wild directions, and lots of little nooks and crannies in the space around this fascinating project. My hope is that the topics discussed today will let you see from Devine's perspective, so that when we look at Orca in detail you can appreciate exactly why it is the way it is, and take away valuable lessons for your own projects. Given that his most recent explorations have been making art and programming tools that run on the NES, the best quote of the show has to be: "I never want to have a stronger computer than the one I have today." Links Devine Lu Linvega is our guest. He and his partner Rekka funnel their lives and creativity into Hundred Rabbits. Devine has created countless tools, but Orca, Ronin, Left, Dotgrid, the 1-bit drawing tool Noodle and it's 3D scene layout tool Poodle are particularly fascinating. His website is like a wiki, a time tracking tool, and an alternate universe. Devine released a series of beautiful illustrations for Inktober. Repl.it is our Sponsor. Email firstname.lastname@example.org if you'd like to work on the future of coding. Folks interested in energy-efficient spatial programming should watch this Strange Loop talk by Chuck Moore about the Forth programming language. Potentially similar projects include Inferno and ChrysaLisp. The resilient, living systems of Dave Ackley are also fascinating. The transcript for this episode was sponsored by Repl.it and can be found at https://futureofcoding.org/episodes/044#full-transcript See omnystudio.com/listener for privacy information.
Sep 25, 2019
Unveiling Dark: Ellen Chisa & Paul Biggar
2 hr 27 min
Aug 15, 2019
Blurring the Line Between User and Programmer: Lane Shackleton
"The world's been divided into people who can make software, and the people who use software all day, and basically we think that that paradigm is not a good one. It feels kind of broken," says Lane Shackleton, Head of Product at Coda, where they are building a new kind of document that blurs the line between users and programmers. A Coda document starts out looking like a familiar online document, a lot like Google Docs. There's a blinking cursor, you can bold and italicize text, add images, and collaboratively edit it alongside others. But a Coda table is much more powerful than a traditional table that you'd find in a typical word processor. Like a spreadsheet, the a Coda table allows you to create complex relationship between pieces of data via a formula language. Upon closer examination, the Coda table is more structured than spreadsheets and more closely resembles a friendly relational database, like Airtable. If you're familiar with Notion, another augmented document medium, this all may sound familiar. Coda differentiates itself in a few ways. For one, it allows users to build complex (but no-code) trigger-based workflows from within the tool, such as when a table is modified or a button is pressed. For another, Coda really sells itself as an app-builder, in that teams can use Coda documents on their phones as native mobile apps. For example, a bike shop can have its employees easily swipe and snap a photo of inventory directly into a Coda table simply by creating a photo column in that table. Coda takes care of converting that column into an interface that automatically pulls up the camera on mobile. Coda was inspired by the founders' experience at YouTube, where the company "ran on spreadsheets," but now they dream of building a medium that fundamentally changes how people see themselves, as creators instead of merely as consumers, and reshapes the way teams, communities, and even families collaborate and function. It's a big vision, and Coda has a long way to go. This episode was sponsored by Replit. The transcript can be found here: https://futureofcoding.org/episodes/041#transcript See omnystudio.com/listener for privacy information.
1 hr 41 min
Jul 26, 2019
The Aesthetics of Programming Tools: Jack Rusher
Ivan Reese guest hosts. I've been intimidated by Jack Rusher from the first blush. I mean, he's wearing a high-collared fur coat and black sunglasses in his Twitter pic, and his bio includes "Bell Labs Researcher". So when tasked with choosing a subject for my first interview, I immediately reached out to him, leaning in to my nervousness. His reply included the detail that he's "generally hostile to the form" of podcasting. Terrifying. When we talked, it was about Lisp — several flavours of Scheme and Racket, Common Lisp, Lisp machines, Black, Clojure, parens of all stripes. It was also about aesthetics, and graphic design, the relative ignorance of typical programming tools to the capability of the visual cortex, and how to better tap it. This podcast's streak of discussions about Coq, miniKanren, TLA+, and Alloy continues, with the addition of QuickCheck and the like. Jack presents his work on a literate editor for Clojure called Maria.cloud, an environment that makes a number of unusual and interesting choices both in the design and implementation, reaching for an ideal blend of features that afford both instant beginner enthusiasm and unrestricted expert use. We pay our respects to the phenomenal red carpet that video games roll out to new players, inviting them in to the model and mechanics of the game with an apparent ease and apt ability that should be the envy of programming toolsmiths like us. The show ends with Jack sharing an excellent collection of plugs, ranging from academic papers by the relatively obscure Stéphane Conversy, to the aesthetically-lush programming tools pouring out of Hundredrabbits's Devine Lu Linvega. I am no longer terrified of Jack's persona. Rather, I am now humbled by his towering expertise and the wildly varied accomplishments of his career, and it was a thrill to get to tour them in this interview. Best quote of the show: "A kind of grotesque capitulation to sameness." Damn, Jack! Links Jack Rusher is our esteemed guest. He is on Twitter, Instagram, and SoundCloud. Applied Science is his consultancy, and Maria.cloud is their beautifully designed literate Clojure editor. Ivan Reese hosts. He's on Twitter, works on educational media, is making a visual programming tool, and plays 100 instruments — badly. He started life with HyperCard and now loves Max/MSP. Repl.it is our Sponsor. Email email@example.com if you'd like to work on the future of coding. Complex Event Processing is a bit of technology Jack helped commercialize. ClojureVerse is where a discussion of Luna led to the Visual Programming Codex, based on the History of Lisp Parens by Shaun Lebron. QuickCheck, miniKanren, Datalog, Black Scheme, and Oleg Kiselyov are touched on. Out of the Tar Pit has its mandatory mention, and then Chez Scheme saves the day. I wanted to link to the Maru project but the author, Ian Piumata's website seems to be down and I could find no other canonical reference. There's some discussion on Hacker News and such. If you know of a good link, I'd love a PR. Scheme Bricks and Media Molecule's Dreams are interesting touchstones on the road to future visual programming languages. Ivan has an affinity for Pure Data and Max/MSP and vvvv. When talking about tools for beginners versus experts, Rich Hickey's Design, Composition, and Performance is invoked — and poor Shostakovich. Jack's main is Maria.cloud, named in honour of Maria Montessori. SICP gets a nod. Maria has proven useful at Clojure Bridge. Matt Hubert [Twitter] created the Cells abstraction that Maria was eventually built atop — it's similar to ObservableHQ. Video games like Steel Battalion, The Witness, and Dead Space have strong opinions about how much, or how little, visual interface to expose to the player. Complex 3D tools like Maya and 3D Studio Max are GUI inspirations for Ivan, where Jack and Matt prefer simplicity, so much so that Matt wrote When I Sit Down At My Editor, I Feel Relaxed. Dave Liepmann is the third leg of the stool in Applied Science, Jack's consultancy. Maria originally had a deployment feature like Glitch. There's a great talk about Maria by the Applied Science trio, containing a mini-talk called Maria for experts by Jack. Pharo is an inspiring modern Smalltalk. Fructure is a wildly cool new structured editor, and its designer Andrew Blinn is fantastic on Twitter. Extempore and Temporal Recursion by Andrew Sorensen offer some interesting foundations for future visual programming tools. Sonic Pi and Overtone are lovely audio tools by Sam Aaron, widely praised and deservedly so, and everyone should back Sam's Patreon. A visual perception account of programming languages: finding the natural science in the art and Unifying Textual and Visual: A Theoretical Account of the Visual Perception of Programming Languages are obscure but beautiful papers by Stéphane Conversy. Aesthetic Programming is one of Ivan's favourites, and the author Paul Fishwick just so happened to teach Jack's graphics programming class at Uni. Orca is a mind-bending textual-visual-musical hybrid programming tool by Hundredrabbits, who are Devine Lu Linvega and Rekka Bell. Notwithstanding that they live on a sailboat(!), they do an amazing job of presenting their work and everyone in our community should take stock of how they accomplish that. Ableton Push and Ableton Live are practically state-issued music tools in Berlin. (Not to mention — Ivan edited this podcast in Live, natch.) thi.ng and @thi.ng/umbrella are Jurassic-scale libraries by Karsten Schmidt, who wrote blog posts about Clojure's Reducers in TypeScript. Finally, Nextjournal are doing great work with their multi-lingual online scientific notebook environment. The transcript for this episode was sponsored by Repl.it and can be found at https://futureofcoding.org/episodes/041#full-transcript See omnystudio.com/listener for privacy information.
1 hr 41 min
Jun 13, 2019
Joining Logic, Relational, and Functional Programming: Michael Arntzenius
This episode explores the intersections between various flavors of math and programming, and the ways in which they can be mixed, matched, and combined. Michael Arntzenius, "rntz" for short, is a PhD student at the University of Birmingham building a programming language that combines some of the best features of logic, relational, and functional programming. The goal of the project is "to find a sweet spot of something that is more powerful than Datalog, but still constrained enough that we can apply existing optimizations to it and imitate what has been done in the database community and the Datalog community." The challenge is combining the key part of Datalog (simple relational computations without worrying too much underlying representations) and of functional programming (being able to abstract out repeated patterns) in a way that is reasonably performant. This is a wide-ranging conversation including: Lisp macros, FRP, Eve, miniKanren, decidability, computability, higher-order logics and their correspondence to higher-order types, lattices, partial orders, avoiding logical paradoxes by disallowing negation (or requiring monotonicity) in self reference (or recursion), modal logic, CRDTS (which are semi-lattices), and the place for formalism is programming. This was a great opportunity for me to brush up on (or learn for the first time) some useful mathematical and type theory key words. Hope you get a lot out of it as well -- enjoy! The transcript for this episode was sponsored by Repl.it and can be found at https://futureofcoding.org/episodes/040#full-transcript See omnystudio.com/listener for privacy information.
1 hr 53 min
Jun 7, 2019
Mathematical Foundations for the Activity of Programming: Cyrus Omar
Usually when we think of mathematics and programming languages, we think of tedious, didactic proofs that have nothing to do with our day to day experience of programming. And when we think of developer tools, we picture the practical, imperfect tools we use every day: text editors, build systems, libraries, etc. Cyrus Omar is new computer science professor at the University of Michigan bridging these disciplines by creating the foundations to precisely reason about the experience of programming. We open the conversation with how Cyrus got his start in computational biology, but how his dissatisfaction with the tooling led him to eventually to PL theory. At the time of this conversation Cyrus was interviewing for tenure-track positions, so we discussed the pros and cons of getting a PhD, being a post doc, and finding a job in academia. (He recently accepted a job at University of Michigan.) I enjoyed riffing with him on new media or platforms to accelerate science instead of the "dead tree of knowledge", including Cyrus's vision for a "computational Wikipedia" built on top of Hazel. Ultimately Cyrus shares the vision of democratizing computation, and we talked about how he imagines extending the Hazel project to be able to embed GUIs inside Hazel expressions, which can in turn contain arbitrary Hazel expressions or other GUIs. I loved our conversation about some of the classic touch points for improving programming - projectional editors, feedback loops, end user programming - but from a more academic perspective then usual. Hope you enjoy as well! Transcript at futureofcoding.org/episodes/039#transcript, provided by Replit. See omnystudio.com/listener for privacy information.
2 hr 13 min
Apr 10, 2019
The Case for Formal Methods: Hillel Wayne
Hillel Wayne is a technical writer and consultant on a variety of formal methods, including TLA+ and Alloy. In this episode, Hillel gives a whirlwind tour of the 4 main flavors of formal methods, and explains which are practical today and which we may have to wait patiently for. The episode begins with a very silly joke from Steve (about a radioactive Leslie Lamport) and if you make it to the end you're in store for a few fun tales from Twitter. https://futureofcoding.org/episodes/038 See omnystudio.com/listener for privacy information.
1 hr 34 min
Mar 2, 2019
De-Nerding Programming: Jonathan Edwards
Jonathan Edwards is an independent researcher working on drastically simplifying programming for beginners. He is known for his Subtext series of programming language experiments and his Alarming Development blog. He has been a researcher at MIT CSAIL and CDG/HARC. He tweets @jonathoda. See omnystudio.com/listener for privacy information.
1 hr 48 min
Feb 13, 2019
Moldable Development: Tudor Girba
Tudor Girba builds tools and techniques for improving the productivity and happiness of software teams. He currently works on the Glamorous Toolkit, a "moldable development environment" for Pharo, that developers can easily adopt to suit their needs. Tudor is a self-proclaimed "software environmentalist", sounding the alarm about how quickly we create code, and how slowly we recycle it. https://futureofcoding.org/episodes/036 See omnystudio.com/listener for privacy information.
2 hr 52 min
Jan 6, 2019
Democratizing Web Design: Vlad Magdalin
1 hr 33 min
Dec 5, 2018
The Edges of Representation: Katherine Ye
Katherine Ye is a PhD student at CMU, where she works on representation, including programming languages, visualizations, notations, and interfaces to enable thinking and creating. She's been affiliated with MIT CSAIL, Princeton, Distill at Google Brain, and the Recurse Center. In this conversation we discuss Penrose, her project to _democraize visual intuition_. Katherine envisions "a magical machine where you can dump in a math textbook and out comes a fully-illustrated math textbook, or more specifically a platform where you can simply type mathematical notation in plain text and automatically get many useful and beautiful diagrams out illustrating the notation." It's a fascinating project in the intersection of mathematics, intuition, education, visualization, communication, programming, domain specific languages... basically, all of the interesting topics in one project. As you'd expect in a conversation about the edges of representation, this is a wide-ranging conversation that…
1 hr 14 min
Dec 3, 2018
Reflection 14: /about
If you haven’t been following my research journey, this episode is a great place to join! I recap of who I am, where I come from, what I’m trying to accomplish, and how I hope to accomplish it. The mission of this project is, broadly, to “democratize” programming. My new phrase is: Enable all people to modify they software they use in the course of using it. This mission would cause the following changes, in order of increasing importance: All software will be co-created by decentralized communities, rather than centralized groups or companies. Through the power of crowd-sourcing, the quality of all software will become much higher than existing software. All software will be much more composible, interoperable with other pieces of software. All software will be arbitrarily customizable, allowing for bespoke, tailored experiences. Learning to communicate with computers teaches one how to think more clearly, precisely, mathmatically, and powerfully. If one can manipulate the…
1 hr 52 min
Oct 24, 2018
Basic Developer Human Rights: Quinn Slack
Quinn Slack of Sourcegraph believes in low-hanging fruit. Before we improve programming in all the fancy ways, he has a list of all the little improvements and features we need to make available to all developers, such as jump-to-definition, autocomplete, and automatic formatting. In this conversation, we learn about the technical challenges to brining code intelligence to all editors, and Sourcegraph's chosen solutions, such as the Langauge Server Protocol and the Sourcegraph extension API. Quinn explains how Sourcegraph code search is so effective without resorting to any fancy machine learning. We also discuss the trade-offs of open-sourcing a devtools company from Day 1, how to find like-minded investors, and how to "win the hearts and minds of developers." Notes and transcript at futureofcoding.org/episodes/32 See omnystudio.com/listener for privacy information.
1 hr 19 min
Oct 12, 2018
Sustaining the Underfunded: Nadia Eghbal
Two years ago, Nadia Eghbal "stumbled onto the internet's biggest blindspot": sustainability of open-source. Her Ford Foundation report "Roads and Bridges" became an instant classic. She shined a light on the underappreciated roles of maintainers and how difficult it was for even vital projects to get enough funding for a single person full time. In this conversation, we discuss how she found "stumbled onto" this problem initially, and her road from the Ford Foundation to GitHub and now Protocol Labs. We discuss the challenges of indepdendent research and remote work... and how being able to find amazing friends and co-conspirators on Twitter somehow makes it all better. Nadia lays out her vision for the future of open source, and how we can tackle the human side of scaling open-source development. She also gives us a sneak preview of her current work on a new economic model for understanding how open-source software consumption scales. It doesn't scale costlessly, because "you have t…
1 hr 29 min
Sep 22, 2018
On The Maintenance Of Large Software: James Koppel
How do we maintain millions of lines of code? For example, the Social Security Administration has 60-million-lines of COBOL. James Koppel is building tools to help tame these kinds of beasts. His current work is on decreasing the costs to build developer tools by allowing the same tool to work on a variety of languages. James Koppel is a Carnegie Mellon CS grad, Thiel Fellow, entrepreneur, educator, and currently PhD student at MIT. We talk about his experience withprogram repair, program sythesis, code comprehension, and many other cutting-edge fields relevant to the future of software engineering. Transcript and episode notes: futureofcoding.org/episodes/30 See omnystudio.com/listener for privacy information.
1 hr 36 min
Aug 27, 2018
Reflection Thirteen - Independent mentorship
My research recap episodes are back! This is the first I've recorded since the end of 2017. I discuss my new mentor-mentee relationship with Jonathan Edwards, my upcoming new paper on functional reactive programming, my move to London, my longer-term goals, and other various musings about abstractions, monads, and data ninja playgrounds. futureofcoding.org/reflections/13 See omnystudio.com/listener for privacy information.
1 hr 5 min
Aug 27, 2018
Exploring Dynamicland - Omar Rizwan
Many of you have heard about Dynamicland, Bret Victor's new project. Omar Rizwan comes on the podcast this week to tell us all about it. He recently wrote an amazing write up about it, [Notes from Dynamicland: Geokit](https://rsnous.com/posts/notes-from-dynamicland-geokit/), that I'd highly reccomend to everyone interested in the future of computing. futureofcoding.org/episodes/28 See omnystudio.com/listener for privacy information.
1 hr 26 min
Jul 17, 2018
Bringing Explicit Modeling To The Web: David K Piano
David K Piano is bringing explicit software modeling to the web with his xstate library. He gives talks around the world about statecharts, and is cooking up a new SaaS service that will help developers model and understand their application using statecharts. In this conversation, David and I discuss the benefits of declarative languages, such as CSS, the principle of least power, musical notation, and Facebook Origami. futureofcoding.org/episodes/27 See omnystudio.com/listener for privacy information.
1 hr 12 min
Jul 3, 2018
Compassion & Programming: Glen Chiacchieri
Glen Chiacchieri has worked at the MIT Media Lab on Scratch, at Dynamicland with Bret Victor, and is now becoming a psychotherapist. He's known for his Legible Mathematics essay, his Flowsheets programming prototypes, and the Laser Socks game, among many other projects. In this conversation, we discuss: how he grounds his research in compassion, the tradeoffs between working on the "model vs UI" of programming, his software-company-in-the-making, based on Flowsheets, our shared dream for the future of open-source READMEs, and how Dynamicland does and does not point towards the future. The notes for this conversation can be found at futureofcoding.org/episodes/26. See omnystudio.com/listener for privacy information.
1 hr 52 min
Jun 12, 2018
You Should Consider Some States Kevin Lynagh
Kevin Lynagh is a designer specializing in user interfaces for complex systems. He co-created Subform, a CAD-inspired UI design tool, with Ryan Lucas, which got a thousand backers on Kickstarter. He recently created Sketch.systems, an interactive playground for designing system behavior using Statecharts (hierarchical state machines). In this conversation, we discuss direct manipulation, Statecharts, challenges of layout engines, visual programming languages, the Clojure community, constraint systems, and the three different types of programmers. futureofcoding.org/episodes/25 See omnystudio.com/listener for privacy information.
1 hr 41 min
May 22, 2018
Stop Being A Sysadmin For Your Own Machine: Nick Santos
Do you hate Makefiles and YAML config files? Do you feel your soul slowly dying as you wait for your tests to run? Do you yearn for even-more-continuous integration? Nick Santos, the CTO and founder of Windmill Engineering, is here to help. Windmill's a cloud-based build-system that intelligently runs your relevant tests in the cloud, in parallel on every file save. How's that for a tight feedback loop? futureofcoding.org/episodes/24 See omnystudio.com/listener for privacy information.
May 17, 2018
Teaching Abstraction: Brent Yorgey
Brent Yorgey is a professor of math and CS at Hendrix College. He studys functional programming in Haskell, type systems, and category theory, and more. He is the creator of the diagrams vector graphics Haskell library. He taught Introduction to Haskell and The Art of Recursion at the University of Pennslyvaia (which were my two favorite classes in college!). In this conversation, we talk about Brent’s Monad Tutorial Fallacy essay, type systems, FRP, essential vs accidental complexity in Haskell, and the perils of reading academic CS papers and ways to overcome them. http://futureofcoding.org/episodes/23 See omnystudio.com/listener for privacy information.
1 hr 17 min
May 2, 2018
Learning Programming At Scale: Philip Guo
Philip Guo researches ways to scale programming education beyond the classroom. He is the creator of Python Tutor (http://pythontutor.com/), a widely-used code visualization and collaborative learning platform, and an assistant professor at UC San Diego. In this episode, we discuss why diverse groups of people study CS, his various prototypes, and the differences between technological research and industry. http://futureofcoding.org/episodes/22 See omnystudio.com/listener for privacy information.
1 hr 11 min
Feb 1, 2018
Building for Developers: Aidan Cunniffe
My guest this week, Aidan Cuniffee, is the founder of two startups in this space, first Dropsource and now Optic. Aidan and I discuss the trade-offs between creating tools for developers vs non-programmers. We also get to hear some of the upcomming features to expect from Optic. We finish off the interview with a fun theoretical discussion of notation, representation, conciseness and learnability. http://futureofcoding.org/episodes/21 See omnystudio.com/listener for privacy information.
1 hr 24 min
Dec 29, 2017
Coding On (the) Beach: Jason Brennan
Jason Brennan is a Canadian computer scientist focused on education and computing. He’s worked at Hopscotch and Khan Academy. We discussed his experiences building multiple programming language platforms, the incomprehensibly large vision of Alan Kay, and his new project Beach. http://futureofcoding.org/episodes/20 See omnystudio.com/listener for privacy information.
1 hr 38 min
Dec 13, 2017
Building Universe: Joe Cohen
Like many of us, Joe Cohen fell in love with HyperCard. Three years ago, he founded Universe to re-imagine HyperCard for the modern day. In this interview, Joe walks us through his initial vision for Universe, and the pivots along the way. It's a refreshing story about balancing pie-in-the-sky vision with shorter-term customer needs. You can find the demo videos that Joe references here: http://futureofcoding.org/19-building-universe-joe-cohen.html Most importantly, you can download Universe for iPhone here: https://itunes.apple.com/us/app/universe-build-a-website/id1211437633 See omnystudio.com/listener for privacy information.
1 hr 24 min
Dec 4, 2017
Research Recap Nine: Constructing My Crusade
Excited to be back after sickness and vacation! The notes for this episode can be found here: http://futureofcoding.org/episodes/18-research-recap-nine.html See omnystudio.com/listener for privacy information.
Nov 28, 2017
Bootstrapping Bubble.is: Emmanuel Straschnov
Many of you may have never heard of Bubble.is. That's because they don't build for developers. They build for business people who need to create technology but can't afford to work with developers. Over the past four years, Emmanual and his cofounder Josh have bootstrapped their drag-and-drop website builder into a profitable business. See omnystudio.com/listener for privacy information.
Nov 6, 2017
Research Recap Eight: Life & Work Planning
Back in action after my two-week, sore-throat-induced hiatus, I reflect on my work over the past weeks on my Life Plan and Work Plan. If you make it to the end of this episode, you’ll also get some off-the-cuff tips for ergonomic workstation design. You can view the notes for this episode here: futureofcoding.org/episodes/16-research-recap-eight-life-and-work-planning.html See omnystudio.com/listener for privacy information.
Oct 17, 2017
Raising Genius with Scott Mueller
Scott Mueler is the founder of UCode, an after school coding program in California, which he created after teaching his then six-year-old son Ken to code. Scott tells us about how he developed his parenting/teaching/curricular philosophy, and how all educators and parents can apply these principles to raise geniueses of their own. See omnystudio.com/listener for privacy information.
1 hr 37 min
Oct 9, 2017
Research Recap Seven - Master Planning
Inspired by Juan Benet (and Elon Musk), I zoomed out last week and thought about my "master plan" for this project. You can see a detailed outline for this episode with links here: http://futureofcoding.org/episodes/14-research-recap-six-master-planning.html See omnystudio.com/listener for privacy information.
1 hr 11 min
Oct 3, 2017
Teaching Elm To 4th Graders: Christopher Anand
Most people consider ML-based langauges like Elm hard enough to learn as an adult. But according to Professor Christopher Anand of McMaster University, they work really well to introduce Computer Science to children, starting in 4th grade! In this episode, Christopher and I explore the difference between alegbraic thinking and computational (or sequential) thinking, and why this is incredibly relevant today as the "coding for all" movement gains traction. You can view the notes for this episode online at http://futureofcoding.org/episodes/13-teaching-elm-to-4th-graders-christopher-anand.html See omnystudio.com/listener for privacy information.
1 hr 1 min
Sep 25, 2017
Research Recap Six: CycleJS Deep Dive
The last two weeks were all about CycleJS. In order to create visual spreadsheet metaphors for CycleJS stream combinators, I need to have a better understanding of how CycleJS works, and so I played around with it by building a CycleJS Flappy bird. I also spend time recently playing with spreadsheets and Clay. You can read more at my journal (futureofcoding.org/journal). See omnystudio.com/listener for privacy information.
Sep 19, 2017
How ReactJS was created - with Pete Hunt
One of the original ReactJS developers at Facebook and Instagram, Pete Hunt (@floydophone) tells us the story behind the metoric rise of ReactJS. Pete explains the problems he faced Instagram Web that led him to Jordan Walke's early React prototype, and how he helped develop, evangalize, and grow React to what you know it to be today. See omnystudio.com/listener for privacy information.
1 hr 14 min
Sep 13, 2017
Unison's Paul Chiusano on how Abstraction Will Save Distributed Computing
In this episode I speak with Paul Chiusano (@pchiusano), creator of Unison, about his ambitious vision for the future, where we can abstract over distributed computing, and there are no apps. See omnystudio.com/listener for privacy information.
1 hr 26 min
Sep 11, 2017
Research Recap Five
The last two-week-research-cycle was my most productive yet! In this recap, I debreif my Alan Kay deep dive, discuss tweaking my schedule after reading Peak, review conversations with Jaime Brandon and Dan Scanlon, read aloud my thoughts on proper computer use patterns and my prototype idea LogicHub, recap my early morning meeting with CycleJS creator Andre Staltz, and discuss the next steps for my StreamSheets prototype (which is why I'm putting my Bret Victor deep dive on pause). If you were able to follow all that, my hat is off to you. I barely made it through the recording and episode of this episode alive. If you need help pieceing this episode together, you can find the notes on my website: /futureofcoding.org/episodes/9-research-recap-five.html See omnystudio.com/listener for privacy information.
1 hr 16 min
Aug 28, 2017
Research Recap Four
After coming back from Boston, I did a deep dive into Jonathan Edwards, Jaime Brandon, Conal Elliot, as well as spending a full day reviewing Eve (Chris Granger). Towards the end of the week, I released a simple prototype for StreamSheets and send it over to Andre Staltz for ideas and feedback. Notes here: http://futureofcoding.org/journal#research-recap-4 See omnystudio.com/listener for privacy information.
Aug 25, 2017
Looker's Lloyd Tabb on Growing Languages Through Deprecation
In this episode, I speak with Lloyd Tabb, co-founder and CTO of Looker, a data analytics platform build around a SQL modeling langauge, LookML. He talks about how he created a successful business around a language, and how he continually improves the language through deprecation. See omnystudio.com/listener for privacy information.
1 hr 9 min
Aug 24, 2017
Research Recap Three (WoofJS Workflow)
Over the last two weeks I had a suprise trip to Boston to meet with other researchers in this space. In preperation for the event, I spent most of the last two weeks building the WoofJS Workflow prototype. Notes here: http://futureofcoding.org/episodes/6-research-recap-three.html See omnystudio.com/listener for privacy information.
Aug 11, 2017
Samantha John Of Hopscotch On Learnable Programming
In this episode, I chat with Samantha John (@saj0hn), cofounder and CEO of Hopscoth (@hopscotch), the award-winning iPad and iPhone app that allows kids to learn to code and share their projects with the Hopscotch community. Learn more at futureofcoding.org. See omnystudio.com/listener for privacy information.
Jul 31, 2017
Research Recap Two
Learn about what I did over the last two weeks! Notes here: http://futureofcoding.org/episodes/4-research-recap-two.html See omnystudio.com/listener for privacy information.
Jul 21, 2017
Jonathan Leung on Inventing on Principle
My friend Jonathan and I discuss various design goals that I try to keep in mind while doing user interface research. You can find notes from this episode at http://futureofcoding.org/episodes/3-jonathan-leung-on-inventing-on-principle.html See omnystudio.com/listener for privacy information.
1 hr 22 min
Jul 19, 2017
Research Recap - A Year in Review
Let me get you up to speed with my research projects over the past year. You can read more about my projects here and here and about WoofJS here. You can find more notes about this episode at http://futureofcoding.org/episodes/2-research-recap.html See omnystudio.com/listener for privacy information.
Jul 14, 2017
Welcome to the Future of Coding
Hi, I'm Steve Krouse. Welcome to my podcast and open-journal research project to create the future of coding. I believe the tools we currently use to create software can be drastically improved. Join me on my journey to discover the future of coding. Every week I alternate between recapping my own research and talking with programming language and interface experts. You can follow my progress at futureofcoding.org. See omnystudio.com/listener for privacy information.