React Round Up show

React Round Up

Summary: A weekly discussion among React developers

Join Now to Subscribe to this Podcast

Podcasts:

 RRU 042: React at Product Hunt with Radoslav Stankov | File Type: audio/mpeg | Duration: 1:00:31

Panel: Lucas Reis Nader Dabit Special Guest: Radoslav Stankov In this episode, the panelists talk with today’s guest, Radoslav Stankov, who is a senior developer at Product Hunt. The panel and the guest talk about React, jQuery, Backbone, and much more! Check it out! Show Topics: 0:00 – Kendo UI 0:31 – Nader: Hello! Our guest today is Radoslav. 4:02 – Nader: What is your role and what are your main responsibilities? 4:10 – Guest answers. 4:39 – Panel: Can you tell us the story of how you started to use React? 4:55 – Guest: We started 4 years ago. The guest answers the question and mentions jQuery and Backbone. 9:01 – Panel: That’s nice – so you are trying to use a simpler application but the React server still need to be separated right? 9:14 – Guest: Yes, we tried to keep it as simple as possible. 10:38 – Panel: How was the adoption of React and how painful was it? You mentioned that you were used Flux and others, so was it messy and complicated for you? Or was it easy for you? 11:15 – Guest: It had its moments. 16:03 – Nader: So what are some of the reasons why you would be messing around with service-side rendering? 16:20 – The guest lists the reasons why they use it. 18:07 – Nader: Interesting. It helps for mobile clients? What do you mean – is it for the people with slower connections? 18:22 – Guest: Yes. The mobile plan can see the page. It can actually see how it’s rendered. 19:53 – Panel: How do you detect that it’s a mobile request from the server? 20:00 – Guest. 31:04 – Panel: We wanted to make it much faster and started using Node and streaming the library. Instead of creating a big string and then sending back to the user we were using the function...It’s super cool. We started using 30% less resources once we’ve deployed. (Wow!) Yeah I know! When you stream then the Node can be smarter and streaming at the same time. 32:03 – Guest. 33:21 – Panel: Interesting thing about the streaming is that we were fetching data after it started. After it was streaming HTML it was already... 38:21 – Nader: We talked about the WEB but you are all using REACT with mobile, too. Can you talk about how your company is using REACT? I know you’ve made things natively, too. 38:40 – Guest: I bit of history first then I will answer the question. 41:29 – Nader: Do you think the changes will happen in the right time to help with your fruition or no? 41:45 – Guest answers. 43:33 – How does the team manage working with all of these technologies? Does everyone have his or her own role? 43:54 – Guest answers. 48:03 – Panel: What are the drawbacks to that? 48:10 – Guest answers. 50:52 – Nader: Anything else? 51:00 – Guest: I think we covered a lot of great topics! Ads: FreshBooks! Get A Coder Job! Cache Fly! Links: Ruby on Rails Angular JavaScript Elm Phoenix GitHub Get A Coder Job React Round Up Guest’s LinkedIn Guest’s GitHubGist Introducing Hooks Idle Until Urgent Nader’s Tweet Sponsors: Get a Coder Job Cache Fly Fresh Books Kendo UI   Picks: Radoslav Getting to know React DOM’s event handling system inside and out React Fiber Architecture React Hooks React.NotAConf Lucas Idle Until Urgent Introducing Hooks Nader Writing Custom React Hooks for GraphQL React Native Hooks

 RRU 041: Design Patterns with Soumyajit Pathak | File Type: audio/mpeg | Duration: 47:40

Panel: Lucas Reis Charles Max Wood Justin Bennett Special Guest: Soumyajit Pathak In this episode, the panelists talk with Soumyajit Pathak (India) who is a full-stack developer and cybersecurity enthusiast. The panel and the guest talk about design patterns and designing simpler code for clarity and less confusion. Check out today’s episode! Show Topics: 0:00 – Kendo UI 0:31 – Chuck: Our panelists are and our guest is Soumyajit! Introduce yourself please! Are you doing React on the side? 1:02 – Guest: I am a master’s student and I am doing freelancing. 1:42 – Panel. 1:49 – Guest. 2:10 – Chuck: I am feeling very up-to-date. Woo! Universities are teaching this and that and they are focused on theory. The flipside is that they are going to write real code for real systems. 3:10 – Panel: I like your well-written blog posts. You talk about design patterns. 3:50 – Guest: The design patterns at the university had to do with real JavaScript applications. 4:09 – Chuck: I am curious you are talking about the design patterns – how can people from React find/use it? 4:45 – Panel: It depends on your definition of design patterns. 5:35 – Lucas: Maybe you are using one or two here and reading through the design patterns is like going through your toolbox. You only need a screwdriver but you bought the whole toolbox. Get familiar with it and from time to time solve problems and thing: what tool can help me here? It’s clear to me with this toolbox analogy. I understand now – that tool I saw 2 months ago could help me. 7:00 – Guest: I have an interesting story with this about design patterns. Let me share! 7:36 – Justin: It was a similar thing but I wasn’t in JavaScript at the time. I’ve used a lot of C++ code. Design patterns became very useful. I saw it the same way Lucas! 9:23 – Justin continues: How and why to use a certain tool. That’s important. 10:28 – Chuck: Okay this is the default pattern and that’s where we can go for the fallback. Here is the fallback if this doesn’t work here or there. 10:49 – Lucas: This is important to remember. It’s not how to use the tool but it’s why am I using this tool here or there? 11:57 – Justin: It’s so much information in general. People get information overload and they have to just start! One of the challenges we do is that we over-engineer things. Do what you need to know. Look it up but play with it. 12:40 – Lucas: It’s interesting by another blog post that you wrote Soumyajit – and you are using a render prop. You showed a problem and showed the solution. 13:30 – Guest: Yeah I’ve written a lot of blog posts about this topic. 13:48 – Panel: Often times – it’s hard for people just to dive-in. People need to see you solving a problem and it really helps with the learning process. 15:03 – Chuck: What patterns do you find most useful? 15:11 – Panel: Functional components have changed my world! 16:23 – Guest: Around these functional components... 17:17 – Panel: I will go with the patterns that are not useful. Don’t make your code pattern-oriented. This is my favorite pattern now and going back to basics. 18:53 – Panelists go back-and-forth. 19:01 – Lucas. 19:41 – Chuck: You talk about over-engineering things and that’s what I found myself doing sometimes with my new project. When I figure out how to make it simpler I get excited and it’s easy to follow. 20:15 – Panel: We celebrate the person who deleted the most lines of code. 20:28 – Panel: I am going to steal that idea. 21:04 – Guest: I have an interesting story of over-engineering something – let me share! 21:53 – FreshBooks! 22:59 – Panel: Building too much is b/c I don’t have a clear understanding of what I am doing. I get excited about problems. What’s the more simple way / most naïve way possible! 24:36 – Lucas: If you are going to change something you will be changing it in several different places. 25:50 – Chuck: When I heard the concept, all the codes that change together should be together. 26:08 – Lucas comments. 26:53 – Panel: Keeping things contained in one place. We have our presentational component and higher-level component, so you can see it all. 28:28 – Lucas: Different people working on different technologies. 29:15 – Panel: Can I break this down to smaller parts, which makes sense to me? 29:48 – Guest: Looking for keywords will cause a distraction. Finding a balance is good. 30:04 – Chuck: If you have a large rile there could be a smaller component that is there own concern. That feels like the real answer to me. It has a lot less than the length of the file versus... Chuck: If I cannot follow it then I need to keep the concept simple. 30:51 – Lucas: The quantity of lines and the line count – I think it’s better how many indentations you have. 32:43 – Guest. 32:48 – Lucas: Yes, so in the horizontal scrolling you have to keep things in your mind. 33:41 – Panel: There are so many different metrics that you can use and the different line count or different characters. There are more scientific terms that we could plugin here. If you have a lot of these abstract relations that can...write it  34:23 – Chuck: So true. 34:52 – Chuck: I want to move onto a different problem so it’s an attention thing for me too. 35:06 – Panel: We have to get okay with not always writing the best code in that it just needs to do what it needs to do. 35:30 – Chuck. 35:57 – Panel: We write it once – then it falls apart and then we write it again and learn from the process. Learning is the key here – you see where it works and where it doesn’t work well. 36:31 – Panel. 36:47 – Chuck mentions service-side rendering. Chuck: Should we schedule another episode? 37:11 – Panel: I think it’s own episode b/c it’s a complex problem overall. 39:33 – Lucas: Try to find memory leaks in the file components and server-side rendering. Where we have lost a lot of sleep and a higher level of complication. Sometimes it’s necessary. 41:42 – Chuck: Yeah let’s do another episode on this topic. Sounds like there is a lot to dive into this topic. Soumyajit, how do people find you? 42:10 – Guest: Twitter and GitHub! 42:28 – Picks! 42:30 – Advertisement – Get A Coder Job! End – Cache Fly Links: Ruby on Rails Angular JavaScript Elm Phoenix GitHub Get A Coder Job React Patterns on GitHub Calibre Book: Engineering a Safer World Designers’ Secret Source Monster Hunter Guest’s GitHub Guest’s Twitter Sponsors: Get a Coder Job Cache Fly Fresh Books Kendo UI Picks: Justin https://reactpatterns.com/ Calibre App Lucas Engineering a Safer World Soumyajit Blog Muzli - Chrome Extension Charles Monster Hunters International Series Metabase Stripe Work for DevChat TV

 RRU 040: Mastermind Groups and Staying Current with Sean Merron | File Type: audio/mpeg | Duration: 1:09:39

Panel: Charles Max Wood Aaron Frost Shai Reznik    Divya Sasidharan Joe Eames Lucas Reis Special Guest: Sean Merron In this episode, The panelist of React Round-Up, View on Vue, Adventures in Angular, Ruby Rogues, and JavaScript Jabber speak with Sean Merron about Mastermind Groups of Startups and much more. Sean is the founder of today's topic and product “Mastermind Hunt.” This product is design to skillfully find a mastermind to take your business and skills to the next level. Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 3:00 – Webinar announcement January 3rd, 2p EST. 4:10 - Sean talks about the importance of a Mastermind and his evolvement in mastermind groups. Sean breakdowns what exactly what a mastermind is about. 6:10 - Charles ask the panelist if they have engaged in Masterminds. Shai talks about his experience and seeing one-sidedness in Masterminds. Sean talks about how to avoid this issue and staying on track. Sean shares on how to keep the meeting moving forward and meet accountability tasks. 10:10 - Joe asks about examples of chatting on topics with co-workers and how is this different from masterminds. And how to keep topics on track. Sean provides using the round robin method to give each person a chance to bring their needs to the table. Sean talks about how developers share advice and topics in Masterminds. 14:43 -  Charles shares about how this works in using exercise workbooks as a group and who the rotation works for the hot seat. Sean explains that this is used to find others at your same level to help one another. 16:50 - Shai ask about the benefits of mastermind, but how can we integrate higher level issues among a group. Sean shares a story about meeting and benefits of networking in Masterminds. Sean and Chuck continue with the power of networking among these types of groups. 22:00 -  Charles talks about the complexity of personal issues. Shai asks about how to build a mastermind. Sean gives examples of formats and schedule, number of people, and how to conduct successfully. Sean gives examples of technologies to use to help conduct masterminds, like Facebook groups, Skype, Zoom.  Sean explains how this led to building  mastermindhunt.com 27:00 – Advertisement: Get A Coder Job! 27:00 -  Charles talks about how he did a lunch meetup as a mastermind. Lucas gives examples of guilds in his job. Lucas explains the guilds and how this works among the software development team. Lucas shares about presenting in a guild. Lucas says this is great for accountability and success. 30:00 -  Sean asks about the size or how many people are in the guild. Lucas mentions that if you do not understand something, bring it to the guild. Sean mentions how this could help shy people and build trust. Sean talks about “Friend D A” 34:00 -  Charles again talks about that BrownBag lunch mastermind. Charles talks about how to keep masterminds on track and not a chatfest. Joe asks about the accountability goals. Sean talks about how this works in Mastermind Hunt.  Sean gives examples of how to keep people accountable in fun ways. 37:00 -  Shai talks about having to shave his head when he was not meeting accountability goals.  Sean continues about respecting people’s time and keeping on topic with hot seat questions. 39:00 -  Shai asks about how to approach people who are not meeting goals and take-up to much time. Sean says the person with the best relationship should approach the person before they have to bump them out of the mastermind spot. 42:00 - Charles talks about EntreProgrammers as a mastermind and the freeform style of the format. Charles talks about leaving the group if it is not meeting your value needs. 44:00 - Sean talks about the introduction and application programs to enter into a mastermind. Lucas talks about diminishing quality of a mastermind, and how he raised the quality of engaging in a way that heightens the program. Sean shares more aobuu the initial attitude of the person who starts the meeting. 49:00 -  Divya ask about those who are not hitting their goals, but how do you keep them engaged without leaving the group. Sean mentions breaking down the goals or create achievable goals. Sean talks about figuring out the organization and finding where the issues are at that might be the problem to hitting goals. 51:00 - Divya ask about how enthusiasm can diminish about how to keep that from happening in masterminds. Sean says you have to be consistent with your goals and make it fun. 55:00 - Shai gives a quick recap of masterminds. Shai ask about how to rotate the hot seat. Sean give a webinar link for mastermindhunt.com/devchat on January 3rd, 2pm EST. 57:30 – Advertisement – Fresh Books! 30-day free trial! END – Advertisement – Cache Fly! Links: Sean’s Twitter 2frugaldudes  podcast Sean’s LinkedIn mastermindhunt.com mastermindhunt.com/devchat Sponsors: Angular Boot Camp Fresh Books Get a Coder Job Course Cache Fly Picks: Shai Bob Proctor Joe  Coolstuffinc luxor NG Conf Minified Lucas Radical Candor Divya Alan Watts Framework Summit Videos Several Short Sentence about Writing Charles CES - devchat.tv/events Modern Medicine Sean (757) Area Code RevolutionConf.com

 RRU 039: Lambda School with Ben Nelson | File Type: audio/mpeg | Duration: 52:38

