
RRU 029: Christopher Buecheler: "Getting Ready To Teach? Lessons learned from building an 84-tutorial software course"
Panel: - https://twitter.com/cmaxw?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor- Lucas Reis (NY)- Nader Dabit Special Guests: http://cwbuecheler.com In this episode, the panel talks with http://cwbuecheler.com who is a web developer and moved into JavaScript in 2000. Christopher runs his own business, and records and edits videos among many other responsibilities. He also has a lot of hobbies, and guitars are one of them. Check out today’s episode where the panel and Christopher talk about how to form a tutorial course from start to finish. Show Topics: 2:38 – Chuck: I always am fascinated by how there are a lot of programmers who are musicians. 3:00 – Panelist: Yes, I agree. Coding takes creativity. People who are programmers are surprisingly into different arts where it asks for the person’s creativity. 3:17 – Panelist: Video games, music, cocktails, etc. 4:05 – Guest: Yes, for a while I liked to make beer. My current kitchen doesn’t allow for it now, though. 4:25 – Chuck: So your 84/86 tutorial course... 4:46 – Guest: I liked to be one or two weeks ahead. Now building the entire app, instead of doing it week-to-week. 5:35 – Chuck: What is the process like – building these videos? 5:51 – Guest: I try to focus on MVP products that are super easy, and that aren’t too complicated. For example, Music List. Add albums and artists, and see other people’s lists. It ended up being a long tutorial. The process: I build the app, rebuild the app from scratch, I start with a script, read the pretty version and have the marked-down one for my use. The script goes up as the text tutorial. Do my video editing in https://www.adobe.com/products/premiere.html?ef_id=W6K5tAAAAKzsP-f1%3A20180919210348%3As&gclid=EAIaIQobChMI_Onk6_vH3QIVBgppCh1aAwEVEAAYASAAEgIu8vD_BwE&mv=search&s_kwcid=AL%213085%213%21247425965201%21e%21%21g%21%21adobe%2520premier&sdid=KKQOM. 7:55 – Question from panel. 8:52 – Panelist: I have found that extremely hard to do. 9:29 – Chuck talks about his process of recording his tutorials. Chuck: I don’t have a script; I just walk through it as I am going along. You can get it transcribed, which I have done in the past. I have a license for https://www.adobe.com/products/premiere.html?ef_id=W6K5tAAAAKzsP-f1%3A20180919210348%3As&gclid=EAIaIQobChMI_Onk6_vH3QIVBgppCh1aAwEVEAAYASAAEgIu8vD_BwE&mv=search&s_kwcid=AL%213085%213%21247425965201%21e%21%21g%21%21adobe%2520premier&sdid=KKQOM. 11:04 – Panelist: I never recorded a tutorial before but I have written a lot of blog posts. I reviewed it, and reviewing it is a very interesting take. I learn a lot in the process. The things cement in my mind while reviewing. Videos you have the real-time thing going on. 12:00 – Guest adds additional comments. 13:39 – Chuck chimes in. Chuck: We really appreciate you leaving the mistakes in. 14:11 – Guest: Yes, they watch you debug. 14:20 – Panelist: Most of your tutorials are beginner focused, right? 14:23 – Guest: Yes. Christopher goes into detail here. 17:13 – Chuck chimes in. Chuck: My thought is to learn x, y, z in 1 hour. 17:35 – Guest: People are attracted to shorter tutorials. 5-minute React. Don’t build an 84 tutorial course. They are built up to digestible chunks. It’s not wall-to-wall coding, because that would seem overwhelming to me. Let’s learn something in a bite-size chunk. 18:41 – Panelist: https://egghead.io Because of their guidelines they do good work. 1-5 minutes long tutorials. You can get a good run-down and a good introduction. 19:24 – Panelist: You can find it really easy. You don’t need a 1-hour video. 19:40 – Chuck: Yeah, to break it up in small sections. People will see this in my e-book course. 20:02 – Panelist: Do people give you a lot of feedback? What parts of this React course do people have most difficulty with? 20:21 – Guest: It’s not React based, it’s actually other issues. 210:6 – Guest: https://redux.js.org. 21:53 – Guest: What’s the best way to use props? Where should I put my Logic versus... 22:15 – Panelist: This is very similar when I teach... 22:46 – Guest: I have seen people say that if you truly see how this works in JavaScript then you really understand how JavaScript works. React can be confusing if you are using class-based components. You have to use binder or error functions, etc. It becomes confusing at times. Another area you mentioned was state: component state or your application state. Two different things, but they interact with each other. Understanding the difference between the two. Should I store it in this store or...? 24:09 – https://www.digitalocean.com 24:47 – Panelist: Were you doing this as a side thing? How do you keep up in the industry if you aren’t making “real” projects? 25:25 – Guest gives his answer plus his background with companies, clients, and programs. Guest: I really wanted to build my own company, when I was thinking of ideas I came across some great brainstorming ideas. I have a lot of traffic coming to these tutorials. I really liked giving something back to the web development community. I liked interacting with people and getting them to their “Ah Ha!” moment. It’s able to support me and helps me moving forward. I follow a ton of people on Twitter – the React team. I pay a ton of attention to what people are looking to learn. I play around those things for my own edification. I pick up some contract work and it helps me to stay current. It’s always a culmination for things. Part of the job is not to fall behind. If you are creating tutorials you have to reteach yourself things as things changes. 28:46 – Panelist asks another question. How do you get new leads and new customers? 20:02 – Guest answers questions. Guest: I was on a mentality if “I build it they will come.” This isn’t the best mentality. That was not a good approach. I started working with a consultant: how do we get this out to people? No ads, no subscription service. My e-mail list. I have gone from 1,600 to 4,600 people on my email list. Find the people who are interested. 32:52 – Guest: Find your voice, and how you choose to deliver your information. Text? Video? Or both? What do you want to teach? Don’t teach what you think will sell the most. It’s more important to be excited an interested what you are teaching. 34:05 – Panelist: When I am teaching something I try to remember of the feeling when I was learning it. For example, Harrison Ford. What was I thinking? How did I learn this concept? 35:01 – Guest: When I learned React it was because a client asked me to learn it. 4-6 weeks of exhausting terror and me trying to learn this to make useful code for this client. In about that time (4-6 weeks) “Oh I understand what I am doing now!” We are still on good terms today with this said client. When I am trying to learn something, the next level is here is a blog, and comments. There aren’t a lot of intermediary steps. They explain every kind of step. I took a similar approach with my other course. That’s informed by my own experience when learning these different technologies. 37:08 – Guest: Yes – check out my newsletter, and my new resource every week. Follow me at Twitter or my personal Twitter where I talk about the NBA too much. Email me if you have any questions. 38:11 – Chuck: Anything else? Okay, picks! 38:24 – https://devchat.tv/get-a-coder-job/ 39:01 – Picks! Links: - https://www.telerik.com/kendo-ui?utm_campaign=kendo-ui-awareness-jsjabber&utm_medium=social-paid&utm_source=devchattv- https://rubyonrails.org- https://angular.io/guide/quickstart- https://devchat.tv/get-a-coder-job/- https://redux.js.org- https://www.adobe.com/products/premiere.html?ef_id=W6K5tAAAAKzsP-f1%3A20180919210348%3As&gclid=EAIaIQobChMI_Onk6_vH3QIVBgppCh1aAwEVEAAYASAAEgIu8vD_BwE&mv=search&s_kwcid=AL%213085%213%21247425965201%21e%21%21g%21%21adobe%2520premier&sdid=KKQOM- https://closebrace.com- https://closebrace.com/categories/five-minute-react- https://egghead.io- https://stateofjs.com- https://statecharts.github.io- http://jamesknelson.com- http://cwbuecheler.com- https://www.amazon.com/Christopher-Buecheler/e/B004KA4MLEBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.
18 Sep 201845min

