Stay current on the latest innovations and technologies in the React community by listening to our panel of React and Web Development Experts.
Similar Podcasts
Flutter 101 Podcast
Weekly podcast focusing on software development with Flutter and Dart. Hosted by Vince Varga.
Views on Vue
Vue is a growing front-end framework for web developments. Hear experts cover technologies and movements within the Vue community by talking to members of the open source and development community.
The QA Lead Podcast
Discover with us how to lead QA teams and do web and software QA better. We’re a QA community exploring the latest and best quality assurance approaches to help you with DevOps, Agile, Automation, Performance, API, Mobile, Analytics, RPA, AIOps, Shift-Left and right. Find the tips, tricks, how-to guides, and tools you need to build your QA team, and banish the bugs! Hosted by CTO of Digital Assured, President of Vivit-Worldwide, and Tedx Speaker Jonathon Wright.
RRU 034: “Progressive Web Apps” with Aaron Gustafson / Live at Microsoft Ignite
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 Special Guest: Aaron Gustafson.
RRU 033: "Finding Your Dream Job" with Panelists
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
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 Special Guest: Tomas Eglinskas.
RRU 031: "Real-time Editable Datagrid In React" with Peter Mbanugo
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 Special Guest: Peter Mbanugo.
RRU 030: "React State Museum" with Gant Laborde
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 Special Guest: Gant Laborde.
RRU 029: Christopher Buecheler: "Getting Ready To Teach? Lessons learned from building an 84-tutorial software course"
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 Special Guest: Christopher Buecheler.
RRU 028: “Microstates.js – Composable State Primitive” with Taras Mankovski & Charles Lowell
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 Special Guests: Charles Lowell and Taras Mankovski.
RRU 027: "Why I Prefer Functional Components" with Josh St. Jacque
Panel: Charles Max Wood Nader Dabit Special Guests: Josh Saint Jacque In this episode, the panel talks with Josh St. Jacque who is married with two kids and with one on the way. He is a professional product manager and software engineer. Ruby on Rails got him started on his career path and journey. Check-out today’s episode where the panel discusses functional and class components, among many other things! Show Topics: 2:12 – Let’s have a conversation about functional components. 3:20 – Chuck to Nader: “What is your preference between class and functional components?” 4:18 – Nader to Josh: “What is your take on pure components” 5:20 – Who makes these architectural decisions at T-Mobile? 5:46 – Josh: It really depends on the team and the project depending on how they want to proceed. Josh mentions Angular among other things. 7:38 – Chuck to Josh: It seems that through your post you are trying to make code easier? 8:01 – Josh’s background is Ruby, and basic principles. 9:12 – Question directed to Josh about components. 11:05 – Functional components. 11:35 – Some say that functional components are faster/slower than others. 12:50 – When do you know you need/do not need a functional component? 13:15 Josh uses functional component as his default but, of course, there are different factors for him to consider. The presentational stuff is separated. Sometimes he does convert it over. 14:21 – Let’s talk through the log post. 18:15 – Digital Ocean’s mid-roll advertisement! 20:58 – The panel talks about pros and cons of the different components. 21:33 – Ruby on Rails 22:06 – “Why aren’t you using...?” I understand what the tradeoffs are and will change when that time comes. 23:03 – Is there a certain thing that you would tell them about React applications? Is it more just best practice and it doesn’t really change their learning of the framework? 23:28 – Whenever you get comfortable then start exploring another pattern. When you get really comfortable, then you might never see the tradeoffs by using other options. It’s good for a developer to always be open-minded. Keep yourself uncomfortable, and don’t have just one tool in your belt. Try functional components just to keep it fresh. 25:00 – Josh answers a question from Chuck. 27:00 – Josh talks about things to avoid, etc. 27:42 – Nader: “Have you seen the new features and possibly the new features that will be added on later?” 28:01 – Josh has started using new features and he talks about the pros and cons of these. 29:55 – Chuck to Josh: “Are there any features to the components that you wish they would add?” 30:08 – Josh: I never really have run into anything, yet, that is too frustrating. I really like that it is a little limited, and no real big complaints. I would imagine that there are good components around function. 31:42 – Nader to Josh: “Any other topics?” 31:54 – One thing Josh would like to say is that you and your team are on the same page. You don’t want to get into fights on what style you are using. You don’t want to constantly be changing the code. Use one thing at a time or it will get real messy too quick. One example of this is from Ruby: hash rockets. 33:35 – How to find Josh online...look at links below! Links: Kendo UI Ruby on Rails Josh St. Jacque’s LinkedIn Josh St. Jacque’s Medium Josh St. Jacque’s GitHub Josh St. Jacque’s Article on Medium T-Mobile Angular Get A Coder Job Sponsors: Kendo UI Sentry Digital Ocean Get A Coder Job Picks: *Charles Conference in October (UT) Frameworks Summit Podcast Movement CES Home Depot Tool Rental *Nader “A Tale of Four Components” by Pearl Latteier Nader’s Blog *Josh Video Game Soundtracks – Spotify VS Code Extension Weight Loss – Ice Cream – Enlightened Special Guest: Josh St. Jacque.
RRU 026: Building React Applications in a Monorepo with Luis Vieira
Panel: Charles Max Wood Nader Dabit Lucas Reis Special Guests: Luis Vieira In this episode, the React Round Up panelists talk to Luis Vieira about his “Building large scale react applications in a monorepo”. Luis works in Portugal at a company called FarFetch as a front-end architect where he works mostly on JavaScript and infrastructure. They talk about the rationale behind his article, shared components, and what Lerna is and what is does. They also touch on Semantic Versioning, the difference between monolithic application and a monorepo, and more! In particular, we dive pretty deep on: Luis intro Front-end architect at FarFetch Works with JavaScript Rationale behind his article Dividing a project in multiple packages Sharing components between multiple applications Editing shared components Working in a monorepo Simplifies managing between different projects Requires more tooling What is Lerna? If you put multiple packages in one repo, how do you deal with things like the Git history getting mixed up? Versioning How does Semantic Versioning interplay with monorepos? What if you’re not using Semantic Versioning? Using the conventional commit How is the state of CI tooling regarded? He is currently more focused on React What he is experimenting with currently Building monolithic apps Monolithic aps VS monorepo Bazel Nrwl Nx And much, much more! Links: “Building large scale react applications in a monorepo” FarFetch JavaScript Lerna Semantic Versioning React Bazel Nrwl Nx Luis’s Medium @luisvieira_gmr Luis’s Newsletter Sponsors Kendo UI Digital Ocean Get a Coder Job Picks: Charles Take some time off Take a step back to reevaluate Nader Free workshop with Tyler McGinnis to come soon. Keep an eye out at Nader’s Twitter or Tyler’s Newsletter React Native EU Lucas Sketch.systems Luis Vue CLI Special Guest: Luis Vieira.
RRU 025: 2 Years of React Native at Artsy with Orta Therox
Panel: Nader Dabit Sia Karamalegos Lucas Reis Special Guests: Orta Therox In this episode, the React Round Up panelists talk to Orta Therox about his 2 years of experience with React Native at Artsy. Orta has about 15 years of native Mac and iOS development experience and about 2 ½ years ago, his team decided to start writing their iOS app in React Native. They talk about the different popular blog posts about React Native, why his team decided to switch over to React Native, and the effects of team size on the success of the fit of React Native in each company’s app. They also touch on professional growth, how they have trained their employees, and more! In particular, we dive pretty deep on: Orta intro React Native and JavaScript React Native at Artsy blog post React Native at Airbnb blog post Suspense Web engineering Taking different approaches Being a better way to build an iOS app Adoption coming from a native perspective Does the size of the team matter? Product verticals How do you balance the need for professional development VS what’s needed at the moment? Vertically oriented teams Professional growth after the change GraphQL API Training everyone over multiple years React Allowing anyone to contribute anywhere within their domain How they describe their native engineers More excited about React Native now than when it was released Artsy React Native Conference And much, much more! Links: Artsy React Native JavaScript React Native at Artsy React Native at Airbnb GraphQL React @orta orta.io Orta’s GitHub Artsy Engineering Sponsors Kendo UI Digital Ocean FreshBooks Picks: Nader AWS Amplify Artsy Engineering blog Nader’s GitHub Sia Styled components Web Summer Camp Lucas MDN web docs Orta vscode-inline-types Coalition for Queens (C4Q) Special Guest: Orta Therox.
RRU 024: Webamp with Jordan Eldredge
Panel: Sia Karamalegos Lucas Reis Special Guests: Jordan Eldredge In this episode, the React Round Up panelists talk to Jordan Eldredge about his project Webamp. Jordan’s first introduction to programming had to do with music which led him to work both as a singer to now being an engineer. They talk about how common it is for programmers to have diverse backgrounds, especially in front-end developers, what Webamp and Winamp are, and what he originally wrote Webamp in. they also touch on his inspiration for creating this project, his journey in creating Webamp, and more! In particular, we dive pretty deep on: Jordan intro Studied music (opera) in college Forced himself to learn PHP and MySQL Common in front-end developing to have people with diverse backgrounds Why do you think it’s so common to have diverse backgrounds? Front-end web development is very young Self-taught developers What is Webamp? Reimplementation of Winamp in JavaScript What is Winamp? What did you originally write Webamp in? What was the inspiration for creating Webamp? CSS Sprites Wanting to recreate Winamp skins jQuery originally Rewrote in “vanilla” JavaScript The process of learning real JavaScript Managing transitions VS managing state React with Redux Do you believe your struggle with “vanilla” JS made you more aware of what React really brings? You Might Not Need Redux by Dan Abramov How did you deal with the audio API? The thing he loves about side-projects Not having a deadline Using a Redux middleware And much, much more! Links: Webamp MySQL Winamp JavaScript jQuery React Redux You Might Not Need Redux by Dan Abramov Jordaneldredge.com @captbaritone Jordan’s GitHub Sponsors Kendo UI Digital Ocean FreshBooks Picks: Sia Google Docs Lucas Timing App Jordan @winampskins Inspiring Online WACUP Special Guest: Jordan Eldredge.
RRU 023: High-Performance GraphQL on Postgres with Hasura Tanmai Gopal
Panel: Nader Dabit Sia Karamalegos Special Guests: Tanmai Gopal In this episode, the React Round Up panelists talk to Tanmai Gopal. Tanmai is the founder at Hasura, where they have been building a GraphQL tooling that helps accelerate being able to use GraphQL for app developers. They talk about what Hasura is and what inspired him to build it, what Haskell does to Postgres, and query variables in GraphQL. They also touch on the importance of being aware of the database, how authorization works, and more! In particular, we dive pretty deep on: Tanmai intro Founder of Hasura Has been building applications for about a decade Focus on functional programming How did you get into React? Using Redux and GaphQL How long has Hasura been around? What inspired you to build Hasura? Eliminating the middle layer The elevator pitch of Hasura Do you offer a database as a service? Slightly different than writing your own resolvers What Haskell does to Postgres Query variables in GraphQL Prepared statements in Postgres Making queries from aps GraphQL ORM for apps Being aware of the database How does authorization work? PostGraphile, Prisma, and Hasura How do PostGraphile and Prisma compare to Hasura? And much, much more! Links: Hasura React Redux GaphQL Haskell Postgres PostGraphile Prisma @tanmaigo Tanmai’s Blog Tanmai’s GitHub @HasuraHQ Sponsors Kendo UI Digital Ocean FreshBooks Picks: Nader React Native EU talk Sia Gatsby.js Tanmai Building a new tool Special Guest: Tanmai Gopal.
RRU 022: RxJS and redux-observable with Tracy Lee, Jay Phelps, and Ben Lesh
Panel: Nader Dabit Sia Karamalegos Special Guests: Tracy Lee, Jay Phelps, and Ben Lesh In this episode, the React Round Up panelists talk to Tracy Lee, Jay Phelps, and Ben Lesh about RxJS and redux-observable. Tracy, Jay, and Ben are the RxJS ThisDot Media group and where they do support contracts for RxJS, staff augmentation, developer relations, and put on events. They talk about what observables are and what they are trying to solve, the most common use cases for getting started with observables, and what Promises and Async/Await are. They also touch on what they like most about RxJS, how versatile it is, and more! In particular, we dive pretty deep on: Tracy, Jay, and Ben intro ThisDot RxJS What is an observable? What problems are observables trying to solve? JavaScript Learn observables Making everything functional in the library Means of encapsulating values you want pushed at you later on Downside to observables Little bit of a learning curve Most common uses for getting started with observables Can Promises and Async/Await be mixed with observables? What do Promises and Async/Await allow you to do? Defer function Await values coming in from observables What do you like about RxJS? Allows you to work with all different languages RxJS is very versatile ngrx “Rx all the things” What inspired you to write Redux observable? Redux-observable RxJS docs Epics And much, much more! Links: ThisDot JavaScript RxJS ngrx Redux Redux-observable RxJS docs @ladyleet Tracy’s GitHub @BenLesh Ben’s Medium Ben’s GitHub @_jayphelps Jay’s GitHub RxJS GitHub @ThisDotLabs Sponsors Kendo UI Digital Ocean FreshBooks Picks: Nader JSCamp Sia Sprint by Jake Knapp Tracy Fashionnova.com Francesca’s Jay deno applitools Ben react-streams StackBlitz Special Guests: Ben Lesh, Jay Phelps, and Tracy Lee.
RRU 021: Building SharePoint Extensions with JavaScript with Vesa Juvonen LIVE at Microsoft Build
Panel: Charles Max Wood Special Guests: Vesa Juvonen In this episode, the React Round Up panel talks to Vesa Juvonen about building SharePoint extensions with JavaScript. Vesa is on the SharePoint development team and is responsible for the SharePoint Framework, which is the modern way of implementing SharePoint customizations with JavaScript. They talk about what SharePoint is, why they chose to use JavaScript with it, and how he maintains isolation. They also touch on the best way to get started with SharePoint, give some great resources to help you use it, and more! In particular, we dive pretty deep on: Vesa intro What is SharePoint? Has existed since 2009 People either know about it and use it or don’t know what it is Baggage from a customization perspective Why JavaScript developers? Modernizing development SharePoint Framework Microsoft Ignite Conference Is there a market for it? System integrators Angular Element and React React for SharePoint Framework back-end Supports Vue React Round Up Podcast How do you maintain isolation? What’s the best way to get started with SharePoint extensions? Office 365 Developer Program SharePoint documentation SharePoint YouTube What kinds of extensions are you seeing people build? And much, much more! Links: SharePoint JavaScript SharePoint Framework Microsoft Ignite Conference Angular Element React Vue React Round Up Podcast Office 365 Developer Program SharePoint documentation SharePoint YouTube @OfficeDev @vesajuvonen Vesa’s blog Vesa’s GitHub Sponsors Angular Boot Camp Digital Ocean FreshBooks Picks: Charles Zig Ziglar Conversations with My Dog by Zig Ziglar Pimsleur Lessons on Audible Vesa Armada by Ernest Cline Special Guest: Vesa Juvonen.
RRU 020: How to Get a Job (Especially for New Developers) with Charles Max Wood
Panel: Charles Max Wood Lucas Reis Sia Karamalegos In this episode, the React Round Up panelists talk about finding a job as a developer. Charles is getting ready to release a course on finding a job and he finds that he is always getting asked about how new developers can find a job. They talk about how they all found their first coder job, picking your target company, and understanding what you want in a job. They also touch on Charles’ upcoming course, the importance of showing initiative, and more! In particular, we dive pretty deep on: Sign up to chat with Charles at DevChat.tv/15Minutes Why they want to touch on this topic Get used to failure CodeSchool Hack Night meetup Going to meetups to slowly start networking Making friends with developers in your community Networking before you need a job Learning and helping mindset Don’t be afraid to ask if people are hiring How did you figure out what your target company was? Checking out the culture of a company Understanding the travel involved Figure out what you like in a job as you go Always be looking at your portfolio and resume Gain as much experience as you can everywhere you go Stick to learning one language/system Really master the languages/systems of the company you want to uses Show initiative Finding a champion at your target company And much, much more! Links: DevChat.tv/15Minutes CodeSchool Hack Night meetup Charles’ Course How to interview your interviewers blog post Ruby Rogues Episode 184 Sponsors Kendo UI Digital Ocean FreshBooks Picks: Charles Orphan Black His Course Lucas The Best Software Engineering Paper You Haven’t Read Sia Family