skip to content
Podcast cover art for Studying the Stack
Podcast

Studying the Stack

Anthony Campolo joins Jamstack Radio to discuss RedwoodJS, an open source fullstack Jamstack framework built on React, GraphQL and serverless technologies

Open .md

Episode Description

Anthony Campolo shares his journey from music teacher to RedwoodJS community champion, exploring full-stack Jamstack frameworks and open source contribution.

Episode Summary

In this episode of Jamstack Radio, Brian Douglas talks with Anthony Campolo, a Lambda School student and self-described RedwoodJS cheerleader, about his unconventional path from music education into web development. The conversation centers on RedwoodJS as a full-stack serverless framework for the Jamstack, combining a React front end delivered by CDN with AWS Lambdas and GraphQL on the back end. Anthony explains how the framework's tutorial-driven development approach helped him learn tools like GraphQL and Prisma that his bootcamp didn't cover, and how documenting that learning process through a 12-part blog series became his way of contributing to open source without pushing code. The discussion broadens into comparisons with other React meta-frameworks like Blitz.js and Bison, the evolving trend of opinionated frameworks that make architectural decisions for developers, and the value of showing up consistently in open source communities through writing, attending contributor calls, and engaging on Twitter and Discord. Brian draws parallels to his own bootcamp experience with Ruby on Rails seven years earlier and emphasizes that non-code contributions like blog posts and community engagement remain an underused way for newcomers to distinguish themselves in the industry.

Chapters

00:00:00 - Introductions and Anthony's Background

The episode opens with a brief teaser before Brian introduces Anthony Campolo as a guest on Jamstack Radio. Anthony shares his unusual path into programming, explaining that he originally studied music, taught music, and ran a performing arts summer camp in the Santa Cruz Mountains before pivoting to coding. He initially explored machine learning and Python before gravitating toward web development and JavaScript.

Anthony describes enrolling at Lambda School to study full-stack web development and discovering RedwoodJS along the way. He notes that his prior self-taught experience with HTML, CSS, JavaScript, and React gave him an advantage over peers starting from scratch, allowing him to explore tools and frameworks beyond the bootcamp curriculum. This sets up the episode's broader theme of self-directed learning alongside formal education.

00:03:07 - What Is RedwoodJS and How It Fits the Jamstack

Brian asks Anthony to break down RedwoodJS and its architecture. Anthony explains that Redwood is a full-stack serverless framework featuring a React front end statically delivered via CDN, AWS Lambdas for serverless functions, and GraphQL for communicating with the back end. He notes that while the standard tutorial deploys to Netlify, Redwood now supports deployment through the Serverless Framework and Docker as well.

The conversation shifts to how Redwood compares to the broader trend of opinionated React frameworks. Brian reflects on how React was originally positioned as a library with no opinions, which led to fragmentation around folder structures, state management, and tooling. Both agree that frameworks like Redwood, Blitz.js, and others represent a welcome shift toward making decisions for the developer so they can focus on shipping products rather than debating configuration choices.

00:10:44 - Learning Through Tutorials and Blog Posts

Anthony details how he discovered RedwoodJS by listening to six different podcast appearances by its creator Tom Preston-Werner, then went through the entire tutorial and documented the experience in a 12-part blog series called "A First Look at RedwoodJS." He explains the concept of tutorial-driven development, where the Redwood team wrote the tutorial first and then built the code to support it, ensuring a smooth progressive learning path for newcomers.

Brian connects this approach to the legacy of Ruby on Rails, where DHH's famous "blog in 15 minutes" video helped popularize the framework. They discuss how many projects still lack tutorials that go beyond a basic hello world, leaving developers stranded after the initial setup. Anthony shares how he expanded on the official tutorial by explaining generated scaffold code that wasn't covered in the docs, turning his learning process into a valuable community resource.

00:16:19 - Contributing to Open Source Without Writing Code

The conversation turns to Anthony's growing relationship with the RedwoodJS core team and community. He describes how tweeting about his blog posts caught the team's attention, leading to invitations to public meetups, contributor calls, and deeper engagement on Discord. Anthony emphasizes that contributing doesn't require pushing code—his blog posts, podcast appearances, and talks earned him informal titles like "community champion."

Brian reflects on how he didn't have this kind of open source involvement early in his own career and highlights the unique opportunity Anthony seized by joining a young project where individual contributions carry outsized impact. They also briefly discuss Bison, another full-stack React framework that distinguishes itself by including continuous integration out of the box, before touching on the challenge of getting bootcamp peers interested in open source participation beyond just using the tools.

00:19:29 - Lambda School Structure and the Learning Gap