Panel: Nader Dabit Lucas Reis Charles Max Wood Special Guests: Ben Nelson In this episode, the panelists talk with Ben Nelson who is a co-founder and CTO of Lambda School. The panelists and Ben talk about Lambda School, the pros & cons of the 4-year university program for developers, and much more. Check it out! Show Topics: 0:00 – Kendo UI 0:33 – Chuck: We have Nader, Lucas, and myself – our special gust is Ben Nelson! 0:50 – Guest: Hi! 0:54 – Chuck: Please introduce yourself. 0:58 – Guest: I love to ski and was a developer in the Utah area. 1:12 – Chuck: Let’s talk about Lambda School, but I think explaining what the school is and how you operate will help. Give us an elevator pitch for the school. 1:36 – Guest: The school is 30-weeks long and we go deep into computer fundamentals. They get exposed to multiple stacks. Since it’s 30-weeks to run we help with the finances by they start paying once they get employed. It’s online and students from U.S. and the U.K. 3:23 – Chuck: I don’t want you to badmouth DevMountain, great model, but I don’t know if it works for everyone? 3:43 – Guest: Three months part-time is really hard if you don’t have a technical background. It was a grind and hard for the students. 4:03 – Nader: Is it online or any part in-person. 4:11 – Guest: Yep totally online. 4:40 – Nader: Austen Allred is really, really good at being in the social scene. I know that he has mentioned that you are apart of...since 2017? 5:20 – Guest: Yeah you would be surprised how much Twitter has helped our school. He is the other co-founder and is a genius with social media platforms! 6:04 – Guest mentions Python, marketing, and building a following. 7:17 – Guest: We saw a lot of students who wanted to enroll but they couldn’t afford it. This gave us the idea to help with using the income share agreement. 8:06 – Nader: Yeah, that’s really cool. I didn’t know you were online only so now that makes sense. Do you have other plans for the company? 8:33 – Guest: Amazon started with books and then branched out; same thing for us. 8:56 – Chuck: Let’s talk about programming and what’s your placement rate right now? 9:05 – Guest: It fluctuates. Our incentive is we don’t get paid unless our students get employed. Our first couple classes were 83% and then later in the mid-60%s and it’s averaging around there. Our goal is 90% in 90 days. Guest continues: All boot camps aren’t the same. 10:55 – Lucas: Ben, I have a question. One thing we have a concern about is that universities are disconnected with the CURRENT market! 11:47 – Guest: We cannot compare to the 4-year system, but our strength we don’t have tenure track Ph.D. professors. Our instructors have been working hands-on for a while. They are experienced engineers. We make sure the instructors we hire are involved and passionate. We pay for them to go to conferences and we want them to be on the cutting-edge. We feel like we can compete to CS degrees b/c of the focused training that we offer. 13:16 – Chuck: Yeah, when I went to school there were only 2 professors that came from the field. 14:22 – Guest: Yeah, look at MIT. When I was studying CS in school my best professor was adjunct b/c he came from the field. I don’t know if the 4-year plan is always the best. I don’t want to shoot down higher education but you have to consider what’s best for you. 15:05 – Nader: It’s spread out across the different fields. It was a model that was created a long time ago, and isn’t always the best necessarily for computer science. Think about our field b/c things are moving so fast.  15:57 – Chuck: What you are saying, Nader, but 10 years ago this iPhone was a brand new thing, and now we are talking about a zillion different devices that you can write for. It’s crazy. That’s where we are seeing things change – the fundamentals are good – but they aren’t teaching you at that level. Hello – it’s not the ‘90s anymore! I wonder if my bias comes from boot camp grads were really motivated in the first place...and they want to make a change and make a career out of it. 17:34 – Chuck: There is value, but I don’t know if my CS major prepared me well for the job market. 17:42 – Guest: Probably you didn’t have much student loan debt being that you went to Utah. 17:58 – Nader: Why is that? 18:03 – Chuck talks about UT’s tuition and how he worked while attending college. 18:29 – Lucas: I don’t stop studying. The fundamentals aren’t bad to keep studying them. Putting you into a job first should be top priority and then dive into the fundamentals. Work knowledge is so important – after you are working for 1 year – then figure out what the fundamentals are. I think I learn better the “other way around.” 20:30 – Chuck: That’s fair. 20:45 – Guest: That’s exactly what we focus on. The guest talks about the general curriculum at the Lambda School 22:07 – Nader: That’s an interesting take on that. When you frame it that way – there is no comparison when considering the student loan debt. 22:30 – Chuck: College degrees do have a place, too. 22:39 – Chuck: Who do you see applying to the boot camps? 23:05 – Guest: It’s a mix. It’s concentrated on people who started in another career and they want to make a career change. Say they come from construction or finances and they are switching to developing. We get some college students, but it’s definitely more adult training. 24:02 – Guest: The older people who have families they are desperate and they are hungry and want to work hard. We had this guy who was making $20,000 and now he’s making $85K. Now his daughter can have his own bedroom and crying through that statement. 24:50 – Chuck: That makes sense! 24:52 – Advertisement – FRESH BOOKS! 26:02 – Guest: Look at MIT, Berkeley – the value is filtering and they are only accepting the top of the top. We don’t want to operate like that. We just have to hire new teachers and not build new buildings. We raise the bar and set the standard – and try to get everybody to that bar. We aren’t sacrificing quality but want everybody there. 27:43 – Chuck: What are the tradeoffs? 28:00 – Guest: There is an energy in-person that happens that you miss out on doing it online. There are a lot of benefits, though, doing it online. They have access to a larger audience via the web, they can re-watch videos that teachers record. 28:45 – Nader: Is there a set curriculum that everyone uses? How do you come up with the curriculum and how often does it get revamped? What are you teaching currently? 29:08 – Guest answers the question in-detail. 30:49 – Guest (continues): Heavily project-focused, too! 31:08 – Nader: What happens when they start and if they dropout? 31:22 – Guest: When we first got started we thought it was going to be high dropout rates. At first it was 40% b/c it’s hard, you can close your computer, and walk away. If a student doesn’t score 80% or higher in the week then they have to do it again. Our dropout rate is only 5-10%. In the beginning they have a grace period of 2-4 weeks where they wouldn’t owe anything. After a certain point, though, they are bound to pay per our agreements. 33:00 – Chuck: Where do people get stuck? 33:05 – Guest: Redux, React, and others! Maybe an instructor isn’t doing a good job. 34:06 – Guest: It’s intense and so we have to provide emotional support. 34:17 – Nader: I started a school year and I ran it for 1-3 years and didn’t go anywhere. We did PHP and Angular 1 and a little React Native. We never were able to get the numbers to come, and we’d only have 3-4 people. I think the problem was we were in Mississippi and scaling it is not an easy thing to do. This could be different if you were in NY. But if you are virtual that is a good take. Question: What hurdles did you have to overcome? 35:52 – Guest: There was a lot of experimentation. Dropout rates were a big one, and the other one is growth. One problem that needed to be solved first was: Is there a demand for this? Reddit helped and SubReddit. For the dropout rates we had to drive home the concept of accountability. There are tons of hands-on help from TA’s, there is accountability with attendance, and homework and grades. We want them to know that they are noticed and we are checking-in on them if they were to miss class, etc. 38:41 – Chuck: I know your instructor, Luis among others. I know they used to work for DevMountain. How do you find these folks? 39:15 – Guest: A lot of it is through the network, but now Twitter, too. 40:13 – Nader: I am always amazed with the developers that come out of UT. 40:28 – Chuck: It’s interesting and we are seeing companies coming out here. 40:50 – Guest: Something we were concerned about was placement as it relates to geography. So someone that is in North Dakota – would they get a job. The people in the rural areas almost have an easier time getting the job b/c it’s less competitive. Companies are willing to pay for relocation, which is good. 41:49 – Nader: That is spot on. 42:22 – Chuck: Instructor or Student how do they inquire to teach/attend at your school? 42:44 – Guest: We are launching in the United Kingdom and looking for a program director there! 43:00 – Advertisement – Get A Coder Job! End – Cache Fly Links: Ruby on Rails Angular JavaScript Elm Phoenix GitHub Get A Coder Job Income Share Agreement’s Definition DevMountain Charles Max Wood’s Twitter Nader Dabit’s Twitter Lucas Reis’ GitHub Ben Nelson’s Talk: Rethinking Higher Education – ICERI 2016 Keynote Speech Ben Nelson’s LinkedIn Ben Nelson’s Twitter Lambda School Sponsors: Get a Coder Job Cache Fly Fresh Books Kendo UI   Picks: Lucas Cypress Looking a Cypress as a Development Environment. Nader Egghead.io Nader’s courses on Egghead.io Suggestions for courses Charles Opportunity to help liberate developers Extreme Ownership Hiring a developer Sales Rep. for selling sponsorships Show note writer Ben Air Table

 RRU 038: Azure Pipelines with Ed Thomson LIVE at Microsoft Ignite | File Type: audio/mpeg | Duration: 48:52

