Join us to chat about Jamstack, coding the web, the people who code the web, and sometimes, lollies. With love from Netlify 💙.
Welcome to Remotely Interesting brought to you by Netlify. The Jamstack definition is a lot different than it was when it first released, so let’s talk about where the Jamstack is today and how people can get involved with special guest Domitrius Clark!
🔌 Plugs
👥 Panelists
People who were remotely interesting:
As always, we hope you find it remotely interesting.
Welcome to Remotely Interesting brought to you by Netlify. There’s been a lot of buzz about “serverless” and what it is, but what does it mean to “think in serverless?” After all, it’s one thing to know what serverless means, but it’s another to be able to integrate it into strategic thinking. And in this episode, we have a special guest, Ivan Zarea, to help us with that serverless mindset.
🔌 Plugs
👥 Panelists
People who were remotely interesting:
As always, we hope you find it remotely interesting.
Welcome to Remotely Interesting brought to you by Netlify.
Let’s face it. Open source is a big world and it can be intimidating to navigate. In this episode, we’ll talk about our experience with and what it’s like to contribute to it.
🔌 Plugs
👥 Panelists
People who were remotely interesting:
As always, we hope you find it remotely interesting.
Welcome to Remotely Interesting brought to you by Netlify. Let’s face it. As developers, there are SO many tools for us to choose from! 😵💫 It’s not wonder why many of us develop decision fatigue and paralysis as the industry continues to grow and expand. In this episode, we talk about how we navigate the complex ecosystem and some of our favorite tools for being productive.
🔌 Plugs
👥 Panelists
People who were remotely interesting:
As always, we hope you find it remotely interesting.
Welcome to Remotely Interesting brought to you by Netlify. In our first official Debate and Switch episode, Phil, Tara, and Ben are debating (and then switching) on the topic of Monopolizing Technology: Is it good? Is it bad? You’ll have to listen to find out which it is!
🔌 Plugs
👥 Panelists
People who were remotely interesting:
As always, we hope you find it remotely interesting.
Welcome to Remotely Interesting brought to you by Netlify. If you are thinking about making the transition from an engineering role to a management role, then this episode is for you. In this session, we'll explore what our experience has been, and things to watch out for if you choose to make the switch!
🔌 Plugs
👥 Panelists
People who were remotely interesting:
As always, we hope you find it remotely interesting.
Welcome to Remotely Interesting brought to you by Netlify. In this episode, we talk about change management and driving forward critical-but-often-undervalued work with special guest Thuy Doan (pronounced Twee and Doan rhymes with “cone”! 🍦) from Prodigy Education. A company that aims to help every child in the world love learning. Their main products are currently a Math MMO for elementary school students and online tutoring.
🔌 Plug
👥 Panelists
People who were remotely interesting:
As always, we hope you find it remotely interesting.
Welcome to Remotely Interesting brought to you by Netlify. In this episode we talk about our thoughts on the good, bad, and ugly of a workplace environment. You’ll learn about some of our distractions, uncomfortable chairs, Jason’s shaking standing desk, and much more.
👥 Panelists
People who were remotely interesting:
🔌 Plug
As always, we hope you find it remotely interesting.
Welcome to Remotely Interesting brought to you by Netlify! Since the toolchain around web development has become a lot more complex over the years, the path for getting started has felt more convoluted. However, is this really the case? Join us as we talk about what is considered “minimum viable web dev knowledge.”
🔌 Plug
👥 Panelists
People who were remotely interesting:
As always, we hope you find it remotely interesting!
Welcome to Remotely Interesting brought to you by Netlify. In this episode, we talk about the results of the Jamstack Survey and what we learned from it.
🔌 Plugs
👥 Panelists
People who were remotely interesting:
🔖 Chapters
As always, we hope you find it remotely interesting.
Welcome to Remotely Interesting brought to you by Netlify.
Most of us have heard things like CDN and caching when it comes to optimizing what we deliver to our end users when building sites and apps, but recently there’s been a trending terminology that’s crept up: “The Edge.”
🔌 Plugs
👥 Panelists
People who were remotely interesting:
As always, we hope you find it remotely interesting.
Welcome to Remotely Interesting brought to you by Netlify.
Whenever someone buys a domain, we all know that that side projects always gets prioritized and shipped to production in record time right? As if! 😅 If you're anything like us, you've bought plenty of domains where the intent is there and sadly it never manifests to anything more than another line item in your domain registrar. Well, in this episode, we talk about those unused domains as well as an initiative we kicked off earlier this year to help us build something from our dusty domains.
People who were remotely interesting:
Plugs mentioned in the show:
As always, we hope you find it remotely interesting!
Welcome to Remotely Interesting brought to you by Netlify.
You have values (maybe) and the company you work for has values. Do they align and is that important? We're joined by the only guest to ever come back to our show, Thuy Doan, to get the tiniest sample size of opinions on the matter and learn from each others experiences.
People who were remotely interesting:
As always, we hope you find it remotely interesting.
🔌 Plugs
Welcome to Remotely Interesting brought to you by Netlify.
People who were remotely interesting:
As always, we hope you find it remotely interesting.
Welcome to Remotely Interesting brought to you by Netlify. To day we have the pleasure or meeting up with Evan Weaver, CTO of Fauna to hear about his Jamstack journey.
People who were remotely interesting:
And special guest: Evan Weaver, Fauna CTO
Who is he?
The Jamstack Journey
Being OK with the Weird
Where to Focus First
CHCHCHCHChanges
Phil Wants to Talk to About Trust
Delegating Databases & Legacy Struggle
TidBits & ThoughtThings™️
What is something old that you have that getting rid of isn't easy?
Get started w Fauna for free! & join the slack community :)
As always, we hope you find it remotely interesting.
Welcome to Remotely Interesting brought to you by Netlify.
People who were remotely interesting:
SHOW NOTES:
Who's got a favorite database?
Structured vs. Unstructured Data
How do you use DBs in a Jamstack architecture?
DX & How we choose DBs
Who needs the top-tier?
What features do we look for?- a clear, understandable API
- an easy onramp to getting started/getting data
- what am I building & what are the cost implications (rate limits, etc.)
- even really brilliant, smart people like Jason mess up, a story about loops
- having a playground like GraphiQL
- a discussion of GraphQL hesitancy
- Cassidy's professional conclusion, "ehhh"
- Jason talks about depends
Cassidy exhibits her humor mastery and it shines like the sun! 🌤
a resource! https://serverless.css-tricks.com/another resource: https://graphql.org/learn/
a fantastic Phil Supabase resource: https://ntl.fyi/3BsJheT
TidBits & ThoughtThings™️What is the worst form of storage you own?
As always, we hope you find it remotely interesting.
TRANSCRIPT:
Welcome to Remotely Interesting brought to you by Netlify.
People who were remotely interesting:
Show notes:
As always, we hope you find it remotely interesting.
Welcome to Remotely Interesting brought to you by Netlify.
People who were remotely interesting:
& Special Guests
SHOW NOTES:
What is research & how is it done?
What is the motivation for research?
You are not your user
When do you bring in research?
Research Interviews aka "business therapist"
From abstract to concrete
What skillz do you need?
Making research a part of Netlify
Join us in the research! https://www.netlify.com/research-program/
TidBits & ThoughtThings™️If you had to move to a different field of research, what would it be and why?
As always, we hope you find it remotely interesting.
TRANSCRIPT:
Welcome to Remotely Interesting brought to you by Netlify.
People who were remotely interesting:
& we welcome, Jon Perl & Laura Cressman from QA Wolf 👏!! In this episode, we learn about testing from some people who hate testing. BUT really what they hated was all the setup and how hard it was to get up and running with testing. SO, they solved that problem with QA Wolf. Let's jump in!
Phil makes a pun- we all squirm & boo
What is QA Wolf- setting up testing is such a pain, so Jon & Laura made automated testing as easy as manual testing
- a hosted sass that while you use your site it creates tests based on actions
- hit the ground running instead of being stunted by setup
No One Likes Creating Tests- QA Wolf is testing for people who hate testing
- QA Wolf "testing for n00bs"
- a lingering fear that in testing you'll break something, get rid of that
The Different Types of Testing- QA is end-to-end testing
- what are unit tests?
- what is end-to-end testing?
- what are critical workflows that need to be tested?
How Does QA Wolf Work?- browsers on browsers aka no need to install
- as you're walking through your site tracking code is injected w event listeners
- there's a heuristic...it's complicated
- they have the best selectors
- written almost entirely in TypeScript
History in the Making...of QA Wolf- the first project
- the goal of having everything created for you
- getting better over time thanks to users feedback and dog fooding
- "what would a better version of this look like?"
- where were developers struggling?
Collaborative-ness- acronyms on acronyms
- Netlify Collaborative Deploy Previews 🎉
- LAURA WON
- QA Wolf being online means everyone can work together online
- people can work on the same tests and ask team members to collaborate
- team members from all different tech levels can participate
How do you Show what a Test Looks Like?- devs want it in code but what about low-code/no-code for less tech savvy
- Ben did 😅 manual testing with Selenium
- start small, like with one task
- flakiness of test frameworks
- records video of desktop where test fails
- show the exact JS line where the test fails
- when a test fails just edit the test in line 🤯
Amazing stories of all the things we've done on the internet and all still somehow have jobs.
TidBits & ThoughtThings™️What in your everyday life do you wish had a testing suite?
As always, we hope you find it remotely interesting.
TRANSCRIPT:
Welcome to Remotely Interesting brought to you by Netlify.
People who were remotely interesting:
SHOW NOTES:
In this episode, we chat about Distributed Persistent Rendering, On-Demand Builders, and more acronyms than we know what to do with 😆 We hope you have as much as we had recording this!
As always, we hope you find it remotely interesting.
Show Notes
Discussion Points
Hustle Culture
Burn Out
What's the alternative?
The Future is in the Technology
The Future is in the Ecosystem
📋 Discussion Points
Why a11y matters
A11y in the developer community
It's our (collective) job to make the web-accessible.
Where to start?
📝 Transcript
Previously on Remotely Interesting:
[00:00:04] Phil: [00:00:04] I think you should all reassess all of the conversations you've ever had with me and just think about how it really went.
[00:00:12] Cassidy: [00:00:12] Hello, and welcome to Remotely Interesting.
[00:00:14] Phil: [00:00:14] This is remotely interesting.
[00:00:16] Amberley: [00:00:16] Well, that seems a little presumptuous.
[00:00:18] Leslie: [00:00:18] No, no, no, that's the name of the show.
[00:00:20] Music: [00:00:20] [Intro music]
[00:00:28] Cassidy: [00:00:28] Hello everybody, and welcome back. We're going to be talking about accessibility today. Also known as A11Y, which I know means accessibility, but I always read it as "Eleventy," like the static site framework and it throws me off every single time. But accessibility is important and we also have some team members from the rest of Netlify who work on this a lot.
[00:00:53] So hello everybody.
[00:00:56] Amberley: [00:00:56] Hey! Howdy, howdy.
[00:00:59] Phil: [00:00:59] Is everyone comfortable with using the word numeronym?
[00:01:03] Amberley: [00:01:03] No.
[00:01:03] Phil: [00:01:03] I'm very happy - numeronym, numeronym.
[00:01:06] Jason: [00:01:06] I'm comfortable with you using that word.
[00:01:07] Cassidy: [00:01:07] Yeah, it sounds good when you do it.
[00:01:09] Phil: [00:01:09] When I realized we were talking about accessibility and we were going to see it written like that, I was just excited at the prospect of being able to say the word numeroym.
[00:01:17]Amberley: [00:01:17] Can we just point every time we need to say it and you'll just say it for all of us?
[00:01:21] Phil: [00:01:21] I'm at your service.
[00:01:23] Amberley: [00:01:23] Perfect.
[00:01:24] Cassidy: [00:01:24] We could do some ASR with that.
[00:01:26] Jason: [00:01:26] [Laughter] That's - welcome to Phil says soothing words. Okay, so what are we actually talking about today? We're talking about kind of accessibility in general, but I think maybe one of the most important things to start with is just, and I'm asking this, not because I want to know, but to set the stage here, okay? Why does accessibility matter?
[00:01:49] Cassidy: [00:01:49] [Jokingly] You really don't want to know this.
[00:01:51] Phil: [00:01:51] Who wants that? That's a hot potato.
[00:01:54] Leslie, do you want to, do you want to open the bidding for why accessibility matters?
[00:02:00] Leslie: [00:02:00] That's a meaty one. [Laughter] I like it. I like it. You know, I always think of it as building software for humans, right? And so at like the very base level, what we're building as engineers are things that people can use, right? So we probably want to reach as many of those people as possible. And you know, there's a lot of diversity in the world, a lot of different types of people using all different types of devices. And so it's our job as engineers to build things in a way that allows as many people as possible to use them at like a super base level, I think.
[00:02:28] Phil: [00:02:28] I've worked in places where there's been an accessibility expert and it's been - they have their parts of the project where, oh, there's a line item for accessibility. And that always kind of, kind of rankled me a little bit because yes, we need experts, but it's hard to just kind of have one point of a project where accessibility magically happens.
[00:02:49] So, we don't do that here, do we? Who's - is there an accessibility expert? Whose job is accessibility?
[00:02:55] Amberley: [00:02:55] I feel like Leslie would be a great person to talk about this, at least on the front end core side, Leslie and I both worked together on the front end core side. And speaking for myself from previous job experience, like especially on smaller teams, you tend to have like one or two people who are very personally interested and passionate and sort of advocating for it on a team.
[00:03:17] But I've been lucky to work on a couple of teams, including this one, where it's really sort of a core competency that's considered in the hiring process. So at least on this particular team we have individuals who are more - it's more in the forefront. People are more actively advocating. But as a baseline on the team, we have team-wide buy-in and sort of a built-in team ethos surround it.
[00:03:46] Leslie: [00:03:46] I would plus one all of that. I think one of the things we look for is like during the interview process, just does it come up? Is this something people have, are familiar with and have used in the past? And that's not, we're not going to not hire you if you haven't done a lot of accessibility work in the past, but it's, is this something you care about? And is this something you'll keep top of mind as you're developing? Right?
[00:04:02]So it is sort of a process of learning from other folks on the team. I wouldn't say that we necessarily have anyone who's like a hundred percent focused on accessibility all the time, but, as Amberley said, we have folks who sort of champion it internally. And that helps and kind of drifts out to the rest of the team members who maybe are focused on other areas - performance or, well, performance is a bad one cause that's also an accessibility issue, but in some other areas, right?
[00:04:24]So it's about the knowledge share as well and doing some shared code review and pieces like that to kind of spread the knowledge.
[00:04:30] Hugues: [00:04:30] I want to say, I think if you have the luxury of having accessibility specialists on your team, I think that's super great. I used to work at a company where they had the accessibility team that was kind of like overlooking the product and like everything that we ship to the world.
[00:04:47] So I think if you, if like, I think accessibility is important knowledge for everyone on your team, but if you can have specialists that really like learns and do educational stuff inside the company, inside the team, I think that's awesome.
[00:05:03] Jason: [00:05:03] I think there's like a nuance to it because I really like that we have accessibility experts in the sense that there is somebody who has deep knowledge, you know, as you said, like, someone who's there to help take things further.
[00:05:16] And I think, you know, like I, I've worked with Amberley at a couple companies now, and she's always been one of those people who will like educate me about something that could be more accessible and here's why it's important and how.
[00:05:27]But what I think is where we, where it falls over and where I agree with Phil is I don't like it when teams think of accessibility as a thing that happens after you build the tool and you like throw it over the wall to the accessibility people and say, all right, well, you deal with whatever that is.
[00:05:43] Hugues: [00:05:43] And I think it's important for everyone to buy in. Leadership to buy in and design and content and engineering. I think it's just a culture thing in companies.
[00:05:55] Leslie: [00:05:55] Definitely agree. It doesn't start with engineering, right? It starts with how you build the product, how you think about the product or whatever it is you're building, right? And so coming at it with that mindset of accessibility, even at its most base core, what are you building level, which involves design and product and all of those sides.
[00:06:11] I think coming at it from there helps bake it into the whole process and not kind of, oh, the engineer gets tagged in, you're ready to build the thing and all of a sudden you're the only one caring are these design patterns we're using even, you know, lend themselves well to accessibility. Maybe there's things we could have thought of earlier in the process to kind of support that.
[00:06:27]Jason: [00:06:27] I have a question. Earlier you said performance is an accessibility concern. And then just now you said, you know, accessibility starts in the design process. And for a lot of folks, I think when they think of accessibility, they're like, can I push the screen reader button and it like works?
[00:06:44] So it sounds like it's way more than that. So can you give a more, maybe like a broader overview of what we're talking about when we start thinking through accessibility?
[00:06:53] Leslie: [00:06:53] I feel like Amberley might have a good queued-up answer for this. I feel like she's answered this before. In general, I think it's, you have to think beyond the screen reader, right? I think we so often default to accessibility just being does it work with a screen reader? Because that's a tool that most of us have on our computers already and can test with. So it kind of feels like a defacto, oh, it's accessible if I can use voiceover on it.
[00:07:12]But there are a bunch of different assistive technologies that folks are using to access certain, you know, the software that we're building. Everything from like sip-and-puff devices to neural, you know, brainwave scanners that are helping people navigate websites and apps. So it's much broader than just one specific area.
[00:07:32] Jason: [00:07:32] I'm going to ask you to clarify a term. You just said, sip-and-puff, and I'm not familiar with that.
[00:07:36] Cassidy: [00:07:36] What is that?
[00:07:37] Leslie: [00:07:37] So hopefully I'm going to explain this well. I'm also not an expert in this, but my understanding is that there is a device that you can use to, essentially, maybe if you don't have certain vocal capabilities, you can sip or puff into like a straw, essentially? And that can send, basically, connect up to some other device and can help you navigate something.
[00:07:57] So I'm not - maybe Hugues or someone else has a little more like specific detail on how it works. But it's a way to kind of interact with things.
[00:08:05] Amberley: [00:08:05] It's just basically one type of alternative input method. Like another one, another good example that's one that I always recall is I worked at a disability advocacy nonprofit, and one of the people I worked with had cerebral palsy and she worked remotely and she used a chinpad to type using Morse code.
[00:08:29] Cassidy: [00:08:29] Whoa.
[00:08:29] Jason: [00:08:29] Interesting.
[00:08:30]Amberley: [00:08:30] So there's, to go back to Leslie's earlier point of a lot of times you think of accessibility and you think, can I push the screen reader button? And really you should be going all the way across the other side of the spectrum, which is, I cannot perceive the infinitely large constellation of ways that people could input and access. And that sort of universality is what I should think about instead of this one particular input mechanism or access mechanism.
[00:09:05] Phil: [00:09:05] It feels to me like the web is this thing that is so difficult to know how people are going to be consuming it and how people are going to be interacting with it because there's so many unknowns. So it's trying to push the threshold down as low as possible to let as many people in and interact with things we're building in ways that we don't, we can't always predict.
[00:09:24] I think that's such an art. And I think you've already said there's a bit of a culture and a mindset to that. Just knowing that you can't control everything is really key. I also think it's interesting how extreme some of these examples can be. It's like, well, what, you know, what are we going to be able to support?
[00:09:41] And again go, this, you know, this concern I think can go all the way right through to how do we craft the copy on a button, you know, how do we just write text, which is inclusive and easy to digest for people who either don't speak the first language or, you know, for everybody? And I love seeing the craft that goes into just thinking about what the words are that we write on things, you know, across that.
[00:10:06] I think that's, that's something that kind of goes a bit overlooked often when we talk about accessibility.
[00:10:11] Hugues: [00:10:11] That's kind of also the beauty of the web that you're, you don't know how your site is going to be accessed, so it can be a phone, it can be like a PlayStation browser, it can be a lot of different things. I think that's the beauty of it. Like trying to make it work for every platform that exists today and that will be created in the future.
[00:10:31]And I'll still a hundred percent agree about, I think we often look at the - we're developers. We look at like the developers side, that there's a lot on like the language that you use, like the level that you can understand the text, in design, like the colors, the font size. I think there's a lot for everyone to know more about accessibility.
[00:10:54] Jason: [00:10:54] Well, and I want to come back to the performance is accessability thing and something that - someone shared a story recently, may have actually been one of you, about - it was a person who was in like a government services office and they saw a woman on a PlayStation portable, and they were trying to, they were like, oh, she's just playing a game. And then they walked behind her and saw that she was on the government website and like, you know, it's not a particularly high-powered website. It's just HTML and that device is objectively terrible for browsing the web as a modern web. But because it was accessible HTML, she was still able to fill out the forms and complete the thing.
[00:11:34] And so that's another thing that I think is interesting when we talk about accessibility is like, it's not just like we're building special things for people with special needs. We're building things that work across the spectrum of access, whether it's that your device is low power, that you need a different way to do input or a different way of consuming the information.
[00:11:54] Like I think, that was something that really started to sink in for me was when I started to realize that the things that we're doing for accessibility, we're not doing special things, like extra things. We're meeting base level use cases so that our, the things we build are actually usable, no matter where somebody gets to them from.
[00:12:15] Hugues: [00:12:15] I think that's the, again, the beauty of it, where it serves everyone. So you can be in a particular situation where you don't see the color well on the site and at that particular moment, you need good color contrast. And maybe you never needed it before, but now you're on your phone, you're outside, you have difficulty to see color contrast, and now you need good contrast ratio, right?
[00:12:42] So that's, I think that sums up well when you say that, like, accessibility is for everyone. It's just, it can affect, it can depend on like your situation or the device you're using or a lot of different factors.
[00:12:55] Phil: [00:12:55] It's like that, that one time when the sun came out in the UK and then I needed to have good color contrast on the screen. [Laughter]
[00:13:08] Hugues: [00:13:08] '98?
[00:13:08] Phil: [00:13:08] Yeah, good times '98.
[00:13:09] Leslie: [00:13:09] I love this story Jason just told, too, about the PlayStation. At a previous job, I was working on sites for video games and those sites needed to work on the browser in the system that I was building for. So, and those browsers are objectively like pretty terrible. And so they're like only at the time we, I think CSS3 was like a new thing and you couldn't do most of the CSS3 things in this Nintendo 3DS browser. And so there were all of these, not hacks, but there were things we had to work around to make it work. But it was so important to us to make sure that, okay, you could actually get to the website for this game on the device where people are going to be using it.
[00:13:45] Phil: [00:13:45] And the, and that, that word kind of "baseline" has kind of crept in a couple of times. And you know, when, just thinking about, you know, we need to make things for different contexts. And, you know, for like Hugues, Leslie, and Amberley, you all work on slightly different pieces of the Netlify kind of web state, if you like, you know, there's the .com, there's the app, there's a lot of pieces and they're built using different technologies.
[00:14:08] And this idea of the baseline is maybe different depending on the tools that you use is an interesting one to me, because I'm a, I'm a bit of a old kind of web curmudgeon who likes HTML, please. I like HTML and browsers do, too. And lots of assistive technologies do, too. And it's a really nice baseline. But we're building more complex things than that these days, you know, when, you know, app.netlify.com is a React app that does lots of clever interactive things.
[00:14:36] So I'm kind of curious about the different experiences that you've all had across different things that we've been building for Netlify based on the tools that you've had to use to build that. What's, what does that look like from a, from an accessibility kind of context for all of you?
[00:14:51] Leslie: [00:14:51] My hot take is that React itself doesn't cause accessibility problems, right? My hot take there is that developers have access to everything they need in React to make a React app accessible. But it's our job to, to do those things, right? So nothing is preventing us. It's just a matter of knowing the tools, knowing what you have available to you in terms of semantic elements, right?
[00:15:13]All of that is available to you in JSX in React. But it's knowing those tools. It's understanding how focus management works so that you can make sure - actually React, I think, makes focus management easier than it used to be in the pre-React days where you were having to like move focus all around sometimes and do some weird jQuery stuff to, you know, focus in different areas. But React actually makes a little easier to kind of manage some of those things as long as you're aware of it and baking it in kind of, as you go.
[00:15:37] Cassidy: [00:15:37] I agree a ton. I think there's been plenty of hot takes around the internet of like "React isn't accessible." "Using JavaScript isn't accessible." JavaScript is a language in the browser for a reason. If you use it right, you could do, you can do a lot of things. So I agree with your hot take wholeheartedly.
[00:15:54]Amberley: [00:15:54] And the data proves that out, right? Like, for example, we were really proud in the Gatsby team last year when the WebAim survey came out, showing that, you know - Gatsby uses React and incidents of accessibility errors were about 50% lower on Gatsby sites than React sites in general. Which to me proves out that it's not so much about the tool as about the community and who's wielding the tool.
[00:16:25] So we had put a lot of emphasis and intention behind building out accessible examples and building it into the tooling and stuff like that. And I think you see that kind of intentionality ripple out. It doesn't make it perfect, but that's a great indicator of it's more about how you wield the tool than the tool itself.
[00:16:46] Jason: [00:16:46] I agree with that, like, to the very bottom of my soul because I feel like the thing that's, the thing that's so important in communities and in frameworks is like, we have to lead by example. Right? And so if the frameworks are out there saying you should probably do accessibility, but it's hard so we're not going to do it in any of our examples, they're sending a message. That's communicating to the people who use your tool. Oh, accessibility is hard, we'll do it later, we'll do it later. And then it never gets done because everybody's under deadline.
[00:17:14] What I thought was really cool about Amberley and Marcy Sutton at Gatsby who put so much effort into making sure that it was a top-level concern, this is not a thing that we ship without. This is a, like, if we don't have this, we don't ship kind of concern. And that shows. It shows in the examples, it shows in the way people talk about it. And as Amberley said, it shows in the results.
[00:17:35] And I think that, you know, it's a good reminder to people who are in positions of leadership. If you run a framework, if you run a community, the things that you put an emphasis on are the things that your community will put an emphasis on. And so, you know, you have a lot of control, whether or not you want to admit that's a thing.
[00:17:52] If you're out there running a framework, if you're not putting accessibility top of mind, you're actively breaking your community. And that's a, that's an important thing to keep there.
[00:18:01] Leslie: [00:18:01] Amen. It's almost like this is about humans at the core, right? It's almost like people are who we're developing things for and not just software and code for the sake of it. Right? Imagine that.
[00:18:12] Hugues: [00:18:12] And I think we all know that a lot of people will just copy-paste your example from your docs without reading.
[00:18:19] Phil: [00:18:19] Not my example. They never copy and paste my example. [Laughter]
[00:18:24] Hugues: [00:18:24] So if these examples are not accessible, then you just like, keep the problem forever. Think it goes even in like Stack Overflow's answers, whatever you write code. If these are not accessible, then you just like continue the problem I think.
[00:18:41] Leslie: [00:18:41] The other thing is that, that sometimes that line between what's accessible and what's not can be really murky. Right? Where it's like, am I meeting that standard? Is what I just built - like I used Semantic markup, but maybe I didn't pay attention to my focus order or something. Right? But that can be hard to judge.
[00:18:55] My kind of piece of this is anything is better than nothing, right? So it doesn't have to be perfect to put out an accessible example, do the best you can, and then learn from it as people, hopefully, help guide you and give you feedback on it.
[00:19:08] Hugues: [00:19:08] As long as you're trying, I think you're already better than half of the websites.
[00:19:13] Jason: [00:19:13] And something that I keep seeing repeated over and over by accessibility specialists is like, the best way to be accessible is to just write markup. Like stop reinventing controls and components. If you are making an input, use an input. If you're making a button, use a button. And that gives you so much default accessibility because so much effort has gone in to making markup accessible. So instead of creating a div and adding the click handler and then trying to deal with focus states, like don't do that. Just use a button.
[00:19:44] I see Amberley making a face. So I'm going to let you speak to that. [Laughter]
[00:19:51] Amberley: [00:19:51] For context, I don't hide anything on my face. I am wildly aware of that fact.
[00:20:00] Cassidy: [00:20:00] It's a blessing and a curse.
[00:20:01] Amberley: [00:20:01] I was getting, I was getting very excited because that tied back to something that was relevant to what we were talking about a couple of minutes ago that I didn't quite get to, which is two points. One, one of the legitimate pieces of that concern, I think, about JavaScript frameworks is that they do make it so much easier to lean on scripting instead of on the markup and structure that we have available to us.
[00:20:27] So it's not that the tool, again, it's not that there's something wrong with the tool itself. It's the way you build the tools. So you have to be intentional about not leaning towards scripting when you don't need it.
[00:20:39]But then also the other piece of what you said that I think is interesting is there's sort of a whole new world of almost accepted primitives that has developed in web design in terms of these accordions and sort of all these other things that don't have associated HTML standard primitives associated with them. So in some ways the standard web hasn't evolved with web developers to the point where there are reasons why people do have to keep rebuilding some of the stuff that they're trying to rebuild.
[00:21:10] Obviously, if something's a button, you should just code it as a button. There are things like that exists and you should lean on. But there's also the way the web has evolved in our interaction patterns that I do wonder, you know, what happens with evolving HTML and evolving these new patterns so that people don't have to keep reinventing certain things.
[00:21:28] Leslie: [00:21:28] I love that. Right? It's the document object model for a reason because it was built for documents. Right? But now we're using browsers for apps and interactive experiences. And so I think, you know, obviously the folks working on the spec are doing great work and moving things forward, but there's always more work to be done, I think, to kind of fill those gaps.
[00:21:45] And with the CAG, web content accessibility guidelines, as well. Right? They're like always, not a little bit behind, but we sometimes move faster in how we're kind of developing new patterns in what we're trying to do in the browsers and the guidelines sometimes have to kind of catch up. So we've got to be at the forefront of that as the developers and not always rely on the guidelines to tell us exactly how to do it.
[00:22:06] Cassidy: [00:22:06] Are there any projects that you all like that are accessibility focused that help you not reinvent the wheel? The one that comes to mind for me is Reach UI. That one is so nice for just drop-downs and they have, they have really large state machines just for figuring out if someone clicks and moves things away and stuff. And I thought that one was really impressive, but I'm sure there's ones that I don't know about.
[00:22:27] Amberley: [00:22:27] So Reach UI is the one that I would point to also, and in previous projects, we've used Reach UI components as a base to then build component libraries off of. And that's a great example of sort of, building out a centralized pattern that someone has to put energy and attention and thoughtfulness into analyzing and testing and sort of leveraging on top of that.
[00:22:51] To me, that's sort of exactly what I'm thinking of when I say it's a button, take advantage of a button. It was designed - everything underlying an HTML button is designed that way for a reason.
[00:23:01] Similarly, there are people trying to answer that call, seeing this need for these new web primitives to be built and putting them out there, like the Reach UI library for people to build on top of.
[00:23:13] Jason: [00:23:13] And I think that's what, like, that's what we want the JavaScript community to be. Right? What I think is really inspiring about JavaScript over the last five years or so is with the prevalence of Babbel, we kind of created this ability to test new specs in the wild before they become permanent so that we can see what happens when somebody uses it like this? What problems arise? What do people run into? So that we don't hit this problem.
[00:23:39] Like, when you put something into the web spec, you can't break it. Like, we've seen what happens, you know, I don't know if anybody remembers like array.smoosh, but like, this is, this is all stuff that like, we have to be really careful because if somebody builds something for the web, we have to support it forever. Or else we risk so much, you know, so much breaking and loss of history because we accidentally broke tens of thousands or millions of websites.
[00:24:05] So I love the idea of letting JavaScript be the place where we prove these ideas out. And I think that Reach is a good example of being thoughtful about this. How do we create primitives that Reach can provide, that we can build on and test, and we point out what's working and what's not. And then once we've got something that consistently works for the 90 percentile use cases, then we pull that into the browser because we know it's going to work.
[00:24:29] And I find that really encouraging, and I wish that was more of the model around everything and not just like, look at this new cool JavaScript feature. I want to use optional training today so I'm going to turn on Babbel stage three. It's like, no, let's use it for all of this stuff because that's what it's so good at.
[00:24:47] Leslie: [00:24:47] I love that. I also have to give a shout out to Heydon Pickering who I feel like has done a lot of work around inclusive components and published that work and kept a blog. And that was some of the earliest stuff that I was looking at when I was trying to figure out how does all this stuff work? Because Reach is also amazing, but it's a little bit newer and so looking back even further, people who were putting up blog posts and examples, and working through some of this stuff in public is, has been super valuable for me.
[00:25:08] Hugues: [00:25:08] I wanted to do that exact shout out I think. It, the inclusive components, what I really like is there's like a lot of educational stuff that you can learn also. So it's not like, oh, you want to do a toggle button? Here's the code and the here's how to import it. It's like, it goes through this is the problem, this is how we can tackle it, this is like the different state it should have.
[00:25:33] So it kind of also educates you on how and why these decisions are made so that you can make also better decisions in the future for your own components. I think inclusive components. It's really awesome resource.
[00:25:45] Leslie: [00:25:45] There are also trade-offs. Right? There's not always like one perfect way to do it. And I love that's, Heydon covers that, but there are other folks writing about this too, who are like, okay, well you could make this tab component accessible in one of three ways, or here, you know, some examples of how I've done it.
[00:25:59] And sometimes depending on your use case, you might need to choose one over another. Right? But being aware of kind of what's out there helps make that choice.
[00:26:06] Cassidy: [00:26:06] I think what you said and what you said earlier when you, I think it was you Leslie, but we've kind of all touched on it. It's good to at least try to start something. And then even if it's a little bit, it's better than a lot of things and knowing that there's so many options out there and that there's, it's hard to mess this kind of thing up. And so as long as you try, it's a good thing.
[00:26:28] 'Cause a lot of times I've seen so many people where they're just, like, I want to use like this ARIA label thing, but I don't want to mess it up and then like ruin someone's experience. But just trying it I think is worth it. And you're not gonna make it any worse by just trying it if it's not accessible at all in the first place.
[00:26:47] Hugues: [00:26:47] Sorry, I think that's a really good way to learn. Right? So the way I learned at least was like, all right, this site, I need to do a schedule. Like it's an event site. So I'm going to do the schedule. Like I'm going to go learn on what should be the markup and everything. So now you know how to do schedule. Next time you, it can be cards, right? Because cards components come back all the time.
[00:27:10] So now you know how to do schedule, you know how to do cards. And then the next one can be, I don't know, sliders or whatever. But then after your five, six, seventh site, then you have like really good baggage of how to make all these components. So I think that's a really good way to, to type it.
[00:27:28] Leslie: [00:27:28] It's important to educate yourself as you go too, right? Like I really do believe anything is better than nothing. On the flip side, too much ARIA can be really challenging for people to use. Right? If you put ARIA in too many places or in the wrong places, potentially, you could be creating an experience that's really still, maybe it's overly accessible? Or is really frustrating for someone to navigate around because then they're waiting for all these labels to be read out. Or I already had the context from the semantic element you used, you didn't need to add an ARIA label on top of it.
[00:27:54] So it's one of those things that's like, yes, anything is better than nothing, but also make sure you're learning as you go. And my rule with ARIA in particular is like, it's sort of the Fight Club rule. Like try not to use ARIA in general. And if you need it, like, ask yourself why? Just double check yourself there. Try to rely as much as you can on kind of the primitives and semantics first.
[00:28:22] Phil: [00:28:22] Those weren't the Fight Club rules! [Laughter] They repeated the Fight Club rules and you still botched it.
[00:28:26] Leslie: [00:28:26] I did, I did. The first rule of Fight Club is you don't talk about Fight Club, so I guess don't talk about ARIA? I don't know.
[00:28:32]Amberley: [00:28:32] Don't use ARIA unless you have a compelling reason to use ARIA. Now, I was just going to, I was just going to back up that point, Leslie, with, you know, trying any time to tie back to something concrete.
[00:28:45] I think this is also from the WebAim reports, but there's actually a correlation between higher usage of ARIA and higher incidents, instances of accessibility errors. So a lot of times when you're trying to like throw the kitchen sink at something, you can actually make it worse. So intentionality around ARIA is important.
[00:29:10] Jason: [00:29:10] So I want to, I feel like at this point I'm gonna make an assumption that you, our dear listener, are now super excited to go out and start making these changes. Right? And so for someone who is really excited about this, I know that there are some tools that can automate this, that can send some checks, that can do some things. So if somebody wants to get started, what should they look into adding to their projects today?
[00:29:32] Hugues: [00:29:32] If you want to start, I wouldn't lean on automatic stuff to be honest. I think automatic stuff can catch some errors, but I think there's a lot of errors that they can't catch. So I would start manually by reading articles about accessibility, about what you want to build. And also reading about how to do testing with voiceovers or another screen reader. Start to do manual stuff and then you can compliment with the automatic tooling after.
[00:30:04] Jason: [00:30:04] So, so you would recommend not using the automatic stuff until you've done the manual? Or like will the automatic stuff catch more than you would catch on your own?
[00:30:14] Hugues: [00:30:14] I think the problem with the automatic stuff is it can give you like a false positive that the website is accessible. Like you use the tool, a hundred percent, all right, my job is done. Onto the next thing. And then if you start manually testing, you realize that there's like tons and tons of issues.
[00:30:33] So I would, personally, get comfortable with like manually testing and, I think, automatic testing for like font sizes, color contrast issues. There's a lot of things that it can catch super easily. But it's never going to beat manual testing. So I would, I would try to learn how to do manual testing before relying on automatic tool.
[00:30:57] Jason: [00:30:57] Okay.
[00:30:57] Phil: [00:30:57] That seems to back up that kind of point that's come up a few times that, that word "intentional." It feels like being very targeted and being very intentional about what you're, what you're trying to do and building an understanding of how you can improve things by, you know, taking certain actions. That seems to be a result of, you know, that kind of manual focus and digging in, rather than hoping you can point a tool at it. And then ta-da! You know, you crank that handle and then it's magically accessible.
[00:31:24] Leslie: [00:31:24] It's all user experience. Right? And I think accessibility is the same way that having, again, I am not a screen reader user myself, so I don't know exactly what that's like day in, day out. So I can't purport to say that's my experience, but using a screen reader or using some of these assistive technology devices allows me some understanding of what that user experience is like.
[00:31:44] You know, I use apps all the time visually with my mouse and so I know what that user experience feels like. Actually, you trying out a screen reader or trying out some of these, the actual assistive technology devices, gives me a better sense of what that user experience is like, which allows me to fix the errors better, to understand why I'm coding the way I am.
[00:32:00] Why did I use that semantic element instead of that one? Why do I need ARIA here? Understanding the why is a lot easier, I think, when you're actually testing them out yourself and trying to tap through, you know, to see where the focus goes.
[00:32:11] You kind of experience it firsthand as opposed to just seeing an error and saying, oh, I'm going to go fix the error. Right? Which can help once you're kind of further along in your accessibility journey.
[00:32:20] Amberley: [00:32:20] Well, I've done a lot of thinking about how people can get started in accessibility. And like you said, okay, you're starting from the point of, I understand why this is important. I have a general understanding. I'm bought-in. Where do I go?
[00:32:33]I actually wrote a resource site along this progression where you start with this is why you should buy in, this is why you should care. Quick wins - for, here are the six most commonly reported accessibility errors caught by automated testing tools. And then how do you start testing? Right?
[00:32:52] And so going into that if anyone's familiar with Madeline Parker, Madeline has this really wonderful sort of metaphor that she's developed for accessibility testing, specifically, around coffee which is like, if anyone here is a coffee fan, if you think of something like a French press, you know, it's coarse grind, you use it, you'll end up sort of with more grinds in your coffee. And it's better than nothing, but it's not necessarily the smoothest experience. That would be something like automated testing where the numbers vary, but generally what I see for automated testing is it's something like 30 to 40% of accessibility errors can be caught by automated testing.
[00:33:31] So nodding back to what Hugues was saying about it can give this false sense of security if you run an axe Audit or a Lighthouse audit and you get a hundred or you get no errors, you can feel confident-ish about 30% of your experience. Like that doesn't mean that you're done. But it does give you a strong sort of like beginning.
[00:33:51] But then as you sort of go along that spectrum of - like Lighthouse, I think, would be one of the examples of the most top-level introductions where it doesn't get super deep into the errors, it doesn't have a strong interface for you to really dig in, but it's a great start. And then along the spectrum to something like axe, which will surface more detail and more errors. And then all the way to something like live user usability testing.
[00:34:20]So I think moving along that spectrum, you'll learn a lot as you progress through those different types of testing, but keeping in mind that any one particular type of testing is not going to be a sort of a catch-all or a solution for everything is important.
[00:34:39] Jason: [00:34:39] Well, I mean, I feel like we could continue talking about this for days and days, but in the interest of time, we're going to move into Tara's favorite section - Tidbits and Thought Things.
[00:34:50] All: [00:34:50] Yay!
[00:34:51] Jason: [00:34:51] So we're going to ask a rapid-fire question of everybody in the room, and today's question is what's one thing in your house that you wish you could click your fingers - snap your fingers is, I think, the phrase - and change the accessibility of?
[00:35:03] Phil: [00:35:03] I mean, if you want to make this inclusive so that the Brits can understand it, click your fingers means snap your fingers.
[00:35:08] Jason: [00:35:08] Snap is American, click is British?
[00:35:11] Cassidy: [00:35:11] You say click?
[00:35:11] Phil: [00:35:11] Yeah, click. Like this. Snapping is crunching and breaking a thing.
[00:35:16] Cassidy: [00:35:16] I don't know if I believe you.
[00:35:17] Leslie: [00:35:17] Does that mean in Avengers that Thanos clicked his fingers? Is that the thing? The click heard round the world?
[00:35:23] Phil: [00:35:23] It was a bit of a scat, jazz version.
[00:35:28] Leslie: [00:35:28] That's amazing.
[00:35:29] Jason: [00:35:29] All right. Focus up everybody. Cassidy, what is one thing that you would snap your fingers, click your fingers and change the accessibility of in your house?
[00:35:36] Cassidy: [00:35:36] My humidifier. It's such a pain to refill that thing because you got to like take it off of the base, refill it, and then like do the whole upside down flip thing. It's a pain in the butt. I would change the accessibility of that and make it easier to refill and to just use. I'm sure there's advances in this technology out there, but every humidifier I've had has been such a pain to refill.
[00:36:00] Phil: [00:36:00] You had that loaded up.
[00:36:01] Cassidy: [00:36:01] I was ready as soon as I saw this question. [Laughter]
[00:36:07] Phil: [00:36:07] Who's next? Amberly? Do you have one?
[00:36:10] Amberley: [00:36:10] I'm a very pragmatic person. And I feel like I have a very pragmatic and not-creative answer to this, but my house was built in the sixties. So what I always think about, especially for like aging in place, if I live here for a long time or resale for someone who may have mobility issues or buying the house later would be like, my house is older. So narrow doorways, narrow hallways, narrow ways to get around. Widening hallways and widening doorways, sort of making it easier for anyone to get around.
[00:36:45] And steps. Steps is also a huge thing with entries into the house and stuff like that. So very pragmatic answer. But that is what I would do.
[00:36:53] Cassidy: [00:36:53] That's real. All those old houses have so many, just like, we're going to step down into the living room for no reason. Like, they did a lot of that.
[00:37:00] Leslie: [00:37:00] That's like my seventies sunken living room. Yes. It doesn't work with a Roomba. Really problematic with a Roomba. Not a fan.
[00:37:08]Hugues: [00:37:08] They didn't think of the Roomba in the seventies.
[00:37:10] Amberley: [00:37:10] Think of the Roomba!
[00:37:11] Cassidy: [00:37:11] Come on.
[00:37:12] Phil: [00:37:12] Think of the Roomba, people, come on. There's the real victim here.
[00:37:17] Leslie, how about yourself?
[00:37:19] Leslie: [00:37:19] So I've got a nice little backyard with a nice little fence and there's a gate in the fence, but the gate only has a latch from the inside. So there's no way, I mean, for safety reasons, I guess it's very smart because no one can just come into my backyard. But this is a little bit problematic when people come to, I don't know, mow my yard. Or in non-COVID times, if I were to have friends come over and I wanted them to meet me in the backyard.
[00:37:40]So it'd be really nice to have a, snap my fingers not have to go through the effort of figuring out how to like, get the lock on the other side and then figure out how to lock it. Not great.
[00:37:50] Phil: [00:37:50] Makes sense. Yep.
[00:37:53] Who's next? Me?
[00:37:55] Jason: [00:37:55] You are.
[00:37:56] Phil: [00:37:56] Okay. So mine isn't in my house. So sorry, I'm probably bending the rules a bit.
[00:38:01] Cassidy: [00:38:01] This sounds like cheating already.
[00:38:01] Jason: [00:38:01] You're immediately disqualified. Moving on.
[00:38:03] Phil: [00:38:03] It's in my car. It's in my car. Because I'm really, I was really excited to get a car that had a radio that has like CarPlay on it. You know, where it kind of picks up the controls from your phone. But it means that the screen for the controls for the radio are a big kind of glass panel. So big touch screen, and that's really flexible and really cool. And it's great if you're in the passenger seat and the car isn't moving, but if the car is moving and it's bumping around and if you're driving, having no physical feedback, when you reach out to touch control.
[00:38:34] I don't know how I'm still alive, if I'm honest. The number of times I was trying to just press a giant button that's big on the screen, but I can't reach out and just feel it. And I'm just like hunting around. Not great.
[00:38:46] Leslie: [00:38:46] So what town are you in? Everyone there stay off the road.
[00:38:52] Phil: [00:38:52] I'll stay put.
[00:38:53] Amberley: [00:38:53] Having been rear-ended by a guy who was fumbling with the radio, I'm firmly on your side with this.
[00:39:00] Cassidy: [00:39:00] It was Phil!
[00:39:01] Phil: [00:39:01] I mean, the fact that I'm -
[00:39:04] Cassidy: [00:39:04] It was Phil!
[00:39:07] Phil: [00:39:07] If anyone from my insurance company is listening, I'm sure they are, that wasn't me. Please don't make my premium go up.
[00:39:13] Amberley: [00:39:13] Where were you in the summer of 2018?
[00:39:18] Phil: [00:39:18] I don't know. It was a rainy one here. It wasn't '98. [Laughter]
[00:39:24] Cassidy: [00:39:24] Callback!
[00:39:24] Phil: [00:39:24] Hugues, how about you?
[00:39:25]Hugues: [00:39:25] I'm going to go with the appliance route also. But I'm going to go with my washing machine. I don't know why there's twenty-five settings. I just want, it should be one button, wash my clothes - and maybe wash my clothes. Maybe like water temperature. But other than that, like, I don't know why it's so complicated.
[00:39:46] Jason: [00:39:46] I'm actually going to go the other way with it because I have a whole bunch of, like, small electronics in my house that tried to simplify their interfaces by having one button that does seventeen things. And so if I press it once it does one thing. If I hold it, it does another thing. If I tap it three times, it does a third thing. And I have no idea how any of these things operate.
[00:40:08] So I'm constantly breaking my settings and then I have to go to the internet to look at their, their docs to figure out how it works. And I'm like running a stopwatch to know how many seconds I need to hold this button for it to get to the right mode. It's - come on. That is not a usable device.
[00:40:22] Cassidy: [00:40:22] Speaking of humidifiers and those kinds of things, I have this desktop humidifier and you press the nose.
[00:40:28] Phil: [00:40:28] What is that?
[00:40:32] Jason: [00:40:32] In order to continue talking about this we have to describe it. Cassidy is currently holding up to the camera what looks to be a tiny little Kawaii cat with a propeller coming out of its head.
[00:40:44] Leslie: [00:40:44] And it's a humidifier.
[00:40:45] Jason: [00:40:45] Please continue.
[00:40:45] Leslie: [00:40:45] It's cute.
[00:40:46] Cassidy: [00:40:46] It's cute. It's a pain because for the same reasons Jason said. You press the nose to turn it on, but depending on how long you press the nose, it changes things. So for example, if I press it for like three seconds, the face lights up. I don't need my humidifier to light up. And then if I press it for a few seconds the fan will go on. And then if I tap it, it's like spurts of water versus a steady stream. This is a very confusing humidifier. And it's a pain to refill!
[00:41:24] Jason: [00:41:24] All right. I think we need to, we need to go ahead and call this one before we go into a humidifier review hour.
[00:41:32] Amberley: [00:41:32] Before Cassidy finds anymore humidifiers. [Laughter]
[00:41:35] Jason: [00:41:35] All right, everybody. That's going to do it for us this week. We are so excited for having you here with us. Join us next time, where we are going to talk about the Jamstack Can Do That: Theee Fuuuturrrrre.
[00:41:47] Phil: [00:41:47] Is that a Halloween episode? Is that a Halloween episode you were just trying...?
[00:41:54] Jason: [00:41:54] Is that not how - what's the future thing? Like we might need Chris's help for this. Do some big, like reverb in space. Like [echoing] the future!
[00:42:03] Cassidy: [00:42:03] I just kind of think of Squidward and SpongeBob going like "Futuuuure," while doing crunches on the ground. [Laughter]
[00:42:11] Jason: [00:42:11] All right. So you'll just have to tune in next time to figure out what the heck that's all about. Thanks for joining us. I've been, Jason always-take-some-dishes-while-I'm-walking-down-the-stairs Lengstorf.
[00:42:24] Amberley: [00:42:24] I'm Amberly can-usually-find-that-where-you're-looking-for Romo.
[00:42:29] Cassidy: [00:42:29] I'm Cassidy will-always-offer-you-part-of-my-snack Williams.
[00:42:34] Hugues: [00:42:34] I'm Hugues I'll-always-make-breakfast Tenue.
[00:42:36]Leslie: [00:42:36] I'm Leslie writes all-the-notes Conewhy.
[00:42:39] Phil: [00:42:39] And I'm Phil I-well-actually-people-who-misremember-the-rules-of-Fight-Club Hawksworth.
[00:42:44] Amberley: [00:42:44] [Laughter] I love that we started this episode calling out Leslie, and we're ending this episode calling out Leslie.
[00:42:54] Cassidy: [00:42:54] Full circle.
[00:42:55] Jason: [00:42:55] [Outro music fades in softly] Just to put a bow on it, Phil, one more time before we leave, can you talk about what A11Y is?
[00:43:04] Phil: [00:43:04] That is a numeronym. A numeronym.
[00:43:10] Cassidy: [00:43:10] Wow.
[00:43:11] Jason: [00:43:11] Thanks everybody. This has been Remotely Interesting. We'll see you next time.
[00:43:17] Phil: [00:43:17] See you next time. Bye. Bye. Bye
[00:43:24] Music: [00:43:24] [Outro music]
[00:43:31] Why is that so hard?
[00:43:37] It was the worst day, by the way, I think it was
[00:43:39] Leslie: [00:43:39] the worst. Definitely.
[00:43:42] Amberley: [00:43:42] What, a way to kick off insulting your guests.
[00:43:47] Cassidy: [00:43:47] , that's what it's
[00:43:48] Leslie: [00:43:48] all about here.
[00:43:50] Phil: [00:43:50] This is just for Chris is a joy at the moment.
Welcome to Remotely Interesting brought to you by Netlify.
People who were remotely interesting:
In this episode, we talk about the importance of how good developer experience (DX) can play a critical role in helping developers build and share their applications with ease. We cover topics such as:
TidBits & ThoughtThings™️
Where is one place you refuse to go alone?
As always, we hope you find it remotely interesting.
Welcome to Remotely Interesting brought to you by Netlify.
People who were remotely interesting:
In this episode, we discuss our resolutions for the new year focusing on tech projects we plan to do and even NOT do. We'll throw in some resources that help us and some that we think may help you too! We do get a little sidetracked (shocking, I know) and talk about nose noises, the origins of phrases & species, foot taps, and oh so much more.
New Laptop, New You?
Resolutions
Permission to Learn or Not
Personal Resolutions
Strategies to Accomplish Goals
Tech Resources for Coding Resolutions
TidBits & ThoughtThings™️
Name one resolution that you've made more than once. Have you stuck to it? Have you never stuck to it?
As always, we hope you find it remotely interesting.
TRANSCRIPT:
Welcome to Remotely Interesting brought to you by Netlify.
People who were remotely interesting:
For this episode, we were in the holiday spirit and decided to talk about our side projects and side dishes! We have recipes for code, recipes for food, and recipes for disaster? Join us and see!
Tara's Side Project & Side Dish
Phil Is Not Here!
asiannati.com
Mac & Cheese
Jason's Side Project & Side Dish
Tries to make fun of Phil
Next version of learnwithjason.dev
Crab Salad Spring Roll
Ben's Side Project & Side Dish
Harry Potter prep
Ben's own productivity system
Bean Sprouts
Cassidy's Side Project & Side Dish
Tries to make fun of Phil
TodoMeter
Fancy Crackers
FUN FACT: Very little of the olive oil made in Italy is pure olive oil bc of processing. In Spain olive oil is way more regulated. DM Jason your feedback or orders for his secret olive oil
TidBits & ThoughtThings™️
What food names should be the next JS libraries?
As always, we hope you find it remotely interesting.
TRANSCRIPT:
Welcome to Remotely Interesting brought to you by Netlify.
In this episode, we start diving into the awesomeness that is the Jamstack ecosystem, which we fondly refer to as The Jamosphere (cue cool, funky theme song). What better way to kick off this segment than with the Jamstack Conf Web App of the Year: Lunch Money! We were thrilled to have the brilliant solopreneur, engineer & designer of Lunch Money, Jen Yip, join us in discussing the creation of the app. We discuss the origin story, the tech timeline, tools Jen's built and were awe-struck by the mere fact that she actually carried out a side-project to its (successful)fruition. Like, what? People can do that?! Jokes aside, it was very inspiring to hear Jen's tech journey. We hope it inspires you too!
People who were remotely interesting:
With Special Guest:
SHOW NOTES:
What is Lunch Money
The origin story
The Tech of Lunch Money
Using the Jamstack Approach
The Ups & Downs
The Future of Lunch Money
TidBits & ThoughtThings™️
If you have an unlimited budget for just one category of spending, what would it be?
As always, we hope you find it remotely interesting.
TRANSCRIPT:
Welcome to Remotely Interesting brought to you by Netlify.
People who were remotely interesting:
We just pulled an all-nighter to finish shipping you a free, open-source learning platform for the Jamstack and its surrounding ecosystem! What better time to record a podcast discussing all the technical details than when we're delirious and slap-happy?? In all honesty, we put a lot of work into this because we're so excited to get you resources and a place to level-up (to space!) your Jamstack brain matter : )
SHOW NOTES
What is it?
The Tech
Workflows and Mental Models
TidBits & ThoughtThings™️
TRANSCRIPT:
Cassidy Williams: [00:00:00] Previously on
Remotely
Interesting.
Tara Z. Manicsic: [00:00:03] I wanna chop a ham with an axe, that sounds fun.
Cassidy Williams: [00:00:08] Hello and welcome to Remotely interesting.
Phil Hawksworth: [00:00:10] This is remotely interesting.
Divya Tagtachian: [00:00:12] that seems
a little presumptuous.
Sarah Drasner: [00:00:14] No, that's the
name of the show?
Cassidy Williams: [00:00:23] hello everybody. We just made something. What?
we made a site
called JAMstack Explorer as it, as a learning platform. And we are so excited to be sharing with you today, how we built it, what it consists of, how much sleep we lost over it. We're very excited.
Tara Z. Manicsic: [00:00:43] Very excited. Yes. You that's exactly right.
We're very sleep deprived, excited and giggly. So this will be a fantastic episode.
Cassidy Williams: [00:00:55] Perfect.
Tara Z. Manicsic: [00:00:56] one of the things that I think is interesting is the fact that we have a bunch of people. So this is the DX team project at Netlify and we all are. Very, maybe even annoyingly passionate about educating people.
We,
we really like helping
people and, I think all of us are excited to make a platform, to help people understand and learn about the JAMstack then, hope to cover this a lot of different areas. if you all, what's your way that you would describe the JAMstack explorers to your parents.
Cassidy Williams: [00:01:30] I would
tell them it's a place where people can learn coding practices.
I believe it at that,
Jason Lengstorf: [00:01:43] I would probably say it's a groundbreaking new platform where you can take video based educational materials to bring your web development to a whole new level.
Tara Z. Manicsic: [00:01:57] Can I play Jason's mom and be like, Oh,
Jason, you're brilliant
Jason Lengstorf: [00:02:04] definitely has that Midwestern accent. So you nailed that.
Sarah Drasner: [00:02:10] My parents still. I still don't think they understand what I do. So
you can watch videos about the thing that I do that I'll try to explain again,
Phil Hawksworth: [00:02:26] please stop me that I will just stop you right there. Sarah. We're not going to listen to anymore. Let alone watch videos when you're doing it.
Tara Z. Manicsic: [00:02:35] so yeah,
I think
though we did get the point across that we have a lot of video missions, that kind of leads you down the path of where you can watch a short ish snippet videos to get you to the end of your final mission of understanding things like split testing on Netlify and next JS and, angular.
and we have to the amazing instructors here. Oh, three
Sarah Drasner: [00:03:07] Oh, I should
Phil Hawksworth: [00:03:10] leave that as.
Tara Z. Manicsic: [00:03:14] So Cassidy, what do you cover on your mission?
Cassidy Williams: [00:03:16] so mine is called next JS from the ground up and it's basically just covering the basics of next gen is what you need to know. And then going into detail on how to actually use some of the functions and methods and things that are built into next JS because yeah.
If, reacts, chances are, you can pick up next Jess relatively quickly, but there are tiny little gotchas where you have to learn, okay, these are where my routes go. These are what page components are and that sort of thing. So it's going from the very basics, what you should know, here's how you use them and then setting them free to build whatever they want.
Tara Z. Manicsic: [00:03:50] And what about yours?
Phil Hawksworth: [00:03:54] So I'm one of the, one of the things I like about this is that we decided that we would leave it quite broad so that we would have things that are specific to different technologies or libraries or frameworks, or it might be drilling down into certain aspects of JavaScript, but also using the Netlify platform.
So I've done. a mission or a course on, achieving one particular goal using the Netlify platform. So I did, a mission on split testing. so that covers everything you need to do from doing your first deployment on Netlify setting things up. So deploy from, get building out, get. branch model, sorry, branch deploys.
and then using those as the basis to do split testing and all the configuration along the way, and a few little kind of tricks. but it's hard to do all of that in five minute chapters. I know that we set ourselves a bit of a goal of keeping them not long and droney. Like this answer is turning into five within five minutes.
so I find that a little challenging, but it's a good discipline. How about, how did you find it? Terra? Where do you put for your course?
Tara Z. Manicsic: [00:04:55] mine was perfect. I don't know. I fit everything in the time. I don't understand your problem. but we, we could, we could evolve it to, to tick talks instead of videos to really, 15
NPM install
Sarah Drasner: [00:05:11] over three videos.
Cassidy Williams: [00:05:14] Yeah. I definitely found it challenging to make it. Five minutes and less. I think one of fine made it to like a six minute Mark, but it was amusing because you know how, when you're recording something, you might mess up. And so you re say the same thing and stuff. I did that a lot and I definitely had one video that started as 15 minutes and I was worried.
And then it was definitely down to three and I was like, that's humbling.
Tara Z. Manicsic: [00:05:40] So you have mine was on, angular and the JAMstack and it's, it's more along the lines of if you're comfortable with angular. even just on the beginning level, it's, starting to have you understand the JAMstack architecture, and get comfortable with, putting your project on a CDN using Netlify and also understanding what a CDN is.
which is important. and then as well as pre rendering with the English static site generator Scully, and then, making login forms, having sign-in and OS with things like, Netlify forms and that live with Netlify identity widget. And, yeah, it's fun. Like after you've finished, three missions, you also get a certificate and it's a pretty nice looking certificate.
I say, so myself,
Sarah Drasner: [00:06:30] Yeah. And what's really exciting is that we're going to keep on releasing more courses too. So like every week or couple of weeks, you'll see a new course come out from us. And so you'll eventually see courses on Gatsby and on next and on view composition, API, and. Every manner, Netlify functions every manner of kind of different pieces of the JAMstack and different technologies too.
that's really exciting
Tara Z. Manicsic: [00:06:53] because I don't know if the audience has realized, but we have these, random people on our team named like Sarah dreads, man, Ben, Hong and Jason monk store that are like content pros. So we've got some good resources to dig into soon.
Phil Hawksworth: [00:07:11] That
Sarah Drasner: [00:07:11] makes me feel a little pressured to going into
it's
like everybody's sitting here going good.
It was a little hard to make these courses, but don't worry. These courses are going
to come out.
Phil Hawksworth: [00:07:25] Also you yourself just a minute ago, said every week we're going to be dropping new courses. So I think, that's a new course every week
Jason Lengstorf: [00:07:33] Did anyone else's eyes bug
out of their head?
Tara Z. Manicsic: [00:07:37] Cassidy left the podcast, as soon as she said that.
But speaking of those three amazing people, they are behind a lot of the behind the scenes magic of how we create a JAMstack explorers. so I'd love to start dipping into the technology that we use to create this new learning platform in the Netlify community. so who, So who wants to talk about some of that technology?
Phil Hawksworth: [00:08:06] I volunteered Jason.
Jason Lengstorf: [00:08:10] I've been okay. I've been voluntold.
Tara Z. Manicsic: [00:08:14] You cut out after I volunteered. So I think
Sarah Drasner: [00:08:19] Jason, do you think it would be, I think it would be fun to hear about our, to talk through like how, next insanity are working and then go from there. Cause those are like the first big pieces that,
Jason Lengstorf: [00:08:29] yeah. okay. So we, when we were trying to think of how to build this, we were trying to.
Figure out, like how do we take a team full of people who are experts in different things? So like Ben and Sarah are really heavy in the view community and, terrorism, the angular community fills in web standards. Me and Cassidy are doing a lot of react. And so it was like, how do we build something that we can all.
Maintain. And then we threw all that other window Cassidy and ice cream, the loudest. So we decided to build it in react.
Tara Z. Manicsic: [00:08:56] they just put a message in Slack that was like catch-up fools.
Jason Lengstorf: [00:09:02] so Sarah's got a bunch of react experience. Tara's got a bunch of react experience. And so it was like very easy for us to say, okay, the majority of us are going to be able to hit the ground running.
if we use react. And next has a really good story for static site generation and being able to use a framework, but get all the benefits of static sites. so then we were looking at alright, we need to get some data here. And sanity has got this super flexible schema story where you can start with an empty file and you say, I want this field and that field.
And it's really customizable up to the point that you can invent stuff if you want. so with the two of those, we were able to use sanity's markdown input, which is a plugin they have. And we just went ahead and threw MDX into that with, with, we can add Custom components and stuff.
And then on the next side, we grabbed a, an MDX, like MDX next adapter, and we're able to do statically re-hydrated. like the MDX comes in, renders on the page and then when it loads it hydrates and we've got this like fully. Dynamic, content all coming out of sanity, which is really nice little head bending.
It's a nice
Tara Z. Manicsic: [00:10:10] little headband. The Oliver brains are melted. From this project in the best way possible.
Sarah Drasner: [00:10:16] Eventually we're hoping to open source it so that people can actually see what we did build and how it's done so that people can check out the code themselves and do some like posts that show how it was all done so that we can walk people through how it was put together.
And yeah,
Jason Lengstorf: [00:10:33] there's so much good medic content in here because so many of the things that we did were word. Things that, you have to do all the time. And some of them were just very, how do we solve this problem? Like the video stuff. For example, we teamed up with Cloudinary and, we were able to record our videos, but like for a video to be good, you have to do you want like bumpers and like intros and title cards.
And that can be a huge amount of video editing overhead. But because we were using Cloudinary, we got to use their API to Auto-generate our title cards and automatically insert bumpers and like countdown timers at the end and stuff. And all of that happened with these cool transitions and stuff through their API.
Instead of us having to manually go through and add these to each one, which I don't even want to think about how many hours I would have been with like the last minute video changes we were making.
Tara Z. Manicsic: [00:11:23] Oh my goodness. And the best thing is like we would have JAMstack Explorer, meetings. We had, we did a lot of mob pair programming or is it mob?
Just bomb pare,
Sarah Drasner: [00:11:36] depending on
Tara Z. Manicsic: [00:11:38] what should we have an episode on that you could listen to people saying correctly on like me, but we had a lot of those sessions on the team and I feel like a lot of them would be like, Oh, now we have to do this as videos and Jason being like cloud Mary can do that. Really?
Divya Tagtachian: [00:11:52] Wow.
Phil Hawksworth: [00:11:53] That was such an eye opener.
'cause I thought I had a fairly good understanding of what Cloudinary could do, but that was a real eye opener for me. Each time. we'd look at, Oh, how are we going to solve this particular problem? Or just make this easier. Jason would just crack his knuckles and go, I think you'll find we can just pass some parameters to Cloudinary and it'll happen by magic.
And there's some clever stuff behind the scenes in Cloudinary that was really fun to explore. Yeah.
Jason Lengstorf: [00:12:18] This is a little bit of a tangent, but didn't you just do something super cool with Cloudinary and Netlify redirects.
Phil Hawksworth: [00:12:23] But, yeah, I've been having fun with that just a bit, just because, Jason knew and I, did a bit of work together where we were trying to make it simple to, serve images from Cloudinary, without having to go through the process of uploading them first, just transforming the content that you have on your own site.
So we're looking at building a build plugin and things like that. And then. It's just a really nice example of clouds and Rees API, where you can say to them, just by putting something in there in the URL, it'll say, okay, this is where the source image is. Get that for me. And then all the transformations that are done to that, you can send from your CDN and it just turns out that will, if it's just a URL, then we could do that with a Netlify redirect rule.
so yeah, I, I did, made a little thing, which is. The two lines of redirect config that now clouds an area FYS, which is definitely, my, my side or any sites. so yeah, that's been really, that's another example of Cloudinary having a very slick interface that you can do powerful things with.
so yeah, I'm keen to go down the Cloudinary rabbit hole more and more as I discover stuff.
Tara Z. Manicsic: [00:13:25] So just one thing that I would like to do, is we're all extremely familiar with these technologies at this point, but just in case people aren't, can we give a quick description of each of them starting with Cloudinary?
Sure.
Jason Lengstorf: [00:13:38] Cloudinary is a, it's a like asset delivery software as a service platform. You upload images, videos. you really, you can put anything up there, but they're primarily focused on images and videos. and you can then using the URL or one of their SDKs apply transformations to it.
So if you've got an image, you can say, I want the width to be this, and I want the quality to be adjusted. I want to change the format from JPEG to PNG or whatever. you put those into the URL and then they will generate that asset and serve it at a cache URL so that you can put that into your own site or as Phil did you put it behind a redirect and then it's still on your own site.
and they have a bunch of other things they can do, but that's the elevator pitch
Tara Z. Manicsic: [00:14:24] and then next, and we also use next on Netlify right? Yeah. Cassidy, would you like to give this a little, a very, infomercial spiel on,
Cassidy Williams: [00:14:34] are you tired of your standard static site generator?
yes is a, it's a react framework. And so it gives structures to your react applications. and it can either server-side render or statically generate. Sites with, with react. and what's cool about it is because you can do either or you have a very hybrid application and what's cool about the next on Netlify package, the NPM package.
It allows you to use Netlify functions to do that kind of server side rendering stuff. So you can have even more flexibility in your applications while still having a powerful static site built with next JS.
Tara Z. Manicsic: [00:15:14] yeah, our team has been doing a lot of work on next time that with buy in it's open source.
So if anybody wants to contribute, take a look at it. do we'll put the. Link to it in our show notes. speaking of we'll say this again, but explorers that netlify.com is where this project actually exists. I always forget about that part, the information part. and then we also. I know we also worked with sanity IO, a headless CMS.
do we typically, I think we've covered what headless CMS is our before, but just in general, you're basically taking away. That, basically you're putting in data somewhere and they don't care how you use it. So you have the UI, your users are able to get the information in, and then it gets sent somewhere for the developers to use.
But if you're just a content contributor, you don't need to know anything about that. You can just.
Sarah Drasner: [00:16:12] What I really liked about working with sanity was that everything was programmatically creating the, UI that you're using instead of globbing things together in a gooey that might be frustrating to piece together.
I might come together in a way that you weren't expecting, or you can't really modify because you're programmatically connecting everything and defining these things. Schemas, you can also create custom validation. They have really nice validators to say, you just pass it in and say, minimum characters is this.
Or, please don't let us up too much because it's so flexible too. You can we were hooking things up with serverless functions to, bring in content, which is super flexible. You can do whatever you want with it. And that's really one of the nicest. Pieces, especially because as you go into the dashboard guides you through different levels of the application.
Like you can go several levels deep. If you're going through, like for instance, we have, our missions, which are the course and then the stages, which are the, each one of the videos, but for each stage you have a transcript. And things like that, and you can associate different relationships with instructors and things like that.
So it's really flexible. And it's more on the Devery side in terms of setting things up, which I personally really liked because it, you can have that control over it.
Phil Hawksworth: [00:17:29] Yeah. I love the fact that the scheme is defined in code and that code lives in your repo. And we'd have conversations about how the scheme might.
Might evolve over time and then it does. And it's, it's versioned in the repo. I really liked that. It reminds me a tiny bit of using Django and going through like migration, like database migrations and things like that as you evolve those, it just, I don't know, it feels really clear because you can see it in code says.
Defined that way. yeah, that was lovely. That was the first time I'd really done very much with sanity other than just poking around and doing some hello world stuff and experimenting. And it's really nice to see how powerful it was and how, and how well it would work for us, but I just also really liked the model of a decoupled.
CMS. I really like the fact that we, we've put all of this investment of effort in defining the schema and then evolving it and then populating content and, using next has worked out well for us. But if we, if halfway down the line, we decided that we would, if we'd been using a different tool, and said, Oh, actually we, this isn't going to do it for us.
We could have been adopted next halfway through and not have to throw away all of the work in the background. I really liked the fact that, you're portable in that way into, you've got those two things living in different places. So you can switch out tools as they evolve over time.
It's really nice kind of freedom. I think.
Jason Lengstorf: [00:18:53] Absolutely. I like what I liked about it really is, when we first started this project, we had a big meeting where we talked through all of our ideas. And then we were all really confused because we didn't like we had all these ideas and we didn't know what to do with them.
And so then we got into a whimsical document, which whimsical is like a, a collaborative whiteboard sort of deal. And we put all of our ideas on the board and then drag them into a shape. And then we were more or less able to just write that shape down as a Jason schema. And there's a little bit more too.
It's not just Jason, but The mental model is there. if you go into sanity and you say, this is the schema of our thing, that's the thing. So we were able to translate our mess of ideas into a mind map and whimsical into an actual schema insanity. And it was easy to trace that kind of evolution over time.
that part has been really nice. Like it, it felt a little less messy than trying to get into some of the other CMS where it's all point and click. Sarah said,
Sarah Drasner: [00:19:54] one of the other kind of interesting technologies we used with serverless functions to generate the certificate. So basically Taking a serverless function, putting in, programmatically creating it with SVG because you can change the names and the dates and things like that. And then using HTML to, to PDF, to take those, basically you're turning it into streams that you then turn into a PDF if it ends up being a little bit tough.
Like it's one of those things where it. Doesn't end up being that much code, but the streams themselves are very, you have to work with them in a very particular order and type of way, otherwise everything kind of explodes. so it's at the end, you're like, wow, I spent a really long time writing six lines of code.
but it, it's fun because what you're doing is basically generating all of these things on the fly based on the date and the name of the person.
Tara Z. Manicsic: [00:20:47] I think another thing that was really interesting is, we definitely stuck to a lot of the get workflow. as far as, I think one of the big things for me that attracts me, that attracted me to the JAMstack architecture was the accessibility of a get workflow.
Whereas like we're all on, let alone different time zones. so we'd be working at different times, but also Ben, you jumped in at the start of this project, re We didn't drown you.
Divya Tagtachian: [00:21:13] but
Sarah Drasner: [00:21:14] I think at times
Divya Tagtachian: [00:21:15] it, it
Tara Z. Manicsic: [00:21:17] was amazing to see how you would, pick up issues, but, how do you feel like the workflow went for you coming into the team?
Ben Hong: [00:21:23] Yeah, yeah, so that's some context I came in the middle where a lot of decisions had been made at this point. So I'm getting to see all these, like I'd never worked with sanity before never worked with next before. So it was definitely a very. Fire hose approach of like, all right, where can I, where's the smallest amount of contribution I can have to, I just start getting comfortable with things.
and then just like just rinse and repeat until eventually, and, a big shout out to Jason for just being awesome at pair programming and helping to get, navigate me through a lot of the bigger pieces. Cause I don't think I would have solved the MDX in next problem by myself in a month.
Sarah Drasner: [00:22:01] Looking like Ben's contribution graph. It's it looks like a launch of a project that goes
Divya Tagtachian: [00:22:06] okay.
Tara Z. Manicsic: [00:22:11] Yeah, we definitely got
Sarah Drasner: [00:22:12] less
Tara Z. Manicsic: [00:22:12] spoiled because we each, like either in multiples or one-on-one had our own personal learn with Jason's. Yeah.
I feel like we need to sell that. We need to make that a product somehow.
Divya Tagtachian: [00:22:34] So
Phil Hawksworth: [00:22:34] do you think that, the, do you think that the fact that we use these various tools that you know, that many of them are, as a service or it's something that is, an open source tool, do you think that makes it easier for people to draw? I think it makes it easier for people to drop in.
and arrive on a project and then pick some of these things up and have them be familiar. But Ben, as you mentioned, you hadn't used these things before, so I'm just wondering if it's just the model might be somewhat familiar or somewhat widespread now because of this kind of decoupled approach and you're consuming API APIs and then.
Doing stuff with them. so did the model feel familiar even if the tools didn't or was that also what are they doing? Why are they doing it this way?
Ben Hong: [00:23:19] yeah, certainly, as 10 mentioned, so Sarah and I do a lot with the view community, so we've done a lot of work with NOx. So in that regard, A lot of mental models from next did at least partially migrate over to next because they have made some different decisions.
but to Phil's point though, the mental models, as far as like gems, like API calls, that was, that did help me to just tread water as I was going through. Just feeling my way through things. but I do think that obviously with each new tool that has its standards, it can be intimidating for someone new because then it's like the Cloudinary, the several lists, the, this the, that, and it does feel like a lot.
like I think. Before I joined, I knew that y'all were using sanity. So I tried to read all the stuff, but that's definitely not the way to go about it. just sitting with Jason for 30 minutes, it's already got me like just enough knowledge to be dangerous with sanity. Cause I wasn't architecting the whole thing from scratch, but it was like to understand where things were coming from and then getting that hands on experience is really what I think got me familiar.
But, It's like a catch 22,
Jason Lengstorf: [00:24:14] Ben was incredible. Like I've never seen anybody dive into a project with both feet and start running that fast. It was really incredible. but we also made some very specific architectural decisions at the beginning. Like for example, sanity has multiple ways that you can work with it.
They have the graph QL approach, and then they have their own query language. And then they have a, like a markdown approach or they have their own I don't even know, markup schema that they use. And we very intentionally chose not to use the proprietary formats because it would be harder to ramp people up on.
so we wanted the things that people would know. We want to graph QL. We wanted Mark down things that you can find documentation and onboarding for. Outside of the company. and so I think that was a consideration, That, and honestly, I think if that hadn't been an option, we probably would have ended up using a different platform.
Sarah Drasner: [00:25:05] Yeah. Yeah. That's definitely true. And I think like in terms of transferring things over from next to. next JS. I think Ben and I were in chat sometimes where we're like, this equals this, like
getting the kind of mental model between the two things like, okay, if you, if we want it to do this in Knox.
And even for some of the SVG, UI elements, like the tracker. I wrote it in view first and then transferred it over to react because it's just easier for me since I'm so fluent in view with while I'm building it, it's easier for me to think through it that way. And then it wasn't so hard.
they transfer really directly, so it wasn't so hard to just transfer it over once. It was done. It's just whatever you're the most fluent in. But I think what's interesting about these technologies is that they are really comparable in a lot of ways. the, there's kind of one-to-one things, right?
everybody has some concept of a loop. It just goes. It's different in each one. And so you can move things over. I don't know if Tara, you felt like that coming from English.
Tara Z. Manicsic: [00:26:05] there's so many things where it's just I know what I want to do. What's the name for it and next, or in react, And it's just it's definitely. I try. I think, I feel like I bring this up a lot, but it's just yeah, all the same concepts are there. We've just given them different names and small things are tweaked in the background to change it. But yeah, spot on. I totally did the same kind of logic puzzle.
Cassidy Williams: [00:26:26] I definitely did that.
Like with the responsive navbar I did it all in code pen first, and then I copied it over and
Divya Tagtachian: [00:26:32] reacts a little bit.
Sarah Drasner: [00:26:34] Kopin is really good for that because you're not thinking about any other things. Dependencies, you're not, it allows you to think in kind of a sandbox of just what's the problem I'm trying to solve right now without anything.
Yeah.
Tara Z. Manicsic: [00:26:46] So I think the biggest thing with our team is basically merging yourself into the ponds and uses of tacos. And I
Divya Tagtachian: [00:26:55] have to say,
Tara Z. Manicsic: [00:26:58] I think then. Fully succeeded off the charts with that. what more could you ask? Yeah, that
Cassidy Williams: [00:27:04] was a big part of his onboarding.
Divya Tagtachian: [00:27:06] Yeah.
Tara Z. Manicsic: [00:27:08] Yes. If you all could see the Slack chat for this project and we would be very embarrassed.
Divya Tagtachian: [00:27:14] I think
Phil Hawksworth: [00:27:15] that's true across, I think that's actually true across a lot of Netlify. and. No, that's, I'm sure that's not a terribly negative thing to say. I was catching myself, but there is a lot of, there are lots of puns around, not just our team, they're all over the place and there's lots of food chatter.
and there's a really, I wish I had the exact number, but it was something like 1100 and something or other, Important data that describes what it's like to be at Netlify 1100 and something or other custom emojis. That's true.
Sarah Drasner: [00:27:48] Let's do them are from
Tara Z. Manicsic: [00:27:49] Jason
Phil Hawksworth: [00:27:53] Jason's then
Tara Z. Manicsic: [00:27:55] Lindsay too.
Divya Tagtachian: [00:27:56] Since Lindsay has
Tara Z. Manicsic: [00:27:57] joined the team, we have great next on Netlify coverage and lots of emojis,
Divya Tagtachian: [00:28:02] which is what matters. Exactly.
Tara Z. Manicsic: [00:28:04] that was the whole job description. So I see no problem there. so yeah, I want to wrap this up today because we could talk about this for a very long time.
And, we hope to in the future have on remotely interesting, like more in depth conversations on the different technologies we used in general because, we find them extremely interesting. and we would love to teach you about them or talk to you about them or over, but as always at the end of the mildly interesting, we ask the really hard hitting questions, and just try to dig in real seriously into topics.
So I thought I would ask the team, would you go live in space for a month?
Phil Hawksworth: [00:28:39] Would you go live in space or where
Tara Z. Manicsic: [00:28:41] did that? Where it didn't. They.
Cassidy Williams: [00:28:43] So when you sit, so I have a lot of questions about this.
Tara Z. Manicsic: [00:28:49] You've got 45 seconds just very quickly.
Cassidy Williams: [00:28:52] Where in space are we living? Are we living on a space station or are we living on a planet or a moon?
Tara Z. Manicsic: [00:28:58] So here's the thing I thought about it being like the Marsh habitation.
Phil Hawksworth: [00:29:04] Why is it, why was that in a Dutch Jackson?
Jason Lengstorf: [00:29:08] I thought she was, I thought she was paying homage to, to serve Sean.
Divya Tagtachian: [00:29:14] No,
Tara Z. Manicsic: [00:29:14] I just couldn't open my mouth correctly. so yeah, I guess in my mind, I'm thinking more like interstellar.
Space community.
Cassidy Williams: [00:29:23] Okay. Yeah. Cause I'm thinking like, is it interstellar type or is it gravity or is it the Martian? there's a lot of movies where everything goes wrong and I want to know which center.
Tara Z. Manicsic: [00:29:33] Yeah, exactly.
Phil Hawksworth: [00:29:34] Yeah. It makes a difference.
Tara Z. Manicsic: [00:29:37] Okay. Yes,
Cassidy Williams: [00:29:38] Mars. Okay. So living on Mars for a month?
Tara Z. Manicsic: [00:29:42] Yes or no?
Technically. Okay, good. Yeah. Is
Jason Lengstorf: [00:29:50] there wifi?
is it, is this the Mars colony before or after Starlink starts working
Phil Hawksworth: [00:29:59] there's
Tara Z. Manicsic: [00:30:00] wifi, but it's, Phil's wifi,
Jason Lengstorf: [00:30:02] my wife
Ben Hong: [00:30:06] all the time.
Phil Hawksworth: [00:30:08] I love
Jason Lengstorf: [00:30:09] it. I love it because. As she throws that insult spilled grows,
I would live in space. Why now? I feel like you're not going to get on your death bed and regret that.
Phil Hawksworth: [00:30:24] Is it okay to any of you that maybe it's
Divya Tagtachian: [00:30:26] all of your
Phil Hawksworth: [00:30:27] wifi, a problem. And mine is fine.
Tara Z. Manicsic: [00:30:35] Another remotely interesting theme
Divya Tagtachian: [00:30:37] is, feel sense that it's us, not his way.
Phil Hawksworth: [00:30:44] I'm sorry. I've got to, I live in England. So we have the victim. We have Victorian wifi that was built by the Victorians.
Tara Z. Manicsic: [00:30:52] It runs on T
Phil Hawksworth: [00:30:54] I definitely would, by the way, I definitely to go. I don't like the idea of the journey there and back, because that might be a little bit more than a month, but the
Tara Z. Manicsic: [00:31:03] month
Phil Hawksworth: [00:31:05] the journey, but no a month there.
Tara Z. Manicsic: [00:31:09] Okay. So follow up then. Would you live on Mars for a month with this team? Yes, Cassidy left again. Cassie was just
Phil Hawksworth: [00:31:19] so done with us.
I would, it would have to be February. I have to be the shortest one.
Tara Z. Manicsic: [00:31:38] I totally would. If Jason had like unlimited cooking material, I think I would. Yeah.
Cassidy Williams: [00:31:45] Yeah. Cause I, my hesitation with saying yes to any of this or the modern conveniences that have made me lazy, I really just, I want good food. I want to be able to play video games. I don't know if the ping would be really good on Mars.
Jason Lengstorf: [00:32:01] Yeah. This is actually a really good point. What's the kitchen setup? what kind of oven do we have?
Phil Hawksworth: [00:32:06] Yeah.
Tara Z. Manicsic: [00:32:08] Okay, okay. So full scenario is like Mars, like from the movie. but it's America's test kitchen and we have, every source of. I said every source of animal byproducts. That's just weird.
Phil Hawksworth: [00:32:26] It sounds to me like what you're describing earth.
Cassidy Williams: [00:32:30] Yeah. I'm gonna say no, I might be an odd one out, but I'm
Phil Hawksworth: [00:32:34] saying this interaction.
Jason Lengstorf: [00:32:36] No, in general or just no, not with the team.
Cassidy Williams: [00:32:40] With this team, it's a, maybe depending on the resources that we have, but I would not go just by myself. I'd rather
Tara Z. Manicsic: [00:32:48] have
Cassidy Williams: [00:32:49] gravity
Tara Z. Manicsic: [00:32:50] that I say yes or no question
Phil Hawksworth: [00:32:54] sensitive.
Cassidy is tentative.
Jason Lengstorf: [00:32:58] I don't know. Now that we'll put down Cassidy as question marks. All right, Joel, I think we're going to call that done because we could debate about outer space all day. so next time, make sure you tune in where we're going to have a really nice discussion about the JAMstack ecosystem with a special guest.
more details on that soon. So make sure you Mark your calendars. Come hang out with us until then. I am Jason. Sparkly meteor, shower, Lang store.
Ben Hong: [00:33:36] I am Ben the bean black hole.
Phil Hawksworth: [00:33:44] I am Phil. Dark side of the moon. Hawksworth
Sarah Drasner: [00:33:48] I'm Sarah diggity, dark matter.
Phil Hawksworth: [00:33:57] Happy Saturdays. Look how happy she is with dignity.
Tara Z. Manicsic: [00:34:04] And I am Tara mama Milky way. And the next
Divya Tagtachian: [00:34:06] thing
Phil Hawksworth: [00:34:14] we
Tara Z. Manicsic: [00:34:14] should be sleep deprived more often. And that's how I showed you. Oh no.
Phil Hawksworth: [00:34:20] Cause he's going to do one Cassidy. He's going to do, when she came back specifically,
Jason Lengstorf: [00:34:24] you need a name.
Cassidy Williams: [00:34:25] I'm Cassidy, Matt Damon Williams.
Phil Hawksworth: [00:34:32] It was worth it.
Divya Tagtachian: [00:34:36] I
Sarah Drasner: [00:34:36] don't know if people can tell that we're
Divya Tagtachian: [00:34:38] completely delirious.
Tara Z. Manicsic: [00:34:45] Thank you all for joining us remotely and
Phil Hawksworth: [00:34:51] is waving.
Welcome to Remotely Interesting brought to you by Netlify.
People who were remotely interesting:
People have long referred to the Jamstack as an architecture for static websites. But, dynamic data and content? Guess what, the Jamstack can do that. We try to help unravel the long, winding road of rendering terminology on the way to talking about dynamic content in the Jamstack. Hope we help clarify something, anything, let's just say we hope we didn't confuse you more!
The word "render"
What is pre-rendering?
Where is the page being generated?
How to do dynamic in the Jamstack
TidBits & ThoughtThings™️
SHOW NOTES:
As always, we hope you find it remotely interesting.
TRANSCRIPT:
Cassidy Williams: [00:00:00] Previously, on Remotely Interesting.
Phil Hawksworth: [00:00:04] This could easily spiral into an entirely different episode.
Cassidy Williams: [00:00:09] Hello and welcome to Remotely interesting.
Phil Hawksworth: [00:00:12] This is Remotely Interesting.
Divya Tagtachian: [00:00:14] Well, that seems a little presumptuous.
Sarah Drasner: [00:00:16] No, no. That's the name of the show?
Tara Z. Manicsic: [00:00:26] welcome everybody to another episode of remotely. Interesting. We are very excited to have you here we are today going to talk about the Jamstack and our most long running segment that we've ever had. Because it was on one other episode,
Whoa,
called the Jamstack can do that.
Phil Hawksworth: [00:00:49] Oh, that's fun. Favorite.
Everyone loves
Tara Z. Manicsic: [00:00:51] them
Phil Hawksworth: [00:00:52] so many letters. It's
Tara Z. Manicsic: [00:00:54] so funny. All that snail mail coming in with requests for more can the Jamstack do that.
So
Tara Z. Manicsic: [00:01:02] anybody else call it snail mail?
Phil Hawksworth: [00:01:03] Yeah, my thoughts on father he's
Cassidy Williams: [00:01:08] usually I say it and someone's like, wait, you need real mail. And
then that's a whole thing.
Tara Z. Manicsic: [00:01:17] Um, and rendering on the Jamstack,
which is what we'll be talking about today.
Tara Z. Manicsic: [00:01:23] Um, I think this is a really important topic because people are so used to talking about the Jamstack being a static site, that when they think about dynamic data or hydration, It's a bit of a, nobody really understands how, I mean, people understand how it has in the damn stack, but not everybody.
There's a lot of fun around this
one as
Phil Hawksworth: [00:01:43] well.
Tara Z. Manicsic: [00:01:44] So I thought, Hey Tara,
Cassidy Williams: [00:01:45] what's fun.
Tara Z. Manicsic: [00:01:46] It's fun with a D
Ben Hong: [00:01:47] nice.
Phil Hawksworth: [00:01:50] I don't think that's quite
Ben Hong: [00:01:52] right.
Phil Hawksworth: [00:01:55] I'm heartbroken hook in that. You'll have to learn that that's not what it is now. It's really sad to me,
Tara Z. Manicsic: [00:02:01] but you know, this is the first time I heard it in the real world this week. So it's fear, not misunderstanding, fear, uncertainty, and doubt, fear, uncertainty, and doubt. And it's the first time I've ever, I just heard it this week.
We won't talk about all the things going on this past week, but like that was the first time I heard it in the non-tech world. And I was like, Oh, that's not just a techie thing.
Phil Hawksworth: [00:02:26] It's
Cassidy Williams: [00:02:26] not just something Sarah Drasner made up. Huh.
Tara Z. Manicsic: [00:02:33] So yes, fear, uncertainty and doubt, and the Jamstack community and the tech community in general, about how, how possibly could the Jamstack actually give you, render your dynamic data?
Phil Hawksworth: [00:02:46] How there, you know, I'm, I'm more troubled by the word render rendering is, Oh, what a minefield? Um,
Tara Z. Manicsic: [00:02:57] layered dessert.
Phil Hawksworth: [00:02:58] Yeah.
Lay a dessert. But it does, like, it was one of those words that once upon a time I understood and it had one definition and one meaning and everyone was happy. And then, and then I don't know things happened and it's just been, been reused. And I don't know, kind of reappropriated so many times. And I suppose really just the way that we render I should I air quotes the way we render.
Um, it's just got more complicated and they're more options now. So maybe it isn't just about. Confusion or misunderstanding, maybe just the world got a little bit more complex, but I do remember you think so? Well, I do, I do. I recall the first time I ever, um, said to someone in a conversation, um, Oh yeah, because then the server can render, uh, then it results in no server render.
And the person looked at me with kind of raised eyebrows and said, you mean the server returns HTML, like. Web server does. And I felt like I was just like bringing, um, bringing some silly buzzword into the conversation where I had no business, but it does feel like the situation just got more
Tara Z. Manicsic: [00:04:07] complicated and you felt smart.
You were like so brilliant. No,
Phil Hawksworth: [00:04:11] I, I felt like I was going to sound smart and then,
Tara Z. Manicsic: [00:04:16] well, it's funny too, because, so, uh, There are. So some we have, we do actually have written agendas for these podcasts that sometimes we look at and someone in this, in this group has helpfully put the various subtypes of rendering in the document for us to talk about.
And I'm very happy because, so I've just been doing a lot of research on rendering. And the thing that I read had the differentiator between server rendering. And server-side rendering to put server-side rendering under universal rendering, which made my brain go. I don't want to,
um,
Ben Hong: [00:04:54] yeah,
Phil Hawksworth: [00:04:55] sorry. I don't know if it was just because you said the word rendering so many times, but it started, it's already started to lose meaning for me in just that one sentence we're in such trouble in this episode.
Tara Z. Manicsic: [00:05:06] It's agreed. Let's just quit while we're ahead.
Thanks everybody.
Tara Z. Manicsic: [00:05:13] Bye. Have a good one. So, so one that we're really familiar with is pre rendering. Can somebody give me a seven word answer to what pre rendering is?
Phil Hawksworth: [00:05:27] This is making it harder. People can't see this, but it's, it's a real delight to see Cassidy counting.
If she had, if she had to count to 11, her socks would be off.
Ben Hong: [00:05:40] Now,
Phil Hawksworth: [00:05:43] I know I don't want anyone to save her and this might make for a really terrible listening, but it's just fun watching her work this through. When you build a
Cassidy Williams: [00:05:51] page before serving.
Phil Hawksworth: [00:06:03] No, we won't go down that, that road.
Tara Z. Manicsic: [00:06:05] We could do five building pages at build time. Right?
Phil Hawksworth: [00:06:09] This seems like it might be a good exercise. Cause that's, that's about the most concise and clear definition of that. I think I might ever have heard, see the
Cassidy Williams: [00:06:18] counting works count on your fingers before you do any work tasks.
Phil Hawksworth: [00:06:22] This is, this is going to be excruciating to listen to this episode.
Tara Z. Manicsic: [00:06:31] But this is what a lot of Jamstack sites do. Right. Building it build time.
Phil Hawksworth: [00:06:36] Yeah. And for me, that's, that's that at the heart of Jamstack. I mean, I know there's other things there's JavaScript that can happen in the client. That's using API APIs for me, the thing that attracted me to the Jamstack in the first place, and I think it's still really core is doing as much work upfront as possible so that your web server doesn't have to, so yeah.
Building. And I've got to get my fingers out now as well. Building the, I can't, I can't speak in counts at the same time. I can't, I can't do it. Um, but yeah, building the page ahead of time is, is pre rendering, right? So generating the view, generating the HTML, doing it, doing it at a time
Tara Z. Manicsic: [00:07:12] and it's not to add even more jargon and buzzwords, but then it makes you think about those rendering concepts of like time to first byte, time to first paint, time to first.
Uh,
Tara Z. Manicsic: [00:07:25] I think I have some here. Yeah. First Contentful paint, time to interaction. So these are all things that we use in order to kind of like give us numbers to know. Which ways are, it's like our big O notation for rendering.
Cassidy Williams: [00:07:47] That's a good way to put it, because if you think of, for example, with client side renderings. So I feel like there's a lot of confusion there because. Single-page applications were so popular for so long.
Tara Z. Manicsic: [00:07:58] Um,
Cassidy Williams: [00:07:59] a lot of times people are just like, well, client-side rendering is kind of similar because you're just putting all of that JavaScript on the page.
And so when it's loaded, it, it runs, but it is different. Uh,
and. It
Cassidy Williams: [00:08:11] differentiating between those can be confusing, but I think very key to understanding the difference between the pre rendering concept and the client side rendering concept, where client side, meaning all of the JavaScript is put on the page, meaning even the JavaScripts that does build everything and put on the page is served there.
But you cut some of that JavaScript away when you pre-render, because you did the build part to put it on the page earlier.
Tara Z. Manicsic: [00:08:36] And so, I mean, that's going to be quite fast if you're pre rendering everything. You're just serving static content. So that's going to be quite fast and you're able to cash it.
It's a little easier to understand with caching, whereas like client side rendering, you're doing the, client's doing everything right? The rendering, the data fetching all the templating and routing. So you can like, once it starts to get bigger than a simple. Single page app, you're going to have to do a lot of like codes, wedding, and lazy loading and all those other buzzwords that hurt my brain.
Phil Hawksworth: [00:09:10] Yeah. And that's the, that's the key difference, right? The, uh, between something happening on the server and happening in the client, you're then having to do all of that work in the client. So, and we all know that the. Your, your browser might be different to my browser, to the next browser is the most hostile environment for any code to run is like a web browser because they're all different and the devices are all different.
So, um, so yeah, th the client side thing is going off and fetching all of that, those resources, and then using the browser to render those, uh, on demand in their clients. And I can tell that my internet connection is failing me because even though I can feel. See you and I can hear the words coming out of my own mouth.
You don't just giggling at me cause I've frozen in an amusing pose, which no one who's listening to this or will ever be able to see, unless one of you does something horrific, um, which I trust you not to do. I
Tara Z. Manicsic: [00:10:05] tried very hard not to make any, any facial action. So we have, we have pre rendering where we're building.
We're building our assets at build time. We have client side rendering where all of that work is happening on the client. Then we have server rendering, which is all of that HTML is being built on the server and then being served up. And then we have hybrid or universal.
Phil Hawksworth: [00:10:30] So I think before we go into hybrid, I think we need to put that last qualifier on the server render, which is it's it's as you say, it's all being rendered on the server, generated on the server.
The view has been generated in the server, but it's happening on demand. Right. And that's the thing I've, I've heard, um, server render being used to describe both on demand or in advance. Um, which is for me is where a lot of confusion has come in. Cause people talk about server into, and yes, it's happening on the server rather than on the client.
But. Um, server render typically means happening per request on the server. So, uh, when a request comes in, it does, it does what it needs to do to generate that, that view.
Ben Hong: [00:11:12] They're just like, I, I know that we've just talked a lot about how rendering is such a charged term. Right. But really we're thinking about where the page is being generated.
Right. So like pre rendering is basically saying we're generating it in advance and then we'll just dropping it on the server. Whereas we're saying like where the server rendered is really the servers generating the thing. When it's being like called upon. Right? So that's like two different points of time when the thing is being generated versus client side, which is like, it is being generated, like not only on the fly, but on the client's browser.
And maybe that's another way of thinking of it instead of the rendering
Phil Hawksworth: [00:11:44] term was supercharged in our industry. Yeah. And actually you, you did something there, which has never occurred to me before, which is actually introduced a third place. Um, I cause cause when you said pre-generated and then put it on the server.
That's a suggest two different places, which he calls it is which Oh, where w th there's potential that will muddy the waters here for a second. But I think there's clearer, cleaner stuff ahead as a result, because yeah, there's rendering on the client and there's rendering on this, the web server, and then there's rendering on.
Build environment. Right? So those are the, those are the three things, but no. And how are we introducing more, more language, but it definitely does describe what you were talking about.
Tara Z. Manicsic: [00:12:26] So when we talk about then hybrid, we're talking about the,
Phil Hawksworth: [00:12:33] okay.
Tara Z. Manicsic: [00:12:34] The server is basically we're combining client side rendering and server rendering.
Right. And so we're saying that like the server is going to render that HTML plus the JavaScript that then the client side uses that JavaScript.
Ben Hong: [00:12:52] Yeah. I mean, that's what I understand. It's sort of like hydration is also tossed around a lot, I think with this particular mode, because when you're, you're getting that sort of, when we, you know, hybrid, like you're getting both the approaches of like when the frame, the frame was, we'll try to like serve up whatever is already static, whatever it doesn't need to be dynamic should already should be generated by the server.
But then anything else that, you know, basically we can't predict ahead of time that is then left up to the client to do so that's at least my. Tentative understanding of it.
Tara Z. Manicsic: [00:13:21] I was just going to say, I just always heard hydration when people want to put it simply they're like filling an object with data, but then I ran another definition that I have here.
Cause there's no way that I would memorize this. Just I could sound, try to sound cool and act like I memorized it, but it's once the HTML is rendered, hydration will process inline Jason state stored client side for data in the page and attach dumb event listeners. Which is way more complicated than just saying like, yeah, fill an object with data.
Cassidy Williams: [00:13:58] And the more I use next JS, the more I realized
Phil Hawksworth: [00:14:01] that it's
Cassidy Williams: [00:14:03] kind of. They called themselves a server side rendering framework for a very long time, but really it's a hybrid rendering framework because of stuff like this, because they they're all of the routing. They have some Jason object kind of like what, what you just described w with all that.
Put the data in a place. They have this Jason object that is loaded with the server side rendering stuff. So you can do client side transitions between pages and everything. So technically it's server side rendering, but also some of it is kind of client side rendering, but then you can also statically export it.
And so it's, it's a very funky combo framework that does all of those
Tara Z. Manicsic: [00:14:42] naming thing again, cause angular universal also does hybrid, but it's like the touting is like server side rendering. For angular and it's like, technically it's universal or hybrid rendering, but nobody can tell the difference between any of these words.
So we're just going to put the words that get a lot of attention
Phil Hawksworth: [00:15:02] in some ways. I think one of the things that's made this all harder and I don't, and I mean, I don't know if we've necessarily made it simpler so far in this conversation, but one of the things I think there's made it harder is. Uh, as more frameworks come up that try and tackle some of this and try and try and do a lot of this for us and kind of introduce some magic for this.
Um, that kind of, I don't know, makes the mental model a little bit less clear because the frameworks are doing a lot of the heavy lifting for you, which is wonderful in many ways. But I think also it puts a bit of distance between the people using the frameworks and the understanding of the fundamentals that happening.
Behind it. Um, I felt like I had a much clearer image in my head of all of the different ways that rendering happened bef like when I cobbled together something myself that years ago, you know, I, I made something with, I think I made it with Jekyll actually, which was, I took some data and I had some templates.
And at build time, I turned that into HTML and every page on my site had a view and that was done great. But then I also, um, Uh, used a bit of JavaScript to progressively enhance all of the, the links on my page to request the same bit of data that I was using at build time to populate my templates. So, so then I would just be caught in that bit of a JavaScript in as Jason and then client side, I would be doing a client render instead of a whole request and response, and that felt nice because I could, I could do.
In page transitions. I was sending more, so anything less data down the wire, but there weren't that many moving parts. I ultimately had templates that I use both as client side and server side. I had content stored as Jason objects, which was used client side and server side. And I had a really small amount of JavaScript to just kind of hijack the links and say, Oh no, if I'm I'm JavaScript doing this so I can go and do stuff with JavaScript.
So get the, get the. Jason for the view rather than just the link for the, the, the page itself. And that felt really. Clear to me when I was putting that together. And that's where I stumbled into this term isomorphic rendering, which was another example of me going look at this. I'm going to sound clever in a minute.
When I used this term and it had lots of people going, well, you're an idiot, I'd you saying things like that because it just sounds like a grandiose term for us. It's the same bit of code happening here or there. But I think the point I'm kind of dancing around a little bit is. Since I made that and I've kind of figured that model out.
Um, it didn't feel like I myself was abstracting away from the mental model of what the rendering was. Um, but I don't think I necessarily had very convenient kind of brandable terms for it. And I think that's what the frameworks kind of introduced. It's like we branding those terms so we can talk about them intelligently, but.
If we don't all agree on the same terms at the same time, then it can just get a little bit tricky.
Cassidy Williams: [00:18:03] Yeah. Same term, same time and same approaches to, to getting to those terms, because then that becomes a whole other animal
Tara Z. Manicsic: [00:18:11] because in itself, like hybrid rendering, I mean, it can like. When you get into the nitty gritty of it, the technology behind it can get pretty complicated and cumbersome, let alone the user interaction because yeah, you'll have a quicker, first time to paint, but you won't necessarily have a quicker, first time to interaction.
So you'll get that HTML page with no interaction yet. And I'm like, I've run into this so many times where I go to a website and I'm like, yeah, that one. That, that one click
Ben Hong: [00:18:41] that one.
Tara Z. Manicsic: [00:18:43] It doesn't have any of those event listeners yet, so it's not responding to my interaction with the page so I can see it.
And, yeah, that's great. But then it can be a little, even more confusing for the user because you're, it's, you're not getting that feedback.
Phil Hawksworth: [00:18:58] Yeah.
You know, if JavaScript isn't there, then all you'll get is a pre-made page that was rendered at bill time. Um, and so really there should never be a position where, well, my JavaScript is here to change the behavior of the links, but nothing else that I need. Um, and I guess different frameworks handle this stuff differently.
I mean, Ben, you've done loads of stuff with view and lots of things in the view family. Um, Does, um, I'm thinking about Nextel, I guess in particular doesn't that does not regenerate, uh, uh, a view of every page in the site, or is that something you have to tell it to do? Or is it impossible?
Ben Hong: [00:20:03] So one of the modes, right next tries to be flexible because it knows that's not always what you want, but, um, yeah, you're able to generate like, basically an HTML page for every view basically, as you would normally expect to.
And then to your point of progressively enhancing them, um, as you have them, um, that's been my experience with nuts so far.
Tara Z. Manicsic: [00:20:20] So how do we, so how do we see as done in the Jamstack? Um, as far as like getting data in. Um, and so we already talked about the fact that we pre-render a lot of pages, but so if we want that dynamic content in the damp.
And
the Dean of
Ben Hong: [00:20:38] the database
Phil Hawksworth: [00:20:47] I'll be right back. I'm just, I'm just registering a domain name.
Tara Z. Manicsic: [00:20:53] Oh, geez.
Um, so yeah, data dynamic.
Tara Z. Manicsic: [00:20:58] Jam staff.
Oh,
Phil Hawksworth: [00:21:02] whatever in front of me before we started recording, you were mostly in front of me.
Ben Hong: [00:21:07] I think felt
Phil Hawksworth: [00:21:08] a little unfairly that I was stumbling over my words. I mean, admittedly, I couldn't say my own name.
Tara Z. Manicsic: [00:21:14] Mockery.
Phil Hawksworth: [00:21:15] Yeah.
Cassidy Williams: [00:21:16] Well, you did say we wanted more bloopers in the show, so
Phil Hawksworth: [00:21:20] there
you go.
Phil Hawksworth: [00:21:23] I'm sorry, Terry. I'm sorry. I interrupted you horribly. No,
Tara Z. Manicsic: [00:21:26] it's fine. Yeah. Our coworker Jason Lang store, um, he decided he didn't want to be on the show today. He had absolutely no interest. Yeah. He wasn't sad at all that he was missing it. Uh,
but, um,
Tara Z. Manicsic: [00:21:41] yeah. Actually quite disappointed that he couldn't join us out today, but he's got a lot of really great content on how the Jamstack does this, especially with, uh, working with the Stripe API, um, and being able to do dynamic and gated content, uh, using serverless functions and Netlify functions for this kind of dynamic capability on the jam stack.
Um, and this is how we usually see it done in the Jamstack right.
Phil Hawksworth: [00:22:08] The nice thing, but again, sometimes the confusing thing about the Jamstack is that you can do, you can use so many approaches, but yeah, absolutely. You can, you can call out to API APIs and then change what's rendered on the page right there in the client through JavaScript.
So you're doing kind of client side rendering. Um, or, or you could be, um, making requests. So what you would sometimes think of as a server, but it's a serverless function that you were just mentioning there. So, and you can, you can match things, things together, which again makes the definitions of them a little bit blurry, but it's because we've got all of these tools in our toolbox now.
Um, I, I really liked the fact that, um, We can start to bring serverless functions into the equation as well. So that even though we don't have a server involved, we don't have a server to manage. We can start making requests. With almost like the mental model of, well, what if a server was there to be able to dynamically generate the response that I need and serve it up to us.
Um, and yeah, as you say, Jason's got all kinds of good examples of, of doing that with all the different API APIs or some, you know, rolling different services with, uh, with serverless functions to do that. Um, it gets
Cassidy Williams: [00:23:21] man and speaking of things, being named weirdly serverless functions. Oh,
Oh,
Tara Z. Manicsic: [00:23:28] I know
Cassidy Williams: [00:23:29] it drives me crazy that they're called that
Phil Hawksworth: [00:23:31] fine with it.
I'm fine with it.
Tara Z. Manicsic: [00:23:34] I think we see you biting your lip
Phil Hawksworth: [00:23:37] and talked about it is like, well, what about wireless charging? I have a wireless charger that my phone sits on. There's a wire in it that goes to the wall. Um, but that's okay because that was there at installation type that's infrastructure. But when I deal, when I interact with it, I don't care.
I don't, I, as the consumer of it, don't need to worry about the wires. That's someone else's problem. I pop it down there and the wireless charger does its thing. No. Why is it in my, in my problem space? Uh, I can't believe I just wasted that sentence.
Cassidy Williams: [00:24:13] That's that is a bed is a good way. To word it. I am less annoyed at the term now.
So thank
Phil Hawksworth: [00:24:19] you. Your face is still saying skeptical to me. That's just,
Cassidy Williams: [00:24:23] that's just my reaction to you, Phil.
Tara Z. Manicsic: [00:24:30] When we say server less worry less, because then you have the infrastructure provider getting everything set up for you. So you still have servers. You just have to. But I used to also say serverless worry list, pay more. Okay.
But then they did serverless functions and I'm like, well, then that just doesn't work because now you added a word at the end to make it even more confusing. So, I mean, all you basically have to say is like serverless means their servers.
Ben Hong: [00:24:58] They're just not your servers.
Phil Hawksworth: [00:25:01] You
Cassidy Williams: [00:25:02] are serverless.
Phil Hawksworth: [00:25:03] Yes, yes. Yeah.
Tara Z. Manicsic: [00:25:07] Nacho servers.
Phil Hawksworth: [00:25:08] Yeah.
Cassidy Williams: [00:25:10] That was cheesy Tara.
Phil Hawksworth: [00:25:11] Oh. Oh,
Ben Hong: [00:25:13] got registered that domain
Phil Hawksworth: [00:25:14] now.
Ben Hong: [00:25:15] Mm.
Yeah, I think,
Tara Z. Manicsic: [00:25:19] um, what, so what I like about Netlify functions is it serverless functions. It's basically a wrapper for the Atrius Lambda functions, but then you don't have to do all that, like computing and set up and stuff that makes it it's like one, it's like a few less levels of complication. In my eyes, like you just make the function that you want, you pass it through to Netlify functions, and then you have that serverless functions and then you never really have to say serverless functions.
You can just say. That's my Netlify function.
Phil Hawksworth: [00:25:51] That's some clever branding judo, but I do. I love that too. I love, I love, um, getting the capabilities that you would normally expect to have to maintain some server or some infrastructure for by writing code and. Pushing it, when you deploy and not caring about infrastructure, not parent caring about provisioning, anything, just like, well, I've got some functions that will be executed at some time time.
I'll put them here and I'll deploy it with the site and, you know, Done happy dance. Um, so yeah, I really liked that model and I think it's gradually expanding. Isn't it? The more, this, this kind of, part of the, uh, ecosystem like matures, uh, you know, when we're seeing serverless functions and now kind of edge handlers, kind of again, to throw another thing in there, just these, um, these capabilities are just growing all the time and it's.
It doesn't make it any simpler for naming things or describing things, but it certainly makes it simpler for the model of building things. I think, where you can write code and push it and it executes where it needs to execute.
Cassidy Williams: [00:26:56] Yeah. There's less need for on-call rotations, which I really like.
Phil Hawksworth: [00:27:01] Oh yeah.
You don't want to do any more PagerDuty. You don't miss your pager PagerDuty rotation.
Tara Z. Manicsic: [00:27:08] It's like I got rid of pagers. I don't want an app that does the same annoying thing to me
through the
Phil Hawksworth: [00:27:13] night. Did you ever have a pager to anyone on this course?
Tara Z. Manicsic: [00:27:17] I had a pager. I know how to do so many messages in only numeric form.
I won't tell you the top
Tara Z. Manicsic: [00:27:27] three that I remember.
Phil Hawksworth: [00:27:30] That's probably wise in the director's cut of this episode. That's the premium content that people have to pay hard cash.
Tara Z. Manicsic: [00:27:39] I remember going to the pager store and like going to the case of pagers and being like, Oh, there's a crystal blue one now
Ben Hong: [00:27:49] I'm,
Phil Hawksworth: [00:27:50] I'm honestly still stuck on the, going to the pages store.
Tara Z. Manicsic: [00:27:56] What's cool to me. So I mostly, this is going to sound like a plug disclaimer, because this is the ones that these are the ones that I have the most interaction with. But like, so as far as like having dynamic, are there things like, um,
the
Tara Z. Manicsic: [00:28:11] Netlify identity widget, which also uses serverless functions in the background?
So again like your, so you have a pre-rendered page that's pooling up. Uh, that's like loading up the JavaScript and the template that you need for there to be off, but it's doing it with a serverless function. I think Azzurro has stuff like this as well. Um, yeah. And so there's like, so like thinking about how people, how I don't want to just put app, it's not apples to apples whatsoever, but thinking as far as like having dynamic data by doing like hybrid rendering or universal rendering, And then having that Jamstack approach of like having that dynamic data, but using utilities and kind of delegating that workload
to
Tara Z. Manicsic: [00:29:01] a different technology that will give you serverless functions.
That path for me was just so much better,
like even
Tara Z. Manicsic: [00:29:10] forms, like doing dynamic information with forms, like to use Netlify forms to do that, that just. That I liked it didn't feel like magic. But it felt as good as magic feels.
Phil Hawksworth: [00:29:25] I can't believe we even bother having a marketing department at NFR. Just record your words and write them on the page.
Tara Z. Manicsic: [00:29:34] Do you know that I'm a business school dropout? I tried to go to school for marketing, but I was so horrible that I just went to math class and pottery.
Is there anything
Phil Hawksworth: [00:29:48] else? W is there anything else? They can't be any more types of rendering. There's so much to discuss around it, but it's so hard to just add clarity. I was, well, I'm sorry, this is rude while you're talking. I was just browsing.
I wasn't just like shopping or anything, but I, I w
Ben Hong: [00:30:08] I thought I'll
Phil Hawksworth: [00:30:09] just pop over to Jamstack.org. And we, you know, cause they've got a bit of a rescan recently and one of the things we've started to add was a glossary, which is only small at the moment, but it's a community site that will expand over time.
And I thought, well, maybe between us, we've already done some effort to define this, these things and. I'm sorry to say that. Well, I'm very happy to say there are definitions for client render for pre-render pre-generated server render and many of the things beside none of them though. I'm very sorry to say, can do it in seven words.
So
Cassidy Williams: [00:30:44] bring out the fingers.
Tara Z. Manicsic: [00:30:53] We got to cast it by it. Classify
Phil Hawksworth: [00:30:55] it. So, yeah, since they have more than seven words, I'm not going to read them out, but we'll link them in the show notes because these are these, a little definitions in here as well. That that might, might be less wordy than some of our efforts, but wordier than Cassidy's slam dunk.
Tara Z. Manicsic: [00:31:11] I think that we have to start wrapping up this episode because it could get out of hand. But, um, I just want to say also, like you can always reach any of us, um, online or tweet at us at the Netlify account. If there's something that you want us to even delve deeper into. So if you just want an episode about, uh, serverless functions or you just want an episode about how to do off.
What did you
Cassidy Williams: [00:31:41] say?
Phil Hawksworth: [00:31:46] Well, you, were you making fun of terror or was that a genuine request? Cause it looks like she's writing an agenda for the next episode.
Ben Hong: [00:31:54] It's
Phil Hawksworth: [00:31:55] the new thing.
Cassidy Williams: [00:31:57] It was people trying to replace that between like PagerDuty, but also remember yo when Yoko came out,
Tara Z. Manicsic: [00:32:02] that was
all it
Cassidy Williams: [00:32:04] was, was you send the yo to each other.
That was, that was a big hit for awhile.
Tara Z. Manicsic: [00:32:09] We'll see. I thought you said depers like, we'll dig deeper in this something, but like jeepers, but deeper
Phil Hawksworth: [00:32:17] differs. That's going to be our new, regular section of the show. Now it's time for our deepest deepest.
Tara Z. Manicsic: [00:32:28] Uh, so I was like, that's why I was confused. Cause I was like, I like that.
Cassidy Williams: [00:32:33] You're branding mind.
Perfect.
Tara Z. Manicsic: [00:32:37] So we're always happy to talk about any of these things, um, more in depth. Um, but there is a, there's a series segment of the show that, uh, we call tidbits and thought things where we ask one question to kind of wrap up the show, um, kind of around what we talked about.
So just like a serious, um, Kind of inquisition about if you had your own physical, local storage or cash that you could access at any time from anywhere. What's one thing you would put in there.
Phil Hawksworth: [00:33:12] Okay. Palmer, ham. Next question. Move on.
Tara Z. Manicsic: [00:33:15] Really? Isn't really food. Mine is totally food. It's got
Phil Hawksworth: [00:33:18] a cost it's food and it's yeah.
It's delicious. Cured meats. I don't understand what we're even debating
Cassidy Williams: [00:33:24] him, him, him, him, him, him
Tara Z. Manicsic: [00:33:26] minus totally food. It would totally be like nachos, but like perfect bites of Natchez so that I could just dip in a perfect bite. Has every ingredient on it. And the ship is still crispy. Obviously
Cassidy Williams: [00:33:40] it's just outside the, like nucleus of the plate of nachos, because it's got everything, but it's not integral to the integrity of the pile.
Phil Hawksworth: [00:33:49] I like that. Right. And it has the right amount of, of kind of stodginess, but you can still pick it up without bringing the rest of the plate with it. The
Tara Z. Manicsic: [00:33:58] perfect, I mean, I don't need stodginess to be honest.
Phil Hawksworth: [00:34:05] Do you want any melted cheese on there? I feel like we're going slightly deeper into what maybe anyone was expecting.
Cassidy Williams: [00:34:15] Mine would be bubble tea.
Tara Z. Manicsic: [00:34:17] Oh, that's a good
Phil Hawksworth: [00:34:18] one.
Cassidy Williams: [00:34:18] If I could just have instant access to just Boba at any time. Oh, that would be
Tara Z. Manicsic: [00:34:23] great. Even if you make it at home, that Boba only lasts for a day. So you can't just have a massive amount of Boba.
Cassidy Williams: [00:34:28] Right? Exactly. And so if I had a physical cash that I could access at any time with some fresh bubble
Phil Hawksworth: [00:34:33] tea,
Tara Z. Manicsic: [00:34:34] Yeah, that's a good one.
Gosh,
Ben Hong: [00:34:36] I went, I don't know if it's just like all like the zombie shows, like I literally went survival mode. I was like, I want an ax. I want like a metal ax at, I can like start fires. I can chop wood.
Cassidy Williams: [00:34:51] I definitely was thinking that way until filler terror wet. And I was just like, actually, yeah, but it would be much better, but like, I was thinking, what if I just had like a wrench, just some kind of tool that I
Phil Hawksworth: [00:35:04] could use. Wait, in many ways Ben wins here because he has an act. So since he has his acts, he also has terrorist nachos because she can't defend that.
well, I mean, I don't want to surrender my power, my ham, the diver. I've got, but if Ben comes with his acts, then,
well,
Cassidy Williams: [00:35:26] bye
Phil Hawksworth: [00:35:29] bye.
It's a good, that is a good point.
Cassidy Williams: [00:35:33] It'd be very convenient for chopping him.
Tara Z. Manicsic: [00:35:35] Oh yeah. I want to chop a Hamlin, an ax.
That sounds fun.
Cassidy Williams: [00:35:40] It does some pretty fun.
Tara Z. Manicsic: [00:35:42] I cut a watermelon with a sword that was fun.
Ben Hong: [00:35:52] The real life
Cassidy Williams: [00:35:54] next time on remotely. Interesting. We made an awesome thing to help you learn the Jamstack introducing Jamstack explorers the guts. And when we say guts, we mean like the internal organs of this project that we made an internal organs are not actual body parts, but the inner workings of the code and the frameworks that we use and stuff, I promise it's going to be good.
Well, we'll at least try and. My name is Cassidy optimist, loser Williams.
Ben Hong: [00:36:21] My name is Ben laser jam hall,
Phil Hawksworth: [00:36:24] art and Phil bumblebee.
Tara Z. Manicsic: [00:36:26] And I'm Tara Magnus, Jasmine Nixon. Thank you all so much for joining us today on remotely. Interesting.
Cassidy Williams: [00:36:48] Oh, we, we missed that, Phil. I'm
Phil Hawksworth: [00:36:50] sorry,
Tara Z. Manicsic: [00:36:52] Chris. Got it.
Phil Hawksworth: [00:36:54] Good. When Chris is listening to this, I sound fine. And you all sound like the idiots that's true,
Tara Z. Manicsic: [00:37:04] which is like the opposite than in person.
Welcome to Remotely Interesting brought to you by Netlify.
People who were remotely interesting:
Most of us are working remotely these days due to the pandemic. Our team has found a the pair and mob programming has really helped improve our mental health and productivity. Hear us out, it's actually really fun.
Pairing past, present, & Sarah makes people cry
How we do it & How not to?
Great Tools We Love & Use
Tidbits & Thoughthings™️
SHOW NOTES:
As always, we hope you find it remotely interesting.
TRANSCRIPT:
Cassidy Williams: [00:00:00] Previously on Remotely Interesting,
Phil Hawksworth: [00:00:04] it says it seamlessly here and no one will notice it. It'll just it'll sound perfect. Impeccable audio continuity. Boop.
Cassidy Williams: [00:00:12] Hello, and welcome to remotely. Interesting.
Phil Hawksworth: [00:00:15] This is remotely interesting.
Divya Tagtachian: [00:00:17] that seems
a little presumptuous.
Sarah Drasner: [00:00:19] No, no, that's the name of the show.
Cassidy Williams: [00:00:29] Oh, heck. Welcome back everybody today. We're going to be talking out. Oh wow. I'm getting giggles already. Oh, on a roll. we're going to be talking about, connecting with your teams through pair programming, mob programming, our experiences doing it. it's a funky time in the world. And so you kinda gotta figure out different ways to connect with your team and stay.
Human because it's hard to sometimes.
Phil Hawksworth: [00:00:54] Are you doing okay Cassidy? Cause you started the whole podcast there with, Oh, heck so straight away though. Is she okay? You doing alright?
Cassidy Williams: [00:01:03] Great. I'm
great.
But yeah. So on our team, we do a lot of pair programming and mob programming stuff, and I love it. Even if it's just Watching Jason type really fast. it's really great to not only see how the code gets written and different people's mindsets, but I understand it better just because I'm doing it with other people and we're talking it out the whole time. I don't know if you people like
Sarah Drasner: [00:01:26] it. Yeah.
I think maybe we could talk about the origins for just a second. Tara was, brought up that she wanted to do some pair programming across the team and she started to put time on people's calendar to do And I think that was really cool because we could jump in and, see what each other was working on.
And. Help each other out and rubber ducky solutions. And then from there, I think having Jason on the team obviously is really helpful because, he does learn what Jason, all the time, which has that kind of pair programming, feel to it. But also like we talk a little bit about how, there's this vulnerability in pair programming and mob programming that allows the team to see each other and work through moments together and get the same foundational knowledge together, but also fail a little, celebrate a little, like all of those things.
And Jason does a really good job of, being super low ego through that whole process. I feel and that really helps every bring everybody together and get on the same page. So that's awesome.
Jason Lengstorf: [00:02:26] That I wasn't going to cry on the podcast, but today might be the day.
Phil Hawksworth: [00:02:31] Yes, let's get it. let's all heap on Jason.
And I also think he's lovely and other ways that I'll now list
finally, but I do find, I've always found that pair programming has been a bit intimidating if I'm very honest, and I haven't done it as much formerly throughout my career as perhaps I would've liked, I think some places I've worked, quite structured and strict about it, but most places I've worked have not.
and they've seen it as something that yes, you can theoretically do. And they've heard about it and would like to get there, but actually doing it as a discipline is. It's quite different. So my experience has been pretty patchy if I'm honest. So how has everyone else just done lots of pair programming throughout the years, or is, are other people similar to me where they've been in and out of doing it?
Perfect. What about
Cassidy Williams: [00:03:23] my first job actually in the industry was just pair programming. Like the entire company did every single feature as a pair programming thing. And so it ingrained that in my brain where literally the first two weeks on the job was just pair programming with someone to fix some bugs.
So you get to know the code base, then every project you were on, you were always assigned. You're pairing buddy. and that's what you did. and I haven't had that sense of, I think that company was unique in that, but, I think it ingrained some really good practices in me to actually communicate better and get talking about my code and not just making a giant PR with no comments and going forward.
Sarah Drasner: [00:04:01] Yeah. something that's interesting in the pandemic setting too, is I think. Earlier in, I've been a manager for engineering groups for a while and I used to do it in the office, right? Like I would have juniors come onto the team. And what we would do is we would sit next to each other in pair for a while and onboard.
And now that we're in a pandemic that is taken away, but it's, there's no real reason why it can't be done remotely or, done on a call.
Ben Hong: [00:04:29] Yeah. in my experience, similar to Phil, I haven't seen it really done as consistently. I would have loved to have Cassidy's experience where I was just like, that was just like the norm.
I think, working in office environments that has, it took it for granted that you could just swing by someone's desk and just be like, Oh, can you just look at the, my monitor and you end up doing this sort of Spontaneous pair programming, but I think to Sarah's point in the pandemic and as more people are going remote, like it has to be something that's done with intent.
Now, I think that's where it's definitely something that should be, just, yeah, I've done a lot more because I know doing it with Jason just yesterday was a Oh, it was awesome. I can't speak highly enough about it.
Phil Hawksworth: [00:05:05] I don't think anyone who's trained themselves so rigorously to be, do pairing. Jason, you've effectively built up your pair programming muscle from doing, how many Len with Jason's do you do a month?
is it like two a week? You do
Jason Lengstorf: [00:05:18] two a week.
Phil Hawksworth: [00:05:18] Yeah.
Jason Lengstorf: [00:05:22] but I feel like this is actually so like the learn with Jason I feel is a continuation of something that I didn't realize I was going to miss when I left traditional offices where, so w the start of my career, I was a fully remote agency.
I never pair program. And I always had this sense of. Disconnection. I always felt like I was the only person who understood what was going on and I would try to write these docs or get the rest of my team to get on the same page and it wasn't working and it would frustrate me. And at first, because I was, young and 20 something, I thought it was because I was a genius and everybody else was Nydia.
And then as I got older, I realized that it was because I wasn't communicating, I wasn't bringing people along with me. So when I went over to IBM, this thing that I immediately learned was I joined the team and whenever somebody would get stuck or whenever we would have something that was trickier or sticky, we would all just gather around a laptop.
And then we would work through that idea together and we would write pseudo code so that we could all say, no, I hate that. Let's roll it back and do it a different way. Or we would, it was just this kind of amazing mind-meld that happened when everybody was looking at the same screen.
and so learn with Jason was almost like, how could I do that? But with the whole community, and what I really love about kind of pair programming and mob programming or live streaming is this concept of being able to take something that worked so well in person.
And try to figure out ways to make those same connections when you're not in the same country as somebody else, how do we do this with somebody in Nigeria and have a really strong connection?
Sarah Drasner: [00:06:57] Yeah. one thing that I want to double click on in there, that's a. Gross saying, but whatever
is this concept of bringing everybody together because, and, bringing people along and communication, because what I've seen in teams that start to have good dynamics versus unhealthy dynamics is sometimes when people work too much in silos without. Getting together, you get a thing in PRS where people are only communicating through, PR review comments, and then they can deviate one person feels one way.
Another person feels the other way. Sometimes, in a direct land that can lead to arguments in an indirect land, it can lead to passive aggression. And the comments can go on for a long time. What's nice about the mob programming. The base concept. if everybody's on the call for the know foundational aspect, then the chances that everyone's going in the same direction for the subsequent PRS is pretty high.
And even if they, there is some tangles or naming conventions are off, we had that problem. I think the problem was mine. was it, is. It's very easy to recover from that because people can, people are more, willing to say Hey, I think I'm on the wrong page here.
Let's all get together and talk it
Jason Lengstorf: [00:08:17] over. Yeah, I
Ben Hong: [00:08:19] think that's an excellent point. just because pull requests, it really is an art. And I think when most people approach it, they're just like adding things. You need to change it. It can come up almost negative over time. And with the asynchronous nature of especially remote programming, things are starting to fester, whether they just come off in the wrong way, just the way it's written, because English might not be someone's first language.
so I absolutely agree with Sarah on that as far as just being able to resolve those tensions is how those conversations live can make such a huge difference in how messages really received.
Phil Hawksworth: [00:08:45] I love that sentiment of beetles are an art form. I completely agree. I think the communication that goes on in those kinds of conversation threads, given that you, even if you weren't working remotely, even if, that is the medium, isn't it.
If you're using that medium as a way of communicating about a thing, Brevity can often really lead to confusion. So I think there is a need to really over-communicate and I don't know, I feel like my efficiency drops sometimes in the quest to be, I dunno, very explicit and drive out any ambiguity.
But I think ultimately that's worth the effort, but, but I'm completely with you. I think it really is a bit of an art that takes some practice.
Sarah Drasner: [00:09:27] But you have such good communication skills. I really appreciate that when I am working a sync with Phil, I always can understand so much context because he's been very clear.
And I think that takes a lot of empathy to be. That clear because you have to think through how the other person is perceiving the thing, not just what you're trying to say about it. And so that helps, especially as we're over, across time zones, because I'm not act, I'm not sometimes working at the same time at, as Phil who's in the UK.
So that's especially valuable
Phil Hawksworth: [00:09:57] then. It's got me going now. She's got she's
Jason Lengstorf: [00:10:00] I know
Phil Hawksworth: [00:10:02] one at a time, one at a time,
Jason Lengstorf: [00:10:04] but I think so what I will add on to that, and that I think is such a like important thing to bring up is that when you're saying that you feel like your efficiency drops, I would argue that your efficiency is actually higher because what I think you're doing is you're embodying that cliche of go slow to go fast.
because what I notice is when we work on projects, where we take the time to build this context, to get in a room and all work together and have these conversations and make sure that we've all got a deep understanding of not just what our tasks are, or even just what we're building, but why we're building it and what it impacts.
We don't have to have those, Oh my God, pump the brakes. What are we doing here? Why are you off in this direction? Who is anybody talk to this developer in the last week? does anybody know what they're doing? And this is something that, when I was on like in-office teams, remote teams, this is a constant problem in projects is everybody has their first meeting and we all go great.
Got it. Never talk to you again. And then we all run off in different directions. And at some point everybody's just feeling like I have no idea what's going on. And then you have to, you've got to circle the wagons. You've got to have the big, regroup meeting and untangle all the work that was going in the wrong direction and make sure everybody's pointed in the right direction again.
And then you just set everybody loose again with no context for two weeks like that is so slow in the long-term. And it's so frustrating. It like undermines your sense of autonomy and control versus this kind of like. Frequent quick touch base, make sure everybody knows, what are you doing and why?
And you have these little chats. That lead you to always be moving in the same direction and catch that th that divergence really early,
Cassidy Williams: [00:11:46] it builds so much trust on teams to do that, too. Just having those conversations and everything, you really understand people's mindsets more and how they approach certain things.
And so if you ever do go off and work individually, you have the context, like you said, but also you. You aren't just what are they thinking again? And stuff like that. like you, you get their mindset in check
Jason Lengstorf: [00:12:10] a lot more.
Sarah Drasner: [00:12:11] That's also why like scoping down to smaller PRS allows for that a little bit, because if you go off and meet, create an entirely huge PR without talking to people and change a bunch of stuff around without messaging, or like allowing people to see what's inside of your work, then a lot of communication breakdown can happen.
But also it's hard on reviewers to understand the stuff. State of a really large PR. So when you have a bunch of smaller PR is what you're in essence saying is I trust you all to look at this and we can get on the same page and then we can do another one soon. Like it doesn't have to all happen in that single.
Burst of work. I think that is something that can help with throughput, but also help with teamwork in the sense that you're having empathy for the person who's reading your code, that you're not giving them so much at once to understand and comprehend.
Phil Hawksworth: [00:13:01] Yeah. So many of these things are, they're, they matter when you're working together physically together, but they're exacerbated by the fact that there's distance.
I think the, Any project that I worked on when I was doing, leading development teams, the best contribution I ever made was not any of the codes, but it would definitely be the everyone let's gather around this whiteboard for one hour and talk about the shape of the thing that we're making.
Where we just kicked the ideas around, ended up with a big doodle on the wall and then everyone would go, everyone will be like, Oh yeah, we have this. These are the pieces we need to make because when everyone has their own percep like a mental model, it's just not always exactly the same shape.
So the, I think, I think doing that is. Equally and probably even more valuable. Now I had a really good time actually, when we did that on a project that, where we're all working together on at the moment coming soon, it was really, it was a really fun session early on where we were, we had an idea of the thing we were going to make, but okay, what does this actually look like?
And what's the. what's the data model for this? So how things organized? And we, we had a big group, white boarding session with what was the tool Jason used or was it was,
Jason Lengstorf: [00:14:07] it's called
Phil Hawksworth: [00:14:08] whimsical. That was it. where together, we scratched out through a bit of conversation and just nudging ideas around this kind of shared understanding of the thing we were going to make and doing that early.
I. I really enjoy those sessions anyway, but I think that's so valuable. So that later you can use that as the springboard to get going.
Jason Lengstorf: [00:14:28] that sort of thing is really near and dear to my heart. I've written a bunch of posts about the importance of planning and where to draw the lines for, what's not enough planning versus too much planning.
and in thinking about that sort of stuff, and just like when you're sitting in a room. You naturally have this poll where everybody is I'm not really sure where to start. And then somebody was like, all right, what are we building? And then you all spend your chairs around and talk and remotely, I think it's, if it's not baked into the culture, if it's not part of everyone's day to just say, Hey, we should talk about this.
Then I think there's more of a pressure to say, okay, I don't understand it, but I need to figure it out on my own. And that sense of like isolation and pressure is really, it's really crushing and it can make you feel like you're not really on a team. and I think like one of the things that I really love about the way that we're building the culture here and you know why I was so excited when Tara started proposing that we do pair programming and Netlify is, is that it's built that culture where now we don't like we don't have.
Formal pair programming. And I think this is actually an important thing to call out. And we can talk about some of this, but like we don't do formal pair programming in the sense that anytime we work, we are pair programming or that we must do pair programming in exactly this way.
Instead, we have this kind of informal culture of like recently this week I've been just opening a zoom room. And I hooked up loop back so that I can play Spotify back through it. And I just use it like I'm working in a public space and then people drop in and out throughout the day and like we'll pair program for an hour and then somebody drops off and somebody else will come in and ask a question and then they drop off.
And it's such a great, like approximation of that office environment where, it's more casual. It's like shoulder tapping as opposed to. Formally structured, you have to work this way. And I really love that.
Sarah Drasner: [00:16:22] Yeah. I think one thing that I noted was when Cassidy joined, she was, I think we used to have the ones where we were had like meetings with, that were pairing and meetings that were mobbing and Cassidy did a good job of calling out in our private channel.
Hey, can someone jump on a zoom with me really quick? And I think that was the first impact. Time that we started doing stuff like that. And that really helped break that wall because I think at first, it was like, okay, this is the time for the pair programming time. and so opening that up a little bit to Hey, I just don't, I just need this like one little piece.
You know of context so that I can move on was really helpful too.
Cassidy Williams: [00:17:02] A lot of it ended up just like me, rubber ducking, Jason, and him saying you made this typo or something
Phil Hawksworth: [00:17:08] like that. That's the other thing I love that. it, since it doesn't have to be, I don't know if I can do Sarah's manager voice. we are all going to be pair programming.
Is that how it works? your manager. that was it the right authority. But yeah, we don't have to have something as formal as that. I really liked the fact that we've. Got to the point that anyone can say, can anyone just bear with me just for a few minutes on this? And it's more of a.
Just grabbing, tapping someone bot on the shoulder and saying, just look at my screen for a second. the number of times that someone on the team has helped me get over a hump that I've been really struggling with a long time, and then it's a conversation and in five minutes, sometimes that will.
You're looking at it from the wrong angle. So look at it from over here. You're hopefully you're holding it wrong. and it's so valuable to not need to set aside an hour to do have a session, but just to be like, here's a quick chat, another perspective, another pair of eyes jobs are good. And I really liked that.
Cassidy Williams: [00:18:04] I was just going to ask, have any of you had. Bad experiences with pairing or just challenging times where you're just like, Oh, I don't know if this is the best way to go about it because I admit most of mine have been pretty positive except for when I was forced to learn them, which then I drank, no, it was fine.
But
Phil Hawksworth: [00:18:20] that was terrible. Forcing them down you
Cassidy Williams: [00:18:24] no, but in that first job, for example, when I was first starting to pair, I was pairing with this person where they were so strict in their development practices that like we were pairing in person. They literally would smack my hand if I was went over to the arrow keys.
Cause they were like, VIM is HK JL, learn it. And I, in a way it forced me to learn them. But on the other hand it was just let me be. And I was for awhile. I was very much in that person's mindset. Which I don't think our team has trouble with that. Luckily, but have any of you had not so great pairing experiences because of Jason's personality or something?
Ben Hong: [00:19:04] He was so mean to me yesterday was terrible.
Jason Lengstorf: [00:19:08] I actually, my very first, pair programming experience was awful. I was, I wasn't even in web development yet I was working in pre-production ends up at a, like a printing press. And I had just started learning how to do web development. And I had a project I was working on, I was trying to build a website for my band and I asked the in-house web developer.
If he could help me look at something. And so he came over, we sat at my computer and, we opened up the code and he just looks at me. He goes, can you tell me the difference between cell spacing and cell padding? And I was like, they control the distance between things. He goes, you're not ready to be a web developer.
And he just walked away and I was like, maybe I don't want to work with people. I feel like I was like a formative experience that led to me working alone for so long.
Phil Hawksworth: [00:19:54] You're not ready to be a web developer. That's
Jason Lengstorf: [00:19:57] such a, it was such a tra Oh my God. That was, so I, but in retrospect, As an adult.
I'm okay with it.
Phil Hawksworth: [00:20:06] I'm fine. I'm fine. Now everybody Jason spelling
Jason Lengstorf: [00:20:09] it. Yeah. I've grown. You
Cassidy Williams: [00:20:11] should see all the tears streaming down his face. Everyone.
Phil Hawksworth: [00:20:13] Yes. Yeah, no of joy this time.
Sarah Drasner: [00:20:17] I think tech interviews are probably. Pretty good example of bad pair programming when they're done wrong. when people feel like they're up against something and that they can't do their normal development practice and that people are judging them and not because that's someone watching you in a way that they want you to perform for them less.
More than it is pair programming. And I think if tech interviews went more towards pair programming, like true pair programming where it's a collaboration, they could probably suss out their skill level just as well. In fact, probably better than the whole performative, like then spur my monkey.
Jason Lengstorf: [00:20:55] I feel like that is an issue that should probably be addressed.
especially if somebody is new to this and is thinking about. Trying this out is that, if you treat pair programming as any kind of like metric it's going to backfire, right? Like it has to be a social thing. It has to be a thing that's there to make the team feel included in and together.
Because if it becomes some kind of weird like internal spy network where you're trying to boost productivity by making sure your employees watch each other work. Or if it becomes something where your senior developers are trying to determine which junior developers need to go on performance improvement plans like that is just going to, that's going to undercut the team to ribbons.
It's going to be a mess. if you're using it in a way that's Hey, we want to be the same team. We can't go get lunch together right now. We can't have team offsites. We can't do the hallway. Like we're all walking to a meeting and making jokes. So we have to create that space somehow.
And I think so much of our meetings. If you just listen to snippets sound a lot, like this podcast where we're just kinda talking and joking around and making each other laugh, but at the same time, we're getting so much more done. And we're making sure that we're all on the same page. And I feel like if we, if you treat pair programming as that as building culture, as opposed to something that's going to boost key performance metrics, then you're going to have a good time.
and I think if you treat it any other way, you're probably going to be disappointed.
Phil Hawksworth: [00:22:28] you just reminded me of, an experience I had, as an agency some sometime ago where we were, I was proposing, we should do pair programming on a few tasks and a few projects. And I got pushed back from one of my bosses, because of.
The perception of what the output would be. It's wait, so you want to take two developers and have them work on one task together, but we've only got this many hours to get this project done. So you're going to take twice as long and completely missing the point about, quality and output and all of those things.
It's just we've got this many. Pairs of hands. We want to see this many people typing on keyboards and it was just a complete, I hadn't even thought about that for such a long time. And it's only when you mentioned metrics, then I suddenly relived with a shiver down my spine that, so thank goodness.
we've I think I know we've moved past it, but I think largely like the industry, I think has moved past that it's so common now, right? Custody.
Cassidy Williams: [00:23:23] Yeah, no, I have heard that exact thing. isn't that just making it take twice the time to work on a feature, then I've heard that so many times from so many people and yeah, you have to emphasize quality and the fact that multiplies are seeing it, but then it also, it makes the actual PR code reviews go so much faster because.
Good. Multiple people have looked at it already and someone else can be just like, okay, thumbs up. Because multiple people have worked on it. Meanwhile, if you have a really large PR that only one person worked on that could take multiple eyes looking at it and be just like, okay, I think this is good.
Okay. It works on my machine. And then you get time taken away at a different end of the spectrum. And I'd much prefer the better quote quality upfront myself.
Ben Hong: [00:24:09] And to Cassidy's point shared domain knowledge. That's huge. So that way one person leaves, they were the original author. At least that pair program means you don't have two points of failure, at least instead of the one.
Jason Lengstorf: [00:24:18] Exactly. yeah, that shared context is everything. but so I want to, I actually, I want to take this to a slightly more practical place, in the interest of time. so if somebody wants to do this, what are the tools that we're using the, that make this. Good like Phil, you mentioned whimsical as a way to do like whimsical for those who don't know as a mind mapping tool, that'll let you do, little diagrams and sticky notes and stuff like that.
what other tools make it easy or make it pleasant to do pair programming?
Sarah Drasner: [00:24:48] I don't know if any of you used vs code live share, but that's been pretty fun for stuff like that. Burke, I don't know if you know who Burke Holland is, but he, did a conference talk called vs code live share can do that.
And he had me join remotely and type in the same document as him. And it was a react doc and I mounted view inside of it and put in a photo. Basically, I
Phil Hawksworth: [00:25:09] put them in,
Sarah Drasner: [00:25:11] I put in a photo of him with the Ghostbusters, no, over his face.
Cassidy Williams: [00:25:20] That one, I've played around with. And I think it's really fun. And also a code pen, collab mode. If you're ever wanting to just prototype something really fast, it's really useful to just. Put something together and be just like, okay, that's how that can work. Great. And then you get that instant preview there too.
Sarah Drasner: [00:25:34] Did you work on that Cassidy? When
Cassidy Williams: [00:25:38] I, so when I worked at code Ben, I pointed out bugs in it and we fixed them. So I don't know if was implemented before I got
Jason Lengstorf: [00:25:46] there. When
Phil Hawksworth: [00:25:48] you say that, I imagine you actually pointing it's like you didn't just write bug reports. You just stood in front of the screen. I'll look at it.
Ben Hong: [00:26:00] Yeah, another good coaching. One was, people might not have heard of it's Tupelo. So T U P L E it's. Basically, if you remember, a coat is a screen hero, whereas like the separate extension that like bill had built in calling and the screenshot was really clean. You could take over monitors, draw on it.
Jason Lengstorf: [00:26:16] Tupelo is
Ben Hong: [00:26:17] fantastic. I've given it a, I've tried it out with some open-source people and it's really nice.
Jason Lengstorf: [00:26:21] Cool. Yeah. I really so whimsical is a good one. I also really like Miro. Miro is good for collaborative planning. it's effectively a whiteboard like you can, you can do all the things that you would do in a whiteboard with sticky notes and, like drawing and arbitrary text.
And so it's really good for, again, that kind of planning stuff. I also love Figma as a collaborative tool. Like I'm trying to quickly make something happen. Figma has got that multiplayer mode, which is really fun. so that can be really good for getting quick feedback on things.
and then glitch is another really good one, too. if you need a node server, you can actually run node in glitch. So you can, it's similar to code pen, but you get the benefit of being able to execute like server code as well. If you want to test them,
Sarah Drasner: [00:27:02] I would also say that even like nullifies deploy previews for, Ben and I work on the view docs together, and that's been incredibly helpful for seeing how things are laying out.
As we moved everything over to view press in this last release, it used to be on a completely different, we, we didn't just migrate content and change content. We migrated the entire project. And so it was really helpful to be able to see what was working, what was breaking, like what we were changing and that.
It's just like worth its weight in gold.
Cassidy Williams: [00:27:33] Also notion it's a obvious one to bring up, but just collaborative. Note-taking a notion when, whenever we're in a meeting or something is really nice and useful, and you can also see where certain people are in the doc by just like where their picture is on the side.
And that's nice and useful. Yeah.
Ben Hong: [00:27:50] Coats and text highlighting in your notes, which is
Cassidy Williams: [00:27:53] so good.
Phil Hawksworth: [00:27:54] Aren't we aren't, we lucky as well that we take for granted the fact that we're building, we're writing our code on top of a get workflow. I know that hasn't always been the case.
can you imagine trying to do this kind of collaboration remote or otherwise? Really without. That as a foundation. it just seems so such a linchpin and I didn't always have that. I've definitely done the passing files around with version in their title, in their file names and annotations in their file names in the past.
Not for awhile. I should say that before I get, I need you to be
Jason Lengstorf: [00:28:27] five. Remember that too. Like I remember having to put everything into an FTP folder. Like I would just upload a zip file and then somebody would download that and then they'd upload a new version. It was the worst.
Ben Hong: [00:28:38] I had a box of floppy disks as a kid.
Phil Hawksworth: [00:28:41] One was color coded. Wow.
Cassidy Williams: [00:28:44] That's amazing.
Phil Hawksworth: [00:28:47] She put it in the show notes. What floppy disks are for people who
Cassidy Williams: [00:28:52] it's just like that save button icon.
Ben Hong: [00:28:56] Yeah, there you go.
Jason Lengstorf: [00:28:58] But it'll hold a third of a website.
Phil Hawksworth: [00:29:02] this could easily spiral into an entirely different episode. Couldn't it?
Jason Lengstorf: [00:29:09] okay. So on that note, I think maybe we should wrap it up or else Tara is going to come back and listen to this recording and yell at us for being long-winded. so let's do a rapid fire question. What is something right now, pair programming or not that you do to feel connected now that the whole world is remote.
Phil Hawksworth: [00:29:27] Do you have one loaded up, Jason? Do you have one ready to go?
Jason Lengstorf: [00:29:30] yes I do. So one thing that I do to feel connected is, I get on a discord server, called party Cordy and they have a voice channel that's basically always on. And people will go in there and just sit quietly, like for hours. So that there's another human, like on the audio channel, or they'll share their screens while they're working, share their screens while they're playing a game.
and it's a really nice way to just know that there's someone around, even if no one's talking. So it's like working in a coworking space and I've really liked that as a way to feel some kind of non-work social connection while I've been fully remote.
Sarah Drasner: [00:30:08] Yeah, one thing we've been doing with some of the, some of my peers on the leadership team at Netlify and I have been doing a book club where we drink whiskey and talk about a book that we're all reading, and have a zoom call after work and that one's silly and it's really fun.
and then I usually it's like talk about the book for. Eight minutes and then two hours of being goofballs.
Cassidy Williams: [00:30:34] So I have a discord channel that I'm super active in and I love doing that. And alongside the discord general, I really like playing Fortnite with friends. just because we'll use discord chat and oftentimes we're not even like doing well at fortnight. We just happened to be playing Fortnite while we're gabbing with each other.
And then it's really nice. and then with a lot of my IRL friends, we have, a standing meeting that we optionally go to at the end of the day, every day, where it's just like, how was your day to day? And we call it stretch and chair. Cause we try to like stretch and stand up and get out of our desks and yeah, we just.
Say Oh yeah, this is what I did today. And it's like a standup, but it's really just. Chatting and hanging out,
Jason Lengstorf: [00:31:16] that is such a good idea. and I like that as someone who has recently sustained a cheese related injury, I feel like I really could deal with Watson.
Phil Hawksworth: [00:31:25] Do you say a cheat's related or a cheese related cheese?
Jason Lengstorf: [00:31:28] Cheese is related? Yes. Merissa threw a piece of cheese to me and I hurt my neck
Phil Hawksworth: [00:31:37] trying to
Jason Lengstorf: [00:31:41] catch it. No, I just like. I just looked at the cheese and I don't
Phil Hawksworth: [00:31:46] know, I've never heard anyone claim that they've heard themselves by looking at cheese before
Ben Hong: [00:31:54] Jason had a great gift as a response to that thread.
Phil Hawksworth: [00:31:58] So it was literally
Ben Hong: [00:31:59] basically a reliably.
Jason Lengstorf: [00:32:00] th there was a meme that, that went around for a while, where everybody was taking, slices of like American cheese and they would throw them on either a cat's face.
Or a baby's face and it was a, it is. So it just Google, Cat cheese throw and
Phil Hawksworth: [00:32:16] I absolutely will not. I've learned one thing and that's never Google the things that Jason tells you to Google. And that's a good example.
Jason Lengstorf: [00:32:28] We should
Phil Hawksworth: [00:32:28] probably edit this out. If this goes out, I'm really worried about what people will be experiencing. If they're following your terrible advice.
Cassidy Williams: [00:32:36] Was it a sharp pain? I hope you get cheddar.
Phil Hawksworth: [00:32:48] I have no ICAP. No,
Sarah Drasner: [00:32:50] you can't see him turning bright pink right now with
Phil Hawksworth: [00:32:54] the rage on that man's face,
Jason Lengstorf: [00:32:55] your words are causing a lot of harm right now.
Phil Hawksworth: [00:33:02] Okay. Hit that pause was really pregnant. Wasn't it? As we're all.
Cassidy Williams: [00:33:09] Phil's not very good at the cheese
Phil Hawksworth: [00:33:11] plants.
Cassidy Williams: [00:33:15] Unbelievable.
Sarah Drasner: [00:33:20] Talk about this till we're blue in the face.
Phil Hawksworth: [00:33:27] Okay, so we should move on.
That was a difficult one to two words. Thank you very much. No. Okay, so we should move on.
Jason Lengstorf: [00:33:40] No,
Cassidy Williams: [00:33:42] that's a good one.
Phil Hawksworth: [00:33:45] If you've got to go back and convince people that you actually did it and things that were, what were we talking about? What are we here for ways to feel connected? so one of the very apropos, Oh, what's going on now?
I just like calls where we just shoot the breeze and it's, any meeting similar to, Sarah's pretend that you've read a book and get hammered on whiskey or whatever, that, whatever that means and anything where, there isn't a real agenda, but there is also a thing that you gather around, whether it's like we're going to meet for a drink or it's.
Lunchtime and you just share, like everyone's having some food or something like that. Just something that just emulates a bit of the social interaction that you'd normally have if you were in a group and it's not the same, but I do still those because they're just they're really low, effort and just easy to enjoy people.
So I like those.
Ben Hong: [00:34:38] Yeah. similar capacity and Jason definitely loved discord for, basically the online gaming with friends. we started playing Hades recently and we'll do speed runs, against one another. So that's been a lot of, a little stressful, but it's you hit a button mashing. I'm like, Oh, I got to hurry up.
So yeah, that's been fun to just work out some of the stress and just hang out with people
Jason Lengstorf: [00:34:58] live.
Ben Hong: [00:34:58] if people haven't played fall, guys, All guys is a great one for us
Jason Lengstorf: [00:35:06] mentioned discord in the tools. it's a really good one for, because it's got voice chat and screen share. So it's actually a really great it's so good.
Ben Hong: [00:35:14] Yeah. Like it's better than steam spelt and stream.
Cassidy Williams: [00:35:19] I've also been helping just a lot of newbies who are learning how to code and stuff in their boot bootcamps.
It's hard for them to get a TA during regular office hours because it's all remote and everything. And there's a few discord channels of just people who need help. Understanding the basics of HTML or something. And it's fun to chat and discord because like you said, the streaming is really nice and easy.
Jason Lengstorf: [00:35:40] All right. So I think that's a good place to wrap up and we can call this a, a finished episode, I won't say, in the can, so that Cassidy doesn't. Ridicule me mercilessly. so I hope you enjoyed that. I hope you had a lot of fun. I know I had a blast and I hope that you are inspired to maybe give some of these social programming, practices, try, you can find the podcast at remotely.
interesting.transistor.fm. And make sure you come back next time, or we're going to be talking about server rendering on the JAMstack, which might sound like it's not possible. We're going to tell you how it's possible. until next time I am Jason, the bearded beauty Lang store
Cassidy Williams: [00:36:20] I'm Cassidy, the memer and the dreamer Williams.
Phil Hawksworth: [00:36:25] I'm Phil available at alarmingly short notice.
Sarah Drasner: [00:36:32] I'm Sarah forgot to unmute Drasner
Ben Hong: [00:36:37] and I'm Ben unbelievably nervous for my first episode.
Cassidy Williams: [00:36:43] Wait, you didn't see your last name.
Jason Lengstorf: [00:36:45] Oh, hi,
Phil Hawksworth: [00:36:50] you created the most dispense in your name than anyone's ever.
Jason Lengstorf: [00:36:57] All right, thanks. Y'all we'll see you next time.
Phil Hawksworth: [00:37:00] Next
Ben Hong: [00:37:00] time.
Jason Lengstorf: [00:37:01] Bye.
Welcome to Remotely Interesting brought to you by Netlify.
(by the way, Jamstack Conf is Tomorrow!!! come join us!)
People who were remotely interesting:
Bringing tech events into the virtual web-o-sphere can be a daunting task. In this episode, we talk about what it's been like as an attendee, contributor, and organizer of there virtual events. We cover the great things, the maybe-not-so-great things, and even come up with an idea for a WHOLE other event, because, why not. Come join us on this virtual, distant journey.
Few of our favorite things! & hard transitions
Ways to make it interactive
What may not work so well
New ways to learn
TidBits & ThoughtThings
SHOW NOTES
TRANSCRIPT:
Cassidy Williams: [00:00:00] Previously on Remotely Interesting.
Phil Hawksworth: [00:00:04] Spill the tea, the tea, spill the tea, the tea, spill the tea.
Cassidy Williams: [00:00:08] Hello, and welcome to Remotely Interesting.
Phil Hawksworth: [00:00:10] This is Remotely Interesting.
Divya Tagtachian: [00:00:12] Well, that seems a little presumptuous.
No, no, no. That's the name of the show.
Jason Lengstorf: [00:00:23] Hello everyone. And welcome. To another episode of remotely interesting today on the show, we are going to talk about virtual events and what we've seen go well, what we wish to do on better and what our hopes and dreams are for the spaces we we're looking into an uncertain, mostly remote future. How about we kick it off with a, uh, with a general question here.
Um, spill, I'm gonna pick on you first. Uh, what is your favorites virtual event that you've attended so far?
Phil Hawksworth: [00:00:54] Goodness me straight into the money. Look at that. Absolutely.
Tara Z. Manicsic: [00:00:58] Because you will be dissing every other conference. You don't mention,
Jason Lengstorf: [00:01:02] you need to name all the ones that you didn't like me, like could be organized.
Now. First, last name, mailing address
Tara Z. Manicsic: [00:01:09] alphabetically.
Phil Hawksworth: [00:01:11] Oh, wow. So, um, well, I've, I've been fortunate to be involved in, in, uh, a handful of virtual events this year. Um, I know, I must admit that my, my enjoyment is very greatly and that's not to say that some are bad, some are good. It's just that they're hard to, uh, to be, um, a speaker up.
So I think the experience from a speakers point of view and the attendees point of view is different. So, um, we'll probably circle back around to that, but, um, But, uh, one event that I have particularly enjoyed, and to be honest, I enjoyed them when they were in real life as well. And I think the team has done a very good job of moving them across to being virtual is the smashing different events.
Um, because I mean, they've carried of, I read over a lot of the good stuff about making it feel like a really approachable kind of community. Feel, which is hard to do. Um, and I think a lot of, a lot of the good stuff has come from the personalities involved, you know, Vitale, who've kind of fronts this, uh, an MCs, these and kind of stairs.
Everything is, um, it's so personable. Uh, so it's hard to not have that, um, cover enthusiasm come across. But I think they're just also very, very thoughtful in terms of. The way that they structure it and schedule it and try and try and fill some of those gaps that you feel when you don't have it. You know, a hallway track anymore.
Um,
Tara Z. Manicsic: [00:02:39] it's super daunting though. Like when you have a conference, that's like, it's known so well for being so much fun to be there. I mean, that's so much, like I felt that way with NG camp, because the biggest thing about NG comp was the hallway track. And like, they knew that like they emphasized. At the like IRL G comps, like there was always fun in the hallway, so were like donut walls and that's all I can really remember, but
Jason Lengstorf: [00:03:06] it was the oldest part of the event.
There's a donut wall. I don't, I'm not going to any talks.
Tara Z. Manicsic: [00:03:15] I mean, can you do a virtual donut wall?
Phil Hawksworth: [00:03:17] I completely, I completely glazed over at the point that you said, uh, I haven't heard anything since you said donut wall. I've only been stuck on that now. So
Tara Z. Manicsic: [00:03:26] that was brilliant. Can new, was that intentional?
No,
it
Tara Z. Manicsic: [00:03:30] wasn't. Was it?
Phil Hawksworth: [00:03:34] I, I was too embarrassed to, once I realized it was coming, that I didn't, I didn't have the guts to call out because I couldn't think of another word. So,
Tara Z. Manicsic: [00:03:42] um, yeah, I just sprinkled it in there. Huh?
Phil Hawksworth: [00:03:47] Thank you. Thank you.
Tara Z. Manicsic: [00:03:50] But I think that, I think, because I think like that kind of transfers over those, the creative creativity and excitement of the organizers. That do those, uh, events. Now they just have to pivot their thinking and try to make it like NG comp. Um, they did skit because they were using a green screen that they had an invisible man.
Um,
Lindsay Levine: [00:04:12] I'm like,
Tara Z. Manicsic: [00:04:14] sounds so ridiculous. I won't give away the true identity of who the invisible person was, but like, uh, It just, it was hilariously, um, ridiculous. Um, but it's just like, you see, they had to basically funnel all that creativity that they had and all the plans let alone, they had four, cause this was like back in March.
So this was like pretty early on, uh, not a lot of time to like come up with this stuff. But I think for me, that's one of my kind of favorite parts is like watching how that kind of. Creativity and thought work transfers over to the virtual environment
Jason Lengstorf: [00:04:55] that I, I think that's such a, it's such a challenging transition too, because like, you know, as a conference attendee, the parts that I always take the most out of.
Have been the things that happen in person. So it's, you know, I honestly, I'm a really bad conference attendee because I, I actually go to conferences almost exclusively for the hallway track. Um, it's, it's pretty common for me to show up at a three-day conference and see four talks, uh, because I'll spend most of the time inside conversations, hanging out with other people, going for like a walk into the city to get long lunches with folks like it's, it's such a social event for me.
Um, and, and so when you switch over to a virtual event, it's so hard to bring any of that across because it, the virtual events are by default, completely content focused. Um, and, and it's so easy for them to basically become video playlist. And, and I think that, um, where we're seeing really interesting things is like, like you said, with, uh, with NG conflict, coming up with some kind of a thread that you can pull through the talks that.
That makes it feel like an event as opposed to destroying the talks or, um, I think if you can get a really good, like, find ways to make it a little bit more interactive. And I think there's some, some notes to be taken through virtual media, like, like Twitch is really good at this. How do you take a bunch of people who are not in the same room and make them feel like they're doing an activity together and you, you get these kind of like, How do you pull the audience in and, um, you know, how do you, how do you let people participate in a way that's not completely disruptive to the, the format of the, the event?
And I, I mean, I don't know, it's hard. Like I try to do it on my stream and it's so disruptive. Sometimes we have to just like turn stuff off and I don't think that's good for giving a talk. Um, but it, it is good for like making the audience feel like they're part of it. And I, I feel like that is a, it's kind of a, it's a little bit of a Razor's edge, I think, to walk.
Um, in trying to get this right.
Tara Z. Manicsic: [00:06:56] It's funny because you would think there are a lot of resources out there. I think about the popularity of YouTube and like YouTube personalities, like feeding off stuff like that, where you feel like it's so personable with this stranger you've never met and you've never seen in person.
Um, it's just interesting to see how that happens. Like as far as like human interaction though, one of the things that I really loved, so. It was the very first Jamstack comp that I attended and it was the virtual one, but there was the platform they used was happen and it, they did the, um, was it, was it just the virtual networking
Phil Hawksworth: [00:07:36] is what it was.
Tara Z. Manicsic: [00:07:38] Oh my goodness. I was so intimidated by that, but I was like, I got to do it. Okay. Had to like check myself up. I totally did it. And then I was addicted because. Like the hardest thing, in my opinion about meeting people in real life is going away from them.
no how to, like, I mean, like you can, I mean, I can, I could give like, I have great like conversation Enders, like, Oh, I'm starving. I gotta go eat. Oh, I gotta pee, you know, stuff where it's just like, okay, they can't follow me. Right. But no, they can. Um, and so it's really hard sometimes. It conferences to break apart from people.
And what was great is happened there. Like you were meet them for like, I think maybe five minutes or something, and then there's a countdown, the 32nd countdown. That's like, Oh, your session's going to end. And then they just go away. It was fantastic. So I did so many of them
Phil Hawksworth: [00:08:42] kind of your habits. So like rigorously enforced that, you'd see the countdown and you'd get this kind of Pavlovian.
Now I need to pee kind of,
is that how it worked?
Tara Z. Manicsic: [00:08:55] I actually like, pardon me? I was like, okay, do I, do I talk about like, do I use conversation Anders here? Or do I just let this die? And I definitely did a mix of them because it was just too much fun to experiment,
Lindsay Levine: [00:09:09] but
Tara Z. Manicsic: [00:09:10] it was great though. I loved it. And now I think I'm going to implement some.
IOT device like a lapel. It just has a countdown for when I'm going to walk away
Phil Hawksworth: [00:09:20] in real, for real experiences.
Jason Lengstorf: [00:09:22] I wonder like, I mean, for, for everyone who's listening, who's never been in a meeting with Tara. Like Tara has the most just like cutthroat meeting etiquette where the meeting gets to the end and then she just says, bye and hangs up.
And like, the meeting just ends like mid sentence. Doesn't matter. It's like, bye. And then it's over. And I'm really wondering how you're going to reintegrate into non remote society, like
Lindsay Levine: [00:09:47] are
Jason Lengstorf: [00:09:50] begging you to like adopt smoke bombs as part of your personality,
Tara Z. Manicsic: [00:09:56] or just like very uncomfortable social cues where, like, I just put my hands over my face when
Lindsay Levine: [00:10:02] I'm done talking to you.
Tara Z. Manicsic: [00:10:07] I can't imagine I'm not looking forward to that, but, um, Yeah. Speaking of like not things not looking forward to, are there any things that stood out, anything that like stood out to you all about virtual events that you were like, Oh, let's never do that again. Or maybe don't try that because it did not work.
You don't, you can keep it anonymous because we want to have friends still.
Phil Hawksworth: [00:10:33] That's good thinking, actually, this is interesting because one of the things that I just called out smashing comp as one of the ones that I particularly enjoy, but there's an attribute that I don't enjoy quite so much. And that's the duration of the talks.
Um, because those haven't changed that much since I don't know if they've changed them at all, actually since the, the longer talks that they do at their regular conferences. Um, and so they kept them the same length and. I don't know. It's I think a lot depends on again, how you, how you engage with the conferences and attendees.
Given the, a lot of us are attending from home and people who've got family running around and all those other kinds of things. Um, so what are some of the things that we, we did it for jumpstart conference. We very deliberately made the talks 20 minutes long, which is horrendously short as a speaker.
It's like, here's, here's my introduction. I know what my conclusion is going to be. Oh, I've got very little time in the middle to actually give the, give the meat of the talk. Um, but for an attendee, I think that was kind of nice. I think I actually kind of liked 20 minutes as a, as a, as a, the length of a, of a talk to watch over video.
Um, so I think keeping talks shorter. Personally, I think everyone's probably different, but I personally like that as a, as an attendee of, of virtual campus.
Tara Z. Manicsic: [00:11:47] Yeah. I think you get to see a lot more people too. Like I like when I think a lot of companies that are doing now where they have different formats where it's like lightning talks and you know, then the regular link talks and then they'll have longer workshops that you can attend if you want that really in-depth or like.
It's hard to run through any code in 20 minutes, um, and do it well and not worry. I mean, that's, that's, you know, and I mean, even just watching it when it's just like, people definitely do it well, but it's nice to be able to go to a conference and see if you're, if you're there virtually and you're just watching the talks, like it's almost like a hallway track where you get to see all these people and their new technologies.
Phil Hawksworth: [00:12:31] Yeah. I mean, I, I, wasn't kind of like, so this isn't really answering your question, but this is just another thought that's that's, it's like, I'm not honoring the format of the podcast. I'm sorry. Um, but the, one of the things that also I'm seeing, um, two very different approaches is some people are doing the talks live.
And so, and a lot of people are pre-recording the talks. And I think there's a, I think Jason, I think Jason mentioned earlier on there, there's a risk of it becoming like a YouTube channel or , um, And there really is a risk of doing that when you, when you prerecord. However, I kind of liked the fact that that can also mean that the speakers can be engaged in the chat and answering questions on the fly, because you know, in, in, in real life, you, it doesn't really work if halfway through the talk, someone in the audience just says, yeah, but how does this work, you know, has your middle of the presentation, but you can do that when it's virtual, you know, you can, people are asking questions in the chat.
And that I kind of liked the fact that the speakers can be present in the chat and responding and just be part of the conversation as well. So in an odd way, I've seen that, that can feel like you're like you're more engaged even though the talk is prerecorded, as long as there's engagement from the speaker throughout and then Q and a, which is kind of live afterwards.
So I think that it can go both, both ways. For those,
Jason Lengstorf: [00:13:51] my experience with this has been very positive from an attendee standpoint and very negative from a speaker standpoint. In that like, I hate prerecording talks. Like I just, Oh yeah. I just hate it. Like, there's nothing less fun to me than giving a talk to no one.
Um, and
Tara Z. Manicsic: [00:14:15] Oh, you mean as giving a talk, you don't like prerecording.
Jason Lengstorf: [00:14:18] Yeah. Just recording as a, as a speaker. Um, because like, I, but I, I feel like part of that is because a lot of my. Like everything that I do has an improv. Bent to it. Like, I am not a, I'm not a pro I don't prepare. I am very fly by the seat of my pants.
Let's show up and see what happens. Right. And so this is so counter to my nature as a speaker to prepare something and record it and edit it and Polish it and then turn it in. And I'm just like, Oh, I hate it. It's like school. Um, as an attendee, I really do like the idea of. The speakers are there as like, as the talk is happening, the speaker is there to answer questions in context.
Um, I think where I've seen it go really well is, uh, I saw one where the speaker wasn't there to give the talk. Um, they were there in the chat, but they were collecting questions. And then the MC would like do a live Q and a after the talk. Um, and, and that also like adds to the feeling of you're at a real event.
Um, cause one of the, because, you know, as I said, with the YouTube channel or the YouTube playlist thing is like, if what I'm watching is going to be the same, whether I watch it now or whether I watch it later, when it gets cross posted to YouTube, what is the benefit to me of like taking time out of my day or like, you know, rearranging my schedule to watch it now versus trying to watch it on my lunch break or something.
And, and I think like the. The primary benefit of doing that at a conference is that you're fully engaged in it. If you're, if you're just trying to watch, like in between, you know, you've got to go on in the background, you're working on this other monitor. If you're not, are you really watching or is it just background entertainment?
Right. And so, um, as a, kind of like a tangential attachment to this, uh, one of the things that I have noticed that I really liked about, uh, like smashing to, to call back to them again, um, their workshop format. They've accepted that like remote workshops are an inherently different, medium than in-person workshops.
And so in person, the reason that you do an in person workshop for a full day is because that's the only day you get off. Like you can't take three weeks off to go learn something new. You gotta like learn the thing and get right back to work. What smashing has done with remote is they've broken it up across multiple days as like two hours at a time.
Um, and that puts it into this really interesting format where like, I'm not as a, as a remote person. I do not have the attention span to sit in my own office with no one around for nine hours. Um, I'm not going to do it, but I can spend two hours at a time working on a thing and then like have a couple of days to let that information sink in and then go back and do another two hours.
Um, and I think that like a lot of events are starting to, to explore this idea of like, It's not a full day conference. It's a three hour event that happens on like two or three or four separate days. And I think that's really interesting. Um, Because it lets me focus. It lets me schedule without having to block out full days.
Tara Z. Manicsic: [00:17:37] There are so many things that are smart about that, because like, just thinking about, uh, I just was, I'm still, there's a conference going on at now that I will not name, um, that is going on for three days, but it was like three full days of talks, but their platform went down the first day and they had a canceled the whole.
Second part of the day and then switch platforms for the next day. But if you think about it as like those smaller chunks that happen over a more extended period, there's less pressure for the organizers. And like, as an attendee, I would love that because I can't tell you how many, like. Seven hour workshops or like six hour workshops.
I've been a part of where it's like information, information, information, and then you leave and you're like, I need something with something because it's just so overwhelming. Like you have all this information and let alone, if you have questions that part two of 17 and you're just moving onto the next section.
So I, I really liked that. Um, And it's a little more, it's funny. I actually really liked school. Um, you know, this is probably our only difference, Jason.
Lindsay Levine: [00:18:45] Um,
Tara Z. Manicsic: [00:18:46] but it's kind of like school where it's like, you know, you just fit that part of the section into your daily routine where it's just like, it's much easier.
Like you said, to squeeze in two hours somewhere than a big chunk of time in one day.
Jason Lengstorf: [00:19:02] Yeah, it will. And I also just think it's better for absorption, right? Like , we've got research that shows that the best way to learn something is like intense learning followed by time, like to let it marinate. Um, and yeah, so you, you learn for two hours, you eat the whole donut wall.
Sleep that off. And then you come back and learn for two hours. Hope they didn't refill the donut wall. So you don't have to go work out later. Like, you know, like, uh, you have, um, if you have the ability to like intensely bury yourself in something for a little bit of time, get completely overwhelmed and then let it soak in your subconscious for a bit and then come back and revisit it.
It's that's going to make that content sit, like, sit it'll actually stick in your brain. You'll actually start to understand it versus, you know, a dunk. And then you feel like you're drowning for a day and then you'll retain like 10, 15% of it because you won't have time to practice it again. So this is like built in practice and repetition.
I think that's the stuff that really makes stuffs like stick and sink in, um, which doesn't help so much with like talk driven events. Uh, because the content will change across days, but I do think it helps, like, I don't know about you, but if I watch, if I go to a conference and I actually watch all eight talks by the fourth talk, my brain is jello.
Tara Z. Manicsic: [00:20:25] Oh my goodness. Yeah. Yeah. But even being able to break those up with something, the content content, that's not so heavy in
Jason Lengstorf: [00:20:33] between. Nice. Yeah.
Phil Hawksworth: [00:20:36] What's your, um, Preferred duration of a talk then whether you're in the room or not, not just not to give us as, as speaker, but if you were to, to engage in just to watch your talk, what would you, what's your preferred duration?
Tara Z. Manicsic: [00:20:51] Definitely 20 to 30 minutes for me. I can't, I just cannot do over like the 45 minute talks that I see a lot. Like, I, I lose track. I just, I can't, I don't, I, you know, I'm. I'm an internet child.
Phil Hawksworth: [00:21:09] You you'd like all of your talks delivered as Tik TOK. What, what is, what is the tick? What is the unit of tick talk by the way, is this a tick, tick?
Tick. It
Tara Z. Manicsic: [00:21:19] goes tick and then talk and then tick and then talk and then taking them talk. How have you not learned that?
Phil Hawksworth: [00:21:25] You're all rolling your eyes at me, but no, none of us really know. I don't want
Lindsay Levine: [00:21:29] to look. That's the max length of a tick
Phil Hawksworth: [00:21:31] tock. It's maximum 60 seconds. Alright, thank you.
Tara Z. Manicsic: [00:21:35] 60 seconds.
Lindsay Levine: [00:21:37] Maximum length of a sequel Tik TOK is 60 seconds.
Yeah, one minute. That's wild.
Jason Lengstorf: [00:21:41] You can, you didn't make art in 60 seconds on those things.
Tara Z. Manicsic: [00:21:45] Seriously. Can I put a super, super side note note in here? I just been this thing that in, um, interstellar, when they're on Miller, that water planet. The soundtrack has a tick in the soundtrack and that tick like marks one day on earth and millet.
Yeah. That's so cool. It makes me want to watch that for the 80th time again.
Phil Hawksworth: [00:22:11] That's great. I think I might've found the, the other person who likes that movie. I've spoken to so many people who just do not like the movie and I really enjoy it. You will like it. Do you like
Lindsay Levine: [00:22:24] sort of what I've heard about, or from people who have
seen
Phil Hawksworth: [00:22:27] it yourself?
Jason Lengstorf: [00:22:28] I just want you to be better friends.
Phil Hawksworth: [00:22:30] I do. I mean, trying to jettison those losers for such a long time, I took,
Tara Z. Manicsic: [00:22:35] I took my dad and he was like, I, I was like, it's not what I expected. I was like, well, what did you expect? He was like, I thought there would be more space travel. And I was like, dad, that was like the whole second half of the movie.
And he's like, I did fall asleep
Lindsay Levine: [00:22:47] for a little bit.
Phil Hawksworth: [00:22:50] Well, I mean, that's, that's a review all of its own, I suppose. Isn't it.
Lindsay Levine: [00:22:55] But anyway,
Tara Z. Manicsic: [00:22:56] so it's 60 seconds Lindsey.
Jason Lengstorf: [00:22:57] Yeah, that that is the, the, the unit. So, so you want your talks to be three tech talks or less, or
Tara Z. Manicsic: [00:23:05] me? Yeah. Yeah.
Lindsay Levine: [00:23:08] When you're speaking to the two hours, you know, the intense learning two hours, maybe two hours max letting it marinade.
I was thinking Jason should invent school should reinvent school. I'm a dropout. I, you know, if,
Tara Z. Manicsic: [00:23:24] if
Lindsay Levine: [00:23:25] a talk can be five minutes, let's, let's cap it at that. Let's just get straight to the point. And that's my perspective.
Jason Lengstorf: [00:23:33] I think I agree with that. Like I am, I'm a big fan of, um, keeping talks really short where I think the, I think there's a, a line for me though, where, where I want either.
I either want it to be like Ted talk length, 10 to 15 minutes. Or I want it to be the 45 minute actual we're building a thing. Um, because there's, there's two modes that I learned in, right. There's like conceptual mode where we're talking about philosophy and big ideas. I have yet to hear somebody talk about philosophy for longer than 15 minutes without starting to repeat themselves or getting off point.
So I want, yeah, like a
Tara Z. Manicsic: [00:24:07] short time. My philosophy papers.
Jason Lengstorf: [00:24:09] Yeah, me too. I mean like most guilty of this, this is why all my blog posts are 6,000 words and you can stop reading after the first paragraph and be done.
Okay. They make that joke. Like this book should have been a blog post. My blog post should have been a tweet. Like that's
Lindsay Levine: [00:24:24] really,
Jason Lengstorf: [00:24:28] but, um, but I think that, you know, like a lot of talks that are, here's a way to think about a thing should be 10 to 15 minutes. But then if it's like, I'm going to show you how to build a thing. Let's do the 45 minutes. Don't speed. Run me to save time, because I want to be able to actually see what's happening.
Don't shortcut things. Don't copy paste, a big chunk of code that I'm gonna have to pause the video and read myself, like walk me through the whole process. And if that takes 45 minutes, so be it, I'd rather learn than have you rush for time.
Tara Z. Manicsic: [00:24:58] You know, what'd be really cool. Cause like one of my favorite, my favorite takeaways from talks are like a super deep dive into one tiny thing that I never knew that much about.
And, um, I used to love doing this with different, uh, Like you see a lot of this when you see a, that with ECMAScript and when they come out with new, um, features to add, they have to like really dig down deep, like in temporal came, uh, as Cummins in the process of coming out to deal with time and date and JavaScript.
And like, they hit you, like, you have to deep dive into like, when did calendar start and why? Because you're rebuilding why they started so five minutes on like a micro deep. So it's like five minutes, but it's one thing and it goes really deep would be so cool. Like, I would be way about that. Like, and then, you know, you have the second half of the day, you can go to it in depth.
Workshop to actually learn how to use it and put these things into play. Like, man, I'm okay. Obviously this pod has episode would come up with a new conference idea,
Jason Lengstorf: [00:26:06] but I think like in their talks like this, right, like I've seen these talks and they always, the ones that always stick with me are, are talks like that.
Like I've saw, um, did a talk on Lambda calculus that was like, it's a deep dive into something kind of esoteric. Uh, John Fenella did one on time. It's the history of time zones and measures of time and how we got to where we are. And it is the weirdest, bizarre, deep dive I've ever seen. And like those talks, neither one has real impact on my work, but they gave, they like give you this kind of lateral view of, of how the world got to be where it is.
And I think that that adds to the way that we work and think about things. Definitely adds empathy, right? Like when you see somebody struggling with dates, I don't know. Part of me goes, Oh, this is easy. Like it's so fun.
Tara Z. Manicsic: [00:26:58] Yeah. Yeah. And it's like, when people are like, Oh, it's hard. And JavaScript was like, no, time is hard.
Time
Lindsay Levine: [00:27:03] is hard.
Tara Z. Manicsic: [00:27:07] But speaking of time, do you all want to talk about like any latest or upcoming conferences that you're excited about or involved in?
Phil Hawksworth: [00:27:17] Oh, I don't know. Nothing comes
Tara Z. Manicsic: [00:27:26] on their mind lately.
Phil Hawksworth: [00:27:27] Nothing comes to mind at all. I can't really,
Jason Lengstorf: [00:27:30] Oh
Tara Z. Manicsic: [00:27:31] my brain to figure it out.
Phil Hawksworth: [00:27:35] Well, we are knocking on the door at Jamstack constantly, since you, since you mentioned it earlier on and actually goodness me, it really, we really are knocking on the door it's next week.
Jason Lengstorf: [00:27:45] Yes.
Tara Z. Manicsic: [00:27:46] And by the time this product comes out, it may be this week.
No pressure. Chris, when are you?
Phil Hawksworth: [00:27:58] Uh, at least at least we made this a perfect clean recording. So really there's basically no editing needed. Chris can just have a, McGurty listen to it. It'll take 35 minutes with
Jason Lengstorf: [00:28:10] the publish button.
Tara Z. Manicsic: [00:28:13] He can sip on a lemon,
Phil Hawksworth: [00:28:18] whether we finished this podcast recording in time or not, it is happening on the 6th of October. So the conference is on the sixth and then we have a workshop day on the seventh, um, and, uh, Yeah, I'm pretty, I'm pretty excited about it. I mean, we had, as you mentioned, we had the last couch of it searching for the word there.
I just wanted to put something in it needed editing. There we go. Uh, you put the last, we had the last edition in may and that was the quote unquote London version. And this is the quote unquote San Francisco Cisco version. Uh, but yeah, they're both, they're both virtual. Um, I
Tara Z. Manicsic: [00:28:53] think in the time zone, right.
Of each of those locations,
Phil Hawksworth: [00:28:56] that's true. It isn't the time zone, but I'm, I'm, uh, Well, yeah, Tara and I are both getting to MC this woman. Um, and I will be emceeing the San Francisco event from the timezone in London. So that will be fine. Uh, no one, no one will be any of the wiser.
Jason Lengstorf: [00:29:13] Fine,
Tara Z. Manicsic: [00:29:14] Jason and I, uh, very aptly are doing workshops as well as, uh, I think we're both kind of helping with some discussions too, throughout the conference.
You can't get rid of us, basically. We want to be at the conference and you're going to have to see it.
Phil Hawksworth: [00:29:28] I don't recall either of you being invited in any way, shape or form, but you're
Jason Lengstorf: [00:29:32] very much present,
Phil Hawksworth: [00:29:34] but there's some, there's so much good stuff. So there are like those panel panel discussions, those kind of topic tables for kind of big.
Big discussions, um, with there's a bunch of lightning talks, whichever 10 minutes, which is punchy, but it's so focused. It's really nice and focused. So we have loads of it, credible submissions from the community. So we had a CFP, um, some people submitted proposals and it was really difficult. Um, choosing from that.
From those wonderful proposals. So we have more lightning talks and more content from, uh, I was going to say full talks, but even a full talk is 20 minutes. Yeah.
Sorry. I do beg your pardon. That was my accent. Once again,
Jason Lengstorf: [00:30:15] we,
Phil Hawksworth: [00:30:17] geez.
Jason Lengstorf: [00:30:17] We're doing those lightening launches and I am, I'm super excited for a couple of the things that are coming out of that. I'm, I'm really, there's some stuff that I think is going to move the Jamstack community. Ahead by quite a bit coming through this, this, these announcements, like, you know, it's stuff that if you're really plugged in, you know, about, if you, if you are a casual observer of Twitter, like I am, uh, then you, you may not have heard about some of this stuff yet.
Um, I think the workshops are going to be super fun. I'm doing a Jamstack one-on-one, uh, it's a shorter format, like it's a half day. Uh, and I'm going to try not to bury people. Like my, my goal is that you walk out. Feeling capable, not, uh, not overwhelmed. Um, I will
Tara Z. Manicsic: [00:31:03] no promises,
Lindsay Levine: [00:31:06] but
Tara Z. Manicsic: [00:31:07] honestly though, like that's kind of the glory of the Jamstack because it's like, you're just re reconfiguring things that people already know.
We've talked about this on many podcasts episodes, but, so I feel like even though the. How you construct it and the architecture may look a little different. You already have that base knowledge. And I mean, if only you were good at helping people code live and, you know, teaching them things online, I mean, that would really make it great.
Phil Hawksworth: [00:31:39] One practice. Jason, we know you've already told us you won't practice. You're just going to turn up, turn your camera on and
Lindsay Levine: [00:31:45] go. Okay.
Phil Hawksworth: [00:31:47] Here's a half day workshop.
Tara Z. Manicsic: [00:31:49] He's going to finish, grinding his coffee beans and go, Oh, hello. There, are you here to land the Jamstack with me?
Phil Hawksworth: [00:31:56] for legal reasons, we should probably, we probably say that Jason will not be doing that because while the conference is free, the workshops are $100 and Jason Langsdorf will be preparing actually for his half day workshops.
Jason Lengstorf: [00:32:10] Okay. I'm totally, you know,
Phil Hawksworth: [00:32:13] I can't,
Jason Lengstorf: [00:32:13] it's going to be so much fun. Get ready. Like it's
Phil Hawksworth: [00:32:16] the best I can do for getting you out of jail. Jason,
Jason Lengstorf: [00:32:18] if you like building, come on, let's make it. I do,
Tara Z. Manicsic: [00:32:22] I, 100% have to bash for this because we've been doing a lot of mob pairing and pair coding in general. And it's hilarious because Jason will be like, I have a quick cycle.
Did you need help? And I'm like, yes. And then he pushes like, Helps me push three of my four requests over a hump that I've been in, in like 10 minutes and like, does it in a way that it's like, okay, so what we're going to do is walk through this process and here's what what's happening and how we're sending state across.
And I'm just like, huh,
Lindsay Levine: [00:32:48] cool. It's like basically
Tara Z. Manicsic: [00:32:51] a workshop in his like free cycle after he eats his breakfast sandwich.
Jason Lengstorf: [00:32:55] So I can definitely vouch for that.
Lindsay Levine: [00:32:58] Yeah,
Phil Hawksworth: [00:32:59] he is. He is a pretty, pretty useful person to, to use in that way. I definitely, I definitely agree. Uh, and if anyone has got any doubts about whether they should part with money for one of these workshops, you should just go and check out, learn with Jason for a little taste, and then realize you could get a half day dose of that.
This is the, this is the biggest sales pitch I've ever done.
Jason Lengstorf: [00:33:21] I actually got to cut you off because the workshops sold out. Um, there are other words that are available and they are going to be equally good. So we've got like, we've got, um, Terry you're teaching a workshop.
Tara Z. Manicsic: [00:33:35] Uh, what are you teaching? Better?
Build a bedroom, build a build plugin,
Jason Lengstorf: [00:33:39] build a bear. Build it, build it, build it. Yeah, there is
and then we've got, um, Hey, Zeus is going to teach us how to build e-commerce on the Jamstack. Like that's going to be a super cool one. I don't have the rest of the list in front of me. There's so much
Tara Z. Manicsic: [00:34:00] comms.com.
Phil Hawksworth: [00:34:03] Well, that's the thing. Yeah, you can, you can say all of this on Jamstack com.com for sure. But yeah, we've got workshops on Gatsby.
We've got workshops on building things with next. We've got, we've got all sorts of stuff, so
Jason Lengstorf: [00:34:13] we'll
Tara Z. Manicsic: [00:34:13] put them on the show notes
Phil Hawksworth: [00:34:14] too. Did we intend to get so salesy? I feel, I feel like I just did like a
Tara Z. Manicsic: [00:34:19] sponsor
Phil Hawksworth: [00:34:21] enthusiasm. Isn't it it's enthusiasm,
Jason Lengstorf: [00:34:23] but I feel like, you know, I don't even feel like this is sales.
Like, I honestly feel like, you know, for, for a hundred bucks to be able to spend four hours with an expert and learn something, if you don't turn that four hours into a significantly larger amount of money, like it's going to advance your career, it's going to make you more money. And, and I think that like, it's, it's a steal because if you know, if you're looking at some of the other things out there in the community, you'll spend a hundred bucks for a, for an ebook, you'll spend a hundred bucks for like, Yeah, there there's stuff out there.
That's five, six, seven. I mean,
Tara Z. Manicsic: [00:34:56] let's be honest. This is less than my pre door dash order for the day of Jamstack com
Jason Lengstorf: [00:35:06] you just find out is that Tara is making her own donut wall.
Lindsay Levine: [00:35:11] Yeah.
Tara Z. Manicsic: [00:35:12] Oh my gosh. I could do that. They'll be like, what's all the grease things
Lindsay Levine: [00:35:20] you signed.
Tara Z. Manicsic: [00:35:21] You signed the contract.
Jason Lengstorf: [00:35:22] She bought me
Lindsay Levine: [00:35:23] clothes, no question.
Tara Z. Manicsic: [00:35:26] But, uh, we are wrapping up on time. So, uh, with just one, uh, like quick, uh, sentence or so I would love you all to, uh, just tell us what your favorite virtual conference, or if you haven't been to a virtual conference, um, a memory that you would, uh, Like from a virtual conference or whatever Lindsay decides, she wants to tell us about it.
Lindsay Levine: [00:35:54] I'll go for it. And I would just like to ignore what you're saying and ask Chris to clip the frozen cover that Tara sang, and I'm going to remix it and we'll put
Phil Hawksworth: [00:36:03] it
Lindsay Levine: [00:36:04] on another podcast or on the internet. Yeah.
Jason Lengstorf: [00:36:08] That's just,
Lindsay Levine: [00:36:09] that's just a small
Tara Z. Manicsic: [00:36:10] request. That's the memory that you would make.
Lindsay Levine: [00:36:13] Yeah. A terrible performance, accustom, frozen built plugin,
Jason Lengstorf: [00:36:18] Remax
Phil Hawksworth: [00:36:19] to beat
Tara Z. Manicsic: [00:36:22] you all, just going to make up memories now, aren't you, you're not even going to stick to the prompt.
Phil Hawksworth: [00:36:26] Okay. So I have, I have a memory. So, uh, what a break? Uh, I have a memory from a, from a conference that I, I could have named earlier as a favorite actually. So. Um, I think maybe the first virtual conference I attended this year as, as odd things started happening in the world was a S it was a very small conference based in Leeds in the North of England, uh, which normally has like 150, maybe 200 people I think there, um, but had to go virtual.
And as a result, I ended up with much bigger reach because, you know, they, they could reach an audience for, from a wider. Wider net. Um, but the thing that I really enjoyed, uh, in particular that surprised me at the end of the day. Was, you know, everyone was, uh, it was basically like a giant zoom call, uh, for the most part.
Uh, and at the end of the day, they just kept, uh, the playlist that was kind of their hold music throughout the day, like in the different kind of gaps, they just kind of kept that running for a couple of hours after the conference. And people just hung out as if it was. Like music in the bar and people just started chatting in the text in zoom.
A few of us just kind of went and got a cold drink and enjoyed kind of having a drink and chatting with people. And it did feel a little bit like the schmoozing and socializing you do at the end of the conference. And it, it happened just kind of impromptu just because they. Kept the music going and kept the chat open and people just hang out and gossip and I, I really enjoyed that.
That was
Tara Z. Manicsic: [00:37:52] that's so awesome. They actually, it's funny. Cause they, they unintentionally did that at NG camp where they had the music going and the chat was still open. So we all kind of just like kept the banter back and forth, uh, and then were like, seriously, you all go home? What are you doing? Why are you still here?
Like they would come back on screen and be like a bunch of you are still here hanging out. I don't know why, but then they kept it going because we wouldn't leave this
Phil Hawksworth: [00:38:20] great.
Tara Z. Manicsic: [00:38:21] One of my, like, definitely, uh, it's it's funny. Cause it does go back to Jamstack cons, but I did a workshop last Jamstack con for, uh, angular and the Jamstack and you know, it's like, it was nice.
It was a smaller group. So we were all kind of able to go on camera and talk to each other and we were, we built out an angular. Jamstack project. And at the end, we're also excited. And you know, you have that feeling when you build something out. But so then we all did the wave together on the zoom camera or like on the zoom video.
And it worked out super, super cute, but it was just like, I don't know, I probably would not have done that in real life. I would have not stood up in front of my work and be like, so time to do the wafers, like, but then you also had like this screen capture of like the fun, like teamwork end thing. That was really great.
And so I still have that and I play it like ever so optics. I really like it. That's my memory
Phil Hawksworth: [00:39:22] things.
Tara Z. Manicsic: [00:39:23] People say that a lot about me.
Phil Hawksworth: [00:39:25] Yeah.
Jason Lengstorf: [00:39:27] So you say I have, uh, um, a memory like w this one, I don't even know if this is really like virtual event specific, but just a memory that I wrote that I really love is, uh, Maggie Appleton gave this talk on like visualizing complex ideas and systems.
And one of the things that she did was she compared react to a potato. Uh, and she did it with this really beautiful visual, you know, as Maggie Appleton does, like everything that she creates is always so visually interesting and well done. Um, but it just swept the internet. Like it completely escaped the conference and it became like a meme where react was a potato for like a week after this.
And it was, it was just such a, like, I love it when something, and I know for sure. And actually, I don't know for sure. I suspect that this was a complete throwaway idea where she like gave the talk and was like, Oh yeah, here's the visual comparison. And it was just like, for whatever reason, hit at the right time and the right, the right way that everybody just kind of took, picked it up and ran with it.
And it was just wonderful. Like it's such a charming. It was such a charming little moment of like internet happiness.
Tara Z. Manicsic: [00:40:37] I love that. So that's another episode of remotely. Interesting. Thank you all so much for joining us next week. Uh, or next episode, I should say, we're going to be talking about, uh, the benefits of connecting with your team through pear and mob coding, especially during the times that we're going through right now with this pandemic.
So again, thanks for joining us today. Uh, we've had the panel here, including myself, Tara litter Gupton
Jason Lengstorf: [00:41:05] and I'm Jason twinkle toes Lang store
Lindsay Levine: [00:41:08] I'm Lindsay. I was forced to do this part Levine
Phil Hawksworth: [00:41:15] and I'm Phil fancy pants.
Tara Z. Manicsic: [00:41:17] Hawksworth brilliant. Thank you all so much for joining us today.
Lindsay Levine: [00:41:23] Next time. Bye.
Jason Lengstorf: [00:41:37] one,
Tara Z. Manicsic: [00:41:38] two, three,
Jason Lengstorf: [00:41:43] two, we'll slow down that lag. Every
Tara Z. Manicsic: [00:41:48] time we
all do that.
But the funniest thing is, feels clap is also slow. Oh, I meant
Phil Hawksworth: [00:41:54] what'd you mean in terms of that's because there's an ocean between us or use,
I'm
giving you a visual clue. That's you're welcome.
Welcome to Remotely Interesting brought to you by Netlify.
People who were remotely interesting:
In this episode, we attempt to give you as much advice as we can muster about great ways to help you level up and what we've learned at different companies and roles. Let's jump right in.
Communicate, communicate, Cat
How We've Learned
TidBits & ThoughtThings
SHOW NOTES
TRANSCRIPT:
Tara Z. Manicsic: [00:00:00] Previously on Remotely interesting.
Phil Hawkworth: [00:00:04] Now I'm the only one who hasn't made a joke pun.
Cassidy Williams: [00:00:08] Hello, and welcome to Remotely interesting.
Phil Hawkworth: [00:00:11] This is remotely interesting.
Divya Tagtachian: [00:00:13] Seems a little presumptuous.
Sarah Drasner: [00:00:15] None. No, that's the name of the show?
Jason Lengstorf: [00:00:25] Hey everyone. And welcome to another episode of remotely. Interesting. A question that we get asked a lot is how do I level up? How do I get to the next level in my career? And so we wanted to take a little time today to talk about some of the strategies that we've used and some of the specific skills that we've used that have helped us to do that.
Cassidy, I feel like this is a question that you get asked all the time, so maybe you would be good to lead off here. is there anything that you've seen that is like consistently applicable?
Cassidy Williams: [00:00:52] honestly, communication in general, especially at remote companies and especially during a pandemic and stuff, but being able to communicate what your code does, what you want to do in your career, what your team is doing, what you want to do on your team, all kinds of things.
If you can communicate what you want to do in writing and verbally that it has been just a consistent need and every single job I've had, because if you can't do that, then. Suddenly you aren't getting the projects that you wanted to do and you aren't getting the code reviews that you want because certain things are undocumented or unclear, or you aren't able to do what you want on a particular
team.
Jason Lengstorf: [00:01:35] I was going to say, look, what I've noticed is that like being a good developer is what gets you. In the door and like what gets you through the first level? And then everything that happens after that is not really about your ability to program anymore. Like you're going to get better at programming, just by getting the reps in.
You're going to continue to build stuff every day and you'll learn more and more. But how you actually start to progress is when you start to move outside of your own skillset and you start thinking in the context of a team or in a company. And that points back to what you were saying about communication.
Like you have to be able to not just have an idea and build it, but have an idea and tell it to someone and convince them that it's the right thing. And then guide them through building it with you so that you're working as a unit and not a lot of individuals working like loosely in the same direction.
Tara Z. Manicsic: [00:02:24] One of the things that we had talked about when thinking of this topic is the fact of like the experiences at different level companies. So with that in mind, have you seen different strategies or different, like ways that we're best to communicate based on the different size of company you are at?
Cassidy Williams: [00:02:42] I feel like at larger companies I've been, I've had to write down everything a lot more. Because I'm going to be right at writing it down for a much broader group of people. where, when I was at very big, large company X, whenever I would want to propose a feature or a new project or something, they said, okay, you have to write a docket, At least six pages long that answers every question, but he could ever have about this project. And we actually had to take writing classes internally to be able to communicate. Properly, the X company way, for housing, for how to. Propose a project for how to explain something that's already been worked on and about to be released.
Every single doc was at least six pages long single-spaced one inch margins. It was a lot
Jason Lengstorf: [00:03:34] that's, it's funny that you say that because that's actually something that I've noticed going the opposite direction is like when I've had to communicate in written format. I used to write these really long proposals where I would, I explain all the details, all the contexts, everything that would be required and send that to somebody and then expect them to like, read it, digest it and make their decisions.
But what I noticed when I was at like, when I was at IBM and since joining is that. The people who make those decisions get tons and tons of documents and proposals. And they just, even if they tried, wouldn't be able to read all of that material. So one of the skills that I've been working on and, like a really good tip that I got from Sarah Drasner is you should be able to communicate your whole idea compellingly in one page.
Like how can you give somebody a one sheet that they can look at that will give them. What the thing is, what the benefits are. If there are trade offs and like a recommendation, so they can look at it and say, this makes sense go. cause I don't think you can keep an executives attention longer than about one page, unless you're able to corner them in a room and have a conversation.
so I think being like ultra descriptive in your writing, so you can get to the point clearly and include necessary details. Skip unnecessary details. make, make a recommendation and an ask so they know why they're looking at the document. those are really critical skills that I think I didn't realize how much of an impact they were playing until I got called out for not having them in previous roles.
Tara Z. Manicsic: [00:05:08] And bullet points are so clutch
Cassidy Williams: [00:05:11] love my bullet points.
Tara Z. Manicsic: [00:05:13] So it's funny. So one of the things we also touched on is the point of looking at catalytic skills. and this is like a huge thing that, That April Wenzel talks about his catalytic skills. And so we're already talking about one with communication, but, it's interesting because I think a big part of the communication part that we underestimate is the listening part of it too.
and especially now a days where, we've all done remote jobs for some time, but a lot of people are putting themselves into remote positions with the, with what's going on nowadays. What have you seen? Like how do you find it best to talk and listen now, with this being remote or what have you learned from your remote positions of how to,
Cassidy Williams: [00:05:58] it sounds really silly, but I need to do something with my hands when I'm in a really intense.
Meeting, especially if it's remote because nobody is around me. And that I am just looking at a screen, even though there are faces in front of me, I have to do something like that. Doodle or play 20, 48 or even just I have a fidget spinner that I play with regularly and just having something to do with my hands.
So that way I'm still like, Paying attention to the screen in front of me, it having something physical almost reminds me of this is an in person meeting and I'm talking to real people because I'm doing something physically and I'm not just looking at a screen in
Jason Lengstorf: [00:06:37] front of me.
Tara Z. Manicsic: [00:06:38] I honestly think that's really clutch, as YouTube now I crossed itch when I'm in meetings that I have to listen to, that I have to listen to.
But it's it's so easy because you're on a computer. When you're in these meetings that you're supposed to be listening to, when you're talking with teammates, just, you need to be paying attention, but it's so easy to get a notification about something that's it happened on Twitter or something that happened in Slack.
And so that's my way that really keeps me focused with listening. And it's, it is a huge aspect of communication, which is again, a big aspect of doing. Doing your best at company, whichever company you're at while we're on the topic, I should explain to you what it has as her definition of catalytic skills, the fundamental human skills that help us acquire other skills and engage more effectively with the world.
Jason Lengstorf: [00:07:36] No,
Cassidy Williams: [00:07:38] feeding's hard.
Tara Z. Manicsic: [00:07:39] Is reading a level of skill that we need. I hope now. No,
Jason Lengstorf: [00:07:42] I didn't. No. So w I also think, like we talked a little bit about, listening and what that means, but if it, one of the things that I've noticed about a lot of these types of conversations is it when you're doing something that feels like programming work, like you're trying to work as a developer and you've got an idea.
A tool is something that you want to use. a lot of times I have felt in my career, like I'm having an argument with somebody about the tools. and as I've gotten better at listening and gotten better at it, trying to be empathetic, like why is somebody arguing with this? Why is somebody pushing back against this change?
Because. What I am, what I'm thinking. And the reason that I brought this idea over is because I looked at our, I looked at our goals. I looked at our restrictions, I assess some technologies and I have a whole bunch of contexts that led to me making what I feel to be is a perfectly reasonable, logical decision.
And then I bring it to somebody and say, Hey, let's make this change. And then they pushed back. and my first instinct when I was like a younger, hotter headed programmer was to be like, clearly everybody's an idiot, but me and I just have to keep telling them how right I am until they understand.
and as you can imagine, this one really poorly for me. And it led to a lot of like heated conversations and me yelling at people. and as I got coaching from people who were more empathetic, who were better at listening and better at team communication, I started to understand that the pushback isn't because.
They disagree with me or that they don't like that tool it's because they have their own context and their own concerns that they're trying to accomplish. And like a lot of times that comes, maybe it's a team that's been building something a certain way. They're worried that you're going to break their system, or maybe it's a completely different department.
Like the marketing team is worried that if we use this tool, instead of that tool, they're not going to have access to the things they need to do their job. And so if we're listening and if we're thinking empathetically, we can understand not that somebody is disagreeing with us, but that somebody has a concern.
And if we dig into what that concern is and what their goal is, then we can change the conversation. So instead of saying, I'm writing you're wrong, we can say, ah, I understand where you're coming from. You want to accomplish this. Here's how the solution I'm proposing will accomplish your goal. And it leads to these meetings that are so much less.
Contentious and so they're, they become collaborative. And so instead of me trying to win you over. I am. I'm just taking you with, I'm getting you to come with me because I understand what you need. I've thought about your needs. I'm trying to accommodate those. And I'm trying to get as many people as far as I can with this proposal, as opposed to being like, Hey, everybody, look how smart I am.
Let's do it my way. And I think that you also do. sometimes,
but I do think that is, that I would say is the most effective catalytic skill that I've learned is trying to frame my goal or my solutions, my proposals through the lens of what other people are trying to accomplish. And not just through my own like logical deduction of this is correct.
I think a big
Tara Z. Manicsic: [00:10:44] thing of that too, is I, we have this big thing on general, what we call mining for conflict, where. It sounds aggressive, but when it took me a little while to be okay with it because I hate conflict. but the thing about it is, like when somebody is asking you these questions about what you're proposing, you're trying to uncover as much as you can before you make that actionable item.
And I think that's a, it's a big thing for leveling up that. You won that, that you can contribute, you feel, and that you can contribute some change to some something in the company's product or the way the company is. He does things. Are you able to communicate that well, receive that, mine for conflict to make sure that everybody is on the same page about things and that everything gets covered.
And then, can you. Mediate through that conversation so that if that change is good for the company, you can make it happen. there's these steps. And I feel like definitely like throughout my career, especially with imposter syndrome, I couldn't help, but be like, Hey, I have this idea.
And they'd be like, but why? And I'd be like, fine. No, nevermind. I don't want to do it either. And it's just okay. I had, I also had to take these steps where I'm just like, they're not attacking you. They're saying, let's figure out every way that we can, make this structure like sound and get rid of any bugs before we even start making the steps towards it end.
So I, yeah, I think that's a really great point.
Cassidy Williams: [00:12:21] Yeah. I've worked at places where people don't like conflict at all, where the managers don't like conflict. And so when something starts to go bad, they would literally just not come to meetings because they were nervous about arguing about it. And. You got to embrace it sometimes it's, even though it's, it can be uncomfortable.
It's important to be able to uncover all of this and talk about it. Cause otherwise you'll end up dealing with forced problems down the line
Jason Lengstorf: [00:12:50] for sure.
Cassidy Williams: [00:12:51] You mentioned imposter syndrome. And one thing that I read recently, and I wish I remember who wrote it, but they were saying how it's not so much imposter syndrome, but imposter experiences that we have, because it's not something and that's innately a part of us.
and, with calling it imposter syndrome, you start to think, I will always be this imposter in the workplace, and I will always feel this way. But when you have these imposter experiences, then you can. Isolate them a bit more and think about it. Okay. Okay. Why did I feel this way? Or why is that this person feeling this way, that they don't deserve this position that they're in and how can you address it specifically around that?
And then it allows you to communicate a little bit that are about how, for instance, if someone gets a new job and they're just like, I don't know how I got this job. There's no way I deserve this. You can say you did deserve it because you pass this interview. You got it past all of these rounds.
You. Got the job and being able to isolate things to imposter experiences, I think is really good for communicating, both how to get rid of them. And, but also just to assure people that they'll do
Tara Z. Manicsic: [00:14:00] wherever they're at,
Jason Lengstorf: [00:14:01] even if it's, I think that's something that, that I've heard from like various.
Psychology publications and stuff. Is this idea of changing experiences from being like innate personality traits into fleeting happenings, that you're a part of. and so instead of saying, I'm an angry person, you say I am angry right now. so it's the way we treat hunger.
Hunger is transitive. I'm hungry. Now, if I eat something, I won't be hungry anymore. Whereas if you say something like I am stupid, Then it's not like that doesn't feel transitive. That doesn't feel like something that you will not be later after you've learned a thing. And so it, it's a way of changing our language toward ourselves so that we're more forgiving and not like telling ourselves the story that it feels forever.
I, that always bums me out. When you hear somebody say something like, I'll never be that. And it's No, but that attitude,
Tara Z. Manicsic: [00:14:54] yeah. It makes you more flexible. It's funny that they teach you that with a lot of like child psychology things too. there are no bad children, just bad actions.
and yeah. You can easily separate yourself from an action that you did instead of saying Oh, why are you so bad? why are you a devil child? like I tell my son all the time,
Jason Lengstorf: [00:15:13] I'm just getting parenting tips from taro.
Tara Z. Manicsic: [00:15:16] Really good to think. Cause a lot of things just in general, Thinking about it in the workplace, is, you shouldn't treat yourself differently in the workplace that you, then you would, in another scenario, like you don't dog yourself all the time. It's easy to really beat yourself up on where things like you could go and you could mess up a meal, Oh, I added too much salt to that.
Oh, next time I will be better about salt instead of being, I don't know how to code. I'm a sucky coder. I couldn't make this thing, do what I wanted it to do. I'm a failure as a coder where it's just Oh, now I know next time I should read the docs more thoroughly at this point, it's it's easy to not be as forgiving in your work scenario, which could be not good.
I
Cassidy Williams: [00:15:59] think that is also something that there's something about development. People attach themselves so deeply to their jobs. and whether it's the framework that they're using or the company that they work for, or the role that they have, it's something I think we've all noticed in the tech industry where people will start arguing is reactor view better or something.
And they can do a lot of the exact same things, but people like will attach their identity to it. And so when something goes wrong, they freak out and when something goes, they end up just. Celebrating them and attaching their self worth to it and which can lead to weird work stuff.
Jason Lengstorf: [00:16:42] So I actually, I suspect that this is not necessarily because of tech, but because of the way that tech has manifested on the internet, because I think that everybody attaches like outsized importance to their livelihood.
you always I have nothing at stake when I try a hobby or if I, if I try to draw a picture, nobody cares. If I do a good job, nobody cares. If I, if I do it poorly, it's not like I don't get a paycheck or I don't get to eat tonight. Just, Oh, I drew a crappy picture and nobody, nobody would look at that.
Oh, but if I was doing that for a living, if I have to draw this picture and if my client doesn't like it, I don't get a paycheck, which means I don't eat. I'm going to put a lot of my personal value in whether or not somebody is willing to give me money for that drawing. and I think that's how development is for a lot of people.
and what I think is interesting about tech and, design Twitter's the same way and any particularly online industry. Is that we're not just doing this work for clients or employers. We're also doing it performatively for our peers. So because there is a tech Twitter, where we talk about what we do, our choices are not just under scrutiny by if you're a plumber, you go do your job and then you go home.
There's nobody, who's also a plumber watching you do your job saying, Oh, I would have used a different wrench for that, And then you have to defend your rent, my dad,
Tara Z. Manicsic: [00:18:03] and a plumber.
Jason Lengstorf: [00:18:06] But I do wonder, like if there was a plumber, Twitter, would we see the same type of Identity bound up in what you do for a living there where the arguments would be over the tools or the right fittings, or, I've run out of words that I know about plumbing, so
Tara Z. Manicsic: [00:18:25] begin
Cassidy Williams: [00:18:26] pumping.
Jason Lengstorf: [00:18:28] but, so I guess all of that is to say, I think that one of the most beneficial things that I've learned. Is to remember that my value as a human is not related to my value to my employer. because if if I stop getting a paycheck today, that doesn't mean that I'm not worthy of being who I am.
It just means I need to find another one, a way to get a paycheck and that, there's something to learn and there's something to improve, but that doesn't mean that I am inherently worthless. You know what I mean? I think that we have a tendency to tie. How much money we get paid per hour to how much value we have per pound as a person.
You know what I mean?
Tara Z. Manicsic: [00:19:09] Pound value,
Jason Lengstorf: [00:19:10] kilogram, whatever. Yeah. Sorry. I should have used the metric system for international viewers,
Tara Z. Manicsic: [00:19:16] but I do think that in reference to like how to level up. that is something, an experience that is good to learn for the fact that you feel more freedom and less fear to be able to contribute and to be able to, add what you would consider value to the product or to the team.
How would you teach somebody that, how would you like to have somebody learn that skill or. Undertake that kind of mindset.
Cassidy Williams: [00:19:46] It's hard to think about that because I know that mentors of mine, managers of mine, people tried to teach me this and I didn't listen for a very long time. Like I know for a fact there are people saying it's just a job.
If things aren't going well, you can get another job. this isn't who you are. And I'd be like,
Tara Z. Manicsic: [00:20:03] but it is.
Cassidy Williams: [00:20:05] And just wouldn't listen. And so I admit, I have no idea how I would. Tell someone like me that you don't have to attach your identity to your job besides just repeating that
Tara Z. Manicsic: [00:20:21] Ticketek
Cassidy Williams: [00:20:22] Oh yeah.
I can make a tech talk about it. I'm sure the youths would love that.
Jason Lengstorf: [00:20:28] I have to, I should probably qualify everything. I'm about to say with I am a white dude with a social support network. So if I make a mistake and things go wrong, I can still move in with my parents. So I have to like, let's just acknowledge the privilege and then I'll give this advice.
but what has been really helpful for me with decoupling my identity from my job has been making small mistakes. so like when I have an idea and people go, I don't like that idea. It doesn't mean they don't like me. And so being able to just propose a small thing and get shot down. and I, and like in personal life and in professional life, that's been really valuable.
there's a whole like game built around this. That is the worst game in the world, but it's called rejection therapy. And the idea is that you get a pack of cards. And each card is a thing that you're supposed to do and get rejected. So it's go to a gas station and ask a complete stranger to drive you two and a half hours away.
And because of course, they're going to say no, and then you just get this, you get this, you get crushed by rejection and then you realize that life goes on and it's, it's going to continue. and in doing that, you start to realize that rejection is not tied to your value.
And it starts to decouple the two experiences, so you can have value and also be wrong. And the, and that's actually a really good thing because being wrong means that you're thinking and trying, and then you learn things from being wrong.
Tara Z. Manicsic: [00:21:53] I think that one of the big things in aiding with somebody's growth in this area is to be an ally.
So being able to not only be in meetings with someone that like. You can say, Oh, I see where they're coming from with this idea. For some reason, it gets bogged down, but also I feel like. Like Sarah on our team does a good job with this, like meeting with us beforehand. If we're going to bring it something to the table, to, stakeholders or what not to say.
Okay. What do you mean? I was planning on presenting. Let me make sure, you feel comfortable saying that, like, how are you going to present it? and giving tips to people, beforehand and letting them air out what they're going to say. Because a lot of times, you're so worried.
About what you're going to say, and you haven't delivered it yet. And being able to air that at first, but speaking of rejection, it seems that feeling it's on with us now, too.
Cassidy Williams: [00:22:50] The cat dragged in.
Phil Hawkworth: [00:22:55] Oh, are we ready to start?
Tara Z. Manicsic: [00:23:01] Okay. We are in fact almost ready to end.
Phil Hawkworth: [00:23:05] I was. I don't know if it's appropriate. Would you mind, I could just go and listen to the recording of this, but would you just mind saying everything again from the start?
Tara Z. Manicsic: [00:23:14] You did the intro. So as you start and then. Perfect.
Jason Lengstorf: [00:23:21] We talked to, so we've talked so far about the skills of listening, of being able to reframe the way that you present ideas, being able to communicate clearly both in written and spoken format.
one thing that I think would be really interesting to talk about, and I think that this will be a good place to bring in Phil as well is how like. Outside of just learning to talk to your team and we do have to improve, right? So what are you doing or learning? Like, how do you continue learning?
Cassidy Williams: [00:23:50] That's actually why I started my weekly newsletter. Cause I would be pulling links and constantly just having tons and tons of tabs, but I would never actually read the articles in there. And so I started my newsletter so that I could actually read the articles and if I liked it, I would put it in my newsletter for other people to read, because it forces me to read them every week and it's helped me.
Keep up skills and build up skills and stuff while also trying to help others read
Tara Z. Manicsic: [00:24:18] and build it up are so incredibly daunting. Like the newsletters that come through, not yours, but yours isn't daunting at all, but no, you're so good at keeping your succinct. but when you get like the JavaScript weekly and the whatever weekly, it's, there's so many things to read on there.
Yeah.
Cassidy Williams: [00:24:34] There's one 25th, I think sometimes
Tara Z. Manicsic: [00:24:38] it's. Oh, and I feel like there are a lot of developers out there who like, are not only getting one of those. They're not just getting JavaScript weekly, but, like totally a stray from that as far as I just want to mention this cause like we're talking about how to level up and in that mindset too, you think about when you're going to different jobs.
One mistake that I made when I first started going into different jobs is I didn't read the whole website, like back to front, the company's complete website, which sounds like such. It is it equally sounds like a no brainer and a like really hard task that seems. Not that important, but one of the best things you can do at a company is know about that company.
And it's especially when you're going into an interview, there's so much that people have put into not only what is on the website, as far as what they're talking about, but the content and how they speak to their product, that you can to learn so much about the company. and so just very niche sector of this, but learning as far as the company that you want to work for in the future or that you work for, that's a great way to learn.
They put so much time in deciding what's going on their website, Just back to front, read every single page.
Jason Lengstorf: [00:25:50] What about your fellow? What are you doing for continued learning?
Phil Hawkworth: [00:25:53] To be honest, I think there's a lot to be said for mercilessly copying the things that you observe and you wish you were doing yourself.
It's tempting to think that's cheating. It's if someone around you is doing something that's impressive and you noticed it's a good thing to emulate, And I don't mean just like taking their work and stealing it and publishing it as your own. if you're noticing good habits from people or things that around people around you have done, you think, Oh, they've done it again.
I wish I'd done that. I'll be very honest. I occasionally fall into the trap of feeling a little envious around some of the things that people around me do, I think, Oh, I wish I'd done that. It's a great way to take inspiration for that and say, I'll not just look at what the output is, but what took them there?
what's, what techniques did they use to. Get them there. So whether it's Cassidy being, very succinct in her newsletters and being able to distill a lot of things down to something that's not intimidating to be able to consume, which by the way, is a ridiculous skill that I wish I had to be able to write fewer words.
I would love to be better at that. or, or if it's. And like Jason being able to, excuse me, it sounds like I'm getting emotional, but it's just a frog in my throat.
I know that Jason is very good at being able to build one thing and then being able to say, out of This demo that I'm going to make, I'm going to create all of these different, like bits of content or it'll serve like a dozen different purposes, all that kind of thing.
There are loads of examples like that, where you look around the company, terrorists get very good at wearing wigs on Wednesday. I would borrow from seeing that, seeing what people do and think, Oh, I wish I'd done that. It's fine to borrow and try and absorb some of those things. And. it's not a very concrete answer, but I like to observe the things that I wish I'd done and try and just emulate those a little bit.
so it's always nice. If you can give a little nod to that along the way as well, but, but yeah, I think there's no shame in mercilessly copying the things that are successful that you admire.
Cassidy Williams: [00:27:55] Let's give a talk called learning by copying and what I didn't realize until at the. Very end of the event was that it was a grand majority designers of the audience.
And a lot of them came up to me afterwards. And they're just like, what's funny about this is every single one of us learned by copying because that's what you have to do for art. And everything, and it's great seeing that other fields do this too, because that's how you grow because you can see how other people do it and then take your own twist on it and run with it.
And, I think learning by copying is how you can do so many things, not just building up certain skills or learning how to draw something. But Even just writing jokes and, figuring out how did this person do that? Okay. I'm going to twist this so that way I can figure out how to implement something well or write something better or something.
Phil Hawkworth: [00:28:46] And I think that's a, that moment of how do I twist this, is really important. how do I make this my own now? we're not all, we don't all have the same. Skills and the same kind of strengths. And so just flat trying to copy. Yeah, verbatim the way that someone does something is not always gonna work.
Sometimes you need to make it your own. so that you're just not aping. something that someone else does that really suits bad, that kind of style. If you like. it's, again, it's an easy trap to fall into to say, Oh, I like that. I'll do that. if you're not, if you're not just, if you don't have just done a little bit of self awareness to realize that, you can't always present it in exactly the same way, you could still use the same kind of techniques or the same, drive for it.
But if you try and make it exactly the same style, sometimes that can fall flat. So just being aware of what your own particular style is and play to those strengths, I think is a really important detail in that journey.
Jason Lengstorf: [00:29:42] Yeah. I think like the idea of, copying as a way of learning.
I also think that one of the things that I've really liked in my career is whenever I wanted to level up on a certain thing, usually what I would do is I would take whatever was considered to be like the, quintessential example of that thing. And I would look at the source code and I would build it myself by looking at the source code.
And I didn't do that because I was going to publish it. I did that because I wanted to see how things connected and like it's the same reason. I always encourage people to hand copy code instead of copy pasting from examples is because when you write it yourself, You get to see the different dots connect in real time.
as I pace, as I like write this thing and I run it, I see this works, but this part's broken. and now I start to see why. and I've noticed that to be true about writing. Like I've, I've just straight up copied pages, like chapters out of books. I was like, Oh, I want to get better at writing tersely.
And so I would just copy Hemingway and think about why. You left words out of these sentences.
Tara Z. Manicsic: [00:30:45] I thought your last strappy blog posts.
Jason Lengstorf: [00:30:48] Yeah. It was, it actually wasn't about strappy at all. It was just chapter three of old man in the seat.
Phil Hawkworth: [00:30:56] I'm going to have to give that another reason
Cassidy Williams: [00:31:00] what happens when you don't actually review the blog post before approving.
Jason Lengstorf: [00:31:04] But I think that's the, but like that whole idea I think is so good. And I also think to your point. Cassidy about figuring out how to twist it. You have to understand something before you can remix it.
if you, if I told you I'm going to put my spin on an Apple pie, I can't do that because I don't know how to make an Apple pie. Like I would, if I start remixing a recipe that I don't know, then I'm going to just this is how my mom cooks. My mom will get a recipe.
And she'll decide that she's going to change it before she knows what it's supposed to taste like. And then she'll complain that the recipe is not good. And I'm like, mom, what did you change? He's I didn't want it to be like all gall gluteny. so I took the flour out and I substituted cornflakes and I'm like, that's why it sucks.
you didn't understand what this thing was supposed to be. So you substituted something at random with no understanding. And now you're dealing with something that you're confused by. and so the copying lays the groundwork for the growth and the remixing. And I think that's a really important thing.
Phil Hawkworth: [00:31:57] I can't believe that some. We're talking about copying as a way of learning and it didn't occur to me that's exactly why I fell in love with web development. Just the fact that view source was there didn't occur to me instantly till you started down that whole Avenue that everything I've enjoyed about getting started with web development and probably the thing that's kept me going is viewing source and then learning how to tinker around and emulating it.
yeah. Yeah. That's that passed me by when I started down that ticket driving you. I'm glad you, I'm glad you mentioned that to you.
Tara Z. Manicsic: [00:32:29] and then think about like again, on the topic of leveling up as a programmer at a company. Especially the bigger company you go to, you're not going to be writing your own code.
Like we're going to be spending hours, just reading code, just understanding what's happening inside there. So the best way to preface to do that with other like open source projects that you can dig into their code. And that's the best way to contribute to open source projects too, is, going through.
Seeing what is there, how they made things work and then being able to understand it well enough that you can refactor it. You can make it better, you contribute in some ways. it's, I think that was a big, a huge thing that they did not teach me at university was that like every time we made a project, we were making a brand new project from scratch.
And then I went to my first job and they're like, here's our code base. Learn it. And I was like, Oh, Okay, here we go and swim. You just spend so much time reading through code and saying, okay, this is this function that gets made here, that calls this thing, and you have to make that mind map of things that already exist.
So the best way that you can really learn from that is like trying to copy it, trying to emulate what's happening there in order to make changes. That makes sense.
Phil Hawkworth: [00:33:48] Do you, just, slight tangent, but do you all refactoring just to hearing terror, just talk through, I exploring someone's code base and do you love it or is
Cassidy Williams: [00:33:58] it's really fun?
I think, especially like, when you're just like, okay, I have to figure out how to reduce this giant file of code that I don't fully understand, but I get what it does to like. 10 lines of code. I don't know, something like that. Just ripping and deleting code out and making it more efficient. I think that's so fun.
Tara Z. Manicsic: [00:34:17] There's this fantastic feeling of when you make something new that does what you want it to do, but there's something that's so much sweeter about going in, looking at code, knowing that you can make it more succinct, that you can make it more readable, that you can make it function better. And like putting in your new changes to it and having it work perfectly, that's just I don't know.
It's like walking a red carpet. Amazing. There
Cassidy Williams: [00:34:47] it's like rehabbing a house or something. it's still working the way it should, but it's
Tara Z. Manicsic: [00:34:53] better. I did that.
Cassidy Williams: [00:34:56] That's great,
Jason Lengstorf: [00:34:57] Jason. No. So what I like about refactoring is trying to find the right balance of I want things to be understandable by other people and I want them to be terse.
So like how much should I refactor down so that this is compact, but draw the line so that it's not so compact that I've basically minified my code. and so it's not like it's not like code golf where you're just trying to get this done in as few lines as possible, but it's also not what's that called, literate, coding, or literate programming where you're like writing a novel and inside the novel is some code, like where's the happy place in the middle where someone can open this and understand it.
But also it's not 10,000 lines of code. and I really, that to me is You can feel it when it works, right? When you use an API and you like open up the code and you go, Oh my God, I understand this immediately. Like you have an intuitive understanding of it and you don't have to do any chores to make it work.
Like it's as little code as it can be and still you get it. And it's like immediately. I love that, getting that right is great.
Phil Hawkworth: [00:35:58] I think there's a extra layer of satisfaction as well. If you're refactoring some of your own code that you wrote a year ago. Yeah. Cause you can write something that you're proud of and you think, yeah, look how clever I am and look how beautiful this is.
And then you leave it for a year. And hopefully when you come back to it, you do understand what's going on and you just think which. Idiot did this.
Exactly. Yeah. But yeah, if you see it and you think, Oh wait, I could do this now. And then you gleefully remove some lines of code and change a few things and just think, look, how look, how much I've developed. I find that particularly satisfying. Sorry. I took us down a bit.
Tara Z. Manicsic: [00:36:37] Oh no. But I was just going to say, I feel like we could talk about this stuff for days, and this is why we.
Or thinking to maybe have a whole, topic that we repeat called, how to level up. but we would love to hear feedback from, all four of our listeners, to tell us, hopefully I'm than four, eventually
Cassidy Williams: [00:36:55] this podcast listening.
Tara Z. Manicsic: [00:36:57] Exactly. maybe our moms too. but, it feedback from everybody to let us know if you have any questions for us.
especially on the topic of how to level up or like skills. but I do want to end on one very random question, to each of us of what is the oddest or most unexpected skill that you gained on a job? I like, I feel like I have like odd ones. Like I learned how to caffeine nap, where it's you drink like an espresso or something and you immediately go to sleep, which role.
Take about 15 minutes to go through your system so that you wake up wired, but then you get a 15 minute nap, which is greening rule. But one that like my favorite is I, and it's because I, Speak, I now am really great at it. Very uncomfortable, awkward situations, like having a tech fail and or just like having some super big blender that you're in front of.
So many people and something messes up my body has become much more comfortable with these situations, which has led me. To be able to handle much more uncomfortable situations in my life. Yeah. I used to not, I don't think many people would expect this of me. I used to not be able to go and talk to strangers, and now I can talk to anybody because I'm like, what's the worst that can happen.
Like what they're going to be like, no, I don't want to talk to you and be like, cool onto the next one, or say a really bad joke and then go onto the next
Phil Hawkworth: [00:38:31] that's sequel. Parting shots. Somebody says, I'm sorry, I don't want to talk to you.
Tara Z. Manicsic: [00:38:39] Please don't talk to me. And I was like, what do you get when you cross it elephant. And it right now, Ella find out
Cassidy Williams: [00:38:49] that's
Tara Z. Manicsic: [00:38:49] a that's.
Cassidy Williams: [00:38:50] I think mine is similar where, because I've spoken for my job and stuff. This is probably not a skill that people should have, but I've gotten really good at just. Talking about things without preparing at all. and so it's almost there's pros and cons to this, but now I can go into a talk and sale, do a talk and pretty much not prepared at all.
And still be able to talk about a topic for 30 to 40 minutes. No problem. And that's, it's a fun skill to be able to have because it's much less stressful when I say, sure, I'll do a talk. But it's probably not a skill I should have because practices a good thing to do. Generally speaking.
Phil Hawkworth: [00:39:35] Yeah. It's easily to accidentally become really nonchalant.
If you've got that skill, it's eh, it'll be fine. Do you still have, I'm sure you're far too professional to ever really engage in this particular practice, but if you did find yourself, I haven't really prepared and it's coming up tomorrow. do you still have the anxiety that would normally come home?
Are you like,
Cassidy Williams: [00:39:55] or maybe the five minutes before the talk and that's what I'm just like, okay, here it comes. Let's do this, but like the night before the hour before, I'm just yeah, I'm giving a talk should be good. and
Phil Hawkworth: [00:40:09] I wonder what I'll say.
Tara Z. Manicsic: [00:40:13] It'll be
Cassidy Williams: [00:40:13] fun. Yeah. Way too many talks where on.
The drive there. I'm writing the talk just it's again. Good and bad. I shouldn't have this skill, but give me a topic and I'll give you a speech on it in half hour. Just let me know.
Tara Z. Manicsic: [00:40:32] You're going to get so many top boxes. So deep.
Jason Lengstorf: [00:40:46] Phil, what about you?
Phil Hawkworth: [00:40:47] There's a couple that spring to mind. One of them is a little bit on the same vein of, I used to be terrified about not knowing what I was going to say in front of people. And now if things go wrong and I'm. On the stage, talking to people. I, that doesn't phase me quite so much as it used to, to the point that if someone needs to get pardon, so needs to go and fail.
I'm that wasn't delivered. I'm sorry, I just couldn't. Course, correct. I'm quite happy just to stand and waffle in front of big crowds of people, which is not something I ever expected and that seems to work out. Okay. But the more you said the oddest skill, or just an unexpected, th I think the oddest skill, I think the thing that I learned is I know how to fit one ton of manure into a half ton bucket.
Tara Z. Manicsic: [00:41:35] Okay.
Phil Hawkworth: [00:41:37] Feeling
Tara Z. Manicsic: [00:41:39] like you just put Jason in the bucket, but I'm
Phil Hawkworth: [00:41:50] going to cry on
Cassidy Williams: [00:41:51] this call.
Tara Z. Manicsic: [00:41:53] Wait, why did, why and how did you learn?
Phil Hawkworth: [00:41:56] w so I grew up in a fairly agricultural area in the UK. And so I had a, as a teenager, I had a job working on a mushroom farm, and, mushrooms grow in manure.
Jason Lengstorf: [00:42:07] I'm not gonna lie. I really thought that this was like a metaphorical skill that you were referencing.
Cassidy Williams: [00:42:12] I was hoping it was going to be real. So I'm pleased. It's real
Phil Hawkworth: [00:42:16] could not be more literal about this girl. I wasn't starting to insult anyone. They no clever metaphors. No, one's going to learn anything from this story. Other than the fact, other than the fact that as a teenage boy, I worked in a mushroom farm and they, I discovered that they load up these big kind of beds that the mushrooms grow in by dumping menu or into this big kind of hopper that spreads all the manure on these beds.
And the bucket that they drop the manure into is half a Tod in capacity. And the bucket on the tractor that dumps it in there is yeah. Ton in capacity. So the way that they fit the ton into the half ton bucket is they. Hire a young puny teenage boy, give him a good pitch for, and they stand in underneath the bucket next to their bucket and he catches whatever overflow he can find and shovels it in, hoping that none of these goes up his sleeves.
Tara Z. Manicsic: [00:43:18] Oh, hi.
Phil Hawkworth: [00:43:19] It was the, my most glamorous role ever. but yeah, I learned that you could catch more than you did about gender and kind of steer it into the buckets. any other questions about that and anything
Tara Z. Manicsic: [00:43:28] else, steer it into the bucket also upon his account. Anyway,
Phil Hawkworth: [00:43:34] if only I were that clever
Tara Z. Manicsic: [00:43:38] bucket filler field,
Cassidy Williams: [00:43:39] we know that Phil's code is full of
Tara Z. Manicsic: [00:43:42] crap,
Phil Hawkworth: [00:43:47] booty. Sorry. that's. And so that's the most unexpected. That's hilarious.
Tara Z. Manicsic: [00:43:52] That's amazing. Follow that, Jason,
Jason Lengstorf: [00:43:56] I don't know if I can. I guess I could tell about my worst jobs, but that doesn't seem, that doesn't seem relevant. no, I think so. the thing that I've the most unexpected skill that I've picked up from my career has been the, like the fix it mentality.
Like I in multiple jobs have migrated into a role of fixer. I used to joke when I was a Gatsby that my job title was human ducks tape because I didn't really do one thing. I did whatever needed to be done. So one day I'd be working on marketing one day, I'd be in product one day. It'd be endeavor all another day.
I'd be writing a press release. And it was always like just going into something. I had no business doing. It was like, okay, this is the thing that needs to be done. And there's no one to do it. What are we going to do? and, so my skillset is being able to do anything at 60% good, because I've learned to very quickly review how people do it well and get just enough that I can squeak by and look competent, even if I didn't do a great job.
and I think that has been, it's like, it's weird, but as a result of this, I have now, managed to you, run yeah. A V for an event. When I have no business doing that, I've learned how to light, a, like a studio set up. I've learned how to manage like a remote conference event or to order a tee shirt sizes for like various swag things or how to manufacture a rubber duck.
All of these things are things that I know now. for no reason other than it was a thing that needed to be done and I needed to, and like someone needed to figure it out and I volunteered. so that's been a fun skill.
Tara Z. Manicsic: [00:45:38] That's actually a huge point for how to level up too, is the recognition of being able to pivot.
Like I wasn't, I. I was a backend engineer. That's what I went to school for. That's what my first career was like. And then they just didn't have someone to speak at it. We were very small company. They didn't have someone to speak about their product and they got a really great speaking opportunity. And I think it was at node interactive and they were like, Tara can use words at her mouth sometimes.
And so they put me on stage and I remember I went right after Scott Hanselman. Who's a very well known speaker and as a cool,
Jason Lengstorf: [00:46:16] great
Tara Z. Manicsic: [00:46:17] fan. Fantastic. And my whole talk was called deeply for dogs and it was gifts of my own dog playing on the computer, alongside the code present. And like it was, the speaking part was fine, but the fact of being able to be a point person.
For people in the community had questions about that. The code base that I built, felt so rewarding that they were like, I was confused on how to do this part. I was like, I made that system, let me show you how it works, felt so great that they started leading me into more community work, which then led me into more of a dev realm that then led me to dev experience.
Yeah. Just knowing that like the surrounding skills that your job asks for, you may seem odd at times, but they could lead you to a different career pivot that is I love my job. So I think it's a good thing to keep in mind.
Phil Hawkworth: [00:47:10] It's interesting. Cause I think that all of us have. Whatever, however, bizarrely, some of us have answered that question.
there's a common, there's a common theme to all of them, which I think is a really nice takeaway. And that's the, being comfortable with being out of your comfort zone. being like ha being able to do 60% good enough, all of these different things that you've never encountered before, or, take on giving that talk that you would never have wanted to do.
And all of those. All of those things just require that bit of growth and being able to say, I don't know how I'll do that yet, but I feel if I'm responsible for our I'll get there and being comfortable with that, which is, which is uncomfortable. It's an uncomfortable situation to be in, but you can get used to it.
I think.
Jason Lengstorf: [00:47:52] Yeah,
Tara Z. Manicsic: [00:47:52] like shoveling manure.
Cassidy Williams: [00:47:54] Yeah,
Phil Hawkworth: [00:47:55] exactly. I got it was the long road round, but
Jason Lengstorf: [00:47:58] but I think like I, I draw this, this bend diagram and a talk that I've given about careers where, it starts with the expectation, which is I work in human resources, the overlap between my human resources job and a like design job is zero is what you might expect.
But then when you actually start looking at what the skillset is, There's a huge amount of overlap. You're going to be dealing with coworkers. You're going to be sending emails. You're going to be writing reports and communicating and doing all of these things. And the only thing that's really different is like on this side, your specialty is design.
And on this side, your specialty is like actual staffing and human resources. But in the middle, the vast majority of your day to day work is the same. And so what I think has been really helpful, and it sounds like all of us have experienced this to certain degrees. Is that are, you said you get comfortable being out of your comfort zone.
I would actually argue that the comfort zone just gets much bigger. Cause you realize that you're not stepping out of your comfort zone. You're doing the same thing that you do all the time in a slightly, at a slightly different angle. and that I think is that was what made me feel really empowered to try this stuff is I realized that I'm not learning a full skillset from scratch.
I'm applying a lot of stuff that I've learned from a lot of weird odd jobs. To a new thing that is 99%, the same as everything else that I've done with a novel angle.
Cassidy Williams: [00:49:18] My son's manure your way. You have to angle your shovel differently and then
Tara Z. Manicsic: [00:49:25] you have to maneuver your shovel. Okay. Do it again now with
Cassidy Williams: [00:49:30] Mindy.
Phil Hawkworth: [00:49:33] Okay. But I love that. it is like the, it's what if you speak to a good cyclist or a good runner and you say, Oh, does it ever get any easier? And they say, no, it doesn't ever get any easier. Just the distances get longer. And you just, I always assumed that one day I'll be good at cycling and then it won't hurt me.
But no, you just go further.
Cassidy Williams: [00:49:52] Yeah. Yeah. I've been, I've seen that even with regards to coding, like it never gets any easier. You just know more solutions to a given problem.
Phil Hawkworth: [00:50:02] So that was remotely interesting. Thanks so much for listening. We hope you join us again. Next time when we're going to be talking about, wow.
The JAMstack can do that. We're going to delve into what is going on in the JAMstack ecosystem. So we'll be chatting all about that until the next time you've been listening to me, Phil button Hawksworth
Cassidy Williams: [00:50:22] and I've been Cassidy portabello.
Jason Lengstorf: [00:50:24] I'm Jason Wood ear Lang store,
Tara Z. Manicsic: [00:50:27] and I'm Tara Shantrelle Minnick.
Thanks everyone.
Jason Lengstorf: [00:50:32] Do it next time.
Cassidy Williams: [00:50:44] what are you a virus?
Tara Z. Manicsic: [00:50:47] The virus on the brain? No, I don't. I'm
Cassidy Williams: [00:50:49] healthy
Tara Z. Manicsic: [00:50:50] with the world. Was that good? Was that good? That's great.
Jason Lengstorf: [00:50:54] That's so good.
Cassidy Williams: [00:50:55] I'm sorry, Chris,
Tara Z. Manicsic: [00:50:57] do I need to do it again?
Phil Hawkworth: [00:50:59] Hope that was remotely interesting. we are, we'll be back again. That was, can I do that again? Cause I don't
Jason Lengstorf: [00:51:04] know,
Tara Z. Manicsic: [00:51:08] keep it like that. Chris, make him look a fool.
Welcome to Remotely Interesting brought to you by Netlify.
People who were remotely interesting:
JAMSTACK FUD (Fear, Uncertainty, & Doubt)
Recently WordPress's Matt Mullenweg's came out as not a fan of the Jamstack and we've heard lots of feedback from the community about things people may not understand about the Jamstack. It got us to thinking, "What can we help clarify about the Jamstack to help everyone make informed decisions about whether the Jamstack architecture is right for their teams?" To show you just how dedicated we are to getting you the answers we have a very special guest on today, Matt Biilmann, who had a huge part in creating the term and the concept. Let's dig in!
why are we excited about the Jamstack?
How did we get to this type of architecture (Matt's journey)
Is the Jamstack architecture brittle?
Is Phil a real developer if he doesn't want to build it from the ground up?
The benefits of the way the architecture is built
The Rise of Skywalker/the Jamstack ecosystem (aka yes, Tara is a nerd)
SHOW NOTES
As always, we hope you find it remotely interesting.
TRANSCRIPT:
Phil Hawksworth: [00:00:00] Previously on Remotely interesting.
Tara Z. Manicsic: [00:00:04] When don't you just make a Tika Tok?
Cassidy Williams: [00:00:07] Hello, and welcome to Remotely interesting.
Phil Hawksworth: [00:00:10] This is remotely interesting.
Divya Tagtachian: [00:00:11] Well, that seems a little
presumptuous.
Sarah Drasner: [00:00:14] No, thats the name of the show.
Tara Z. Manicsic: [00:00:23] Hi, everyone. Thanks for joining us today on an episode of remotely interesting. We're calling this session fondly, what's jamming, and we're going to focus on jam stack FID, which is fear, uncertainty, and doubt. this is in regards to, there has been a little news lately out in the. JAMstack community about, the presses, Matt mullenweg's came out as, maybe not so much of a fan of the JAMstack.
And we've heard lots of feedback from the community about things people may not understand about the jam stack and it got us to thinking. What can we help clarify about the jam sec to help everyone make informed decisions about whether the jam architecture is right for their teams and to show you just how dedicated we are to getting the answers.
We have a very special guest today. Matt Billman. Who had a huge part in creating the term and concept of the JAMstack will answer all of our questions no matter what,
Sarah Drasner: [00:01:25] no pressure
Phil Hawksworth: [00:01:28] you regretting this already matched after hearing, hearing what you're in for that we could ask you.
Matt Biilmann: [00:01:32] Absolutely. It's still assume call, right? I can certainly suffer unexplained connection error.
Phil Hawksworth: [00:01:42] It happens.
Tara Z. Manicsic: [00:01:43] Yeah, it's really early in the morning for you too.
Matt Biilmann: [00:01:45] I
mean, it's not that bad. 10:00 AM is like I'm on my fourth cup of coffee or something by now. So it should be okay.
Cassidy Williams: [00:01:55] Oh, he's ready to go.
Phil Hawksworth: [00:01:56] Oh, hummingbird after four coffees,
Tara Z. Manicsic: [00:01:59] the rest of the podcast is just Matt talking nonstop,
Sarah Drasner: [00:02:06] just throwing out ideas.
Tara Z. Manicsic: [00:02:09] I'm going
Cassidy Williams: [00:02:09] to pivot the company by the end of this.
Tara Z. Manicsic: [00:02:13] There'll be a whole new architecture by the end of this. One of the first topics that I thought would be great for us to talk about, is, I think all of us on this call are very excited about, the way that we can build the web with the jam stack.
And, we have all built the web in many different ways. And not just the JAMstack. And so I'm curious with all of you, how you see this new presence of this architectural approach of the jam stack and like what's changed and why you may be excited about it. Doo doo doo doo doo doo doo,
Phil Hawksworth: [00:02:53] I'll go first.
I'll go first because I was interested. Tara that you said this, this new approach, and it's definitely feels like it's a, like a new term and we've got all of these new tools and toys and services that are there, but it feels like to me that this is built on top of an age, old approach as well. I mean, it kind of hearkens back to the fact that, you know, we can create things that are.
Ready to serve, you know, they're, pre-generated, they're on a CDN. They're ready to go. and, and it feels like that's, that's the way maybe not the CDN layer, but, but yes, it's been established for a long time that we could build things out as like pre-generated assets that we could serve. Very simply, you know, later CDNs came along, but ultimately we had these.
Assets that we can get out into the world. So at that part, it feels like it's been around for a really long time. And it's, to me, it's the new stuff. And the stuff that excites me is the, the services, the glue layer of which notify as one. And the services that, that, you know, we can hand off the more complicated tasks to other things and use them through API.
So I don't know if I, I feel like this is a whole new thing. It's more like. Oh, really nice maturing and evolution of the things I enjoyed from the beginning. That's, that's always how I kind of think about it, even though, you know, it definitely feels like it's a, a new term and a new, any new kind of era, I suppose, for the web.
Cassidy Williams: [00:04:16] It's kind of how I feel about it too. Because when I first was hearing the term, I was just like, Oh, this sounds like this whole new thing I have to learn. Great. But then once I started looking into it, I was like, Wait, this is kind of everything I already know. I don't have to learn anything, but there's some nice bonuses that come with it.
And suddenly there's just things that I don't have to do that make my life easier as a developer, while still letting me build off of the knowledge I already had just of web development in general. And that's, that's probably the most exciting thing for me. Like. It's kind of feels like the you're teaching an old dog, new tricks kind of thing, but you're, you're able to do a lot of.
Classic web development practices. I don't want to say old, but, but ones that have been established for a long time,
Tara Z. Manicsic: [00:05:01] mature
Cassidy Williams: [00:05:02] look. Sure. Yes, but enhanced with new technologies and, and abilities to do all sorts of things that you can just couldn't do before.
Tara Z. Manicsic: [00:05:11] It's funny that you say it that way. Cause that's exactly.
I just, I I'm doing a talk next week. Titled building a better web with the technology you already know. And I think that's like a really great highlight of it is like you're not learning all new
Matt Biilmann: [00:05:26] things. It's also very much been, been the journey for me. Right? Like it's, it was fun to see Matt Mullenweg bring up movable type.
Right. Because like way back then there was sort of like there their competition between WordPress and movable type where movable type had a mode of essentially working as a, as a static site generate and just outputting the generated site. Right. But back then, There was a lot of reasons that that approach just didn't work out that well.
Right. Like, and then, and, and I was kind of familiar with them because I, I, I worked at C Joe for this company where we were building websites that are very light scale, just for small to medium businesses. Right. So a hundred websites every week. So when we had different diversions of the internal platform that we built to deliver all of that with, and the really first version was actually also in the same way where every site would get.
Sort of, it was not completed stag, but it would like output a prebuilt sort of PHP site that would get FTP to a server and then be ready. Right. And any change the client made would regenerate and build it. Right. And we then moved away from that approach and built like a pure content API, but with dynamic front end, that, that, that would pull everything.
And I didn't build like cloud hosted version as its own startup multitenant, all dynamic and so on. Right. So I sort of saw all of those steps, but also saw when I was running these more complex dynamic systems. Right? Like there was still something really beautiful about like the operational simplicity of like once you've rebuilt the site and it's out there, right?
Like you, you, you really did it a different piece of mind than any kind of like really complex dynamic Ellie operating system with a lot of moving parts. And so Andre. So I was spending a lot of time of thinking, like, why was it we moved away from that, right? Like, why did move up with type field? Why did like our early model not really feel like it was working and so on.
Right. And. And there was all these pieces that were sort of taking a logical and platform oriented around it. Right. Like if DP as a deployment protocol, for example, it's really horrible, right? Like there's no concept of atomicity of like one operation. Right. And you you're basically just missing. With a program with, with files in a folder that, that people are also reading and so on.
Right? Like it's really not a nice way to manage like a deployment destination, especially if you start having thousands of them. Right. So, so that was one thing that, that, that really had to be fixed. And then of course, As time has gone on, right? Like back with movable type build times would very quickly get very long for like any reasonable sized site.
Right? Like, so that's just a pod where sort of evolved evolution of, of computation and disk speeds and memory speeds and everything it's meant that. That now we can expect like much shorter turnaround on, on a built thing. Then we could like, obviously 10, 15 years ago. Right. And then the other part was just that, like, I can back in the times of movable types of these technologies, like having a CDN, that was really not something normal.
Right? Like there was something like maybe CNN had a CDN or something like that. Right. But you, as a normal person would not have a CDN. Right. Like, so. Seeing that, that by now was something that could be democratized and just be available to pretty much anybody also really shifts like the actual, like performance results you get from pre-building like the site tremendously, right?
Because suddenly you get this global distribution and you, and people will load this side out of it, out of a destination. Right? Like, and then the other part I've really lived through was that. Originally, like when, when we build all of these sites, any site that involves checkout and payment, right. We had to really do this whole, the Riverside integration with a payment provider and like check out flow.
And the only way to do it was really draft. Like I didn't have dynamic website. Right. So it was sort of forced to do that. Right. And the same when for so many other things like comments or anything that needed to be interactive, right. And then over time, I just started seeing more and more shifting away from, from our own backend, even when we were still running our own back end.
Right. Like where quickly we would start, like when Stripe came along, right. You would start feeling really silly if you were still doing your whole payment flow on your server with some like old fashioned bank system or something. Right. Like. So even if you still ran those servers, you would say that pulling out like those kinds of things and just do them Glenside side and talk to strive in the browser.
Right. And the same happened for, for a whole lot of different things. Like feedback is so form submission, pressing all those stuff. Right. So suddenly I sort of also saw that now we were running all this really complex dynamic infrastru. Yeah. But so much of the actual interactions work completely independent from all of that.
Right. And now a lot of this infrastructure is essentially just generating. HTML on the fly and, and being bedded. Right. So, so I think just over time, it's seeing like the technology around how we build stuff, it's evolved to a point where suddenly it said, Hey, now, now if we went back and had more of this approach of thing, how much can we actually pre-build out in front a.
Let's let's do that. Let's distribute it right directly on a CDN that that's fine deployment methods that are way more efficient than, than, than. And if TPP is that can really guarantee that each deploy we make is like a snapshot of, of, of state and atomic and instant and so on. Then we really go from, from this being something.
That, that feels old fashioned to being something that, that feels much nicer to actually work with as a developer and much easier to reason about, and that like just operationally, it's a completely different dimension from running these really big monolithic dynamic systems.
Sarah Drasner: [00:11:23] Well, I just wanted to clarify too, for listeners who are, are kind of listening in, and aren't sure about some things and kind of breaking apart some of the FID that a WordPress versus JAMstack does not have to be right.
You can absolutely use WordPress in a headless manner. I have a couple of examples online of like a next site that uses WordPress in a headless manner in the writeup on smashing about how we did a similar type of thing. of, integration and migration for smashing magazine and the O'Reilly book that, Tara has made an audio book of and Matt and Phil, wrote, also has a lot of example, technical examples of that as well.
One thing that I was curious about that Matt Mullenweg brought up that I'd love to get your points of view on as well was. So I used to work in agency as a WordPress dev back in the day, and he did bring up this. point of view that using microsystem microservices is brittle because you can, you have these different pieces of the system and what if something falls apart and things like that.
And I actually have found the opposite to be true. And what was interesting to me about that? Having been a WordPress dev was that I found that often about the plugin ecosystem in WordPress. And I'm not, I'm not, You know, saying that it's bad because no technology is fully bad or good. Right. There's trade offs for each one.
But I did find that I had to do a lot of research for the plugins that we implemented, because it did start to get into this area where something would. Drop off something would work the way that I thought it was something wouldn't work the way that I thought it was. So I did a lot of investigation for each one of those plugins.
And there's some symmetry here with the microservices and API commerce, right? Like you, when you are working with microservices, you could. Build microservices in a poor way, but you could also build my microservices in a way where you personally have a hand in it where you're doing good research, where you're making sure that what you're investing in is something that everybody in the community is using.
Stripe is a great example of a service that I really trust and depend on. Right? Like I. Stripe is not an, you know, an API where I'm mashing it up with other API. So I think like that the concept was a little bit flawed. Yeah. And that I wouldn't expect that to be a brittle piece of that experience. I've never found it to be.
so I wonder if that is also a shift. Yeah. The ecosystem that maybe has not been tried yet yet, or some piece of it was tried that wasn't. Ideal, but it doesn't express everything. I was curious to hear your thoughts.
Matt Biilmann: [00:14:00] I think that's a piece of it that that's still a little bit ahead of us for the gems tech, right?
Like, and that's the part where when you have like a very opinionated monolithic system like WordPress, right? Like you can, as a developer, go in and say, just enable this plugin. And now, and now you're done with the initial work, right? Like now you have some sort of new functionality. And since the whole system is very monolithic and very opinionated, right?
Like it gets edited at the right place that it does what it's supposed to do. And you're sort of like, you, you get like a very quick, first win of like, I just click this button and now I have a new functionality for my users. It's in the admin panel, it's in the front end website, everything is tied together.
Right? Like that sort of. The inherent strength of the very opinion in monolithic approach. Right? Like, but I think to your point around the brittleness, I think that actually we've also seen come with a lot of brittleness, right. Because it does mean in that ecosystem that every plugin you install have like full access to through your main database, with everything from users and passwords to him.
Two to content to what goes on the website, two styles, two snippets that gets in the injected, right? Andy, and you get this world where every time there's an update to WordPress, you want to apply that update because it could be an important security update. And if you get too far behind, you can never apply the security updates.
But now that update might. Change a little bit about what WordPress does in general, and that might break one of your plugins. So now we have to figure out, does that plugin also have an update made available and does that update maybe require some manual intervention to actually apply in Strawn? Right.
And suddenly people with a lot of plugins and have word prison still gets, gets get stuck in a, in a world where things can actually feel very brittle, right? Like, and where the very tight coupling feels a lot worse where. In this sort of microservice way, if an microservice breaks or something, it's typically like a very isolated piece of your site.
It's not something that will let a hacker take over your full database or even get X's through your server infrastructure, stuff like that. Right. It'll I mean that, there's like a localized component. That's not doing what you want. Right. So I think in terms of brittleness, I don't really. I don't really see the big advantage from, from there, from the plugin ecosystem.
Right. I think it's more about that initial, like opinionated set up piece. Right. And I think of course. A full sort of very monolithic system will always have like an advantage there. Right. But I do think that we're seeing a lot of, a lot of progress in the gem stack ecosystem and thinking through like, how do different services connect to each other and work together, right?
Like we're seeing on the framework side of things, more thoughts around like, how do we get data from, from, from these providers and make it easily accessible. We are seeing on. Tools like Tina's CMS or stack bit or Prismic slide machine that, that, that shows like how can you even have templates and themes and then have like normal content editors just plug in new components, drag things around and have things work in, of course we've done a lot of work with.
Building things like our identity service, where you can quickly add like an login widget and, and manage that. And there's tools like zero and so on for those kinds of functionalities. And I think, yes, the whole ecosystem progresses. We will see it. We'll see more and more tooling that makes it really easy to also get that initial sort of upfront experience very quickly putting together pieces.
And then I think. Overtime. Like if you add diligent, like, like Sarah talked about and look at like, what services are we using? Like evaluate the different providers and so on. You can actually get to a place where. Where picking the right ones gives you partners that are really taking care. Yeah. Of all the upgrades, all the maintenance, everything for their part of your stack.
And, and you can actually get to a world where things fields a lot less readily there. And then they can actually often feel like in, in, in this world of big monolithic systems where everything constantly, they need updating that, that works across like horizontally across all of your plugins and your main system.
Tara Z. Manicsic: [00:18:33] I think that was a really big thing for me about learning with the jam soccer texture, because you are as a team, right? Like either, if you're doing like a microservice architecture or doing more, more monolithic, you are always having those conversations anyway about what technology you're using for what, but being able to delegate those really hard things.
And it's the huge stark difference for me with security, because I've made a lot of. WordPress sites where we had to be up, you know, make sure we were updated on those plugins to make sure we were like countering and being either reactive or proactive about different security vulnerabilities. Whereas with the jam stack, it was just always amazing to me that I could pass off security in general, like MetLife identity and zero, because security is.
So hard because people, they, people have their job is to hack into your site. Right. And so they're constantly like doing their research and probably there's probably like a, how to hack someone's site weekly newsletter that they're all following. So like, to be able to keep up with that in itself was, you know, especially if, you know, you have limited developer resources, just being able to have a team who said.
Specialty is like that third party service of keeping your website safe. Just that kind of delegating to me is so huge in the JAMstack.
Sarah Drasner: [00:19:57] Yeah. I mean, even if you enable an analytics on an LFI site or, or, you know, something like that, what you might see is that there's a lot of people pinging that WP login or WP admin file.
And I think that that's true probably of every site on the planet, right? Like, everybody's just like, Oh, is there any. Security vectors. I can exploit right here. And that was also, you know, a big reason why we saw a shift in the landscape was thinking through how to be more secure all over the place and all around the world.
Phil Hawksworth: [00:20:28] And, and I liked the fact that, with this model of decoupling these various services and consuming them from APIs rather than collecting, you know, a group of plugins that you've. You know, you've, you've found through, I mean, they're very discoverable these plugins in the WordPress ecosystem and that's, that's, that's a huge advantage.
However, they're all living in the same pot. And so just because you're using just, you might not be using something to do identity, for instance, however, you still might be introducing. Compromise is that could, could touch that part of your infrastructure because they are all living in that, in that runtime.
The thing that I really like about this, this, this, the jumps like approach is that you're not putting all of your eggs into this one basket together. You can sit in the same way that. Tara was saying that you can inherit this expertise. You also put distance there as well. I really like the fact that you bring that capability into your team, so you don't have to become compliant for all, for all of the different things to do with security, but also you put it, put it.
Away from where your site is. So there's a great distance and there's a great decoupling there. So you don't have to take on that burden, you know, as you slowly gather and collect these, these various APIs and services, each one has its own areas of concern. And each one is brings with it, its team of experts and that's their core business.
That's the thing that I love, you know, I. I don't want to have to roll my own. One of these when there's someone whose entire business depends on them doing that properly. And they have to have all the compliance and regulation, all of those things that I've never, I never get to want to get into. So very
Tara Z. Manicsic: [00:22:01] undeveloped to say, you don't want to make your own
Phil Hawksworth: [00:22:05] you're right.
I mean, strictly speaking from
Tara Z. Manicsic: [00:22:08] the ground up every time.
Phil Hawksworth: [00:22:09] Yes. If I can't write a blog post blog post that says do X, Y, and Z from scratch and do that for every service. then I'm failing. I think I could get all of the hits that I'm missing.
Sarah Drasner: [00:22:21] Phil not invented here. Hawksworth
Matt Biilmann: [00:22:26] another area where that distance you, you mentioned becomes really interesting is this distance between the built and, and the, and the runtime, right.
Where especially again, when, when we talk plugins and so on, right? Like whenever you go to a WordPress site, right? Like, WordPress has to run. Like it will have like this, the loop, right. That sort of loops over every piece of content and so on and is from the database and so on. Right. And obviously like plug into you add or remove can have a lot of impact in what actually takes place in, in, in that loop and in that run and so on.
Right. Like, so, so you also easily with any kind of monolithic system like that, get these effects where a seemingly like simple thing you add is. Without your knowing, it might be exponentially increasing the amount of database queries you do for every single. Load off of your site. Right. And you might not notice it initially because it might just mean that under normal traffic, you get a little bit of flow down.
Right. But then you get a peak of traffic and suddenly there's like an exponential amount of increase in requests. And each request has an exponential amount of increase in the database queries that does, and suddenly your whole system just blows up. Right. And I've finding like multitenant dynamic systems.
So I've, I've really seen that somewhere, right? Like where. Someday. Like when, when I ran my, my, my web pup, like my CMS product way before Natalie Feinstone right? Like we had an at massive like increase of database queries. They were slowing the whole system to a crawl. And it was just like this one developer that had built some extension for like, Persisting like analytics data for, for users that came in that turned out to like in a worst case scenario, do 63,000 database queries per requests.
And suddenly the face that extension, it was on God, like an advertising campaign from United healthcare or something like that put, edit. Right? Like, and, and every single page load was trying to do a 63,000 database requests and everything just died. Right. But. But those are the kinds of things where if you add some extension like that to interact with data, and that happens during build time.
Sure your build we'll, we'll get a little slower, right. And over time that might be annoying and you'll want to go back in and understand it and try to make it the build faster again. Right. But there's a really big difference from your built getting two seconds slower to every single page load, getting two seconds.
Right. And to the compounding effect that this has when you suddenly get a spike of requests, right? Like, so that's another sort of security or our operations related vector. We're keeping this barrier between builds and query time during build and runtime and query time during runtime, it can be really helpful.
Sarah Drasner: [00:25:19] Yeah. And the ability to roll back. I mean, I can't tell you when I was in agency, how many times? I wish I had a feature like that when we, I mean, we used to have these clients who were really, really, you know, get huge amounts of traffic and we would, of course, during those spikes, that's when you least want things to go down.
Right. And that, that would. It would be a gamble sometimes to be honest, with some of the, with some of the infrastructure that we were using with some of the plugins that were using that, whether or not things would actually stay up with millions of people, hammering it. And you know, at times when you're hot patching something or something like that, I wish that we had the ability to just roll back to another state of things.
For sure. I probably shouldn't go into any more detail than that, but yeah.
Tara Z. Manicsic: [00:26:06] Spill the spill, the tea, everything. We've
Sarah Drasner: [00:26:09] all been okay.
Phil Hawksworth: [00:26:11] That's cool. Let's he? Is that,
Tara Z. Manicsic: [00:26:13] is that how we say that? But the kids are saying or do we drink it?
Phil Hawksworth: [00:26:21] The beans,
Cassidy Williams: [00:26:22] but that's, that's when you're like gossiping. So it would be accurate. You were right, Tara. I'm still here.
Tara Z. Manicsic: [00:26:26] Yeah? Oh, good. Okay.
Sarah Drasner: [00:26:33] We actually share something. That's like not the full story of what the client would like. So I worked for this agency that had some clients who were romance novelist, and I didn't know anything about romance novels before I worked. For that, I guess I have like books on my shelf.
People are like, what is this for a while? Like, it's, there's a. There they are the number one most, you know, like highest profiting industry on for, in terms of books. Like they're, they're a billion dollar industry that people don't really know about that much. And they're very, very popular. I just had no idea.
And so one of my clients put out a contest once and we got. 30 million for the company. Doesn't it involve this custom post type and format. Yeah. Calendar thing that I made and a few other people made, and we were just like, we didn't, we actually, we knew that there was going to be traffic. We didn't know it was gonna be that much trap.
but this is an author who. Has books and every Walgreens and every single super market. And so was quite popular. And wow. That was a learning day.
Tara Z. Manicsic: [00:27:47] It was my,
Sarah Drasner: [00:27:48] it was definitely a day where we were like sitting by the monitoring as much as you could in those days. I mean, I'm a neck beard, so it was a while ago.
we didn't have great observability then either. Right. I think something else that's improved quite a bit. in times of JAMstack is the ability to see what's working. What's not working what's up, what's down. And how much were, how fast that latency is around the world as well.
Tara Z. Manicsic: [00:28:13] That actually brings me to, kind of the final topic that I would like us.
To chat about a few of us have actually talked about, sorry, things, like, like spilled times how we saw that there is, there's a place where bill times can get slowed down. But now as we evolve with the JAMstack architecture, we have. Things like finally of build plugins, where I know that Phil and Jason have worked on things to help you cash things.
So your build time gets quicker. and there are more people doing more things to help, really speed up your build process time, because we've seen that that can be a sticking point. and because the stamp stack architecture is, you know, a new evolution of how we build websites. We're seeing this ecosystem grow, to solve these.
Issues. And so I like to call, I wanted to call this section the rise of Skywalker. but I mean, this rise of JAMstack, but, okay. Here's the thing though. We do a lot of things in the cloud, right then technically clouds are in the sky, so we're kind of walking the sky. So I'm still, right.
Phil Hawksworth: [00:29:20] This is a joy, this is a joy to witness.
You're such a craftsman. It's amazing to see you work your magic.
Tara Z. Manicsic: [00:29:28] I got a call five. You so, so one of the things, we also talked about where it was, doing things like using the CDN, which Matt said earlier, it's like big companies, like very appropriately titled CNN would have a CDN. but now we're seeing more and more that. Not only are, is it more available to us so that we get that like distributed globally and the redundancy, if, if anything goes down, you can be on multi-cloud providers.
but now the evolution of CDNs also gives us things like, like we have edge hands, which will give you just yet another way to kind of render things on your site, and even speed up how you talk to, different service providers. but. With all of you, what are things that you think about when you think about the rise of the JAMstack and what the ecosystem is doing to help?
basically give us more dynamic and more reliable and faster web answer me now.
Matt Biilmann: [00:30:30] And the beauty is that the ecosystem is executing, executing across all these different layers, the stack, right? Like there's obviously like provide us like, like us and others in the space that are looking at the whole sort of workflow and infrastructure is based.
Right. And how we can, how it can continues to democratize things that used to be really hard to do. Right. Like again, like if you go back 10 years ago, like, Looking for teams that had like a CIC D. Pipeline that could do like individual builds for pull request and branches. And that would like roll every build out for like an atomic deploy on, on a production, like on a replica and the production infrastructure, it with CDN based hosting and instant cash and validation and so on.
Right? Like do it have to look really long for teams that have built it. And you would know that that would be like, Really big teams with very specialized, like DevOps groups that had really invested a lot of work into this pipeline. Right. And now any web developer can essentially get that in a few seconds, sun on nearly fell right in.
And we keep looking to that kind of like. For example, you mentioned itch handlers, right? Like I've, I've talked to really big teams that have again have like big DevOps groups and like network teams. And so on that build really like complex things at the edge layers through tools like or Fastly or sometimes CloudFlare workers and so on.
Right. And. And we've been looking a lot of like, what, what are they doing and what are the kinds of problems they're solving and so on. Right. But it's still like, typically, like the real world use cases are limited to two pretty advanced organizations with like dedicated teams just to build that layer.
Right. So that's one thing I'm really excited about from, from our, the point of view of taking, taking this and then. Seeing, how can we make this, something that, that any normal like web developer can, can use. And that's like approachable and testable and it fits into the whole workflow and where you can write, like custom-made code that you can run with your friend and locally that you can open a pull request with and you get like the whole production version of it running.
You can test it recent about it and so on. Right? Like, So that's one example of like this infrastructure layer and how like, in terms of workflows infrastructure. So all of that providers like us can, can contribute. Yeah. Then there's the whole layer I mentioned earlier, right? Where we have players like stack bid and Tina CMS, and it prints make slices and many others that are really thinking through okay.
For the, for the people that are moving the content editing side and do. And, and the like marketing side space, like how, how can we, how can we build tooling that gives them the same sense of like live previews and, and, and, and direct interactions with the site that, that either want to list like WordPress or even site builders, like Squarespace, like can, can give people, right?
Like, how can we take like an architecture that's still nicely decoupled and still great to work with for developers and bring some of. Some of that to, to, to marketeers and induces and contented to strike, then there's a whole. A whole layer of, of developed men and research, I think around like four developers as we start building with all these separate data sources, right?
Like that's another sort of change from like the world where we had like my server and my database. Right. And there was sort of the two things we worked with. Right. And now. We've gone serverless, right? Like we, we no longer really work with that abstraction of like my server, but we also seeing that shift away from like my database to just all these different data sources where you might have your users in one place and your orders in another place and your content in a third piece and some custom data in some place.
Right. So now we also also seeing like a whole. Whole world of, of companies in the ecosystem tackling, how do we actually work with the developer across all these different data sources? Right, right. Apollo is, is doing really interesting things around Federation. It has Torah in launched there, the idea of Federation, right, where you sort of both have your connection to the database, but now you can also connect to, to other things like Contentful in store, and then just query it through one graph.
QL API, one graph is like, have also built like there. One graphic for us, all these different iPads and services where you get like one way to query it in companies like Christmas. Yeah. Thinking about like, how, how do we, how do we build like, sort of, if I'm more universal query language for, for different data type basis and so on.
Right. So I just see that as sort of a whole area. Where, where the ecosystem is making improvements and targeting, like how do we make it easier for developers to essentially like glue things together? And I think that that's the fascinating thing to see now that there's just like this explosion in, in the ecosystem targeting all these different areas of the stack and really seeing like, how can we mature it?
How can we make life easier? Both for developers, for content editors. Yes. If our operations people and them.
Phil Hawksworth: [00:35:52] It's funny. Cause there's, there's so many exciting things within that and you could harvest any one of those. And that would be like a really valid answer to that question, but I'm also excited by something which is really mundane by comparison.
And that isn't, I mean, or. Of course, I'm excited by the things that are new and arriving, but I'm also excited about the things that have been here for awhile and independent developers and maybe small agencies have been discovering by embracing these tools. You know, they've now got access to, you know, Instant cash, invalidation and CDN management without ever having to touch it.
The kind of stuff we talked about earlier on that you'd have to get an account management account manager and a project and try and figure out how to do all of these things. They've got access to these things. Now, as a result of this kind of explosion of the ecosystem, I'm excited about much larger enterprises.
Discovering these in larger numbers, because certainly enterprises are embracing this now, but I think there are so many more places which still don't have access to these things because are, they've invested a lot. In doing this themselves and in a way are kind of behind, you know, they, they have yet to discover how to use these things and, and benefit from it.
So I'm excited each time I see another large enterprise, embrace a lot of these things and get access to the instant rollbacks that Sarah was talking about and not having to worry about. Their success being leading to their downfall when they have, you know, their black Friday sales suddenly becomes a real issue for them, is probably a bit of my agency history kind of showing through that.
That was the thing that gave me the sweaty palms, but I'm excited for more people to discover the stuff that a lot of smaller agencies and independent developers have been getting excited about and benefiting from for a while. So. That's my 2 cents.
Sarah Drasner: [00:37:41] Yeah. I'm really passionate about developer experience as well.
And I think that this is something that wasn't even a con concept back when, right? Like the idea that someone cares about how a developer is feeling about anything in general, but nowadays thinking about how everything is matured and everything's at your fingertips in terms of choices. I mean, we even mentioned that you don't have to move away from WordPress in order to use.
JAMstack premises and make things secure and get rollbacks and things like that. that this piece, I mean, what I love about Nella Phi is this ability to just connect a, get hub repo, and immediately something is all over the world. And I think that that was the satisfaction that we got from pH or from FTP back in the day.
So it was kind of funny to explain where I worked to my parents. Because I think they were used to FDP a site back in the day. And so, yeah, I kind of had to go through the whole
Tara Z. Manicsic: [00:38:36] history of development,
Sarah Drasner: [00:38:38] explain, you know, what we do and, and how we do it. But I, I love the premise that all of these different pieces, the API economy, what Nettleford does, what all of the services that Matt was just talking about.
It, there's a focus. On making sure that all of these pieces of connective tissue work really well for the developer, because that developer activity, isn't just a nice to have. It is literally the thing that makes us not have to worry about the things that we don't need to be focusing on, on so that we can build the experiences that we want to be built and focusing on the things that we do.
Tara Z. Manicsic: [00:39:15] I like imagining that you're at the dinner table and your mom's like, so what do you do, Sarah? And you pull out a presentation and your dad's like kicking your mom.
She does this every
Sarah Drasner: [00:39:28] time too far from the truth. They asked me to stop speaking in acronyms, like CSS, but I was like, my brother's a product product manager at Google. And he was like, no, no, no. We use those terms. Like, like I'm like, okay, I can say things. Without the acronyms, but I think you're not going to, it's not going to provide more clarity.
Phil Hawksworth: [00:39:51] It's no acronym day. No, no. One's will have to use any acronyms at all for that, but you would be
Tara Z. Manicsic: [00:39:59] that sounds exhausting.
Cassidy Williams: [00:40:02] I ended up branching off. What all of you have said. The, the thing that I am very passionate about is making things accessible for new developers and people who are learning and stuff.
And I love how accessible everything is to newbie developers on the jam. Second in this ecosystem, like the fact that. Someone who might've just started learning JavaScript or reactor or any other framework or something can build a fully featured web application with authentication and security and, and images and video and address all, all kinds of different things, from the ground up.
Is so cool to me because that's something that I wish I could have had access to when I was first learning things. And so the fact that that's, that's not even just like, Oh, it'd be a nice to have to be able to do this. It's is here and anybody can build, build all that stuff is that's the coolest thing to me.
And then I love being able to talk to people who aren't sure where to get started. And you can just say, Oh, well learn this, this and this. And then. Go and, and they there's just so many resources available and so many services available that way. Make it easy
Tara Z. Manicsic: [00:41:07] for them, for people who aren't familiar with the term headless.
It's not as morbid as it sounds. this is basically saying that you can have content coming in. And the, it, you just throw that content in and it's something like maybe you, why that content contributors can be familiar with, but it doesn't care how you consume it. So you're getting the data in there and we use, for a nonprofit site that I do for, for, Asian Natty.
we have a lot of people who, contribute the blog posts. And so they just see this user interface where they put the title and they put the content and they upload pictures and they use that in the strappy UI. And then we consume that, and get it all through on the back end. Right. And style it all out with our, With our static site generator.
And, it's just, we never have to explain anything to them. This is a form that they're so used to seeing on every website. So that's the kind of a very, we'll probably have a whole episode on headless, technology because maybe a Halloween episode on headless technology but we are reaching time. So, if anybody wants to one last comment, otherwise, we'll head out for today.
I
Sarah Drasner: [00:42:16] just want to thank Matt for joining us. I mean, it's so cool to work with the founder of jams tech. So it's such a pleasure to hear your thoughts on it, especially because they're, they're so mature, right? Like thinking through what was in the past, but also what's in the future and I really appreciated you.
I think we all really appreciate you
Phil Hawksworth: [00:42:34] joining. Yeah. There's so much stuff we didn't get to cover, so we'll have to. Get you boozy and talk
Sarah Drasner: [00:42:42] after hours,
Tara Z. Manicsic: [00:42:45] we'll have to pause you from advancing the way we make the web in order to talk to us on our podcast.
Matt Biilmann: [00:42:52] Thanks so much for the invite. Well, that's our show.
Cassidy Williams: [00:42:54] Next time we're going to be talking about virtual tech in quarantine conferences. What works or not for both attendees and organizers, it's going to be a blast.
I've been Cassidy. Strawberry
Phil Hawksworth: [00:43:04] jam Williams. I've been filled peach jam Hawksworth
Matt Biilmann: [00:43:08] I've been mad. Rhubarb jam feel men
Tara Z. Manicsic: [00:43:11] I've been Tara big
Sarah Drasner: [00:43:14] and I've been Sarah, Lala Berry jam. Drasner
Tara Z. Manicsic: [00:43:17] that's perfect. Thanks everyone. Hi everyone. Thank you very much for joining us.
Matt Biilmann: [00:43:24] You.
Sarah Drasner: [00:43:30] Everyone was
Phil Hawksworth: [00:43:30] smiling at me, horrifically what's happening.
Something happen.
Tara Z. Manicsic: [00:43:37] Lovely. So it's fine.
Welcome to Remotely Interesting brought to you by Netlify.
People who were remotely interesting:
Did you know that Jamstack could do that?? Apparently, Phil didn't BUT fear not, we helped him remember he actually knew alllll about how you can easily add authentication, gate content and do so much more with authentication in the Jamstack.
Discussion Points
SHOW NOTES:
Blog Posts & Projects
Community Work We ♥️
TidBits & ThoughtThings™️
As always, we hope you find it remotely interesting.
TRANSCRIPT:
Tara Z. Manicsic: [00:00:00] Previously
on Remotely interesting.
Jason Lengstorf: [00:00:04] Yeah. If I was doing that instead of making pasta, I'd might have a six pack by now.
Cassidy Williams: [00:00:09] Hello and welcome to Remotely interesting.
Phil Hawksworth: [00:00:12] This is remotely interesting.
Divya Tagtachian: [00:00:14] It seems
a little presumptuous.
Sarah Drasner: [00:00:16] No, no, no. That's the name of the
show.
Tara Z. Manicsic: [00:00:18] So, today on remotely interesting. We want to talk about a segment that we're excited about called the Jamstack can do that. Hopefully if we're interesting, we can continue to do this topic on other subtopics today. We're going to talk about access control. So talking about gated content, authentic Haitian and personal light station and wherever are.
Amazing minds wander to
next
Phil Hawksworth: [00:00:56] The Jamstack can't do
that stuff. Can't do that stuff on the static side, obviously
bill,
Cassidy Williams: [00:01:03] but that's incorrect
Tara Z. Manicsic: [00:01:07] I was like, wait, that's not, I was just like, Oh no,
Phil Hawksworth: [00:01:12] thanks for tuning in.
Tara Z. Manicsic: [00:01:15] Goodbye, but what,
Phil Hawksworth: [00:01:17] but you hear that a lot though, right? I mean, we've, we've all heard, like, no, that's where the ceiling is and you can't bust through that. That's why I'll never build a static site or Jamstack side because you can't do this dynamic kind of stuff. This authentication stuff.
Tara Z. Manicsic: [00:01:34] How do you
do it?
Phil Hawksworth: [00:01:36] I usually ask Jason how he does it. I mean, I don't want to do it like I'm passing the buck, but my goodness Jason's been doing a lot of demos of this kind of thing recently.
Jason Lengstorf: [00:01:48] Uh, yeah. I mean, there, there are a bunch of ways to do it. I think Cassidy was just going to talk about, um, you, you just did a next project with us, right?
Cassidy Williams: [00:01:55] I did. Oh yeah, I did one. I called it members only because I was like, you have to be a member, but there is, there's really nothing to see. It was just like, Oh, you made it. Let's
Tara Z. Manicsic: [00:02:06] go. You just want to have an excuse to wear that jacket.
Phil Hawksworth: [00:02:08] Yeah. Yeah.
Jason Lengstorf: [00:02:09] That's true. Yeah. What I, what I love most about that demo is that you managed to work the word grody into a software demo.
The word kind of made me Brody. It's like, it's a word that probably hasn't been heard. Outside of the third grade in 1994, besides our team meetings, besides
Phil Hawksworth: [00:02:30] usually in the sections of the team meetings where I'm just looking blank. Here's some like nineties, America, and a references that just go way over my head.
So how well do we spell groty? Is it groty grody road geography? Sorry. Yeah,
Tara Z. Manicsic: [00:02:49] come on.
Phil Hawksworth: [00:02:52] I love that. I'm trying to decide whether or not to add this to the show notes at this point.
Sarah Drasner: [00:02:58] Yeah.
Tara Z. Manicsic: [00:03:00] We actually like, so just to like little plug, we actually have a bunch of really great posts on the I blog where we have all covered.
Certain things like net identity, which make it really easy to do a, to do sign in and sign up on your page. But just like, like I know it did for angular and it was two lines of code, like one in the main index HTML, and one in the actual template. And it pulled in the net, the fi uh, identity widget, which is, uh, something that our team has been working on a lot lately.
And it's open source, check it out. We'll have the link for it in the show notes. Did we want to talk about that much at all? Or should we let it speak for itself?
Jason Lengstorf: [00:03:43] I mean, I think it might be kind of interesting just to, to dive into a little bit of the, like what's happening with access control and authentication.
So like yeah. When you're, whenever you're building a site that is going to have access, you need to be able to identify a person so that you can determine whether or not that person has the ability to access that content. Um, and so there've been ways to do this over the years. You know, if you, if you ever worked on like rails or PHP or things, I like that you may have dealt with, um, server sessions.
And server sessions were great because you could just store some information on your, on your server and like check somebody's request to make sure that they were that person and decide whether or not you sent them that content. Um, so when you move into the jam stack, that gets significantly more complicated.
We don't have a server, we don't have a place to store that secure detail. So how do we let somebody say I am who I am, um, and determine whether or not they get to see some content. And so I think that what, uh, what a lot of that'll leads a lot of people to assume that it's just not possible, but fortunately, because people much smarter than me are out there working on these hard problems, they have introduced things like Jason web tokens and cookie-based roles where you're able to, um, hit a what's called an OAuth provider and you get back an access token and that access token is encoded.
And it uses a secure secret that has to get validated somewhere. Um, but that says like, I am me and you can get assigned different roles. You can get assigned different, whatever. The, the nice thing about these is that they're just, they're called Jason web tokens because they're just Jason. So I, as a, uh, app developer can say, well, here's my user.
And I want to add this custom information to their token and you can add more or less anything you want to it. Um, and then when you send this token with a request to say like, Hey, give me protected content. The we can use serverless functions, we can hit an API, we can hit whatever it is that we want to and say, I would like some content, please.
Here's my token. And then the server has a secret key that it uses to say, is this a valid token? And then if the token is valid, it'll pull that custom data out and you can use it to say, Oh yeah, this person has an admin role. They can make this change. Or this person has a membership. They can see this content.
Um, and that allows us to do this really, really powerful stuff in the Jamstack. That may seem like you have to have a server to do it, but in fact, you can do it pretty much anywhere. Um, using the, either, uh, Jason web tokens and serverless functions, or if you are using, um, cookie-based access tokens, you can do it without JavaScript at all.
Uh, because like nullify and a few other providers support something called role based access control, where you can actually just write in your, in your redirects. If somebody has the role of admin, allow them to see this slash admin route, if not redirect them to the login page. That
Tara Z. Manicsic: [00:06:46] alone to me is so crazy because like, you're not even hitting up the server anymore.
So you're like reducing server calls and it's just, it's using re like, uh, when I did that, the first time I was like that worked.
Jason Lengstorf: [00:07:01] Yeah. It really does feel like, I mean, especially for someone like me who came from the server world of writing like sessions and stuff, the ease of setting up the basics of authentication. Is kind of staggering.
Sarah Drasner: [00:07:16] I
Phil Hawksworth: [00:07:16] made up a joke
Cassidy Williams: [00:07:18] just
Phil Hawksworth: [00:07:19] quick side note.
Cassidy Williams: [00:07:20] So sometimes Jason goes to parties, but he's the only web developer there.
So he's the token web Jason.
Tara Z. Manicsic: [00:07:30] Oh.
You can't see this, but Jason is so excited about that. Joe
Sarah Drasner: [00:07:41] jumping out of his seat, he's prodding.
Tara Z. Manicsic: [00:07:45] He's not
Sarah Drasner: [00:07:46] shaking his head and complete this may
Cassidy Williams: [00:07:51] I promise I was listening to what you were saying, Jason. I wasn't thinking about that joke the entire time
Phil Hawksworth: [00:07:58] I saw you. I saw you making notes. You had like a whiteboard where you're working out the mechanics of that joke and how
easily
Sarah Drasner: [00:08:09] I
Cassidy Williams: [00:08:10] think sweat off my brow.
Tara Z. Manicsic: [00:08:13] I think you actually had something non jokey to say.
Phil Hawksworth: [00:08:16] What's the point at this stage?
Sarah Drasner: [00:08:19] No, I mean,
Phil Hawksworth: [00:08:20] it's funny, the number of times I kind of come back to getting excited about that. If I redirect, um, I'm a lot of fun at parties. Um, but you know, the number of the number of times, I kind of find myself kind of saying.
Well, you can do that. And this little redirect file, because now on the, on the surface of it, you know, it's just this little conflict file where you say, um, any request that matches this path, you can redirect it or rewrite it, proxy it to this, this destination. And that's, there's a lot of power just in there.
Um, but then when you start to add some of the rules to it, like, well, This match will only work if the user has, um, language setting in their browser. So then you can start to do, um, you know, internationalized, localized content or, um, this, uh, this, the person making the request is in. In this country, then again, you can route people to localize content.
And this is just an extension of that. You can say, if this person has this role, then you're, they're authenticated to go to this destination and the vape that all of that stuff has been pre-rendered and it's just like, well, we've generated it and we'll put it somewhere that people can access. If these rules are satisfied.
It makes it really easy to kind of reason about it and really easy to, while you're developing it to kind of test this out and say, okay, well, here's the content and this is what will happen based on these sets of rules. And I don't know the, the amount of power that comes from this kind of little simple redirects config file that, uh, that is kind of unassuming and very, it's just one file in your, in your repo.
Um, it keeps on catching me off guard. So, um, so yeah, I realized that that's how this, this stuff works.
Tara Z. Manicsic: [00:10:01] You're touching on two things that I I'm like super excited about that. I think we should just have the whole topic on it at some point, but like we have with Nettleford edge handlers coming out, that's doing a lot of work on that CDN edge node, you know, based on redirects, it's going to be so powerful.
And then like one of our coworkers, Divya tech, Cassian's like super into the functionality of redirects and she has something special coming out soon that. Um, I won't touch on, but it's amazing.
Sarah Drasner: [00:10:32] So hopefully
Tara Z. Manicsic: [00:10:33] we'll get to talk about that soon. Um, but she's, she's really delved into the topic of redirects because they are so powerful and also, um, there's so much that you could do with them, that it gets quite conf can get quite confusing because you know, like with a lot of power comes great responsibility, so, you know, you gotta do it.
Right. Um, so keep your ear to the web.
Phil Hawksworth: [00:10:58] Yeah,
Cassidy Williams: [00:11:06] the coolest thing about redirects that like blew my mind was the ability to make a URL shortener with it. I think that's the coolest little trick that you can do with it. And I know internally we have like a Slack bot where. If you put in a URL, it'll shorten it and then put it in a redirects file somewhere.
And it just works. I think that is the coolest thing, because that, that kind of solves a problem and creates a solution to things that a lot of individual developers have wanted to do. But it's not something that you really think that you can do. You're just like, Oh, well I have to use Bitly or tiny URL or this or that.
But the fact that you could make your own on your own. Server and domain and stuff is the coolest concept to me.
Jason Lengstorf: [00:11:49] Yeah. Uh, Kent C Dodds built the thing. That's like a one-click deploy that gives, and it also gives you a local shell command. So like once you install his thing, you have a command in your, in your terminal, that's just shortened.
And then you drop a link in and it will automatically update your redirects file, deploy it and that Levi and in about 15 seconds. You've got a short link. That's like on your custom domain. It's really, really nice.
Tara Z. Manicsic: [00:12:13] I feel I can see dads is like, Every, you know, everybody's like, Oh, I should do this thing.
And then nobody does it. I think I feel it can't see dads gets all of those mind things and he's like, I'll do it.
Phil Hawksworth: [00:12:27] Yeah.
Cassidy Williams: [00:12:27] I think this is the domain names.
Sarah Drasner: [00:12:30] Yeah.
Phil Hawksworth: [00:12:31] No, no, that's perfect.
Jason Lengstorf: [00:12:36] I feel like, like, what I like about Ken is I think that so many of us, uh, we have ideas and we think they're cool. And then when we actually sit down to work on them, we talk ourselves out of it.
Cause we're like, Oh, somebody has already built that. Or a, I don't know, maybe it's not that cool. And I think Ken is like, I'm not going to be the one to decide that you just shifted. I'm sure that he has dozens of projects that no one has ever looked at. But a lot of the things that he shipped, I'm sure as he shifted, he was like, no one's ever going to look at this.
And then it's this, you know, this school thing. I always try to remember, like, you should be more like, can't just ship it. Like what's the worst that could happen is you ship it and nobody uses it. Right.
Tara Z. Manicsic: [00:13:13] I could be like, can't,
Phil Hawksworth: [00:13:17] you're mad when he did that. I was so mad when he, uh, did a little video tutorial of like, Oh, I found out you could make this URL shortener.
And here's how I did it. And he made, I made a little video of how he did it and. I was so annoyed when I saw it, because way back before then when we first did notify functions, I thought, Oh, we could use now if I functions and the redirect API to make a URL shortner and I made this thing that does the same thing, but it's so convoluted.
It was so good. It was like, it would take them form post and user net functions. They kind of put it over here and then kick off a build and yada, yada, yada, and I was really smug about it. And then. Can just does the same thing, much more elegantly and simply, and like, Oh yeah, I could have done it like that.
So that's how I, now I stole that straight back and that's how I run my own, my own URL shortener. The hardest thing about it was trying to come up with a compelling domain name. I spent more time trying to find a good domain name for a URL shortener. Then actually implementing a notice,
Tara Z. Manicsic: [00:14:21] started saying you're a shortner and been like, you were all shot.
Phil Hawksworth: [00:14:26] Oh, you just drop all the trouble of ours. No, constant.
Cassidy Williams: [00:14:33] I know about doing that. One thing was by name where, you know how like with accessibility, there's like the 11 for the number of characters and accessibility I was thinking of doing now it's my name? So it'd be like C5, Y a dot something for that kind of domain.
That's good. Yeah. Right.
Tara Z. Manicsic: [00:14:49] I mean, it's very egocentric, but
Phil Hawksworth: [00:14:51] yeah. I mean, this is for me.
Jason Lengstorf: [00:14:54] I figured out that the, uh, the dot AAF a top level domain is available. You have to go through like gandhi.net. But so I was able to buy Jason dot AAF. That's a pretty good one for awhile only using it as a shortener, but now I've, I've actually launched a personal site on it.
That is like the silliest thing I've ever built. But, um, but, uh, yeah, the, those are. Those are a lot of fun. And I don't think a lot of people know about them until this podcast. So go out there and get one right now, if you want to get your first name.
Tara Z. Manicsic: [00:15:26] Okay. We're not really seeing this podcast until I get mine.
I'm not joking.
Phil Hawksworth: [00:15:38] So we, we kind of veered away from, uh, cause, cause we, we, we talked a little bit about the. Like the orphan and some of the stuff that Jason said, but we were going to, I think we were going to talk a little bit about some of the stuff that custody did with next to North as well. Is that, did, did we go down that Avenue very much or it feels like we kind of skipped past, you
Jason Lengstorf: [00:15:58] talked about it being grody.
Yeah.
Phil Hawksworth: [00:16:01] At the beginning of the. Yeah,
Jason Lengstorf: [00:16:04] that was how we started Phil. How far we've come?
Sarah Drasner: [00:16:09] I think it's been a 15 minutes.
Cassidy Williams: [00:16:14] What did I do? Oh yeah. So I made, I made this project with next JS authentication. It was, it's interesting because I'm very used to vanilla reacts things and, and how redirects and routing and stuff works with that. And so it was funky to mess with it with. Next because it's just a different kind of router, but it was relatively simple to put together.
Um, again, with the identity widget, like I, it wasn't the two lines of code that it was for angular, but I just made like a file where I made like a wrapper for the functions that I want to use and called it and an effect. And it ended up being maybe not two lines, but like five lines in each component that I wanted to use it in.
And so it was really nice and simple to be able to make that.
Tara Z. Manicsic: [00:16:58] I really, so one of the articles that I was really impressed by Jason recently are the manage subscriptions and protect content with Stripe. Yeah. Um, and using, using cause you know, money is great.
Cassidy Williams: [00:17:10] I love. Um,
Tara Z. Manicsic: [00:17:12] so like being able to be like, give me money and I give you something is a great thing to be able to do with code.
Um, and it's, uh, it's such a thorough and like complete post. Which is total Jason post, but, um, you want to talk to that at all? Or like, is there anything about
Jason Lengstorf: [00:17:35] I talk to my thoroughness and post? Yes. I start to write and I can't stop until I have 7,000 words,
Tara Z. Manicsic: [00:17:43] the whole podcast on
Sarah Drasner: [00:17:44] that.
Tara Z. Manicsic: [00:17:44] So,
Sarah Drasner: [00:17:45] um, no.
Jason Lengstorf: [00:17:47] So the, the thing that's really exciting about that is like, because of, of what I was talking about with the JSON web tokens and the fact that we can write whatever we want in there.
Um, we can use third party API APIs to tie together different accounts and put that information into a JSON web token. So in this, the Stripe thing, um, what we're doing is like whenever you create a new network identity account. So when you register for an account on the site, we have web hooks for that.
So we have like an identity signup. Serverless function that lets you fire. Um, any, any arbitrary code that you want to run when somebody signs up. So you could add them to your newsletter. You can, uh, do what we did here and create a new free Stripe subscription for them. Um, and so we, we created a few plans.
There's a free plan. There's a, like a medium tier and a high tier. And as soon as you sign up, you automatically get the free subscription that that's your, your membership to the site. You can go to anywhere that's free. And then if you choose to upgrade, you go through Stripe's billing dashboard. And then when you upgrade in Stripe, they fire a web hook and that web hook, it can be sent wherever.
So we set up another serverless function that says, listen for Stripe Webhooks. And if you get one that says the account change, rewrite this person's roles in there, their identity user, to say that they have whatever tier of subscription. And that way, whenever they make a request, now they've got a role of like premium or pro or whatever the subscription is that they bought.
And we can show them different content based on that
Phil Hawksworth: [00:19:19] right there. Rose Jason, sorry, just to interrupt you. When you say rewrite their roles, is that updating what their role resolves to in the, in the token? Yeah.
Tara Z. Manicsic: [00:19:29] Rewrite their stars. Don't you know, that song.
Sarah Drasner: [00:19:36] Yeah. That sounds
Phil Hawksworth: [00:19:39] grody
Jason Lengstorf: [00:19:42] bill. First time I ever sing to you and you call me Brody. Um,
Phil Hawksworth: [00:19:46] so,
Jason Lengstorf: [00:19:47] but yeah, so, so the way that like Netflix, my identity works is by default. We include support for roles, uh, and that's, what's built into the role based redirects and those sorts of things. So, um, the easiest way to work with us is like those roles get packaged up into the JSON web token.
So if we rewrite the roles, when you get a Stripe web hook or, or when somebody does something and you want to change their privileges, you can just update the roles and net with identity, which will automatically update their Jason web token with their new role. And then when we do a request for like give me content, then that content can be gated based on role.
So if they have free only show them free, if they've got premium, show them free and premium and so on. Um, and so we, we did it in this one with, uh, with like an async request, like do a serverless function, but we could have used the cookie-based redirects too. And it would work the same.
Tara Z. Manicsic: [00:20:43] Just a quick asterisk.
I didn't realize before using that fry identity, that there's like different levels of customization, as far as how far you want to dig into the code, because you can set rules just like straight off the bat. In the UI on netlist FI's identity tab. Um, and I just thought that was, yeah, really interesting.
If you're like not super comfortable with setting the code of how you want that to be that you're like, okay, I will manually, it goes through these, you know, we have 30 users, I'm going to set their roles to whatever name I want to at the moment. Um, and that way you have rules right off the bat. Um, I just think it's really interesting as far as like accessibility to who can manage these
Jason Lengstorf: [00:21:23] things.
Yeah. Especially with invite only stuff.
Cassidy Williams: [00:21:27] Yeah. Yeah. I think it's a really powerful tool for gamification too. Cause you can unlock different pages and stuff. If someone has gotten to a certain level and you could even, you could make a really cool game with it. Like let's just say you wanted to do some kind of tabletop role-playing thing.
You could have certain people are only able to access certain pages based on the role that they have. And, and there there's a lot of really cool things that you could do with that to make. Some kind of game experience and playable experience through access that way.
Jason Lengstorf: [00:22:01] Yeah. That sounds like a fun side project
Phil Hawksworth: [00:22:06] is don't go down there yet.
Jason Lengstorf: [00:22:08] Buy the domain name.
Cassidy Williams: [00:22:12] I bought the domain name.
Phil Hawksworth: [00:22:20] But that's one of the things I like about this, the tutorial that, that gives the example that Jason is kind of describing there, although I would say as well, when, when Jason, when you shared that link, when it was staged and said, would anyone just mind just casting yeah. Rise over this post before I post it.
And we all, we all gradually kind of, I mean, obviously we rushed to help, but some of us, some of us rushed faster than others. And now he's like, Oh yeah, I'll have a look at this. And then I realized the scroll bar, the actual handle in the scroll bar was like two pixels deep because there's yeah, this
Jason Lengstorf: [00:22:53] Rollbar becomes a circle
Phil Hawksworth: [00:22:55] because, sorry.
Um, but having said that this, that, that tutorial there had lots of screenshots in it, thankfully as well. So it was like, Oh, actually it's not that much. But also from start to finish, it's like this complete walkthrough of every, everything you need to implement, you know, um, gated content, the actual kind of stubbed out content, API and integration with a payment provider, all of the logic to stitch it together, identity authentication, subscription management.
This is a. A lot, a lot in there. So I feel like I'm criticizing you for the size of the scroll bar was a little premature after seeing actually what happens when you read it. But the thing I really like about the example as well, Is that we know we've mentioned, um, rooting people with the redirects API to stuff that's been generated ahead of time.
Your example is, is the other thing is say, Oh, well, it's, this is access to different, different content through an API, right? Cause you, you express your content through an API and that's such a big piece of building things together with the Jamstack, you know, being able to say. Your content, your resources, whatever they are, they live on this API that could be anywhere.
And if you can push that up with roles and say, attribute different access rights to that. And then you've got this piece where you can assign roles to a user that's. These are really powerful building blocks to stitch together. So for me, that was a, that was a really nice example, reading through that thinking, wow, there's this actually has a really strong Swiss army knife of all of these things that I can do with these, these building blocks or mixing my metaphors horribly.
I'm sorry. And
Tara Z. Manicsic: [00:24:30] did you know that the Jamstack could
Phil Hawksworth: [00:24:31] do that
Cassidy Williams: [00:24:34] with building blocks in a stack?
Jason Lengstorf: [00:24:39] Uh, but I do think like the thing that, that is maybe one distinction that's worth drawing is like, you know, um, when you're doing server-based content, you don't have to think about like what should be generated ahead of time versus not. Um, so a lot of what we've been talking about is content than everybody would see if they have access to.
Um, and so something that we haven't talked about is like, what about content that only one person would see, like your user dashboard or your account profile or your billing settings or something like that. Um, so. You know, I, I, I feel like I've been talking a lot, so maybe somebody else wants to talk a little bit about how, you know, how do you manage that on the Jamstack.
Phil Hawksworth: [00:25:21] And th I mean, that by itself is a pretty good example of that, right? I mean, it's, it's kind of unfortunate to use. It's very self-referential, but, you know, we've the net, the fire admin, uh, Application is the perfect example of that, right? Because it's a react app where the UI is statically generated and is served from a CDN, but then all of the requests for the data, it comes through an API and that is personalized down to a single, single user.
Right. So that's, that's based on the authentication of. Unidentified user. So they're making, um, authorized requests to an API and being able to hear there is a database somewhere in there, it's all in the API and it's all personalized to an individual. Um, so you can absolutely do that, uh, on the Jamstack because it's a question of making authenticated.
Requests to an API. And in this case, in this case, it's not just roles, it's an idea of a user. So, you know, you're able to make those requests to an API then return the right data for a specific user is it's not all about pre-generated things on the Jamstack.
Jason Lengstorf: [00:26:26] Well, put mr. Hawksworth,
Tara Z. Manicsic: [00:26:28] mr. Hawks were.
Phil Hawksworth: [00:26:32] You guys are called me some things.
Tara Z. Manicsic: [00:26:39] No, but I think just in general, like Jason was saying earlier, coming from a more server centric world, the steps that it. Takes with JWTs is really impressive to me. Um, and like redirects just how, just like, you know, that there's not one short fire away do off. Um, and then it isn't as calm. Like I'm spending time on off before I just, I never wanted to touch it because it was just so convoluted and complicated that.
It was extremely daunting and it just feels so much easier. I mean, it's totally, I totally sound like a Koolaid drinker, but that's okay. Um, because I feel like my work is done faster. Thanks to how things are handled with the jam second off. Well,
Jason Lengstorf: [00:27:29] I think, I mean, I feel like that's how all of us ended up on the Jamstack right.
Is we were working in other companies doing things different ways and started moving this way and like, I at least in my case, and I think this is true of all of us. We, we came to nullify after building on the Jamstack and realizing that was the way we wanted to build websites.
Phil Hawksworth: [00:27:47] And for me, and I suspect for many as well, it starts with kind of the thin end of the wedge.
You don't think, well, all of the projects I've ever done in the past, I could do them with this model. You kind of start by identity. Well, I'm building a project where. I mean this, these are all, these are pages that aren't going to change very often or at all. And so I can sidestep all that complexity and just kind of distill it down to the simplest thing.
But then over time started to realize. Oh, the horizon is actually further away than I thought the ceiling is higher than I thought I can, I can do kind of search and I can do authentication. And, you know, and I don't, I don't think I would have ever gone straight to that. Um, it's just, I've, I've kind of eased it in that way and discovered more things over time, which I think might be one, one of the challenges now, because.
These, this ecosystem has grown up now, so you can jump straight in and do all of these things, but it's, it feels like a big jump. If you're used to doing it another way. Cause you, you, haven't kind of gradually put your toe in the water and East across and discover another boundary you can get through.
You've got people like I was banging on saying, Oh no, you can do all of these things. And it's like, wait, what can you that's? That seems backward to me. But you, I think, I think we've probably had the benefit of easing easing in and discovering things bit by bit.
Tara Z. Manicsic: [00:29:01] I do want to kind of wrap it up. And so I have two requests from all of them.
You, um, one, if you have any other tidbits or that things that have stumped you along the way that you want to share as far as awesome. Um, and then also. If you could like gait or restrict the people who are allowed to do certain things in your life.
Sarah Drasner: [00:29:30] Yeah.
Tara Z. Manicsic: [00:29:31] Well, we'll say, Oh, I'll go first. And, um, I just want to, like, I love the team at off zero and I just want to do a, like shout out to, um, like checking their stuff out as well. Um, working with them has been really nice. Um, and, uh, The thing that I would gait is what people could wake me up from sleeping.
So I would only give that access to like one or two people and it would change constantly cause I hate being woken up and that way people can't do it.
Phil Hawksworth: [00:30:06] You had that loaded up. Didn't you
remember
Tara Z. Manicsic: [00:30:10] when Jason asked us a question and I was like, what?
Jason Lengstorf: [00:30:14] That's, what you were working?
Phil Hawksworth: [00:30:15] I was waiting. Okay.
Sarah Drasner: [00:30:18] Someplace very special. I was asleep noticing.
Tara Z. Manicsic: [00:30:23] All right. Who is anybody have, do you want me to make some music until someone figures there?
Jason Lengstorf: [00:30:29] I have a tidbit, a one that's been very helpful for me, which is that, uh, when you start working with authentication, one of the things that you're going to be dealing with a lot is the tokens themselves.
Um, did I just steal your thing?
Phil Hawksworth: [00:30:41] Yes. Yes. Sorry.
was meant to be just between us, but yes.
Jason Lengstorf: [00:30:48] Excited. So it's all yours. I'll I'll back off.
Phil Hawksworth: [00:30:51] No, no, no, go on.
Jason Lengstorf: [00:30:52] I've been talking to all episodes.
Phil Hawksworth: [00:30:54] I've got another thought thing I know. Is that a, that's a tidbit. Isn't
Sarah Drasner: [00:30:58] it.
Phil Hawksworth: [00:31:02] Okay.
Jason Lengstorf: [00:31:03] With the author, you're going to be working with Jason web tokens a lot. And so, um, One of the things that helped me was starting to understand how they work and a really, really good resource for that is jwt.io, which you can take any token and then go paste it into JWT, to IO, and it'll decode it and show you what the details are.
Um, and so, and what's nice about JWTs is that like JWTs only include public information. Uh, you have to have the JWT secret to modify it or actually use it for anything. So, uh, when you go to JWT to IO, you can see the token. Um, but if you modify it, you to invalidate it. So it's not like it's, you know, giving you keys to the kingdom or anything.
Um, but that's a really, really handy thing to have.
Phil Hawksworth: [00:31:49] That's a good one. I mean, it's, it's, it's so good. I wish I'd thought of it myself.
Tara Z. Manicsic: [00:31:54] You didn't say what you would gatekeeper or, or user role restrict in your life.
Jason Lengstorf: [00:32:00] Oh, Hmm. Okay. So I, uh, I, I think if I was going to add role-based permissions to anything, it would be when people invite me to dinner, you could only invite me to dinner if.
Hmm, maybe I should back this one out that was like totally gonna offend vegans or something. Okay. Let's edit
Sarah Drasner: [00:32:27] that out.
Yeah.
Jason Lengstorf: [00:32:31] Like I was making a joke yesterday that my love language is cheese and I was like, I should make that joke more often. And then I, I didn't, I decided not to because you know, people who don't like cheese get mad at me when I say stuff like that.
Tara Z. Manicsic: [00:32:45] I know that it's so Gouda come on.
Jason Lengstorf: [00:32:54] wow. You both did same joke, different cheese. Nice.
Phil Hawksworth: [00:32:59] Wow.
Jason Lengstorf: [00:33:03] Unbelievable.
Phil Hawksworth: [00:33:05] Oh, Oh, am I now I'm the only one who hasn't made a joke, pun joke, but the pressure, isn't
Sarah Drasner: [00:33:12] a joke.
Phil Hawksworth: [00:33:13] Sorry.
Jason Lengstorf: [00:33:14] Hold on. I'm going over to way over here with that.
Phil Hawksworth: [00:33:16] This is a I don't. I want to drag my joke. Funds the tidbits and thoughts.
All right. So my, my tidbit, my tidbit, um, I was just Googling for it. Cause I can't actually remember the URL, but I will get the URL before this goes out.
Tara Z. Manicsic: [00:33:32] Okay. I'd like to imagine that you were giggling
Sarah Drasner: [00:33:34] Phil's Phil's tidbit
Phil Hawksworth: [00:33:39] Googling for a
Tara Z. Manicsic: [00:33:40] third.
Phil Hawksworth: [00:33:42] So, um, so in a similar kind of vein to, um, The JWT kind of playgrounds. Um, there's a nice example that our wonderful colleague Gerald, uh, put together a long time ago, uh, for trying out net of identity. Um, I can't remember it, is it it's identity
Tara Z. Manicsic: [00:33:59] getting started with JWT and identity?
Is it in that article?
Phil Hawksworth: [00:34:03] Yes, probably in that article actually is probably linked out from that. So the combo, the combo you're getting to. Tidbits for the price of one. So that's amazing, but yeah, he's he built this, he wrote this nice article, but then he linked to a lovely example, which is just a very simple site that allows you to try authenticating and then seeing the result.
And you can then look at them kind of, yeah. I like it, cause there's a very reduced example. So there's lots not, it doesn't do a lot. It just simply gave some content. Um, and it's a really nice example and a good place to just, just experiment and try that out for the first time. So that's my, that's my, that was my tidbit.
Right. So then my thought thing, um, Can I, can I add another layer to, and can I do it time-based um, because there are particular times the day that I would not like to see, um, posts that Jason has shared, um, particularly like between meals, because sometimes either I've just eaten or as a long time to my, until I'm gonna be again, Jason has a horrible knack of making delicious things and then.
Artfully crafting beautiful photographs of them and then sharing them at the point that I'm like, well, I need to eat again now. And I've just had a meal and now I'm going to have to eat something like this. And it's, I'll be honest, it's becoming a problem. So
Jason Lengstorf: [00:35:25] your, your thought thing was to creatively say that you're going to block me.
Phil Hawksworth: [00:35:34] Like a block of cheese,
Sarah Drasner: [00:35:36] the block of
Phil Hawksworth: [00:35:39] Phil's
Cassidy Williams: [00:35:40] feeling
Phil Hawksworth: [00:35:40] blue, I'm going to do so much better next time around. I'm going to be able to get in on this, but Cassidy's stealing all the pumps.
Sarah Drasner: [00:35:48] Um, so,
Cassidy Williams: [00:35:50] um, if I were to give a tidbit or thoughts thing, I'd say to think about your redirects early and don't like, throw them in. Later where like, Oh, after I log in, I want to redirect or after someone goes through a certain flow and a redirect, I planned that out early because that will save you a lot, a lot of headaches later.
And that is something that I have learned the hard way. Um, and if I were to have some gated content, I guess I'd say like people who are allowed to respond to my jokes.
Sarah Drasner: [00:36:25] Because
Phil Hawksworth: [00:36:26] that's good.
Cassidy Williams: [00:36:27] There are some people who either respond with something that isn't as funny because they're trying to like, Laugh along, but it's just, they're just not being funny.
Or they're trying to explain my own joke to me. And
Tara Z. Manicsic: [00:36:42] like a recapture thing where you have to like, finish a pun or make a pun, or do some joke in order to have access to New York.
Cassidy Williams: [00:36:52] Right? Yeah. So something like that. Like I, like I made a joke yesterday and someone said, I know you're joking, but I still want to bring up this point.
And they were directing me. On my own joke, but it was a joke and it didn't need to be corrected. It was just a joke. Anyway,
Phil Hawksworth: [00:37:08] that kind of sounds like a fun time.
Cassidy Williams: [00:37:10] Yeah, it's
Phil Hawksworth: [00:37:11] great. That's hilarious.
Tara Z. Manicsic: [00:37:15] I often think that when I see some replies to your jokes and I was like, isn't there a way, you know how, like you are supposed to type in a phone number and you start to type letters and they're like, no, you can't do that.
Like you start to say, I know this is a joke, but you're like, Oh, I can't, I can't type anymore.
Phil Hawksworth: [00:37:31] I think you'll find,
Tara Z. Manicsic: [00:37:39] I think what you're trying to say is
Cassidy Williams: [00:37:46] this has been remotely interesting tuna next time, where we're going to be talking about how to level up experiences at different level companies and catalytic skills. I am Cassidy Gorgonzola Williams.
Jason Lengstorf: [00:37:59] I am Jason Sharp cheddar Lang store.
Tara Z. Manicsic: [00:38:02] I am at phenom and exec
Phil Hawksworth: [00:38:04] and I'm Phil's Stilton. Hawksworth.
Wow.
Tara Z. Manicsic: [00:38:19] Wow.
Jason Lengstorf: [00:38:20] Excellent. In the camp, that was perfect. Flawless episode, no edits required.
Phil Hawksworth: [00:38:25] Ship it, ship it.
Welcome to Remotely Interesting brought to you by Netlify.
People who were remotely interesting:
There have been a lot of discussions online about passion and programming. We dig into working for money vs(?) working for passion, how passions have been weaponized, generational views, and forklift wallpaper (of course).
We also talk about the other sides of coding jobs and using them to follow other passions. How we can care too much about code and other coders (hero worship). Coming from a variety of starts, career paths, and passions, we hope we can share some of our insights on passion, coding work, and, again, forklifts.
SHOW NOTES:
As always, we hope you find it remotely interesting.
TRANSCRIPT:
Cassidy Williams: [00:00:00] Hello, and welcome to Remotely interesting.
Phil Hawksworth: [00:00:02] This is remotely interesting.
Divya Tagtachian: [00:00:05] That seems a little presumptuous.
Sarah Drasner: [00:00:07] That's the name on the show?
Tara Z. Manicsic: [00:00:18] So we have a few things on the agenda. and like one kind of starts from the question of does your number one, passion has to be coding to be a good coder and broke it down into is there such thing as too much coding? And can you care too much about your code? The answer is.
Cassidy Williams: [00:00:39] Hey, I think that you don't have to be a passionate coder to be a good coder, an engineer, and employed in this industry.
And I think that's a very common misconception and it's dumb because some of the, okay, it's not
Phil Hawksworth: [00:00:59] for you. I thought I would get the first interruption in early. What would, what does it, what do you mean by passionate though? Because you have to at least have some interest in it. Sure.
But I
Tara Z. Manicsic: [00:01:12] think there's like excitement. There's passion. There's lots of different adjectives to describe different ways about coding. I think the biggest scary part would be saying that The only way you can be a good coder is if you just purely have a passion for coding. So those kinds of restrictions.
Cassidy Williams: [00:01:30] Yeah. Cause I, I do know some people where they say I am totally in this industry for the paycheck. I honestly don't care about my work. I just have to get it done. So that way I can pay my rent.
Sarah Drasner: [00:01:41] I think that even like the debate is a very Twitter phenomenon, Because I. was it dark matter?
Quote, unquote developer for sure. A very long time before. Jack was for a very long time. and, I started because I didn't have any money and I needed. To make money. And I think that's how a lot of people start and whether or not you stay at that level of enthusiasm for your job, probably waxes and wanes over your career.
Like I started a hundred percent because I was like, I need cash now. and then at some points I really was like, Oh, I'm having a really great time with this, but that's not like. Required. It wasn't a requirement of what I did. And in fact, I wasn't always working the most when I had the most passion or vice versa.
there were times when I was feeling very passionate, I was spending a lot of time learning stuff and wasn't coding as much or something. And then there were times where I was like pedal to the metal, doing a crown ton of things and just doing them because I needed to support myself for other people.
So I don't, they're not really that related. And I think people who aren't on Twitter problem bully, aren't having that conversation with themselves. I just can't help.
Tara Z. Manicsic: [00:02:48] But imagine that imagining you trudging along coding with a bowl of ramen in front of you, and then all of a sudden, like few years down the line, you have a fur coat,
Sarah Drasner: [00:02:57] like coat
Tara Z. Manicsic: [00:02:58] platinum diamonds in a foot bath, and you're like,
Sarah Drasner: [00:03:00] I'm enjoying coding now.
It's . Let's do a fancy ramen though. Yeah.
that's actually exactly what I was picturing without a name. Yeah.
Cassidy Williams: [00:03:19] There was a microwave in step one and now it's got an egg green onions and vegetables.
Jason Lengstorf: [00:03:26] I do think this debate happens outside of Twitter. but I think it falls out of there's a lot of content. That's not programming related that talks about what you love and you'll never work a day in your life.
And they're there the self-help category of books that talk about finding your passion or finding the thing that drives you and trying to make money out of that. And I like, I do think that's a useful way to operate, but I think where it is, it seems to get weaponized because if you are working as an individual, And you're like, I really like to do a thing. I would love it. If the thing that I like was also the thing that paid my bills. And sometimes you can line that up. I like to build silly things for the internet. Somehow I've been able to turn that into a career. Excellent. I'm really happy about that, but If you're, if your passion is to like, make things with your hands or you're really into cooking, but you don't want to run a kitchen.
Like maybe you shouldn't do your passion, you should have a job that enables you to do your path. and I think the problem is that we flip it. And it gets, it gets weaponized by companies where they're basically like I'm only gonna hire somebody who's super passionate about this because we want them to put in all these, this extra effort and do Blake care about the company, like it's their own.
And it feels almost like a, it feels like dirty at that point where somebody is basically saying we want to pay you like a regular employee, but we want you to work like a founder. And I think that's where the that's where it starts to make me uncomfortable.
Cassidy Williams: [00:04:54] Yeah. I've noticed that too.
I've mentored some students and stuff. And it's really interesting how that has permeated, like the gen Z zoomers too, where I was talking with someone recently and she was saying. Yeah. I've been talking with my classmates because I liked the idea of being able to afford being able to go to musicals all the time, because I love musicals.
But the only way if I can do that is to take on a career that I don't really care about that will pay the bills. And I was like, that's totally fine. that's allowed like what you just said, Jason, like it enables your hobby and your passions. And she was saying that. Her peers are very much just like you're doing society a disservice.
If you don't pursue your passions and bring your whole self to the world in your work. And I was like, that's how any of this works? Yeah. And she was saying that it's not just like a certain friend group that's like that. It's. Everyone she knows of her generation of students. And I hope that's not something that they're teaching the kids, but somehow that's getting that message is getting across.
Sarah Drasner: [00:05:56] It's not like it,
Phil Hawksworth: [00:05:57] this is the kind of thing in every industry and every, you wouldn't expect well, Okay. You're interviewing for a job, driving a forklift truck. We hope that you really passionate about forklift trucks and you drive on at home in your own time because you want to better yourself in your loading.
Sarah Drasner: [00:06:15] You're welcome for
Tara Z. Manicsic: [00:06:16] person. Better be forklifts.
Phil Hawksworth: [00:06:19] No doubt, but it just doesn't translate to every. Every industry or every role. And for some reason, we I dunno, we fetishized it a little bit, I think, in the development world, because I don't know, maybe it's partly to do with the fact that we do hang out a little bit on social media and we communicate on social media and you can fall into that trap of comparing your real life to someone's highlight reel, which is the kind of common thing that happens on Instagram and Twitter, where, You don't post the stuff about, banging your head against the wall, trying to fix a bug that you can't do for 20 hours off the top of my head as an example, No, you
Jason Lengstorf: [00:06:54] never happened to me. People are.
Sarah Drasner: [00:06:56] So
Phil Hawksworth: [00:06:56] people took her out. Yeah. they promote the good stuff and it's easy to let that just get separated from reality a little bit and compare yourself to that. And. I don't know. I don't think it's particularly healthy. enthusiasm is healthy, but making it like this has to be the fundamental thing that is about your, is your identity.
That doesn't, that can't be a hundred percent healthy.
Tara Z. Manicsic: [00:07:16] I think it's the money too. I think because it's good money that you have to be able to, people want you to answer the moral question along with it. yeah, you have the option to make a lot of money, but are you doing it? and following.
With your tenants, and it's, I think it's just an easy target to be like, Oh yeah, you can make a lot of money. That's why you're doing it. You have no soul. It's that's harsh.
Jason Lengstorf: [00:07:43] I think a counter argument to that is like the way that people tell you to determine what you should do for the rest of your life is to imagine that you've you never have to think about money.
What would you do if you had unlimited funds and you could do whatever you wanted. And if your answer, like they say that how you should choose your job. But if your answer is I would hang out with my pets and go on long vacations and take a road trip around country. that's most likely not a job, but if you work in tech, you make enough money that you can bankroll that.
And you can have long weekends and hang out with your family and your pets, and then take those road trips, like working in tech because it pays so well, can be. The way that you like, that's your lottery ticket that enables you to live the life that you want to live? I don't think that we should stigmatize somebody who like has a goal and sees tech as a way to get them to that goal and not be goal in
Cassidy Williams: [00:08:34] itself.
Tara Z. Manicsic: [00:08:35] Let alone the freedom of doing remote work. Like I was able to do. I was just talking before this podcast about the camper trip that I took from Ohio and then all the way up the West coast, I did that because I was doing a toxin meetups all along the way and coding on projects along the way. So I could stop in a forest and do some coding and work on a project.
there's a lot of really awesome privileges that you can have. In the world of coding as well.
Sarah Drasner: [00:09:01] Cassidy had brought up a really good example of somebody who, of like the anti-pattern that comes up. If you only do things for passion too.
Cassidy Williams: [00:09:11] Yeah, there's this person that I knew.
And I'm going to be speaking in very vague terms, were responding to a code review, completely freaked out because their code was their religion. And if you insult their code, that's insulting their beliefs. they were, so they, I couldn't handle any sort of criticism because they attach their identity to their code.
And similarly, there's a lot of There's a lot of, kind of hero worship in the tech community too. I think, and people are just like, Oh, I want to be a developer like them. And I think in a way the industry encourages it. Even if it's not about an individual, how many of us are wearing a tech t-shirt right now?
Because we're, we brand ourselves with tech things. And we're just like, I'm attaching myself to this product. Cause I work on it. I use it. And sometimes it's just a tee shirt, but it's still something that has been encouraged in the industry. And that can lead to toxic behaviors.
Sarah Drasner: [00:10:12] I mean that, just to Phil's point earlier, I don't think with forklift driver and I could be wrong, but there might not be.
Famous forklift drivers like this kind of concept of you need to be like X person or X company. And I obviously don't know very much about the forklift.
Phil Hawksworth: [00:10:30] I'll send you some YouTube links. You're going to have that.
Tara Z. Manicsic: [00:10:33] I used to drive a forklift. So if anybody needs someone to look up tail. I'm very short, but just,
Sarah Drasner: [00:10:39] otherwise
Cassidy Williams: [00:10:40] you did it.
Of course I'm
Sarah Drasner: [00:10:41] still taller than me. So I'm still
Jason Lengstorf: [00:10:45] someday I look forward to the like biopic on Tara, because every time that I talked to her, there's another story that I'm like, wait, you also did that
Phil Hawksworth: [00:10:57] to the point that we're even not certain. If she's joking about the forklift
Cassidy Williams: [00:11:03] figures,
Jason Lengstorf: [00:11:06] a hundred percent.
Convinced that she has driven a forklift. I'm good at
Phil Hawksworth: [00:11:10] it. She's nodding.
Jason Lengstorf: [00:11:12] What's interesting is that this happens in certain career paths than doesn't in others. Like there are celebrity chefs, there are people who are like, fashion icons and things like that. And so for whatever reason, like in certain fields, that culture of like their, passion and going above and beyond, and it turns into a, like a little bit of a hero worship culture.
and I don't really know where it comes from, but I talk to you on a Mac has a T shirt actually that I love that says hero, worship, kills community. and I'm like, I'll make sure that we put a link to that in the show notes. But I really liked that. Just encapsulating that thought like that because, the thing that's weird about it, is if you walk into a room and you see somebody that you've heard of before and you treat them weird, But you're like, Oh my God, I've heard of you before.
As opposed to just being like, Hey, we both work on the same things. Like it instantly does that conversation and you're not like, You're not like talking to a person anymore. You're like meeting depending on what side of this you're on, you're meeting a fan or you're meeting a hero and that's a really weird conversation.
Cassidy Williams: [00:12:15] your dynamic
Sarah Drasner: [00:12:16] totally. But counterpoint to that in parks and rec, when Ron Swanson goes to the woods, goes to this like one convention and he's There's that guy and they're like, go talk to him. And he's I couldn't possibly he's swarmed with people. It's just like a guy standing alone, like drinking
Cassidy Williams: [00:12:32] coffee.
Sarah Drasner: [00:12:35] It's like con tech conference.
Cassidy Williams: [00:12:39] And even yesterday, I'm going to put you on the spot a little bit, Sarah, like someone I know on discord. Made an awkward joke and tweeted Sarah. And she replied here and he
Sarah Drasner: [00:12:51] started
Cassidy Williams: [00:12:52] posting in this discourse saying, Oh my gosh, Sarah Drasner replied to me. I'm famous. Now this is insane.
And I was like, you got to stop. she's just a person.
Sarah Drasner: [00:13:01] You should have been
Tara Z. Manicsic: [00:13:01] like, she was on her Peloton window. She
Cassidy Williams: [00:13:06] you're probably doing something lame when she replied. Yeah, no. and the, sorry, Sarah, I didn't
Sarah Drasner: [00:13:12] remember. But earlier that day I was telling Cassidy that I have bathroom issues on
he's really? It's not that big of a
Cassidy Williams: [00:13:22] deal. Yeah. And that's something that. I feel like I'm constantly having to nip it. But, both around other people. I know. and around like my own Twitter thing, I'm not trying to toot my own horn, but just as people who are prevalent on the internet, people are just like, wow, I can't believe I'm talking to you.
And I'm just like the, these people are just people. Who happened to tweet a lot.
Sarah Drasner: [00:13:45] It also does seem like the platform. And I think the hero worship Kilz community is a really good way of framing it too, because when you're talking about like everyone being a group, Putting one person above other people make damages the whole thing, but it also no one on a pedestal is going to ever live up to anyone's expectations.
everyone who's a person is going to be a person. And so there's a lot of unhealthy habits that come into that. And there's some balance there because there are people I look up to in the industry as Oh, they're really good at X. And I would like to learn from them. And I think so there's there are people whose.
I think there's like acknowledging that some people have traits that we're like, Oh, I would love to get better at it if that skill, and I'm probably gonna, watch what they're doing. They're like, speaking for myself, I worked with Chris Coyier for you years on CSS tricks. And he does, he has such a wonderful ability to break things down to core concepts and explain them really well in a really.
Friendly way, but that also is shepherding community, right? that he, instead of trying to elevate himself and make himself sound smarter, he always makes you feel after you've read the article, Oh, that wasn't so bad. And I got it that acknowledging that he does that. I'm not like, Chris choir, the buzzard, everybody likes screw
there's. I think there. We're not so good at nuance on Twitter sometimes where we put things into all or nothing categories. Cause now I'm also seeing this like passion thing turned into you can't have passion and it's like, Whoa, like you can like not, yeah. Maybe it's not all or nothing for these things.
And that we can't, it's not that saying that someone is good at something, can't be the same as this fever pitch. Like you are a hero, whatever mentality it. It has to be a little bit of both of understanding that someone can be okay at what they do and you don't tear us up. Cause the counter of that is like tearing people down and stuff.
I don't want to do that. There's a way that we can all elevate each other and make it a little bit more welcoming to everybody where there's not so many traps. What I'm worried about is that there's traps here and there. For different things and that people can get anxiety. Like I mentored someone, a little bit ago who was saying that they were.
Really worried because they were like, I'm studying really hard to become a developer. And people have told me, I can't study after hours. I'm like, you can, if you want to, if that sir, like they were starting to feel super guilty and it's not, they shouldn't feel put upon to do that, but they shouldn't feel guilty either.
And so I worry that we get interviews, like things where we start to gate, keep each side in. I don't know, there's a little bit more to the company.
Jason Lengstorf: [00:16:32] I agree. And I think that the other thing that's interesting too, is that we talk about them as if they're constant States. Like I've had periods of my life where I felt very passionate about a thing, and I'm like excited about it.
I want to learn. And so I do some weekend projects. I work, some late nights and then I've had long stretches where that's the last thing on earth that I want to do. And I, I will work. 35 hours and that's when I'm like, no I'm done. I just, yeah. and I think that we're going to oscillate in our careers.
We're going to have like moments where we really want to put the pedal to the floor and do a bunch of stuff and get a big project on, or do a big push to learn a thing. And then we're going to have times when we just want to do the job and live our lives outside of the work.
exactly.
But that's such an important thing that we lose in some of the absolutest conversation that happens where it's like, we're not talking about people, we're talking about qualities and then you like people try to fit themselves inside of a quality instead of the other way around.
Sarah Drasner: [00:17:30] Yeah. That's what I meant by the ebb and flow state earlier. I think you explained it much better, but like that there it's not like one thing or the other and it probably never will be for any humans are capable of all sorts of thoughts and feelings and different thoughts and feelings through time.
And I guess I worry about that about not even this conversation, but just some of the discourse in. Some of our discourse in general becomes very like towards one thing or another.
Cassidy Williams: [00:18:00] And I think,
Sarah Drasner: [00:18:01] go ahead.
Tara Z. Manicsic: [00:18:01] Oh, thanks.
Cassidy Williams: [00:18:05] you owe me a soda.
Tara Z. Manicsic: [00:18:11] I was just going to say real quick that especially with people on this team, we all have. Such different things that we like to do to relax. they're not all code, like Phil likes to eat charcuterie in a hot tub. And then, Sarah likes to animate and make sure like Coda on the side.
So it's sometimes you. I let both of you speak to your likes and dislikes if you like,
Phil Hawksworth: [00:18:31] but I don't think I've got anything to add really to that.
Sarah Drasner: [00:18:35] can I like eating structure DRI in the hot tub? Just
Phil Hawksworth: [00:18:37] not my thing.
Sarah Drasner: [00:18:38] I just don't.
you can't keep warm meat.
Cassidy Williams: [00:19:00] this conversation was going now.
so I think all this talk of ebb and flow and stuff. this could sound very wise, even though it's probably dumb. I think a lot of developers, they think in extremes because our code is ones and zeros. A lot of our career is in these, this is binary. This is how this thing should work.
And that's just not how humans work. And I think when you see people being successful in doing all of these awesome things, or even expressing passion, if even if they don't. Have it all the time. You start to compare yourself to that and then start figuring out, okay, do I want to be a part of that or demonize it and did you don't have to do either.
And there's a Mark Twain quote comparison is the death of joy. And I think that's something that you really have to remember and take to heart, because if you want to be successful in something, then you will work towards it and you can't rely on the passions and. Successes and failures of other people to guide what you're doing.
And so you, shouldn't also guide how you speak about people and all of these extremes based on what other people are doing to pursue their careers and passions.
Jason Lengstorf: [00:20:18] It's so funny that you say that like with code being ones and zeros and. I agree with you. I think that the belief that code is like true or false can lead to thinking that life is true or false, but I feel like I've been going the other way.
as I've been, I'm getting older, I'm not sure if I'm getting wiser, but I'm getting better at not making myself miserable. And I think all of it has just been this long slow climb toward realizing why the answer that you always get from senior devs is it depends. And I think that's true in my life.
That's true in my code. It's true in everything you have to think about, what am I optimizing for? What do I care about right now? What's the thing that I actually want to get out of this? what are we trying to accomplish? Not just is this right or wrong?
Sarah Drasner: [00:21:02] Yeah. I would even go so far as to make an analogy to application development in that when you're dealing with the UI state, people who are starting out, typically express it in booleans like.
Is submitted. Is that right? And actually when you express it in strings, you start to extend it a little bit better in the code gets less brittle because you're not, you're then able to say a myriad of States because otherwise what. What I've seen in growing applications is that if you express everything in Williams, you end up with these checks that are like, and this or this and this, and it gets really long and complicated.
Whereas then otherwise you're able to say in one statement, okay, it's been submitted AMS. This hasn't happened yet, or something like that. And it becomes much more flexible. So it's a good analogy in a way to like how. We're thinking about these things like over time at first, it's Oh, this is so clean.
I'll just express it as this or this. But then over time to see that's not actually clean because it doesn't, allow you to. Take in all of the possibilities.
Cassidy Williams: [00:22:05] I think today's lesson is, life is not a bullying.
Sarah Drasner: [00:22:07] It's an email.
Tara Z. Manicsic: [00:22:14] I feel like there's a lot of, especially with meditation stuff, you talk about like conscious living, conscious eating. And so like with conscious eating, it's okay, when you start your meal, are you hungry? Are you feeling hungry? Are you just sitting there and eat? halfway through your meal, are you eating really fast?
Are you still hungry? Are are you happy with what you're eating? It's if we did that with coding, like one, we would probably learn to go to the bathroom much more frequent than
Sarah Drasner: [00:22:41] do I paint myself. One of
Tara Z. Manicsic: [00:22:45] those things where it's you're coding. And you're like,
Sarah Drasner: [00:22:47] I've had a pee for two hours
Tara Z. Manicsic: [00:22:48] now, but it's also Hey, I'm coding and I'm really excited.
And I'm really happy with the progress I'm making. This feels great. then keep going, you're asking yourself, you're checking against yourself about what you're doing. And I think that's probably a healthier way to maybe do it. And if we were just like, I've been banging my head against the wall for 20 hours, cause my name's Phil, then, get up and eat some show.
Cool.
Phil Hawksworth: [00:23:15] So this isn't an admission of anything, but when you just mentioned, there's a very, just in time approach to going to the bathroom, have you ever been so engrossed in making something and just I'm just going to do this one last one next bit. I'm just gonna solve this one next bit.
Have you ever got to the point that you've actually stood up to go to the bathroom, but you're still leaning down at your desk and typing and like your legs and started walking towards the bathroom, but you're like, I'm just okay. People can't hear this, but there are people nodding on this call. I just want, it's not just me.
Sarah Drasner: [00:23:45] The record
Cassidy Williams: [00:23:46] show. Everyone is nodding.
Sarah Drasner: [00:23:49] Everyone agrees with me. They're not saying I'm
Tara Z. Manicsic: [00:23:51] weird or anything.
Phil Hawksworth: [00:23:54] So another. when, Sarah and Jason were both talking about kind of the ebb and flow and it's not a, it's not a sustained level of interest or engagement all the time. And those kinds of things.
One of the things that I feel is also contributed to that for me, at least. And I feel like this is probably a common thing in our sphere is that, many of us are fortunate enough that. To be doing something for a living that we've enjoyed outside of that, we've enjoyed kind of making stuff with code or, building a thing.
And it's almost I've heard people talk about, Oh great. Now the thing that was my hobby is now my job. I don't know if I'd quite go to that extent, but certainly the thing that interested me outside of my work became the thing that I was doing. And that's, that feels like an absolute blessing because Oh, now I get.
Pay to do the thing that is my hobby, but the flip side to that is that, now your hobby is your job. And it is sometimes really hard to understand where the line is between the two. And I definitely have caught myself in the past in other roles where I've been working throughout the day. And then in the evening kind of sitting on the sofa, the TV has been on.
And then on the arm of the sofa, my laptop's been there and I've been doing. Doing stuff still because, Oh, this is still just my hobby. And it, I feel like that's a really, it can be a sticky trap to fall into if you're not careful because you end up you'll your hobby now is your job. And it just grows into something where you don't have that pallet chain, that pallet cleanser, you don't have that change of tempo if you're not careful.
I gotta go out and find new hobbies. And that's what a wonderful problem to have, but I think it's a, it can be a trap you fall into where your energy levels are. Just all your attention levels. They're just sustained the whole time because you never change 10 track
Jason Lengstorf: [00:25:33] hobbies, not jobbies.
Sarah Drasner: [00:25:36] Yeah. Especially like with Corrine team, I think it gets really squishy, right? because you're not, or even if you're just remote working in general, because you don't have that cutoff period the same way. And I think a number of us have even talked about not on this podcast about how. Like people aren't signing off the same way and we have to make better async hygiene to remind ourselves to not respond.
Cause man, like it's tough because you're. The things that you used to do outside of work, where you'd like, stop, go to a bar or restaurant and see people are different now. And even if you like your coworkers, like maybe you're chatting with them. And then a work thing comes up or something like it, it becomes tougher.
I think for people who work remotely during quarantine to have that stopping point, then it takes actually like you, having. Like thinking about it and being cognizant about it, where before you just leave your job and you'd go. Yeah,
Tara Z. Manicsic: [00:26:38] let me, so one of my best friends works in an architecture firm and architects in particular
Cassidy Williams: [00:26:44] have really.
Tara Z. Manicsic: [00:26:45] Not that great work time, or like the management of how long they're working and to try to give them more or free time, the office manager was like, okay, let's try just instead of taking Saturday and Sunday off, just pick whichever two days out of the week, work best for you. So if you want to go to the beach on a Tuesday and Wednesday, you do that.
But that doesn't work because you're on a team. So without people taking the same days, someone's still going to be paying somebody's still going to be waiting for somebody. So it was like having to have that organization across remote teams that will, a lot of us are doing now. It's just, it's not easy.
Cassidy Williams: [00:27:24] It's like those companies that have unlimited vacation, but it's. Quote unquote, unlimited vacation and then it nobody taking vacation. Yeah. Like I think a good term should be like unlimited vacation with a minimum of, and then that kind of forces people to do it because yeah. Otherwise people will tend to overwork and just never take their weekends.
like your architecture
Sarah Drasner: [00:27:47] friend.
Tara Z. Manicsic: [00:27:48] I have a proposal. She has, we are at, at the time Mark that we talk each same. One thing that sparks joy for us about coding. And one thing that's frustrating for us that is anything but coding
Jason Lengstorf: [00:28:06] on the spot.
Tara Z. Manicsic: [00:28:09] Don't
Jason Lengstorf: [00:28:09] mess this
Cassidy Williams: [00:28:10] up.
Tara Z. Manicsic: [00:28:11] Okay. Easy. It's just such an easy thing to think about. I could.
Sarah Drasner: [00:28:16] Think of many
Tara Z. Manicsic: [00:28:17] things that do this. For me when I think about it.
Cassidy Williams: [00:28:22] okay.
Tara Z. Manicsic: [00:28:23] So I just
Phil Hawksworth: [00:28:24] quality stalling going on answering your own question and you still have to do that. Ridiculous.
Cassidy Williams: [00:28:32] Just start a sentence.
And I just keep talking until I find the end of
Phil Hawksworth: [00:28:35] it. The sentence will justify the fact that I've started it
Sarah Drasner: [00:28:39] or to keep going with the parks and rec happily.
Cassidy Williams: [00:28:45] to say this sentence, that
Sarah Drasner: [00:28:47] passion is this true in the dictionary is defined as.
Tara Z. Manicsic: [00:28:53] so I like, there are two things that actually happened to me last week, but I'm just gonna put it down to one.
And, I have spent so much time lately in front end that I forgot how. Satisfying. It can be to set up infrastructure and have a pink come through correctly, like hitting a database, having the information come back correctly, that you set up all the infrastructure yourself. And as it, cause there's not really much, like you don't have a front end change that happens.
It's just like bits working out behind the scenes and something happens and it works right. And it's just Oh, such a good feeling. I love that so much. and then non coding. obviously my child is like the best child ever of all children ever, that I've made.
Phil Hawksworth: [00:29:43] So
Sarah Drasner: [00:29:48] so that is
Tara Z. Manicsic: [00:29:48] one of those things. Like I was just on CASPI. He woke up at two in the morning last night, but I still really liked him.
Sarah Drasner: [00:29:55] Yeah,
Phil Hawksworth: [00:30:00] he's fine. It was that your answer is
Tara Z. Manicsic: [00:30:05] those are brilliant answers. So obviously that's my answer.
Sarah Drasner: [00:30:10] Okay. Okay.
Phil Hawksworth: [00:30:13] I can go. Now I go on Jason
Jason Lengstorf: [00:30:15] in code. I've been really enjoying, setting up like the interplay between, Jamstack front ends and e-commerce, so I've been doing a lot of work with Stripe lately and setting up like different subscriptions and things.
And I keep playing with ways to do that. Like I launched a sticker store on my website and I'm putting together a, like a fun subscription thing with my friend Christmas Gardy and, and it's, that's been just a blast. Like it's really fun to see how approachable that's become, especially compared to 10, 15 years ago, when you would try to take a credit card online.
And then in my personal life, we've started learning how to make our own pasta. And it has been good for everything, except my waistline. Like I am eating so much.
Tara Z. Manicsic: [00:31:00] I bet your waistline is very happy.
Jason Lengstorf: [00:31:02] yeah,
Sarah Drasner: [00:31:03] it's
Jason Lengstorf: [00:31:03] a, it's really just like spreading out, getting comfortable.
Cassidy Williams: [00:31:08] Do a set up before you eat, you'll be good.
Oh, go next. I really like refactoring. Like I love going into a code base and being just like, this is gross, but I know how to fix it. And then just like making it beautiful, shiny, and new. And then when you make that PR and it's mostly red because you deleted so much, I just, that feels so good. I'm just like, I destroyed this and made it better.
It reminds me of an, I was going to talk about like crafting and stuff next, like a wood plainer, how you like scrape on that. And all of a sudden, all the joints and everything are just beautiful. It's like that. But with code, I just think that's so fun. So the thing that's non code, I really like just.
Making things like my monitor standards in front of me is something that I made and I liked building keyboards and I have a laser cutter in my garage where I make stuff. And sometimes it's dumb and useless, but it's something that I've made. And I think it's so fun to just make something physical that you can.
Give to someone or just look at and be like, ah,
Phil Hawksworth: [00:32:15] I'm miffed that you took the refactoring thing. Cause that's, that was up there for me as well.
Jason Lengstorf: [00:32:20] I'll only one of you can enjoy things.
Tara Z. Manicsic: [00:32:22] I think you should just say it as if she didn't say it.
Phil Hawksworth: [00:32:25] Oh yeah. Yeah, I ignored it or I'll say it. I'll say it, but I'll say it better in fewer words, we factor it.
Tara Z. Manicsic: [00:32:34] Not that you can't believe. No one has Mitch. Oh,
Cassidy Williams: [00:32:36] good.
Sarah Drasner: [00:32:38] That was good.
Tara Z. Manicsic: [00:32:39] Thank
Phil Hawksworth: [00:32:39] you. Oh, thank you. okay. But, so I'll do a different one. I really like, and this sounds terribly dull, but I really like making something, work in code that I didn't know how to do. And I've. Gone off and I've found the documentation.
I've read it. I've tried it. And it works. It makes me feel like a genius, even though what I'm doing is I'm following someone's instructions, but there's something incredibly gratifying about starting approach, starting a task where he's I don't know, I don't know how to do this. and then finding the thing that will teach you how to do it, learning from it.
Executing that bit of code and seeing a result, even if it's just a tick in a box or, some okay. Message. Yeah. Hello world is very gratifying. particularly for something you didn't know how to do before you feel like you've Being enriched a little bit. So I like that. and for
Tara Z. Manicsic: [00:33:29] one that's not done
Jason Lengstorf: [00:33:30] good.
That feeling is the whole premise for learning that Jason
Tara Z. Manicsic: [00:33:34] like our jobs
Cassidy Williams: [00:33:36] or careers.
Phil Hawksworth: [00:33:40] Okay, good. I feel I'm feeling better about that choice. That's good. Okay.
Cassidy Williams: [00:33:44] Feeling good now. So get ready.
Phil Hawksworth: [00:33:46] Okay. yeah. and, things outside of work. So I don't think anything makes me happier than giggling with friends. If I'm honest, get like giggling to the point that you can't breathe and it hurts.
And your like, it's a problem is a problem because you go and then you just get the giggles and it's just like the. The virtual circle, the vicious circle. And it's okay, now, if someone was saying something that's no longer funny, but it's just a trigger. I love getting into that state with friends.
Yeah. And that's a, that's the only thing that's not a very productive or creative thing that I'm describing, but that a lot of
Tara Z. Manicsic: [00:34:20] calories yeah. It would help with just Jason's pasta making.
Jason Lengstorf: [00:34:25] Yeah. If I was doing that instead of making pasta, I might have a six pack by now.
Phil Hawksworth: [00:34:28] That's why I'm in such fantastic shape.
Jason Lengstorf: [00:34:33] Sorry that wasn't sorry.
Phil Hawksworth: [00:34:34] Yeah, the laughter was noted. Yeah. Thank you.
Cassidy Williams: [00:34:36] It's especially fun when you're, when you get those bouts, like in a meeting that's really important or something, and it's not supposed to be fun. You're supposed to be paying attention, but when you're just like funny and you just can't hold it in, I love that.
Phil Hawksworth: [00:34:51] Sometimes there's a bit of back channel action in meetings. I haven't seen that happens a little bit in LFI, but not as much to other places where we not in our meetings. Cause we're. Fiercely professional.
Tara Z. Manicsic: [00:35:04] Oh, wait. Yes,
Phil Hawksworth: [00:35:05] I have been, I've been in other organizations where, sometimes there'll be like a few little back channel comments that are just designed to try and make you like, lose your cool and crack up.
I'm very grateful that we've risen above that here.
Sarah Drasner: [00:35:20] It was a meeting. I was on recently where this was in this group, but two members of another group were telling me that they were just mimicking someone else in the meeting. And once you noticed it was very subtle, but once you noticed, like it's impossible to stop laughing you.
Cassidy Williams: [00:35:41] One of my favorite meetups I went to was. We a friend of ours was speaking and we had a big group of people were just like, we're going to watch this person speak. And they kept saying the phrase button and I was just waiting for them to say button. and so then there was a point where I just text everyone in the group.
I was just like, blue button is a button and just. Then they set it at one point and it was just the perfect moment. Must be just like, Oh my
Sarah Drasner: [00:36:05] gosh.
Cassidy Williams: [00:36:06] And we're all just like trying to hold our breath. And people were like tearing and people's faces were red and we were just like this isn't funny, but
Sarah Drasner: [00:36:14] it's
Tara Z. Manicsic: [00:36:15] and humor too.
Sarah Drasner: [00:36:16] I'd love to
Cassidy Williams: [00:36:17] just dump so stupid. It was hilarious. And I just, I love that. That was a good one, Phil. Wow. Two for two. Yeah.
Tara Z. Manicsic: [00:36:28] Good. Good. Good luck, Sarah. Follow that up.
Sarah Drasner: [00:36:37] so I just fell, took Cassidy's I'm going to take terrorists too. so I've been setting things up where you set something up with dynamo DB, and then you, then you. allow an API to use it through Lambda and API gateway. Yes. And there's a good amount of steps involved in. So like when I finally, I used insomnia, I moved over from post-meal twist insomnia a little while ago.
And when I. Actually put it into insomnia and it gives me the thing that I want back after all of those steps, I always am just like, did Steve?
Tara Z. Manicsic: [00:37:13] Totally no joke. Literally dancing
Sarah Drasner: [00:37:15] happens. Yeah. such an amazing feeling. and then on the other side, I think a lot of people who know me would assume that I would say drawing because I really like drawing and I do it on my, in my spare time. However, drawing is similar to coding where it takes a lot out of me.
Like I have to think a lot while I'm doing it. I think people think you just sit down and you like fart things out and it. Whatever, but
Cassidy Williams: [00:37:43] things out, but a different way.
Sarah Drasner: [00:37:46] That's what I'm using charcoal. It's more art theory than art. but, It, it takes a lot out of me in a way.
That's not like super letting go. And so I would say like in the super letting go category, I got a karaoke microphone for my stepdaughter's birthday seven. when we first it was her birthday was in February. So it was like right as quarantine was hitting. And so we've been doing these dance parties late at night before they go to bed.
And it is the funniest thing. There's three children and me. Jumping on the bed, in the dark with a karaoke microphone for 20 minutes until disease, Oh my God, that's enough. Hello. It's not the
Tara Z. Manicsic: [00:38:27] lighting set up too, right?
Sarah Drasner: [00:38:29] Oh yeah, that's right. I also got her this, you can get one on Amazon for $7 or like other places you don't have to go to Amazon.
There's a little light and then a little thing around it and it spins and it disco project. It like a gender. It's like a little dome and it projects, stars and different colors around the room. They're super cheaply made, but yeah, the effect is like this, dude, so we put that on and then dance, but also my stepdaughter is making more and more rules.
The longer we do this. So like now it's very complicated. They did like parts of the room or a lava. This person has to be holding this prop. Like only these people are allowed on the bed during the day, the song
that has become actually like really one of the, most let go of things that we in, let go is actually a really good way of describing. Cause we use that song quite frequently from frozen
Cassidy Williams: [00:39:26] great song to belt. Do it, do any of you have a, playlist of just pump up songs for coding or do you have just strictly, I need to focus.
Sarah Drasner: [00:39:35] Yeah. I have an open store. I opened sourced one a while ago or open source, but I put it on Twitter a while ago. This like coding playlist I use
Cassidy Williams: [00:39:43] because I have a focusing playlist, but I also have a, I am getting to the end of this. I am pumped. I'm going to dance type of playlist where it's just People belting on Broadway and stuff.
And I'm just like, yeah. I'm like them as like code and it's great.
Sarah Drasner: [00:39:57] Oh, that's amazing. I don't have one of those.
Cassidy Williams: [00:40:01] It is. It is great.
Jason Lengstorf: [00:40:03] I have a playlist that I call the ultimate party playlist. That is actually just, it's every song that I can remember from like high school until now that is a song that when you hear it, you immediately grown and then you dance and sing along.
So it's Nelly, Flo rider and biz Markie and like stuff that you're like, you're going to hear it and, Ugh. And then you're going to just go, okay, fine. I'll dance. And then by the end, you're like, yeah, like
Cassidy Williams: [00:40:31] the best.
I hope you found this remotely. Interesting.
Sarah Drasner: [00:40:38] This has been Jason
Jason Lengstorf: [00:40:40] Cassidy, Tara,
Sarah Drasner: [00:40:41] Sarah, and Phil from the net with I-Team wishing
Phil Hawksworth: [00:40:46] you.
Welcome to Remotely Interesting brought to you by Netlify.
People who were remotely interesting:
Blogging is hard...except for when it's easy. We've been blogging for long enough that we'd like to share with you the things that help us, the things that hurt our process, and the things we admire in other's work. We discuss the challenges of being concise, how we deliver content we care about, and more!
SHOW NOTES:
As always, we hope you find it remotely interesting.
TRANSCRIPT
Cassidy Williams: [00:00:00] Hello, and welcome to Remotely interesting.
[00:00:02] Phil Hawksworth: [00:00:02] This is remotely interesting.
[00:00:05] Divya Tagtachian: [00:00:05] That seems a little presumptuous.
[00:00:07] Sarah Drasner: [00:00:07] No, no, that's the name on the show
[00:00:08]Phil Hawksworth: [00:00:08] Today, we've got myself, Phil. We've got Jason. We've got Cassidy and we've got Divya. We're talking mostly today about, I dunno, writing blog posts the process of coming up with content.
[00:00:19] Staying disciplined and getting things out into the world, the kind of platforms we, we like and a few other bits and pieces along the way. So we hope you enjoy the podcast. We hope you'll join us all the way through and then times to come as well. He comes to podcasts. Now we'll probably have another little world at the end of the show.
[00:00:36] Okay. Enjoy.
[00:00:46] So who's been blogging recently. I've fallen off the wagon a little bit. Has
[00:00:50] anyone been writing blog?
[00:00:51] I have. Um, I, so I, I did this thing where like, I've been trying to do a lot of multi purposing of content and, and that has been really, really effective usually. Uh, but I tried something that I haven't tried before.
[00:01:07] So like usually what I do is I have an episode to learn that Jason and we build something and then I've got like this mostly finished piece of code that I can Polish up and write a tutorial about. And that's a really easy process because it's like the code's already there. I already built it. So I can just write down what I did.
[00:01:21] Um, but I did this new thing where I, I wrote a post. With, uh, with Dan mall where he and I had this, this big discussion about design systems. And, um, I was like, Oh, this will be easy. It was not easy. It ended up being like a three part series it's, you know, thousands and thousands of words. I'm trying to make sure I'm accurately representing, uh, what Dan said.
[00:01:42] Um, but it's like prevented me from writing anything else, like two and a half weeks, because it's so much work to get it right. Um, but I feel like that wasn't the question you were asking you like w sorry, that's just something that I wanted to get off my chest, I guess,
[00:01:59] straight, straight into therapy.
[00:02:09] No one on this. I was just say, no one on this call really has problems writing, writing content. I mean, there's people like Divya who just can't help, but write a blog post today, or are you over that hump now? Divya, can you, can you resist the urge to do that now?
[00:02:22] Divya Tagtachian: [00:02:22] I feel like, I think, uh, Chris Corea called me out at one point where he was like, you're the kind of person that doesn't blog.
[00:02:29] And then one day decides I'm going to blog every day and then just produces content and then disappears off the face of view. That's my style. I'm okay with it. Yeah. I'm honestly, I'm fine with that. Cause I'm just like, then I'm consistent for like a short
[00:02:44] Phil Hawksworth: [00:02:44] yeah. I love that. I'm consistent for a short period of time.
[00:02:48] Me too. I'm consistent in very short shot.
[00:02:53] Divya Tagtachian: [00:02:53] No, but then I'm consistent when I say I am, I'm just like, Hey everyone, I'm going to be consistent during this time. And then I am. Rather than like forever and people expect things of me. And then I
[00:03:04] Cassidy Williams: [00:03:04] that's one of the reasons why I started, uh, my personal newsletter, I was just like, this is going to force me to like continuously produce something.
[00:03:12] And I don't have to like have this record of my blog that I wrote a ton of posts for. And then all of a sudden it falls off the face of the earth, but now kind of like what you said now, people actually care and I have to be consistent and life is hard to know.
[00:03:26] Phil Hawksworth: [00:03:26] Okay. How long have you been doing that newsletter?
[00:03:30] Cassidy Williams: [00:03:30] I think it's this? I think this is year three.
[00:03:33] Phil Hawksworth: [00:03:33] Wow.
[00:03:33] Cassidy Williams: [00:03:33] Yeah, I've been doing it for awhile. Yeah. It's every week. There've been a couple where I haven't done it. For example, when I got married, because that was
[00:03:43] Jason Lengstorf: [00:03:43] very busy.
[00:03:45] Cassidy Williams: [00:03:45] Instead I released the class I made that was a bad week. Cause I didn't do my newsletter, but I released an online course.
[00:03:53] And so like I was getting married, but I was also getting so many messages like, Hey, could you explain this lesson? And I was like, what have I done? It was a very poor planning and I don't recommend
[00:04:04] it.
[00:04:05] Jason Lengstorf: [00:04:05] Wow. Yeah. So
[00:04:07] Cassidy Williams: [00:04:07] like
[00:04:08] Jason Lengstorf: [00:04:08] that, the thing is something that's, that's been, um, that's been this battle that I've been fighting for, like my whole life.
[00:04:15] Right. Because I, I have this, my personality type is I either get it right. Or it's not worth doing. And that's led to a lot of situations where I will say like, I'm going to be consistent and write every week or I'm going to be consistent and go to the gym three times a week or something like that. I'll set some kind of a personal goal.
[00:04:35] And then the very first time that I screw it up. I'm like, well, that was a waste of time. I'm a failure. Let's move on to the next thing. And I just never revisit that, that challenge. Um, so like Cassidy, you said, like you said that like, you're that type of person as well.
[00:04:50] Cassidy Williams: [00:04:50] That's incredibly accurate to so many things there.
[00:04:53] There've been so many times, I'm just like, I'm going to do a pushup every day and just increase the count of pushups every day. And then I miss one day and I'm like, well, guess I'm never doing a pushup again. And I haven't done a pushup in five years. But it's it's. Yeah, that's just a small example of that's how I've been with so many different projects of mine, where like, as soon as it starts not being perfect to my mental standards that I've set for myself, I just kind of drop it off because I want everything
[00:05:24] to
[00:05:24] be perfect.
[00:05:25] Phil Hawksworth: [00:05:25] There's something brilliant in that, that you just said as well about, um, I want to do a pushup every day and you know, I'm not going to start bragging and suggest that I can do. More than two pushups in any given 24 hour period. But I love, I love the fact that I'm doing a pushup a day and having something which is bite size is really important.
[00:05:45] And that's, that's for writing content. That's really important as well. I don't want to do like a 10 hour workout every day when I'm racing and I want to be able to do something which is bite-sized and achievable. But that's a different discipline in and of itself, you know, writing something sure. Can be hard.
[00:06:01] And I know that's why I'm, I, I, I really enjoy your, your newsletter because it's really concise. And does that, does that? I take a lot of discipline together, so that's always just like, Oh, well, that's, that's the format you've already always had throughout.
[00:06:13] Cassidy Williams: [00:06:13] It, it has. So it's always been somewhat concise, but man keeping it that way and, and it probably takes like three hours a week of to actually produce it and stuff.
[00:06:24] Just because like, for example, this past week, w there's a little segment in there where it's just something that interested me this week and sometimes I have a ton to write and sometimes I, I just don't know what to do. And last night I, it took me a solid. 45 minutes to put together a paragraph of just like things that I produced this week at work.
[00:06:44] They didn't, it's, it's a lot, that's something yeah. That I admire about Divya. She's able to write very great, concise blog posts. And that's, that's something that man. Aye. Aye. I always get too verbose on the takes too long. And. Conciseness is very,
[00:07:01] Jason Lengstorf: [00:07:01] I think about that a lot. Like there's this quote that I think is incorrectly attributed to Mark Twain.
[00:07:06] That is, uh, I, I would have written you a shorter letter, but I didn't have time. Um, and so like, that's something that I've always, I'm always asking Divya to teach me how to write short content. Cause I don't think I can get under 1500 words if I start writing
[00:07:21] Divya Tagtachian: [00:07:21] one of the things for me, it's like, it's also part of like what Cassidy was saying that.
[00:07:27] I used to write a lot of really super long posts. Um, but the, the, the problem with that is I get bored of it. And then I get tired. And like, what happened? I think in Phil knows this a lot. Cause I would write a really long blog post and they wouldn't, he would just say the attack. Cause I just wouldn't, I'd be so tired of writing it cause I've been like massaging it and it's interesting.
[00:07:51] Cause for longer posts, it ends up being the top half. Like, it's almost like, um, yeah, it's, it's just the top very well done. And then the bottom half is garbage is like the hateful eight movie part one. It was so good. And then
[00:08:05] Cassidy Williams: [00:08:05] part two just got paeds up or like lost. They just kind of gave up that last season.
[00:08:11] Oh,
[00:08:11] Divya Tagtachian: [00:08:11] yeah, exactly. They were just like, we don't know we're done.
[00:08:15] Phil Hawksworth: [00:08:15] Perfect. That's the perfect analogy for all of my blog, post writing. It's like all of this work that I put in at the start and it's like, yeah, I'm really making good points and I'm finessing the language and I'm doing a really good job. I cannot be bothered to finish it.
[00:08:27] Yeah. It was all a dream or they're all dead already. I can't.
[00:08:33] Jason Lengstorf: [00:08:33] How do you break that? I guess. Where did you change that changed that for you?
[00:08:38] Divya Tagtachian: [00:08:38] I mean, I think one of his time boxing, um, and like when I did January, I time boxes. So I was like, I'm only doing this for like X amount of time. And so that gave me the rush of just being like, you don't have time.
[00:08:51] You need to like really get this over with, um, And then the other thing is also like often, and I'm guilty of this even today where I'll write something and then the post, like meanders and I don't know the point that I'm trying to make. And I think it's like, as a writer, if I'm having difficulty with that, can't even imagine from a Rita's perspective, they'd be like, I don't know what point you're trying to make.
[00:09:12] Um, and so for me, it's just like, Trying to be very concise about, I want to explain this thing and then just doing that. And then when I think I've sufficiently done that, that's it. And some, and oftentimes that's really short. I'm just like done the thing explained and then conclude it. Um, and I think that keeps you.
[00:09:34] On track quite easily. Cause one, your posts are short. They explain the thing that you said you will explain, and they're easy to read and digest. So like the trans people are reading. It is also super high because, um, if a post is short, people will read it. If a post is super long people bookmark it
[00:09:51] Cassidy Williams: [00:09:51] and never get to it.
[00:09:52] Yeah. It'll be just a tab that they never closed because it was like, I should read this at some point. There's a newsletter that I really admire on that front. Uh, ADA fruit. Um, the, the heartburn newsletter, they have a newsletter that like, it's literally, sometimes it's just two sentences where it's just like, Hey, did you know, you could do this with a MOSFET or whatever, and that's it.
[00:10:12] And it's great. And it's one that I read all the time, because it's so short. And I think that's a good point that you made, like when it's short people actually read it. And so it's important to have the skill, to be able and, and exercise that muscle to be able to just write it and conclude it. I
[00:10:28] Divya Tagtachian: [00:10:28] think there's value.
[00:10:29] There's also value in longer posts. Like I think it's a balance, right? So like there are times when I'll write a short posts. Cause short posts are really nice to like quickly explain a thing. But oftentimes, I mean, not oftentimes there are times when. A longer pole, a longer post adds nuance and context that a short post con do.
[00:10:49] Um, so for example, and this is useful for whenever I write something, I'll write something super short and then I'll realize, Oh, I wanted to flesh out this idea and then I'll write a longer post. And like that one ends up being harder to write, but then. It's nice to refer back to the previous, the shorter posts.
[00:11:05] Cause I'll be like, I wrote this post. If you don't have time, go read this other post. It's really short and lacks all this extra context. If you don't want it and don't care what
[00:11:14] Jason Lengstorf: [00:11:14] you just said, kind of connected a dot for me, where I I'm realizing why that design systems post was so hard for me, because a lot of the tutorial stuff is, is very straight forward.
[00:11:24] It's like, I know exactly what I'm talking about. I'm connecting point a to point B. But with something like that design systems post it's like this isn't, this isn't how to build a thing. This is, how do you think about this? Like how do you build a mental framework around this pretty squishy concept? And a lot of it is me like interpreting somebody else's information and then trying to repeat that back in a way that is not disingenuous to the original conversation, but is also representing like.
[00:11:53] An expanded view on that. And I found like, as I was writing this post, my initial intention was to do like a three things I learned from Dan mall about design systems. And as I would get into a thing, I was like, Oh, I need to expand on that. Cause that, that, that idea doesn't make sense. So I start writing like a preface to that section that ended up being a blog post.
[00:12:12] I actually in writing the three, the three parts to this series, I ended up also writing two additional blog posts on my own site. That were like context that I could link to from the series for like an idea that I was going to make. Like, I have this whole thing about drawing the box smaller when you're explaining something.
[00:12:30] I, there was no way for me to make that analogy without being able to link to something for context. Cause it's this, you know, 1500 word analogy of like how to communicate the impact of the system when you're, when you're like trying to get somebody to adopt it. I don't know how to make that smile. Um, but, but anyways did, to reign that back in, I guess what I'm saying is like the, the place of a big post, it makes sense to be long when you're doing something squishy.
[00:12:59] Like when you're trying to argue a point, you don't want to go for brevity because you're going to get misinterpreted or you're going to skim over something. That's actually like the hardest part, you know, you don't want to end up in a situation where you pose an idea and the end of the post is like, yeah.
[00:13:13] And I'll draw the rest of the owl. Um, and, and so I think that's, that's, uh, that's a good heuristic and maybe a good reminder to me to like only write those, those, like conceptual posts once in a while, because they take a lot
[00:13:27] Phil Hawksworth: [00:13:27] out of you. Yeah. I think they definitely do the thing. I find hard when I'm trying to, I don't know, make an argument or make a case for a particular, you know, um, approach or what have you, in a, in a blog post is I, I find that I.
[00:13:42] I find it hard to resist the temptation, to put every point that I can think of in there, like every argument that supports it. Whereas sometimes that can come off. I think a bit as like a little bit, um, I don't know, maniacal it's like, it's like the it's like someone just like ranting and say, Oh, and another thing and another thing.
[00:13:59] And I find it really hard to resist the temptation to try and shoehorn every supporting point I can think of in there rather than just picking the few that people will, I don't know, relate to the best or. Are easiest to convey and just, just putting those in and then leaving the other stuff out because you know, there's a general, yeah.
[00:14:17] It could become noise. I, I find that really hard and that's why I kind of join the dislike masterclass that jam Yuri turned into watching Divya make a single point. And when she could have said 10 of the things about this. But that's fine. There's a lot of other days in the month of January to make a point that you can come and take it okay.
[00:14:37] At that angle as well. And, you know, picking a single thread and making that point. Well, uh, it's something, something I need to do need to do better at. Um, but I've got a bigger problem when it comes to writing blog posts. And that's not about the formulation of the content or. Getting over writer's block.
[00:14:52] It's trying to resist the temptation to redesign the entire platform that I'm blogging on. Every time, every time I write a blog post, um, we're all developers on here and, you know, I think it's a temptation that we've all wrestled with a little, but I mean, how, how, how often have you all read it, engineered your blog or your site or anything like that?
[00:15:13] Is, is that something you do over and over again? Or is that just me? I
[00:15:18] Cassidy Williams: [00:15:18] definitely have built just a little code pens for myself where, like, for example, I have an interview question of the week in my newsletter, as I gather people's responses to it. I have a code pen that process. This is everything in generates the, uh, HTML and Mark down that I can put into my, uh, Like little newsletter, CMS.
[00:15:38] And I basically have been doing that more and more and more so that way I can do it just ever so slightly faster. Cause I was manually writing every single link, every single name, every single thing in there. And that gets long.
[00:15:52] Phil Hawksworth: [00:15:52] That's not smart. I haven't really thought about using code code pen as a tool for that kind of thing.
[00:15:57] I always think of it as like demos and, you know, and, and that kind of, that kind of stuff, but using it as a tool, as part of a workflows. Interesting. I like that.
[00:16:05] Cassidy Williams: [00:16:05] Yeah. It's really just like glorified text areas that I manipulate with jobs with JavaScript and then get an output. But again, it's, it's quick and I don't have to deploy anything.
[00:16:15] I can just put it in there and go.
[00:16:17] Jason Lengstorf: [00:16:17] I feel like I used to redesign. My personal site, like langstroth.com constantly. And then a few years ago, I, it, it's interesting because it's like, I, I have the thing that I fiddle with. And so I fiddled with langsdorf.com forever. And then when learn with Jason started, I suddenly had a new medium to fiddle with.
[00:16:40] So now most of my fiddling happens with like interactive stream stuff, as opposed to like personal site stuff. But at the same time, I also just pushed a whole bunch of changes to learn that Jason's not dev like over the weekend. Right. So it's like always influx, but I haven't done the, I haven't raised it to the ground and like redesigned the site quite awhile.
[00:17:02] I'm, I'm much more incremental about it. But I think I actually, something that I thought about that I, that I think is a really, really good point. Um, is Crispus guardian, Joel hooks, and a whole bunch of other people in the community have been having these conversations where they've, they've been trying to change the idea of a blog into something that they call a digital garden.
[00:17:23] And the, the goal of that whole thing is to remove these barriers. Like you don't have to have the site perfect. Before you ship. You don't have to have the post perfect. Before you publish it. You just kind of take notes as you're learning, you know, make changes as you learn them. And the sites slowly evolves over time.
[00:17:42] The posts might evolve over time. Like maybe they started as a bulleted list. That's like, Oh, I learned how to do a thing. Step one, step two, step three. And then as you do it a couple more times, you're like, Oh, I have some nuance. Let me expand this into a tutorial. Um, but it, it starts to really lower this barrier where like, ultimately what you're doing is, is journaling.
[00:18:00] Or, or if you take it like way back to, you know, like Darwinian trends, it's a, it's something called commonplace where the idea is that you like capture and catalog things that you're learning over time. And it starts to let you create this external mental map of what you're doing, learning what, you've, what you've started to connect, how you are thinking about things.
[00:18:22] And that's how like big ideas emerged over time. Um, so getting away from that idea of getting it perfect, like you don't have to wait for your site to be perfectly designed before you ship it. You don't have to have every single feature in place. You don't have to have every word. Correct. Just hit the button, send it live, make it better later.
[00:18:40] It's it. You can always have time to them.
[00:18:42] Cassidy Williams: [00:18:42] There's a tool that I highly recommend for this and it's called a dabble me. Uh, it's dabble.me is the website. And it's a tool that I've used. For years I've, I've used it since my freshman year of college. So it's, I've been using it for a long time, but what it is, it's, it's like this digital garden thing, it's, it's, uh, it's an online journal, but the way it works is it emails you every day.
[00:19:04] And it just says, how did your day go? And you respond back to the email and that logs it as an entry. And then sometimes in that email, they'll say, Hey, how'd your day go? Five years ago you wrote and it'll explain it. And so I have these posts from years and years and years ago, and, and first of all, it's fun to see the technical ones where it's, there's one where I like learned Emacs.
[00:19:23] And I was just like, man, this is the coolest thing I've ever
[00:19:26] Phil Hawksworth: [00:19:26] seen
[00:19:27] Cassidy Williams: [00:19:27] that changed, but fun to see those really old posts. Cause there's like technical ones and also personal ones. Like it was fun to be just like, Hey, I think I might move to New York city or, and stuff like that. And, uh, It's been really great just to have that little thing kind of like what you said, Jason, you just write it and you don't have to worry about what it looks like.
[00:19:49] Yeah. And, and because it's something hosted by someone else, I don't worry about the look and feel of it. It's just about the content. And then if there's any, if there's anything in there ever, anything that I want to remember or pull back later, I can just go get the content and put it on something more public.
[00:20:05] But yeah, it's a nice personal tool that I, I highly recommend again, I've been using it for years and. It's absolutely worth it.
[00:20:12] Phil Hawksworth: [00:20:12] How often do you get those emails back from yourself? Is that, is that
[00:20:16] Cassidy Williams: [00:20:16] okay? Every day now? So again, because I've been using it. Oh, dang. When did I start using it? 2010. Yeah, I've, I've been using it for a long time.
[00:20:25] Uh, I'll get those emails constantly because I have so much content, um, like a, I I'm starting to get the like, wow. I graduated college, ah, type of things because it's like early may and it's fun to see those old ones now. Um, but, uh, they, they start coming pretty quickly. Once you get like a month worth of content.
[00:20:46] Um, and sometimes it'll be just like, Hey, one week ago you wrote, and then sometimes it'll be. Much longer, like three months ago you wrote one year ago you wrote that kind of thing. It's great.
[00:20:55] Phil Hawksworth: [00:20:55] We worked just to relive some of these things. Yeah,
[00:20:59] Cassidy Williams: [00:20:59] yeah. No, some of it is very cringy.
[00:21:01] Phil Hawksworth: [00:21:01] Yeah, I can never really depend on the good decision making of past affiliate.
[00:21:06] He was
[00:21:07] Cassidy Williams: [00:21:07] an idiot. It's fun. There's some of them where it's like me trying to decide what class I'm going to take in college or, or what job I want to interview for and stuff. And it just says like, dear, future Cassidy, I envy your resolve and I'm just like summer child. That's great.
[00:21:26] Jason Lengstorf: [00:21:26] Cassidy. Uh, if you were going to start your blog today, What would you build it with?
[00:21:33] Like if you were going to start from only, I
[00:21:35] Cassidy Williams: [00:21:35] first started from zero, zero, uh, I'm kind of anti CMS. Myself. So I'd probably, this sounds like I'm just going to be plugging the blog post I wrote recently, but I would probably build it with next and have it marked down enabled. Um, and I would have a lot more custom components than I put in my tutorial.
[00:21:56] Like, uh, what's great about it is it has all of these, uh, Great. Just static generation tools that you use. You can customize the head, you can customize all of the different navigation and links yeah. And things. Um, and so, yeah, I'd probably use next and Mark down and build a bunch of. Widgets. So that way I could have like embed a code pen in this post or, um, enable search in certain posts and, and, or among all of them posts and stuff.
[00:22:23] I, that, that's probably what I would use. And then yeah, work way too hard to add lots and lots of features to it.
[00:22:32] Phil Hawksworth: [00:22:32] I think it's reasonable by the way to say I'm anti CMS for your own, your own blog. You know, if you're, if you're the author, I think that's completely reasonable. I mean, I, I kind of I'm in the same boat.
[00:22:43] I like to abstract the content from the style so that I can move things around, but I don't need to have an entire CMS to do that is, you know, it's whatever means that you can expedite kind of creating stuff, I think. But, um, I'm curious about the, like the. The widgets and the different content types you're talking about and how, how much those might kind of drift into the content itself, you know, does it, does it mean that you're, you invest more and more in some kind of cool things there, but later on, if you need to move around, it's harder.
[00:23:15] And does it matter? I mean, it doesn't necessarily matter does it, but I'm kind of, I'm always interested in kind of weighing those things up when I'm tinkering with my employees.
[00:23:23] Cassidy Williams: [00:23:23] Yeah, no, I, well things like, for example, lay tech formulas, like. I don't do a lot of things like that, but I love being able to have them in there if I, if I wanted to.
[00:23:33] And so being able to have those kinds of smarter widgets are really cool. There is one quick side note, one person that I saw recently where they actually hacked their notion, um, and like pointed a website on top of it. So they actually did all of their blogging and all of their management of everything in notion, but they like.
[00:23:54] Deployed it to a site that added CSS, a JavaScript on top of their notion pages. So that way they could kind of use notion as a CMS of sorts and do that. So they could have all of those widgets and stuff that were actually built into the page without having to build it
[00:24:09] Jason Lengstorf: [00:24:09] themselves. Bill, I want to ask you the same question.
[00:24:12] Like if you were starting from zero, where would, what would you do?
[00:24:14] Phil Hawksworth: [00:24:14] I think I'm pretty close to where I would. B, I would tidy it up a heck of a lot, but I mean, I've, I've my, my blocks traveled around a little bit, you know, I had a WordPress blog for a long time. Um, and in fact, before I had a WordPress blog, I just had a site that I made my, made myself out of, you know, with hammer and chisel.
[00:24:35] Um, and then I, you know, then it moved to WordPress. Um, then it moved to. I think it went to wordpress.org and then a self hosted one that I kind of built myself, um, then to Jackal, um, big fan. And that's probably where I started getting into, you know, starting size rented sites and all those kinds of things.
[00:24:54] Um, yeah. Uh, the, uh, for a little while it was on Hugo, um, again, I was like, Oh, try and just trying out other tools that will make what I'm already doing a little bit easier. Um, at the moment I use eleventy to, to, to rent it out. And I'm really happy with that at the moment. Cause I understand the pieces for me.
[00:25:12] There's a, there's a lot to be said for understanding all of the pieces, which I cannot say that I've. Always had there's very often been lots of magic for me that I like, Oh, this works for some reason. And I can just about finagle it to do the things that I need. And, you know, the I'm remainder it, remembering, just writing bits of Ruby in my writing gems for my, uh, Jekyll site to do some of the things that build time that I needed to do that.
[00:25:38] I got to work, but didn't. If I'm completely honest, if it's just, if it's just the four of us listening to this, I didn't really understand what it was, the stuff that I was doing, but now, but now I'm happy because I'm in JavaScript land, you know, all of this stuff that I'm writing is, you know, it's generating HTML.
[00:25:53] I'm using JavaScript to do that, but no build time. And I understood all those pieces. So I'm, I kinda liked that. I'll be, I'll be very honest. It's, uh, you know, I'm in the situation where I can slip in content from different APIs at build time. Because lots of API has exists for you. No, for Twitter or for Instagram or for a few other places that I have my content, I feel pretty good about that.
[00:26:16] And at the moment it's all marked down the content content. Um, I don't really feel the need kind of like Cassidy to add a CMS. So I would like to re. Do all of the stuff that I have, but using the same tools, but use it doing it better. It's more of a refactor than a replatform. Um, and I ha I'm kind of midway through doing that with tailwind CSS.
[00:26:38] So I can use utility CSS because I find that that's a fun corner to turn as well. We could probably have an entire different discussion about that. That's. That'll probably elicit some opinions from people. Um, but, uh, I've had fun doing that, but yeah, I think I'd just like to refactor rather than replatform in the moment.
[00:26:56] Surprisingly happy. Vivian, do you have
[00:26:58] Jason Lengstorf: [00:26:58] a, uh, a differing opinion here?
[00:27:01] Divya Tagtachian: [00:27:01] Really? I think, um, I see the value in a CMS. I don't use a CMS. I actually use Hugo. Um, and I only do it because like it's, it's pretty simple and it's really fast to build, um, And super lightweight. It's a really lightweight framework with like a lot of theming and stuff like tooling around it, which is really cool.
[00:27:22] Um, yeah, I think I echo Phil's sentiments in that there are parts of Hugo cause Hugo has like so many different pieces to it that it can get pretty complex when you want to do anything custom. So you have to know a lot about you going in order to do a lot of that work. Um, so like my blog isn't super.
[00:27:43] Like fancy in any way, just because I'm purely, like, I don't, I don't want to think of too much on it. Cause I tend to also do that and then get distracted from what the point of having a blog is. Um, but yeah, I think there's value in having a CMS as well, because I think for me, I mean, I think I've shared this opinion before, but I kind of feel like I'm in, I'm in the minority in terms of not really enjoying writing Mark, Don, um, Just because I find it really clunky and, uh, it's not very pretty.
[00:28:16] The thing that I do that makes writing markdown nice is I use an app called bear. Um, and it makes it beautiful. It's still marked on cause you use the tags, but it converts it. So it's easy to like, right. It feels like a better writing experience overall. But in general, I hate writing Mark Don. Um, and so for me, I'll write stuff in bear and then port it over to, to like the Hugo template, which is in Mark Dawn itself.
[00:28:43] Um, and so with CMSs, um, particularly I've seen like so much, so many people use the CMS as a way of like, it gives the writer more control, especially in terms of layout. Um, There's often a lot of tooling around CMSs that give you control. If you're not technical. I mean, all of us are technical, but if you're not technical, you can like drag and drop stuff and make things look beautiful.
[00:29:06] Also for on the go writing. It's really nice. Cause sometimes you're like, Oh, I want to write a blog post and I'm on my phone. And I cannot ride my
[00:29:14] Cassidy Williams: [00:29:14] tunnel on my foot.
[00:29:16] Divya Tagtachian: [00:29:16] I mean, you could there, but you would have to like port it and you can't really publish it easily. Um, and so if you were to use a CMS, you could easily do that.
[00:29:25] You could just like ongoing or whatever, just like do it on your phone and then publish. And then it's out in the world, even though you're not on your computer, which I think there's so much value in doing that.
[00:29:37] Cassidy Williams: [00:29:37] I really love the bear mobile writing experience and they actually added a plugin that will let you deploy a note to WordPress.
[00:29:44] Um, Oh
[00:29:45] Divya Tagtachian: [00:29:45] yeah. I just see that.
[00:29:46] Cassidy Williams: [00:29:46] Yeah, it's cool. Pretty dang. Cool. I love it. I wish it weren't iOS only.
[00:29:52] Divya Tagtachian: [00:29:52] Yeah, I know I'm on Android, so I can't.
[00:29:55] Cassidy Williams: [00:29:55] Yeah. Yeah. I've definitely started making a web version of it and editors are hard, but someday.
[00:30:04] Jason Lengstorf: [00:30:04] So I guess the takeaway from this is that for someone who is going to start their own blog, uh, if I'm understanding what everyone just said, you should use a tool that you like.
[00:30:19] Don't overthink it. And remember that you get to iterate over time, uh, both the code and the content. So, um, just get something out there and start creating content because the content itself is valuable, no matter where you are in your career, no matter what it is you're teaching about, no matter whether a thousand other people have written, what you consider to be the exact same article, um, your perspective, your, your moment in time, your takeaways.
[00:30:45] Are going to help somebody else go forward and, and, uh, and so, you know, make sure that you get your voice out there and, and, and just do it. Don't get bogged down in the technical details. Don't get bogged down in the editing details. Just, just ship it. Any, any parting words from anybody before we
[00:31:00] Cassidy Williams: [00:31:00] basically sounds like the conclusion is don't do what we do.
[00:31:06] Jason Lengstorf: [00:31:06] Like
[00:31:06] learn from our
[00:31:07] mistakes, please.
[00:31:11] Phil Hawksworth: [00:31:11] I'm
[00:31:11] trying to remember if it was Jeremy, Keith, who was, who had this really nice point about drafts folders? I think he was saying like, drafts folders are your enemy. That's where blog posts and ideas and thoughts go to die. Um, so just don't have a drafts folder, just write stuff and ship it, which I know is easier said than done, but I think that's, that's wonderful advice.
[00:31:35] Cassidy Williams: [00:31:35] Well, I hope you, I found that remotely. Interesting. Ha. I know I did because I'm remote and I hope I'm interesting. Yeah. I haven't been interesting in a long time anyway, peaked early. So I hope you enjoyed this podcast. If you'd like to learn more about us, you can check out our show notes, then you can also ping us on Twitter.
[00:31:54] We're all pretty online people. And so we will respond to you as soon as we can. Thanks so much until next time.
Welcome to Remotely Interesting brought to you by Netlify.
People who were remotely interesting:
Join us as we take their first stab at this podcastin' venture! We were so excited this episode turned into a two-parter.
Part I: The Jamstack & A Static-First Future
Phil tells the tale of two identical names but one that looked like someone accidentally had the caps lock on (JAMstack) and how it made much, much sense to readjust the name to look normal (Jamstack).
Then we take a journey into the future as Divya leads us in a discussion about the static-first future of the web to come.
We also discuss some interesting projects and how we have seen the community work together through these trying and remote times aka Code in the Time of COVID-19.
Part II: Libraries & Frameworks + What Comes Around Codes Around
We've all worked with a number of frameworks and libraries. So, what was good about them, and what doesn't work for us? Discussing the highlights and not-so-great aspects we see how many similarities these different libraries and frameworks have. And get this, we don't' even break out into raucous, name-calling spat!
SHOW NOTES:
"Today in Jamstack"
"Fun things we've seen on the web"
"What makes a good framework?"
As always, we hope you find it remotely interesting.
TRANSCRIPT
Cassidy Williams: [00:00:00] Hello, and welcome to remotely interesting.
[00:00:02] Phil Hawksworth: [00:00:02] This is remotely interesting.
[00:00:05] Divya Tagtachian: [00:00:05] That seems a little presumptuous.
[00:00:07] Sarah Drasner: [00:00:07] That's the name on the show
[00:00:08]Phil Hawksworth: [00:00:08] today? We've got myself, Phil. We've got Jason. We've got Cassidy and we've got Divya. We're talking mostly today about, I dunno, writing blog posts the process of coming up with content.
[00:00:19] Staying disciplined and getting things out into the world, the kind of platforms we, we like and a few other bits and pieces along the way. So we hope you enjoy the podcast. We hope you'll join us all the way through and then times to come as well. He comes to podcasts. Now we'll probably have another little world at the end of the show.
[00:00:36] Okay. Enjoy.
[00:00:46] So who's been blogging recently. I've fallen off the wagon a little bit. Has anyone been writing blog?
[00:00:51] Jason Lengstorf: [00:00:51] I have. Um, I, so I, I did this thing where like, I've been trying to do a lot of multi purposing of content and, and that has been really, really effective usually. Uh, but I tried something that I haven't tried before.
[00:01:07] So like usually what I do is I have an episode to learn that Jason and we build something and then I've got like this mostly finished piece of code that I can Polish up and write a tutorial about. And that's a really easy process because it's like the code's already there. I already built it. So I can just write down what I did.
[00:01:21] Um, but I did this new thing where I, I wrote a post. With, uh, with Dan mall where he and I had this, this big discussion about design systems. And, um, I was like, Oh, this will be easy. It was not easy. It ended up being like a three part series it's, you know, thousands and thousands of words. I'm trying to make sure I'm accurately representing, uh, what Dan said.
[00:01:42] Um, but it's like prevented me from writing anything else, like two and a half weeks, because it's so much work to get it right. Um, but I feel like that wasn't the question you were asking you like w sorry, that's just something that I wanted to get off my chest, I guess,
[00:01:59] straight, straight into therapy.
[00:02:09] No one on this. I was just say, no one on this call really has problems writing, writing content. I mean, there's people like Divya who just can't help, but write a blog post today, or are you over that hump now? Divya, can you, can you resist the urge to do that now?
[00:02:22] Divya Tagtachian: [00:02:22] I feel like, I think, uh, Chris Corea called me out at one point where he was like, you're the kind of person that doesn't blog.
[00:02:29] And then one day decides I'm going to blog every day and then just produces content and then disappears off the face of view. That's my style. I'm okay with it. Yeah. I'm honestly, I'm fine with that. Cause I'm just like, then I'm consistent for like a short
[00:02:44] Phil Hawksworth: [00:02:44] yeah. I love that. I'm consistent for a short period of time.
[00:02:48] Me too. I'm consistent in very short shot.
[00:02:53] Divya Tagtachian: [00:02:53] No, but then I'm consistent when I say I am, I'm just like, Hey everyone, I'm going to be consistent during this time. And then I am. Rather than like forever and people expect things of me. And then I
[00:03:04] Cassidy Williams: [00:03:04] that's one of the reasons why I started, uh, my personal newsletter, I was just like, this is going to force me to like continuously produce something.
[00:03:12] And I don't have to like have this record of my blog that I wrote a ton of posts for. And then all of a sudden it falls off the face of the earth, but now kind of like what you said now, people actually care and I have to be consistent and life is hard to know.
[00:03:26] Phil Hawksworth: [00:03:26] Okay. How long have you been doing that newsletter?
[00:03:30] Cassidy Williams: [00:03:30] I think it's this? I think this is year three.
[00:03:33] Phil Hawksworth: [00:03:33] Wow.
[00:03:33] Cassidy Williams: [00:03:33] Yeah, I've been doing it for awhile. Yeah. It's every week. There've been a couple where I haven't done it. For example, when I got married, because that was
[00:03:43] Jason Lengstorf: [00:03:43] very busy.
[00:03:45] Cassidy Williams: [00:03:45] Instead I released the class I made that was a bad week. Cause I didn't do my newsletter, but I released an online course.
[00:03:53] And so like I was getting married, but I was also getting so many messages like, Hey, could you explain this lesson? And I was like, what have I done? It was a very poor planning and I don't recommend
[00:04:04] it.
[00:04:05] Jason Lengstorf: [00:04:05] Wow. Yeah. So
[00:04:07] like
[00:04:08] that, the thing is something that's, that's been, um, that's been this battle that I've been fighting for, like my whole life.
[00:04:15] Right. Because I, I have this, my personality type is I either get it right. Or it's not worth doing. And that's led to a lot of situations where I will say like, I'm going to be consistent and write every week or I'm going to be consistent and go to the gym three times a week or something like that. I'll set some kind of a personal goal.
[00:04:35] And then the very first time that I screw it up. I'm like, well, that was a waste of time. I'm a failure. Let's move on to the next thing. And I just never revisit that, that challenge. Um, so like Cassidy, you said, like you said that like, you're that type of person as well.
[00:04:50] Cassidy Williams: [00:04:50] That's incredibly accurate to so many things there.
[00:04:53] There've been so many times, I'm just like, I'm going to do a pushup every day and just increase the count of pushups every day. And then I miss one day and I'm like, well, guess I'm never doing a pushup again. And I haven't done a pushup in five years. But it's it's. Yeah, that's just a small example of that's how I've been with so many different projects of mine, where like, as soon as it starts not being perfect to my mental standards that I've set for myself, I just kind of drop it off because I want everything
[00:05:24] to
[00:05:24] be perfect.
[00:05:25] Phil Hawksworth: [00:05:25] There's something brilliant in that, that you just said as well about, um, I want to do a pushup every day and you know, I'm not going to start bragging and suggest that I can do. More than two pushups in any given 24 hour period. But I love, I love the fact that I'm doing a pushup a day and having something which is bite size is really important.
[00:05:45] And that's, that's for writing content. That's really important as well. I don't want to do like a 10 hour workout every day when I'm racing and I want to be able to do something which is bite-sized and achievable. But that's a different discipline in and of itself, you know, writing something sure. Can be hard.
[00:06:01] And I know that's why I'm, I, I, I really enjoy your, your newsletter because it's really concise. And does that, does that? I take a lot of discipline together, so that's always just like, Oh, well, that's, that's the format you've already always had throughout.
[00:06:13] Cassidy Williams: [00:06:13] It, it has. So it's always been somewhat concise, but man keeping it that way and, and it probably takes like three hours a week of to actually produce it and stuff.
[00:06:24] Just because like, for example, this past week, w there's a little segment in there where it's just something that interested me this week and sometimes I have a ton to write and sometimes I, I just don't know what to do. And last night I, it took me a solid. 45 minutes to put together a paragraph of just like things that I produced this week at work.
[00:06:44] They didn't, it's, it's a lot, that's something yeah. That I admire about Divya. She's able to write very great, concise blog posts. And that's, that's something that man. Aye. Aye. I always get too verbose on the takes too long. And. Conciseness is very,
[00:07:01] Jason Lengstorf: [00:07:01] I think about that a lot. Like there's this quote that I think is incorrectly attributed to Mark Twain.
[00:07:06] That is, uh, I, I would have written you a shorter letter, but I didn't have time. Um, and so like, that's something that I've always, I'm always asking Divya to teach me how to write short content. Cause I don't think I can get under 1500 words if I start writing
[00:07:21] Divya Tagtachian: [00:07:21] one of the things for me, it's like, it's also part of like what Cassidy was saying that.
[00:07:27] I used to write a lot of really super long posts. Um, but the, the, the problem with that is I get bored of it. And then I get tired. And like, what happened? I think in Phil knows this a lot. Cause I would write a really long blog post and they wouldn't, he would just say the attack. Cause I just wouldn't, I'd be so tired of writing it cause I've been like massaging it and it's interesting.
[00:07:51] Cause for longer posts, it ends up being the top half. Like, it's almost like, um, yeah, it's, it's just the top very well done. And then the bottom half is garbage is like the hateful eight movie part one. It was so good. And then
[00:08:05] part two just got paeds up or like lost. They just kind of gave up that last season.
[00:08:11] Oh,
[00:08:11] yeah, exactly. They were just like, we don't know we're done.
[00:08:15] Phil Hawksworth: [00:08:15] Perfect. That's the perfect analogy for all of my blog, post writing. It's like all of this work that I put in at the start and it's like, yeah, I'm really making good points and I'm finessing the language and I'm doing a really good job. I cannot be bothered to finish it.
[00:08:27] Yeah. It was all a dream or they're all dead already. I can't.
[00:08:33] Jason Lengstorf: [00:08:33] How do you break that? I guess. Where did you change that changed that for you?
[00:08:38] Cassidy Williams: [00:08:38] I mean, I think one of his time boxing, um, and like when I did January, I time boxes. So I was like, I'm only doing this for like X amount of time. And so that gave me the rush of just being like, you don't have time.
[00:08:51] You need to like really get this over with, um, And then the other thing is also like often, and I'm guilty of this even today where I'll write something and then the post, like meanders and I don't know the point that I'm trying to make. And I think it's like, as a writer, if I'm having difficulty with that, can't even imagine from a Rita's perspective, they'd be like, I don't know what point you're trying to make.
[00:09:12] Um, and so for me, it's just like, Trying to be very concise about, I want to explain this thing and then just doing that. And then when I think I've sufficiently done that, that's it. And some, and oftentimes that's really short. I'm just like done the thing explained and then conclude it. Um, and I think that keeps you.
[00:09:34] On track quite easily. Cause one, your posts are short. They explain the thing that you said you will explain, and they're easy to read and digest. So like the trans people are reading. It is also super high because, um, if a post is short, people will read it. If a post is super long people bookmark it
[00:09:51] and never get to it.
[00:09:52] Yeah. It'll be just a tab that they never closed because it was like, I should read this at some point. There's a newsletter that I really admire on that front. Uh, ADA fruit. Um, the, the heartburn newsletter, they have a newsletter that like, it's literally, sometimes it's just two sentences where it's just like, Hey, did you know, you could do this with a MOSFET or whatever, and that's it.
[00:10:12] And it's great. And it's one that I read all the time, because it's so short. And I think that's a good point that you made, like when it's short people actually read it. And so it's important to have the skill, to be able and, and exercise that muscle to be able to just write it and conclude it.
[00:10:28] Divya Tagtachian: [00:10:28] I
[00:10:28] think there's value.
[00:10:29] There's also value in longer posts. Like I think it's a balance, right? So like there are times when I'll write a short posts. Cause short posts are really nice to like quickly explain a thing. But oftentimes, I mean, not oftentimes there are times when. A longer pole, a longer post adds nuance and context that a short post con do.
[00:10:49] Um, so for example, and this is useful for whenever I write something, I'll write something super short and then I'll realize, Oh, I wanted to flesh out this idea and then I'll write a longer post. And like that one ends up being harder to write, but then. It's nice to refer back to the previous, the shorter posts.
[00:11:05] Cause I'll be like, I wrote this post. If you don't have time, go read this other post. It's really short and lacks all this extra context. If you don't want it and don't care what
[00:11:14] Jason Lengstorf: [00:11:14] you just said, kind of connected a dot for me, where I I'm realizing why that design systems post was so hard for me, because a lot of the tutorial stuff is, is very straight forward.
[00:11:24] It's like, I know exactly what I'm talking about. I'm connecting point a to point B. But with something like that design systems post it's like this isn't, this isn't how to build a thing. This is, how do you think about this? Like how do you build a mental framework around this pretty squishy concept? And a lot of it is me like interpreting somebody else's information and then trying to repeat that back in a way that is not disingenuous to the original conversation, but is also representing like.
[00:11:53] An expanded view on that. And I found like, as I was writing this post, my initial intention was to do like a three things I learned from Dan mall about design systems. And as I would get into a thing, I was like, Oh, I need to expand on that. Cause that, that, that idea doesn't make sense. So I start writing like a preface to that section that ended up being a blog post.
[00:12:12] I actually in writing the three, the three parts to this series, I ended up also writing two additional blog posts on my own site. That were like context that I could link to from the series for like an idea that I was going to make. Like, I have this whole thing about drawing the box smaller when you're explaining something.
[00:12:30] I, there was no way for me to make that analogy without being able to link to something for context. Cause it's this, you know, 1500 word analogy of like how to communicate the impact of the system when you're, when you're like trying to get somebody to adopt it. I don't know how to make that smile. Um, but, but anyways did, to reign that back in, I guess what I'm saying is like the, the place of a big post, it makes sense to be long when you're doing something squishy.
[00:12:59] Like when you're trying to argue a point, you don't want to go for brevity because you're going to get misinterpreted or you're going to skim over something. That's actually like the hardest part, you know, you don't want to end up in a situation where you pose an idea and the end of the post is like, yeah.
[00:13:13] And I'll draw the rest of the owl. Um, and, and so I think that's, that's, uh, that's a good heuristic and maybe a good reminder to me to like only write those, those, like conceptual posts once in a while, because they take a lot
[00:13:27] out of you.
[00:13:28] Yeah. I think they definitely do the thing. I find hard when I'm trying to, I don't know, make an argument or make a case for a particular, you know, um, approach or what have you, in a, in a blog post is I, I find that I.
[00:13:42] I find it hard to resist the temptation, to put every point that I can think of in there, like every argument that supports it. Whereas sometimes that can come off. I think a bit as like a little bit, um, I don't know, maniacal it's like, it's like the it's like someone just like ranting and say, Oh, and another thing and another thing.
[00:13:59] And I find it really hard to resist the temptation to try and shoehorn every supporting point I can think of in there rather than just picking the few that people will, I don't know, relate to the best or. Are easiest to convey and just, just putting those in and then leaving the other stuff out because you know, there's a general, yeah.
[00:14:17] It could become noise. I, I find that really hard and that's why I kind of join the dislike masterclass that jam Yuri turned into watching Divya make a single point. And when she could have said 10 of the things about this. But that's fine. There's a lot of other days in the month of January to make a point that you can come and take it okay.
[00:14:37] At that angle as well. And, you know, picking a single thread and making that point. Well, uh, it's something, something I need to do need to do better at. Um, but I've got a bigger problem when it comes to writing blog posts. And that's not about the formulation of the content or. Getting over writer's block.
[00:14:52] It's trying to resist the temptation to redesign the entire platform that I'm blogging on. Every time, every time I write a blog post, um, we're all developers on here and, you know, I think it's a temptation that we've all wrestled with a little, but I mean, how, how, how often have you all read it, engineered your blog or your site or anything like that?
[00:15:13] Is, is that something you do over and over again? Or is that just me? I
[00:15:18] Cassidy Williams: [00:15:18] definitely have built just a little code pens for myself where, like, for example, I have an interview question of the week in my newsletter, as I gather people's responses to it. I have a code pen that process. This is everything in generates the, uh, HTML and Mark down that I can put into my, uh, Like little newsletter, CMS.
[00:15:38] And I basically have been doing that more and more and more so that way I can do it just ever so slightly faster. Cause I was manually writing every single link, every single name, every single thing in there. And that gets long.
[00:15:52] Phil Hawksworth: [00:15:52] That's not smart. I haven't really thought about using code code pen as a tool for that kind of thing.
[00:15:57] I always think of it as like demos and, you know, and, and that kind of, that kind of stuff, but using it as a tool, as part of a workflows. Interesting. I like that.
[00:16:05] Cassidy Williams: [00:16:05] Yeah. It's really just like glorified text areas that I manipulate with jobs with JavaScript and then get an output. But again, it's, it's quick and I don't have to deploy anything.
[00:16:15] I can just put it in there and go.
[00:16:17] Jason Lengstorf: [00:16:17] I feel like I used to redesign. My personal site, like langstroth.com constantly. And then a few years ago, I, it, it's interesting because it's like, I, I have the thing that I fiddle with. And so I fiddled with langsdorf.com forever. And then when learn with Jason started, I suddenly had a new medium to fiddle with.
[00:16:40] So now most of my fiddling happens with like interactive stream stuff, as opposed to like personal site stuff. But at the same time, I also just pushed a whole bunch of changes to learn that Jason's not dev like over the weekend. Right. So it's like always influx, but I haven't done the, I haven't raised it to the ground and like redesigned the site quite awhile.
[00:17:02] I'm, I'm much more incremental about it. But I think I actually, something that I thought about that I, that I think is a really, really good point. Um, is Crispus guardian, Joel hooks, and a whole bunch of other people in the community have been having these conversations where they've, they've been trying to change the idea of a blog into something that they call a digital garden.
[00:17:23] And the, the goal of that whole thing is to remove these barriers. Like you don't have to have the site perfect. Before you ship. You don't have to have the post perfect. Before you publish it. You just kind of take notes as you're learning, you know, make changes as you learn them. And the sites slowly evolves over time.
[00:17:42] The posts might evolve over time. Like maybe they started as a bulleted list. That's like, Oh, I learned how to do a thing. Step one, step two, step three. And then as you do it a couple more times, you're like, Oh, I have some nuance. Let me expand this into a tutorial. Um, but it, it starts to really lower this barrier where like, ultimately what you're doing is, is journaling.
[00:18:00] Or, or if you take it like way back to, you know, like Darwinian trends, it's a, it's something called commonplace where the idea is that you like capture and catalog things that you're learning over time. And it starts to let you create this external mental map of what you're doing, learning what, you've, what you've started to connect, how you are thinking about things.
[00:18:22] And that's how like big ideas emerged over time. Um, so getting away from that idea of getting it perfect, like you don't have to wait for your site to be perfectly designed before you ship it. You don't have to have every single feature in place. You don't have to have every word. Correct. Just hit the button, send it live, make it better later.
[00:18:40] It's it. You can always have time to them.
[00:18:42] Cassidy Williams: [00:18:42] There's a tool that I highly recommend for this and it's called a dabble me. Uh, it's dabble.me is the website. And it's a tool that I've used. For years I've, I've used it since my freshman year of college. So it's, I've been using it for a long time, but what it is, it's, it's like this digital garden thing, it's, it's, uh, it's an online journal, but the way it works is it emails you every day.
[00:19:04] And it just says, how did your day go? And you respond back to the email and that logs it as an entry. And then sometimes in that email, they'll say, Hey, how'd your day go? Five years ago you wrote and it'll explain it. And so I have these posts from years and years and years ago, and, and first of all, it's fun to see the technical ones where it's, there's one where I like learned Emacs.
[00:19:23] And I was just like, man, this is the coolest thing I've ever
[00:19:26] Phil Hawksworth: [00:19:26] seen
[00:19:27] Cassidy Williams: [00:19:27] that changed, but fun to see those really old posts. Cause there's like technical ones and also personal ones. Like it was fun to be just like, Hey, I think I might move to New York city or, and stuff like that. And, uh, It's been really great just to have that little thing kind of like what you said, Jason, you just write it and you don't have to worry about what it looks like.
[00:19:49] Yeah. And, and because it's something hosted by someone else, I don't worry about the look and feel of it. It's just about the content. And then if there's any, if there's anything in there ever, anything that I want to remember or pull back later, I can just go get the content and put it on something more public.
[00:20:05] But yeah, it's a nice personal tool that I, I highly recommend again, I've been using it for years and. It's absolutely worth it.
[00:20:12] Phil Hawksworth: [00:20:12] How often do you get those emails back from yourself? Is that, is that
[00:20:16] Cassidy Williams: [00:20:16] okay? Every day now? So again, because I've been using it. Oh, dang. When did I start using it? 2010. Yeah, I've, I've been using it for a long time.
[00:20:25] Uh, I'll get those emails constantly because I have so much content, um, like a, I I'm starting to get the like, wow. I graduated college, ah, type of things because it's like early may and it's fun to see those old ones now. Um, but, uh, they, they start coming pretty quickly. Once you get like a month worth of content.
[00:20:46] Um, and sometimes it'll be just like, Hey, one week ago you wrote, and then sometimes it'll be. Much longer, like three months ago you wrote one year ago you wrote that kind of thing. It's great.
[00:20:55] Phil Hawksworth: [00:20:55] We worked just to relive some of these things. Yeah,
[00:20:59] Cassidy Williams: [00:20:59] yeah. No, some of it is very cringy.
[00:21:01] Phil Hawksworth: [00:21:01] Yeah, I can never really depend on the good decision making of past affiliate.
[00:21:06] He was
[00:21:07] Cassidy Williams: [00:21:07] an idiot. It's fun. There's some of them where it's like me trying to decide what class I'm going to take in college or, or what job I want to interview for and stuff. And it just says like, dear, future Cassidy, I envy your resolve and I'm just like summer child. That's great.
[00:21:26] Jason Lengstorf: [00:21:26] Cassidy. Uh, if you were going to start your blog today, What would you build it with?
[00:21:33] Like if you were going to start from only, I
[00:21:35] Cassidy Williams: [00:21:35] first started from zero, zero, uh, I'm kind of anti CMS. Myself. So I'd probably, this sounds like I'm just going to be plugging the blog post I wrote recently, but I would probably build it with next and have it marked down enabled. Um, and I would have a lot more custom components than I put in my tutorial.
[00:21:56] Like, uh, what's great about it is it has all of these, uh, Great. Just static generation tools that you use. You can customize the head, you can customize all of the different navigation and links yeah. And things. Um, and so, yeah, I'd probably use next and Mark down and build a bunch of. Widgets. So that way I could have like embed a code pen in this post or, um, enable search in certain posts and, and, or among all of them posts and stuff.
[00:22:23] I, that, that's probably what I would use. And then yeah, work way too hard to add lots and lots of features to it.
[00:22:32] Phil Hawksworth: [00:22:32] I think it's reasonable by the way to say I'm anti CMS for your own, your own blog. You know, if you're, if you're the author, I think that's completely reasonable. I mean, I, I kind of I'm in the same boat.
[00:22:43] I like to abstract the content from the style so that I can move things around, but I don't need to have an entire CMS to do that is, you know, it's whatever means that you can expedite kind of creating stuff, I think. But, um, I'm curious about the, like the. The widgets and the different content types you're talking about and how, how much those might kind of drift into the content itself, you know, does it, does it mean that you're, you invest more and more in some kind of cool things there, but later on, if you need to move around, it's harder.
[00:23:15] And does it matter? I mean, it doesn't necessarily matter does it, but I'm kind of, I'm always interested in kind of weighing those things up when I'm tinkering with my employees.
[00:23:23] Cassidy Williams: [00:23:23] Yeah, no, I, well things like, for example, lay tech formulas, like. I don't do a lot of things like that, but I love being able to have them in there if I, if I wanted to.
[00:23:33] And so being able to have those kinds of smarter widgets are really cool. There is one quick side note, one person that I saw recently where they actually hacked their notion, um, and like pointed a website on top of it. So they actually did all of their blogging and all of their management of everything in notion, but they like.
[00:23:54] Deployed it to a site that added CSS, a JavaScript on top of their notion pages. So that way they could kind of use notion as a CMS of sorts and do that. So they could have all of those widgets and stuff that were actually built into the page without having to build it
[00:24:09] Jason Lengstorf: [00:24:09] themselves. Bill, I want to ask you the same question.
[00:24:12] Like if you were starting from zero, where would, what would you do?
[00:24:14] Phil Hawksworth: [00:24:14] I think I'm pretty close to where I would. B, I would tidy it up a heck of a lot, but I mean, I've, I've my, my blocks traveled around a little bit, you know, I had a WordPress blog for a long time. Um, and in fact, before I had a WordPress blog, I just had a site that I made my, made myself out of, you know, with hammer and chisel.
[00:24:35] Um, and then I, you know, then it moved to WordPress. Um, then it moved to. I think it went to wordpress.org and then a self hosted one that I kind of built myself, um, then to Jackal, um, big fan. And that's probably where I started getting into, you know, starting size rented sites and all those kinds of things.
[00:24:54] Um, yeah. Uh, the, uh, for a little while it was on Hugo, um, again, I was like, Oh, try and just trying out other tools that will make what I'm already doing a little bit easier. Um, at the moment I use eleventy to, to, to rent it out. And I'm really happy with that at the moment. Cause I understand the pieces for me.
[00:25:12] There's a, there's a lot to be said for understanding all of the pieces, which I cannot say that I've. Always had there's very often been lots of magic for me that I like, Oh, this works for some reason. And I can just about finagle it to do the things that I need. And, you know, the I'm remainder it, remembering, just writing bits of Ruby in my writing gems for my, uh, Jekyll site to do some of the things that build time that I needed to do that.
[00:25:38] I got to work, but didn't. If I'm completely honest, if it's just, if it's just the four of us listening to this, I didn't really understand what it was, the stuff that I was doing, but now, but now I'm happy because I'm in JavaScript land, you know, all of this stuff that I'm writing is, you know, it's generating HTML.
[00:25:53] I'm using JavaScript to do that, but no build time. And I understood all those pieces. So I'm, I kinda liked that. I'll be, I'll be very honest. It's, uh, you know, I'm in the situation where I can slip in content from different APIs at build time. Because lots of API has exists for you. No, for Twitter or for Instagram or for a few other places that I have my content, I feel pretty good about that.
[00:26:16] And at the moment it's all marked down the content content. Um, I don't really feel the need kind of like Cassidy to add a CMS. So I would like to re. Do all of the stuff that I have, but using the same tools, but use it doing it better. It's more of a refactor than a replatform. Um, and I ha I'm kind of midway through doing that with tailwind CSS.
[00:26:38] So I can use utility CSS because I find that that's a fun corner to turn as well. We could probably have an entire different discussion about that. That's. That'll probably elicit some opinions from people. Um, but, uh, I've had fun doing that, but yeah, I think I'd just like to refactor rather than replatform in the moment.
[00:26:56] Surprisingly happy. Vivian, do you have
[00:26:58] Jason Lengstorf: [00:26:58] a, uh, a differing opinion here?
[00:27:01] Divya Tagtachian: [00:27:01] Really? I think, um, I see the value in a CMS. I don't use a CMS. I actually use Hugo. Um, and I only do it because like it's, it's pretty simple and it's really fast to build, um, And super lightweight. It's a really lightweight framework with like a lot of theming and stuff like tooling around it, which is really cool.
[00:27:22] Um, yeah, I think I echo Phil's sentiments in that there are parts of Hugo cause Hugo has like so many different pieces to it that it can get pretty complex when you want to do anything custom. So you have to know a lot about you going in order to do a lot of that work. Um, so like my blog isn't super.
[00:27:43] Like fancy in any way, just because I'm purely, like, I don't, I don't want to think of too much on it. Cause I tend to also do that and then get distracted from what the point of having a blog is. Um, but yeah, I think there's value in having a CMS as well, because I think for me, I mean, I think I've shared this opinion before, but I kind of feel like I'm in, I'm in the minority in terms of not really enjoying writing Mark, Don, um, Just because I find it really clunky and, uh, it's not very pretty.
[00:28:16] The thing that I do that makes writing markdown nice is I use an app called bear. Um, and it makes it beautiful. It's still
[00:28:24] Cassidy Williams: [00:28:24] marked on cause you use
[00:28:25] Divya Tagtachian: [00:28:25] the tags, but it converts it. So it's easy to like, right. It feels like a better writing experience overall. But in general, I hate writing Mark Don. Um, and so for me, I'll write stuff in bear and then port it over to, to like the Hugo template, which is in Mark Dawn itself.
[00:28:43] Um, and so with CMSs, um, particularly I've seen like so much, so many people use the CMS as a way of like, it gives the writer more control, especially in terms of layout. Um, There's often a lot of tooling around CMSs that give you control. If you're not technical. I mean, all of us are technical, but if you're not technical, you can like drag and drop stuff and make things look beautiful.
[00:29:06] Also for on the go writing. It's really nice. Cause sometimes you're like, Oh, I want to write a blog post and I'm on my phone. And I cannot ride my
[00:29:14] tunnel on my foot.
[00:29:16] I mean, you could there, but you would have to like port it and you can't really publish it easily. Um, and so if you were to use a CMS, you could easily do that.
[00:29:25] You could just like ongoing or whatever, just like do it on your phone and then publish. And then it's out in the world, even though you're not on your computer, which I think there's so much value in doing that.
[00:29:37] Cassidy Williams: [00:29:37] I really love the bear mobile writing experience and they actually added a plugin that will let you deploy a note to WordPress.
[00:29:44] Um, Oh
[00:29:45] Divya Tagtachian: [00:29:45] yeah. I just see that.
[00:29:46] Cassidy Williams: [00:29:46] Yeah, it's cool. Pretty dang. Cool. I love it. I wish it weren't iOS only.
[00:29:52] Divya Tagtachian: [00:29:52] Yeah, I know I'm on Android, so I can't.
[00:29:55] Cassidy Williams: [00:29:55] Yeah. Yeah. I've definitely started making a web version of it and editors are hard, but someday.
[00:30:04] Jason Lengstorf: [00:30:04] So I guess the takeaway from this is that for someone who is going to start their own blog, uh, if I'm understanding what everyone just said, you should use a tool that you like.
[00:30:19] Don't overthink it. And remember that you get to iterate over time, uh, both the code and the content. So, um, just get something out there and start creating content because the content itself is valuable, no matter where you are in your career, no matter what it is you're teaching about, no matter whether a thousand other people have written, what you consider to be the exact same article, um, your perspective, your, your moment in time, your takeaways.
[00:30:45] Are going to help somebody else go forward and, and, uh, and so, you know, make sure that you get your voice out there and, and, and just do it. Don't get bogged down in the technical details. Don't get bogged down in the editing details. Just, just ship it. Any, any parting words from anybody before we
[00:31:00] Cassidy Williams: [00:31:00] basically sounds like the conclusion is don't do what we do.
[00:31:06] Jason Lengstorf: [00:31:06] Like
[00:31:06] learn from our
[00:31:07] mistakes, please.
[00:31:11] Phil Hawksworth: [00:31:11] I'm
[00:31:11] trying to remember if it was Jeremy, Keith, who was, who had this really nice point about drafts folders? I think he was saying like, drafts folders are your enemy. That's where blog posts and ideas and thoughts go to die. Um, so just don't have a drafts folder, just write stuff and ship it, which I know is easier said than done, but I think that's, that's wonderful advice.
[00:31:35] Cassidy Williams: [00:31:35] Well, I hope you, I found that remotely. Interesting. Ha. I know I did because I'm remote and I hope I'm interesting. Yeah. I haven't been interesting in a long time anyway, peaked early. So I hope you enjoyed this podcast. If you'd like to learn more about us, you can check out our show notes, then you can also ping us on Twitter.
[00:31:54] We're all pretty online people. And so we will respond to you as soon as we can. Thanks so much until next time.