Anthony provides an inside look at how Lambda School operates, describing the daily rhythm of two-hour lectures, project building, and one-on-one grading sessions with team leads. He explains the difference between full-time and part-time tracks and discusses the income share agreement model that made the bootcamp financially accessible for him. Brian asks whether other Lambda students are involved in open source, and Anthony notes that while everyone learns open source tools like React and Node, there's still a gap between using these tools and actively participating in the communities behind them.

The discussion reveals how Anthony's self-directed exploration of RedwoodJS filled gaps left by the bootcamp's front-end-heavy curriculum, particularly around back-end development and databases. Both acknowledge that the challenge of assembling multiple tools into a working project during build weeks mirrors the realities of professional software development, reinforcing the value of frameworks that reduce that integration burden.

00:24:16 - FaunaDB Integration and Serverless Databases

Before transitioning to picks, Anthony highlights a project where he connected RedwoodJS with FaunaDB, replacing the default Prisma and Heroku Postgres setup with a fully serverless database. He explains that while Redwood's front end is serverless, the standard tutorial still relies on a traditional hosted database, and FaunaDB's GraphQL endpoint and distributed architecture using the Calvin Protocol offer a path toward true full-stack serverless deployment.

Anthony shares that this project was published on Fauna's blog through their Write with Fauna program, marking his first paid writing work. He points listeners to his various platforms—dev.to, Twitter, GitHub, and his personal blog—all under the handle AJK Webdev. This segment underscores how exploring integrations beyond a framework's defaults can deepen understanding and open professional opportunities.

00:27:03 - Picks and Closing Thoughts

Anthony shares several picks spanning tech and music. He highlights FSJam, a project by Christopher Burns exploring the broader full-stack Jamstack ecosystem across multiple frameworks and languages. Drawing on his music background, he recommends The Bad Plus, a jazz piano trio known for covers of rock songs, Marco Benevento's effects-driven jazz piano work, and the exuberant rock band Fang Island, whose music they describe as sounding like everybody high-fiving everybody.

Brian closes with his own picks, including an upcoming Jamstack book coming through the Party Corgi Network and a YouTube video he made about how he got his job at GitHub as a bootcamp grad without a CS degree. He draws a direct line between his own story and Anthony's, encouraging listeners to put themselves out there through blog posts, open source involvement, or community engagement as a way to stand out in the industry. The episode wraps at 00:31:20 with a call for future guests and topics.

Transcript

00:00:00 - Anthony Campolo

We get now that docs are really important. I don't think you have to make that argument anymore, but having a really good core tutorial is still kind of a thing that a lot of projects don't have.

So the fact that we're learning open source tools means that you have to be aware of it, because when they're explaining these tools to us, they have to reference people who created them and where they came from. So people know who Dan Abramov is, but the idea of participating in open source is where there's still that gap.

So it's a question of where you are in the stack and how many layers you want to go with it.

00:00:34 - Brian Douglas

Hey, this is Brian, and you're listening to Jamstack Radio, a biweekly series where we discuss the Jamstack, a new way of building websites and apps that are fast, secure, and simple to work with. Jamstack Radio is brought to you by Heavybit, a program dedicated to helping startups take their developer products to market. For more information, visit Heavybit.com. If you're interested in being a guest on the show or if you'd like to suggest a topic, find us on Twitter at Jamstack Radio.

Welcome to another installment of Jamstack Radio. On the line, we've got Anthony Campolo. Welcome, Anthony.

00:01:05 - Anthony Campolo

Hey, thanks for having me. I'm such a huge fan. I'm really glad to be here.

00:01:09 - Brian Douglas

Awesome. Well, I'm flattered, honestly. I know people listen to this thing and I keep putting these things out, and I'm just happy to talk about the Jamstack, which is why you're here. So do you want to tell the listeners what your expertise is and maybe a little bit about your background?

00:01:24 - Anthony Campolo

Yeah, absolutely. So I'm someone who's coming to this whole coding, programming world from a different background. I originally studied music, and I was a music teacher for a little while, and I ran a performing arts summer camp for a little while called Youth Camps. I describe it as like School of Rock in the woods, but then they also had film and dance, and it started as a theater camp originally, so that was a lot of fun.

But I eventually just kind of wanted to do something different and got really into coding, originally through kind of machine learning data science stuff, and I was learning Python. I didn't get a whole lot of progress there because there were a lot of challenges, and I eventually kind of looked more towards the web development JavaScript side. Now I'm studying full stack web development at Lambda School, and I got really into RedwoodJS and have been writing articles about it and just learning a lot about the framework. It's been great.

