Future of Coding - 2020 Community Survey

Episode Date: April 25, 2020

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 th...e 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.Support us on Patreon: https://www.patreon.com/futureofcodingSee omnystudio.com/listener for privacy information.

Transcript
Discussion (0)
Starting point is 00:00:00 Welcome to the Future of Coding. I'm Ivan Rees. Back in January, we ran the first survey of the Future of Coding community. One of the goals of the survey was to take the temperature of the room, what people are working on, how they are interacting with the various branches of the community, what things they would like to see happen over the coming year, and so forth. The other goal was to more concretely answer a long looming question. Should we move away from Slack? 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
Starting point is 00:00:45 some things happened in the world that caused me to change my plans? Shocker, I know. I'm podcasting from home, so if I sound a little more airy than normal, it's because I'm using one of my special scientific measurement microphones that looks like an electric toothbrush. No guest this time either, it's just me. So all right, let's look at the survey. We got 134 responses, which is pretty good. According to Slack's analytics, we have roughly 230 people who check the Slack in any given week, and about 70 people who post. So broadly speaking, this survey sampled about half of the current community. I've created a bunch of graphs of all of the answers we received, and you can see them by going to the show notes.
Starting point is 00:01:38 The URL is futureofcoding.org slash episodes slash 46. You'll also be able to download the raw data of survey results if you'd like to do your own analysis and share it with the community. To start, let me recap the introduction to the survey. At the conclusion of this survey, we'll know a little more about who here takes surveys, how they interact with the various branches of our community, and whether or not we should move away from Slack. The survey is anonymous, and data collected will be shared with the community. Section one, who are you really? Let's find out some basic information about how you interact with the community and what the community organizers can do for you. Question one, roughly how often do you post slash comment on the future of coding Slack?
Starting point is 00:02:52 We have a lot of lurkers, people who just read others' posts and don't post or comment themselves. That was the largest group with about 36% of respondents. That matches up with the data that I mentioned where the Slack has about 200 and something where's that number scrolling scrolling scrolling 230 people who check the slack in a given week and about 70 who post so that's a little discontinuity there but you know this is a sample of people who take surveys not a sample of the the entire community and there's probably some correlation between people who post and people who would actually take the time to go and answer a survey. So 36% of respondents are lurkers. About a quarter of people post once a month, another quarter roughly post once a week,
Starting point is 00:03:38 and a handful of people post every day, which feels about right to me. You know who you are, and I love you all dearly. 12% of respondents didn't know there was a Slack. That's helpful, as it means this survey did reach some people via the podcast or via Twitter, where it was also shared, but it's not such a large group that we'd need to worry about it distorting the results of our questions about abandoning Slack. Question two, do you subscribe to the newsletter? About half of all human beings subscribe to the newsletter. A third didn't know there was a newsletter.
Starting point is 00:04:24 Hopefully they signed up. I'm so happy that Mariano is putting that together every week. I often find that I don't have time to check out all the talks and articles and projects being shared throughout the week, but having them synthesized into an email helps me make time to review them all at once. Thank you, Mariano. Question three. Do you listen to the podcast? This one is interesting. According to the results, 0% of people listen to the podcast. It's as though I'm sitting in my office talking to myself. It's like I'm isolating from the rest of the world. I can say whatever I want. Moving on. 30% of respondents don't listen to the podcast. Shame.
Starting point is 00:05:10 And about 10% of people didn't know there was a podcast. Question four. Do you read slash use the podcast transcripts? The transcripts are surprisingly popular. Surprising to me, at least, since most of the podcasts I listen to don't even have transcripts. When I first reached out to Jack Rusher about coming on the podcast, he specifically asked about transcripts. And since I was so intimidated by him, I put in a tremendous effort to make the transcript for that episode as good as I could. 35% of people read the transcripts and 16% didn't know there were
Starting point is 00:05:53 transcripts, leaving about 50% of survey respondents who do not read the transcripts. And whenever I post a new episode, the number one piece of feedback I get is how much people love the transcripts, the notes, the links, etc. Question five. If the podcast had a Patreon, would you potentially back it? And if so, for how much? Since the transcripts take so much time and effort, and the REPLIT sponsorship doesn't even cover the full costs of producing the show,
Starting point is 00:06:26 it's been hard for me to justify doing this podcast to my key stakeholders, Freya and Astrid. So back when I made this survey, I was thinking of launching a Patreon. That was, of course, in the Halcyon days. So that plan is off the table for now. About 50% of people said they would back the show for some amount of money. 50 people said $5. Nine people said $10. One person said more than $10. One person picked my joke answer exactly $771 per month, which just so happens to be my favorite number since childhood. Whoever you are, thank you. Question six. If you are willing to back the podcast on Patreon, would you want an incentive like bonus episodes in return? 3% of people said yes, they would only back the podcast if they received something in return. 28% of people said that an
Starting point is 00:07:26 incentive would be nice but is not essential, and 69% felt it'd be better for me to focus on the main episodes rather than spending time working on some sort of backer incentive. Nice. Question seven. Are you or your company interested in sponsoring the podcast slash community? Exactly three people chose the first answer, which was yes, and I will DM you to get the ball rolling. I'm still waiting for those DMs. 37% of people said not right now, and 61% of people said no. One very last final tiny little closing thought about money before we move on to the fun stuff. For me, it's absolutely not about trying to earn income. I'm not doing this podcast for the exposure. I just, I really want to make something really good. I think this show is a fantastic vehicle for conversation and the exchange of ideas. And I just, I want to do the absolute best job of it
Starting point is 00:08:33 that I possibly can. Question eight, where else do you interact with folks from this community? This is the first question where people could select more than one answer. In the show notes, I have both pie charts and bar charts for most of the questions. It's worth pointing out that the percentages in the pie charts are derived from the total number of selections, not the total number of people who responded. So the representation is a little weird, but think about it, makes sense. 86 folks are on Twitter. That's about 45% of the responses. 31 of us interact on Hacker News. I randomly saw Robin clean there the other day. 24 of us have had an encounter at a meetup, and 20 folks mingle at work or at school or some other social function. We have 17 people who have crossed paths on Reddit
Starting point is 00:09:34 and 11 on Lobsters. This is the first question where people could write in their own answers to. We have four people who entered Mastodon, and one each for Strange Loop, Quora, Matrix, a single period character, and imaginary conversations in my mind. Big mood, as they say. Question nine. Where in the world is the person answering this question? 51% in the United States with 67 people, 11 people each in Germany and the UK,
Starting point is 00:10:15 seven in Canada, six in France, three in Sweden and Australia, two in Russia, Poland, the Netherlands, Israel, India, Finland, and Argentina, and one person in Romania, Morocco, Jordan, Italy, Ireland, Hong Kong, Egypt, Czech Republic, Bulgaria, and Austria. Wow. Question 10. How comfortable are you with English? Nearly everyone who responded is comfortable with both written and spoken English. And one person is only comfortable with written English. It will be interesting to see how this changes in future years. I am planning to run this survey again as an annual thing, just to sort of give us a nice historical dataset and let us see how things grow and change with the years.
Starting point is 00:11:08 Alright, let's get spicy. Section two, the pursuit of perfection. The community is named future of coding, but that's a rather nebulous concept. Let's see if we can tease out what that means. Question 11, litmus test. Thoughts on Brett Victor? 81 people said hero. Zero people said villain. Cowards. 43 people have the Brett Victor relationship status, quote, it's complicated. And finally, nine people do not know who Brett Victor is. Friends, if you are listening to this and you do not know the work of Brett Victor, stop the podcast and go to worrydream.com. It's no secret that Steve Krause and I have a tremendous fondness for Brett's work. I think it's telling that the
Starting point is 00:12:06 most common criticism I've heard levied against his work is that people are disappointed that things he's made aren't real. You can't download and use his projects. But to me, that's the point. Prior to Dynamic Land, his work was meant to set the bar. If you're building a new programming system, it must be this visualizable, this thoughtful, this humane to be progressive. Brett raised our expectations, and I think that's a tremendous thing. So of course, I think he's a villain. He single-handedly ruined programming for my generation now that we know how much better things could be and how much better they've been in the past and how much time we've wasted living in the long shadow of sea, eunuchs, and the rolling stones. Question 12. Are you currently working on
Starting point is 00:12:57 any future of coding projects yourself? This is another question where folks could select multiple answers. 77 people say they're working on a future of coding project independently. That's fantastic. On the other hand, 42 people are not working on a future of coding project. That's also fantastic. I'm thrilled that we have folks here in the community who are interested in the subject, but not vested interested. 20 people do future of coding stuff at work, which is nice work if you can get it.
Starting point is 00:13:36 15 people do future of coding in academia. 30 people don't currently do any future of coding work, but they want to. And 9 people don't do any future of coding work, but they want to. And nine people don't do any future coding work, but they used to. Question 13. What future of coding topics interest you most? Folks listening, I'm going to talk about this extemporaneously for a bit. Folks reading the transcript, I present you this enormous bar graph. The question allowed you to pick multiple answers, and it also allowed you to enter your own custom answer at the bottom. I had wanted to find a better way to visualize this result set, and I screwed around in my spreadsheet system of choice that shall remain nameless but you can
Starting point is 00:14:27 probably identify it pretty easily from the kinds of charts that it produces and I came up with a scatter plot that was okay but wasn't good enough so I just went with the bar chart. If you are interested in doing some data viz with this data set, this is a question that would probably produce some really interesting visualizations if you wanted to spend some time trying that out. This question was also extremely contentious. I had put a fairly tight limit on the number of answers that you could pick. And boy, did I hear about it. People wanted to pick, I don't know, 80% of the choices. And I personally felt that that sort of invalidated the utility of this question, where if you had, say, say half of people who only picked one or two or three answers, and the other half of people picked, you know, most of the answers, I think it would be sort of hard to tell trends that emerge. Though, again,
Starting point is 00:15:33 if you're taking the raw data, and you're doing some analysis of it, you know, each person answering the survey has their answers grouped separately. So there's probably some way to, you know, weight answers based on the number that people picked or something like that. You guys probably know a lot more about great techniques for data viz than I do. So that that will be interesting to see if anybody takes a crack at that. So the number one most popular choice by not a huge margin, by a you know a reasonable gap um because i should say the results are fairly linear like if you know if you do the the classic thing where you put it on log log and use a fat enough marker everything forms a straight line um just
Starting point is 00:16:18 looking down the bar chart you know it's it's fairly linear there doesn't seem to be like a power law distribution to the choices or anything fairly linear. There doesn't seem to be like a power law distribution to the choices or anything like that. It doesn't seem normal. It seems sort of a fairly linear drop-off from most popular to least popular. The most popular choice of topics that are interesting are what I call tools for thought slash mind bicycles. And tools for thought slash mind bicycles and tools for thought of course is a is a term of art you know just that idea that the computer is meant to augment human intellect or at least that's one very sort of fundamental way of thinking about it goes you know back to doug engelbert and many uh great thinkers in computing since then and so it's no surprise to me that that's the number one
Starting point is 00:17:06 interest of people here in this community, since it's sort of where programming grows from being just a way to get computers to facilitate business or research or artwork or that sort of thing, and extends into a sort of a larger, more encompassing notion of being the ultimate dynamic tool that can do any job that we want it to do. And that one of the biggest jobs that we now need is assistance with our ability to think and our ability to communicate and that sort of thing. So I think it's fantastic that that was the number one choice. The second most popular choice is, of course, visual programming. You know, you saw it coming. Everybody knows this visual programming. It's the coolest thing. Anybody's using text.
Starting point is 00:17:51 You have no idea. Like visual programming is amazing. Um, it is kind of unfortunate that all current visual programming tools are garbage, especially a lot of the ones that I've seen more recently. They kind of feel like they've lost the plot a little bit. Third most popular is live programming slash instant feedback. Fourth most popular is end user programming. I guess that surfaces an interesting observation, which is that these categories are just things that I thought up with, you know,
Starting point is 00:18:22 a little bit of effort to try and cover the range of interests that I've been aware of within the community. But it's definitely not a sort of a neatly organized space. This isn't like a collection of dimensions that are all sort of mutually perpendicular. It's very hard to sort of piece apart the individual facets of what we are all interested in. And so I think, you know, future surveys, we might need to refine this categorization scheme a little bit. The fifth most popular choice was systems of notation and representation, which is fantastic. That's something that Catherine Yee, past guest on the podcast, put together a very cool repo collecting all of these examples of systems of notation and we we don't seem to discuss that very much in the community and i'd
Starting point is 00:19:13 love to find a way to have more discussions about notation systems for things that aren't programming there's a lot we can learn there i thinkructured and projectional editors are up here near the top. So it's HCI. And then, you know, after all of that stuff that is focused on the experience of using tools and aspects of user interfaces or programmer interfaces, we get to, in the number eight position, programming languages, PL theory, and computation. And that has a bit of a drop-off from the one above it interestingly so i think just looking at which of these categories
Starting point is 00:19:53 are sort of clustered together in their number of selections that people have made might be a good way for us to tell how how closely related they are pl theory is definitely separate from HCI, projectional editors, end user programming, live programming, visual programming. And then just below that is direct manipulation. So I don't know. That to me, direct manipulation feels like it should be something that's more popular than it is, but maybe it's a term that's fallen out of favor. I'm not sure. I'm not going to spend too much time trying to read into its meaning carrying on down the list time travel and state space exploration is popular human and social factors are just a little above the halfway point which is nice to see them that high up the list. Given the importance of computers in the modern world,
Starting point is 00:20:47 those tools that we have do have an impact on society, and society has an impact on those tools. Sort of like every tool, like a hammer, there's one end that faces the problem domain and one end that faces the wielder. That's sort of the bidirectionality of tools. They shape the problem domain, but they that faces the wielder. That's sort of the bidirectionality of tools. They shape the problem domain, but they also shape the wielder. And so I think human and social factors are very important for considering what the future of programming should look like.
Starting point is 00:21:17 I'm going to skip down the list a bunch, really go to the show notes, read through it. It's neat to see where things fall in terms of relative popularity. And I'll get way down to the bottom. So just a little ways above the bottom, we have no code. And right next to that, we have video games and simulation. Those are both issues that I think are very polarizing. We talk about them fairly regularly. There's a surge of popularity in no-code programming tools, and there has been a handful of no-code startups that have sort of done a drive-by introductory post advertising their existence and then never facilitating any discussion and disappearing into the night. I think that that's not necessarily a problem, but it's not something that I love to see. One of the things that I think we'll want to hone in on as a community over the coming year as no code continues to sort of have its moment is how exactly we should
Starting point is 00:22:27 respond to that sort of one-off promotional content in our slack i would love to find a way to encourage the people posting that stuff to do it in a way that facilitates an interesting discussion about the design space that they're in, because they're definitely trying to solve the same problems that we are, at least in part. They're just going about it in a way that is usually more focused on addressing the needs of business rather than addressing the needs of humanity. And I see those as very separate things. And it would be good to make more of that energy than what it is currently making of itself. Of course, video games being down here is a bit of a dagger in my heart because I am effusively in favor of video games as a
Starting point is 00:23:21 beacon that we should look to for inspiration and for positive examples of what can be done with dynamic media. But that's my own hobby horse. Block languages also down here. Weird that block languages and visual languages ended up at basically opposite ends of the result spectrum. I guess that means that the people who like visual languages like node and wire visual languages which you know all right whatever though structured and projectional editors are also way up near the top of popular results and block languages are just you know they're another kind of structured editing so that's that's a bit surprising to me but maybe once again it's it's just due to the lack of great modern examples i think if you asked people to talk about block languages scratch is really
Starting point is 00:24:13 the beginning and the end of of what most people are aware of it's a space that could definitely use some invigoration and maybe hey maybe something like that will come out of our community i think that would be amazing the last two at the very bottom are climate slash environmental factors which is interesting there's been some enthusiasm around that in the community but i guess that's not a problem where it's easy to see a clear line between the creation of tools for thought and addressing the climate crisis so that's something that will be interesting to see if that changes over the coming years or not and the very bottom least popular topic of interest among the community is blockchain which unfortunately i lumped together with distributed hash tables and ipfs and i know that there are a handful of people in the community who are very interested in ipfs and other sort of you know galactic scale ways of organizing data and coordinating human activity.
Starting point is 00:25:29 So I feel like this is yet another area where the categorization scheme that I came up with probably torpedoed the popularity of this answer, where if things were perhaps organized a little more cleanly, more people might have chosen this result. Though, once again, I think this is why it was good to set a pretty strict limit on how many answers people could pick. The limit was at first something like six, and it eventually became 12. And so I think that forces us to see what things are our desert island ideas. If you could only focus on a few things, what would they be? And while I'm sure many people would say that there's probably more shoes yet to drop about IPFS and DHTs and that sort of large scale coordination technology with respect to future programming tools.
Starting point is 00:26:27 It's not yet something that is apparent. And now in a great moment of working from home, tap on the accounts tab to learn more about subscriptions. No, no. tab to learn more about subscriptions no no yeah this is the turn off the furnace interlude because i'm in canada and it's april and it is currently snowing as i look out the window and so my furnace had turned itself on and as i'm sure those of you who have done audio recording know, furnaces and air conditioners are the death because they are very broad white noise and it is impossible to filter out very broad white noise
Starting point is 00:27:13 in a way that does not sound awful. So now I'm just filling time while I wait for my furnace to turn off. I did turn it off. Oh, joy. Section three, put out the fire. Our community has used Slack as a discussion platform for several years, and we are now pressed against Question 14. Thoughts on Slack? 44% of people are going into this neutral on Slack, with 36% leaning negative and just 21% leaning positive. Gosh, I hope the survey was structured such that we can come out of this with a clear answer. But it wasn't. Question 15. Zulip is a chat service similar to Slack.
Starting point is 00:28:14 It has better support for permalinks, threaded discussions, search, and more, with basically all the features of Slack, including desktop, mobile, and web apps. In the conversations leading up to this survey, Zulip was the most popularly recommended alternative to Slack. So, what if we moved the community to Zulip? 18% of people would prefer to switch to Zulip. That's it. 18%. 21% would prefer to stay on Slack, and 60% are neutral. So no clear answer here. Question 16. Discourse is like a traditional message board, but features a modern visual design and a fair bit of JavaScript-powered dynamism. It's actively developed
Starting point is 00:29:06 and is already quite popular. In the conversations leading up to this survey, it was the second most popularly recommended alternative to Slack. Unlike Slack and Zulip, it is a message board rather than a chat service, which will change the tone, length, and frequency of posts to the community. So what if we moved the community to discourse? 23% would prefer to switch to discourse, but 29% prefer to stay on Slack, and only 48% are neutral. So no clear answer here either. Question 17. The third option is a traditional, server-driven message board slash form, something like PHPBB. This option is appealing if you prefer a message board to chat, with all the changes to tone,
Starting point is 00:30:02 length, and frequency of posts it'll bring, but do not like the modern design or JavaScript features of discourse, which sometimes get in the way more than they help. So, what if we moved the community to a traditional message board or form? 17% would prefer to switch to a form, 32% are neutral, and a whopping 51% would rather stay on Slack than move to a form. Well, there is a clear answer, at least. Question 18. Now that you've seen the options, what is your number one pick?
Starting point is 00:30:46 You ready? 10% would prefer a form. 15% would like Zulip. 18% for discourse. 28% are good with whatever. And 29% would like to remain on Slack. Whew. So now the question becomes, what do we do with this information? I think two things are now apparent. The first is that folks who absolutely want to leave Slack are in the minority. Looking at both the initial thoughts on Slack question and the final what's your pick
Starting point is 00:31:26 question, most people are either neutral or would be happy to stay on Slack. The second newly apparent thing is that even if we did want to leave Slack, even after spending a few months discussing options and weighing sentiment, the survey shows that none of the alternatives are all that popular. Compared individually against Slack, only 17% of people would prefer form, 18% of people would prefer Zulip, and 23% would prefer discourse. And the numbers are even lower when those options are weighed against one another. To me, this data is a pretty clear sign that Slack has inertia. If the community didn't exist yet and we could freely pick where we wanted to start
Starting point is 00:32:15 it in the first place, I'm sure the numbers would tell a very different story. But now that the community is established, moving to a new home would almost certainly cause more damage than sticking with Slack, at least in the short term. So I think we need to address the shortcomings of Slack in a different way. We have our list of complaints, the loss of history, the poor search, the fact that Slack threads aren't good facilitators of deep discussion, etc. A few of us have made various attempts to address these issues in the past. Steve Krause made a history search using the Slack API on Observable, which works in a pinch but could definitely use refinement. A few people have tried to set up wikis so that we can capture references and concepts
Starting point is 00:33:08 and projects that come up in our discussions. There's Mariano's newsletter, which sort of doubles as a folk history of our community. If we're going to stick with Slack, I think we should take whatever effort we'd otherwise need to invest in moving to a new platform and instead invest it in tools that will help our community thrive despite the shortcomings of Slack. There's a community GitHub organization.
Starting point is 00:33:36 We have a handful of experimental programming tools that could surely be put to good use in building some tools for our community. So I think that's the direction we should go. The transcript for this episode is sponsored by Repl.it, a collaborative in-browser REPL that lets you instantly get started coding in over 50 languages. Lately, I've been curious about Swift, since I know I'll be turning my own future of coding project into a native Mac app at some point. One of the promises we've all heard about Swift is that it scales all the way down by serving as a nice, lightweight scripting language, and scales all the way up by serving as a highly reliable, performant, low-level systems language.
Starting point is 00:34:27 However, what doesn't scale as smoothly is the first-run developer experience. Sure, I could install the Playground iPad app to try the language, but then if I want to dig in a little deeper than toy examples, I need to download the language compiler, possibly download Xcode, figure out whether I need the toolchain, put it on my path. There goes my afternoon. Or I can go to REPLIT. R-E-P-L dot I-T. Click start coding, pick Swift as my language, and boom, I'm up and running with an editor and a REPL, faster than reading the Getting Started on the Swift website.
Starting point is 00:35:07 There's even a prompt offering me example code I can inject into the editor, which is pretty helpful if you're kicking the tires on, say, APL. So you're coding up a storm in the editor, and you think, this started as a little script, but now it's an operating system. I should probably save. Repl.it has you covered. You can create a repo, commit, and push to GitHub right from the sidebar. Just like that, you started with a toy project in a new language and smoothly worked your way up to something much more substantial, all in the browser without installing anything. A great coding experience
Starting point is 00:35:42 with one click. Take a look at the 50 languages and frameworks they support, pick something you're curious about, and take it for a spin. Thanks to Repplet for sponsoring the transcript and for helping to build the future of coding. Section 4. Free Thinking. These optional questions are an invitation to anonymously So since these are free answer questions, I figured that this is actually especially well suited for discussion on the podcast. It was these questions that made me think, hey, I should do a podcast episode recapping this survey. So I'm just going to start scrolling through the responses and just reading them and reacting to them as we go. Question 19. What would you like to see the community do more of?
Starting point is 00:36:51 The answers to this question mostly fell into a number of common categories, and so I've grouped them together and pulled out a few examples that best illustrate each one. The first category is what I'm calling connection, where people are interested in finding new or better ways for the community to directly interact with one another. So the common responses here are asking for things like virtual meetups or in-person meetups, perhaps organized around conferences, or perhaps with some sort of directory or way of reminding people of when and where meetups are happening. It's worth mentioning again that this survey ran before COVID became a worldwide crisis, so some of these answers might not have relevance this year, but they will definitely be things that we'll want to continue
Starting point is 00:37:44 thinking about for future years. Here's a few of my favorite responses. I think it would be nice to have more virtual or in-person events slash meetups to share ideas in real time and to get to know each other better. Here's another. Periodic randomized pairings of community members for mutual show and tell as a way to encourage new thoughts and connections. And the last one, use the one-on-one's channel more. It's been so helpful in getting to know what folks in the community are up to and to forge new relationships. That's a good suggestion right there. I personally have not yet participated in a one-on-one, so I should probably do that, hey? We also did a virtual conference back in November or December, if memory serves, and we should probably do some more things like that. I wasn't involved in organizing the first one, so if anybody listening to this was,
Starting point is 00:38:39 feel free to jump on the Slack and let me know what was involved in doing it so that we can run something like that again soon. The second largest category is what I'm calling collaboration, and this is something that took me by surprise. I haven't seen much discussion about this idea on the Slack, but it seems that there's a real interest in doing something like this. I'll just read some of these responses, and that should make it clear what this is about. I would like to collaborate with people and work on interesting projects. Working alone gets boring. So maybe a sub-community where people are paired with each other to collaborate on projects. Here's the next one.
Starting point is 00:39:23 It seems like everyone is working on their own minor projects, and they all come together to discuss them on the future of coding Slack. It would be far more efficient if we saw larger teams form from the FOC members that together would have the potential to make real change instead of these toy projects.
Starting point is 00:39:42 Here's the next one. Help people interested in contributing and projects find each other. And one more. More group projects. By working together, we can accomplish more than working separately. There were about 15 responses of this type, and this is something that hadn't really crossed my mind. I could only begin to guess as to the reason why we haven't had anybody openly asking for input on their projects. I know for my project, HEST, it's too early in the prototyping phase for me to feel comfortable inviting other people to join in in the design process. But it's something where a little later on in development I could see it really benefiting from other people bringing
Starting point is 00:40:28 ideas and playing around in that space with me. If anyone else has a project that they're working on and it's at a stage where it could benefit from some collaboration, know that you have quite a few people in the community who don't necessarily have a project of their own, but are looking for something to contribute to. After that, the next biggest category is something I'm calling archiving. There's a lot of interest in making a more permanent record of the discussions that we have in Slack and structuring them in some ways. As I record this, there was a conversation on the Slack just yesterday about possibly creating a searchable record of Slack that's a little bit richer than the thing Steve set up on Observable, and then also using Mariano's
Starting point is 00:41:22 newsletter as a stepping stone to some sort of permanent record, where instead of linking to Slack threads from the newsletter, Mariano could link to archived versions that preserved the full discussion in a way that was more publicly visible. And there were 10 answers that I felt fit this categorization. Not easy, but I'd love if we could get better at documenting our collective knowledge. I really liked the whole code catalog. Longer newsletters with older content, even if one to ten years old. Concrete permanent artifacts produced from our efforts, especially lists and directories of projects. Archive of all
Starting point is 00:42:06 communications between members that is easy to search and refer to. Build a base of knowledge which can be referred to rather than just say the same things back and forth in chats forever. Organize into similar or overlapping projects so we can compare and build off each other. One existing resource that sort of fits the bill here is Duncan Craig's spreadsheet of projects by various members of the community. And there's a link to that in a kind of a weird spot. If you go to the end user programming channel of our Slack, it's in the channel topic. There's a link at the top of the Slack window if you're on a desktop computer using Slack. We should probably put that spreadsheet
Starting point is 00:42:55 into a more usable sort of official feeling format and make it part of the website, at the very least. The next biggest category is one I am calling not Slack. I'll just read some of these replies. Don't use proprietary tools that require registration to even read. And this next one, the person wants, modes of interaction catered to introverts who want to develop their understanding and sense of community through discussion without it all being publicly logged and indexed forever
Starting point is 00:43:30 that is interesting because a big push has been to make all of our work more public and this is the only response to the survey that suggests some value in moving the other direction. I know that some people on the Slack prefer to have the more detailed, nuanced discussions in private messages. So that is kind of a nice feature. But those are a little bit limited in their utility. You could make a big private channel and invite a handful of people to it but i'm not sure that i understand exactly what this person would be satisfied by but it's an interesting counter consideration to our you know much more popular surge of momentum in in trying to organize our knowledge and and catalog it and preserve it for future reference and do so publicly. The next most popular category
Starting point is 00:44:28 is what I'm calling demos. Here's some comments. Make interesting demos and animated storyboarded thought experiments. And one other comment, produce a demo and intro to a new platform or language. And there were five people who wanted to see more of these sorts of demos happening. I think our new channel, the two-minute week, is going to help satisfy these desires. There were five responses that I grouped into a category called discussion. The first asks us to discuss programming language theory. Another says, more talk on the design or form of what the future of coding might look like. Right now, quite a few discussions still gravitate towards coding 1.5, in my humble opinion.
Starting point is 00:45:18 Focus a bit more on the reason behind future of computing. Why are we not satisfied with the status quo? And how do we know something is better than something else? What are the metrics? Something like a book club for trying software by community members and others. The last category was diversity. There were four responses to the survey that specifically asked for either a code of conduct or an effort to improve diversity, which is nice to see. And then lastly, I have a couple of replies that didn't so neatly fit into a category, and I just wanted to read them individually, sort of free of context. So here's the first. I'd like the community to get hip to the possibility of a
Starting point is 00:46:06 drastic societal simplification that would impede access to the technology that raised our standard of living and work out what to do about it looking through that lens. I would focus on lowering complexity, get computing more into the application-less age, just information and features, drastic openness, modularity,ity interop with the goal of helping people access and assimilate knowledge necessary for their thriving at the household and local level i like that especially in light of the comments i was just reading a moment ago about some of our future ambitions not being big enough this is an interesting motivation for a project in that it is not based on a reflection on existing technology or historic technology instead it's thinking about where society might go and what sort of
Starting point is 00:47:03 tools might be needed once society ends up in that place. And I think that is a really interesting way of ideating. And I would love to see more discussion, not just about this idea, but through that framework. The next uncategorizable reply. More public blog posts, i.e. just open to the internet with hyperlinks. I like this because it's something that we used to do a little bit more of, I feel like, and haven't done as much of lately, which is write blog posts and share them and discuss those rather than just posting our ideas to the slack but that might be more a consequence of what's going on in the world right now rather than a than some change in the underlying tone of the community hard hard to say for sure but i i am definitely guilty of not blogging enough
Starting point is 00:47:56 um one more reply here uh what i feel like we should do less of, reminiscing on history. I feel like a lot of people look to history as if it already has the answers we need. I blame the consumptive nature of modern media for this. I think we need to take more initiative to produce more insights ourselves. I can't argue with that. I think that there's a certain amount of truth to the saying that if you don't study history you're doomed to repeat it i think there's a lot of credibility to the ire that is heaped upon all these react programmers who keep reinventing different ideas from functional programming over and over again and doing them poorly and then critiquing each other with that quote about things including an underspecified buggy implementation of half of lisp so i definitely
Starting point is 00:48:54 feel like the pendulum has swung pretty far in the direction of focusing on history studying history looking at past failings and and our conversation in the community definitely, I wouldn't say is dominated by that viewpoint, but it is a very strong viewpoint. And I don't see nearly as many people writing speculative futures of computing that take place 40 years in the future as I do people revisiting what happened at park 40 years ago. And the last response that I would like to share from this first free answer question is dream bigger. There are a few moonshots in here. Question 20. Aside from release more episodes, what would you like to see happen with the podcast? Any guests or topics you'd like to see featured?
Starting point is 00:49:52 This question, I'm not going to read nearly as many of the answers for. There were 47 responses, which is great. A lot of them were suggesting guests that I could invite on. Alan Kay was a very popular request. So was Ted Nelson, Jonathan Blow, a certain Chris Granger, who may or may not be in the community. One person asked to bring back previous guests like Jonathan Edwards, Paul Chiasano. One person asked for an improvement to sound and production quality, though they say that they're still back on episode 24.
Starting point is 00:50:35 Spoilers. It gets better. A handful of people replied with some humorous responses like, I can't really follow podcasts. I zone out too easily um yeah me neither um no that's i'm kidding i love podcasts i love podcasts um a few requests for format like make the episodes shorter make them more tightly edited um some discussion requests like talk about money, more historic perspectives. In general, just a lot of suggestions for things that I could do with the show that are really interesting to me, but probably not so interesting to you.
Starting point is 00:51:14 Though if you are curious to see what people asked for, again, all of these results will be available on the episode page, which is at futureofcoding.org slash episodes slash 46. Question 21. What does the future of coding mean to you? In other words, what sorts of things are on topic or off topic for our community? This is the last question on the survey and it got 55 responses and I am just gonna read all of them. So this is probably a good place to delete this episode from your feed. I'll see you in the next one. Our next episode should be coming out fairly soon and it is an interview with Miller Puckett where he says some things that are very painful for me
Starting point is 00:52:08 to absorb into my heavily biased reality model when it comes to visual programming languages. So I will see you then. The future of coding means... We should admit that Moore's Law is over and start taking that seriously. It means the future of thinking. It means making programming humane. To me, the future of coding is not just thinking up new programming languages or IDEs. It's about really thinking about the nature of software and the deep problems that we need to solve. It's about thinking how different the process of building software would be
Starting point is 00:52:49 if we incorporated some of the ideas that fell by the wayside in the 70s and 80s due to hardware constraints. I feel like whatever it means to people seems to be working fine. What's on topic? The relationship between humans and technology. I view the main goal to be empowering everyone to make use of computing without being an expert. There are many paths to get there, so it's great to see different experiments we're building along the way. I don't have a lot of concrete ideas about future of programming. I like listening to what other people say and offer a rare comment where I think I have something relevant others might want to know about. Future of coding is a vast and fluid notion to me. The most condensed distillation I can come up with is,
Starting point is 00:53:33 computing allowed and could further enable crucial social benefits, but this incarnation cannot continue for long. Its baroque complexity makes it way too fragile, and it is operating in an environment of mounting instability which threatens catastrophic knowledge loss. I count as members of the wider future of coding community those who recognize the implications of the storm brewing and are working to retool for resilience under banners such as small is beautiful. For me at this point, it's pretty much anything considered wild, unpractical, or too academic, from the point of view of conventional or mainstream programmers. What I especially appreciate about this community is its focus on the history and evolution
Starting point is 00:54:17 of programming, and intent to learn from that history. It's especially refreshing compared to the general overhype in the industry where superficial changes are branded as revolutionary every six months or so, all without any interest to more substantially change the status quo. If it changes the way people interact with computers in the future, it's on topic. Alternative approaches that stretch the bounds of what we'd traditionally call programming but allow for the same effects. Improvements in traditional coding in terms of process and tooling,
Starting point is 00:54:50 weird esoteric environments that are challenging, entertaining, or niche in what they do, but still expand horizons. Anything that pushes the status quo of coding. Prefer revolutionary over evolutionary, but others are good. I feel like type systems and some of the similar low-level discussions are not about the future. The future means things exponentially better than now. It means big vision. The future of coding means the next generation of tools and techniques that programmers and users will use to create software. On topic is
Starting point is 00:55:23 reports of technical progress or novel UI ideas. On topic is reports of technical progress or novel UI ideas. Off topic is plugging corporate projects, although I understand the monetary benefits of the latter. As a professional programmer, I'm interested literally on the future of coding. So how can I make my own work an order of magnitude more efficient? From the angle of a toolmaker, I'm also interested in how my end product can be an order of magnitude more versatile. Let's call it future of rich human-computer interaction. Rich human-computer interaction can be done in coding.
Starting point is 00:55:58 There are probably other systems in which this is possible, but I'm not aware of them. Future of coding is essentially a new wave of creative tools that aim to democratize programming to a wider audience. Fileless, typeless, cloud-first, live development with no difference between building and running environments, but different environments for prod and dev, naturally. Only permanent objects in the cloud. For me, Future of Coding mostly means looking to history and exploring alternative computing concepts, often forgotten for years, anew.
Starting point is 00:56:30 I'm not against new ideas, but it often seems that there are none, just new implementations of something someone's already tried. Making a good implementation is often the hardest part, though. I'd like a bit of separation between more theoretical topics dependent typing, category theory, compilers from practical ones. It sounds hard to do, though, because something like a semantic editor seems to be a bit of both. Rediscovering good ideas and trying to make them more accessible. Excellent question. To me, it's future programming, specifically not via anything that resembles coding.
Starting point is 00:57:06 But I'm an avid end-user programming person, which is a smaller subset of the community, I believe. Other than that, it's whatever people say it is, except I'm concerned about having too many commercially-backed folk rocking up selling their no-code tools. It's not a big issue yet. Connect with people who have the courage to rethink everything that they currently do to survive. Those with the courage to saw off the branch they sit on, knowing that something deep inside their soul is a rocket pack if they just
Starting point is 00:57:36 force themselves to find it. The community is what it is, and I wouldn't want to impose my personal tastes, but for what it's worth, I would be most interested in discussions of topics further afield from present-day programming culture. The most interesting views on the future of programming come from other cultures, not Hacker News. Honestly, it's not encouraging. It feels like a place corrupted by mediocrity. Moonshot ideas are far and few,
Starting point is 00:58:04 while incremental ideas are far and few, while incremental ideas are often promoted. I would bet that a product that splashes hard in the industry won't be part of this community. It seems like all the dots are there, unfortunately we somehow stopped connecting them, busy with scrolling down content on our mobiles. What future is ahead of us then? Expressive, interactive, flexible tools to think, understand, communicate, and solve problems. Anything visionary that changes the politics or paradigms involved in building or adapting software. I just joined so I don't have any strong opinion, but I prefer an
Starting point is 00:58:41 emphasis on thinking tools rather than coding as such. Seems like there's plenty of that here, despite the name. Efforts to better restructure the relation between people and technology. Tangential, but I think a code of conduct might be a good idea insofar as community growth is concerned. This is a hard question. In theory, academic research, commercial projects, and personal projects are all fine, as long as they're attempting to explore or push some aspect of computing in a new direction that is different than the current mainstream. Even bringing up old ideas is often useful for this. Blatant spam or selling of a product or soliciting free work is always annoying, but other than that, most things seem reasonable. Anything that's dissatisfied with the current state of practice in computation and software development. There may be a new paradigm shift coming from mobile to AR, and if web is preferable to native, then exokit.org is the only thing I see so far. I'd also like to know the best way
Starting point is 00:59:41 for doing 3D printing based on programming code models. I'm a junior dev, so a lot of things fly over my head. It's nice to see the conversations. I'm also female, and I see a lot of guys going back and forth. Could be intimidating. Honestly, don't mind, since I don't participate. That quietly breaks my heart, but I'm going to do what I can to improve that gender balance in the community. It's all on the table. So many things are needed, so little funding.
Starting point is 01:00:12 Anything which tries to radically break with, that's just how things are, in making computers work for us. Methods and tools for system design. For me, it's about making programming and authoring or customizing of software and software tools as easy, direct, and fluid as possible. I also see a future where users can connect services and tools and their own data how and where they like, as if playing with Tinker Toys. The future of coding should be about how to democratize programming, empower people. That's what has the highest potential for impact, in my opinion. It's a community of early thinkers and adopters. Future of coding, for me, is more future of programming.
Starting point is 01:00:53 That is, how do we imagine and build new environments that help people, both non-experts and experts, easily going through the act of programming? This future is also about helping to create stuff and managing thoughts, sharing, collaborating on all this. Anything related to making the computing medium vastly better, more fun and easier for all of us, professional coders and non-professional users. In 10 times or more simplification of programming, dramatic improvement in fewer increments versus the status quo are quote, present of programming, dramatic improvement in fewer increments versus the
Starting point is 01:01:25 status quo, our quote, present of programming, where progress is debatable or happens in very small increments over longer periods of time. Everything related to how we may use technology in the future focused on the creation aspect. Alternatively, organizing, communicating data, processes, logic, thoughts. I like the expansive definition we seem to have been using so far. My own interests are primarily in making programming-like activities more approachable to a wider range of people, so I lean towards end-user programming stuff by default, but I like how conceptually diverse the current range of perspectives within the community seems to be. It means thinking about going beyond what we currently have so we someday solve currently intractable problems. Off-topic would be somebody trying to get answers for their
Starting point is 01:02:16 computer science homework. The future coding is anything that hints at what programming will, should, or could look like 10 to 50 years from now. It means rethinking everything and rediscovering the past with a new lens. I suspect just counting the comments on threads would give us an overview. It's a long topic. I'd say anything that relates to how people usually code now versus how they might in 50 years. I've been looking for a community like this for years. The ideas are very much inspired by Brett Victor, but didn't start with him. It's about the potential for more humane computing. I didn't study computer science, and I learned a
Starting point is 01:02:57 program out of necessity. And although I never intended to become a full-time software developer, that's exactly what happened. It's not really possible to build powerful systems and apps without doing it full-time because it's so absurdly complicated. I don't want to spend the majority of my time alive on earth in front of a computer debugging obscure runtime or compile time errors. There needs to be a better way. There needs to be lots of better ways. And finally, this community is about figuring out how we, as in us, as creators, can design better ways of enabling people to produce computational artifacts. That is, with some degree of interactivity or responsiveness. I think our visions need to start from fundamentals rather than incremental improvements like existing IDEs. I think our community need to start from fundamentals rather than incremental improvements like existing IDEs.
Starting point is 01:03:46 I think our community follows this spirit. I do too.

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.