RRU 028: “Microstates.js – Composable State Primitive” with Taras Mankovski & Charles Lowell
Panel: Charles (Chuck) Max WoodLucas Reis Special Guests: Charles Lowell & Taras Mankovski In this episode, the panel talks with two special guests Charles and Taras. Charles Lowell is a principle engineer at Frontside, and he loves to code. Taras works with Charles and joined Frontside, because of Charles’ love for coding. There are great personalities at Frontside, which are quite diverse. Check out this episode to hear about microstates, microstates with react, OM, Redux, and much more! Show Topics: 2:32 – Chuck: Why do we need it (microstates) and why do we need another state library? 2:42 – Charles answers Chuck’s question. Charles goes to explain that if you need to increment the number, you don’t need to do it with microstates. 3:41 – Another suggestion is given on this topic. 5:13 – The application isn’t hard in-of-itself. 6:45 – Chuck makes comments, and asks: It seems to be more like object-oriented approach? 7:44 – Objects compose much more easily. When you are dealing with pure functional code you are de-structuring and restructuring. Check-out LENSES. 9:53 – Taras makes comments. What were your inspirations for microstate? 10:27 – Charles: The personal journey it started for me started back in 2015. When I was working primarily in Ember.” Charles makes a reference to OM, check it out! 15:40 – Charles: “We had a goal in mind, and we kept that goal on mind and kept ‘dipping into the candy jar.’ We had to learn about the functional mumbo-jumbo. The goal was never to use those things. Whatever tools we needed from the functional world, we borrowed from freely.” 16:50 – Chuck asks a question. 17:00 – Taras answers chuck’s question. 19:58 – Charles (guest) keeps the conversation going and goes into detail about how to handle different scenarios with different tools. 21:00 – Question: How do you think microstate enters into this situation? 21:45 – The design of microstate is that it gives you a solution that is flexible. Other options aren’t as comprehensive like where you can use it; for example Redux. 23:49 – Another way to say it is...check-out this timestamp to hear other ideas about this topic. 24:53 – Digital Ocean’s Advertisement 25:28 – Conversation is back into swing. Question: There is a very interesting design with people who are not developers. What are the benefits or do they play together? 26:41 – As a frontend shop, there is a very clean mapping between state machine and type. The type corresponds to the state transitions, among others. For every state you have a class, and you have a method for every transition. It’s a great design tool. 29:07 – We don’t talk about states very often, right now, but in the near future we will. The valuable goals for us are to give people tools that will work correctly for them. To help people be more productive that is a great goal. One thing from people, I’ve learned, is to ask yourself ‘what needs to change?’ 33:03 – Now you are touching on the subject of teaching. What about mentoring with microstates? 33:26 – Success (to one of the panelists) is defined of how confident a person is with X program or tool. If they have ease, then they are on the right path. With mentoring in microstates the design speaks its purpose, the transitions are clear, so the panelist feels that he doesn’t really have to go into a lot of detail explaining the features. 36:25 – In the React community... 39:12 – Curious: Would we really be able to distribute state like how we distribute components? What is out-of-reach now, is that we have the state machine for the autocomplete component. 40:27 – Chuck: Is there a way to test microstates? 41:28 – Shameless plug...check it out! 42:31 – Anything else? Microstates and Microstates with React. 42:48 – If anyone is interested in this, then we are interested in talking with these people and/or companies. 43:29 – Let’s go to Picks! 43:31 – Advertisement for Charles Max Wood’s course! Links: Kendo UIOMFrontsideReduxMicrostatesMicrostates with ReactTaras Mankovski’s TwitterTaras Mankovski’s GitHubTaras Mankovski’s LinkedInTaras Mankovski’s Frontside BioCharles Lowell’s TwitterCharles Lowell’s GitHubCharles Lowell’s Frontside BioSchedule OnceRuby on RailsAngularGet A Coder Job Sponsors: Kendo UIDigital Ocean Get A Coder Job Picks: Charles (Chuck) Framework Summit – Chuck will be talking at this conference in UT.Ebook – Finding a Job. Prelaunch in August. Final version launches on Labor Day. Lucas Take care of your health!Martial Arts and JujitsuNutritionCharles (guest)Fantasy Land JS - Tom HardingFuncadelic.JSTaras (guest)BigTestSpecial Guests: Charles Lowell and Taras Mankovski. Advertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.
11 Sep 201846min