00:02:29 - Anthony Campolo

I've learned a lot, and I've gotten really into the whole open source movement and the Jamstack, because Redwood is this idea of full stack Jamstack. How do we take the ideas of the Jamstack and extend them throughout the whole stack?

00:02:43 - Brian Douglas

Okay, yeah. And just for dad jokes and everybody who's waiting for me to say this, when you say it's a School of Rock in the woods, it also could be like Camp Rock, which is the Jonas Brothers.

00:02:55 - Anthony Campolo

Yeah, that's probably what most people would think of.

00:02:59 - Brian Douglas

Yeah, it depends on if you're showing your age. Gen Z or millennial.

00:03:04 - Anthony Campolo

Yeah, thoroughly millennial here.

00:03:07 - Brian Douglas

So I'm curious to dig into RedwoodJS and understand what you mean by fitting in the Jam. Do you want to give us an overview of what the stack looks like there and how it fits?

00:03:17 - Anthony Campolo

Yeah. So it's called a full stack serverless framework for the Jamstack. The idea being that it has a React front end that's statically delivered by a CDN, so something like Netlify, and is using AWS Lambdas under the hood, and then uses GraphQL to talk to the back end. So it's a full Jamstack application that can basically be deployable with just git push.

00:03:48 - Brian Douglas

Excellent. Yeah. And I heard Netlify and then some lambdas as well. You just said Netlify Functions, or were you specifically deploying this to AWS?

00:03:56 - Anthony Campolo

Yeah. So Netlify uses AWS Lambda under the hood. So yeah, if you follow the Redwood tutorial, you deploy to Netlify, but it has alternate ways to deploy it. You can do it with the Serverless Framework, and they just figured out how to do it with Docker. So now you can do it on an EC2 or any sort of container you want. It's deployable in almost any fashion at this point.

00:04:19 - Brian Douglas

That's interesting. And I know you had just mentioned that you are currently at Lambda School, or did you complete it?

00:04:27 - Anthony Campolo

Yeah. No. So I'm still a student. I was learning a lot of this stuff before I started. A lot of people, I think, who go to boot camps get the idea, they want to learn to code, and then they go to the boot camp, and they're going from complete zero.

Whereas I came in already having spent like a year trying to learn Python and then probably six months or so learning HTML, CSS, JavaScript, your web fundamentals, and a little bit of React. And then mostly the boot camp was like a really React-heavy thing. They say it's full stack, but it's three months of front end and one month of back end. So it's kind of like a front end curriculum with a little bit of back end tacked on at the very end. So I've been kind of filling in the gaps of the back end knowledge. I've learned more about how to actually create a full stack application from learning Redwood than I did from getting my full stack web development kind of bootcamp thing.

00:05:20 - Anthony Campolo

And it's not that it hasn't been valuable. I've learned a ton of stuff, don't get me wrong, but there's kind of a gap there.

00:05:26 - Brian Douglas

Yeah, yeah, and it sounds like a testament to you as well, because I imagine most Lambda School students are not coming with the experience that you came with, with the year and six months of web development on your own, but also Python on your own. So because you had that, you were able to bypass all the beginning stages. You're able to go to the next level of actually getting the stuff in production and even having the experience, like the Serverless Framework, which it sounds like you have at least been exposed to. And even with Netlify, you're able to sort of dig slightly deeper.

And actually, I'm a bootcamp grad as well. So I went through a program roughly seven years ago.

00:06:00 - Anthony Campolo

And what was your curriculum at the time? Was that like Ruby on Rails?

00:06:03 - Brian Douglas

It was Ruby on Rails.

00:06:04 - Anthony Campolo

Yeah.

00:06:05 - Brian Douglas

It was full stack at the time. So back in 2013, Ruby on Rails plus jQuery was full stack, and that was beautiful because I was able to breeze through the basics of the Rails tutorial and then move on to actually doing what you're doing. So I was able to touch AWS, touch S3 and EC2s, and figure out that in addition to also at the time, Heroku was probably just the main focus of a lot of the boot camps and deploying stuff.

00:06:31 - Anthony Campolo

Yeah, that's what we use at my boot camp, and the Redwood tutorial uses Heroku as well.

00:06:36 - Brian Douglas

Excellent. Yeah. So I'm curious about this. RedwoodJS, with its sort of coupling of the front-end JavaScript framework with the back end as well, it seems like there's a movement. I actually had Brandon from Blitz.js on the podcast a couple episodes ago. And what's fascinating is that when React came out like roughly five years ago, the whole mantra was like, this is a library. It's not a framework. It's a library. You can make all the decisions you want.