Panel: Charles Max Wood Special Guests: Ed Thomson In this episode, the React Round Up Charles speaks with Ed Thomson who is a Program Manager at Azure through Microsoft, Developer, and Open Source Maintainer. Ed and Chuck discuss in full detail about Azure DevOps! Check out today’s episode to hear its new features and other exciting news! Show Topics: 0:59 – Live at Microsoft Ignite 1:03 – Ed: Hi! I am a Program Manager at Azure. 1:28 – Rewind 2 episodes to hear more about Azure DevOps! 1:51 – Ed: One of the moves from Pipelines to DevOps – they could still adopt Pipelines. Now that they are separate services – it’s great. 2:38 – Chuck talks about features he does and doesn’t use. 2:54 – Ed. 3:00 – Chuck: Repos and Pipelines. I am going to dive right in. Let’s talk about Repos. Microsoft just acquired GitHub. 3:18 – Ed: Technically we have not officially acquired GitHub. 3:34 – Chuck: It’s not done. It’s the end of September now. 3:55 – Ed: They will remain the same thing for a while. GitHub is the home for open source. Repos – we use it in Microsoft. Repositories are huge. There are 4,000 engineers working in these repositories. Everyone works in his or her own little area, and you have to work together. You have to do all this engineering to get there. We bit a tool and it basically if you run clone... Ed continues to talk about this topic. He is talking about One Drive and these repositories. 6:28 – Ed: We aren’t going to be mixing and matching. I used to work through GitHub. It’s exciting to see those people work close to me. 6:54 – Chuck. 6:59 – Ed: It has come a long way. 7:07 – Chuck: Beyond the FSF are we talking about other features or? 7:21 – Ed: We have unique features. We have branch policies. You can require that people do pole request. You have to use pole request and your CI has to pass and things like that. I think there is a lot of richness in our auditing. We have enterprise focus. At its core it still is Git. We can all interoperate. 8:17 – Chuck. 8:37 – Ed: You just can’t set it up with Apache. You have to figure it out. 8:51 – Chuck: The method of pushing and pulling. 9:06 – Chuck: You can try DevOps for free up to 5 users and unlimited private repos. People are interested in this because GitHub makes you pay for that. 9:38 – Ed and Chuck continue to talk. 9:50 – Ed: Pipelines is the most interesting thing we are working on. We have revamped the entire experience. Build and release. It’s easy to get started. We have a visual designer. Super helpful – super straightforward. Releases once your code is built – get it out to production say for example Azure. It’s the important thing to get your code out there. 10:55 – Chuck: How can someone start with this? 11:00 – Ed: Depends on where your repository is. It will look at your code. “Oh, I know what that is, I know how to build that!” Maybe everyone isn’t doing everything with JavaScript. If you are using DotNet then it will know. 12:05 – Chuck: What if I am using both a backend and a frontend? 12:11 – Ed: One repository? That’s when you will have to do a little hand packing on the... There are different opportunities there. If you have a bash script that does it for you. If not, then you can orchestrate it. Reduce the time it takes. If it’s an open source project; there’s 2 – what are you going to do with the other 8? You’d be surprised – people try to sneak that in there. 13:30 – Chuck: It seems like continuous integration isn’t a whole lot complicated. 13:39 – Ed: I am a simple guy that’s how I do it. You can do advanced stuff, though. The Cake Build system – they are doing some crazy things. We have got Windows, Lennox, and others. Are you building for Raspberries Pies, then okay, do this... It’s not just running a script. 15:00 – Chuck: People do get pretty complicated if they want. It can get complicated. Who knows? 15:26 – Chuck:  How much work do you have to do to set-up a Pipeline like that? 15:37 – Ed answers the question in detail. 16:03 – Chuck asks a question. 16:12 – Ed: Now this is where it gets contentious. If one fails... Our default task out of the box... 16:56 – Chuck: If you want 2 steps you can (like me who is crazy). 17:05 – Ed: Yes, I want to see if it failed. 17:17 – Chuck: Dude, writing code is hard. Once you have it built and tested – continuous deployment. 17:33 – Ed: It’s very easy. It’s super straightforward, it doesn’t have to be Azure (although I hope it is!). Ed continues this conversation. 18:43 – Chuck: And it just pulls it? 18:49 – Ed: Don’t poke holes into your firewall. We do give you a lot of flexibility 19:04 – Chuck: VPN credentials? 19:10 – Ed: Just run the... 19:25 – Chuck comments. 19:36 – Ed: ...Take that Zip... 20:02 – Ed: Once the planets are finely aligned then...it will just pull from it. 20:25 – Chuck: I host my stuff on Digital Ocean. 20:46 – Ed: It’s been awhile since I played with... 20:55 – Chuck. 20:59 – Ed and Chuck go back and forth with different situations and hypothetical situations. 21:10 – Ed: What is Phoenix? 21:20 – Chuck explains it. 21:25 – Ed: Here is what we probably don’t have is a lot of ERLANG support. 22:41 – Advertisement. 23:31 – Chuck: Let’s just say it’s a possibility. We took the strip down node and... 23:49 – Ed: I think it’s going to happen. 23:55 – Ed: Exactly. 24:02 – Chuck: Testing against Azure services. So, it’s one thing to run on my machine but it’s another thing when other things connect nicely with an Azure set-up. Does it connect natively once it’s in the Azure cloud? 24:35 – Ed: It should, but there are so many services, so I don’t want to say that everything is identical. We will say yes with an asterisk. 25:07 – Chuck: With continuous deployment... 25:41 – Ed: As an example: I have a CD Pipeline for my website. Every time I merge into master... Ed continues this hypothetical situation with full details. Check it out! 27:03 – Chuck: You probably can do just about anything – deploy by Tweet! 27:15 – Ed: You can stop the deployment if people on Twitter start complaining. 27:40 – Chuck: That is awesome! IF it is something you care about – and if it’s worth the time – then why not? If you don’t have to think about it then great. I have mentioned this before: Am I solving interesting problems? What projects do I want to work on? What kinds of contributions do I really want to contribute to open source? That’s the thing – if you have all these tools that are set-up then your process, how do you work on what, and remove the pain points then you can just write code so people can use! That’s the power of this – because it catches the bug before I have to catch it – then that saves me time. 30:08 – Ed: That’s the dream of computers is that the computers are supposed to make OUR lives easier. IF we can do that and catch those bugs before you catch it then you are saving time. Finding bugs as quickly as possible it avoids downtime and messy deployments. 31:03 – Chuck: Then you can use time for coding style and other things. I can take mental shortcuts. 31:37 – Ed: The other thing you can do is avoiding security problems. If a static code analysis tool catches an integer overflow then... 32:30 – Chuck adds his comments. Chuck: You can set your policy to block it or ignore it. Then you are running these tools to run security. There are third-party tools that do security analysis on your code. Do you integrate with those? 33:00 – Ed: Yep. My favorite is WhiteSource. It knows all of the open source and third-party tools. It can scan your code and... 34:05 – Chuck: It works with a lot of languages. 34:14 – Ed. 34:25 – Chuck: A lot of JavaScript developers are getting into mobile development, like Ionic, and others. You have all these systems out there for different stages for writing for mobile. Android, windows Phone, Blackberry... 35:04 – Ed: Let’s throw out Blackberry builds. We will ignore it. Mac OS dies a fine job. That’s why we have all of those. 35:29 – Chuck: But I want to run my tests, too! 35:36 – Ed: I really like to use App Center. It is ultimately incredible to see all the tests you can run. 36:29 – Chuck: The deployment is different, though, right? 36:40 – Ed: I have a friend who clicks a button in... Azure DevOps. 37:00 – Chuck: I like to remind people that this isn’t a new product. 37:15 – Ed: Yes, Azure DevOps. 37:24 – Chuck: Any new features that are coming out? 37:27 – Ed: We took a little break, but... 37:47 – Ed: We will pick back up once Ignite is over. We have a timeline on our website when we expect to launch some new features, and some are secret, so keep checking out the website. 39:07 – Chuck: What is the interplay between Azure DevOps and Visual Studio Code? Because they have plugins for freaking everything. I am sure there is something there that... 39:30 – Ed: I am a VI guy and I’m like 90% sure there is something there. You are an eMac’s guy? The way I think about it is through Git right out of the box. Yes, I think there are better things out there for integration. I know we have a lot of great things in Visual Code, because I worked with it. 40:45 – Chuck: Yes, people can look for extensions and see what the capabilities are. Chuck talks about code editor and tools.  41:28 – Ed: ... we have been pulling that out as quickly as possible. We do have IE extensions, I am sure there is something for VS Code – but it’s not where I want to spend my time. 42:02 – Chuck: Yes, sure. 42:07 – Ed: But everyone is different – they won’t work the way that I work. So there’s that. 42:30 – Ed: That Chuck. 42:36 – Chuck: Where do people get news? 42:42 – Ed: Go to here! 42:54 – Chuck: Where do people find you? 43:00 – Ed: Twitter! 43:07 – Chuck: Let’s do Picks! 43:20 – Advertisement – Fresh Books! Links: GitHub Microsoft’s Azure Microsoft’s Pipeline Azure DevOps Erlang WhiteSource Chuck’s Twitter Ed Thomson’s Twitter Ed Thomson’s GitHub Ed Thomson’s Website Ed Thomson’s LinkedIn Sponsors: Angular Boot Camp Fresh Books Get a Coder Job Course Picks: Ed Podcast - All Things Git

 RRU 037: Make Backend Devs Jealous of Your Test Suite with Carly Litchfield | File Type: audio/mpeg | Duration: 55:38