RRU 027: "Why I Prefer Functional Components" with Josh St. Jacque
Panel: Charles Max WoodNader Dabit Special Guests: Josh Saint Jacque In this episode, the panel talks with Josh St. Jacque who is married with two kids and with one on the way. He is a professional product manager and software engineer. Ruby on Rails got him started on his career path and journey. Check-out today’s episode where the panel discusses functional and class components, among many other things! Show Topics: 2:12 – Let’s have a conversation about functional components. 3:20 – Chuck to Nader: “What is your preference between class and functional components?” 4:18 – Nader to Josh: “What is your take on pure components” 5:20 – Who makes these architectural decisions at T-Mobile? 5:46 – Josh: It really depends on the team and the project depending on how they want to proceed. Josh mentions Angular among other things. 7:38 – Chuck to Josh: It seems that through your post you are trying to make code easier? 8:01 – Josh’s background is Ruby, and basic principles. 9:12 – Question directed to Josh about components. 11:05 – Functional components. 11:35 – Some say that functional components are faster/slower than others. 12:50 – When do you know you need/do not need a functional component? 13:15 Josh uses functional component as his default but, of course, there are different factors for him to consider. The presentational stuff is separated. Sometimes he does convert it over. 14:21 – Let’s talk through the log post. 18:15 – Digital Ocean’s mid-roll advertisement! 20:58 – The panel talks about pros and cons of the different components. 21:33 – Ruby on Rails 22:06 – “Why aren’t you using...?” I understand what the tradeoffs are and will change when that time comes. 23:03 – Is there a certain thing that you would tell them about React applications? Is it more just best practice and it doesn’t really change their learning of the framework? 23:28 – Whenever you get comfortable then start exploring another pattern. When you get really comfortable, then you might never see the tradeoffs by using other options. It’s good for a developer to always be open-minded. Keep yourself uncomfortable, and don’t have just one tool in your belt. Try functional components just to keep it fresh. 25:00 – Josh answers a question from Chuck. 27:00 – Josh talks about things to avoid, etc. 27:42 – Nader: “Have you seen the new features and possibly the new features that will be added on later?” 28:01 – Josh has started using new features and he talks about the pros and cons of these. 29:55 – Chuck to Josh: “Are there any features to the components that you wish they would add?” 30:08 – Josh: I never really have run into anything, yet, that is too frustrating. I really like that it is a little limited, and no real big complaints. I would imagine that there are good components around function. 31:42 – Nader to Josh: “Any other topics?” 31:54 – One thing Josh would like to say is that you and your team are on the same page. You don’t want to get into fights on what style you are using. You don’t want to constantly be changing the code. Use one thing at a time or it will get real messy too quick. One example of this is from Ruby: hash rockets. 33:35 – How to find Josh online...look at links below! Links: Kendo UIRuby on RailsJosh St. Jacque’s LinkedInJosh St. Jacque’s MediumJosh St. Jacque’s GitHubJosh St. Jacque’s Article on MediumT-MobileAngularGet A Coder Job Sponsors: Kendo UISentryDigital Ocean Get A Coder Job Picks: *Charles Conference in October (UT) Frameworks SummitPodcast MovementCESHome Depot Tool Rental *Nader “A Tale of Four Components” by Pearl LatteierNader’s Blog *Josh Video Game Soundtracks – SpotifyVS Code ExtensionWeight Loss – Ice Cream – EnlightenedSpecial Guest: Josh St. Jacque. Advertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.
4 Sep 201843min

