egghead.io developer chats cover image

egghead.io developer chats

Latest episodes

undefined
Jun 4, 2018 • 24min

Brian Vaughn, React Core Team

We are joined by Brian Vaughn. Brian is on Facebook's Core React Team. He also contributes to a lot of open source products in the javascript space.While Brian went to college to study Graphic Design, he ended up transitioning into programming. During college, he did a lot of graphic design consulting work, as a way to pay his way through school. Eventually, he agreed to create a website for a client and found that programming was a much better fit.Brian built react-virtualized during his time he spent at Treasure Data. The company is really into open source, and many of his team members had projects out there. When they were writing the console, they used Facebook's fixed data table.However, it did not have the features that they wanted. So Brian volunteered and built what would be the first version of react-virtualized.The exposure he got from sharing react-virtualized with the community is what landed him the job on the React Core Team. A developer's success tends to come from sharing the cool thing they built. Share your work everyone!Brian talks about React's goals with 17. Dan Abramov and Dominique have been working on creating an optimizing compiler for react components. The idea is that the compiler can read your components and optimize them. You will be able to keep writing React components in ways that make sense to you, and it will compile them and optimize at runtime. The team is also working on making functional components more powerful, so you do not have to reach out to class methods. It will be interesting to see what will shake out of their work when using async and the compiler.Transcript"Brian Vaughn, React Core Team" TranscriptResources:react-virtualizedPrepackBrian Vaughn:WebsiteTwitterGithubJohn LindquistTwitteregghead.ioGithubWebsite
undefined
May 29, 2018 • 28min

Evan You, creator of Vue.js

John Lindquist asks Evan You when exactly did he become a developer? Evan talks about how the whole thing was a gradual process with no definite "I'm a developer now!" moment. Evan had a degree in art and art history, but he was finding it hard to find work. So Evan went back to school and enrolled in a design and technology program where everyone was forced to learn to code, this is where he first learned Javascript and found great enjoyment in using it.Google's Chrome experiments are what drove Evan to learn Javascript on a deeper level. Evan landed a job at Google Creative Labs after he created and put a portfolio of his prototypes out there once he thought himself to be good at programming. Google Creative Labs were looking for someone who could bring in design and build cool things quickly, they contacted Evan, and things sort of just fell together.Google Creative Labs was where Evan first started his work on Vue. As the project grew, the team started to use Angular 1. it had too many features that they didn't need. Evan also didn't like some of the design decisions that Angular 1 had. So, Evan started to work on a templating library just for his personal use. After six months, in February 2014, he officially released it as Vue.js, putting it out there for others for others to use. Initially, it was just a templating library but as the community grew and more features got requested Vue got built into the framework that it is today, being compared on the same level as React and Angular.Finally, Evan and John discuss Vue's future regarding single file components and proxies. Currently, there are still a lot of problems going with the compile on the fly approach. However, there is a spec being discussed called HTML Modules. Html Imports are getting dropped from the spec. There has been discussion around the HTML Modules spec that looks very similar to what single file components look like on the platform level.Evan plans to refactor Vue to leverage proxies. Currently, when Vue receives data, it will walk through all of its properties and convert them to getter/setters, this has caveats such as not tracking newly added properties when it finishes. Proxies allows them to get rid of these caveats. Proxy traps can track these changes!Transcript"Evan You, creator of Vue.js" TranscriptResourcesVue.js WebsiteHTML Import SpecAll About Reactivity in VueGoogle Chrome ExperimentsGoogle Creative Labs Five ProgramEvan YouGithubWebsiteBlogLinkedInTwitterPatreonJohn LindquistTwitteregghead.ioGithubWebsite
undefined
Apr 19, 2018 • 37min

Iheanyi Ekechukwu on education, programming, and managing side projects

