The Changelog: Software Development, Open Source - My roadmap to become a blockchain engineer (Interview)
Episode Date: November 8, 2017Preethi Kasireddy, a self-employed blockchain and smart contract Engineer, joined the show to talk about why she left the best job in the world at Andreessen Horowitz on the deal team, how she got ent...repreneurship envy, the roadmap she laid out in 2015 and where she's at today as an engineer, her excitement for blockchain-based technologies, and why blockchains don't scale.
Transcript
Discussion (0)
Bandwidth for Changelog is provided by Fastly.
Learn more at fastly.com.
And we're hosted on Linode servers.
Head to linode.com slash changelog.
This episode is brought to you by CircleCI.
CircleCI is a continuous integration and delivery platform
that helps software teams rapidly release code with confidence
by automating the build, test, and deployment process.
They recently launched version 2.0 of their platform We'll see you next time. builds to quickly troubleshoot and remediate. There's no pausing work while environments update, and language inclusivity frees up your team to use any toolchain or framework because CircleCI supports every language that runs on Linux.
And finally, control workflows, let your team run,
build, test, deploy stages as individual jobs,
which lets you fully customize your development process.
There's a ton more to learn about CircleCI,
so head to circleci.com
slash changelogpodcast. Once again, circleci.com slash changelogpodcast to learn more. Thank you. and smart contract engineer. We talked to her about why she left the best job in the world at Andreessen Horowitz, where she worked in the deal team,
how she got entrepreneurship envy,
the roadmap she laid out in 2015 and where she's at today.
We also talked to her about the excitement she has
for blockchain-based technologies
and why blockchains don't scale.
So, Preeti, almost two years ago to the day,
at the time of recording, September 11th, 2015,
you wrote a Medium post,
Why I Left the Best Job in the World.
You were at Andreessen Horowitz,
and you wanted to become an engineer.
Uh-oh, I spoiled it.
But a very lengthy post,
going through a lot of different options.
Tell us about that, and why engineering was a draw for you.
Yeah, sure.
I guess it probably makes sense to kind of start a little bit,
even before Andreessen Horowitz, to kind of give you a little bit more context.
So I was in engineering college, but I was in software engineering.
I was industrial and systems engineering.
And at the time, I really loved the major.
And I thought software engineering was basically like a bunch of nerds sitting in front of a computer and just doing really, really nerdy stuff.
Whereas systems or industrial engineering was like you're out in the field and doing like really cool system stuff. So for me, I had such a like wrong perception of what the different
engineering's were just because it's sad. But like most of the time before you go to college,
you don't really get a good description of what each of these fields are, what the actual real
world job is like. Where do you think your perception came from? Like that idea you had,
where do you think it originated in your mind? Yeah, I guess my parents are immigrant parents,
so they never really knew it themselves. And so they never taught me. And so it was kind of just
like this self-taught notion that like, or something that I just thought was the case
is because I observed it. Like when I visited some of these campuses, for example, and when
you visit the engineering department part
or the computer science department,
all you see is like really, really nerdy kids
walking around with like really big backpacks.
And I didn't feel like I really-
That's funny.
Yeah.
And I felt like I didn't fit into that,
even though I was like a pretty nerdy person.
I kind of always had this conflicting personality
where I was a super, super duper nerd
and I was like really into math and physics.
But I also had this social side to me where I wanted to interact with people.
And so I didn't want to be sucked into just like this nerd nation.
And that's what computer science was to me for some reason in college.
And even engineering itself was like that.
But when I did industrial systems engineering, we were kind of the cool engineers in school some people even cooler nerds yeah some people even called it like um
it's the major was like an acronym for was like isc industrial and systems engineering and they
even sometimes called it i'm a sucky engineer or i'm a snobby engineer or something like that
because they thought,
you know, we weren't real engineers.
But like we took, we still took very, very heavy math and physics and all that.
And I loved it.
But basically I got, I didn't really get a holistic picture of software engineering when
I was in college.
And when I was a junior in college, I had met someone from Goldman Sachs and he really
liked me and he's like, hey,
you should recruit for us. So long story short, I ended up getting an offer there.
I interned there and then they gave me a full-time job. So by the end of junior year, I already knew
where I was going in terms of full-time. And so I didn't really have an opportunity to explore
engineering opportunities after graduating college because that's where I was going. And so that's what brought me up to SF and San Fran. And then I pretty quickly realized when
I was a Goldman that I didn't want to be a banker. I didn't want to do finance.
It was just not my thing. I missed being an engineer. I missed really thinking through
hard problems and actually solving problems creatively. And I kind of decided that within
a year, I decided I was going to leave because it's not my thing. There's no point in staying
the full two years if I didn't want to pursue this banking anyway. And then I was going to go
join as an engineer at a small startup. And then serendipitously, I met a friend who was like,
hey, it looks like Andreessen Horowitz is looking for someone for their deal team.
You should just reach out and see if they're hiring.
I cold emailed them.
Long story short, I ended up getting interviews with them.
And three months later, I ended up getting an offer there.
So I was pretty torn at the point at that time because, as I said, I was trying to go back to engineering, but I got this really amazing offer to join a venture capital firm and be
on the deal team and so forth.
So I decided to go for it because I felt like it was a once-in-a-lifetime opportunity, and
I did.
And I honestly loved it.
Life was pretty great when I was at Andrews & Horowitz because my job was basically to
meet with entrepreneurs every single day and hear them talk about what they're building, what problems
they're solving with the product they're building.
It was kind of cool to see them come in with this incredible ambition and drive to build
something and change the world.
And it was up to me and my partners to kind of decide whether we would give them the funding
to make that happen.
And so it was a very exhilarating job, very emotionally and intellectually challenging.
But what started to happen was I started to get envious of the entrepreneurs.
And I was like, I want to be in their shoes because it was so cool to see them building and really being out there building something.
And I felt like I was just listening to them and I wasn't doing the same thing.
And one of the core thesis with Andreessen Horowitz is we always invested in technical co-founders.
Meaning the founders should be technical.
Because if you're building a software company and you don't know software, that's kind of a problem.
And so a lot of the entrepreneurs we're meeting were engineers.
They were software engineers who turned into entrepreneurs.
And I also wanted to be an entrepreneur,
but I also knew that I was missing that skill set of knowing how to do software engineering.
So I was kind of torn and it was like eating me apart like over time.
And I was like, you know what, I'm just going to start to learn how to code on the side.
So I started with Python.
I remember I learned Python the hard way.
Picked up that book.
I dropped it within two weeks because it was just like something didn't click.
And I was like, this is too hard.
I don't have time.
I'm busy with work.
And then I was like, okay. Then like a couple months later, I got re'm busy with work. And then I was like, okay. Then like a
couple of months later I got re-motivated and then I tried this online course. And again, like I did
that for like two, three weeks and then I dropped it again because I got busy with work and I was
just like, I couldn't really focus on it. And I was like, not really, it was not clicking to me.
It wasn't something I was like, oh yeah, I want to go home and do this. It just like, it felt like
work. And then I was like pretty disappointed in in myself. And I kept trying and trying and nothing was working. And I was
like, maybe this just isn't for me. I was like, you know, most of the engineers I meet are like
super passionate about it. This is what they do day in and day out. It doesn't sound like I'm
that interested in this. So maybe engineering or software engineering isn't for me. And then
my ex-boyfriend at the time,
I was telling him how I'm struggling to pick this up.
And he was like, why are you learning Python?
Go learn JavaScript.
I was like, what's JavaScript?
And the next day, I remember I didn't go to work.
It was a Friday.
I just didn't show up.
And I just sat at home.
And I went through eight hours.
Just didn't show up.
I went through eight hours of JavaScript on Code Academy.
I think they have this like 10 hour course
and I just like sat there all day,
like not doing anything else, but going through this.
And I was like immediately hooked.
Something about JavaScript just like hooked me.
And I think it was definitely that immediate feedback
that you get with doing something in JavaScript
where you can change a CSS thing or change some little HTML element and they
can refresh the page and see that result right away.
It kind of makes you feel like a builder and a creator and you can like let your creativity
out with your CSS and HTML and like all that.
And something about that really, really, really hooked me.
And I was like, ever since since then i just like became hooked and javascript kind of i always say this like javascript was my gateway
drug into programming because i tried python it didn't work for me i tried other stuff it didn't
work for me but javascript just like clicked and then i just honestly just started devouring this
stuff and it was like something i was just doing all the time anytime i had free time it was to the point where i remember i was at work one day and doing javascript
and my boss was like are you sure you still want to work here um and you know at the time i was
considering like okay what do i want to do like i'm really falling in love with coding but i also
have this amazing job so i was kind of conflicted. And then at the same time,
I was looking into a few bootcamps,
like particularly Hack Reactor.
I was like, you know what?
If I can get into Hack Reactor,
which is like the number one bootcamp
and it's like a three month thing
and you just basically go all out,
9 a.m. to 9 p.m.
just doing coding for three months.
And then you kind of emerge as like a programmer
that's almost ready to be out in the industry.
I figured that's a cool way that that would be a good way to kind of like jumpstart this process if I really want to do it.
And so I was like, if I can get into that school, I'll consider leaving.
So then I applied, I got in and then I was like, OK, so it looks like I am leaving.
So then I finally made the decision to leave.
And in the post, I kind of outlined a bunch of other alternatives I did consider.
Like, you know, for a long time, I considered going back and trying to apply to like Stanford or Berkeley and get into the computer science program and do the master's degree.
But honestly, I talked to a lot of people.
And what I realized is that computer science, I mean, especially if you're doing web development, is a lot less about a degree.
And it's just, you can learn a lot of it on your own.
And everyone's like, just teach yourself it.
Like, why would you spend two years in school and spend that extra money?
Just like, just go teach yourself it.
And I was like, I don't know if I can teach myself this stuff.
So I was a little bit not sure at the time of that.
And then I talked to people about also like you know getting maybe even a PhD
and and then I talked to a bunch of academics that I that I got in touch with and they were like no
you don't seem like the academic type at all like you should just go and hack and learn on your own
everyone kind of gave me the same advice they're like go out and learn it like I don't think you
should go back to school and I was like all right um so then that's when i
was like you know what it sounds like hack reactor is a good way to jump start this process and then
it's not it's by no means like the end of my education process but it was like a start
and then i can go on from there so that's when i decided to leave and join and then i did a bunch
of hacking on my own then went to hack reactor and then graduated and then did a bunch of hacking on my own. Then I went to Hack Reactor and then graduated and then did a bunch of hacking on my own again for like a couple of months.
And then finally joined Coinbase after like a couple months after that.
So, yeah.
As a software engineer?
Yeah, I was a full stack software engineer there.
Awesome.
So it seems like perhaps a faster path, and I think you do address this, because you have the network at Andreessen Horowitz and you have access and close relationships with entrepreneurs and startups who are always looking for talented people.
You considered perhaps just hooking up with a startup that looks like it has a lot of promise and learning on the job, like taking a job with them?
Why do you rule that out as a reason?
Yeah, no, that's a good question.
That's a good question.
I actually had a bunch of offers from startups that were saying,
hey, you're smart.
We're willing to let you learn on the job.
But for some reason, I had my mindset on happy actor because i i i felt like i
i didn't feel completely confident going into the job at that point when they gave me those offers
i didn't feel like i can go on the job and actually be productive even though they were
willing to give me the time to kind of learn on the job i don't know for me if i'm going to go
on a job i want to kill it and i didn't feel like I would go on the job and kill it. I felt like I'd go on the job and be
learning for two months and then maybe getting good. Whereas like, if I can just independently
learn and get to a point where I'm confident in my skills, then join, then I can go to the job
and actually add value. It's just a personal, I think it was more of a personal thing and it was like i wanted this room to i wanted these like three to six months of my own time to grow hack
learn like struggle all that stuff before i put myself out there in front of like a real software
engineering position so it sounds like your time at andre Horowitz was, like you said, you were in front of entrepreneurs, you were on the deal team, you were hearing pitches, and you were essentially part of the deciding team to fund somebody's idea or not.
And you got that envy.
So I'm confused if your goal is to build your own company or to eventually get hired as an engineer for somebody's company.
Yeah,
that's a good question.
So I guess I wasn't clear on that.
So initially the goal was to be an entrepreneur.
And in fact,
it still is my goal.
And the,
but what happened was I just started to fall in love with coding itself.
I love just building software.
And I figured,
you know what?
Like I truly believe in the idea that like the best
startups are found from problems and not from wanting to start a startup. So yes, I do want
to be an entrepreneur, but I want to be an entrepreneur when I come across a problem that
I'm really interested in solving. And I haven't come across that. So I figured until that happens,
I'm going to go be an engineer and just grow my technical skillset as an engineer. And then
as I'm doing engineering,
and as I'm just out in the real world, I'll run across problems. And one of those problems will
be something I want to solve. And that's when I'll kind of pick that up and do something more
entrepreneurial. So that was kind of my thinking. And that's why I decided to kind of go and follow
a more traditional engineering route. And then, in fact, the reason I love Coinbase was because I got the entrepreneur bug. And so that's kind of the
end story of Coinbase. But yeah. Right. Well, that resonates with me, especially just the love
of the coding. So I've never considered myself an entrepreneur. Some people have told me I am one.
I always just thought of myself as like a small business person or like a business person,
but I've never had big aspirations of like the big, like building a big company, I should
say.
Um, but you know, isn't it like doing business is a thing that I go about doing at the same
time down through the years, I've had opportunities to do other things that would take me away
from the
code you know some more some less and at the end of the day when I think about like what's my
happiest day of work and it's like eight hours of software development maybe six hours because
they can get it can get it can wear you out quite a bit you know three in the morning nice long
lunch three at three in the afternoon and that's like a perfect day for me at work. And so I've just, you're, you know, you have
the entrepreneur bug, but then you're also like, you just fall in love with the actual
software development. And I feel like that's something that happens to a lot of people.
Yeah. I mean, it's hard because I mean, I, as I said, I have this conflict. I've always had
this conflicting thing where I love being with people and dealing with people, understanding people.
So I always thought, like, I'd be a pretty good, like, people manager and just, like, or a public speaker or whatever it is.
Like, I love that aspect.
But the more you do software engineering, it's just so, I think the part that we love about software engineering is that it's gratifying because you're constantly learning and you're constantly solving problems.
Whereas when you're dealing with people, sometimes you can't solve these problems.
They're really hard problems.
And it's not as gratifying sometimes.
Yeah.
Whereas with code, there's a meticulous way of how you can solve almost any problem.
And if you can figure that out, it just feels good, in my opinion.
Yeah, there's also slower feedback loops with people.
And even with business decisions, like let's try this business opportunity.
And you may not know for three months, six months, who knows, years, whether or not that was actually like a course correction or if you were moving further off course. Whereas with software, especially like you said with that web development
where you're hitting refresh, or I know some of us don't even hit refresh anymore, live
reloads. But I have the refresh so ingrained, I actually turn off live reloading in tools
that provide it because I just, I'm going to hit refresh no matter what. And even if
the page is already refreshed from the live reload, I still hit the button. I just can't stop it. But like that is so immediate. That's me, dude. I'm going to hit refresh no matter what. And even if the page is already refreshed from the library load, I still hit the button.
I just can't stop it.
But that is so immediate.
Command R is like, I hit it probably 5,000 times a day.
It's so immediate.
And it's so gratifying to see improvement
or to see the opposite of improvement.
I can't think of the word disprovement.
I don't know.
Things getting worse.
And you can course correct.
And it's harder with things that are less black and white.
It's easier to control. When software is a little easier to control than say
the unknowns of business decisions so to speak.
Marketing tactics or growth strategies or
hiring the right team and enabling the right kind of team to build
the right kind of thing you know that's those are all uh definitely longer term you know kind of
pitches so to speak whereas with software it's a bit easier to control the output yeah exactly and
i think the other thing with being an engineer at least for me what i find really satisfying is like seeing your own growth
as an engineer i find that like incredible like i i just i'm able to make certain decisions
trade-offs that i just wouldn't have known how to do even six months or a year ago and i love
seeing that growth whereas in a business situation it's a little bit harder to say like oh i became a better ceo like how do you measure that
um and so that's true so you you had that post in in 2015 we're at we're almost two years to the day
and so it's probably a good time to look back a little bit you laid out a roadmap when you left
andreessen horowitz um and i have a three-step roadmap we're just gonna see how you're doing on
that uh you mentioned you were at Coinbase,
and you left because you got the entrepreneur bug,
but let me read this back to you.
The first step in your roadmap was to figure out
what you like developing the most,
front-end, back-end, mobile versus web,
and what application areas you find the most interesting,
machine learning, artificial intelligence, robotics,
computer vision, et cetera.
Step two was get really good at it,
and then step three was use those skills to change the world. That could mean building a world changing company or something else entirely. So where are you,
do you think on that roadmap today and how do you feel about your progress so far?
That's a really good question. Um, so I'd say my, I'd say, okay, so being at Coinbase gave me an amazing opportunity to experiment with every different area.
Because I joined as a full stack software engineer.
I worked across the stack, front end, API, back end.
I worked in multiple languages.
I even tried a little bit of mobile development using React Native.
And so I kind of was like, I was very broad as an engineer.
And even on my side projects, I was just naturally curious and just like teaching myself a bunch of different things like TypeScript.
I was teaching myself Elm and functional programming.
I was teaching myself more of the React Native stuff at home.
So I purposely kind of just like decided to just like learn as much as I can in that time
and like up until that time and during Coinbase as well.
And that gave me a pretty broad view of like different areas.
And then after I left Coinbase, I started to also get into some of the more machine
learning stuff.
And I was working at a company that was doing machine learning and NLP.
And so really got deep into that for a bit.
And then when I left that, I was like kind of taking a step back.
And I was like, all right, of these things, like what I started to naturally, I didn't even think about this, actually.
I just started to naturally just fall in love with core blockchain stuff and I
honestly don't even remember how I got into it I would like obviously I joined Coinbase because I
was in love with blockchain and I can explain more of like why I fell in love with blockchain but
being at Coinbase gave me visibility into the blockchain world and then after I left I was
kind of thinking back and I was like of all the things I did I felt like the blockchain stuff was
something that kept me interested for the longest and I decided to kind of thinking back and I was like, of all the things I did, I felt like the blockchain stuff was something that kept me interested for the longest. And I decided to kind of just learn,
go deeper into that. And I've been doing that over the last six to seven months. And honestly,
I've definitely 100% doubled down on blockchain stuff now. And so if I had to answer that
question, I'm at phase two, where I've kind of figured out what I want to double down on.
And now it's about getting really, really good at it.
And so that's why if you kind of follow my blogs, like initially they were all about JavaScript or the web and so forth.
And like just like general broad stuff, types, static types, et cetera.
And now I'm doubling down. I'm more narrowing my focus to writing and coding and teaching mostly blockchain stuff.
So I think I would say I'm in phase two.
It's interesting to see you in that camp too with giving your beginnings.
You know, like everyone at Goldman Sachs is probably like knee deep and learning about blockchain and implementing it and doing, you know, innovative things for the future of currencies and
the future of commerce across the world you know and that's you you said i think at one point you
hated finance and to some degree i mean blockchain obviously solves a bigger problem than just
simply finance but that's why she hated finance yeah i did did she not say yeah yeah no i did say
that it's so funny okay bring that up because every time i look so i was
a goalman i was like finance sucks like i don't want to be in finance and then it sucks maybe
it sucks and then i went to and then i ended up at andrews and harwoods which is still finance
and i was like why am i still in finance and then i ended up at coinbase which is typically which
is a fintech company when you think about it and then i'm black
back into blockchain so i think like even though i said i hated finance i keep ending up there
i don't know what it is maybe the different perspectives of finance you don't want to be
on the giving people money side or that's a you actually want to maybe be in the the technology
side of it i think that the future digital currency is pretty interesting. And obviously that's where, you know, it's all blockchain.
Is it the Goldman Sachs CEO,
the one that said that cryptocurrencies are a fraud?
No, that was the JP Morgan one.
Okay, JP Morgan.
Okay, got to get my company.
I was thinking because Adam said probably people at Goldman Sachs
are learning about these things.
And I thought of that quote.
Basically, the JP Morgan CEO, I believe,
or a C-level executive at J.P. Morgan said that
cryptocurrencies are a fraud and he would fire
any of his traders who are dealing in them or something
for incompetence or just recently.
People have different things to say at all times.
I would hope the Goldman CEO is smarter than to say that
It's the most ridiculous thing I've heard
Yeah, I agree
It's almost like
who said something about the iPhone?
Somebody prominent said something about the iPhone
day one. Everybody was saying
it wouldn't last. It's almost like that
Something so disruptive and innovative, you wouldn't last so it's almost like that like you something so disruptive
and innovative you shouldn't uh be so bold to say you know the future is bleak for that thing
you know because it's what you have a chance i think it was actually microsoft somebody microsoft
said this bomber bomber laughed at the that's right yeah yeah he did did he in situations like
that yeah he did he laughed at it I can't remember the exact quote,
but it looks pretty bad in retrospect.
That being said, like I said,
a lot of people were laughing at it
in positions where they should have been
calling an all-hands meeting at their company
and changing their current strategy.
It always reminds me of this last top post about the iPod.
What was it?
Smaller than, hold on a second.
You guys know that one?
Off the top of your head?
Okay, so Commander Taco wrote about the iPod
when it was first announced in 2001.
This is one of the founders of Slashdot.
He said, no wireless, less space than a nomad, lame.
And so it's just kind of comparing something brand new
to the current state
of the market and not seeing dramatic changes that are happening it's just proof that specifications
don't define the ability for a product or something's ability to do its job well right
like you often buy a computer potentially on its specs, right? Or something like a camera or whatever.
But it's actually what you can do with it as a creator, you know, or as an innovator, as a doer that really matters. This episode is brought to you by Linode, our cloud server of choice.
Everything we do here at Changelog is hosted on Linode servers.
Pick a plan, pick a dist distro and pick a location and
in seconds deploy your virtual server drool worthy hardware ssd cloud storage 40 gigabit network
intel e5 processors simple easy control panel nine data centers three regions anywhere in the world
they've got you covered head to linode.com.com slash changelog and get $20 in hosting credit.
And by TopTow.
TopTow is the best place to work as a freelancer or hire the top 3% of freelance talent out there for developers, designers, and finance experts.
In this segment, I talk with Josh Chapman, a freelance finance consultant at TopTow, about the work he does and how TopTal helps him legitimize
being a freelancer. Take a listen. Yeah, in my arena within TopTal, I specialize in everything
from market research to business plan creation to pitch decks to financial modeling valuation.
And then that leads very naturally into fundraising strategy, capital raising strategy, investor outreach, closing a
deal, deal negotiation, how to value the company, how to negotiate that. And all those skill sets
that I have continued to hone over on the TopTal side are ones that I actually deploy every single
day in my own company. Freelancing can sometimes be seen as not legitimate or subpar work. Now, I would
argue that when you work with a company like TopTal, they put so much vetting into not only
the companies that you work with, but also the talent that you work with, which I'm on the talent
side, that it adds a level of legitimacy that isn't seen across other platforms. And that for me,
as the talent side, is incredibly fruitful and awesome to be a part of.
I enjoy the clients.
I enjoy the other talent that I get to talk to.
I enjoy the TopTal team.
And that creates an overall positive experience, not only for TopTal, but for me as the talent
and for the client as the company on the other side.
And that is really not seen or is the experience across other platforms in the freelance
market. So if you're looking to freelance or you're looking to gain access to a network of
top industry experts in development, design, or finance, head to toptal.com. That's T-O-P-T-A-L.com
and tell them Adam from the Change Law sent you. For those wanting a more personal introduction,
email me, adam at changelog.com.
So, Preeti, you started off in finance and in a full circle event you're very much into
what we'll just call finance adjacent blockchain technologies um you decided that it was very
interesting very important and you know perhaps your path to step three in your roadmap which is
to change the world.
Tell us again and go in more depth about what got you so excited about blockchain
and while you're today,
call yourself a self-employed blockchain developer.
Yeah, sure. That's a great question.
So I'll be honest,
one of the things that I'm always excited by
are problems that are not figured out.
And blockchain is definitely one
of them in the sense that there is this amazing technology that got created. But the actual
applications and use cases have yet to be created. And there's so much room for creativity and
innovation. And I'd say that's one of the main reasons why I'm so attracted to this industry,
because I naturally have the entrepreneurial spirit where I want to solve unsolved problems. And that's one of the reasons why I'm gravitating
toward it. But at a more fundamental level, I think the technology itself is super, super
interesting. I think earlier you were saying how blockchain is interesting as a digital currency.
I'd go a little bit further than that. I'd say i actually don't get excited by digital currency
per se because digital currency is just one application of the blockchain um there's so
many other applications that i think have some have potential that haven't been created yet
and i'm more excited by those applications because in my opinion it's really hard for the current currency system in any nation. Like, for example,
take the US. For cryptocurrency or digital currency to replace fiat currency, that would
take a lot. The government has a really tight control over the monetary policy. And I just
don't see what benefits digital currency provide today that would make people switch over, that would make the government friendly to this and so forth?
Because in the end, what blockchain, what digital currency is, it's completely decentralized, completely open and completely censorship resistant, which is not something any government really wants.
And so for me, I'm more excited by what else blockchain enables. And at a fundamental level, blockchain is a decentralized technology where it's maintaining a ledger of transactions or basically state changes.
And these state changes are cryptographically secure because they are maintained by something called a consensus process.
And this consensus process in Bitcoin or Ethereum is called proof
of work, where a bunch of miners are there and they run a bunch of complex computations to
validate these transactions and they get paid for validating this blockchain. And so the entire
chain is basically, it's decentralized. No, it's trustless because there's no need to
trust any central party to maintain this database or this ledger. And then it's decentralized no it's trustless because there's no need to trust any central party to
maintain this database or this ledger and then it's completely censorship resistant resistant
because you can't have really any central authority trying to censor it um and it's
completely secure because it's cryptographically secure and so with those kind of primitives you can do just so much on top and
that's kind of what i'm excited by now i know that one of the things about it is the untapped
possibilities of things that we we can't possibly have imagined yet but what are some of the you
know starting to be tapped possibilities with blockchain technologies put to good use that aren't necessarily ICO,
they're not token-based economies
that are starting to pop up that you see
and say, okay, this is a different use of the blockchain
that will radically change this particular aspect of life.
What are some things that are at least on the horizon?
Yeah, I would say I wouldn't completely
turn off tokens as a valuable application.
I think tokens are incredibly valuable
depending on how they're being used.
So just out of, I guess like for,
I'm not sure if people are familiar with Ethereum,
but Ethereum is one of the,
Ethereum is a blockchain just like Bitcoin.
And one of the things,
Ethereum makes it super easy to do.
You can do this on Bitcoin too,
but Ethereum makes it super easy to create
basically alternate currencies,
which are what you're referring to as tokens.
I think there's a lot of actually interesting use cases
for these tokens,
which I'm pretty excited by.
So,
for example, there's applications
that you, one example is there's a Brave browser, which you might've heard of, which Brendan Eich
is working on. Brendan Eich was a creator of JavaScript and they're using a token or they're
going to be using a token in their browser to align the incentives of the end user versus the content publishers
versus the browser itself. In the sense that unlike Google Chrome, where they, you know,
take the user data and they sort of sell it to the publishers and, you know, publishers are allowed
to monetize on that data and kind of suck eyeballs and attention, but the users don't get really paid
for that attention. What Brave is doing is using a token system to align the incentives so that users still
give their attention to these publishers, but they get paid for it, these tokens.
And similarly, the user can also choose to pay the content publishers for their quality
work if they want to.
And then the browser also takes some cut of that.
So in that sense, tokens can be used to align incentives within an application in a really,
really interesting way that was just never possible before. It's like all these applications
can now have this digital currency that aligns incentives in a certain way in a completely
secure, open, trustless manner, which I think is very interesting. If you're talking non-token stuff, I guess basically one thing that I've found really
interesting recently is I think I met a company that's trying to bring basically real world
real estate assets onto the blockchain.
And so they would basically, you know, again, the blockchain is just a ledger. And so they would basically maintain
these assets on the blockchain and allow users to transact on the blockchain to trade these
different assets or buy and sell various portions of these assets and so forth. I think that's
pretty interesting if you can just have the entire world's real estate on the blockchain and it's completely
open and you don't need to log into these proprietary real estate systems to figure
out how much a certain property costs or how much it costs to burn it and bid it and so forth
um so yeah yeah you cut out you cut out a lot of middlemen that are currently in our existing systems, uh, which provide really the,
the security,
right.
Or the risk,
you know,
they fight the risk problem.
Um,
we don't need that because you have a consensus,
uh,
a mechanism which is providing,
you know,
legitimacy of transactions,
which is,
is huge.
And we'll,
you know,
reduce costs of things and probably put a lot of
industries out of business, which you'll have lobbyists fighting against things.
So there's lots of large-scale implications of these things being put to more uses.
But one of the problems that you've recently written about with putting blockchains to
use at scale is that they don't really scale very well
yeah can you tell us about i mean talk about hard problems that you like and uh you know dealing
with technologies that aren't quite figured out yet um this seems like something that a lot more
research has to go into which is how we actually get blockchain chains to work work at scale because you have a distributed public database, which is append
only.
So it just grows and grows and grows.
Tell us about that a little bit.
So one thing to note is it's actually not distributed.
It's decentralized, meaning every single node in the network carries a copy of blockchain.
Of course, there's like clients which only carry certain,
that don't necessarily need to carry the entire state,
but every fully operating node
carries the entire state.
So it's decentralized,
which means basically that every single node
in the network needs to process every single transaction
and maintain a copy of it.
And that means your computer, your Mac computer,
if you're maintaining a full node,
your Mac computer has to're maintaining a full node your
mac computer has to contain the entire blockchain since it started which obviously becomes harder
and harder as the blockchain grows and that's why that's why blockchain is hard to scale at a very
high level and so every basically blockchain that operates in like a public decentralized way have to either make a trade-off between
having low transaction output or having it be centralized because what i mean by centralized is
for as the blockchain grows and as the network becomes more and more heavy as the state becomes
heavier the only way for nodes to be able to process that is if you can beef up your system
and and so more more it just
becomes a smaller and smaller pool of people can actually handle being a fully operating node and
that's why it would become centralized if you don't solve the problem so it's like the weakest
link problem where if you have 30 nodes and one of them's a dud it's going to slow the whole network
down because that one has to also process all the transactions.
Yeah, exactly.
Yeah.
But the blockchain, though, is append only, right?
So you're always putting something on top.
You're not going back to the bottom of the stack and changing the bottom of the stack.
You're always putting it at the top of the stack.
That's right.
So why couldn't you just like essentially in the way databases do it, like shard pieces of it and just put it somewhere else and have it as like archival or access to, you know, as needed.
That's exactly, that's one of the solutions that, for example, Ethereum is looking into right now. So the fundamental thing is like, you need to figure out a mechanism where you can, let's say you shard, you still need to have, there still needs to be some way such that every node can still validate every transaction because that's the fundamental premise of a
blockchain like every node still be should still be able to validate it so if you shard it and
only make some transactions available to some some some nodes then it's not possible for that
node to to validate every transaction so you have to create a mechanism so that
even if you shard, every node is still able to
validate the blockchain.
That's why I thought.
Otherwise you're basically centralizing again.
Because you say, well we'll have these
13 root nodes that do all the transactions
and the rest of us can have
less.
It's a trade-off though, right?
The premise of the protocol and technology
is is to be decentralized right right but to scale you have to make those hard choices
which could be decentralized some of it yeah so the underlying thing is like you have to figure
out what a shard with like you can't for the blockchain to scale we're obviously not experts here either yeah i mean i'm just i'm totally spitballing
preethi is the expert we're we're the layman here yeah just for the blockchain to scale like it's
impossible for it to scale if every every node needs to process every transaction so
you still need to have a mechanism where it even if you shard it's it has to be possible for all
the nodes to still trust every that every is valid, even though they don't have access to all the transactions.
And that's hard.
And that's why it's been a hard problem to solve.
And so in Bitcoin, one of the things with Bitcoin scalability is Bitcoin also has a blockchain.
They have blocks.
And they ran into the scalability problem about three years ago.
Or they foresaw this problem quite a long back ago,
like almost three or four years ago.
And with them, their solution was,
they wanted to increase it either, there's two solutions,
either increase the size of the block itself
so that you can fit more transactions in a block
and therefore every time a block gets processed,
you're processing more transactions in a second. Or another solution was called Segwit, where you basically take the
heaviest parts of the transaction and move it to another part of the block that don't necessarily
have to be calculated in the actual size of the block so they can still fit more transactions.
And so there's like short-term solutions like that. But in the long term, I definitely think
there's a lot more complicated or more sophisticated solutions that need to be created.
Like sharding is one you're saying.
Another one that I've heard of is like Plasma, which is something Ethereum is researching where they're basically using like this MapReduce framework to scale the blockchain.
And then another very, very, very interesting one is state channels.
And state channels is basically like saying, okay, if the blockchain, if it's really hard
to process so many transactions on the blockchain, why do we need to process everything on the
blockchain?
There's probably certain transactions that we could process off the blockchain and only
the ones that we need to process on the blockchain will process on the blockchain.
That makes sense.
The state channels offer that kind of solution where like you basically say, all right, blockchain,
I'm going to process X, Y.
I'm going to have, they have like some secure mechanism to say, all right, lock the state.
Then you process a bunch of transactions off the blockchain.
Then you submit it to the blockchain and then you move the state to the next state, basically.
Can I just share a small psychosis with y'all and just tell me if I'm the only one that
feels this way.
But something about append only databases bothers me because it's just always getting
bigger.
And to me, there's something like that makes me like nervous for some reason, like there's
no balance.
It's just going to continue. Does anybody have like a problem like with log files where you you got this log file
and it was fine and then like a few years later you open you look at it and it's like 700 gigabytes
or something yeah and you're like gosh that got out of control and so we you know we rotate log
files we manage these things and i feel like anytime you have like a blockchain to me there's
something that makes me not nervous in terms of like's going to go wrong, but it's almost like it just bothers me
that it's just going to continue to continue just to grow and grow and it's never going to stop.
Well, if you even look at things like communities,
like Node has grown by 400% or some sort of large number.
Communities like that or the way that five years ago
not that many
people were on the internet now where i think it half the population of the world is on the
internet or something like that like 49 or something like that but there's a stopping
point right when the very last person gets on the internet or you're done but with the
block change is going to keep going that's the point it's like it's uh with this like as all
these things continue to grow exponentially,
you're going to keep putting more and more pressure
on this innovative future technology.
And because of that, this scaling blockchain technology,
we have to come up with solutions.
It's almost like a ticking time bomb as well,
because every single day, as we speak,
the Bitcoin blockchain and the Ethereum blockchain,
they're just growing, growing, growing.
And they're getting more and more unhandleable.
It makes me very nervous.
Yeah, that's a good observation.
I totally agree.
I guess like how do you, don't you feel it's the same way with a giant corporation like Facebook where they have database stuff going back, you know, like 10 years and they have half, what, like 2 billion users or something now?
Right. I don't know how it's any different.
And they're actually processing way
more data than the blockchain is today.
Yeah, pretty amazing, really.
I don't know how they handle
that much data. I'm not on the insides
of that, but I can imagine that it's a
very big problem with a very big team assigned
to it because it's the most
precious, you know
resource they have which is data it's it's the it's not just the the actual information like
the images the gifts the whatever it's you know all the sub data behind that like
the analysis on that the machine learning around things like how people behave and perceive or change jobs or change relationships or react to, you know, world changing news.
It's much more than just simply the activity.
Like Facebook's most valuable commodity is all of us arguing about politics.
That's true.
That's like most of their data.
Or storms.
You know, like recently i've realized how important real
time communication like that can be but then at the same time how misinformation it could be like
in in politics with the electing a president or with storms like trying to track down people to
rescue like they may not be there anymore just because they put out a beacon on facebook two
hours ago doesn't mean they're still there on the roof waiting to be rescued real time makes me nervous too i'm very nervous i'm just a nervous person well you're definitely
cynical about these things a little bit you're definitely uh you like to take the right steps
you know you're you're a planner you're a completionist so you have to make a good plan
otherwise that's actually i think that's probably probably it. You've psychologized me.
I'm a completionist and that's why the blockchain makes me nervous
because I know it's never going to be done.
I'm going to create a blockchain technology that ends.
And you're like, well, you got to open up a new blockchain
because this one's finished.
Anyways.
Well, that's the beauty of it.
You can verify anything in the past.
That's true. But it gets harder and harder to verify right because you have to go back through more and more
transactions you definitely have to find a way to archive you know parts of the blockchain over
time i mean there has to be a way to do that because otherwise you just whoever invented
that originally had to have thought like at some point this may grow huge
yeah no actually ethereum and bitcoin to offer offer that kind of stuff where that you can you
know you can download the full chain you can download some of the lighter clients you can
download the super light clients so they kind of figure out like some of the lighter clients just
carry the cash the state cash which is calculated in a certain way whereas like the
full nodes carry the entire data set so there's obviously a lot of ways so even though ethereum
a full node is like probably i don't even know how big it is now 20 gigabytes i don't know but
um the like clients that i use are on three to four gigs so not that big yeah not too bad so
pretty one thing that you're you're doing a great job
by the way of educating adam and i as we go here because we're very much uh crypto and blockchain
layman as we said but i think that speaks to what you've been up to for a while now which is actually
how we came across you um and how many people online uh who know you know you is because as
you've gone i mean back as you got started in software engineering you know you is because as you've gone, I mean, back as you got started in software engineering,
you know, slightly before that post in 2015,
and here we are two years later from that,
you've taught and you've written
and you've helped people learn along the way.
Can you tell us what's the impetus for that
and about some of the things that you're doing
with AskPreeti and with Between the Wires
and all the good stuff you've been putting out for people
to learn alongside you?
Yeah, sure.
I think from a very early age,
I realized I had, I think I told you earlier,
that I had this skill for communication.
And one of the things I've always wanted to do was blog,
and I just never had a chance.
I didn't really know what to blog about or what I wanted to blog about,
and I didn't feel like I had much to say.
But when I got into programming, it was much more straightforward of like,
okay, I can actually talk about this.
I can talk about what I'm learning.
I can share my learnings, and maybe someone in the world will find it useful.
And that's what I started to do.
And honestly, just you know I
remember when I was going through the boot camp when I was going through just like teaching myself
how to code I started doing it like every week or every every other week or something just kind of
talking about what I learned that week and how I think it'll be useful and over time those started
to you know people started to like it and I was like okay I guess people I guess there's something here and then I just kept writing and I was just like I honestly found writing as a way to kind of
solidify what I was learning myself because I would learn something and I would be like I want
to write about it and then immediately after writing about it it'd be like holy crap that
like that whole writing process just taught me so much more about what I didn't actually know about
what I thought I knew and every time I just kept I just kept doing that like every time I'd learn something
new I'd write about it and then I'd just grow and learn so much more by writing about it and
it almost became like this addictive thing where I just like I loved writing and people found
people found it helpful so I was like okay it seems like other people find it helpful too
and I got a lot of feedback saying that I have this ability to teach
or I guess like I can break down concepts in an understandable way.
And that's what kind of honestly kept me going.
It's like the reaction from my readers is what keeps me going
because like when you get that one thank you or that one like,
oh my God, this helped me, this totally helped me click uh totally helped this thing click for me like thank you so much or
when you just get these emails like like you know with exclamation points and like being so happy
that they learned something new it's just like it's impossible to stop because that's that's
kind of what keeps me going because it actually helps people um and then in terms of
as pre-c so i because i you know i kind of made this transition successfully i guess as a software
engineer one of the things i started to notice was a lot of people would email me or message me
on facebook or something saying like hey i really identify with or i really empathize with what
you're doing and i'm going through the same thing, but I'm not succeeding or I'm failing here.
I'm really struggling or whatever it is.
Like there's a lot of beginners who just weren't making it all the way through for some reason.
And it was like really hard for me to answer all these emails one on one.
And so that's when I decided to start that Ask Preeti thing where, you know, a lot of the questions were pretty common questions and similar questions across the board. It's like, hey, you know,
like I learned this and then I don't know what to do next. Or I learned a bunch of things,
but I don't know how to get a job. Or I want to learn React. Where do I get started? You know,
very common questions. And I was like, the best way for me to provide help at scale is just to
kind of answer these common questions and that's when
i started the ask briefly thing where i just like take a question break it down and then answer it
and honestly i'll be honest like i'm not doing much in those videos except talk about how i
personally went through answering that question for myself and i think that's the best i can do
right i don't know i don't have the answer for every single person out there, but I can talk about how I thought through the question.
And that way it at least gives people a mental model for how to think through a question because it's not I'm not trying to provide answers to everyone.
I want them to be motivated and give them the confidence to think through these questions themselves.
And that's kind of my goal with the Ask Briefly series. Yeah, sometimes the answers that we seek are like in the case of watching you or listening to your feedback on how to deal with certain things.
It's less about the answer and more about how you go about solving the problem or how you go about thinking through the various resources out there to make a good decision. Like for me, there's other things outside of what we
do here at the changelog that involve like taking pictures or shooting video that I do as a hobby
and find so much fun. And it's, it's really nice to see people, which is completely different than
programming, but there's a recipe for how to do certain things, but there isn't one recipe,
just like in programming to do the same thing. There's many ways to roam, so to speak.
And, but seeing how somebody But seeing how somebody uses certain things
or approaches a certain problem
and how they think through it
is sometimes more valuable
than the actual answer itself.
Yeah, exactly.
And I've gotten feedback like,
oh, can you actually walk us through an application
and build it front to back?
Honestly, that's, I don't know.
It's like for me, I i value i think engineers though one of
the core skill set of an engineer is being able to figure out stuff and the way you can achieve
that is by having confidence that you can figure it out and so my goal with this series is to just
give them the confidence that like i don't need to walk you through every single step of how to
do this but i want you to be confident that you can figure it out.
And here's how I thought through it.
And so here's how you should think through it too, kind of thing.
What's the state of between the wires?
I see it's pretty active.
You've got a lot of stuff happening there.
What's the back story on this?
Yeah, that's a good question. So Vivian Cromwell, who used to work at Google, and I,
we're both pretty passionate about
the developer community and really being involved with the developers and one of the things we
wanted to do was kind of show the inner workings of building a developer tool or building more
developer focused products because it's much different than building a product that's consumer
facing that's like profit-making and so forth,
because developer products are much more harder to monetize,
and they're just a different beast on its own.
And we want to really focus on the entrepreneurs
who are fundamentally developers.
And we want to ask them the hard questions of like,
okay, when you were building this product,
what are some of the toughest times you went through or or how did you figure out how to
monetize this or or like what was the what was some time one time that you had to fire someone
like kind of give developers an in into what it's like being an entrepreneur without drifting too
much into the consumer facing applications side side, if that makes sense.
Like, basically, do other developers communicating to other developers
about their entrepreneurial endeavors
and the problems they're running into?
So, for example, our first interview
was with Guillermo, who's building Zyte.
And we talked to him about why he's building Zyte,
what are some of the problems he's running into?
What are the challenges of trying to monetize something like that,
where there's a lot of free solutions out there already?
How do you actually pay your employees if you can't monetize this, right?
Like some of the hard questions that are harder to get an insight into
if you're just on the outside and using a product.
And they've been
pretty successful i think i think your series on youtube is pretty interesting too i mean you've
got three so far any more in the pipeline for any upcoming topics that you can sort of tease to the
audience um i have a list somewhere let me think i to go through, I need to go through my emails too, because I, I've been behind
on that, but.
I guess a better question might be, you know, how do you approach the new, you know, videos
you might, might go about?
Is it, is it, uh, you know, user submitted?
Is it like you hit a problem?
You're like, I want to share this.
Or is it simply, is it literally ask you, ask Preeti and people are submitting things to you and you go out and sort of like look at the problem and share how you would, you know, go about, you know, getting that first React job, for example, or whether or not you should go back and get that CS degree like you've mentioned in the second video you did.
Yeah, so when I launched the series, I put out, I just shared my email and I said email me with
your questions or frustrations and I'll pick the ones that I think I can answer best so I've just
I just receive emails and I kind of go through them whenever I have time and pick the ones I
like or pick the ones that I think I can answer I think the next one I want to answer is a very
common one even I had this question like a year ago of generalization versus specialization which is a very very interesting one and it really depends
but um yeah so once i pick the topic once i pick the topic i'll just it's just funny how many of
the answers are it depends i mean everything everything is depend that's why i don't like
to give 100 cookie cutter or like exact answers.
I don't think there is one.
Every software engineer I've met is so different.
And they've kind of all followed different paths.
What's a good kind of question if people are listening to this and thinking,
geez, I'm going to check this out.
And, you know, they want to ask you some questions.
What are the kind of questions you're seeking to answer?
Like ones where basically you're kind of starting out as an engineer or
you're done some engineering and you're trying to go,
either you're struggling and you don't,
and you have a question about why you're struggling or,
or you don't know what to do next kind of thing. We't or you you feel like you need some kind of uh basically like anything
that you would ask like a parent or a mentor is how i would phrase it parent or mentor okay
so getting people unstuck yeah basically that's cool that's a that's a fun thing to do i mean Yeah, basically. we got that after show that doesn't ever get really, really ever get aired. I'm often,
you know,
ask Adam,
it's often to some degree,
ask Adam,
but it's, you know,
I like helping people through their process,
getting unstuck or like looking into what they're doing and saying like,
have you considered this?
And that's a lot of fun for me to like,
cause it's,
it's very rewarding to serve somebody like,
like,
like that.
But then also just the process of like being able to look at somebody else's really interesting life and interesting skill set and
help them look at things differently to maybe get unstuck sounds like a youtube show
yeah do you feel i guess i'm curious like do you feel like when you provide that help or when you unstuck them, I guess?
Unstick, yeah.
Unstick them.
Do you feel like you yourself learn or like, and what about like when you hit questions that you might not have run across yourself or problems that you have not run across yourself. I just hope that hands up emoji and, and we're okay. Um,
when I don't know the answers, but I think I definitely learn, you know,
like because I get to learn about different types of people,
different types of ways they look at the world, you know,
they're often approaching problems very different than I've ever even
considered. And they may not even be asking for my advice.
Jared knows this.
I'm like, hey, you're taking this advice, whether you like it or not, to some degree.
Not rudely, of course, but it's like, it's not like they're seeking my advice.
But I definitely learned through the process of like trying to,
they may not even feel like they're stuck.
I might see that they're stuck or it feels a little one-sided now that I'm describing it,
but unsolicited advice.
They might want to be hanging up the phone,
but Adam keeps telling them advice.
But often people take it.
Preeti, you'll know exactly what we're talking about here in a few minutes.
That's right.
That's right.
Well, any other questions for us, Preeti, before we close up the show?
Or anything else you'd like to plug or talk about?
Yeah.
No, I think that was good.
Well, it's been fun hearing your story.
Obviously, you've come so far so fast, and that's great to see.
Not only did you have goals and you laid out a plan, a map for yourself, a roadmap, and you're following it, but then you're also giving back, which is the kind of people we love.
You know, people who help other people.
That's Jared and I's kind of people.
And we're glad to have you on the show.
Glad to have you doing things on YouTube and obviously Between the Wires and what you're
doing there.
A lot of great stuff.
So thank you so much for what you're doing.
And thank you for sharing your time with us today.
Thank you.
It was awesome.
All right.
Thank you for tuning into the show this week.
If you enjoyed the show,
share it with a friend,
rate us on Apple podcast,
and thank you to our sponsors,
CircleCI,
Linode,
and TopTow.
Also thanks to Fastly,
our bandwidth partner. Head to Fastly, our bandwidth partner.
Head to fastly.com to learn more.
We host everything we do on Linode cloud servers.
Head to linode.com slash changelog.
Check them out.
Support the show.
The changelog is hosted by myself, Adam Stachowiak, and Jared Santo.
Editing is done by Jonathan Youngblood.
And the awesome music you've been hearing is produced by Breakmaster Cylinder.
You can find more episodes just like this at changelog.com or by subscribing wherever you get your podcasts.
Thanks for listening. Thank you. Субтитры добавил DimaTorzok