Panel: Nader Dabit Lucas Reis Justin Bennett Special Guests: Carly Litchfield In this episode, the panelists talk with Carly Litchfield who is a Full-stack engineer of React and React Native. The panel and Carly talk about frontend and backend developing and the issues that teams could face day-in and day-out. Listen to today’s episode to hear about that and much more! Show Topics: 0:00 – Kendo UI 0:30 – Nader: Welcome! Our panel is Justin, Lucas, myself, and our guest is Carly. Welcome to the show! Thanks for joining us. Introduce yourself please. 0:56 – Carly: I am a fullstack engineer at a company called Zocdoc. I have been there for 4 years, and we use C# framework. 1:17 – Nader: C# interesting! 1:26 – Nader: You can do game development and other stuff. 1:33- Carly: I haven’t gotten into game development at all, just using C# for web development. 1:50 – Nader. 1:55 – Carly. 2:08 – Nader: The topic for today is: being a frontend developer and a team that is mostly focused on backend. Also, other topics with testing if we have time. How did you get into web development? 2:32 – Carly goes into detail about how she got into web development. 5:02 – Carly: I have worked with React Native, too. 5:22 – Nader: That is my favorite thing to work with (React Native). 5:27 – Panel: Everyone was learning about this new domain and this frontend domain. How was the knowledge spread? How was it spread throughout the company? 5:50 – Carly: One of the people someone that was on this 3 – person team (Thomas) and he went around to anyone who knew React. He made a lot of tooling. He made a lot of configuration libraries. You’d have your NPM integration like everyone else. It was cool to hook it into our servers. It was crucial to help with adoption. Those libraries aren’t being well maintained and it’s causing some pain. 7:32 – Panel: I remember this one case when I was working with an engineer and he was working on backend stuff. He was like I don’t understand here is JSS and JavaScript. Did you have those cultural differences? 8:27 – Carly: Yeah, definitely. You will see a thousand two-thousand lines that are written by us and it’s impossible to know how it hooks-up, etc. It’s painful to work with and some of the internal tooling nobody is updating. That served a forcing mechanism b/c we built tons of the frontend that it’s so complicated and we are paralyzed. That served us b/c frontend is hard and we just can’t go plopping around wherever we want. That’s how they tried to use Backbone. We never hired a specific frontend engineer. We just kept hiring backend to learn frontend. It’s harder to hire someone to avoid those mistakes. They will have to learn the hard way, where a Senior Developer can help. Even our Backbone apps were heavy and hard to work with. At that time we thought we were going to go to React. We thought we could hire someone with true frontend experience. We started an interview process and hard to get off the ground. We have gotten a lot better b/c we have Senior and Principle engineers to help. 12:12 – Panel: This isn’t easy and this is hard. Building UIs are extremely difficult.  13:06 – Carly: I have an old manager that posted a quote...that just shows how much things are changing. These are advanced strategies. On the backend you have all of these services and go to AWS. However, on the frontend the problems aren’t solved, yet. WE don’t have a perfect answer. A lot of the dynamics are interesting and the right answers are yet to be found. 14:32 – Panel: I think that in some ways, an application we are finding better ways with static websites and blogs through the WordPress model. We are finding practices to enable people to build intricate things. 15:07 – Panel: I used C++ in the beginning of my career. I use a framework called QT. QT is good to building native UIs, but it’s extremely complicated and difficult. And thinking about that from the idea of building not only a UI, but also...we are essentially using tools that aren’t supposed to be used in the way they were designed. 16:46 – Carly: I agree. When I was using style components at the beginning – after you do it for a while it’s not weird anymore. It’s great not to have to reuse things. I hear a lot of people concerned with these separations, but maybe they were 3 separate concerns. Maybe one component is one concern, if you will. 17:59 – Panel: I agree. If you look at the page model vs. the web model...you want a button to look like THAT button. You want them to look the same, it’s a component or an app. Maybe if you have a Wikipedia page where you have headers and sections, the CSS model makes sense on that particular domain, but with application it’s so complicated. I am a fan of cell components, and... Things are getting better. Another topic – we are in this frontend world and one big problem with the old days was reliability. You talked a lot about testing in the frontend. Let’s talk about testing in your professional life. 19:48 – Carly: I moved slowly into backend, and it’s comfortable that you knew you weren’t going to break anything. This testing stuff is great and I actually love it. We need to figure it out on the frontend, too. I built a bunch of tools that doctors use. We started thinking about what can we do to make the frontend more testable. 21:40 – Panel: I call that: Layer Oriented Design. 21:51 – Carly: When we were on Backbone we used this screen-shot testing framework. We obviously should be focusing on how we made this app rather than how do we test frontend code. But we did it. You could have a Backbone view... 22:43 – Advertisement – FRESH BOOKS! 23:47 – Nader: How would you change the pictures – were you running it through what? 24:02 – Carly: An array of pixel colors. 24:10 – Carly: It was cool! We called it Lena. We used it for a year or so and it caught some bugs and it did other things. We built Percy and Storybook. We are ahead of the game with that. In general that is what we have moved to instead. 25:30 – Panel: What is Percy? 25:37 – Carly: It will render your components, then it will grab...and every time you push code it will compare the old/new screenshot. You can do mobile stuff, too, which is awesome. 26:25 – Panel: When I saw the Percy tests – I thought: this makes a difference! 26:48 – Carly: How do you know if this random stuff matters? 27:15 – Panel: It makes a huge impact. Percy can give it to you and easier to review code that has visual changes. If you added a border and you can see all the red sea of change, so let’s use a border box, etc. It’s really mind-blowing! They have a GitHub hook. If there are changes people have to improve. 28:22 – Panel: You mentioned it supporting a bunch of different browsers? What sort of context does Percy run in? Does it have a specific execution...? 28:44 – Carly: Options in Firefox and Chrome so far. People at Percy talk about cross-browsers and it will have a pipeline. It’s really hard to do. Who knows if it will come but we will see. 29:13 – Panel: How do we ensure that things are continuing to work across the browsers? Did we render anything that is completely broke? How do you do testing across browsers? 29:44 – Carly: Yeah, we use Browser Stack. We run Selenium IO. 31:12 – Nader: It sounds like you have great tools on the frontend. Nader asks a question. 31:28 – Carly: We have a fairly broken-up frontend. If someone changes something... Running all of those tests can get crazy. 32:11 – Panel: Cypress... Why did you decide on Cypress – what has been your experience with that? 32:35 – Carly: I have not yet figured out a good debugging experience, and I don’t know how you guys are doing it? It’s impossible to debug and it’s not a pleasant experience. I saw Cypress’ advertisement and you can see the difference. They highlight the target, etc. I had to try it! In just a little app that I have – I tested it there. I thought it was awesome b/c it will show you where it failed, etc. I had to get everyone on board and tried to persuade my team to use it. I used these slides and presented it, and it worked fine. It didn’t flake at all. People had to work with the tests and work with Cypress to get the feel for it. Everyone decided to use it, too. 35:16 – Panel: The spread of knowledge and it goes back to the beginning. What is this secret group: Frontend Guild? 35:33 – Carly answers the question. 37:04 – Panel: How does knowledge spread happen in other companies? Such different companies and different scales – how does that happen? 37:23 – Panel: As your company grows, communication is definitely a hard thing to accomplish. At ARTSY we try to do different things. One of our principles is...we try to document everything that goes on. Document from a process-level, and other levels, too. We have working practice groups (like the Guild) we talk about frontend issues, and other topics. Lots of meetings and lunch and learns (show and tell). We bring in outsiders in to the company to share their information. 38:57 – Nader: At AWS we have Meetups that are internal and external. We have talks, too. Every week you can find a few dozen talks around AWS and/or Amazon. You can take an hour or two out of your day to check those out. We also have demo-days that can show people what they are working on. 40:06 – Panel: Demo-days sounds very exciting. 40:49 – Panel: Find out what motivates people and go from there. 40:57 – Panel: Security as a healthcare company there is a lot of regulations, paper, and you have to keep up with standards. Can you talk about that? 41:20 – Carly: Yes, GitHub has a great feature... 43:20 – Carly: A Web Package I saw recently, and it’s called NPM / audit resolve. 44:40 – Panel: That audit resolve was purchased by NPM. Yeah, we primarily use... 45:04 – Carly: This stuff was existing out there before, and now we know. 45:12 – Panel: There is s this cognitive load that is just sitting out there. Being aware of what licenses out use and the features that you aren’t actively investing in. Building something is more than just putting JavaScript on the page – there are more concerns. 46:19 – Panel. 46:25 – Panel: Building the product is just the tip of the iceberg. It’s all of the other things you have to do to make the delivery good. 46:49 – Carly: I agree – especially on the performance-side. 48:00 – Panel: I would like to talk about these topics now: Monitoring and CI. How do you set that up? 48:19 – Carly: We have these things called Bundlesize. 49:06 – Panel: What’s the name of the library called? 49:10 – Carly: Bundlesize, I think. 50:41 – Nader: That’s all the time I have for today and thanks for coming on the show, Carly! 51:12 – Panel: Wait! Picks! 51:23 – Advertisement – Get A Coder Job! End – Cache Fly Links: Ruby on Rails Angular JavaScript Elm Phoenix GitHub Get A Coder Job Charles Max Wood’s Twitter Lenna Percy.io Percy – GitHub GitHub – Bundlesize NPM – Audit Resolver Meet Libby Backbone React – Blog The Selfish Gene Cypress.io Carly Litchfield LinkedIn Carly Litchfield Twitter Sponsors: Get a Coder Job Cache Fly Fresh Books Kendo UI Picks: Lucas App – Libby Carly Book: The Selfish Gene Justin TestCafé Create React 2.0

 RRU 036: Signal R with Brady Gaster LIVE at Microsoft Ignite | File Type: audio/mpeg | Duration: 47:45

