Transcript: Python Web Conference - Calvin Hendryx-Parker
hello welcome to another episode of django chat a fortnightly podcast on the django web framework
i'm will vincent joined by carlton gibson hi carlton hello will and this week we're very
pleased to have calvin hendrix parker from six feet up join us hi calvin hello i'm excited to
be here hi calvin yeah thank you for coming on the show so you're um involved with six feet up
which is a major consultancy you wear a lot of hats but maybe we'll just start with how'd you
get into programming and find your way to the django space yeah that's obviously goes way back
but a family friend had brought over our first computer which was like a ancient like 8088 you
know pc that he was he's upgrading and he gave you about the same time he brought over some like
basic programming books and like i said i have no idea what to do with this you know i'm like
i don't know 12 13 and just didn't have the interest in it yet but you know fast forward
number of years go to college uh i ended up getting a degree in graphics like like cad and
like drafting and and things like that but along the way i took some cs classes because i was like
oh these computers seem pretty useful uh and then when the dot com boom was like right as i was
graduating school so me and a couple guys loaded up to san francisco you know started jobs there
and that's where i really started programming like i started building little tools to scratch
itches for you know this and that so little web apps to like index images you know because i was
doing ui work at the time but i still needed to have some like niceties for like my workflow
so i really started coding out of necessity to build tools for that kind of a workflow
got involved in open source um probably like right around year 2000 that's where i found python so i
guess i'm kind of one of the uh the python old school uh folks i started with you know python
one five yeah it was my first python but i really started because of zope uh the the z word um that
you know some people you know have a lot of history with i think things have changed and there's not
such a stigma associated with the zope word anymore um you know i got very involved in the
community uh but a co-worker showed me zope he's like check this out there's like a python web
application server that's open source and you can download it and i think i understood every other
word he said at that point in time but i went and downloaded it anyway and started trying it out and
started building stuff like completely through the web like the kind of the zope dream at the time was
you would do all your work through the web you could rapid prototype and design you know quick
little applications and so i did and uh i got hooked um that was really a lot of fun you know
kind of put that all aside later but yeah well could before we move on can you because so because
I you know I never use Zope but in my requirements files on one of my projects I write down the
bottom there's this Zope.dinnerface file which gets pulled in I don't know it gets pulled in
by like Twisted or something I don't know but what was Zope all about and like because it was
really big right it was really oh my goodness how much time do we have yeah well okay
the medium one the medium story yeah well I mean for for me Zope was kind of the granddaddy of
application servers this is back in the time even probably pre like tomcat this was around the time
like pearl was like the thing for building like cgi web applications it was guest book just cgi
scripts i mean like you know doing that kind of stuff so zope was interesting because it was a
long-running process you had a object-oriented database there was all kinds of like i don't
just neat innovations around security and permissions and fine-grained roles and access
that you could really build through the web like obviously that's frowned upon i think it's frowned
upon now I mean we really want to build build code on the file system and you know make it
lightweight and easy and you know have source control but back like in near 2000 like that
some of that stuff just wasn't best practice or even you right now is about building an application
that was useful for your co-workers so you could have a intranet or a pto tracking system or you
know some interesting small little app and Zope enabled a lot of people to kind of kick that off
without having to have a serious programming background which was me like I fell right
exactly in that bucket and what's interesting is that you know you talked about zope.interface
that didn't come along until many many years later when the zope3 project kicked off and it
was basically a backward incompatible release of a new the newer version of framework which
included the zope component architecture and so you'll see zope interface in a lot of other things
that are not zope because it provided a way for zope people to use like the interface patterns
like you know define interfaces or contracts that your code would adhere to if you go look at the
like apple.com slash open source page you'll see zope listed on there because they've used
zope interface for you know contracts and interfaces in their code it was really a good
way of like they trailblazed a lot of best practices but they didn't feel very pythonic
at the time which is i think why the community didn't really like go that direction i think the
community really saw things like django and flask and other web applications as being more you know
in air quotes pythonic yeah to how things are built i mean there's i agree with i it's it's
definitely it was it was a mind bender but i feel like going down the zope path as my part of my
journey has obviously been made me the person i am and i feel like i'm a way and i don't know i've
got a deeper knowledge of the web because of it yeah fine i mean there's a pendulum right because
at the time it was all like in contrast to say java where you're defining you know these interfaces
and you've got these massive inheritance structures
and it was like, ah, that's horrid.
You're like, I don't want that.
And then, so you get, you come into Python world
and it's like, ah, it's just like binary.
You just, you know, it doesn't matter.
I'll duck type it all the time and it'll just work
and it'll be 10 lines and I'll import the library
that does all the magic things that are difficult
and wonderful.
And now in Python, we've got the move towards type hints
and, you know, static typing with the other modern languages
that use that more.
And it's kind of like coming back to interfaces because you define, you know, you don't want to pass string.in or any into as your type in.
So you define a protocol of exactly the method you're going to use and you use that as your type annotation.
And that's defining a protocol, right?
It's like the same thing that we were doing all those years ago in Java and hated.
But I feel like Python took the path like where we're going to look at it very, very carefully before we make any decisions.
And I feel like we've still taken this path of make it easy for developers to wrap their heads around, reduce the amount of typing, you know, an actual code that you have to write to be productive and stay out of the developer's way, which I think I feel like still lays right in line with like Python's mission of being this language to just get stuff done.
Yeah, I mean, it's nice when you're writing your code and you can just throw in an annotation and all of a sudden your editor goes, oh, I know what this is here.
And I've discovered that recently.
I'd been a long holdout as well on like IDEs.
Like I'd been just a Vim user for just,
well, probably up to the last couple of years.
And then I switched over to PyCharm
mostly because of my friend, Paul Ebert.
He was like, you know,
come on, let's do some webinars together
and I want you to check this out.
And so I did and I got hooked
because it finally was fast enough
to kind of keep up with my brain.
And then I think that the auto-complete,
the code sense stuff
that's kind of working behind the scenes
inside of those IDEs
has gotten really good and really fast.
Like, it seems like it's predicting what you want to type before you type it.
Yeah, we're actually next guest.
We're going to have Paul and Alexi, who's the lead developer of the Django bit of that
to come on and fill that out.
Because, yeah, it's a pretty powerful editor.
And I'll tell you, Paul was one of the first people I met in the open source community
when I went to my very first Plone conference, the very first Plone conference in 2003 in
New Orleans.
it was 100 people in a small classroom at some university down there. And it was my first
introduction to the community of open source. And man, was I just like, I was hooked. I was
on board full and 100%. How do I get involved and like do more and get engaged in these communities?
That was my first, you know, how am I in? I wasn't even using Plone at the time. We were
just using Zope. I was like, well, there's no Zope conference. There's this Plone group getting
together like that's built on zope let's go and so my brother and i actually went down to the
plonconf in 2003 and then since then i've been to every pycon and since 2004 oh wow well um slight
interruption but carlton i noticed right before we started um just an open source so you and i
guess marcus so django has changed switched over from master to main is there anything you just
want to add about what it took to make that change and obviously we know probably why we're waiting
for it to all fall over that the ci'd fall over when we go to bed tonight but we moved um we moved
django project.com over last week and code.django project.com which is the track we moved that over
last week and nothing broke and it went remarkably smoothly so you know i just upped i bumped the
channels repos channels daphne and channels redis over and you know maybe one pr didn't automatically
get migrated but github's done a really good job i have to give them credit um they're maintaining
the um the reference from master to main so that the old references they just redirect
silently yeah i switched over other projects and it's been it's been very smooth and the the only
thing they haven't managed to do is your fork you have to go and change the default branch on your
fork but it could pop when you go to your fork it pops up a big um you know overlay it says hey by
the way it's been updated you want to do that here and you just go yes it takes a nanosecond
so we did um jango jango which is the main repo and who knows i mean i'm sure something's going
to break but we haven't quite found it yet so fingers crossed yeah fingers it'll be you know
it'll be literally like five minutes after maris knocks off tonight and it'll be like
well the whole naming is one of those things where when i got into programming i was like
what do you call this like what do you call the databases really like you know that was 10 years
ago. So you're a progressive. I'm very progressive. I'm a Vermont progressive. So, um, anyways, I,
Calvin, I did want to ask you, cause I was out in San Francisco, gosh, 10 years ago, um, after
that boom and bust and, you know, given where we are now in the state of the world. So you were
there through the boom and the bust. I'm curious, you know, what was that like? You know, you,
you stayed and eventually left, but you know, right now it's all these San Francisco is dead
things. And it seems like it's just going to probably rise up again in a different fashion.
the closest thing i could like align this with was in high school they made us read the great
gatsby it was a good book actually one of the few i loved that was like kind of forced upon me
as part of like you know english class or whatever and it felt like to me at the time reading that
as a high schooler nothing could ever be like the roaring 20s again like this is crazy like
the stories of all the kind of like you know opulence and crazy stuff they were doing i get
out to san francisco i moved out there in 1998 and then rode that rode that through to 2003 and
man did i see craziness like crazy launch parties we had you know one of the offices i was in we had
adult-sized tricycles and pool tables and foosball tables and nap rooms and all this like crazy crazy
stuff and um you know from coming from the midwest moving out to san francisco and like the salaries
that they were offering to people who had zero experience like again kind of a mind-blowing
experience like that there was truly this bubble and like it was it really it felt like the time
like it was create just fun stuff all over and no you know but you know that it all kind of came
down uh in 2001 actually you know no time like that to uh launch your own company uh during a
dot-com bust uh and then we had our second like for six feet up we actually had our second kind
of growth spurt during the 2008 um mortgage crisis so we've we kind of launched during a
downturn and then grew during a downturn and so so you must have a good usp what's your like what's
your pitch like because that's worth knowing yeah i think we i mean we try to be we try to do awesome
work we love doing the python you know work being in the community and i feel like you know just
diving in and going all in on being a python and cloud company has been really exciting um now just
full disclosure, my wife founded the company back in, you know, 99. She was, she'd gotten like laid
off from one company or company closed their doors, and she doesn't sit still well. And so
she took a hobby of mine, which was I had a server literally sitting in the living room hosting some
friends and family. And she went and back build them and turn it into a company. And that's that
was the start of six feet up was literally a server sitting in the living room that had been
finally moved into like a data center someplace, but she turned that into a real company. And then
in 2003, I went full time, you know, left the.com world. And we came back to Indiana and started
growing six feet up and hired our first first employees and, you know, really made it a real
deal. So it's, it's been a fun journey. And I'm really happy to do that, you know, with my my
life partner and, you know, partner in crime and all things. Now, were you in person with your
employees from the beginning? Or were you remote even? No, no, we only went fully remote as of
well almost exactly a year ago march 13th 2020 we closed the doors of the actual physical office
we now have employees from south africa to california so lots of time zones in there but
it's we're now remote first we've always had a few remote employees and then kind of been growing
over the years but then we just went all in on it when the pandemic hit although we had such a cool
office i really wish you all could have come and hung out at the uh the 60 bar where we had like
a couple beers on tap and lots of whiskey and outside tricycles and nap zones and well i was
building my own version of that yeah so what was it like um what was that transition like i mean
because i had somewhat i mean i was east coast old school and then i was san francisco and now
back um you know it's an adjustment moving back like what was it like trying to hire people
you know right because you still have that west coast mentality of like let's burn it all down
right but you know mid indianapolis is more of a normal place like i imagine hiring people you
know you're looking for different things than you would have hiring the same person in san francisco
yeah i think the mentality never left me like you know midwest sensibilities like we at some point
wanted to buy a house out in san francisco i just couldn't bring myself to do it knowing what i know
about the midwest and the prices of real estate here when we came back we were making so little
money it was almost laughable like probably below poverty line but it was worth doing because you
know it was it was our thing and so growing and and you know kind of learning how to like get new
contracts and sell and all these kind of new skills that you know weren't part of my day-to-day
it's just like a systems engineer working for a startup i'm now you know working on how to grow
our own business but it was ours like and it really that does make a big difference when it
comes to like quality of life and and living and like your stress levels and and doing the things
you want to do and we actually you know at that point in time wanted to grow a family as well
and own a house and all these kinds of luxuries you can do in the midwest for you know a reasonable
amount of dollars so but then hiring has been tricky i mean the midwest has been solidly a
microsoft centric area lots of dot net developers here but that's changed i mean when we came back
in 03 i was looking for that tech community so by 07 we i launched our co-found the indianapolis
python user group indy pi and that's one now one of the largest single language uh meetups here in
the midwest we've got over 2 000 you know members of our meetup you know we still meet you know
monthly and i mean even with a pandemic we've managed to still maintain you know pretty good
attendance and getting awesome speakers and so growing i don't know i felt like i had to grow
the community that i wanted to exist so why not go yeah just for sure just go out and do it and
we've you know we've hired lots of people through the indy pi community because those people
basically it's like stepping forward like i am interested i want to be part of the community i
do want to participate and those are the best folks to hire people who are involved in open
source people who are involved in the communities and people who show up that resonates with me
because i remember when i moved moved uh to do my own thing from the west coast and very uh low
wages for a while yeah and i remember having that that culture clash but also um got very involved
in the so in boston there's a large python community but not so much of a django community
um so getting very involved and seeing people and i remember thinking and maybe it's still the case
if i ever do a company i feel like boston is a great place to hire people because there's really
smart people they stick around they don't leave every 12 months um but i'd want west coast
investors because these vcs are are um you know they're like the mbas versus the west coast they're
like yeah you know i made a billion dollars you can do it too right um like frankenstein you know
your location that's one of the luxuries of that's one of the luxuries of founding a consulting
company it's like either you're making money or you're not making money there's no vc investors
involved like it's like right if you're doing work for a customer you're you know the timer's
running and you're making money so i've seen a lot of people who've gone off and founded companies
you know they're kind of jealous of this of the consulting life set style but you know they got
a higher up potential upside but a lot more risk but running a consulting company is you know
relatively low risk, you know, but there's not like a super, super upside. We're not going to
get an investor come in and bring us like a hundred million dollars. I don't know. I don't
see that happening. It doesn't seem, it doesn't feel like that's the exit plan for like six feet
up. Yeah, that makes sense. I mean, to make it about me and my experience. So I worked for this
company called Quizlet that is now hopefully going to go public soon, but was bootstrapped
the entire time I was there and had been bootstrapped before. So we were, and we were
on second street, you know, a block from South park. So we were surrounded by, you know, Instagram
was literally right over all, you know, the node people, right. Everything was right there. And
yet, but we had constraints and I feel like it was extremely frustrating at the time when everyone
else is throwing money and offers around. Um, but that discipline meant that, you know, Quizlet
still around. And so it kind of got to see, it wasn't, it never felt like fairytale money. Cause
we knew exactly where the money was coming in from. And the, the founder and CEO were really
disciplined about that in a way that 22-year-olds given $5 million weren't, because why would you
be? And that's very much the mindset over here. You live in your means. We try and contribute
back in the community with our time in any way we can. Now we finally have grown. We were
contributing back monetarily to the Django Software Foundation. We're now a silver sponsor
for the DSF, which I'm super excited and very proud of the fact that we can help and do that.
It just means we've grown, we've matured.
But yeah, we didn't have crazy parties.
We didn't have the launch parties with like ice sculptures and fireworks and all those
kinds of crazy things, which I did see for these companies.
But it's hard not to look at that as a human and be like, oh man, that looks so cool.
But you know what?
If you look at the other side of that coin that they are sitting on, like you may not
be very happy with the situation they're probably actually putting themselves into.
It may not be all fireworks and ice sculptures.
But it's very hard to avoid that when you're in the middle of it.
Oh, yeah.
Especially sitting in a barrier.
Yeah, I mean, I think the founder of Quizlet was 15 at the time.
He was in college when I joined.
And then the CEO was older, was 40, and had been through all this stuff.
And so that was sort of the tension there of the two of them.
You know, the younger one, all his friends were literally, you know, the founders of Stripe segment, you know.
And he was like, let's take money.
Let's go for the moon.
and the older one was like i've been burned you know let's let's play it safe yeah because i think
that's the that's the thing is like when you're there as disciplined as you are you know everyone
else is doing it it's hard not to get like we even hired a pr firm at quizlet to try to get
press because we're like you know we're growing like crazy we're doing all these good things
and we had no tech coverage at all all the ed tech was all these other companies that raised
100 million are now out of business um but it's because you know what is the story tech press
story is raising money it's not organically growing your business and doubling every year
yep well and i i wouldn't have done this without my my wife my partner gabrielle i mean she's
she's definitely like the one who keeps me a little more grounded uh when it comes to those
things i'm more the visionary who wants to like go off and create crazy things and not that she
like stops me from doing crazy things like but as a combination as a team we've done way more
together than we could have done alone yeah that's how you do it so i see in the notes so
was it 2017 when you started on professional django projects or when did django start to take
over the work that you do professionally oh definitely 2017 uh we had our first you know
kind of lead on some django projects it was a small thing it was actually a company i worked
with out in california had found me because i'd put django like on my linkedin profile or something
like that and so they phoned up and said hey we need help with a thing we launched it's built in
Django I'm like this will be fun so we started doing more and more Django work uh got went to
my first Django conference uh which was the DjangoCon Europe in 2017 in Florence Italy so I
got to meet more of the Django personalities uh I think actually that's where I met Carlton yeah
yeah yeah no that was that was and then was that your first one Carlton right yeah yeah yeah that
was my first DjangoCon so you know I've been using Django all these years and never been to a
conference then I went to Florence I'd say I'm absolutely blown away and then oh it was too it
was again it was it was an amplification some time later and i was like hey didn't we meet in
dangan europe it was it was more the community that i'd grown to love through pycon and plone
conference so i don't sometimes i dream and wonder what other tech communities are like
because i've never been to like a php you know conference or a ruby conference or anything like
that and i just find it hard to believe that they could be they could you know for me i feel like
the python community is just like i don't heads and shoulders above all the rest there's just
such amazing folks who are in our community that are just giving of their time and their talent
and like they've developed these amazing like frameworks that we all just take you know use
and i thank them you know whenever i can for the kind of effort they put into these things but
yeah django is one of those things where we'd been a plone company for you know decades at that point
in time and i you know really like that framework for building content management systems but i feel
the content management market has shrunk people don't want a full-blown you know cms tool they
want to build web applications they've got specific needs specific you know kinds of apps they want to
build and django feels way nicer way easier to spin people up on to to get them to be productive
so we started doing more and more you know django projects just because that they were things that
weren't a good fit for plon now we still do plon um i still love it as a cms it's the best one you
could possibly install and use uh no offense to the django based cms's but they're they don't have
the full features out of the box that like say plone does because they've really focused on that
as their market but plone's not the place to build you know kind of one-off weird you know applications
that don't fit a cms you know box can you i don't um we can edit this out if the answer is no but
do you feel like you can make a public comparison of plone and wagtail i don't have a serious amount
of experience with Wagtail than, you know, throwing it in and just trying it out. Um,
I think for Wagtail has grown a lot recently, which is why I asked, like, okay, there's a lot
of development there. I probably wouldn't be the right person to do that comparison. I found,
you know, for a app that needs to have some content management in it, Wagtail is awesome.
Like, you know, it's a great way to add in user edit, user editability to content inside of a
Django application. Uh, Plone is,
full blown, you know, workflows, fine grained security, it leverages all those things I talked
about that I love with Zope. When I first came into like the Zope community, it transfers us
really well into a very highly secure, you know, content management tool for building intranets and
extranets and content collaboration sites and being able to build public facing websites or
research tools or content repositories. And I see them actually working together either using
wagtail as a cms for a django app the newest versions of clone support fully headless operation
so you can actually run it side by side in its own docker container just using you know react or
you know whatever interface you want on the front of it and it's got you know just full apis into
the the content so you have an editor ui on the back end but you could be managing content for
some some front forward facing application using clone if you want it but i have not tried the
latest versions of wagtail i would do a disservice to any kind of review if i if i was to try and
yeah full-blown comparison we should get tom dyson on again i'm thinking of it in part because um
uh so we just so nasa just put a you know rover on mars and the jet propulsion laboratory their
whole site using all that is built with wagtail they sent something to to me and um jeff triplett
we do the django news newsletter um so we should have them come and talk about it because a lot of
those things headless and all the rest wagtail um has grown a lot so yeah maybe that would be
see if we can get tom on to compare versus plone in in a you know we do like a panel discussion
i'm happy to participate since i've definitely got a lot of experience there oh yeah that could
be interesting um anyways well so you touched upon it but i was going to ask you know so the
the types of common projects people would bring you in on django right because it was probably
more we have an existing project that has issues versus uh greenfield is that correct to say we've
got we've had both recently i mean we first started it was people coming to us because they
had a existing django project you know they started off with some solo developer who maybe wasn't
doing all the best practices or didn't know how to scale it to you know full-blown web you know
web scale launch of their application you know a lot of building of community type applications
you know search and commenting and you know activity streams and things like that where
those can be tricky if you don't know how to use caching and you know redis or you know the all
the kind of like real tricks which is nice because those are common between web frameworks like you
know varnish and things like that we would use those obviously to speed up and deploy you know
faster versions of clone applications we can use a lot of that same knowledge you know when we came
into the django world and then we picked up more on you know how to tune for databases and these
kinds of things that was a big change there you know clone and zope are using an object-oriented
database you know not not exactly a no sql but it was kind of the granddaddy of what no sql
databases are so i wasn't seriously a heavy sql relational database user i enjoyed my kind of
ignorance is bliss of persistence and when i saved an object deal with it later yeah when i saved an
object it got saved in the database and like i was happy and it was all atomic and it would there
were transactions and it would roll back if it didn't work luckily django's orm is nice and
simple and i i do love like sql alchemy as well so i've become a big fan of you know the orm and
And, you know, it does a lot of that heavy lifting for me.
So I still don't have to learn all the SQL junk to be productive with a tool like Django.
But it is a different mindset where you're creating models that kind of relate to tables versus when I would create models before or create content types inside of Zope and Plone.
You know, they're just Python objects.
They look like Python objects.
They didn't have kind of this ORME, you know, syntactic sugar sitting on top of them that tied them into database tables.
Yeah, I think that's important to sort of remember about the ORM
is it's a table, it's a gateway to your table, right?
Yeah, so even when you're developing like a Python model and Django,
you still kind of got to be aware of like a decent database design.
Like there's certain decisions and choices you have to make
that you got to be aware of like how that works on the backside
with the database still.
Yeah, and any time you spend working on your sort of SQL chops,
It's always time well spent, even if you don't want to get, you know, you don't have to get right down in there and know every nitty gritty.
But, you know, if you spend an hour, you think, oh, I learned that.
And then you go and look how that works in the ORM.
That really pays dividends for you.
Well, and learning kind of some of the tricks for the ORM, like lazy loading and kind of like pre-fetching and some of the things where if you know how your application is going to work, there's things you can do in the ORM to greatly speed up or reduce the number of requests to the database.
I mean, and it's nice.
There's tools out there like Sentry and things like that.
They can help you trace and see where you've made an oopsie.
You know, the Django Depot toolbar.
They're lovely, though, because you just sort of tree view down
to where all the time's spent.
You're like, oh, whoa, whoa, there it is.
That was scary.
Right.
Select related.
Ah, one query.
Better.
I wanted to ask, so you use AWS because you're talking about tweaking servers,
so you're not using a platform as a service generally for your hosting needs?
No, not generally.
I mean, we started out as a hosting company,
And about two years ago, we got rid of our final piece of like actual bare metal hardware.
And that was a great day.
Oh, wow.
We are fully in the cloud.
We have no more like switches and routers and servers and blinky lights.
I mean, I'm a big fan of like blinky lights, but I'm just kind of over managing servers
anymore.
So yeah, we went all in on Amazon.
Oh, I mean, numerous years back, but it had been a slow migration, finally getting everybody
off of our physical hardware in a data center, fully up into the cloud. And it's been so much
nicer since then, just from like a peace of mind standpoint. I also run the AWS user community here
in Indianapolis called Indie AWS. And I'm a AWS community hero. So Amazon names, they got about
200 people globally that are heroes. And it's a really cool program. You know, they give you cool
stuff. And you basically just are kind of a promoter for, you know, all the cool stuff that
goes on amazon but i don't have to work for them yeah right okay carlton that's what you need to
be because carlton's got uh button.dev which is simpler aws hosting well it's not that would
qualify for hero ship i mean things like well cool tools like that the the goal the goal with
it is simply you know when you go into the um you go into the console and you're like there's 200
services here i don't you know i couldn't possibly navigate all of those when i'm just trying to get
up and running it's like look here's a few here's a few that you're going to use for a default stack
and then when you outgrow that you've you just step out to the console and it's there for you
yeah no and that's been a goal for me as well as like how can we automate and simplify these
deployments because there's definitely way more moving pieces back in the day when it was just
like here's your better metal server at whatever hosting company you're at you ran everything on
one box the database the web server the django app the clone app whatever you're running it's all in
one one spot but it means that when it failed like like was miserable after that because a lot of
you couldn't rebuild the same exact server again because you didn't use like configuration
management or best practices they were all unique snowflakes i think that the complexity overhead
we've added in with all these kind of cloud native components is worth uh you know the squeeze is
worth the juice uh in this case because you're not i'm not messing it up twice and it's also a lot
more resilient and amazon's thought about all these things on the back side and they're doing
all the database upgrades for me and i don't have to think about load balancers you know i just
write some either cloud formation, or we use Terraform, you know, for describing our infrastructure
and I just say apply and you know, it figures out the things that need to happen to make sure that
my infrastructure is sitting there ready to, you know, host my application. And containers has
taken that to the next level for us as well. Everything for us is going containers. I was
kind of another long kind of holdout on Docker and containers. But I feel like it's gotten mature
enough that it's it made the developer onboarding process a lot simpler and it's made the deployment
story uh just more straightforward like you build something in a ci server you put that into a
repository you push a button and you can now release or roll back i just that's that's that's
so worth it not having to now do apt you know install nginx and apt install haproxy and figure
out like all the little bits and then wiring them myself like the terraform does most of that wiring
for me docker does all the figuring out well of building the image so that i can deploy it to any
cloud yeah i think that's the thing the point you said it was like a snowflake like if you
manually configure your server yeah you can't rebuild it and it's like for me it's the test
is okay you've deployed it once but could you tear it down and redeploy it and if you could tear it
down and redeploy it then you're okay right back in the day i mean i used to be to the point like
when we did upgrades of servers i was building kernels you know on the box like you know make
make install build world you were running linux from scratch well i'm a hardcore freebsd person
i'm more on a linux camp now but like back in the day we were 100 freebsd i would do build world
install world to keep our boxes up to date you know i had source sitting in user local source
that i was like compiling and you know installing from hand like it's that that that was insane like
i look back at those days i mean sure it felt like fun i guess i don't know you felt like a hacker
you know compiling and watching all the stuff scroll off the screen but that was not productive
use of my time well it's like telling kids like i used to walk to school you know through three
feet of snow kind of deal they're just never gonna know oh yeah but but they'll be new you know i
guess now they have to deal with javascript front ends so it evens out this is turned into a monty
python sketch in my day my day right cold off the road well carlton i turned 40 recently so you know
i can make all these finally welcome to the club world i know i know i've got i've checked all the
other boxes now it's official um anyways um loud swarm tell us about this project that came out of
the pandemic oh my gosh yeah hang on so this was the this is the um conference video thing it's
amazing because you they used it for DjangoCon Europe last year um so we as part of um running
IndiePy and IndieAWS we started doing some little mini one-day conferences like regional
one-day conferences and we'd have different topics like PyData or web conference or you know just
automation and running up to 2019 we kind of decided we would pool all our resources in
running these bigger events into actually running a real like multi-day conference but make it
virtual we we founded the python web conference in 2019 and it was virtual on purpose i feel like we
were you know leading the pack there before the pandemic even started but we were it was virtual
by design and that design was because we're in indiana and we were really focused on the web
for us like web development and web tools and i felt like pycon had kind of strayed from that i
I mean, back in the days of the 2004 PyCon, there was a Zope track.
The keynotes were, you know, Zope and web frameworks.
That was the killer app for Python back in 2004.
But the world has changed and moved on.
And Python has been adopted for all kinds of awesome types of projects around data and
automation, you name it, and they're using Python for it.
And I feel like PyCon reflects that.
But I still have a passion for Python on the web.
And I don't feel like it's boring.
I feel like, you know, there needs to be more outlets for people to come and gather around
on topics that are specific to web and deployment and cloud.
So that was the kind of driving force
behind the Python web conference.
And then, so 2020 hits.
We moved our first cloud conference to Zoom
in March of last year.
and the experience was okay
when you had basically three Zoom webinars
that people had to kind of know the URLs to
to get in to watch the sessions
and there was a Slack channel
and then there was another website.
So it was like all these tools
were all kind of scattered about
and I didn't feel like people were getting the engagement
and like the integrated experience
that you come to really love
when you go to an in-person conference.
I mean, obviously we can't reproduce
an in-person conference,
but we can leverage the technology that is available
to use those same experiences as a guide
for how do we either enhance some of them
or try and make some of them, you know,
as good as we can make them for an online experience.
And so that was the thought process
that went into why Loudswarm became a platform
we built to do our next conference.
So we started in April.
The first conference was in March that we did on Zoom.
April, we laid down a whiteboard ideas
of what the project would be.
And we launched it June 17th or June 15th
when we did the Python Web Conference 2020.
And it's full-blown Django.
We have video CDNs, and we integrate with existing services.
So my idea was to not rebuild some of these wheels.
Let's leverage existing tools.
So Q&A kind of integrated with Slido, so you could have polls that were interactive.
We had direct interactions or integrations with Slack.
So real-time, as you would message in Slack on the back channels, whatever session you're watching, there's a feed of that track's channel directly in the page.
So you can actually kind of watch kind of back, you know, back channel topics, you know, talk going on, which really adds to the experience.
Like while you're watching something live, you can ask questions live.
You can actually interact with the speaker, even though the speaker is kind of in a room by themselves, technically giving the talk.
They feel that there are people there and there's a moderator there helping to like, you know, say, ask the questions.
And then afterwards, we wanted folks to still have that face-to-face like podium experience.
Like when you, after someone gives a talk at a conference, it's really common for folks to kind
of go gather around the speaker at the podium, you know, much to the chagrin of the, the track
runner. Who's like, you guys need to get out of here. Uh, we all want to talk to the speaker
because they, they all got questions. They will. And I didn't feel comfortable maybe asking them
at the microphone, but they wanted to ask them face-to-face. And so we added a face-to-face
feature, which basically launches, you know, like a Jitsi meet room or a zoom room where folks can
actually like do a web meeting and, and chat face-to-face with the speaker. And those have
been super popular. I mean, you have every talk, you know, from a handful of people who'd come in
to 20 to 30 or more folks coming into those rooms, especially when it's like keynote speakers and
it's amazing talks. And you just like, you want to thank the speaker personally. That's not a
question, but you still want to like say thank you. So you can, you can say that face to face
with them. And so we've made it just super easy for folks to be able to jump from session to
session. If you are in a session, that kind of law of two feet at a conference, if you don't
like something you've got your own two feet you can stand up and walk out of the room we really
wanted to enhance that uh so that it's easy to move from one topic one one session to another
session and added in like a dvr feature so you could actually go back in time and start at the
beginning of the talk so you didn't feel like you missed anything which i again felt like was
a really great feature for leveraging something we can do online that you can't do in person
another thing we've got to be able to be able to catch up on all the talks that you missed or
they're you know yeah and other features all of our talks they're online within about 10 minutes
after the talk was given uh you've got you know full you know you know multiple multiple versions
and different you know uh quality levels because we wanted to make sure that folks who are in areas
where they don't have great you know broadband can still participate in the conference yeah i love
that it's the developer goodbye it's like the irish goodbye but for which i'm a fan of the
irish goodbye python webconf is next week right so people can still sign up for that and we have
a link in the show notes yeah march 22nd to 26th it's going to be five half days so that folks can
kind of still go to work or still participate and still engage in the conference and have a good
time you know make the most of it for the week we've got 60 awesome speakers about 20 of them
are women. So maybe in honor of National Women's Day, International Women's Day, but we have,
I really worked hard to get a kind of a diverse set of people available for us to engage with.
And I'm really proud this year. If you go look at the speakers page and scroll down that page,
it is just, I'm humbled and honored that these people have chosen to participate and spend their
time with us as part of the Python Web Conference. We do have four tracks this year. We added an
an additional track. We have app dev, we've got a culture track, we've got a Pi data track. So
that's actually official Pi data sanctioned, you know, mini event going on inside of the web
conference. And then we have a cloud track for folks who are interested in more cloud topics and
you know, cloud native deployment type things. It's gonna be fun. The last two years have been
great. Last year was our obviously the first time we even used loud swarm to produce any kind of an
event. And so we've added in new features and you know, all kinds of new cool stuff that is available
for attendees. And I feel like the community really stands up for some of these kinds of
events. When we do a Python conference, DjangoCon Europe was a perfect example of
having an awesome community coming together for a virtual event. It makes all the difference.
You've got people who know each other. They engage. There's just tons of conversations
that start going. There's going to be great socials, and we're going to do a game night.
We're going to have all the speakers engage. They're not just there for their talk and gone.
Most of the speakers are all around.
They're all in the Slack.
They all want to chit chat.
And so everyone should take advantage
of that ability to talk to these folks
because they want to talk to you.
Yeah, and in a way, the talk's the least of it.
It's like, yeah, okay, I'm doing the talk,
but that's not why I'm here.
But they are.
They're great talks.
They definitely watch their talks.
But then the hallway track still exists.
It's still a thing even in the current times.
I mean, our goals for things like Python Web Conference will stay virtual.
That was its initial intent, and it'll probably stay virtual.
Loudswarm, though, is designed so that when we get back into doing real events in person,
that it's meant for hybrid events, like that folks who couldn't travel to a conference
could now engage with those people.
There was a good, I mean, DjangoCon's always streamed as much as it can.
It's streamed the videos.
I remember seeing Django in Europe a few years ago and being like, wow, wow, they're all
live and then not getting much work done at home i think it was the next year that i went to florence
but the um if there could be some sort of feedback from the people watching at home that would be
kind of cool some some way of joining into yeah so i think the tools like that i mean i would love
to see some really i mean i think about these things at night when i'm laying in bed it's like
can we even have like a 360 virtual view where that you could be like you're sitting in the rooms
like when we get back into like physical conference space could i you know see who's sitting in the
room with me could i you know ask questions that go up onto the board you know where the people in
the room and the people who are virtual ask questions at kind of an even playing field
it's all done yeah in one medium so that they don't feel like they're getting gypped out of
you know asking their question yeah that's cool there's one thing i saw which was um called i
think it was called gather dot town where there's like this kind of cartoon hallway and you could
walk between the groups and the sound would come come in as you approach the group preview hint is
that we're going to be using gather.town for a python web conference this year for some of the
socials it looked really good because it like you talked about the hallway track and one thing
about the hallway track is you can kind of be in a conversation being i'm going to stroll over to a
different conversation yeah that spatial audio i think is a game changer for virtual events and
we're exploring that and experimenting with it you know as soon as we can use it um i found that
with the rambly.app i don't know if you've seen the rambly similar to gather but it's more like
you know it's an 8-bit adventure game it looks like you're in the 90s you know playing your
nintendo which is perfect it's perfect for me and there's what's kind of cool about that one
this is rambling they have like secret cheat codes if you know how to type some stuff into
the url just right you can get alternate maps and new worlds and all kinds of crazy stuff
none of it's published you know it felt like i was getting my you know nintendo you know monthly
magazine and looking for the cheat codes again it almost reminds me of um again back in san francisco
i think still to this day like every company would put in the the meta you know if you're
looking at this you know we're hiring kind of things and sort of the sort of the equivalent
um so great yeah well that's that's an amazing you know equalizer i think that's i don't know
i can't speak for carlton for me one of the reasons of doing this podcast is to try to
replicate a conference environment and make it accessible to anyone anywhere anytime um because
they are fantastic but you know they're expensive and people have time commitments well there's like
there's like this this conference boost right you go to a conference you get this power charge up
and you come home you're like i'm power charged and over time that sort of fades away and then
you know just having a podcast it's not the same as a it's like a little boost top up
Now, I will say for Python Web Conference, we do have a grant program for those who may not be able to afford a full ticket.
So like a professional ticket is $1.99, a student ticket is $99.
For every professional ticket that's sold or for I can't remember what the formula is, but there's basically for some number of professional tickets that are sold, there'll be a number of grant tickets available.
so if you are interested in attending but are afraid you couldn't pay don't you know don't fret
please come and check it out and apply for one of the grants because we're trying to get back
into the community and make sure that you know everyone who wants to be there can be there
super super that's awesome and i missed the date when is it it's the march march 22nd to the 26th
fine okay so that's it's two weeks this is coming out tomorrow so i gotta i gotta do some work here
because today's what today's the 16th right so no no no today's the 9th today's the 9th am i
you got ages well i don't know it's internet time yeah right this this is no it's pandemic time this
is okay plenty of time to sign up which week of calendar is it i don't know so please do please
sign up it's gonna be a ton of fun um come find me come say hi i will love to chat with anybody
who's listening great well we have links to everything i guess is there anything we didn't
cover as we hit the virtual doors uh i don't know no i mean i again i'm really excited about
getting involved more in the django community uh i know some folks from six feet up have joined
the defna board and are actually excited about helping to yeah put on some of the django con
events so i'm excited for them to be engaging um i want to just lead our team into being like
an awesome django job like we love the community we love the people and i'm i'm just really grateful
that this all exists and and we can participate yeah well and to put my dsf hat on thank you again
for being a silver sponsor because corporate memberships are very important to the financing
of the dsf paying the fellows like carlton so that's how it all comes together yeah and i miss
you guys i really you know especially since carlton was kind of my new first conference
first django con buddy like every time i see him i now now i haven't seen you in a year so it's
it. I miss you. Thank you. Um, well, as ever, we are at Django chat.com. We're at chat Django on
Twitter. Uh, there've, there've been some fun conversations on Twitter recently. Carlton,
you, you were very good about not, no, there it is. There it is. Well, no, but the not,
so not the post side that I edited out the pre-sign when he has to say something important,
I guess we didn't have anything important today.
So thank you for joining us, Calvin.
Really appreciate taking the time.
My pleasure.
All right.
We'll see everyone next time.
Bye-bye.
Bye-bye.