Today Joel catches up with Iheanyi Ekechukwu. Iheanyi is a Product Engineer currently working at DigitalOcean. He previously worked at IBM on Watson. They also talk about Iheanyi's education, stack, and side projectsIheanyi started out majoring in Computer Engineering, but switched to Computer Science after he figured out hardware just wasn't for him. He now lives and works in Brooklyn and spends most of his time coding (though he always brings his design skills to the table).Iheanyi's design comes from a dual degree program at Notre Dame, the college where he graduated. He noticed a lot of subpar interfaces coming from pure programmers, and he was frustrated with that, so he took his school's opportunity to learn design and apply it to his work. Even if he isn't a designer, he uses his skills daily to communicate with designers and make whatever he works on that much better.Iheanyi started using Ember back during college. He was frustrated by his school's class search interface, and he set out to improve it. Ember and Rails were like a match made in heaven for him, Ember having been authored by ex-Rails core team member, Yehuda Katz.Joel discusses with Iheanyi what he's currently using in his work. They get into GO, and how Iheanyi has enjoyed working with a statically typed language when doing back-end work. Not having to worry about full test coverage when refactoring has been great!Lastly, they talk about the various side projects Iheanyi has going. Such as Interface Lovers, a blog where top designers are interviewed and share their work music playlists. Also, Seeker, a job-board app that allows you to connect your strip account to it and have companies submit jobs.Transcript"Iheanyi Ekechukwu on education, programming, and managing side projects" TranscriptResourcesseekerInterface LoversCreative BlackChef WatsonIheanyi EkechukwuWebsitePodcastTwitterGithubegghead.ioJoel Hooks:TwitterWebsite
undefined
Apr 3, 2018 • 27min

Michel Weststrate creator of Mobx and Immer Libraries for JavaScript

Joel interviews Michel Weststrate, author of Mobx and his new library, Immer. Today they get into the power of Immer, its early success on Github, common mistakes in state management, and what is next for Mobx.Immer is a light-weight, immutable state-management tool. Michel talks with Joel about some of its capabilities. Immer takes an object and a function and can track all the changes made to that object, it then gives you back the original object and a mutated copy. Immer can replace reducers, Michel calls them "producer" functions as they "produce" the new state.Joel then asks Michel "what makes state management so hard for people and are they overcomplicating it?" This question leads to Michel explaining that people don't think enough about the structure of their state enough up front. When you talk about state, there are three distinct concepts, values, references, and identities. However, people tend to only think of state purely as data. "You have to think about what is going to store it and what is going to reference it."Michel talks about how the mobx-state-tree fits into an application. Mobx is unopinionated; it doesn't tell you how to organize your stores. mobx-state-tree, however, is very explicit about the three concepts of state, values, references, and identities. With mobx-state-tree you organize your data into models and tell it how they relate to each other. It's all about consistently organizing your state!What's next for Mobx? Michel is currently working on some exciting features using proxies to make Mobx even more transparent than it is now. Michel has also been thinking about improving on asynchronous processes and how to leverage async actionables.Transcript"Michel Weststrate creator of Mobx and Immer Libraries for JavaScript" TranscriptResourcesImmerMobxMendixMichel WestrateMediumTwitterGithubegghead.ioJoel Hooks:TwitterWebsite
undefined
Mar 13, 2018 • 47min

Jack Doyle, creator of Greensock

John Lindquist speaks with Jack Doyle, the creator of Greensock. They discuss many things including the motivation behind the creation of Greensock, managing GSAP forums, and how he transitioned from Flash to Javascript.Jack didn’t initially create Greensock to be a monetized business, but rather a helpful tool for other developers. He was working at an ad firm doing animation work, and it was there that he found the inspiration to create Greensock.The Robert Penner easing equations were like magic for Jack. Such simple equations that could create such cool effects were terrific. He talks about how he doesn't consider himself a math wiz in the slightest. The visual feedback that animation gives with the equations however really help him solidify the concepts.Jack's success turning his side project into a successful business is genuinely impressive. It was a stressful time for him; he was working for the agency still at the time. People don't feel safe with a product that might lose support any day, so he goes into the security behind a financially backed product and the factors that lead to him monetizing his business.Finally, there is a lengthy discussion on the challenges of having to maintain such a universal library that works on nearly every platform. There are a *lot- of edge cases. Jack also makes an effort to keep the API stable, so that questions that you find online from ten years ago can still apply to you today.Transcript"Jack Doyle, creator of Greensock" TranscriptResourcesGreensockGreensock ForumsGreensock Ease VisualizerJack DoyleTwitterGithubJohn LindquistTwitteregghead.ioGithubWebsite
undefined
Mar 6, 2018 • 47min