And then that's what people did, and everybody was like, you can go into the minutia of trying to figure out, like, oh, do we do double quotes, single quotes? But take that to the point of React and like, how are you going to structure your Redux? I was going to call them containers.

00:07:21 - Anthony Campolo

Just where you put your files, like what your folder structure is, all of that.

00:07:25 - Brian Douglas

Yeah. So I think the community figured that all out and they all had very strong opinions. And now we see this sort of, I don't want to say explosion, but there's a handful of React frameworks where all the decisions are made for you. And the goal is literally just get the thing up and deployed and start working on the business side of whatever the site is or the app is.

So it sounds like Redwood is in a similar vein, where I can walk in with a lot of opinions, but those don't matter. Like I can sort of ship an app with Redwood. Is that what we're looking at?

00:07:52 - Anthony Campolo

Yeah, the idea is that it's going to be something that you can both develop very quickly, iterate very quickly, and then deploy it and get it up very quickly as well. So that's definitely what it's aiming for because it's trying to take all of these new tools we have and integrate them in a way that makes them a little more beginner-friendly, a little more approachable.

So things like GraphQL and things like serverless and all of these ideas that are floating around and are hard to kind of piece together. And I find it really fascinating because if you look at it, you had React, GraphQL, Relay, and the Flux architecture, which people kind of created their own libraries from. All this stuff was kind of released by Facebook piecemeal, and now people are trying to tie these all together in a way that's coherent. That's kind of how I look at it.

And you have something like Blitz, which is built on top of Next. So you have a framework and then a framework on top of the framework, whereas Redwood's kind of owning the whole space that Next and Blitz would do together.

00:08:50 - Anthony Campolo

So it's a question of where you are in the stack and how many layers you want to go with it.

00:08:56 - Brian Douglas

Yeah, yeah. And I think it's up to the developer to decide. Or perhaps the developer's manager to decide.

00:09:02 - Anthony Campolo

Yeah. It's great to have choices.

00:09:03 - Brian Douglas

Yeah. But I like the fact that I can now, because I'm at the point in my career where I don't really care about where you put your folders and how that structure works. You tell me what it is and I'll figure it out. And I want the opinions at this point, even though my career has grown alongside React, and I've seen the transition of how there was a tweet that went out a couple weeks ago, or this week, actually, around the evolution of React by year and how people wrote components, because it seemed like every React Conf there was a new way to write your components and like, that's great. But also, I don't want to rewrite my entire React code every time there's a change. I'd love to have a framework sort of dictate updates when those need to happen.

The beauty of things like Ruby on Rails is that it didn't write the code for you, but it almost did. But if you kept within the Rails, I can migrate, at least I can today. I can migrate from different versions of Rails. I know some people are probably sitting here in Rails two dot whatever apps or 3.2 apps and like, no, this is not the way it is. I can't upgrade because the path is broken. But I think nowadays a lot of frameworks have figured out we should make sure companies and businesses are not stuck or SOL because we made a weird decision.

Shout out a framework that made a lot of those decisions for everybody, and it's still chugging along with everybody else behind. But I won't punch down and mention that framework.

But I guess what I'm getting at is I'm curious about your onboarding because, again, you're currently in Lambda School. I just want to make that clear for the listener. You're still in the boot camp, but you're not only using probably a tool or a framework that's not taught in the boot camp, I assume. Is that correct?

00:10:44 - Anthony Campolo

Yeah, yeah. This is stuff I learned on my own because I listen to a lot of podcasts like this one. And when it first came out, Tom did a podcast blitz. So he did JS Party in March, Full Stack Radio in April, and then Software Daily, Front End First, ShopTalk, and the WAPI Radio one, which was like only a 24-hour thing that happened only once. So I listened to all six of those.

So that was kind of where I got all the ideas of how it worked. And then I went through the whole tutorial and wrote essentially a blog series documenting me going through the tutorial. So it's called A First Look at RedwoodJS, and it's 12 parts. The first four parts are the history and what is Jamstack, what is serverless, and why do people want a full stack React framework at all? And it's like the history of React and all that. So I was really interested in just the history of the framework and spent a lot of time writing about that.

00:11:41 - Anthony Campolo

But then the tutorial itself is super approachable because the tutorial is kind of what drives the project. They call it tutorial-driven development, where they created the tutorial and then wrote the code to make the tutorial work.

00:11:55 - Brian Douglas

That's amazing.

00:11:56 - Anthony Campolo

Readme-driven development as well, where you would write your readme and then make your code fit your readme. So it kind of guarantees that there's a way for people to progressively learn the framework, because there's a lot of things you have to learn to use it. You have to learn GraphQL. And I didn't really know how to use GraphQL before doing this because you don't learn GraphQL in the boot camp either.