RRU 026: Building React Applications in a Monorepo with Luis Vieira
Panel: Charles Max WoodNader DabitLucas Reis Special Guests: Luis Vieira In this episode, the React Round Up panelists talk to Luis Vieira about his “Building large scale react applications in a monorepo”. Luis works in Portugal at a company called FarFetch as a front-end architect where he works mostly on JavaScript and infrastructure. They talk about the rationale behind his article, shared components, and what Lerna is and what is does. They also touch on Semantic Versioning, the difference between monolithic application and a monorepo, and more! In particular, we dive pretty deep on: Luis introFront-end architect at FarFetchWorks with JavaScriptRationale behind his articleDividing a project in multiple packagesSharing components between multiple applicationsEditing shared componentsWorking in a monorepoSimplifies managing between different projectsRequires more toolingWhat is Lerna?If you put multiple packages in one repo, how do you deal with things like the Git history getting mixed up?VersioningHow does Semantic Versioning interplay with monorepos?What if you’re not using Semantic Versioning?Using the conventional commitHow is the state of CI tooling regarded?He is currently more focused on ReactWhat he is experimenting with currentlyBuilding monolithic appsMonolithic aps VS monorepoBazelNrwl NxAnd much, much more! Links: “Building large scale react applications in a monorepo”FarFetchJavaScriptLernaSemantic VersioningReactBazelNrwl NxLuis’s Medium@luisvieira_gmrLuis’s Newsletter Sponsors Kendo UIDigital Ocean Get a Coder Job Picks: Charles Take some time offTake a step back to reevaluate Nader Free workshop with Tyler McGinnis to come soon. Keep an eye out at Nader’s Twitter or Tyler’s NewsletterReact Native EU Lucas Sketch.systems Luis Vue CLISpecial Guest: Luis Vieira. Advertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.
28 Aug 201844min