Sarah Drasner talks about SVG animation with Greensock and Vue.js

John Lindquist interviews Sarah Drasner, a senior cloud developer over at Microsoft and a Vue core team member. She is also known for making super cool animations. Today they discuss what got her from an art background to a full-time developer, resistance to change, why Vue is terrific, and the GreenSock animation platform (GSAP).Sarah's background was very unusual for a developer. She graduated with a major in printmaking and became a scientific illustrator for a nature museum. She relates drawing to program in that it's just a series of formalized steps. Many people say they can't draw, but if they just opened up and learned the process they would become technically proficient in drawing!Sarah also talks about how awesome GSAP is. Through benchmarking, she found that GSAP performed even better than native technologies when working with SVGs. She then gets into MorphSVG, and how it lets you transition between two SVGs and all sorts of things to create transitions.Finally, she discusses how she stays motivated on all the many projects she works on. She likes to imagine the feeling she'll get when she finally finishes it and lets that drive her. She also uses positive rewards for little milestones, such as eating a treat she enjoys or sitting in her favorite chair and relaxing.Transcript"Sarah Drasner talks about SVG animation with Greensock and Vue.js" TranscriptResourcesegghead: Develop Basic Web Apps with Vue.jsCSS Tricks: Intro to VueGreensockSarah DrasnerWebsiteTwitterGithubeggheadJohn LindquistTwitteregghead.ioGithubWebsite
undefined
Feb 26, 2018 • 25min

Reactive Programming and the P2P Web with André Staltz

Joel Hooks interviews Andre Staltz, an open-source hacker, and creator of Cycle.js. Andre quit his job to become an open-source hacker and now spends 30% of his time on open-source development and 40% on the Scuttlebutt project.Today they discuss the current web's stagnation, the vision of the peer to peer web, and what André is doing to reach that goal. They'll also discuss things that are more in Javascript land, such as Cycle.js and the callbag spec.Scuttlebutt is a web protocol, like HTTP. It's like a vast array of JSON objects that sync between two computers whenever they are both on the same network; this enables data to never reach an outside server, a true peer to peer network! Andre goes into his work on the project and why he believes it is necessary for the future of the web.But what is the peer to peer web and why is it better/different than the internet as we know it? Andre says that we are reaching a point where innovation is beginning to stagnate, where it is just enough to have Google, Amazon, and Facebook. We have reached a sort of peak, and things aren't evolving further. Andre goes on to say that one of the fundamental things that the internet missed early on was that it didn't guarantee a p2p connection.Andre gives some examples of how you begin to use the p2p web today. The Beaker browser, for example, can still access HTTP and HTTPS connections. However, it can also use the DAT protocol. What is DAT? Well, it allows you to directly "seed" your website out, and others can "leech" it. Like torrents, the more peers there are accessing your website, the better! He also talks about Fritter, a twitter clone that only runs on DAT. You download the front-end and JSON files of what people are saying. You are even able to fork the front end and customize it for yourself!Back in Javascript land, Andre talks about how he plans to properly support the Pull data source in Cycle.js, as well as having web-workers in the middle. He also talks about why he's removing the last library dependency from Cycle.js, xstream, in favor of just using a set of callbag utilities.Transcript"Reactive Programming and the P2P Web with André Staltz" TranscriptResourcesScuttlebutt on GithubFritter on GithubCallbag Spec on GithubThe Beaker BrowserCycle.jsAndré StaltzWebsiteTwitterEggheadGithubJoel Hooks:TwitterWebsite
undefined
Feb 19, 2018 • 39min

React Router with Michael Jackson