So you're kind of shown how to write GraphQL queries and then how to create GraphQL schema definition language. And it starts by generating a bunch for you. And then it has you build a contact form. So you learn how to basically create in the Redwood way after it generated a bunch of stuff for you. So it's really fascinating.

And I really just think it's a whole different way of thinking about the use of tutorials, because we get now that docs are really important. I don't think you have to make that argument anymore, but having a really good core tutorial is still kind of a thing that a lot of projects don't have.

00:12:53 - Brian Douglas

Yeah. I mean, going back to the mantra of Rails, and I know Tom, he did a lot of Rails back in the day. He built GitHub in Rails. But you can't really sleep on those tutorials because that's what really drove Rails into its sort of forefront of actually being taken seriously, which is funny because it was like the blog in 15 minutes video that DHH made. But getting one of those tutorials out in the open and having it click for people to say, oh, this is the hands-on experience where I can now get my feet wet. I can actually understand this.

And it sounds like you just went back to the history of RedwoodJS. And what was the original name of RedwoodJS? I think I asked you already.

00:13:30 - Anthony Campolo

Yeah. So it was first called Hammer.

00:13:32 - Brian Douglas

Hammer. That's right.

00:13:32 - Anthony Campolo

Yeah. And then there was some conflict, so they changed it to Redwood. But I like Redwood and it fits me well because my camps were in the Santa Cruz Mountains, which is where the redwoods are. It's like the redwoods that Tom is referencing.

00:13:46 - Brian Douglas

Oh, excellent. Yeah. I mean, it's nice that I think the name Hammer was also apt. I remember it was something tongue in cheek as well, but I guess what I'm getting at is like the fact that someone can actually understand it. The library is huge.

One thing I tend to complain about a lot when I'm live streaming on Twitch is the Twitch API, because they build a lot of stuff around that just to engage with the community. But the API is kind of like a lot of the tutorials that I find. You integrate the API, you get your token, and then you do like a console.log and then that's it. There's very few tutorials that actually go beyond that, and perhaps I haven't found them. But yeah, it was kind of like, wow, this is amazing. Like everybody's building on top of this thing, but it doesn't get past the hello world. And then you're on your own. And it just seems like a lot of opportunity.

00:14:32 - Brian Douglas

Listeners, if you want to build stuff on Twitch, please write a blog post or tutorial. But I guess, what possessed you to actually write these blog posts as well? Because perhaps, was it the free time you had since you already knew the basics, or...

00:14:43 - Anthony Campolo

Yeah, it was me wanting to get into some sort of open source framework and learn something substantial, because I'm aware there's a lot of interesting things happening, like Vue 3 just dropped. So you have this whole other set of frameworks built on top of Vue. You have Svelte and Sapper.

And so once I kind of got the lay of the land and understood where the interesting projects were, I was like, okay, well, I learned React, so I should stay within those boundaries because that's what I understand at this point at least. And so you had Redwood and Blitz and you had Gatsby and Next, which were at this point three or four years old, really established. So it seemed like I could have more of an impact getting into Redwood. And it was just the most interesting. It seemed really fascinating, and I thought the history was interesting. I thought the tech and how it was being used was interesting. I'd heard about all of these things that it used, like GraphQL and lambdas, but I didn't know anything about them or how you would even use them.

00:15:40 - Anthony Campolo

So I don't know, it just kind of hit all the right points and it just seemed like the thing to go for. And so I just started doing it and it was easy to keep doing it because the tutorial was so great, and I was basically just following along with that and kind of writing and then referencing the docs and then kind of explaining things in my own way, or explaining things that I felt aren't really explained in the tutorial.

Like when you do the scaffold command, it gives you the whole CRUD interface. And I spent a whole blog post just explaining all that code. And that's something that's not even in the tutorial at all. So I kind of expanded upon it as well. And yeah, it's been really great. So I mostly just did it to learn it, and it turned out to also be a good way to contribute back, I think.

00:16:19 - Brian Douglas

Yeah. And I'm curious now, with all this content that you've been writing, about your relationship with the core team of RedwoodJS, because now at this point there's a team involved and contributors. Tell us about how you sort of interact with the actual open source project as a whole.

00:16:33 - Anthony Campolo

Yeah. So they are very open to getting community involvement. They are consciously trying to get as many people involved and to get them engaged. And so they saw that I was putting these out, and they responded. They would kind of tweet back at me when I would tweet them.