RRU 025: 2 Years of React Native at Artsy with Orta Therox
Panel: Nader DabitSia KaramalegosLucas Reis Special Guests: Orta Therox In this episode, the React Round Up panelists talk to Orta Therox about his 2 years of experience with React Native at Artsy. Orta has about 15 years of native Mac and iOS development experience and about 2 ½ years ago, his team decided to start writing their iOS app in React Native. They talk about the different popular blog posts about React Native, why his team decided to switch over to React Native, and the effects of team size on the success of the fit of React Native in each company’s app. They also touch on professional growth, how they have trained their employees, and more! In particular, we dive pretty deep on: Orta introReact Native and JavaScriptReact Native at Artsy blog postReact Native at Airbnb blog postSuspenseWeb engineeringTaking different approachesBeing a better way to build an iOS appAdoption coming from a native perspectiveDoes the size of the team matter?Product verticalsHow do you balance the need for professional development VS what’s needed at the moment?Vertically oriented teamsProfessional growth after the changeGraphQL APITraining everyone over multiple yearsReactAllowing anyone to contribute anywhere within their domainHow they describe their native engineersMore excited about React Native now than when it was releasedArtsy React Native ConferenceAnd much, much more! Links: ArtsyReact NativeJavaScriptReact Native at ArtsyReact Native at AirbnbGraphQLReact@ortaorta.ioOrta’s GitHubArtsy Engineering Sponsors Kendo UIDigital Ocean FreshBooks Picks: Nader AWS AmplifyArtsy Engineering blogNader’s GitHub Sia Styled componentsWeb Summer Camp Lucas MDN web docs Orta vscode-inline-typesCoalition for Queens (C4Q)Special Guest: Orta Therox. Advertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.
21 Aug 20181h 4min

RRU 024: Webamp with Jordan Eldredge
Panel: Sia KaramalegosLucas Reis Special Guests: Jordan Eldredge In this episode, the React Round Up panelists talk to Jordan Eldredge about his project Webamp. Jordan’s first introduction to programming had to do with music which led him to work both as a singer to now being an engineer. They talk about how common it is for programmers to have diverse backgrounds, especially in front-end developers, what Webamp and Winamp are, and what he originally wrote Webamp in. they also touch on his inspiration for creating this project, his journey in creating Webamp, and more! In particular, we dive pretty deep on: Jordan introStudied music (opera) in collegeForced himself to learn PHP and MySQLCommon in front-end developing to have people with diverse backgroundsWhy do you think it’s so common to have diverse backgrounds?Front-end web development is very youngSelf-taught developersWhat is Webamp?Reimplementation of Winamp in JavaScriptWhat is Winamp?What did you originally write Webamp in?What was the inspiration for creating Webamp?CSS SpritesWanting to recreate Winamp skinsjQuery originallyRewrote in “vanilla” JavaScriptThe process of learning real JavaScriptManaging transitions VS managing stateReact with ReduxDo you believe your struggle with “vanilla” JS made you more aware of what React really brings?You Might Not Need Redux by Dan AbramovHow did you deal with the audio API?The thing he loves about side-projectsNot having a deadlineUsing a Redux middlewareAnd much, much more! Links: WebampMySQLWinampJavaScriptjQueryReactReduxYou Might Not Need Redux by Dan AbramovJordaneldredge.com@captbaritoneJordan’s GitHub Sponsors Kendo UIDigital Ocean FreshBooks Picks: Sia Google Docs Lucas Timing App Jordan @winampskinsInspiring OnlineWACUPSpecial Guest: Jordan Eldredge. Advertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.
14 Aug 201850min

RRU 023: High-Performance GraphQL on Postgres with Hasura Tanmai Gopal
Panel: Nader DabitSia Karamalegos Special Guests: Tanmai Gopal In this episode, the React Round Up panelists talk to Tanmai Gopal. Tanmai is the founder at Hasura, where they have been building a GraphQL tooling that helps accelerate being able to use GraphQL for app developers. They talk about what Hasura is and what inspired him to build it, what Haskell does to Postgres, and query variables in GraphQL. They also touch on the importance of being aware of the database, how authorization works, and more! In particular, we dive pretty deep on: Tanmai introFounder of HasuraHas been building applications for about a decadeFocus on functional programmingHow did you get into React?Using Redux and GaphQLHow long has Hasura been around?What inspired you to build Hasura?Eliminating the middle layerThe elevator pitch of HasuraDo you offer a database as a service?Slightly different than writing your own resolversWhat Haskell does to PostgresQuery variables in GraphQLPrepared statements in PostgresMaking queries from apsGraphQL ORM for appsBeing aware of the databaseHow does authorization work?PostGraphile, Prisma, and HasuraHow do PostGraphile and Prisma compare to Hasura?And much, much more! Links: HasuraReactReduxGaphQLHaskellPostgresPostGraphilePrisma@tanmaigoTanmai’s BlogTanmai’s GitHub@HasuraHQ Sponsors Kendo UIDigital Ocean FreshBooks Picks: Nader React Native EU talk Sia Gatsby.js Tanmai Building a new toolSpecial Guest: Tanmai Gopal. Advertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.
7 Aug 201842min