Panel: Charles Max Wood Special Guest: Brady Gaster In this episode, Chuck talks with Brady Gaster about SignalR that is offered through Microsoft. Brady Gaster is a computer software engineer at Microsoft and past employers include Logical Advantage, and Market America, Inc. Check out today’s episode where the two dive deep into SignalR topics. Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:56 – Chuck: Hello! We are going to talk about SignalR, which is an offering through Microsoft. 1:09 – Guest: It started in 2011 that’s when I got involved, but I wasn’t with Microsoft, yet, at that point. I was working on the technology, though. Effectively you can do real time HTMP but what they did (Damon and David) let’s create a series of abstractions but not we have for Java. They basically cam up this idea let’s do web sockets and then go back to pole / pole / pole. It’s to see what the server and the client can support. Guest talks about Socket.io, too. 6:45 – Chuck: What we are talking about real time coordination between apps. 6:56 – Guest: Web sockets, 1 million...and 2.6 million messages a second! 7:05 – Chuck: I can set that up like I usually set up web sockets? 7:17 – Guest: There is a client library for each. Effectively you have a concept called a connection. 9:48 – Chuck: How do you handle authentication on the frontend? 9:56 – Guest: We have server side things that we can attribute things. 10:09 – Chuck. 10:12 – Guest: If you authenticate to the site then the site passes the token and it basically sits on top of the same plumbing. 10:38 – Chuck. 10:42 – Guest. 10:54 – Chuck. 10:58 – Guest: We recently just had the DOT NET CONF. We had an all night, 24-hour thing. 11:48 – Chuck: Here you are, here you go. You hook it all up, JavaScript into your bundle. 12:05 – (The guest talks about how to install.) 13:12 – Chuck: I could come up with my own scheme. 13:25 – Guest: The traditional example is SEND A MESSAGE and then pass you string. Well tomorrow I do that and I just change the code – it’s great b/c I send up a ping and everybody knows what to do what that ping. It’s just a proxy. 14:17 – Chuck: I am trying to envision what you would use this for? If you are worried about it being stale then you refresh. But if you want the collaborative stuff at what point do you ask: Do I need SignalR? 15:00 – Guest: When I do my presentations on SignalR and being transparent I want to send you 1,000 messages but 1 or 2 messages will be dropped. You don’t want to transmit your order data or credit card information. Do you have a hammer and you need a screw?  If you need stock tickers and other applications SignalR would work. Keeping your UI fresh it is a great thing. 19:02 – Chuck: You do that at the Hub? You set up the Hub and it passes everything back and forth. What can you do at the Hub for filtering and/or certain types of events? 19:26 – Guest: I am looking at a slide. What’s the cool thing about SignalR and the API is it’s deceptively simple on purpose. If you want to call out to clients, you can get a message to all of your clients if you select that/those feature(s).  Some other features you have are OTHERS, and Clients.Group. 20:57 – Chuck: Can you set up your own? 20:58 – Guest: I don’t know. 21:12 – Chuck: Clients who belong to more than one group. 21:23 – Guest: Dynamics still give some people heartburn. (The guest talks about C#, Dev, Hub, and more!) 23:46 – Advertisement: Get A Coder Job! 24:23 – Chuck: How do people get started with this? Do they need Azure? 24:30 – Guest: You don’t need Azure you can go to Microsoft and it’s apart of the .NET team, too. 26:39 – Guest talks about how to install SignalR – see links below! 27:03 – Chuck: You don’t have to KNOW .NET. 27:11 – Guest: It was created by that team (*fair enough*) but you don’t have to know .NET. 27:57 – Guest: You can I could do JavaScript all the way. 29:04 – Chuck: Yes, we keep moving forward. It will look different what people are using. 29:21 – Guest: That was an early thing and I was reading through the old bugs from 2011/2012 and that’s one thing that kept coming up. I didn’t want to use jQuery to use SignalR – now you don’t. It’s a happy thing. 30:45 – Guest: Someone suggested using PARCEL. I have a question do you have any recommendations to have NODE-SASS workflow to have it less stressful?  31:30 – Chuck: It’s out of Ruby that’s my experience with Node-Sass. 31:40 – Guest: I haven’t used Ruby, yet. 31:46 – Guest: I haven’t heard of Phoenix what is that? 31:50 – Chuck answers. Chuck: It’s functional and very fast. Once you’ve figured out those features they almost become power features for you. Elixir has a lot of great things going for it. 32:50 – Guest: I tried picking up GO recently. 33:08 – Chuck: Lots of things going on in the programming world. 33:18 – Guest: I have always had a mental block around Java. I was PMing the Java guys and I asked: will this stuff work on... Once I got it then I thought that I needed to explore this stuff more! I want to learn Ruby, though. 34:16 – Chuck: Anything else in respect to SignalR? 34:15 – Guest: I really think I have dumped everything I know about Signal R just now. I would draw people to the DOCS pages. A guide for anything that could happen on the JavaScript side – check them out! We have tons of new ideas, too! 37:33 – Picks! 37:42 – Advertisement – Fresh Books! 47:54 – Advertisement – Cache Fly! Links: Vue jQuery Angular C# Chuck’s Twitter SignalR SignalR’s Twitter GitHub SignalR Socket.io Node-SASS ASP.NET SignalR Hubs API Guide – JavaScript Client SignalR.net Real Talk JavaScript Parcel Brady Gaster’s Twitter Brady Gaster’s GitHub Brady Gaster’s LinkedIn Sponsors: Angular Boot Camp Fresh Books Get a Coder Job Course Cache Fly Picks: Brady Team on General Session Korg SeaHawks Brady’s kids Logictech spot light AirPods Charles Express VPN Hyper Drive J5 ports and SD card readers Podwrench

 RRU 035: Optimizing React Virtual DOM Explained Article with Alexey Ivanov and Andy Barnov | File Type: audio/mpeg | Duration: 51:22

Panel: Lucas Reis Justin Bennett Special Guests: Alexey Ivanov and Andy Barnov In this episode, the panelists talk with Alexey Ivanov and Andy Barnov. They all discuss Alexey’s article titled: “Optimizing React Virtual DOM.” Listen to today’s episode to hear all the details about this article, the guests’ backgrounds and much, much more! Show Topics: 0:32 – Panel: Thanks for joining us and talking about this article. 0:52 – Guest: Thanks for having us on your podcast! The guest talks about his community of developers and the offices are in San Francisco, Russia and other places. He talks about how the company helps their customers and how they can scale. Some of their companies are Groupon and Ebay. 2:39 – Alexey. 3:09 – Panel: The article is here. What is JSX how does it boil down to? It’s all supposed to help people and help them understand. 3:45 – Alexey: It’s about how to structure your state, etc. 4:15 – Panel: This keeps things small. He said when I have one idea I write a song and when I have 2 ideas I write 2 songs. If you try to put too many ideas into one post it maybe won’t go too far. 4:48 – Alexey. 5:50 – Panel. 5:56 – Panel: That’s a topic for another episode. The article is interesting in that the large percentage don’t think about rendering performance, so it’s a needed piece of content. Let’s talk about – what is the React Virtual DOM? 6:32 – Alexey goes into detail with his answer to the panelist’s question. 8:50 – Panel: What I like about this article is that you go through a good progression: here is the JSX that you would write and here is the trans piled function is. And you show the virtual DOM pre-presentation is. I think that is a helpful thing. Let’s talk about that. How does React change to those things when it’s rendering? 9:50 – Alexey. 12:58 – Panel: Okay to recap...when you are rendering an element you write some JSX and the first thing (component) that will map over to the type property is for the Virtual DOM object? And then all of that is compared – when does that happen, the comparison? 13:28 – Alexey: You have React and you create... 15:20 – Panel: So it’s both React and set state these are the only 2 things that triggered state or is there anything else out there? 15:31 – Alexey. 15:47 – Panel: Interesting. You talked about the imperative way we did it before – and it’s much simpler to say what you want, but a question is that is there any world case where it does not work well? What are the trade-offs? Have you ever encountered one? 16:34 – Alexey: If you have changes in the browse, implementations...it’s simplest and easiest way. You just need to have some little changes... 17:53 – Panel: If it’s basic then you don’t have to do manual updates. 18:03 – Alexey. Alexey: To make it work you need competence in your bundle. 18:36 – Panel: I’ve heard – haven’t worked with – when we have these projects that are really web time based, hundreds of elements in real time on a screen, on a Virtual DOM it’s too slow. You have to be precise. They had performance issues, I’m sure 98.99% of the applications probably perform better with the Virtual DOM.  19:46 – Alexey. 21:38 – Panel: That is to reduce the amount of state changes so you are reducing the amount of time it renders – right? 21:50 – Alexey. 22:03 – FRESH BOOKS! 23:11 – Panel: We talked about how type is the first thing that is checked. It does equal comparison to compare these types. What was really interesting is that class components are the same thing but not so. Is it always going to re-render for those components? 24:24 – Alexey: We have to talk about 2 things about this first. In my article... 27:49 – Panel: That is a beneficial tool too to control your rendering. You talked about tools to show updates and we will include the link to the article in the links, also I would read it and check out that particular function. It’s cool to see HOW it’s actually rendering. 28:29 – Panel: Apparently sometimes things help us in principle cause we need performance. We need to open the tools and understand what is happening? Is it really a bottleneck like I think it is? One of those Twitter things I saw a few months ago... 30:52 – Alexey: Yes, do what makes sense to you at the time. 32:08 – Panel: We talked about render performance and the pure component and not creating functions...you have a big quote in your article... I have a big question for me: You have a component, and there is a child / parent component. I am curious about that pattern – will it re-render every time? Tell us your thoughts, please. 33:16 – Alexey. 34:11 – Panel: My only issue with the render props is not a performance issue it’s more of an architectural issue. Sometimes we want things to be interjected. I want to have access to this or that. Sometimes we want to access those on a life cycle. The higher the component makes it easier to add a... That’s my only complaint about render comps. 35:35 – Alexey. 36:00 – Panel: Like composing consumers? 36:06 – Alexey: What we are talking about is... 37:00 – Panel: I agree. There are some interesting cases with that pattern when you have a lot of those chained together – function, function, etc. – there are some components that will help you compose... 37:34 – Panel: It’s like callback hell all over again. Everything is a tradeoff somewhere. After the tree it looks clean with render props. I like it even with the drawbacks. 38:25 – Panel: You spent some time talking about lists of children and how you (if one of the children are removed) then it ends up re rendering all the children cause it’s comparing their positions. You mentioned key is one way to deal with that. Let’s talk about keys. When people use keys they are using an array of an index. It seems like it defeats the purpose of it – is that right? 39:20 – Alexey: Yes, you are right.  40:19 – Panel: I think that continually and it’s a smaller known thing but people want this key error to go away and they just shove something in there. To some extent it’s good to know if your tool requires something it’s good to know WHY it requires that. 40:52 – Panel: Last question. Is that the person to program and be a web developer and they are learning React. This is the tool and they are learning how to use React for an app then when we are throwing articles at them. If they are learning React and these articles are at them I think it’s a cognitive overload. What are your thoughts / advice? 42:07 – Guest: How beginner should you be before you learn React? Ideally you should be aware of JavaScript, right? Sometimes people do this to catch up to something shiny. This is just my 2 cents.  43:03 – Alexey. 44:49 – Panel: When you are going to hire someone to do something or choose a framework always try to do a little bit of work without it. Try to build an application w/o React, and then React is introduced to you, you will only see the benefits that they are brining. One thing that happens inside the React world is that people don’t write an application... Start with the basic building blocks – that makes sense to me. 46:05 – Panel: Let’s go to picks! 46:13 – Advertisement – Get A Coder Job! Links: Ruby on Rails Angular JavaScript Elm Phoenix GitHub React: The Virtual DOM Elixir and Phoenix Bootcamp Alexey Ivanov’s Twitter Andy Barnov’s Twitter Rob Pike’s YouTube Video Understanding Comics Understanding Comics – Book Get A Coder Job Charles Max Wood’s Twitter Sponsors: Get a Coder Job Cache Fly Fresh Books Kendo UI Picks: Lucas Check your room for sound Andy Go Programming Language Alexey Understanding comics Justin The Complete Elixir and Phoenix Bootcamp

 RRU 034: “Progressive Web Apps” with Aaron Gustafson / Live at Microsoft Ignite | File Type: audio/mpeg | Duration: 55:27

Panel: Charles Max Wood (DevChat T.V.) Special Guests: Aaron Gustafson In this episode, the Chuck talks with Aaron Gustafson who is a web standards and accessibility advocate working at Microsoft. Aaron and Chuck talk about PWAs and the ins and outs of these progressive web apps. Check out today’s episode to hear more! Show Topics: 0:36 – Chuck: Our guest is Aaron, say HI! 0:41 – Aaron: Hi! I have been working on the web for 20 plus years. I am working on the Edge team for accessibility among other things. I have done every job that you can do on the web. 1:08 – Chuck: That is one of OUR publications? 1:14 – Aaron: No the communities. I joined the staff as editor in chief for 1.5 year now. It’s a nice side project to do. 1:36 – Chuck: I thought it was a commercial thing. 1:40 – Aaron: No it’s volunteer. 1:52 – Chuck: Talk about your web background? 2:02 – Aaron: I remember the first book I got (title mentioned). My first job on the web (cash) I was the content manager in Florida and this was in 1999. Gel Macs just came out. I relocated from FL to CT and worked for other companies. I got into CSS among other things. It’s been a wild ride and done it all. 3:52 – Chuck: Let’s talk about web standards? 4:05 – Aaron: It depends on the organization and what the spec is and where it originates. It’s interesting to see how HTML developed back in the day. When standardization started working then everything started to converge. Everything is a little different now. Some specs come out from companies that... (Apple, Responsive Images, and Grid are mentioned among other things.) 7:37 – Chuck: We set up to talk about PWAs. Where did PWAs come from? 7:57 – Aaron: Modern web design, best web applications. Being secure. One of the underpinnings came out from Google and they have been supporters of that. Firefox is working on installation as well. The Chrome implementation is weird right now, but it becomes an orphaned app. It’s like the old chrome apps where in Windows you can install from the Microsoft store. But the case of Chrome you don’t have to go through the store. 10:14 – Chuck asks a question. 10:24 – Aaron answers. 11:53 – Chuck: What makes it a progressive web app rather than a regular website? 12:05 – Aaron: The definition is running on HTPS and... Aaron defines the terms that Chuck asks at 11:53. 12:43 – Aaron: Of course you can push forward if it makes sense from the baseline. 12:56 – Chuck: We have an Angular podcast, and we talked about PWAs and nobody had a good definition for it. 13:18 – Aaron. 13:22 – Chuck: What are the pros of having a PWA? Let’s start with the basics first. 13:33 – Aaron: The ability to control how you react to the network. We development is challenging maybe in other areas because of the lack of control and how your code gets to your users. Any special needs that YOU might have. Aaron goes into detail on this topic. 17:14 – Chuck: Is the service worker the star for PWAs? 17:20 – Aaron: In a way, kind of. Aaron goes into detail on this topic. Share 2 is mentioned, too. 19:42 – Chuck: If the service worker intermediates between the browser and the page / Internet would it make sense to have your worker have it load and then load everything else? Cause you have those Web Pack now. 20:14 – Aaron: Some people would consider it but I wouldn’t necessarily. I am not a fan for that. If anything goes wrong then nothing loads. I remember back when... 22:23 – Aaron: That is a lot of overhead. 22:34 – Chuck: I am wondering what is the best practice? How do you decide to pull in a service worker and then move into more complicated issues? 22:53 – Aaron: Progressive Web App where they talk about their evolution about this. 25:17 – Advertisement – Fresh Books! Code: DEVCHAT. 26:25 – Chuck: In order to be a PWA you don’t need to have a push notification. 26:38 – Aaron: I don’t think anyone would want a push notification from me. 27:12 – Chuck: What features do PWAs have? 27:18 – Aaron: Features? None of them really, other than push notifications, it’s just standard it’s going to make an App feel more App “y”. If that’s something you want to do. It’s up to you to determine that. There is going to be like push notifications – sending person new updates about the order. If you were a new site you want to make sure you are not doing a push notifications on everything cause that would be too much. Exercising care with the capabilities with what the users are doing on your computer. This is a person that you are dealing with. We need to seem less needy. Give users control of how they want to use it. For example, Twitter will give you that control per user. 30:56 – Chuck: Could you also do it for different parts of the page? 31:01 – Aaron: It’s different scopes. Your servicer worker has different scopes and it needs to be in the root folder or the JavaScript folder. You can have different workers but they will come from different scopes. 31:32 – Chuck gives a hypothetical example. 31:50 – You can do a bunch of different service workers. 32:11 – Chuck: This is why we create different hierarchies in our code. 32:26 – Chuck: Is there a good point where people can be more informed with PWAs? 32:40 – Aaron: PWA stats website and Twitter account with Cloud 4. 33:22 – Chuck asks a question. 33:26 – Aaron: Yes. If you are a photographer you don’t want to cash all of your photos on someone’s hard drive. We have to be good stewards of what is operating on people’s hard drives. Even something as simple as a blog can benefit from being a PWA. 35:01 – Chuck: Are there new things that are being added to a PWA? 35:12 – Aaron: A new feature is the background sync. Aaron: What is native and what is web? 36:33 – Chuck: Yeah it can detect a feature in your machine. Dark mode is... 36:48 – Aaron: It would be nice to see things standardized across the board. 37:00 – Chuck: How does this play into Electron or Android or...? Do those need to be PWAs? 37:16 – Aaron: It depends on what you are building. So I talked with people through Slack and they want total control. If you r desire is to shift the same experience then Electron can make a lot of sense. They will have to pay a premium, though, your users. If you are aware of that then go the Electron route. But for most cases then Electron might be overkill for you. You don’t need that extra overhead. 39:55 – Aaron continues. Aaron: I think the major benefit of PWA is... 41:15 – Chuck: The other angle to that is that in an Electron app does it make sense to use a PWA things? 41:23 – Aaron: Yes that makes sense. 41:34 – Unless for some reason you need to unlock into an older version, which I hope is not the case b/c of security reasons. 41:55 – Aaron continues. 42:34 – Chuck: Where can we find you? 42:35 – Aaron mentions Twitter and other sites. See Links! 43:02 – Advertisement – Get A Coder Job! Links: Ruby on Rails Angular PWA States Website PWA Twitter Electron Aaron’s Website Aaron’s LinkedIn Aaron’s Twitter Aaron’s GitHub Aaron’s YouTube Channel Aaron’s Medium Get A Coder Job Charles Max Wood’s Twitter Sponsors: Get a Coder Job Cache Fly Fresh Books Kendo UI Picks: Aaron Home Going by Yaa Gyasi Zeitoun What is the What Affect Conf. Charles Armada

 RRU 033: "Finding Your Dream Job" with Panelists | File Type: audio/mpeg | Duration: 44:19

Panel: Charles Max Wood (DevChat T.V.) Nader Dabit Justin Bennett Lucas Reis In this episode, the panel talks amongst themselves about: What is THE dream job? How do you define YOUR dream job? And how do you GET your dream job? Check out today’s episode to find out more! Show Topics: 1:02 – What does a dream job even mean? 1:08 – Nader: It means that you wake-up and you are excited to go to work instead of dreading it. 1:34 – Lucas: Dream jobs I think change depending on your life’s moments. It changes from person-to-person and from time-to-time. After some months there you are feeling like you are always growing as a person and as a professional. 2:24 – Chuck. 2:38 – Justin: My idea is that it has some impact on the people in your world. What is my impact on the world – what is my footprint – what am I doing? My last job was advertisement, and my job was to drive eyeballs to ads. That wasn’t what I wanted to do anymore. 3:49 – Charles: What do I want to do with DevChat? It’s not always fun, and why am I doing this. For me it’s personal freedom and an impact within the world. What are your big three that will make a big difference to you? There are all sorts of reasons, but once you know that then it’s easier. When my resume comes across their desk it comes with an endorsement. If you don’t have anything else to sell them, especially if you are a new developer. The last few jobs you’ve gotten how did you find them? 6:25 – Nader. 6:52 – Panelists: Recruiters. I used that to build myself up. Then I got into: Where DO I want to work? I will check Twitter, GitHub, Hacker News, and I keep my eyes open. At Artsy we try to build on those relationships. We are hiring! 8:31 – Chuck: I think most companies are like that – they will hire the people that they know. Doing the research, figuring out what company you want 9:10 – Panelists: Don’t be afraid to meet-up with people and ask them questions. You aren’t just trying to leech off of them and figure out what YOU can contribute back. 9:47 – Chuck: Even if you are trying to network with people to get a job – make sure you don’t look like you are trying to leech off of them. 10:20 – Lucas: When I moved to the U.S. about a year ago... A question I asked myself: Where will I contribute well? There are some markets that I am not interested in and there are some that I am interested in – that’s where I want to go. I like helping people with their health. Their website (company I am working for) is very eCommerce like. I know I can contribute, and it’s a mission that I am all about. Where do MY skillsets help? For junior levels time is on your side – contribute your time. You can help them with When you are young you have time. Everyone can follow their skillset. Try to find the places where you want and where do you want to contribute. 13:06 – Chuck. 13:20 – Even senior engineers we undervalue ourselves – it’s easy to do. When friends are trying to break into the industry I tell them to track their projects. 14:26 – Chuck: It shows the eagerness to learn and be willing to learn and contribute. On GitHub – be consistent with your contributions; it shows initiative. 15:33 – Nader, how did you get your job? 15:40 – Nader: Developer Advocate is the job I have now. Nader talks about how he got his current job. The main thing that I would recommend is to learn in public. Even if it’s not that impressive – overtime you will standout. It’s all about standing out, because you don’t want to sell yourself. 17:52 – Advertisement – Fresh Books! 30-day trial. 18:58 – Chuck. 19:20 – Lucas: I am doing a lot of interviews now – a lot of times we want to hire people but we can’t for a certain skillset. One interesting thing is that even though you have an initial “no,” we could use that person later. 20:04 – Chuck: If it comes down to a good relationship then you can make that work to your advantage. People should be following-up to see if HR is reposting the job. Give them a lot of reasons to hire you! 22:30 – Panelist: If you aren’t excited to work there then it’s really telling. Searching for any opportunity just to grow is okay but it will be telling to your possible future employers. 23:40 – Chuck: Nader talked about standing out, and here you are talking about the same thing. Nobody goes to this level of effort to get a job at a company. 24:13 – Lucas: Do you think this applies to the big companies like Facebook or Google? 24:28 – Nader: I think these same principles do apply. When you start thinking about these big companies as actual people – then you have a better shot of getting hired. Go through Meetups and finding people who work there. Building relationships is what it’s about. 25:40 – Chuck: Companies are made-up of people – that’s it. Sometimes the company will go to bat for you and try to convince HR that you could be the right person. Give them reasons to hire you – sometimes it works and sometimes it doesn’t. 27:03 – Lucas: Sometimes you THINK you want to work for a company, but how do I gather that this is the correct decision. In the middle of the interview – I realized that this wasn’t the right place for me. How do I got about that? 27:50 – Chuck: I lay out the TOP Three in my eBook. The best place to find out this information is finding out through past or current employees through X company. A lot of information, too, you can get through GlassDoor. You can do a people search through LinkedIn. Have that conversation with them over lunch and ask them those questions and find out. 31:48 – Justin: As you are reaching out to these people, keep them in mind as a possible mentor. Someone who you can learn from and that they can possibly mentor you. I think that can be undervalued. Really focus on “is this someone I could build a relationship with to help me with my career.” The relationship is a give and take – you don’t want that to show through. You should be interested in the person and helping them in some way, too. 33:11 – Chuck: I agree. Chuck talks about mentor / advisor relationship some more. 34:00 – Lucas asks Chuck some questions. Lucas: Some people have a difficult time reaching out – what are some great tips for this? 34:31 – Chuck: Everyone is different. For me, I have to put out a certain number. You have to be willing to go out and do it. If you can’t work with people, then sorry tough luck. Nowadays you will be working with a team of other programmers. Relationships are all about give-and-take; like my wife and me. 36:17 – If you aren’t comfortable in social situations there are things to slowly get you comfortable. Maybe send a tweet through Twitter. Being visible and contribute to slowly put yourself out there. Do whatever you feel comfortable with and challenge yourself just to TRY. Most people aren’t trying. 37:45 – Chuck: Sometimes that direct approach is or isn’t there. You can strike up a conversation about code and then it can go from there. It can happen in stages.  38:37 – If our experiences don’t align then that’s okay. Really try. Make sure you put in more effort than the people that are applying just via their website. Do more than just the 39:17 – Chuck: The more personal you can make it the better chance you have of getting hired. 40:00 – Picks! 40:04 – Advertisement – Get A Coder Job! Links: Kendo UI Ruby on Rails Angular Redux Meetup Get A Coder Job Charles Max Wood’s Twitter Nader Dabit’s Twitter GitHub – MDX-DECK Jasper DocZ Sponsors: Get a Coder Job Cache Fly Fresh Books Kendo UI Picks: Charles The Great British Baking Show Get A Coder Job Nader WatermelonDB Lucas GitHub – MDX-DECK Justin DocZ Jasper

 RRU 032: "The most important lessons I've learned after a year of working with React" with Tomas Eglinskas | File Type: audio/mpeg | Duration: 46:02

Panel: Charles Max Wood (DevChat T.V.) Nader Dabit (Poland) Special Guests: Tomas Eglinskas In this episode, the panel talks with guest speaker, Tomas Eglinskas, and the panel talks to him about an article he wrote via Free Code Camp Medium. Currently, Tomas is a software developer at Zenitech. The panel and the guest dive-into lessons that not only apply to being a developer, but great life lessons that everyone can learn from. Check-out today’s episode! Show Topics: 1:18 – Chuck: Our special guest is Tomas Eglinskas. We want to talk to you about your article you wrote on the Free Code Camp Medium. How do you get something posted/published there? 1:29 – Tomas – It’s not that hard to get something published there. You can send your articles via email and they will publish it. You can get feedback and resend it, and perhaps they will publish it. 2:06 – Chuck: Quincy and you are besties, right? 2:11 – Chuck: We should get Quincy on this show. 2:21 – Chuck: How did you get into React? 2:25 – Tomas: How I got into React is a bit interesting. It started at the university; at first it was really, really hard for me. Time pressed on and I got hooked. It’s really, really fun. That’s how it initially started. 3:06 – Chuck: Article is titled: “The Most Important Lessons I’ve Learned After a Year of Working with React.” 3:18 – Tomas: What started behind it: I was doing my bucket list. I wanted to publish something at some point. I wanted to try to write and share something from my side of things. I wanted to prove to myself that I can/could. 4:05 – Nader: What do you do now with React? 4:13 – Tomas: We do everything: frontend and backend. In my company we usually use everything with React with production and with my own projects. I have tried Angular but I like React best. 4:45 – Chuck: I am curious...How do you get past that? Where my way is the right way. 5:10 – Thomas: That sentence came from when I was learning it. People would say: this is the way, or someone else would say: no, this is the way. People are afraid of doing their own projects and using the technology. Finding information and figure out what is right and what is wrong, but you eventually figure out your own opinion. There are so many opinions and tutorials and it’s frustrating, because there are too many things to learn. 6:26 – Chuck: Nader, what is the right way to do it? 6:33 – Nader: Yeah, I agree. It’s hard to decipher. What is right or what is wrong? How did you come to your conclusions? My best practices might not be the best practices for someone else. 7:18 – Tomas: Everyone is learning all the time. Their experiences are different. You have to decide what is best for the long-term. At least for me, it was practice and learning and reading from other people; from podcasts, articles, etc. I am open to say that I am not right, but want to know why it’s not “right.” Always trying, always making mistakes. I guess something like that. 8:42 – Nader: Don’t stick to the basics and become advanced. In any career right now you don’t know how to do everything, but to do one thing (topic) really well. The generalists aren’t the people they are hiring; they are hiring the specialists. 9:24 – Tomas comments. 9:37 – Chuck: There is something to be said – I think it’s good to know general things, but you are right. They are hiring the specialists. They are going to look at you differently than other people. You like your thinking challenged a bit. Where do you go to do that to upgrade your skills? 10:18 – Tomas: The silliest one is going to interiors. That’s the fastest way of feedback: what is right or wrong about my code. Going to conferences and Meetups, and doing projects with someone else. I was doing a project with a friend – everybody used Java – but we all used it differently. We all worked together and challenged each other. 11:43 – Chuck: Talking to people – asking them: how do you do this, or why do you do it this way? 12:01 – Tomas: Don’t be shy and have a presence. I guess in America there are a lot of Meetups, in my country we don’t. In the States you have the people who do the tutorials, and such. You can be challenged everyday. 12:40 – Chuck: It depends on where you are. Utah we have a strong community. It’s interesting to say. There was a talk given my Miles Forest at a conference. He would drive to Seattle to be apart of a users group to be apart of it – he would drive 2-3 hours to do this. Eventually, he made his own user group. 13:55 – Nader: I am here in Europe now. I have seen a lot of events going on. Just all of the countries I have heard of different events. I haven’t heard about Lithuania, where you are at Tomas. 14:28 – Chuck: Get A Coder Job. Find Meetups – I will tell people to do this. They will say: There aren’t any in my area. I tell them to type in different search words. To me, it’s telling because it’s “just TRY it!” You never know what will be out there. Go look and see if there is something out there for you. 15:28 – Nader: I agree. I learned a lot through those. 15:59 – Tomas: It is a dream to be an organizer of event but people are afraid that nobody will show. Nobody expected for people to show-up, but they did! Don’t be afraid – you’ll have a great time! 16:44 – Chuck: React is revolving so you need to be up-to-date – good point in your article. People want to reach some level of proficiency. You have to keep learning. How do you stay up-to-date with all of the new features? How do you know what to look at? 17:58 – Tomas: Don’t forget fundamentals. Now understand React from under the hood. You must know the reason behind it. I think that is the basic thing and the most important one, at least in my opinion. We get so wrapped up with the new things, but forgot the basics. 18:41 – Advertisement – Digital Ocean 19:27 – Nader: I am always checking Twitter. This is a good place to start, because I will see something being discussed and then maybe a year later how it all comes together. Twitter is real time. I follow the few top dozen important people through Twitter; Facebook people and other important people. They will talk about what is happening NOW and proposed things. Also, following people through Medium as well as GitHub. 21:01 – Tomas: I agree about Twitter. It’s fun to see what people are talking about. Things that you normally don’t hear through normal avenues. 21:27 – Nader: What interests you for the future? What do you want to specialize in? 21:41 – Tomas: As I progress, and I know more things (than I did before) I find that I want to KNOW more, in general! I am focused on React and try new things. I think about DevOps, but it’s important to know at some level different things as a whole: the backend and the frontend, too. Why is DevOps is important in the first place. I like to understand the system as a whole. And little by little I want to specialize in the frontend, too. It’s good to know the whole infrastructure, too. 23:23 – Nader comments. 22:45 – Tomas comments. 23:55 – Nader and Tomas go back-and-forth. 25:15 – Tomas: How big is your workshop? 25:24 – Nader: We just did one in Croatia. It depends really 2 days, etc. Different lengths. 25:47 – Chuck: Nader, how do people find these different workshops? 25:54 – Nader: Just follow me through Twitter! 26:11 – Tomas: I would like to attend. 26:19 – Chuck: What was one of these lessons that were the hardest for you to learn? 26:33 – Tomas: Not sticking to the basics. When you can show things that are more advanced. When you push yourself to know advanced topics then you are pushing those around you, too. You are encouraging others to learn, too! So that way both, you and the other people, aren’t stagnant. 27:51 – Chuck comments. 28:00 – Tomas: It’s not even “fancy” it’s knowing the basics. Tomas was talking about tutorials and other topics. 30:02 – Nader and Tomas go back-and-forth. 30:24 – Chuck: I think it’s telling and what you are pointing out in your article. Some people get to a level of proficiency, get the job, and then they go home, and that’s it. They aren’t pushing themselves. I’m not knocking these people. But there are people out there saying: Here is what I learned, this is what I want to share. 31:29 – Tomas: Yes, share your knowledge! 31:43 – Chuck: Other thing I want to talk about is another point in your article. 32:07 – Tomas: You will look at your code a few days/weeks later and you will say: Wow, I can do this better. Don’t bash yourself; learn from it. The most interesting screw-up was when I deleted a GitHub... 33:43 – Chuck: What is your good / bad story, Nader? 33:55 – Nader: My first job and have written the most terrible code. Go back a week / month later and notice major issues. The first year writing React was rough / interesting times. I learned a lot, because you are learning how the different architectural things work. 34:48 – Tomas: What was the hardest thing to learn? 34:56 – Nader: Something being “buggy” and over-complex. It wasn’t the original Flux, and it was a variant. Everything after Redux was easier. If you understand Redux then it’s pretty nice. 36:07 – Thomas: I think Redux was the biggest headache for me. When you are starting off it’s magic. 36:38 – Tomas: I like when people don’t over-engineer things. I am happy from time-to-time if you need Redux, great, if not then that’s fine. 37:28 – Chuck: Let’s do picks! Where can people find you, Tomas? 37:35 – Tomas: Medium. There are other things I want to talk about, so Medium is a good platform. A little bit of GitHub, too. I follow Twitter people, but I’m not active. In Europe, people use Twitter – we follow the famous people, but aren’t that active. 38:45 – Advertisement – Get A Coder Job! Links: Kendo UI Ruby on Rails Angular Redux Meetup Get A Coder Job Charles Max Wood’s Twitter Nader Dabit’s Twitter Nader Dabit’s Website Tomas Eglinskas’ GitHub Tomas Eglinskas’ LinkedIn Tomas Eglinskas’ Medium GitHub’s Twitter Free Code Camp Medium Tomas’ Article: “The Most Important Lessons I’ve Learned After a Year of Working with React.” Sponsors: Kendo UI Digital Ocean Get A Coder Job Picks: Charles CodeBadge.Org – Kickstarter Book – Get A Coder Job Video Course ^ Zapier ConFreaks Kent C. Dodds Nader Frontend Conference – December – Warsaw – Some speakers have been announced, not all AWS Tomas Egghead and Frontend Masters! Dribble – to progress as a frontend developer

 RRU 031: "Real-time Editable Datagrid In React" with Peter Mbanugo | File Type: audio/mpeg | Duration: 51:23

Panel: Charles Max Wood Lucas Reis Justin Bennett Special Guests: Peter Mbanugo In this episode, the panel talks with guest speaker, Peter Mbanugo. Peter is a computer software specialist who works with Field Intelligence and writes technical articles for Progress Software and a few others. He studied at SMC University and currently resides in Nigeria. They talk about his creation, Hamoni Sync, and article, Real-time editable data grid in React. Also, other topics such as Offline-First, Speed Curve, Kendo UI are talked about, too. Check out today’s episode Show Topics: 1:30 – Chuck: Let’s talk about what you built and how it works. Topic: Real-time editable data grid in React. 1:40 – Peter: Real time editing. It allows you to edit and have the data go across the different devices. Synchronizing your applications. For the  2:47 – I saw that you built also the... 2:58 – Peter: Yes, I built that with Real-time. Most of the time I have to figure out how to build something to go across the channel, such as the message. Then I built the chats. Next month 4:33 – Justin: It says that it can go offline. That is challenging. How are you going about that? 4:51 – Peter answers the question. Peter: When you loose connections and when the network comes back on then it will try to publish anything to the server while offline. If you are trying to initialize the... 5:42 – Awesome. 5:45 – Peter continues his thoughts. 5:56 – Lucas: This is really interesting. Form something really simple to tackle this problem. I have gotten into so many problems. Congratulations on at least having the courage to try such a system. 6:35 – Justin: When you have someone interacting with one of these applications, lose connectivity, is the service handling this behind the scenes? 6:56 – Peter: Yes.  Peter goes into detail. 7:19 – Justin: Neat. That would be interesting to dig more into that. 7:35 – Lucas: I had a friend who sent me links and I was like WHOAH. It’s not an easy task. 7:57 – Peter: Yes, offline – I am learning each and everyday. There are different ways to go about it. Then I go write something about conflict free of different types. I thought that was the way to go. I didn’t want it to be something of the declines. 8:50 – Lucas: How did React work for you? 9:24 – Peter answers the question. 9:58 – Panelist: I was trying to synchronize the system. There are 2 types: Operational Transformations and CRDTs. It’s a really hard problem. 10:35 – Lucas: Now we have multiple devices and they can be far away from each other. Updates to send to the same server. I think that this is really complicated world. Even consider new techniques that we use in RI. You have a long in process. You need to react to them. Maybe dates that you cannot get. Hard problem we are solving now. 11:56 –Justin: Even interacting with applications that ... it has made our products that aren’t approachable if someone doesn’t have a good Internet connection. Synchronizing connections while offline. So you can have offline support. These are problems that we can resolve hopefully. 13:01 – Lucas: It affects everyone. Back in Brazil we had problems with connections, because it’s connections. Now I live in NY but the subway my connection is hurt. 13:40 – Peter: Yes, I agree. Peter talks about his connections being an issue while living in Africa. 14:52 – Justin: How does that affect your development workflow? 15:08 – Peter answers the question. 17:23 – Justin: Shout-out to the Chrome team. Tool called LIGHTHOUSE. It can test for accessibility, SEOs and etc. Good same defaults and trying to test Mobile First. When I was learning about performance I wasn’t thinking about the types of devices that people would use. The edits tab really helps think about those things. 18:41 – Digital Ocean’s Advertisement 19:18 – Justin: Any tools to help test your download speeds or anything authentication tools? 19:36 – Peter answers this question. 20:15 – Panelist asks the same question to Lucas. 20:22 – Lucas: interesting question. Even though the website was doing pretty well we were in the dark. We did a huge migration and it wasn’t clear about the performance. So my first mission here was start using a tool called SPEED CURVE. It only gets better. For a company who needs to acquire a tool SPEED CURVE is great. They have the LIGHTHOUSE measurements in their dashboards. So it can follow through time your scores and all of your analysis. These are the tools we use today. They have both synthetic and real user monitoring. So when we are measuring things on our Chrome it is a picture of your machine (biased picture) they make it both synthetic and film your page and compare through time. Analyze your assets. Some code on your application and collects statistics for each user. Relic I have used before, too. I do believe those tools are of great help. I am sure there are opensource initiatives, but I haven’t played 22:56 – Peter: Have you tried...? 23:07 – Lucas continues. LIGHTHOUSE. 23:56 – Justin: It gives great visualizations for people to see. SPEED CURVE. Where we are at – so they can see that – it’s powerful. 24:40 – Lucas: Interesting story we used SPEED CURVE. Real users and synthetic measurements; our website was getting slower and slower. We couldn’t figure it out. What is happening to our application? It turned out that the app more people were using it on the mobile. The real user speed was going up because they were using mobile. The share of mobile users and performance was getting better. You look at the overall average it was getting slower. Interesting lesson on how to look at data, interpret data and insights. It was really interesting. 26:21 – Peter. 26:25 – Lucas continues the previous conversation from 24:40. 27:00 – Justin: Taking the conversation back. It’s always a challenging problem because the implications are hard to use. What was your experience with React Table? What are the pros and cons? 27:40 – Peter: React Table is quite light. It is pretty good on data. I haven’t had much of a problem. It is okay to use. The other ones I haven’t tried them, yet. 28:08 – Justin: Same question to Charles and to Lucas. 28:21 – Lucas: I have never worked with big tables to render the massive data or tables that need to be edits and stuff like that. I don’t have experience with those components. Play here and there. It is interesting, because it is one of those components that are fighting the platform and it’s a good source of interesting solutions. 29:05 – Chuck: Kendo UI has one. I need something that his more barebones. AG Grid. 30:03 – Justin: React Windows. It optimizes long lists. It just renders what is in the current window. 30:22 – Ryan Vaughn. 30:28 – Justin: Cool library. 30:36 – Lucas: Use it as a learning tool. How do you all decide when to actually start using a library? As early as you can? Libraries to solve our problems? 31:19 – Peter: It depends on what I am doing. 31:53 – Fascinating question. Not one size fits all. It’s a balance between product deliverable needs and... There can be risks involved. Fine balance. I find myself doing a lot is I will default using a library first. Library that isn’t too large but what I need for that project. If there is a hairy feature I will use the library until my needs are met.  33:49 – Lucas adds his comments. Lucas: You want to differentiate yourself. I love GitHub. 35:36 – Question to Charles: I know you have tons of stuff going on. What’s your thought process? 35:53 – Chuck: If I can find stuff on the shelf I will pay for it. My time adds up much more quickly then what the dollars do. I will pay for something off the shelf. I only mess around for a while but if I can’t find something to help me then I will go and build something of my own. I got close with Zapier, but I got to the point that I wanted to put something together that I built my own thing through Ruby on Rails. Generally I will pay for it. 37:07 – Panelist: Yes, I don’t think we all don’t value our time and how expensive time is. 37:25 – Chuck: I own the business. My time is of value – it’s more important to me. It’s a trap that people fall into not to value their time. 38:11 – Lucas: We are not all working on what we SHOULD be working on. This isn’t going to bring business Productive time that we are using with stuff that is not our business or our main focus. Focus on the core product. Try to get the customers to have a better life. The mission of the company. The web community that started that most is the Ruby community. Having solutions and focusing on the problem. I think that JavaScript is now doing a better job of this. As we know it’s easy to fall into this trap and play with building blocks. 39:52 – Chuck: I have had a few people remind me that I am a DEVELOPER! 40:19 – Justin: The thing I have estimating is the difficulty of something. I can build it because I am a developer. Is it valuable for me? 41:10 – Lucas: The sunken costs sink in – I have done all this work and now look where I am at? 41:33 – Chuck: Anything else? 41:43 – Peter: Check out me through Twitter and the Dev blog. Message me anytime. 42:13 – Chuck: Picks! 42:18 – Advertisement. Links: Kendo UI Ruby on Rails Angular Get A Coder Job Redux Agile Real-time editable data grid in React Peter Mbanugo’s Twitter Peter Mbanguo’s LinkedIn Peter Mbanguo’s Dev.To Peter Mbanguo’s GitHub Peter Mbanguo’s WordPress Lucas Reis’ Email: lucasmreis@gmail.com Charles Max Wood’s Twitter Sponsors: Kendo UI Digital Ocean Get A Coder Job Picks: Charles Book: The ONE Thing Get A Coder Job – It will be out next week! T-Shirts & Mugs – Podcast Artwork - SWAG Kickstarter – Code Badge.Org Justin RC BLOG Podcast: Indie Hackers Indie Hackers Lucas Blog Post: Thirteen Ways of Looking at a Turtle Peter Library – Opensource Masters of Skill – Podcast Book: Ego is the Enemy Book

 RRU 030: "React State Museum" with Gant Laborde | File Type: audio/mpeg | Duration: 1:05:42

Panel: Charles Max Wood Lucas Reis Justin Bennett (guest host) Special Guests: Gant Laborde In this episode, the panel talks with Gant who has been programming for twenty years. In the past, he has been an adjunct professor and loves to teach. Finally, he talks at conferences and enjoys sharing his ideas. The panel talks about the React State Museum, among many other topics, such as: React Native, Flux, Redux, Agile, and XState. Show Topics: 1:24 – Chuck: What do you do? 2:02 – Chuck and Gant: We met at React Rally at 2016. 2:17 – Gant: I have my own sticker branding with a friend in Japan who is genius. She draws all these characters. They are my business card now. 2:41 – Chuck: React State Museum- talk about its brief history and what it is? 2:54 – Gant: React is this beautiful thing of passing these functional capsules around and managing them. Once you start creating another component, the question is how do you actually manage all of these components? We are all so happy to be on the cutting edge, but state management systems come up and die so fast. For like Facebook, there are 2 people who understand Flux. What happens is Redux is the one thing that shows up and... 6:34 – Chuck: I want to say...I think we need to change the topic. You said that JavaScript USED to be bad at classes, but it’s still bad at classes! 6:52 – Gant: Yep. 7:21 – Chuck: Typescript gets us close-ish. 7:31 – Chuck: Do you get feedback on the library? 8:12 – Gant: The requests that I’ve got - it’s from people who are better at (that0 than me. I wanted to test the lines of code. But that’s unfair because there are a lot of things to do. It really was a plan but what happens is – components that are used in this example is that in this node module... 9:41 – Panel: This is an interesting topic. When you assess any technology...if you are not a technology expert than you really can’t say. That’s interesting that you are doing this an open-source way. 10:25 – Gant: I am a huge fan of this vs. that. I am okay with say “this” one wins and “that” one looses. I don’t declare a winner cause it’s more like a Rosetta Stone. I had to find pitfalls and I respect that for the different perspectives. At the end of the day I do have opinions. But there is no winner. They are all the same and they are all extremely different. Are you trying to teach someone in one day? I learned Redux in 2 different days. 12:00 – Panel: Is there a library that helps with X, Y, Z, etc. 12:16 – Gant: I love for teaching and giving people a great start. I just set state and live life. I had to show what X is like. 13:59 – Chuck: Like this conversation about frameworks and which framework to use. Everyone was using Redux, because it was more or less what we wanted it to do. But at the time it cleaned up a bunch of code. Now we have all these other options. We are figuring out... How to write JavaScript if web assembly really took off? Do I write React with X or with Y. And how does this affect all of this? We had all of these conversations but we haven’t settled on the absolute best way to do this. 15:50 – Panel: This is great, and I think this is from the community as a whole. 17:20 – Chuck: I need to ask a question. Is this because the requirements on the frontend has changed? Or... I think we are talking about these state management systems, and this is what Lucas is talking about. 17:45 – Gant: I think it’s both. 18:43 – Panel: Websites have gotten bigger. We have always been pushing CSS. Panelist mentions Facebook Blue, among other things. What does your state look like? What does your validation look like? We are on so many different devices, and so on. 20:00 – Gant: I agree to echo everything that you all have said. I think the expectations are tighter now; that we have less drift. People are being more cognoscente and asking what is our brand. And it’s about brand consistency. And we are expecting more out of our technology, too. We keep pushing the envelope. What about these features? We want to be feature rich, and pushing these envelopes – how can we build more faster with less complexity while building it. You have to put that complexity somewhere. It’s interesting to watch. 22:00 – Chuck: How do we use this React State Museum...where are we going next? 22:19 – Gant: It’s a loaded question. Being able to ID new and interesting concepts. If you had a terrible version and Redux comes along, Redux is great for some companies but not all. You won’t see bugs that are crazy, there is a middle-wear, and maybe for your team going into Redux will make things more manageable. 25:25 – Advertisement – Digital Ocean 26:05 – Panel: Understanding your problem is the first thing to do. Talking about evolutionary architecture – to build your software to evolve. What does tha fit really well? So if you have to pick something new you are in a good position. What are my needs? Don’t look too much forward or 27:38 – Chuck: Advice on looking at your problem-sets? 27:52 – Panel: We have gone from planning too much to not planning at all. I don’t need to plan for too much or else it will “hurt” me. 28:42 – Chuck comments and mentions Agile. 29:29 – Panel and Guest chime in. 29:39 – Panel: I worked on a project (3 months) we needed to do a big change. I asked them why didn’t we take that into consideration. And their answer was... 30:30 – Gant: You might get away with... 30:55 – Chuck: What are some of the knobs on this? If I turn this know Redux is looking good, but if I do this... 31:12 – Gant: There are a lot of attractive knobs. Using app sync, not using app sync. 32:33 – Gant: Is your app really effective? That’s your first important question. How much state do I need on the frontend. And vice versa. 34:02 – Gant: How easy will this be to test? Can I teach someone how to do this? If I cannot teach it then it won’t do my team any good. 34:35 – Panel adds in comments. 35:08 – Gant: Looking at tests. 37:25 – Panel: If you have a great backend team then you can move the work across the team. You have a strong team to move that work along that line – normally you can’t cross that sort of thing. 38:03 – Chuck: There are so many options, too. I see Apollo getting reach here. I don’t see it as a statement tool instead I see it as... 38:31 – Panel: Apollo State – seems like they are pushing the envelope. It’s interesting to watch. 38:54 – Chuck. 39:12 – Gant: I am going to go ahead and use this tool – I am not going to worry about it. But now you are being held accountable. 39:29 – Panel: Question for folks: React not having a blessed ecosystem can hold people back in some ways? You have the freedom to use what you want. Here are the tools that you can use. Do you tink it be better if the Facebook team could do... 40:20 – Gant: I find that I don’t like (being told) this is what you will be using. I am a person with idea. We’d all be using Flux and all be very upset. 41:00 –Then there would be 3 people who don’t understand it. 41:17 – Gant: I loved Google Wave. Fool on my once and shame on me twice... Google Video! Google comes out and says here is BLESSED and you don’t have any choice. But it’s any author for themselves. It’s a little bit silly 0 I would like a beacon from Facebook saying: Here is a guide. It seems that they can’t focus. They are running a large company; I would like to keep it open – friendly energy. 42:24 – Chuck: I am mixed feelings about this. It only plays as far as people play into it. IN a React community there are so many voices. They all have opinions on what you should/shouldn’t use. The one thing that I like about a blessed / recommended stack – brand new person – it’s a good place to art. After that if they realize that Flux is hard then they can go and try other options. There are other things out there; there is a good balance there. 43:36 – Panel: That is the Angular way right? 43:38 – Chuck: Yes but Angular is more opinionated. It’s a different feel. 44:38 - Panel + Guest continue this conversation. 45:00 – The book DRIVE is mentioned. 45:21 – Gant: ... we need more recommendations. 45:43 – Chuck: Let’s talk about Repot and how to use this? If you go and get Repot – Google React State Museum it’s really easy. How should people come to this and pick it up? 46:18 – Gant: The table that comes in there – it links to the main Repot. A lot of people showed up and contributed. First of all show up. Gant mentions a sandbox link – and he talks about getting your hands dirty. React Native is mentioned, too. 48:10 – Gant: There are many opportunities for contributors. I could use my links. Typos, documentations, etc. - anything friendly is accepted here. 49:20 – Gant continues this conversation. 50:33 – Chuck: Anything else to dive into? 50:41 – Panel: I think there could be other things you can bubble up 51:26 – Gant: I would love some help with that. I did have some contributors write some tests. I wrote a test – 4 hours later – and it tells me if it passed or not. It has to go into a new directory, and work in Android, etc. It’s insane testing library. Then there are some checks to see if there is a link in the README. Animation if there is anyone who wants to do some cool stuff – like modules. Maybe it’s apple to oranges comparisons there. I would like to identify that for people. We would like some outside feedback out there. The more the merrier to help with the data is out there. Sanity check complete – yes! 53:24 – How to do that? 53:31 – File a ticket to help contribute. So you can say: I will do this. If you do it in a reasonable amount of time, then heck yes. If you do some open source...Do 10 (I think) and you get a free t-shirt? 54:28 – Advertisement. Links: Kendo UI Ruby on Rails Angular Get A Coder Job Redux Agile A Philosophy of Software Design – book XState Book: Spellmonger Did Someone Steal the Declaration of Independence Again? Book: The Culture Code Gant Laborde’s Twitter Lucas Reis’ Email: lucasmreis@gmail.com Charles Max Wood’s Twitter Sponsors: Kendo UI Digital Ocean Get A Coder Job Picks: Charles My journey – it’s been a rough year – with my dad passing. Willing to think it and process it, and it’s a healthy thing. Book: The Traveler’s Gift by Andy Andrews Book: The Shack by William Paul Young Gant Book: Harry Potter - Methods of Rationality Magicians XState is amazing! Culture Code - especially if you work remote. The pains that can happen by working remotely. Helps you identify those issues. Talk in Poland – Secret project. Lose the Declaration of Independence. “Where’s Waldo?” I am going to find Nicholas Cage in the audience and he will have the Declaration of Independence in backpack. Fake government website. Justin XState – Not Reactive specific Spellmonger: Book One of the... by Terry Mancour Book: Building Evolutionary Architectures Lucas Book: A Philosophy of Software Design by John Ousterhout

 RRU 029: Christopher Buecheler: "Getting Ready To Teach? Lessons learned from building an 84-tutorial software course" | File Type: audio/mpeg | Duration: 45:23

Panel: Charles Max Wood Lucas Reis (NY) Nader Dabit Special Guests: Christopher Buecheler In this episode, the panel talks with Christopher Buecheler 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 Adobe Premiere. 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 Adobe Premiere. 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: Egghead. 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: Redux. 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 – Digital Ocean Advertisement. 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 – Chuck’s Advertisement for His Course! 39:01 – Picks! Links: Kendo UI Ruby on Rails Angular Get A Coder Job Redux Adobe Premiere Close Brace Five Minute React Egghead State of JavaScript Statecharts James R. Nelson Christopher Buecheler’s Website Christopher Buecheler’s Books Christopher Buecheler’s Twitter Christopher Buecheler’s LinkedIn Sponsors: Kendo UI Digital Ocean Get A Coder Job Picks: Charles Pre-Sale: Get A Coder Job DevChat TV Website – Notion.So Lucas Statecharts Nader Book Title: Evicted: Poverty and Profit in the American City by Matthew Desmond Author is a sociologist. Going through their day-to-day lives of these low-income families. A lot of it has to do with a room over their head. How they struggle and how poverty goes from one generation to the next. Christopher Shout-Out to a friend – Christopher’s Site 5-Minute React Videos

 RRU 028: “Microstates.js – Composable State Primitive” with Taras Mankovski & Charles Lowell | File Type: audio/mpeg | Duration: 52:05

Panel: Charles (Chuck) Max Wood Lucas 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 UI OM Frontside Redux Microstates Microstates with React Taras Mankovski’s Twitter Taras Mankovski’s GitHub Taras Mankovski’s LinkedIn Taras Mankovski’s Frontside Bio Charles Lowell’s Twitter Charles Lowell’s GitHub Charles Lowell’s Frontside Bio Schedule Once Ruby on Rails Angular Get A Coder Job Sponsors: Kendo UI Digital 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 Jujitsu Nutrition Charles (guest) Fantasy Land JS - Tom Harding Funcadelic.JS Taras (guest) BigTest

Comments

Login or signup comment.