You can't discount Twitter and how easy it makes it to connect with people and just at someone. So they have public meetups and I would go to those, and then they have contributor calls. And eventually I started going to the contributor calls. And you just kind of have to just show up.

It really is just a matter of showing up, and you don't have to contribute back a ton. I'm not pushing code, but by doing these kind of blog posts, and now I'm doing podcasts, and I've done a couple of talks as well.

00:17:19 - Anthony Campolo

So I call myself the RedwoodJS cheerleader, and Drew called me the community champion, I think. So yeah, I just am trying to kind of tell people about it and let them know my journey with it and what I've gotten out of it and why I think it's interesting and people should at least know about it.

00:17:37 - Brian Douglas

Yeah. I mean, it's fascinating. If I was in your shoes seven years ago when I got in the industry, I didn't have an in with any sort of open source project or even know or have the foresight to even go and participate in the community by providing content. My focus was streamlined: Ruby on Rails, make sure I understand that. And again, Ruby on Rails wasn't at the sort of infancy that RedwoodJS was.

So like you sort of got in at an opportune time to be able to contribute and make a huge impact on the community. And again, as I'm saying, like looking at the scope, and you named all the frameworks I can think of when you talk about built on top of React and on top of Next.js. So like just being a part of that sort of next wave of React libraries or frameworks.

00:18:22 - Anthony Campolo

Yeah, there's another one actually, Bison, that I think is really, really interesting. And people should check out what it has that Blitz and Redwood don't have. It has CI, it has continuous integration built in by default. So I think that's really fascinating.

00:18:37 - Brian Douglas

Yeah. How does that run? I'm curious how you would embed CI into a framework.

00:18:41 - Anthony Campolo

I think it's just because, if you use it with GitHub, you can do that with GitHub now. So when I tried to push a doc fix to the README, I found a typo in the README. These are the types of things I push into the repos. Sigh.

Because you have to give it semantic commit messages. It's a docs fix, like docs colon, and then do the thing. So that was super interesting. And that's a level of sophistication that the other ones don't.

00:19:07 - Brian Douglas

So wow. And that's huge too. I didn't actually check out Bison at this point now, but I'm also curious. Like I get the engagement with the open source team, and I think that's huge, especially at your beginning stages of your career. But I'm also curious, how does this play into your current learning at Lambda School? Like, are there other learners at Lambda School that are involved in open source the way you are?

00:19:29 - Anthony Campolo

I have a buddy who is kind of getting into some of this. He's really interested in Svelte, so I'm kind of trying to nudge him in that direction. His name's Corbin, but Lambda is massive. It has like 3,000 students, I think, at this point, and I engage with like a dozen people in my Lambda experience. So it's really hard for me to say anything about what other people are doing.

I think a lot of people, they see open source, especially because we're learning React. So the fact that we're learning open source tools means that you have to be aware of it, because when they're explaining these tools to us, they have to reference people who created them and where they came from and like all this stuff. So we're learning Node, we're learning Express, we're learning React. And so everything we're learning is open source tools. So people know who Dan Abramov is and stuff like that.

00:20:17 - Anthony Campolo

But the idea of participating in open source is where there's still that gap.

00:20:21 - Brian Douglas

Yeah. And is this a full-time program or do folks do this part time?

00:20:25 - Anthony Campolo

You can do either. I started full time and then switched to part time. So full time is nine months, part time is 18 months. So it's made to be very flexible. And it's really the idea of trying to give the opportunity of learning to code to anyone, because it's also an ISA, income share agreement. So you don't pay anything upfront, and then you give a certain cut of your income for the first two years.

And some people are really weirded out by that, but it's been the only way that I could have gone to a boot camp like this. So for me, it's worked out well. And you know, there's challenges with it. There's difficulties, especially with remote learning that are kind of inherent to the medium. But the way they tackle it and the way they structure things, they're at the forefront of how you can do this at all. So it's been a fascinating thing to see and participate in.

00:21:13 - Anthony Campolo

And I think it's been good.

00:21:15 - Brian Douglas

Yeah. And is it all self-paced learning like interacting remotely or do you have like classes you attend? I'm pretty much unfamiliar with Lambda School. I just know it exists and that's it as far as I know.

00:21:26 - Anthony Campolo

Yeah, totally. Yeah, yeah, it's pretty involved. So if you're doing full time every day, you have a two-hour lecture and then a project you have to build, and then a one-on-one with your team lead, where you're essentially grading your project from the day before.

00:21:40 - Brian Douglas

Gotcha.

00:21:40 - Anthony Campolo