John Lindquist, co-founder of egghead.io, interviews Michael Jackson, co-creator of the react-router library, and co-founder of React Training. Michael discusses his experiences with running a massively popular repo with a relatively small code-base, pioneering of new features, and the future of CDN based importing.Michael gets into the early days of the react-router repo, and what he had to do to steward the library. "In open-source, you are not just coding all day." It's mostly management, with it being a relatively small code-base that had a lot of users created a situation where you had to have excellent communication and a lot of deliberateness with what you change.React is just Javascript, meaning that it enables multiple solutions and allows innovation within the library. It also means that there will be some discourse in the direction that things should go. Michael also discusses how to keep an open dialogue with the React community, even though doing so may pose some challenges.Michael is extremely excited about the future of the CDN and unpkg. He says that it would be awesome if Facebook or Pinterest only needed to load the package once, or even if individual modules were loaded instead of entire libraries. unpkg is excellent and predictable. No need to read the documentation on how to include the library in your app. No need to worry about builds, webpack, bundling. It brings back a fresh perspective and lets you just use the web!Transcript"React Router with Michael Jackson" TranscriptResourcesReact TrainingunpkgMichael JacksonMedium BlogTwitterGitHubJohn LindquistTwitteregghead.ioGithubWebsite
undefined
Feb 12, 2018 • 25min

Data Viz using D3 with Ben Clinkinbeard

John Lindquist interviews Ben Clinkinbeard, a veteran developer and egghead instructor. He currently works as a consultant, focusing on data visualization. Ben discusses his career path, the benefits of having a mentor, and the importance of Data Driven Documents.Ben talks about how he worked on a multi-year project for the Colorado Department of Education where he was visualizing aggregate standardized testing data. He discusses his experience there and how it left a long lasting enjoyment of the craft. He also talks about why he chose D3 for his data visualization work, and how he feels that it's the best option in the JS space.A lot of companies have D3 as a "nice to have" but not many devs have that skill. There is a lot of demand but not enough supply. Seeing this, Ben created a screencast for egghead as our very first instructor! His interest in info-products sparked and he talks about his experience and the challenges he faced building his email course and then a full-fledged D3 and SVG book.Transcript"Data Viz using D3 with Ben Clinkinbeard" TranscriptResourcesD3 in 5 DaysBen ClinkinbeardEggheadGithubTwitterJohn LindquistTwitteregghead.ioGithubWebsite
undefined
Jan 26, 2018 • 30min

12-factor Javascript Applications using Docker with Mark Shust

John Lindquist has a conversation with the Mark Shust, an expert with Git and Docker. They talk about the 12-factor style of building an application and why devs should have a standard method.Often developers don’t have a standard process with git. Mark talks about the gitflow workflow, a way of working with features and managing how that feature gets merged into the code base.Though due to working with so many branches gitflow has its complexities. So, Mark trimmed it down and created a new workflow he calls git ship, which is gitflow without the development and hotfix branches.Before Docker, Mark was running through a dependency hell. Though with Docker Mark was just able to deploy an image and not have to worry about anything. Docker is like a VM but without all the memory overhead! You can even deploy as many images as you want at a time. You can run Postgres, Node servers, and also use entirely different languages in each image!Check out Mark’s course which covers all mentioned topics, Build a Twelve-Factor Node.js App with DockerTranscript"12-factor Javascript Applications using Docker with Mark Shust" TranscriptResourcesGitflowDockerMark’s 12-factor egghead CourseMark ShustGithubeggheadTwitterWebsiteJohn LindquistTwitteregghead.ioGithubWebsite

Get the Snipd
podcast app

Unlock the knowledge in podcasts with the podcast player of the future.
App store bannerPlay store banner

AI-powered
podcast player

Listen to all your favourite podcasts with AI-powered features

Discover
highlights

Listen to the best highlights from the podcasts you love and dive into the full episode

Save any
moment

Hear something you like? Tap your headphones to save it with AI-generated key takeaways

Share
& Export

Send highlights to Twitter, WhatsApp or export them to Notion, Readwise & more

AI-powered
podcast player

Listen to all your favourite podcasts with AI-powered features

Discover
highlights

Listen to the best highlights from the podcasts you love and dive into the full episode