And so if it's part time, it's just that, but it's spaced out every other day instead of being every day. So you have a day of lecture and then you have a day of just working on a project and being graded, and then you have a day of lecture, and so on and so forth. And then each month is a unit. At the end of each unit, you do a build week where you kind of build a project, and the build week is a total cluster. There are very few build weeks I think succeed. I think people learn anyway. But it's really hard to actually get your final project shipped and functioning just because getting all these tools to work together with beginners trying to use them is ridiculous.

00:22:18 - Brian Douglas

Yeah. Well, as someone who writes code for a living, it's also very similar in the full-time world.

00:22:23 - Anthony Campolo

Yeah, I can imagine.

00:22:25 - Brian Douglas

Yeah, there's some projects I've just been stringing along for the past weeks on top of weeks, and I've got a lot of open-ended projects. But that's just the life of a developer. And yeah, thanks for actually going through the Lambda School structure too, because I was aware of it. I didn't realize it was so big.

It also seems kind of open-ended, like where you can have the freedom to go do something like this and still sort of show up for these part-time meetings as well. And I think one thing that's also interesting is like the fact that you now have access to professional engineers as well through RedwoodJS, which you mentioned that there's a public forum and then there's like contributor meetings. Can you explain?

00:23:04 - Anthony Campolo

There's a Discord.

00:23:05 - Brian Douglas

Oh, in a Discord as well.

00:23:06 - Anthony Campolo

Yeah, yeah. So there's a lot of different ways to kind of get involved. For the calls, it's for people who are kind of consistently contributing, but anyone can kind of get involved. There's no qualifications you need or barriers behind it. Like if they see you get involved, then they'll invite you to it.

00:23:21 - Brian Douglas

That's pretty cool. And then can you just briefly talk about the contributor meetings and like who leads the meeting? Do they talk about issues with the docs and the tutorials or stuff like that?

00:23:32 - Anthony Campolo

I mean, it's kind of fluid depending on who's there, because like I said, they'll pretty much bring anyone into the meeting who's contributing. So everyone's introducing themselves, kind of saying who they are, what they've done with Redwood, stuff like that.

But if you want to know more about that, you should talk to David. David's like the community lead, and he can speak more to like the whole bigger structure and how it all works. But yeah, it's basically just like trying to have a space where we can connect and see what everyone else is doing and ask questions, and then also kind of get to know each other at the same time. So it's really just trying to figure out how do we work together in this kind of remote environment and make it worthwhile for everyone?

00:24:16 - Brian Douglas

Sounds good. Yeah. Anything else you want to talk about Redwood before we transition to the picks?

00:24:22 - Anthony Campolo

Let's see. One other thing that I would want to talk about, just because FaunaDB is a really popular database in the whole Jamstack area, is FaunaDB. And so I built out this project of connecting Redwood and FaunaDB, and it was really great because I learned a whole bunch about the framework that I didn't learn from the tutorial.

Because one thing we didn't really talk about is that if you go through the tutorial and you kind of use Redwood the way it's normally used, Prisma is really heavily integrated with it, which is a query builder. It's a little bit like an ORM. So that does a lot of your work with the database, but you can actually take that out and then hit a database that has a GraphQL endpoint. So Fauna, since they have a GraphQL endpoint, you can do all of your queries and mutations just through that. So I kind of just figured out how to get them to connect together. And it's also totally serverless. So it's the idea of Redwood right now.

00:25:19 - Anthony Campolo

Even though it's a serverless front end, you still end up connecting to a Heroku Postgres backend. So your database is not serverless. It's not like distributed globally the way you'd want for like an actual full stack Jamstack.

So by using FaunaDB, which uses the Calvin Protocol and Raft and all this other stuff underneath to basically get distributed transactions and distributed consensus, you can actually get your globally distributed database as well. So I think that's super interesting. It's interesting from a theoretical point of view. And it's also something that, just like tinkering and figuring out how to make it work, no one had ever done before. So yeah, that was the thing I did.

00:25:57 - Brian Douglas

Cool. And where do you write your blog posts? Like where can folks find these links?

00:26:02 - Anthony Campolo

Yeah. So dev.to slash AJK Webdev. AJK Webdev is my Twitter handle. It's my GitHub. If you do AJKwebdev.com, you can get my actual blog. But most of my writing is kind of distributed equally throughout all of these. So you'll see the same stuff everywhere.

And the actual Fauna post was published on Fauna's blog because they have the Write with Fauna program.

00:26:30 - Brian Douglas

Oh, nice.

00:26:31 - Anthony Campolo

And so it was the first time I'd ever been paid to write professionally. And it was really cool. They helped me figure out the outline and the topic, and it was a trip. It was really cool.

00:26:41 - Brian Douglas

Very cool. Yeah. So hopefully listeners, check out your dev.to posts. There'll be links in the show notes too as well, which we have all your links as well. But with that being said, thanks for chatting about RedwoodJS. I'm going to transition us to the picks. These are jam picks, things that sort of get us going, keep us happy in these times. And I see you actually have some picks. Do you want to share your picks first?

00:27:03 - Anthony Campolo

Yeah, absolutely. So the first one is FSJam. The Twitter handle is FSJam org. This is something that Christopher Burns is working a lot on. And it's the idea of full stack Jamstack, but in a larger idea than just Redwood. So looking at these other frameworks like Bison or Blitz or even frameworks in other languages or other frameworks aside from React that may be doing these kinds of ideas.

So yeah, that's a thing that we're kind of going to start putting more content and effort into that I think is going to be really interesting and kind of more broadly look at this idea of what it means to build full stack Jamstack. And then I also have some music picks. So I was a musician before getting into code. So I obviously have tons and tons of love for music, and I want to recommend a couple kind of like modern, almost jazz artists that I think people would actually really enjoy because it's not what you would think.

00:28:04 - Anthony Campolo

It's a lot different. The Bad Plus is a piano trio: piano, stand-up bass, and drums. And they do jazz stuff, but they also do covers of popular songs. So they do like a Smells Like Teen Spirit cover. They do an Iron Man cover that's really, really cool. And yeah, check those guys out.

And then Marco Benevento is also kind of like a jazz piano trio, but instead of being acoustic, it's electric bass and the piano player runs his piano through effects pedals. So he kind of uses it like a guitar player would use effects pedals to create these crazy electronic sounds. It's really great.

Both of those guys, The Bad Plus and Marco Benevento, I saw at Yoshi's back in the day, which is like one of the best jazz clubs in the world in Oakland. So yeah, super, super highly recommend both those. And then the last one is Fang Island. These guys have the best description for their music. They say that their music sounds like everybody high-fiving everybody. So it's just like really happy, good fun, get-together kind of music. So yeah, those are my picks.

00:29:12 - Brian Douglas

Awesome. Yeah, I love those picks. I'm definitely going to check out some of these jazz groups. I've actually never been to that jazz club, and I live here in Oakland. But yeah, I'm going to mention my pick.

First pick is The Jamstack Book. This is a book that I saw coming through the Party Corgi Network. The individual is actually going to be on the podcast really soon.

00:29:31 - Anthony Campolo

Yeah, I've definitely seen this.

00:29:32 - Brian Douglas

Yeah. So I love that this Jamstack content is coming out and folks are sort of like stepping into this jam and sharing their gems and knowledge. So definitely check out that book, and then also check out the future episode that we'll have.

And then the other one is going to be. So I mentioned previously on this podcast, I have a YouTube channel that I've been sort of shepherding during, now that I work from home 100% and leveraging some of this free time to do some stuff. So actually, the question was proposed on Twitch of all places. Someone asked how I got my job at GitHub, and the story is long, so I kind of condensed it into like, this is what happened and now this is where I'm at, and you can do it too. So I created a video. I sort of condensed it and had some preamble of how I got to where I am just in general, and it really just comes down to some of the stuff you had mentioned as well, like this writing blog post, putting yourself out there.

Like I am a bootcamp grad. I didn't have a CS background. I learned Ruby on Rails and then eventually got into open source, and I think a lot of those things helped set a foundation. And I think a lot of times people can be allergic to hearing that information, saying that I should just be able to apply for jobs and get them. But what I'm getting at is you don't have to do this. You don't have to write a blog post. You don't have to go attend these meetings with RedwoodJS, but because you don't have to, it means not a lot of people do.

So it's an easy way to set yourself apart. And I found so much correlation in this conversation and learning how you sort of are now coming up. And eventually you'll probably end up doing some really great things, or perhaps you might be contributing to Redwood full time. Who knows?

But I just wanted to share that video because I shared my story, you just shared your story, and I want to encourage anybody listening to just put yourself out there and join an open source project, write a blog post, do both of them.

00:31:20 - Brian Douglas

Do none of them, you know, pick whatever path you'd like. So with that being said, Anthony, I appreciate you coming on and chatting with us. And listeners, keep spreading the jam. That's all the time we have for today. If you're interested in being a guest on the show or if you'd like to suggest a topic, find us on Twitter at Jamstack Radio. To learn more about Heavybit, visit Heavybit.com. And while you're there, check out their library. It's packed with amazing talks on sales, marketing, product, and general management from founders of developer tools companies and other industry leaders.

On this pageJump to section