POPULARITY
Panel: Charles Max Wood Special Guests: Ed Thomson In this episode, the 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
Panel: Eric Berry Dave Kimura Nate Hopkins Charles Max Wood Special Guest: Vladimir Dem In this episode of Ruby Rogues, the panel talks with Vladimir Dem who is a Ruby developer and currently lives in Brooklyn, New York. Today, the panelists and guest talk about cables, concurrency, and Ruby. Check it out! Show Topics: 0:00 – Advertisement: Sentry.io 1:02 – Chuck: Hello! The panel today is Eric, Dave, Nate, and myself! Our guest is Vlad! 1:30 – Guest: My name is Vladimir, but people call me Vlad. I have been writing Ruby since 2013 for about 4.5 years. Before that I was a PHP, JavaScript developer among other languages. I am mostly Erlang and Ruby now. 2:29 – Panel asks Vlad a question. 3:29 – Guest: Yeah something like that. I call it a different server b/c we still use the code base but we do not do anything related to web sockets and connections. 4:20 – Panel: If you wanted to take a normal action cables setup what steps would you have to go through to convert that over to also use the anycable server? 5:21 – Guest answers the question. 7:31 – Chuck: This sounds complicated and a bit of work. When I look at this I think: I have a tiny app is it worth it? When does it become worth it? 7:52 – Guest: Definitely not for the tiny app. 8:50 – Panel: You use it when it makes sense. Overcomplicating your infrastructure doesn’t make sense. 9:27 – Guest: That’s the idea. 10:28 – Panel. 11:05 – Guest: The question really is how many connections you have and how long-lived they are? 13:09 – Panel: If I move my project over to anycable how much new code am I going to have to write? 13:28 – Guest answers the question. 15:52 – Panel: What’s the update been like for anycable and how many users use anycable? 16:05 – Guest: I really don’t have statistics. I hear people at conferences say that they use anycable, but no real statistics right now. I would like to know these numbers, but no idea. 16:30 – Panel: ...is that the time to consider using anycable? 17:05 – Guest: That’s a good point to make. 18:44 – Panel: How is the initial handshake time with anycable? Is there any difference with anycable in that sense? 19:05 – Guest answers the question. 22:49 – Chuck: Can you define a couple of terms for me? I am hearing terms like: concurrency and real time and others? 23:00 – Guest: Good point. What is real time? The guest continues to define these terms. 28:10 – Fresh Books! 29:10 – Chuck: Ruby 3 is supposed to solve some of these problems. Can you talk about some of those? 29:46 – Guest: Interesting question and I’ve been asked about this before. 35:14 – Panel: Did you say there was some activity around trying to reduce the memory consumption for thread? 35:25 – Guest answers the question. 36:14 – Panel: Vlad, you are spread from backend to fronted and you’ve mentioned Phoenix Live Vue. Can I pick your brain about it? 36:39 – Guest answers the question. 38:48 – Panel: It seems like one of the core tenants is empowering small teams to compete with larger teams. I have high hopes to keep small teams competitive. 39:50 – Guest: Yes, that’s the idea of Rails and Ruby itself to build something and try something and perhaps fail. 40:57 – Panelist mentions Erlang, anycable, and concurrency. 41:14 – Guest: We are working on administration functionality and we want to build something fast. 44:40 – Panel: That’s the interesting thing about turbo links cause I think it was a marketing fail. You have to invest time to learn how to use it and how to use it properly. 45:44 – Guest: I don’t have a good guide for turbo links. 46:00 – Chuck: Anything else we want to talk about? 46:10 – Guest: Two more things I want to mention. 54:02 – Advertisement: Get A Coder Job! 54:35 – Picks! End – Cache Fly! Links: Get a Coder Job Course The DevRev Podcast Show Angular DevChat TV Ruby Elixir Ruby on Rails Angular Cypress Vue React Faye-Websocket-Ruby Anycable EMx 020 Episode Entreprogrammers: Episode 248 Socketry The Rails Doctrine Walmart: Invisible Glass Bose Wireless Headphones Netflix: Newsies / Broadway musical KanbanFlow Advent of Code Heroku Deployment Guest’s Twitter Guest’s Dev.to Guest’s GitHub Sponsors: Sentry CacheFly Fresh Books Picks: Dave Invisible Glass Eric Bose Quiet Comfort Headphones Nate The Rails Doctrine Newsies Charles Kanban Flow EntreProgrammers The pomodoro technique masterhunt.com/devchat Vlad Advent of Code Any Cable
Panel: Eric Berry Dave Kimura Nate Hopkins Charles Max Wood Special Guest: Vladimir Dem In this episode of Ruby Rogues, the panel talks with Vladimir Dem who is a Ruby developer and currently lives in Brooklyn, New York. Today, the panelists and guest talk about cables, concurrency, and Ruby. Check it out! Show Topics: 0:00 – Advertisement: Sentry.io 1:02 – Chuck: Hello! The panel today is Eric, Dave, Nate, and myself! Our guest is Vlad! 1:30 – Guest: My name is Vladimir, but people call me Vlad. I have been writing Ruby since 2013 for about 4.5 years. Before that I was a PHP, JavaScript developer among other languages. I am mostly Erlang and Ruby now. 2:29 – Panel asks Vlad a question. 3:29 – Guest: Yeah something like that. I call it a different server b/c we still use the code base but we do not do anything related to web sockets and connections. 4:20 – Panel: If you wanted to take a normal action cables setup what steps would you have to go through to convert that over to also use the anycable server? 5:21 – Guest answers the question. 7:31 – Chuck: This sounds complicated and a bit of work. When I look at this I think: I have a tiny app is it worth it? When does it become worth it? 7:52 – Guest: Definitely not for the tiny app. 8:50 – Panel: You use it when it makes sense. Overcomplicating your infrastructure doesn’t make sense. 9:27 – Guest: That’s the idea. 10:28 – Panel. 11:05 – Guest: The question really is how many connections you have and how long-lived they are? 13:09 – Panel: If I move my project over to anycable how much new code am I going to have to write? 13:28 – Guest answers the question. 15:52 – Panel: What’s the update been like for anycable and how many users use anycable? 16:05 – Guest: I really don’t have statistics. I hear people at conferences say that they use anycable, but no real statistics right now. I would like to know these numbers, but no idea. 16:30 – Panel: ...is that the time to consider using anycable? 17:05 – Guest: That’s a good point to make. 18:44 – Panel: How is the initial handshake time with anycable? Is there any difference with anycable in that sense? 19:05 – Guest answers the question. 22:49 – Chuck: Can you define a couple of terms for me? I am hearing terms like: concurrency and real time and others? 23:00 – Guest: Good point. What is real time? The guest continues to define these terms. 28:10 – Fresh Books! 29:10 – Chuck: Ruby 3 is supposed to solve some of these problems. Can you talk about some of those? 29:46 – Guest: Interesting question and I’ve been asked about this before. 35:14 – Panel: Did you say there was some activity around trying to reduce the memory consumption for thread? 35:25 – Guest answers the question. 36:14 – Panel: Vlad, you are spread from backend to fronted and you’ve mentioned Phoenix Live Vue. Can I pick your brain about it? 36:39 – Guest answers the question. 38:48 – Panel: It seems like one of the core tenants is empowering small teams to compete with larger teams. I have high hopes to keep small teams competitive. 39:50 – Guest: Yes, that’s the idea of Rails and Ruby itself to build something and try something and perhaps fail. 40:57 – Panelist mentions Erlang, anycable, and concurrency. 41:14 – Guest: We are working on administration functionality and we want to build something fast. 44:40 – Panel: That’s the interesting thing about turbo links cause I think it was a marketing fail. You have to invest time to learn how to use it and how to use it properly. 45:44 – Guest: I don’t have a good guide for turbo links. 46:00 – Chuck: Anything else we want to talk about? 46:10 – Guest: Two more things I want to mention. 54:02 – Advertisement: Get A Coder Job! 54:35 – Picks! End – Cache Fly! Links: Get a Coder Job Course The DevRev Podcast Show Angular DevChat TV Ruby Elixir Ruby on Rails Angular Cypress Vue React Faye-Websocket-Ruby Anycable EMx 020 Episode Entreprogrammers: Episode 248 Socketry The Rails Doctrine Walmart: Invisible Glass Bose Wireless Headphones Netflix: Newsies / Broadway musical KanbanFlow Advent of Code Heroku Deployment Guest’s Twitter Guest’s Dev.to Guest’s GitHub Sponsors: Sentry CacheFly Fresh Books Picks: Dave Invisible Glass Eric Bose Quiet Comfort Headphones Nate The Rails Doctrine Newsies Charles Kanban Flow EntreProgrammers The pomodoro technique masterhunt.com/devchat Vlad Advent of Code Any Cable
Panel: Eric Berry Dave Kimura Nate Hopkins Charles Max Wood Special Guest: Vladimir Dem In this episode of Ruby Rogues, the panel talks with Vladimir Dem who is a Ruby developer and currently lives in Brooklyn, New York. Today, the panelists and guest talk about cables, concurrency, and Ruby. Check it out! Show Topics: 0:00 – Advertisement: Sentry.io 1:02 – Chuck: Hello! The panel today is Eric, Dave, Nate, and myself! Our guest is Vlad! 1:30 – Guest: My name is Vladimir, but people call me Vlad. I have been writing Ruby since 2013 for about 4.5 years. Before that I was a PHP, JavaScript developer among other languages. I am mostly Erlang and Ruby now. 2:29 – Panel asks Vlad a question. 3:29 – Guest: Yeah something like that. I call it a different server b/c we still use the code base but we do not do anything related to web sockets and connections. 4:20 – Panel: If you wanted to take a normal action cables setup what steps would you have to go through to convert that over to also use the anycable server? 5:21 – Guest answers the question. 7:31 – Chuck: This sounds complicated and a bit of work. When I look at this I think: I have a tiny app is it worth it? When does it become worth it? 7:52 – Guest: Definitely not for the tiny app. 8:50 – Panel: You use it when it makes sense. Overcomplicating your infrastructure doesn’t make sense. 9:27 – Guest: That’s the idea. 10:28 – Panel. 11:05 – Guest: The question really is how many connections you have and how long-lived they are? 13:09 – Panel: If I move my project over to anycable how much new code am I going to have to write? 13:28 – Guest answers the question. 15:52 – Panel: What’s the update been like for anycable and how many users use anycable? 16:05 – Guest: I really don’t have statistics. I hear people at conferences say that they use anycable, but no real statistics right now. I would like to know these numbers, but no idea. 16:30 – Panel: ...is that the time to consider using anycable? 17:05 – Guest: That’s a good point to make. 18:44 – Panel: How is the initial handshake time with anycable? Is there any difference with anycable in that sense? 19:05 – Guest answers the question. 22:49 – Chuck: Can you define a couple of terms for me? I am hearing terms like: concurrency and real time and others? 23:00 – Guest: Good point. What is real time? The guest continues to define these terms. 28:10 – Fresh Books! 29:10 – Chuck: Ruby 3 is supposed to solve some of these problems. Can you talk about some of those? 29:46 – Guest: Interesting question and I’ve been asked about this before. 35:14 – Panel: Did you say there was some activity around trying to reduce the memory consumption for thread? 35:25 – Guest answers the question. 36:14 – Panel: Vlad, you are spread from backend to fronted and you’ve mentioned Phoenix Live Vue. Can I pick your brain about it? 36:39 – Guest answers the question. 38:48 – Panel: It seems like one of the core tenants is empowering small teams to compete with larger teams. I have high hopes to keep small teams competitive. 39:50 – Guest: Yes, that’s the idea of Rails and Ruby itself to build something and try something and perhaps fail. 40:57 – Panelist mentions Erlang, anycable, and concurrency. 41:14 – Guest: We are working on administration functionality and we want to build something fast. 44:40 – Panel: That’s the interesting thing about turbo links cause I think it was a marketing fail. You have to invest time to learn how to use it and how to use it properly. 45:44 – Guest: I don’t have a good guide for turbo links. 46:00 – Chuck: Anything else we want to talk about? 46:10 – Guest: Two more things I want to mention. 54:02 – Advertisement: Get A Coder Job! 54:35 – Picks! End – Cache Fly! Links: Get a Coder Job Course The DevRev Podcast Show Angular DevChat TV Ruby Elixir Ruby on Rails Angular Cypress Vue React Faye-Websocket-Ruby Anycable EMx 020 Episode Entreprogrammers: Episode 248 Socketry The Rails Doctrine Walmart: Invisible Glass Bose Wireless Headphones Netflix: Newsies / Broadway musical KanbanFlow Advent of Code Heroku Deployment Guest’s Twitter Guest’s Dev.to Guest’s GitHub Sponsors: Sentry CacheFly Fresh Books Picks: Dave Invisible Glass Eric Bose Quiet Comfort Headphones Nate The Rails Doctrine Newsies Charles Kanban Flow EntreProgrammers The pomodoro technique masterhunt.com/devchat Vlad Advent of Code Any Cable
Panel: Charles Max Wood Special Guests: Ed Thomson In this episode, the 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
Panel: Eric Berry Dave Kimura David Richards Charles Max Wood In this episode of Ruby Rogues, the panelists talk amongst themselves on today’s topic, which is “speculation on frameworks.” They consider where the tech community currently is right now, and where it’s heading towards the future. They bring-up topics such as: Rails, Ruby, Angular, Agile, and much more. Check it out! Show Topics: 0:00 – Advertisement: Sentry.io 1:47 – Chuck: Check out the DevRev 2:08 – Panel: A topic about “speculation” would be great today. What are we seeing in the community: what we like/don’t like, and what would you want to change? He talks about action text, JavaScript framework, and more. 3:41 – Chuck: Service-side rendering is what we talked about in the past. Divya does this with service–side rendering. For content sites that approach makes a lot of sense. I have playing around with this for the past week or so. I was taking it to rendering it to text. 4:39 – Panel: Yeah, that’s the way to go. 5:29 – Chuck: You are talking about a fully side UI. 5:45 – Panel: I thought it was just my age so I am glad we are talking about this. The hip kids want to make these beautiful frontend sites. I want to keep it simple and then justify more later. I guess I would never be as hip but as long as my stuff gets out there – that’s all that matters to me. 6:28 – Panel: Yeah don’t get me wrong...nobody will want to develop your product if it was built 30 years ago. If it is a startup you want it to look good with a nice UI. Nobody will purchase if it looks outdated. How much maintenance do I want to invest into this? Why add another component into that if you cannot maintain it. 7:56 – Chuck: Yeah I have come into this issue while building the Podcast Service that I am creating. 8:25 – Panel: These are good frameworks and they feel great. I don’t realize the complexity that I am taking on sometimes. I have a lot of complexity on my hands: did I need it? 9:02 – Chuck: Sometimes my problem is that I am trying to pull it in after-the-fact. Like the forms to animate or this and that have to slide in. I want a natural feel to the UX. I looked at React and then I didn’t go that way. I have been podcasting about Angular for 4 years, but it was a no-go for my project. For my solution – it makes sense to just get it going and get it rolling. 10:45 – Panel: When we do use Action Vue we are prone to get lazy. What I mean by that is making database calls. 12:01 – Panel: You can think: Inside-Out! That creates an identity around the project. If I can think of that before going in, then everyone knows what we are doing and what their role is. It’s really obvious. Simple things grow into bigger things. I am a fan of service-side objects. It’s a daily work process. That feels good to me and it’s programmatic for me. 13:24 – Chuck: You aren’t saying: I don’t want or I don’t need ... what you are saying is: I will get this tool when I need it. 13:45 – Panel: You can say: “Hey this is what we are going to do and WHY we are going to do it.” It’s nice to come back to old projects and to see that it’s still solid. It’s nice to see that and people own that software and didn’t have to keep updating. 15:06 – Chuck: It reminds me of the Agile development stuff. The approach between Angular and React and Vue are fairly different. They are reasonably different. There will be tradeoffs between which one to use. When you are making that decision then you can make the appropriate decision on that. 16:10 – Panel: I remember in the prior years when the Rails community grew their own people and you were a RAILS person; now it’s you’re a WEB person. 17:43 – Panel: In a lot of cases it’s good to see what’s out there and to see what’s new; especially early on if they end up being ahead of their time. Then you are an early pioneer in that area. There’s nothing wrong with that, but when you are introducing new things into your core you are running into unforeseeable risks. I am not an early adapter of React, but I know enough of the pros and cons of the framework. 19:48 – Panel: I like that. Maybe I “should” adapt that framework and maybe I am not the right person to do so. 21:06 – Chuck: Dave brought us to a new topic and that’s: being an early adapter. Some people want a name, some people want to invent stuff and so many more reasons “why.” I don’t want to “poo poo” the idea but you need to know WHY. 21:48 – Panel: The cost of developers is A LOT. I just think if I was building a house and I had that expense then I better get a really nice house out of it. I want to do a good job and that’s important. On the business – side they have to rely on us and decisions that are in the best interest for everyone. 22:50 – Fresh Books! 23:53 – Chuck: So what do you guys think about: what’s coming? Do you feel like things are going to move away from frontend frameworks? Will there be a large adoption curve? 24:30 – Panel: If we are talking about the space of Ruby on Rails then you want it to be maintainable. You don’t want to steer too far away from its core. 28:11 – Panel: Good I like that. There are great tools that we are getting through Google, Facebook and they have great tools for these apps. They are looking for the 1-person startup very much like Basecamp. It’s all possible that we are holding onto these technologies that are great but does it fit ME. Do I want to maintain things? Do I want to make this more complicated? Especially if I really don’t fit into what I’m trying to do. 29:13 – Panel: Yeah some people in the DOT NET world they were really struggling with some modern approaches. 30:42 – Panel: One of our listeners texted me b/c we are recording LIVE. Panelist reads off from a listener’s text message that uses a quote. 31:16 – Panel: When I started Ruby it was a PHP project and I couldn’t get there. I didn’t have enough bandwidth. It was easy for me to build the RAILS way. 32:02 – Chuck: I was introduced to PHP in college, early 2000’s. I really enjoyed it and I was fairly productive and then I found Rails. 32:27 – Panelist talks about PHP, flash frontend, and more. 34:42 – Chuck: Could and will something come along that will affect the way we write code? 34:56 – Panel: Yes, b/c I think technology is sustainable for a certain amount of time before things start to change again. Look at the iPhones and the Android phones. 38:26 – Panel: I think it takes time to do something well. Panelist talks about Rails, Ruby, data, and more! 40:25 – Panel: It’s interesting b/c the tradeoff used to be much bigger. The bandwidth is better, the screens are better, the way we do things are better. There is much of a tradeoff. That’s how people are interacting with our business and our products. I tend to write these flowery articles that I don’t publish. There was something in the air and in the mid-2000’s we were launching Netflix, and all of these things were happening at that time. A lot is happening now but it’s different now. Where are we going? Where would I be happy to work? If we can get on the phone and inside of our data and it just adds more value. It’s not an easy answer to “Where are we going?” but it’s good to talk about it b/c people might be afraid to ask and to answer. 43:13 – Chuck: Anything else or picks? 43:19 – Panel: We are saying today: we aren’t trying to break-out of this bubble, but we are saying: let’s get closer to the user and there is so much opportunity in THIS space!! 44:10 – Panel: The technology is tapped-out right now. 44:50 – Advertisement: Get A Coder Job! End – Cache Fly! Links: Get a Coder Job Course The DevRev Podcast Show Angular DevChat TV Ruby Elixir Ruby on Rails Angular Cypress Vue React Jest.io Mocha.js Book: Desert Cabal Habits for Hackers Home Depot: DeWalt Harbor Freight 11ty Masterminds Webinar Sponsors: Sentry CacheFly Fresh Books Picks: Dave Dewalt Drill Dust Collector David Habits for Hackers Desert Cabal (for funnies) Charles Mastermind Hunter 11ty.io
Panel: Eric Berry Dave Kimura David Richards Charles Max Wood In this episode of Ruby Rogues, the panelists talk amongst themselves on today’s topic, which is “speculation on frameworks.” They consider where the tech community currently is right now, and where it’s heading towards the future. They bring-up topics such as: Rails, Ruby, Angular, Agile, and much more. Check it out! Show Topics: 0:00 – Advertisement: Sentry.io 1:47 – Chuck: Check out the DevRev 2:08 – Panel: A topic about “speculation” would be great today. What are we seeing in the community: what we like/don’t like, and what would you want to change? He talks about action text, JavaScript framework, and more. 3:41 – Chuck: Service-side rendering is what we talked about in the past. Divya does this with service–side rendering. For content sites that approach makes a lot of sense. I have playing around with this for the past week or so. I was taking it to rendering it to text. 4:39 – Panel: Yeah, that’s the way to go. 5:29 – Chuck: You are talking about a fully side UI. 5:45 – Panel: I thought it was just my age so I am glad we are talking about this. The hip kids want to make these beautiful frontend sites. I want to keep it simple and then justify more later. I guess I would never be as hip but as long as my stuff gets out there – that’s all that matters to me. 6:28 – Panel: Yeah don’t get me wrong...nobody will want to develop your product if it was built 30 years ago. If it is a startup you want it to look good with a nice UI. Nobody will purchase if it looks outdated. How much maintenance do I want to invest into this? Why add another component into that if you cannot maintain it. 7:56 – Chuck: Yeah I have come into this issue while building the Podcast Service that I am creating. 8:25 – Panel: These are good frameworks and they feel great. I don’t realize the complexity that I am taking on sometimes. I have a lot of complexity on my hands: did I need it? 9:02 – Chuck: Sometimes my problem is that I am trying to pull it in after-the-fact. Like the forms to animate or this and that have to slide in. I want a natural feel to the UX. I looked at React and then I didn’t go that way. I have been podcasting about Angular for 4 years, but it was a no-go for my project. For my solution – it makes sense to just get it going and get it rolling. 10:45 – Panel: When we do use Action Vue we are prone to get lazy. What I mean by that is making database calls. 12:01 – Panel: You can think: Inside-Out! That creates an identity around the project. If I can think of that before going in, then everyone knows what we are doing and what their role is. It’s really obvious. Simple things grow into bigger things. I am a fan of service-side objects. It’s a daily work process. That feels good to me and it’s programmatic for me. 13:24 – Chuck: You aren’t saying: I don’t want or I don’t need ... what you are saying is: I will get this tool when I need it. 13:45 – Panel: You can say: “Hey this is what we are going to do and WHY we are going to do it.” It’s nice to come back to old projects and to see that it’s still solid. It’s nice to see that and people own that software and didn’t have to keep updating. 15:06 – Chuck: It reminds me of the Agile development stuff. The approach between Angular and React and Vue are fairly different. They are reasonably different. There will be tradeoffs between which one to use. When you are making that decision then you can make the appropriate decision on that. 16:10 – Panel: I remember in the prior years when the Rails community grew their own people and you were a RAILS person; now it’s you’re a WEB person. 17:43 – Panel: In a lot of cases it’s good to see what’s out there and to see what’s new; especially early on if they end up being ahead of their time. Then you are an early pioneer in that area. There’s nothing wrong with that, but when you are introducing new things into your core you are running into unforeseeable risks. I am not an early adapter of React, but I know enough of the pros and cons of the framework. 19:48 – Panel: I like that. Maybe I “should” adapt that framework and maybe I am not the right person to do so. 21:06 – Chuck: Dave brought us to a new topic and that’s: being an early adapter. Some people want a name, some people want to invent stuff and so many more reasons “why.” I don’t want to “poo poo” the idea but you need to know WHY. 21:48 – Panel: The cost of developers is A LOT. I just think if I was building a house and I had that expense then I better get a really nice house out of it. I want to do a good job and that’s important. On the business – side they have to rely on us and decisions that are in the best interest for everyone. 22:50 – Fresh Books! 23:53 – Chuck: So what do you guys think about: what’s coming? Do you feel like things are going to move away from frontend frameworks? Will there be a large adoption curve? 24:30 – Panel: If we are talking about the space of Ruby on Rails then you want it to be maintainable. You don’t want to steer too far away from its core. 28:11 – Panel: Good I like that. There are great tools that we are getting through Google, Facebook and they have great tools for these apps. They are looking for the 1-person startup very much like Basecamp. It’s all possible that we are holding onto these technologies that are great but does it fit ME. Do I want to maintain things? Do I want to make this more complicated? Especially if I really don’t fit into what I’m trying to do. 29:13 – Panel: Yeah some people in the DOT NET world they were really struggling with some modern approaches. 30:42 – Panel: One of our listeners texted me b/c we are recording LIVE. Panelist reads off from a listener’s text message that uses a quote. 31:16 – Panel: When I started Ruby it was a PHP project and I couldn’t get there. I didn’t have enough bandwidth. It was easy for me to build the RAILS way. 32:02 – Chuck: I was introduced to PHP in college, early 2000’s. I really enjoyed it and I was fairly productive and then I found Rails. 32:27 – Panelist talks about PHP, flash frontend, and more. 34:42 – Chuck: Could and will something come along that will affect the way we write code? 34:56 – Panel: Yes, b/c I think technology is sustainable for a certain amount of time before things start to change again. Look at the iPhones and the Android phones. 38:26 – Panel: I think it takes time to do something well. Panelist talks about Rails, Ruby, data, and more! 40:25 – Panel: It’s interesting b/c the tradeoff used to be much bigger. The bandwidth is better, the screens are better, the way we do things are better. There is much of a tradeoff. That’s how people are interacting with our business and our products. I tend to write these flowery articles that I don’t publish. There was something in the air and in the mid-2000’s we were launching Netflix, and all of these things were happening at that time. A lot is happening now but it’s different now. Where are we going? Where would I be happy to work? If we can get on the phone and inside of our data and it just adds more value. It’s not an easy answer to “Where are we going?” but it’s good to talk about it b/c people might be afraid to ask and to answer. 43:13 – Chuck: Anything else or picks? 43:19 – Panel: We are saying today: we aren’t trying to break-out of this bubble, but we are saying: let’s get closer to the user and there is so much opportunity in THIS space!! 44:10 – Panel: The technology is tapped-out right now. 44:50 – Advertisement: Get A Coder Job! End – Cache Fly! Links: Get a Coder Job Course The DevRev Podcast Show Angular DevChat TV Ruby Elixir Ruby on Rails Angular Cypress Vue React Jest.io Mocha.js Book: Desert Cabal Habits for Hackers Home Depot: DeWalt Harbor Freight 11ty Masterminds Webinar Sponsors: Sentry CacheFly Fresh Books Picks: Dave Dewalt Drill Dust Collector David Habits for Hackers Desert Cabal (for funnies) Charles Mastermind Hunter 11ty.io
Panel: Eric Berry Dave Kimura David Richards Charles Max Wood In this episode of Ruby Rogues, the panelists talk amongst themselves on today’s topic, which is “speculation on frameworks.” They consider where the tech community currently is right now, and where it’s heading towards the future. They bring-up topics such as: Rails, Ruby, Angular, Agile, and much more. Check it out! Show Topics: 0:00 – Advertisement: Sentry.io 1:47 – Chuck: Check out the DevRev 2:08 – Panel: A topic about “speculation” would be great today. What are we seeing in the community: what we like/don’t like, and what would you want to change? He talks about action text, JavaScript framework, and more. 3:41 – Chuck: Service-side rendering is what we talked about in the past. Divya does this with service–side rendering. For content sites that approach makes a lot of sense. I have playing around with this for the past week or so. I was taking it to rendering it to text. 4:39 – Panel: Yeah, that’s the way to go. 5:29 – Chuck: You are talking about a fully side UI. 5:45 – Panel: I thought it was just my age so I am glad we are talking about this. The hip kids want to make these beautiful frontend sites. I want to keep it simple and then justify more later. I guess I would never be as hip but as long as my stuff gets out there – that’s all that matters to me. 6:28 – Panel: Yeah don’t get me wrong...nobody will want to develop your product if it was built 30 years ago. If it is a startup you want it to look good with a nice UI. Nobody will purchase if it looks outdated. How much maintenance do I want to invest into this? Why add another component into that if you cannot maintain it. 7:56 – Chuck: Yeah I have come into this issue while building the Podcast Service that I am creating. 8:25 – Panel: These are good frameworks and they feel great. I don’t realize the complexity that I am taking on sometimes. I have a lot of complexity on my hands: did I need it? 9:02 – Chuck: Sometimes my problem is that I am trying to pull it in after-the-fact. Like the forms to animate or this and that have to slide in. I want a natural feel to the UX. I looked at React and then I didn’t go that way. I have been podcasting about Angular for 4 years, but it was a no-go for my project. For my solution – it makes sense to just get it going and get it rolling. 10:45 – Panel: When we do use Action Vue we are prone to get lazy. What I mean by that is making database calls. 12:01 – Panel: You can think: Inside-Out! That creates an identity around the project. If I can think of that before going in, then everyone knows what we are doing and what their role is. It’s really obvious. Simple things grow into bigger things. I am a fan of service-side objects. It’s a daily work process. That feels good to me and it’s programmatic for me. 13:24 – Chuck: You aren’t saying: I don’t want or I don’t need ... what you are saying is: I will get this tool when I need it. 13:45 – Panel: You can say: “Hey this is what we are going to do and WHY we are going to do it.” It’s nice to come back to old projects and to see that it’s still solid. It’s nice to see that and people own that software and didn’t have to keep updating. 15:06 – Chuck: It reminds me of the Agile development stuff. The approach between Angular and React and Vue are fairly different. They are reasonably different. There will be tradeoffs between which one to use. When you are making that decision then you can make the appropriate decision on that. 16:10 – Panel: I remember in the prior years when the Rails community grew their own people and you were a RAILS person; now it’s you’re a WEB person. 17:43 – Panel: In a lot of cases it’s good to see what’s out there and to see what’s new; especially early on if they end up being ahead of their time. Then you are an early pioneer in that area. There’s nothing wrong with that, but when you are introducing new things into your core you are running into unforeseeable risks. I am not an early adapter of React, but I know enough of the pros and cons of the framework. 19:48 – Panel: I like that. Maybe I “should” adapt that framework and maybe I am not the right person to do so. 21:06 – Chuck: Dave brought us to a new topic and that’s: being an early adapter. Some people want a name, some people want to invent stuff and so many more reasons “why.” I don’t want to “poo poo” the idea but you need to know WHY. 21:48 – Panel: The cost of developers is A LOT. I just think if I was building a house and I had that expense then I better get a really nice house out of it. I want to do a good job and that’s important. On the business – side they have to rely on us and decisions that are in the best interest for everyone. 22:50 – Fresh Books! 23:53 – Chuck: So what do you guys think about: what’s coming? Do you feel like things are going to move away from frontend frameworks? Will there be a large adoption curve? 24:30 – Panel: If we are talking about the space of Ruby on Rails then you want it to be maintainable. You don’t want to steer too far away from its core. 28:11 – Panel: Good I like that. There are great tools that we are getting through Google, Facebook and they have great tools for these apps. They are looking for the 1-person startup very much like Basecamp. It’s all possible that we are holding onto these technologies that are great but does it fit ME. Do I want to maintain things? Do I want to make this more complicated? Especially if I really don’t fit into what I’m trying to do. 29:13 – Panel: Yeah some people in the DOT NET world they were really struggling with some modern approaches. 30:42 – Panel: One of our listeners texted me b/c we are recording LIVE. Panelist reads off from a listener’s text message that uses a quote. 31:16 – Panel: When I started Ruby it was a PHP project and I couldn’t get there. I didn’t have enough bandwidth. It was easy for me to build the RAILS way. 32:02 – Chuck: I was introduced to PHP in college, early 2000’s. I really enjoyed it and I was fairly productive and then I found Rails. 32:27 – Panelist talks about PHP, flash frontend, and more. 34:42 – Chuck: Could and will something come along that will affect the way we write code? 34:56 – Panel: Yes, b/c I think technology is sustainable for a certain amount of time before things start to change again. Look at the iPhones and the Android phones. 38:26 – Panel: I think it takes time to do something well. Panelist talks about Rails, Ruby, data, and more! 40:25 – Panel: It’s interesting b/c the tradeoff used to be much bigger. The bandwidth is better, the screens are better, the way we do things are better. There is much of a tradeoff. That’s how people are interacting with our business and our products. I tend to write these flowery articles that I don’t publish. There was something in the air and in the mid-2000’s we were launching Netflix, and all of these things were happening at that time. A lot is happening now but it’s different now. Where are we going? Where would I be happy to work? If we can get on the phone and inside of our data and it just adds more value. It’s not an easy answer to “Where are we going?” but it’s good to talk about it b/c people might be afraid to ask and to answer. 43:13 – Chuck: Anything else or picks? 43:19 – Panel: We are saying today: we aren’t trying to break-out of this bubble, but we are saying: let’s get closer to the user and there is so much opportunity in THIS space!! 44:10 – Panel: The technology is tapped-out right now. 44:50 – Advertisement: Get A Coder Job! End – Cache Fly! Links: Get a Coder Job Course The DevRev Podcast Show Angular DevChat TV Ruby Elixir Ruby on Rails Angular Cypress Vue React Jest.io Mocha.js Book: Desert Cabal Habits for Hackers Home Depot: DeWalt Harbor Freight 11ty Masterminds Webinar Sponsors: Sentry CacheFly Fresh Books Picks: Dave Dewalt Drill Dust Collector David Habits for Hackers Desert Cabal (for funnies) Charles Mastermind Hunter 11ty.io
Panel: Charles Max Wood Aaron Frost Shai Reznik Divya Sasidharan Joe Eames Lucas Reis Special Guest: Sean Merron In this episode, The panelist of View on Vue, Adventure In Angular, React Round-Up, Ruby Rogues, and JavaScript Jabber speaks 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 an example 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 tells 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 up the quality of engaging in a way that heightens the program. Sean shares more about 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 creates achievable goals. Sean talks about figuring out the organization and finding out 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 asks about how to rotate the hot seat. Sean gives a webinar link for mastermindhunt.com/devchat on January 3rd, 2 pm 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
Panel: Eric Berry Charles Max Wood Nate Hopkins Special Guest: Paul Smith and Andrew Mason In this episode of Ruby Rogues, the panelists talk with Paul Smith and Andrew Mason! They discuss the platforms Lucky and Crystal. Other topics include: Ruby, Phoenix, Laravel Mix, Thoughtbot, Webpack, compilers, and much more! Check it out! Show Topics: 0:00 – Advertisement: Sentry.io 1:02 – Chuck: Welcome!! Eric Berry, Nate Hopkins, and myself are the panel - and our special guests are Paul Smith and Andrew Mason. Introduce yourself! 1:41 – Andrew / Guest: I have messed with every type of language, so there’s that! 1:55 – Paul / Guest: I have been here at my current company for 5 years and it’s a consultancy firm. I have been working on Crystal. 2:14 – Chuck: We are lucky to have you! Give people the elevator pitch for Lucky and Crystal? 2:33 – Guest: Let’s talk about Crystal and looks very similar to Ruby! It’s faster and it’s a compound language. It catches a fair amount of things at compile time. The other special features are... 4:17 – Guest mentions compilers. 4:23 – Chuck: Yeah we see this in the typescript. Is it language service – is that what it’s called? Pile and compile and all of this checking are a nice stage for it to run-through. Although the flipside is coding and to not worry about that – that’s nice! 4:56 – Guest: It has changed my approach for sure. 5:43 – Panel: How much slower are you? 5:54 – Guest: I am a lot faster in Crystal than I am in Ruby. 6:51 – Panel: Yeah you have to figure out where you want to save the time. 7:00 – Guest: Someone wrote a blog post and it said...the Rails service is like bolting a shelf on a wall and hoping to hit a stud and it’s not solid. But using Lucky it’s sold although it took a little longer. I think it can be true. You can do bad things with compilers, though. It depends on how you use it. 7:43 – Panelist asks a question. 7:53 – Guest: Every Friday is an investment day. Lucky is my “whatever I want thing.” I am technically getting paid to work on it. 8:33 – Panel: have you had to battle with the framework? 8:51 – Guest: Yes, even though Crystal looks like Ruby (at a high level) if you want to do it well you have to approach it in the Crystal-way. When I came to Crystal I came to it like Rails. The problem with that is I wanted to have type-saved parameters – you can’t do that in Crystal b/c...it doesn’t know when to have a parameter with... 10:48 – Panel: I have heard you talk about Crystal before on another podcast. You talked about templating and I am curious to hear about that. I have used Slim and others and now stick to ERB. 11:25 – Guest: Yes definitely. Let’s back up and talk about WHAT Lucky does! The guest talks about Rails, escaping, and more! 14:37 – Panel: So I imagine Rails partials are slow and expensive to render. I would imagine that this approach with Lucky... 15:00 – Guest: Yes exactly. It’s extremely fast! 15:20 – Panel: How is this for designers? 15:30 – Guest: Yes that was a concern of mine. With Lucky I tried to make it close to a regular HTML structure would look like! 16:32 – Panel: I spun up a Lucky app the other day. It looks like you are using... 16:50 – Guest: I have played around with a bunch of stuff. I landed on Laravel Mix. 18:27 – Panel: Yes webpack is a pain to set up and it’s hard to get it to working the way you want it to work. 18:47 – Guest: Yeah if you want React or whatever it will generate the configuration you need. I don’t like it b/c if you want to... 19:28 – Panel. 19:45 – Guest: I don’t want to maintain it. 19:54 – Panel: There is a Crystal community in Utah. I want to know – are you competing with Amber? Explain the difference between Lucky and Amber? 20:20 – Guest: Yes I did look at Amber but they are approaching it differently than us. The guest talks about the differences between Amber and Lucky. 21:54 – Guest (continues): With Lucky you will have to learn a little bit more but you get more of a pack! 23:23 – Panel: It sounds like Lucky is inspired by Elm – right? 23:32 – Guest: Yeah, I think so. The guest dives into this topic of Elm and Lucky! 24:35 – Panel: How much does the types feel like it’s getting in your way? How explicit is it? When I came to Ruby it was a breath of fresh air. I am a bit reluctant to go back to those days. 25:25 – Guest: I think Lucky does a happy medium. It doesn’t infer instant variables. I like the... 26:28 – Panel: I learned Java very early on in my computer science career. 27:00 – Guest. 27:10 – Panel: “Crystal...it’s not Java!” That should be your slogan! 27:20 – Fresh Books! 28:25 – Panel: A lot of people are moving to Elixir community. Do you see people moving from Ruby to Lucky and Crystal? How does Lucky compare to Phoenix? 28:55 – Guest: Good question! 29:10 – The guest talks about bamboo – see links below!! 29: 29 – Guest: Sure Ruby is fast but sometimes you spend more time on it then you would want to. 31:08 – Guest: Blessing and curse that Crystal looks so much like Ruby. That’s what I thought at first: why would I want to learn this if it’s so similar to Ruby. BUT there are so many benefits to Crystal vs. Ruby. 31:48 – Guest talks about Lucky catching the bugs. 32:00 – Panel: I wonder if that happened with Groovy and Rails? 32:21 – They go back-and-forth. 32:28 – Panel: Thoughtbot has always been on the forefront of Ruby. Can you talk about Thoughbot please? (See links below for Thoughtbot!) 33:15 – Guest: Great question. It’s hard to tell b/c there are different offices. I would say Ruby is our main thing. Ruby is the most mature thing that we use in-terms of web development. Guest: Actually – Rails is pretty nice! 34:54 – Panel: We went through the same thing with CodeFund! I wrote it initially in Python and then I wrote it in Elixir and it became so complex. Now we are moving everything back to Ruby and it’s been a fantastic decision. 36:30 – Chuck: You are talking about the sustainability of open source but there are benefits throughout the company right? There are tons of tangible benefits of doing it, especially when it’s your Friday schedule. You can level-up on things that could help you. I know a lot of companies cannot afford it if they are trying to hustle. 37:42 – Guest: It’s totally not charity through Thoughtbot. It’s a huge help for hiring new people. I know they are okay with letting me work on Lucky b/c it’s bringing on new developers and a good marketing tool, and finally recruiting! 39:07 – Chuck: Yeah, I have been talking about developer freedom and that’s what I am addressing through the DevRev show! It’s my new podcast show. We talk with Chris on Elixir Mix. It lends that credibility if they need to save our bacon. 40:02 – Panel: What’s your goal with Lucky? 40:11 – Guest: I would love to get it to the point where Thoughtbot could start a project and default to Lucky! Start a project and not resting every gem and be confident with launching it. 41:36 – Panelist asks a question. 41:45 – Guest: It’s not 1.0 and that means that the API will break with every release. I think that’s good to tweak stuff but that turns companies off, though. 42:40 – Chuck: Another thing that helps with adoption is Twitter used Rails to build their initial version. This blah, blah company uses important stuff and they are using Crystal and whatnot then that’s good! It sounds like you are waiting for social proof. 43:23 – Guest: Is the next Twitter going to even know about Crystal? 43:40 – Chuck: It literally only takes one enthusiast! 43:52 – Guest. 44:11 – Demo of Flickr Search is mentioned here! 45:13 – Panel: Is there something out there that you could POINT someone to? 45:27 – Guest: Not, yet. I built a small site with it! It is opensource and you can look at it. I want to show people a good example of what Lucky can do! 45:57 – Panel: You have very good docs and I am a visual learner. When I learned Rails I learned on my own and not through school. 46:20 – Panelist asks a question. 46:48 – Guest: What a huge advantage Lucky has through the Thoughtbot platform! Now that platform is kind of dried up. In terms of getting people excited it needs that killer app and they can see that it’s fast and killer! I think it takes a lot of time and finding time to do it so that’s tricky. It’s changing a lot when there is so much change. Getting Lucky to a 1.0 state so people can do videos and make apps. The hard part thing is that Lucky has to be 1.0 when Crystal is 1.0. The Lucky community is great b/c it’s encouraging and to respond in a very kind way. When you are starting something that’s new can be scary. We try to help out as much as we can and we are open and kind about it. 49:13 – Panel: “Paul is nice so Lucky is nice!” 49:19 – Guest: Everyone is super kind. It had to be short and simple. We in the dev community are very lucky – usually great pay/benefits and more w/o a college degree. What another field can you do that?! 51:00 – Panel: Great message and you need to push that! 51:10 – Panel: You were on a past podcast and you talked about how you are donating each month! Panel: Opensource maintainers are getting burned out and you want to support that. 51:40 – Guest: I think opensource sustainability what others need to do to make it sustainable. If you have the means to give we can be apart of that, too. It would be nice if companies did that. If it helps Crystal I am happy. 52:17 – Panel: I have a question about Crystal. 52:52 – Guest: Ruby right now you can do C sections right now. 53:01 – Panel. 53:10 – Guest: I don’t think so – it may but I would guess that you could do it but I don’t know how easy it would be. Note: Rust and C are mentioned. 53:37 – Panel comments. 53:46 – Guest: One thing I would say is to check-out the Lucky docs. We are happy to help! 54:10 – Panel: This is a favorite episode of mine! Both of today’s guests have been my favorite! 54:23 – Advertisement: Get A Coder Job! End – Cache Fly! Links: Get a Coder Job Course The DevRev Podcast Show DevChat TV Ruby Elixir Ruby on Rails Angular Cypress Vue React Jest.io Mocha.js Webpacker-Cli Amber Lucky The Lucky Philosophy The Bike Shed Thoughtbot CodeFund Lucky: Ruby on Rails to Lucky on Crystal... “Crystal is not Ruby Part 1” GitHub: Bamboo Ex_Machina Dialyxir Crystal Mastery Samsung T5 Carbon Copy Cloner iMazing Awesome-Lucky Paul Smith GitHub Sponsors: Sentry CacheFly Fresh Books Picks: Nate Samsung SSD Carbon Copy Cloner Application Eric iMazing HEIC Converter Charles Mastodon Andrew Upcase by Thoughtbot Awesome Lucky Paul Tailwind CSS Phoenix Live HTML Chris McCord Elixir Mix Episodes with Chris McCord
Panel: Charles Max Wood Aaron Frost Shai Reznik Divya Sasidharan Joe Eames Lucas Reis Special Guest: Sean Merron In this episode, The panelist of View on Vue, Adventure In Angular, React Round-Up, Ruby Rogues, and JavaScript Jabber speaks 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 an example 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 tells 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 up the quality of engaging in a way that heightens the program. Sean shares more about 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 creates achievable goals. Sean talks about figuring out the organization and finding out 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 asks about how to rotate the hot seat. Sean gives a webinar link for mastermindhunt.com/devchat on January 3rd, 2 pm 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
Panel: Eric Berry Charles Max Wood Nate Hopkins Special Guest: Paul Smith and Andrew Mason In this episode of Ruby Rogues, the panelists talk with Paul Smith and Andrew Mason! They discuss the platforms Lucky and Crystal. Other topics include: Ruby, Phoenix, Laravel Mix, Thoughtbot, Webpack, compilers, and much more! Check it out! Show Topics: 0:00 – Advertisement: Sentry.io 1:02 – Chuck: Welcome!! Eric Berry, Nate Hopkins, and myself are the panel - and our special guests are Paul Smith and Andrew Mason. Introduce yourself! 1:41 – Andrew / Guest: I have messed with every type of language, so there’s that! 1:55 – Paul / Guest: I have been here at my current company for 5 years and it’s a consultancy firm. I have been working on Crystal. 2:14 – Chuck: We are lucky to have you! Give people the elevator pitch for Lucky and Crystal? 2:33 – Guest: Let’s talk about Crystal and looks very similar to Ruby! It’s faster and it’s a compound language. It catches a fair amount of things at compile time. The other special features are... 4:17 – Guest mentions compilers. 4:23 – Chuck: Yeah we see this in the typescript. Is it language service – is that what it’s called? Pile and compile and all of this checking are a nice stage for it to run-through. Although the flipside is coding and to not worry about that – that’s nice! 4:56 – Guest: It has changed my approach for sure. 5:43 – Panel: How much slower are you? 5:54 – Guest: I am a lot faster in Crystal than I am in Ruby. 6:51 – Panel: Yeah you have to figure out where you want to save the time. 7:00 – Guest: Someone wrote a blog post and it said...the Rails service is like bolting a shelf on a wall and hoping to hit a stud and it’s not solid. But using Lucky it’s sold although it took a little longer. I think it can be true. You can do bad things with compilers, though. It depends on how you use it. 7:43 – Panelist asks a question. 7:53 – Guest: Every Friday is an investment day. Lucky is my “whatever I want thing.” I am technically getting paid to work on it. 8:33 – Panel: have you had to battle with the framework? 8:51 – Guest: Yes, even though Crystal looks like Ruby (at a high level) if you want to do it well you have to approach it in the Crystal-way. When I came to Crystal I came to it like Rails. The problem with that is I wanted to have type-saved parameters – you can’t do that in Crystal b/c...it doesn’t know when to have a parameter with... 10:48 – Panel: I have heard you talk about Crystal before on another podcast. You talked about templating and I am curious to hear about that. I have used Slim and others and now stick to ERB. 11:25 – Guest: Yes definitely. Let’s back up and talk about WHAT Lucky does! The guest talks about Rails, escaping, and more! 14:37 – Panel: So I imagine Rails partials are slow and expensive to render. I would imagine that this approach with Lucky... 15:00 – Guest: Yes exactly. It’s extremely fast! 15:20 – Panel: How is this for designers? 15:30 – Guest: Yes that was a concern of mine. With Lucky I tried to make it close to a regular HTML structure would look like! 16:32 – Panel: I spun up a Lucky app the other day. It looks like you are using... 16:50 – Guest: I have played around with a bunch of stuff. I landed on Laravel Mix. 18:27 – Panel: Yes webpack is a pain to set up and it’s hard to get it to working the way you want it to work. 18:47 – Guest: Yeah if you want React or whatever it will generate the configuration you need. I don’t like it b/c if you want to... 19:28 – Panel. 19:45 – Guest: I don’t want to maintain it. 19:54 – Panel: There is a Crystal community in Utah. I want to know – are you competing with Amber? Explain the difference between Lucky and Amber? 20:20 – Guest: Yes I did look at Amber but they are approaching it differently than us. The guest talks about the differences between Amber and Lucky. 21:54 – Guest (continues): With Lucky you will have to learn a little bit more but you get more of a pack! 23:23 – Panel: It sounds like Lucky is inspired by Elm – right? 23:32 – Guest: Yeah, I think so. The guest dives into this topic of Elm and Lucky! 24:35 – Panel: How much does the types feel like it’s getting in your way? How explicit is it? When I came to Ruby it was a breath of fresh air. I am a bit reluctant to go back to those days. 25:25 – Guest: I think Lucky does a happy medium. It doesn’t infer instant variables. I like the... 26:28 – Panel: I learned Java very early on in my computer science career. 27:00 – Guest. 27:10 – Panel: “Crystal...it’s not Java!” That should be your slogan! 27:20 – Fresh Books! 28:25 – Panel: A lot of people are moving to Elixir community. Do you see people moving from Ruby to Lucky and Crystal? How does Lucky compare to Phoenix? 28:55 – Guest: Good question! 29:10 – The guest talks about bamboo – see links below!! 29: 29 – Guest: Sure Ruby is fast but sometimes you spend more time on it then you would want to. 31:08 – Guest: Blessing and curse that Crystal looks so much like Ruby. That’s what I thought at first: why would I want to learn this if it’s so similar to Ruby. BUT there are so many benefits to Crystal vs. Ruby. 31:48 – Guest talks about Lucky catching the bugs. 32:00 – Panel: I wonder if that happened with Groovy and Rails? 32:21 – They go back-and-forth. 32:28 – Panel: Thoughtbot has always been on the forefront of Ruby. Can you talk about Thoughbot please? (See links below for Thoughtbot!) 33:15 – Guest: Great question. It’s hard to tell b/c there are different offices. I would say Ruby is our main thing. Ruby is the most mature thing that we use in-terms of web development. Guest: Actually – Rails is pretty nice! 34:54 – Panel: We went through the same thing with CodeFund! I wrote it initially in Python and then I wrote it in Elixir and it became so complex. Now we are moving everything back to Ruby and it’s been a fantastic decision. 36:30 – Chuck: You are talking about the sustainability of open source but there are benefits throughout the company right? There are tons of tangible benefits of doing it, especially when it’s your Friday schedule. You can level-up on things that could help you. I know a lot of companies cannot afford it if they are trying to hustle. 37:42 – Guest: It’s totally not charity through Thoughtbot. It’s a huge help for hiring new people. I know they are okay with letting me work on Lucky b/c it’s bringing on new developers and a good marketing tool, and finally recruiting! 39:07 – Chuck: Yeah, I have been talking about developer freedom and that’s what I am addressing through the DevRev show! It’s my new podcast show. We talk with Chris on Elixir Mix. It lends that credibility if they need to save our bacon. 40:02 – Panel: What’s your goal with Lucky? 40:11 – Guest: I would love to get it to the point where Thoughtbot could start a project and default to Lucky! Start a project and not resting every gem and be confident with launching it. 41:36 – Panelist asks a question. 41:45 – Guest: It’s not 1.0 and that means that the API will break with every release. I think that’s good to tweak stuff but that turns companies off, though. 42:40 – Chuck: Another thing that helps with adoption is Twitter used Rails to build their initial version. This blah, blah company uses important stuff and they are using Crystal and whatnot then that’s good! It sounds like you are waiting for social proof. 43:23 – Guest: Is the next Twitter going to even know about Crystal? 43:40 – Chuck: It literally only takes one enthusiast! 43:52 – Guest. 44:11 – Demo of Flickr Search is mentioned here! 45:13 – Panel: Is there something out there that you could POINT someone to? 45:27 – Guest: Not, yet. I built a small site with it! It is opensource and you can look at it. I want to show people a good example of what Lucky can do! 45:57 – Panel: You have very good docs and I am a visual learner. When I learned Rails I learned on my own and not through school. 46:20 – Panelist asks a question. 46:48 – Guest: What a huge advantage Lucky has through the Thoughtbot platform! Now that platform is kind of dried up. In terms of getting people excited it needs that killer app and they can see that it’s fast and killer! I think it takes a lot of time and finding time to do it so that’s tricky. It’s changing a lot when there is so much change. Getting Lucky to a 1.0 state so people can do videos and make apps. The hard part thing is that Lucky has to be 1.0 when Crystal is 1.0. The Lucky community is great b/c it’s encouraging and to respond in a very kind way. When you are starting something that’s new can be scary. We try to help out as much as we can and we are open and kind about it. 49:13 – Panel: “Paul is nice so Lucky is nice!” 49:19 – Guest: Everyone is super kind. It had to be short and simple. We in the dev community are very lucky – usually great pay/benefits and more w/o a college degree. What another field can you do that?! 51:00 – Panel: Great message and you need to push that! 51:10 – Panel: You were on a past podcast and you talked about how you are donating each month! Panel: Opensource maintainers are getting burned out and you want to support that. 51:40 – Guest: I think opensource sustainability what others need to do to make it sustainable. If you have the means to give we can be apart of that, too. It would be nice if companies did that. If it helps Crystal I am happy. 52:17 – Panel: I have a question about Crystal. 52:52 – Guest: Ruby right now you can do C sections right now. 53:01 – Panel. 53:10 – Guest: I don’t think so – it may but I would guess that you could do it but I don’t know how easy it would be. Note: Rust and C are mentioned. 53:37 – Panel comments. 53:46 – Guest: One thing I would say is to check-out the Lucky docs. We are happy to help! 54:10 – Panel: This is a favorite episode of mine! Both of today’s guests have been my favorite! 54:23 – Advertisement: Get A Coder Job! End – Cache Fly! Links: Get a Coder Job Course The DevRev Podcast Show DevChat TV Ruby Elixir Ruby on Rails Angular Cypress Vue React Jest.io Mocha.js Webpacker-Cli Amber Lucky The Lucky Philosophy The Bike Shed Thoughtbot CodeFund Lucky: Ruby on Rails to Lucky on Crystal... “Crystal is not Ruby Part 1” GitHub: Bamboo Ex_Machina Dialyxir Crystal Mastery Samsung T5 Carbon Copy Cloner iMazing Awesome-Lucky Paul Smith GitHub Sponsors: Sentry CacheFly Fresh Books Picks: Nate Samsung SSD Carbon Copy Cloner Application Eric iMazing HEIC Converter Charles Mastodon Andrew Upcase by Thoughtbot Awesome Lucky Paul Tailwind CSS Phoenix Live HTML Chris McCord Elixir Mix Episodes with Chris McCord
Panel: Eric Berry Charles Max Wood Nate Hopkins Special Guest: Paul Smith and Andrew Mason In this episode of Ruby Rogues, the panelists talk with Paul Smith and Andrew Mason! They discuss the platforms Lucky and Crystal. Other topics include: Ruby, Phoenix, Laravel Mix, Thoughtbot, Webpack, compilers, and much more! Check it out! Show Topics: 0:00 – Advertisement: Sentry.io 1:02 – Chuck: Welcome!! Eric Berry, Nate Hopkins, and myself are the panel - and our special guests are Paul Smith and Andrew Mason. Introduce yourself! 1:41 – Andrew / Guest: I have messed with every type of language, so there’s that! 1:55 – Paul / Guest: I have been here at my current company for 5 years and it’s a consultancy firm. I have been working on Crystal. 2:14 – Chuck: We are lucky to have you! Give people the elevator pitch for Lucky and Crystal? 2:33 – Guest: Let’s talk about Crystal and looks very similar to Ruby! It’s faster and it’s a compound language. It catches a fair amount of things at compile time. The other special features are... 4:17 – Guest mentions compilers. 4:23 – Chuck: Yeah we see this in the typescript. Is it language service – is that what it’s called? Pile and compile and all of this checking are a nice stage for it to run-through. Although the flipside is coding and to not worry about that – that’s nice! 4:56 – Guest: It has changed my approach for sure. 5:43 – Panel: How much slower are you? 5:54 – Guest: I am a lot faster in Crystal than I am in Ruby. 6:51 – Panel: Yeah you have to figure out where you want to save the time. 7:00 – Guest: Someone wrote a blog post and it said...the Rails service is like bolting a shelf on a wall and hoping to hit a stud and it’s not solid. But using Lucky it’s sold although it took a little longer. I think it can be true. You can do bad things with compilers, though. It depends on how you use it. 7:43 – Panelist asks a question. 7:53 – Guest: Every Friday is an investment day. Lucky is my “whatever I want thing.” I am technically getting paid to work on it. 8:33 – Panel: have you had to battle with the framework? 8:51 – Guest: Yes, even though Crystal looks like Ruby (at a high level) if you want to do it well you have to approach it in the Crystal-way. When I came to Crystal I came to it like Rails. The problem with that is I wanted to have type-saved parameters – you can’t do that in Crystal b/c...it doesn’t know when to have a parameter with... 10:48 – Panel: I have heard you talk about Crystal before on another podcast. You talked about templating and I am curious to hear about that. I have used Slim and others and now stick to ERB. 11:25 – Guest: Yes definitely. Let’s back up and talk about WHAT Lucky does! The guest talks about Rails, escaping, and more! 14:37 – Panel: So I imagine Rails partials are slow and expensive to render. I would imagine that this approach with Lucky... 15:00 – Guest: Yes exactly. It’s extremely fast! 15:20 – Panel: How is this for designers? 15:30 – Guest: Yes that was a concern of mine. With Lucky I tried to make it close to a regular HTML structure would look like! 16:32 – Panel: I spun up a Lucky app the other day. It looks like you are using... 16:50 – Guest: I have played around with a bunch of stuff. I landed on Laravel Mix. 18:27 – Panel: Yes webpack is a pain to set up and it’s hard to get it to working the way you want it to work. 18:47 – Guest: Yeah if you want React or whatever it will generate the configuration you need. I don’t like it b/c if you want to... 19:28 – Panel. 19:45 – Guest: I don’t want to maintain it. 19:54 – Panel: There is a Crystal community in Utah. I want to know – are you competing with Amber? Explain the difference between Lucky and Amber? 20:20 – Guest: Yes I did look at Amber but they are approaching it differently than us. The guest talks about the differences between Amber and Lucky. 21:54 – Guest (continues): With Lucky you will have to learn a little bit more but you get more of a pack! 23:23 – Panel: It sounds like Lucky is inspired by Elm – right? 23:32 – Guest: Yeah, I think so. The guest dives into this topic of Elm and Lucky! 24:35 – Panel: How much does the types feel like it’s getting in your way? How explicit is it? When I came to Ruby it was a breath of fresh air. I am a bit reluctant to go back to those days. 25:25 – Guest: I think Lucky does a happy medium. It doesn’t infer instant variables. I like the... 26:28 – Panel: I learned Java very early on in my computer science career. 27:00 – Guest. 27:10 – Panel: “Crystal...it’s not Java!” That should be your slogan! 27:20 – Fresh Books! 28:25 – Panel: A lot of people are moving to Elixir community. Do you see people moving from Ruby to Lucky and Crystal? How does Lucky compare to Phoenix? 28:55 – Guest: Good question! 29:10 – The guest talks about bamboo – see links below!! 29: 29 – Guest: Sure Ruby is fast but sometimes you spend more time on it then you would want to. 31:08 – Guest: Blessing and curse that Crystal looks so much like Ruby. That’s what I thought at first: why would I want to learn this if it’s so similar to Ruby. BUT there are so many benefits to Crystal vs. Ruby. 31:48 – Guest talks about Lucky catching the bugs. 32:00 – Panel: I wonder if that happened with Groovy and Rails? 32:21 – They go back-and-forth. 32:28 – Panel: Thoughtbot has always been on the forefront of Ruby. Can you talk about Thoughbot please? (See links below for Thoughtbot!) 33:15 – Guest: Great question. It’s hard to tell b/c there are different offices. I would say Ruby is our main thing. Ruby is the most mature thing that we use in-terms of web development. Guest: Actually – Rails is pretty nice! 34:54 – Panel: We went through the same thing with CodeFund! I wrote it initially in Python and then I wrote it in Elixir and it became so complex. Now we are moving everything back to Ruby and it’s been a fantastic decision. 36:30 – Chuck: You are talking about the sustainability of open source but there are benefits throughout the company right? There are tons of tangible benefits of doing it, especially when it’s your Friday schedule. You can level-up on things that could help you. I know a lot of companies cannot afford it if they are trying to hustle. 37:42 – Guest: It’s totally not charity through Thoughtbot. It’s a huge help for hiring new people. I know they are okay with letting me work on Lucky b/c it’s bringing on new developers and a good marketing tool, and finally recruiting! 39:07 – Chuck: Yeah, I have been talking about developer freedom and that’s what I am addressing through the DevRev show! It’s my new podcast show. We talk with Chris on Elixir Mix. It lends that credibility if they need to save our bacon. 40:02 – Panel: What’s your goal with Lucky? 40:11 – Guest: I would love to get it to the point where Thoughtbot could start a project and default to Lucky! Start a project and not resting every gem and be confident with launching it. 41:36 – Panelist asks a question. 41:45 – Guest: It’s not 1.0 and that means that the API will break with every release. I think that’s good to tweak stuff but that turns companies off, though. 42:40 – Chuck: Another thing that helps with adoption is Twitter used Rails to build their initial version. This blah, blah company uses important stuff and they are using Crystal and whatnot then that’s good! It sounds like you are waiting for social proof. 43:23 – Guest: Is the next Twitter going to even know about Crystal? 43:40 – Chuck: It literally only takes one enthusiast! 43:52 – Guest. 44:11 – Demo of Flickr Search is mentioned here! 45:13 – Panel: Is there something out there that you could POINT someone to? 45:27 – Guest: Not, yet. I built a small site with it! It is opensource and you can look at it. I want to show people a good example of what Lucky can do! 45:57 – Panel: You have very good docs and I am a visual learner. When I learned Rails I learned on my own and not through school. 46:20 – Panelist asks a question. 46:48 – Guest: What a huge advantage Lucky has through the Thoughtbot platform! Now that platform is kind of dried up. In terms of getting people excited it needs that killer app and they can see that it’s fast and killer! I think it takes a lot of time and finding time to do it so that’s tricky. It’s changing a lot when there is so much change. Getting Lucky to a 1.0 state so people can do videos and make apps. The hard part thing is that Lucky has to be 1.0 when Crystal is 1.0. The Lucky community is great b/c it’s encouraging and to respond in a very kind way. When you are starting something that’s new can be scary. We try to help out as much as we can and we are open and kind about it. 49:13 – Panel: “Paul is nice so Lucky is nice!” 49:19 – Guest: Everyone is super kind. It had to be short and simple. We in the dev community are very lucky – usually great pay/benefits and more w/o a college degree. What another field can you do that?! 51:00 – Panel: Great message and you need to push that! 51:10 – Panel: You were on a past podcast and you talked about how you are donating each month! Panel: Opensource maintainers are getting burned out and you want to support that. 51:40 – Guest: I think opensource sustainability what others need to do to make it sustainable. If you have the means to give we can be apart of that, too. It would be nice if companies did that. If it helps Crystal I am happy. 52:17 – Panel: I have a question about Crystal. 52:52 – Guest: Ruby right now you can do C sections right now. 53:01 – Panel. 53:10 – Guest: I don’t think so – it may but I would guess that you could do it but I don’t know how easy it would be. Note: Rust and C are mentioned. 53:37 – Panel comments. 53:46 – Guest: One thing I would say is to check-out the Lucky docs. We are happy to help! 54:10 – Panel: This is a favorite episode of mine! Both of today’s guests have been my favorite! 54:23 – Advertisement: Get A Coder Job! End – Cache Fly! Links: Get a Coder Job Course The DevRev Podcast Show DevChat TV Ruby Elixir Ruby on Rails Angular Cypress Vue React Jest.io Mocha.js Webpacker-Cli Amber Lucky The Lucky Philosophy The Bike Shed Thoughtbot CodeFund Lucky: Ruby on Rails to Lucky on Crystal... “Crystal is not Ruby Part 1” GitHub: Bamboo Ex_Machina Dialyxir Crystal Mastery Samsung T5 Carbon Copy Cloner iMazing Awesome-Lucky Paul Smith GitHub Sponsors: Sentry CacheFly Fresh Books Picks: Nate Samsung SSD Carbon Copy Cloner Application Eric iMazing HEIC Converter Charles Mastodon Andrew Upcase by Thoughtbot Awesome Lucky Paul Tailwind CSS Phoenix Live HTML Chris McCord Elixir Mix Episodes with Chris McCord
Panel: Dave Kimura Charles Max Wood Nate Hopkins Special Guest: Josh Justice In this episode of Ruby Rogues, the panelists talk with Josh Justice who is a developer, writer, and speaker. Josh streams JavaScript and web development on Friday’s at 2:00 PM (ET) here! The panelists and the guest talk about Josh’s background and frontend testing in Ruby. Check it out! Show Topics: 0:00 – Advertisement: Sentry.io 1:04 – Chuck: Hi! Dave, Nate, and myself are on the panel and our special guest is Josh Justice! I am developing a show about developer freedom and it’s called The DevRev. It will be streamed through YouTube, and I will record Friday afternoons. Check out Facebook, too! 2:11 – Josh: Thanks! I am happy to be here! 2:18 – Chuck: Introduce yourself, please! 2:24 – Josh: I have been a developer for about 14 years. I have used PHP and then got into Ruby and then frontend development. 2:46 – Chuck: You work for Big Nerd Ranch in Atlanta? 2:56 – Josh: Yep for the last 3-4 years! 3:15 – Chuck: Can you introduce the topic? 3:25 – The guest talks about Big Nerd Ranch and frontend development. Learn TDD is mentioned, too! Check it out here! 5:06 – Panel: How much bouncing do you do between React and Vue? 5:11 – Guest. 5:47 – Chuck: We need to get you on our podcast shows for React and Vue! It’s an approach that I am familiar with in Ruby – and Selenium what a pain! 6:16 – Guest: I’ve had a good experience with Cypress, actually! 7:47 – Guest: Panelist, can you share your experiences? 7:57 – Panel: Not bad experiences with testing, but now I am trying to minimize my use with JavaScript. 8:30 – Guest: I think there is a big push towards considering more server site rendering. 9:35 – Panel: What’s your recommendation to setup Cypress? 9:40 – Guest: Their docs are really great! They had some conference talks on how to set it up! 10:15 – Guest: Check out my talks about this topic. (Connect Tech 2018). 10:29 – Panel: I think Cypress is a pretty cool solution but one thing that left me confused is that you have to have an environment that is already stood-up and running. Is that accurate or has that changed? 11:00 – Guest: Can you clarify what you mean by a “running environment”? 11:04 – Panelist clarifies. 11:44 – Guest: Luckily for me I have something to say b/c I tried a week ago! 12:01 – Guest mentions Vue CLI 3. 14:38 – Panel: How can you test your code coverage? I want to know how much of my code coverage am I hitting? The applications are up and running, it’s not going through the files (per se), and is there anything that would indicate how good your coverage is with the Cypress test? 15:10 – Guest: Let me as a follow-up question: How do you approach it on the frontend? 15:24 – Panelist answers the guest’s question. 16:06 – The guest mentions Vue CLI 2 & 3. 18:31 – Chuck: Are you using the tool Istanbul? 18:36 – Guest: Yep Istanbul is the one! 18:54 – Chuck: I’ve heard some similar rumors, but can’t say. 19:02 – Panelist talks. 20:13 – Chuck: I have been working on a project and what doesn’t get test-coverage gets a candidate to get pulled-out. 20:40 – Guest: Talking about test-driven development... Guest: Have you read the original book? 21:02 – Guest: The book: “Effective Testing with RSpec 3” is updated information – check it out! The guest mentions his live stream on Friday’s. Check out the links found below! 23:57 – Panel: How is the stability with tests like Cypress with end-to-end tests? If you are testing with a login then the user has to be already created. Or what about a Twitter app – the user has to be created and not followed? How do you handle that? 24:22 – Guest: I think we are spoiled in the Rails world b/c of those... 24:53 – The guest answers the panelist’s question! 26:59 – Fresh Books! 28:07 – Guest: Does that help? 28:10 – Panel. 28:21 – Guest: I have been thinking about this, though, recently. Thinking about the contracts through the business. I have dabbled with native development and I see the cost that runs a native app. 30:21 – Panel: It’s refreshing to hear the new market’s demands. I truly haven’t seen an application that requires that. I have built some extensive applications and also very simple ones, too; the need for productivity. 31:17 – Guest mentions a talk at a conference. See here for that information! 31:43 – Guest: I have a friend who was a new developer and he really knows his stuff. He said that he didn’t know if he could be a full stack developer in the next 5-10 years. Wait a minute?! Guest: The freedom to create something that stands alone. Guest: Tom Dale is mentioned by the Guest. 33:35 – Panel: To choose Rails as a new developer (today) it’s not as easy as it was back in the day. Today you have Active Job, Action Cable and so many other components. It’s more complicated today then it was in the past. It could be overwhelming to a new developer. 35:00 – Chuck: I think a lot of that is the community’s fault and not Rails’ fault. 35:57 – Panel. 36:04 – Panel: The counter-argument could say that’s where server-less come in. 36:27 – Chuck: To some degree you can get away with it. You don’t have to worry about the infrastructure or anything else. 36:44 – Panel: Have you tried messing around with server-less functions with AWS? I have and...it’s not easy. There is not a good flow or good work flow in a server-less environment. 38:01 – Chuck: You can go to this website. It makes the setup easier b/c you are adding your Azure or AWS features. 38:30 – Panel: This topic, though, does tie back to the testing topic we were talking about earlier! 39:14 – Panel: Yeah that is why I haven’t gotten into server-less things. The Rails holistic approach is so appealing. 40:14 – Panel continues: I want to take smaller steps when it comes to technology! I want to move into things that we are laying down the tracks to make it easier travelable. That way we can consider the things we’ve learned in the past and help those in the future. 41:07 – Chuck: What are lacking then? What is the friction that is left? Seems like Cypress helped removed that but maybe not? 42:02 – Panelist mentions Cypress, Jest, Mocha, and others! 43:10 – Panel (continues): I am all about experimenting but I want to know all the reasons. What has changed and what hasn’t’ changed? 43:29 – Panel: There is an article written that talks about this topic. 43:59 – Guest mentions the video “Is TDD Dead?” (See links below.) 44:29 – Guest: I like brining thoughts together and taking his or her input and come up with my own thoughts. 46:32 – Guest (continues): The testing trophy is heavier on the top (picture of a trophy). Guest: I think the thing that draws me to unit testing is that... 47:37 – Guest: I am obsessed with testing. The guest gives a summary here! 48:15 – Chuck: We talked with Quincy Larson last week and it’s a really good take on what we are doing and what we are trying to accomplish with our tests. Check it out – it’s coming out soon! 49:05 – Panel: When you are younger into your career – the way you think about structuring your code – when you are comfortable you really don’t need that guidance. 50:00 – Guest: I would encourage folks who were new to coding to do the following... 51:36 – Guest: Think about WHY you are doing (what you are doing) and being able to articulate well what you are doing and why. 52:03 – Panel: There is no question – every time I test I am surprised how much it shapes my thinking about the code and how many bugs that I catch even in code that I thought was operating well. When you go too far though there is a fallacy there. 52:54 – Panel: Yes, testing is very important. I am a test-after-the-fact programmer. That is my self-key term. Don’t write 500-line methods b/c you won’t be able to test that. Don’t make it too abstract so have a common pattern that you will use. Have a lot of private methods that aren’t exposed to the API. 54:03 – Guest: Yes thinking about how to structure your code can be challenging at first but it gets easier. 55:58 – Chuck: I have had talks with Corey Haines about topics like this! 56:47 – Guest: Yes it can be helpful in consultancy now. 59:23 – Guest: Think about this: choosing what level to test at. 1:00:14 – Panel: It’s hard b/c it changes all the time per function or something else. There are tradeoffs with everything we do. 1:00:41 – Chuck: You are the consultant it depends doesn’t it? 1:00:51 – Picks! 1:00:55 – Advertisement: Get A Coder Job! End – Cache Fly! Links: Get a Coder Job Course Ruby Ruby on Rails Angular Cypress Vue React VUE CLI 3 Jest.io Mocha.js GitHub: Istanbul The RSpec Book RR 068 Episode Ember CLI GitHub: Factory_Bot GitHub: VCR Big Nerd Ranch Big Nerd Ranch: Josh Justice / Team Manager The Bike Shed Keynote: Tom Dale @ EmberFest 2018 JSJ 291 Episode Serverless Article: Test-Induced Design Damage Video: Is TDD Dead? Music: Sub Conscious – Electronic / 2004 Music: Interloper / 2015 Disney Heroes: Battle Mode Google Play: Disney Heroes / Battle Mode Book Authoring Playlist Tom Dale’s Twitter Corey Haines’ Twitter Coding It Wrong Josh’s Twitter Josh’s GitHub Josh’s LinkedIn Josh’s Vimeo Video Sponsors: Sentry CacheFly Fresh Books Picks: Nate Phutureprimitive - Sub Conscious Carbon Based Lifeforms - Interloper Dave Dust collections system in Wood Shop Doctor Who - Theme Music Charles Authoring music Disney Hero Battles Josh Effecting Testing with RSpec 3 Growing Object-Oriented Software, Guided by Test XUnit Test Patterns Spectacle App Alfred App
Panel: Dave Kimura Charles Max Wood Nate Hopkins Special Guest: Josh Justice In this episode of Ruby Rogues, the panelists talk with Josh Justice who is a developer, writer, and speaker. Josh streams JavaScript and web development on Friday’s at 2:00 PM (ET) here! The panelists and the guest talk about Josh’s background and frontend testing in Ruby. Check it out! Show Topics: 0:00 – Advertisement: Sentry.io 1:04 – Chuck: Hi! Dave, Nate, and myself are on the panel and our special guest is Josh Justice! I am developing a show about developer freedom and it’s called The DevRev. It will be streamed through YouTube, and I will record Friday afternoons. Check out Facebook, too! 2:11 – Josh: Thanks! I am happy to be here! 2:18 – Chuck: Introduce yourself, please! 2:24 – Josh: I have been a developer for about 14 years. I have used PHP and then got into Ruby and then frontend development. 2:46 – Chuck: You work for Big Nerd Ranch in Atlanta? 2:56 – Josh: Yep for the last 3-4 years! 3:15 – Chuck: Can you introduce the topic? 3:25 – The guest talks about Big Nerd Ranch and frontend development. Learn TDD is mentioned, too! Check it out here! 5:06 – Panel: How much bouncing do you do between React and Vue? 5:11 – Guest. 5:47 – Chuck: We need to get you on our podcast shows for React and Vue! It’s an approach that I am familiar with in Ruby – and Selenium what a pain! 6:16 – Guest: I’ve had a good experience with Cypress, actually! 7:47 – Guest: Panelist, can you share your experiences? 7:57 – Panel: Not bad experiences with testing, but now I am trying to minimize my use with JavaScript. 8:30 – Guest: I think there is a big push towards considering more server site rendering. 9:35 – Panel: What’s your recommendation to setup Cypress? 9:40 – Guest: Their docs are really great! They had some conference talks on how to set it up! 10:15 – Guest: Check out my talks about this topic. (Connect Tech 2018). 10:29 – Panel: I think Cypress is a pretty cool solution but one thing that left me confused is that you have to have an environment that is already stood-up and running. Is that accurate or has that changed? 11:00 – Guest: Can you clarify what you mean by a “running environment”? 11:04 – Panelist clarifies. 11:44 – Guest: Luckily for me I have something to say b/c I tried a week ago! 12:01 – Guest mentions Vue CLI 3. 14:38 – Panel: How can you test your code coverage? I want to know how much of my code coverage am I hitting? The applications are up and running, it’s not going through the files (per se), and is there anything that would indicate how good your coverage is with the Cypress test? 15:10 – Guest: Let me as a follow-up question: How do you approach it on the frontend? 15:24 – Panelist answers the guest’s question. 16:06 – The guest mentions Vue CLI 2 & 3. 18:31 – Chuck: Are you using the tool Istanbul? 18:36 – Guest: Yep Istanbul is the one! 18:54 – Chuck: I’ve heard some similar rumors, but can’t say. 19:02 – Panelist talks. 20:13 – Chuck: I have been working on a project and what doesn’t get test-coverage gets a candidate to get pulled-out. 20:40 – Guest: Talking about test-driven development... Guest: Have you read the original book? 21:02 – Guest: The book: “Effective Testing with RSpec 3” is updated information – check it out! The guest mentions his live stream on Friday’s. Check out the links found below! 23:57 – Panel: How is the stability with tests like Cypress with end-to-end tests? If you are testing with a login then the user has to be already created. Or what about a Twitter app – the user has to be created and not followed? How do you handle that? 24:22 – Guest: I think we are spoiled in the Rails world b/c of those... 24:53 – The guest answers the panelist’s question! 26:59 – Fresh Books! 28:07 – Guest: Does that help? 28:10 – Panel. 28:21 – Guest: I have been thinking about this, though, recently. Thinking about the contracts through the business. I have dabbled with native development and I see the cost that runs a native app. 30:21 – Panel: It’s refreshing to hear the new market’s demands. I truly haven’t seen an application that requires that. I have built some extensive applications and also very simple ones, too; the need for productivity. 31:17 – Guest mentions a talk at a conference. See here for that information! 31:43 – Guest: I have a friend who was a new developer and he really knows his stuff. He said that he didn’t know if he could be a full stack developer in the next 5-10 years. Wait a minute?! Guest: The freedom to create something that stands alone. Guest: Tom Dale is mentioned by the Guest. 33:35 – Panel: To choose Rails as a new developer (today) it’s not as easy as it was back in the day. Today you have Active Job, Action Cable and so many other components. It’s more complicated today then it was in the past. It could be overwhelming to a new developer. 35:00 – Chuck: I think a lot of that is the community’s fault and not Rails’ fault. 35:57 – Panel. 36:04 – Panel: The counter-argument could say that’s where server-less come in. 36:27 – Chuck: To some degree you can get away with it. You don’t have to worry about the infrastructure or anything else. 36:44 – Panel: Have you tried messing around with server-less functions with AWS? I have and...it’s not easy. There is not a good flow or good work flow in a server-less environment. 38:01 – Chuck: You can go to this website. It makes the setup easier b/c you are adding your Azure or AWS features. 38:30 – Panel: This topic, though, does tie back to the testing topic we were talking about earlier! 39:14 – Panel: Yeah that is why I haven’t gotten into server-less things. The Rails holistic approach is so appealing. 40:14 – Panel continues: I want to take smaller steps when it comes to technology! I want to move into things that we are laying down the tracks to make it easier travelable. That way we can consider the things we’ve learned in the past and help those in the future. 41:07 – Chuck: What are lacking then? What is the friction that is left? Seems like Cypress helped removed that but maybe not? 42:02 – Panelist mentions Cypress, Jest, Mocha, and others! 43:10 – Panel (continues): I am all about experimenting but I want to know all the reasons. What has changed and what hasn’t’ changed? 43:29 – Panel: There is an article written that talks about this topic. 43:59 – Guest mentions the video “Is TDD Dead?” (See links below.) 44:29 – Guest: I like brining thoughts together and taking his or her input and come up with my own thoughts. 46:32 – Guest (continues): The testing trophy is heavier on the top (picture of a trophy). Guest: I think the thing that draws me to unit testing is that... 47:37 – Guest: I am obsessed with testing. The guest gives a summary here! 48:15 – Chuck: We talked with Quincy Larson last week and it’s a really good take on what we are doing and what we are trying to accomplish with our tests. Check it out – it’s coming out soon! 49:05 – Panel: When you are younger into your career – the way you think about structuring your code – when you are comfortable you really don’t need that guidance. 50:00 – Guest: I would encourage folks who were new to coding to do the following... 51:36 – Guest: Think about WHY you are doing (what you are doing) and being able to articulate well what you are doing and why. 52:03 – Panel: There is no question – every time I test I am surprised how much it shapes my thinking about the code and how many bugs that I catch even in code that I thought was operating well. When you go too far though there is a fallacy there. 52:54 – Panel: Yes, testing is very important. I am a test-after-the-fact programmer. That is my self-key term. Don’t write 500-line methods b/c you won’t be able to test that. Don’t make it too abstract so have a common pattern that you will use. Have a lot of private methods that aren’t exposed to the API. 54:03 – Guest: Yes thinking about how to structure your code can be challenging at first but it gets easier. 55:58 – Chuck: I have had talks with Corey Haines about topics like this! 56:47 – Guest: Yes it can be helpful in consultancy now. 59:23 – Guest: Think about this: choosing what level to test at. 1:00:14 – Panel: It’s hard b/c it changes all the time per function or something else. There are tradeoffs with everything we do. 1:00:41 – Chuck: You are the consultant it depends doesn’t it? 1:00:51 – Picks! 1:00:55 – Advertisement: Get A Coder Job! End – Cache Fly! Links: Get a Coder Job Course Ruby Ruby on Rails Angular Cypress Vue React VUE CLI 3 Jest.io Mocha.js GitHub: Istanbul The RSpec Book RR 068 Episode Ember CLI GitHub: Factory_Bot GitHub: VCR Big Nerd Ranch Big Nerd Ranch: Josh Justice / Team Manager The Bike Shed Keynote: Tom Dale @ EmberFest 2018 JSJ 291 Episode Serverless Article: Test-Induced Design Damage Video: Is TDD Dead? Music: Sub Conscious – Electronic / 2004 Music: Interloper / 2015 Disney Heroes: Battle Mode Google Play: Disney Heroes / Battle Mode Book Authoring Playlist Tom Dale’s Twitter Corey Haines’ Twitter Coding It Wrong Josh’s Twitter Josh’s GitHub Josh’s LinkedIn Josh’s Vimeo Video Sponsors: Sentry CacheFly Fresh Books Picks: Nate Phutureprimitive - Sub Conscious Carbon Based Lifeforms - Interloper Dave Dust collections system in Wood Shop Doctor Who - Theme Music Charles Authoring music Disney Hero Battles Josh Effecting Testing with RSpec 3 Growing Object-Oriented Software, Guided by Test XUnit Test Patterns Spectacle App Alfred App
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
Panel: Dave Kimura Charles Max Wood Nate Hopkins Special Guest: Josh Justice In this episode of Ruby Rogues, the panelists talk with Josh Justice who is a developer, writer, and speaker. Josh streams JavaScript and web development on Friday’s at 2:00 PM (ET) here! The panelists and the guest talk about Josh’s background and frontend testing in Ruby. Check it out! Show Topics: 0:00 – Advertisement: Sentry.io 1:04 – Chuck: Hi! Dave, Nate, and myself are on the panel and our special guest is Josh Justice! I am developing a show about developer freedom and it’s called The DevRev. It will be streamed through YouTube, and I will record Friday afternoons. Check out Facebook, too! 2:11 – Josh: Thanks! I am happy to be here! 2:18 – Chuck: Introduce yourself, please! 2:24 – Josh: I have been a developer for about 14 years. I have used PHP and then got into Ruby and then frontend development. 2:46 – Chuck: You work for Big Nerd Ranch in Atlanta? 2:56 – Josh: Yep for the last 3-4 years! 3:15 – Chuck: Can you introduce the topic? 3:25 – The guest talks about Big Nerd Ranch and frontend development. Learn TDD is mentioned, too! Check it out here! 5:06 – Panel: How much bouncing do you do between React and Vue? 5:11 – Guest. 5:47 – Chuck: We need to get you on our podcast shows for React and Vue! It’s an approach that I am familiar with in Ruby – and Selenium what a pain! 6:16 – Guest: I’ve had a good experience with Cypress, actually! 7:47 – Guest: Panelist, can you share your experiences? 7:57 – Panel: Not bad experiences with testing, but now I am trying to minimize my use with JavaScript. 8:30 – Guest: I think there is a big push towards considering more server site rendering. 9:35 – Panel: What’s your recommendation to setup Cypress? 9:40 – Guest: Their docs are really great! They had some conference talks on how to set it up! 10:15 – Guest: Check out my talks about this topic. (Connect Tech 2018). 10:29 – Panel: I think Cypress is a pretty cool solution but one thing that left me confused is that you have to have an environment that is already stood-up and running. Is that accurate or has that changed? 11:00 – Guest: Can you clarify what you mean by a “running environment”? 11:04 – Panelist clarifies. 11:44 – Guest: Luckily for me I have something to say b/c I tried a week ago! 12:01 – Guest mentions Vue CLI 3. 14:38 – Panel: How can you test your code coverage? I want to know how much of my code coverage am I hitting? The applications are up and running, it’s not going through the files (per se), and is there anything that would indicate how good your coverage is with the Cypress test? 15:10 – Guest: Let me as a follow-up question: How do you approach it on the frontend? 15:24 – Panelist answers the guest’s question. 16:06 – The guest mentions Vue CLI 2 & 3. 18:31 – Chuck: Are you using the tool Istanbul? 18:36 – Guest: Yep Istanbul is the one! 18:54 – Chuck: I’ve heard some similar rumors, but can’t say. 19:02 – Panelist talks. 20:13 – Chuck: I have been working on a project and what doesn’t get test-coverage gets a candidate to get pulled-out. 20:40 – Guest: Talking about test-driven development... Guest: Have you read the original book? 21:02 – Guest: The book: “Effective Testing with RSpec 3” is updated information – check it out! The guest mentions his live stream on Friday’s. Check out the links found below! 23:57 – Panel: How is the stability with tests like Cypress with end-to-end tests? If you are testing with a login then the user has to be already created. Or what about a Twitter app – the user has to be created and not followed? How do you handle that? 24:22 – Guest: I think we are spoiled in the Rails world b/c of those... 24:53 – The guest answers the panelist’s question! 26:59 – Fresh Books! 28:07 – Guest: Does that help? 28:10 – Panel. 28:21 – Guest: I have been thinking about this, though, recently. Thinking about the contracts through the business. I have dabbled with native development and I see the cost that runs a native app. 30:21 – Panel: It’s refreshing to hear the new market’s demands. I truly haven’t seen an application that requires that. I have built some extensive applications and also very simple ones, too; the need for productivity. 31:17 – Guest mentions a talk at a conference. See here for that information! 31:43 – Guest: I have a friend who was a new developer and he really knows his stuff. He said that he didn’t know if he could be a full stack developer in the next 5-10 years. Wait a minute?! Guest: The freedom to create something that stands alone. Guest: Tom Dale is mentioned by the Guest. 33:35 – Panel: To choose Rails as a new developer (today) it’s not as easy as it was back in the day. Today you have Active Job, Action Cable and so many other components. It’s more complicated today then it was in the past. It could be overwhelming to a new developer. 35:00 – Chuck: I think a lot of that is the community’s fault and not Rails’ fault. 35:57 – Panel. 36:04 – Panel: The counter-argument could say that’s where server-less come in. 36:27 – Chuck: To some degree you can get away with it. You don’t have to worry about the infrastructure or anything else. 36:44 – Panel: Have you tried messing around with server-less functions with AWS? I have and...it’s not easy. There is not a good flow or good work flow in a server-less environment. 38:01 – Chuck: You can go to this website. It makes the setup easier b/c you are adding your Azure or AWS features. 38:30 – Panel: This topic, though, does tie back to the testing topic we were talking about earlier! 39:14 – Panel: Yeah that is why I haven’t gotten into server-less things. The Rails holistic approach is so appealing. 40:14 – Panel continues: I want to take smaller steps when it comes to technology! I want to move into things that we are laying down the tracks to make it easier travelable. That way we can consider the things we’ve learned in the past and help those in the future. 41:07 – Chuck: What are lacking then? What is the friction that is left? Seems like Cypress helped removed that but maybe not? 42:02 – Panelist mentions Cypress, Jest, Mocha, and others! 43:10 – Panel (continues): I am all about experimenting but I want to know all the reasons. What has changed and what hasn’t’ changed? 43:29 – Panel: There is an article written that talks about this topic. 43:59 – Guest mentions the video “Is TDD Dead?” (See links below.) 44:29 – Guest: I like brining thoughts together and taking his or her input and come up with my own thoughts. 46:32 – Guest (continues): The testing trophy is heavier on the top (picture of a trophy). Guest: I think the thing that draws me to unit testing is that... 47:37 – Guest: I am obsessed with testing. The guest gives a summary here! 48:15 – Chuck: We talked with Quincy Larson last week and it’s a really good take on what we are doing and what we are trying to accomplish with our tests. Check it out – it’s coming out soon! 49:05 – Panel: When you are younger into your career – the way you think about structuring your code – when you are comfortable you really don’t need that guidance. 50:00 – Guest: I would encourage folks who were new to coding to do the following... 51:36 – Guest: Think about WHY you are doing (what you are doing) and being able to articulate well what you are doing and why. 52:03 – Panel: There is no question – every time I test I am surprised how much it shapes my thinking about the code and how many bugs that I catch even in code that I thought was operating well. When you go too far though there is a fallacy there. 52:54 – Panel: Yes, testing is very important. I am a test-after-the-fact programmer. That is my self-key term. Don’t write 500-line methods b/c you won’t be able to test that. Don’t make it too abstract so have a common pattern that you will use. Have a lot of private methods that aren’t exposed to the API. 54:03 – Guest: Yes thinking about how to structure your code can be challenging at first but it gets easier. 55:58 – Chuck: I have had talks with Corey Haines about topics like this! 56:47 – Guest: Yes it can be helpful in consultancy now. 59:23 – Guest: Think about this: choosing what level to test at. 1:00:14 – Panel: It’s hard b/c it changes all the time per function or something else. There are tradeoffs with everything we do. 1:00:41 – Chuck: You are the consultant it depends doesn’t it? 1:00:51 – Picks! 1:00:55 – Advertisement: Get A Coder Job! End – Cache Fly! Links: Get a Coder Job Course Ruby Ruby on Rails Angular Cypress Vue React VUE CLI 3 Jest.io Mocha.js GitHub: Istanbul The RSpec Book RR 068 Episode Ember CLI GitHub: Factory_Bot GitHub: VCR Big Nerd Ranch Big Nerd Ranch: Josh Justice / Team Manager The Bike Shed Keynote: Tom Dale @ EmberFest 2018 JSJ 291 Episode Serverless Article: Test-Induced Design Damage Video: Is TDD Dead? Music: Sub Conscious – Electronic / 2004 Music: Interloper / 2015 Disney Heroes: Battle Mode Google Play: Disney Heroes / Battle Mode Book Authoring Playlist Tom Dale’s Twitter Corey Haines’ Twitter Coding It Wrong Josh’s Twitter Josh’s GitHub Josh’s LinkedIn Josh’s Vimeo Video Sponsors: Sentry CacheFly Fresh Books Picks: Nate Phutureprimitive - Sub Conscious Carbon Based Lifeforms - Interloper Dave Dust collections system in Wood Shop Doctor Who - Theme Music Charles Authoring music Disney Hero Battles Josh Effecting Testing with RSpec 3 Growing Object-Oriented Software, Guided by Test XUnit Test Patterns Spectacle App Alfred App
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
Panel: Charles Max Wood Aaron Frost Shai Reznik Divya Sasidharan Joe Eames Lucas Reis Special Guest: Sean Merron In this episode, The panelist of Adventure In Angular, View on Vue, React Round-Up, and 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
Panel: Charles Max Wood Aaron Frost Shai Reznik Divya Sasidharan Joe Eames Lucas Reis Special Guest: Sean Merron In this episode, The panelist of Adventure In Angular, View on Vue, React Round-Up, and 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
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
Panel: Dave Kimura Eric Berry Charles Max Wood Nate Hopkins Special Guest: Pedro Cavalheiro In this episode of Ruby Rogues, the panelists talk with Pedro Cavalheiro who is from Brazil, but currently resides in Hamburg, Germany where he works at Xing. He is a software engineer, an actor, and has been working with the web since 2010. He has worked mostly with Ruby and PHP languages, and since 2015 has worked full-time with Ruby on Rails. The panelists and Pedro talk about his background and his article. Check it out! Show Topics: 0:00 – Advertisement: Sentry.io 1:04 – Chuck: Hi! Panel is Eric, Dave, Nate, myself – and our special guest is Pedro Cavalheiro! Please introduce yourself! Is that Spanish or Portuguese? Chuck: P.S. – The DevRev is my new show and check it! 1:57 – Guest: My name means gentleman! Here at your service. 2:05 – Guest: I am a developer and worked with web technologies for 10 years. I do some DevOps stuff and working with Ruby. I just moved to Hamburg, Germany with the same company. 3:02 – Chuck: How do you make that decision? 3:07 – Guest: There is no magical answer. It depends on your needs and what time you have? At the time when I wrote that article I worked with a small startup company. For us, we used Heroku at the time. 4:09 – Guest: Current company is bigger and 500 developers. We have different ops teams and they have their own infrastructure and tools. They have more money, time, and people. For what they need it needs to be more scalable. It depends on the company and the requirements and your resources. 5:00 – Panel: I need to preface first: I love hosted solutions, but at the same time there is a hidden cost set that people don’t think about. 6:16 – Guest: If you compare your own infrastructure vs. cloud platform they will think that it is cheaper than having a hosted solution. 7:28 – Chuck: Yeah, that’s a discussion that I find that I have with myself and with my own company. It makes a ton of sense to have some system setup and it’s something that I am managing. 8:05 – Panelists talks about AWS and AMI. 9:06 – Guest. 9:21 – Panel: Can you talk about the article you wrote? Why did you write it? Give us some context into the article and where are we now? 9:48 – Guest talks in-detail about his article and where he was in life when he wrote this article! 14:10 – Panel: How much time did you invest into that? 14:16 – Guest: Less than a week; maybe 3-4 days for the whole process. Writing the article took about 2 days. 14:50 – Chuck talks about Docker, Azure, Dokku among other things. Question: Where do you look at all of these different things, and how do evaluate? 16:02 – Guest: I am a huge Heroku fan, and I would suggest people to use it. It’s brilliant. The company I work today it could be expensive to use b/c it’s a heavy load application and it won’t work. As for me (personal projects) I will play around these different tools. 19:02 – Panel: It’s easy to get up and running of Heroku. I think it’s similar to Kubernetes. 20:00 – Guest: I agree with that. The guest shares a story that relates to this topic. 21:45 – Panel: If you are using self-hosted...put some security on your application. Even if it’s just a demo you are protecting your environment. 22:17 – Chuck: Where do you guys come down on making these types of decisions? 22:30 – Panel: I see it as an investment; especially if your development team is small. Eventually, it will scale but in the early days of a project it is a legit choice to use Heroku or Beanstalk. CodeFund is still on Heroku. Right now it’s solving those problems for us. 23:45 – Chuck: Look at everything that we are all running. What do you guys recommend? 24:19 – Panel: I use S3, elastic search, among other things. 25:56 – Guest: I have a similar story. I had some friends who were spending more than $2,000 a month on Heroku. We tried to find how to reduce the amount of money. We removed the application from the Heroku and put it inside a local machine (probably $800 computer) that runs 24/7 and the only expenses were Internet ($50.00 / month) and 1 SSD ($100) and 1 micro-server through Amazon. Now it works and we were spending over 200x the amount that we needed to. In this example it wasn’t a critical system. In this case self-host was far better and cheaper, so it really depends on your case. 28:08 – Panel: Yeah, sometimes the old school and simple solutions are it. 28:26 – Chuck: I have a virtual machine/servers on Digital Ocean, and I cap deploy. I will login in every-now-and-then, but that’s it. 28:50 – Panel adds in his comments to this topic. 29:17 – Guest: Sometimes these old school solutions tend to be slower, but it depends on what you need for that situation. 29:50 – Chuck: David Brady called that his “Time to Twitter.” 30:04 – Fresh Books! 31:10 – Chuck: Can you talk about your discussion about this, please? 31:23 – Guest: I wrote this article, and it was translated into a few different languages. In the talk that I gave, I talked about my article. It’s funny b/c I wasn’t expecting all of this attention. 33:33 – Guest: I was nervous when I gave the talk so I don’t think it was that good. (Laughs.) 33:50 – Guest: We are human beings and we are always making mistakes, which is okay. 36:55 – Chuck: Yeah I run into that, too. Especially when running the podcast. 37:14 – Guest: That’s apart of the game right? We like to play with new technologies and if it weren’t for experimenting with new stuff our whole industry wouldn’t be as fun. We have the freedom to test, and we get to break tings and not get fired. That’s apart of our jobs. 37:51 – Panel: That’s a good point. A service like beanstalk or Heroku it’s easy to push your app out into the world. But when you dig in deeper, I think that knowledge really starts to seep in and you get to be a better developer. 38:27 – Chuck comments on this topic. 39:12 – Panel: To Pedro’s point... 39:42 – Guest: Yes, we work as a frontend or backend developer or a system administrator, but we need to understand the infrastructure. I want to know and when I know more then my work as a backend developer will improve and communicate with the system. That people know how to use Ruby on Rails and they get used to it but forget about database behind that, and...where you can write your own inquires. They think it’s not their job, but it IS their job. 41:17 – Chuck: To take that step one step further. Chuck talks about performance issues, codes, and more. 41:48 – Chuck: I want to try out Dokku! 42:00 – Guest comments. 43:53 – Chuck: Let’s do Picks! 44:00 – Advertisement: Get A Coder Job! End – Cache Fly! Links: Get a Coder Job Course Ruby Ruby on Rails Angular React React Native Docker Kubernetes Heroku Beanstalk CodeFund Amazon S3 GitHub: Kubernetes IMDB – Pedro C. FB: RR – DevChat TV RR 382 Episode Pedro’s blog article: “Creating a Heroku-Like Deployment Solution with Docker” Comic of Code Compiling GitHub: Dokku/Dokku Digital Ocean: Dokku Digital Ocean: Cloud Hosting App Developers Love Pedro’s Website Pedro’s Twitter Pedro’s Crunchbase Pedro’s GitHub Sponsors: Sentry CacheFly Fresh Books Picks: Dave Legos Rubix’s Cube Eric Digital Ocean @samantha_tse @jna_sh @Zaltsman Nate Alone - History Channel Charles MF CEO - Podcast Extreme Ownership - Book Drip TheDevRev.com Pedro Di.FM Shortcut Foo
Panel: Dave Kimura Eric Berry Charles Max Wood Nate Hopkins Special Guest: Pedro Cavalheiro In this episode of Ruby Rogues, the panelists talk with Pedro Cavalheiro who is from Brazil, but currently resides in Hamburg, Germany where he works at Xing. He is a software engineer, an actor, and has been working with the web since 2010. He has worked mostly with Ruby and PHP languages, and since 2015 has worked full-time with Ruby on Rails. The panelists and Pedro talk about his background and his article. Check it out! Show Topics: 0:00 – Advertisement: Sentry.io 1:04 – Chuck: Hi! Panel is Eric, Dave, Nate, myself – and our special guest is Pedro Cavalheiro! Please introduce yourself! Is that Spanish or Portuguese? Chuck: P.S. – The DevRev is my new show and check it! 1:57 – Guest: My name means gentleman! Here at your service. 2:05 – Guest: I am a developer and worked with web technologies for 10 years. I do some DevOps stuff and working with Ruby. I just moved to Hamburg, Germany with the same company. 3:02 – Chuck: How do you make that decision? 3:07 – Guest: There is no magical answer. It depends on your needs and what time you have? At the time when I wrote that article I worked with a small startup company. For us, we used Heroku at the time. 4:09 – Guest: Current company is bigger and 500 developers. We have different ops teams and they have their own infrastructure and tools. They have more money, time, and people. For what they need it needs to be more scalable. It depends on the company and the requirements and your resources. 5:00 – Panel: I need to preface first: I love hosted solutions, but at the same time there is a hidden cost set that people don’t think about. 6:16 – Guest: If you compare your own infrastructure vs. cloud platform they will think that it is cheaper than having a hosted solution. 7:28 – Chuck: Yeah, that’s a discussion that I find that I have with myself and with my own company. It makes a ton of sense to have some system setup and it’s something that I am managing. 8:05 – Panelists talks about AWS and AMI. 9:06 – Guest. 9:21 – Panel: Can you talk about the article you wrote? Why did you write it? Give us some context into the article and where are we now? 9:48 – Guest talks in-detail about his article and where he was in life when he wrote this article! 14:10 – Panel: How much time did you invest into that? 14:16 – Guest: Less than a week; maybe 3-4 days for the whole process. Writing the article took about 2 days. 14:50 – Chuck talks about Docker, Azure, Dokku among other things. Question: Where do you look at all of these different things, and how do evaluate? 16:02 – Guest: I am a huge Heroku fan, and I would suggest people to use it. It’s brilliant. The company I work today it could be expensive to use b/c it’s a heavy load application and it won’t work. As for me (personal projects) I will play around these different tools. 19:02 – Panel: It’s easy to get up and running of Heroku. I think it’s similar to Kubernetes. 20:00 – Guest: I agree with that. The guest shares a story that relates to this topic. 21:45 – Panel: If you are using self-hosted...put some security on your application. Even if it’s just a demo you are protecting your environment. 22:17 – Chuck: Where do you guys come down on making these types of decisions? 22:30 – Panel: I see it as an investment; especially if your development team is small. Eventually, it will scale but in the early days of a project it is a legit choice to use Heroku or Beanstalk. CodeFund is still on Heroku. Right now it’s solving those problems for us. 23:45 – Chuck: Look at everything that we are all running. What do you guys recommend? 24:19 – Panel: I use S3, elastic search, among other things. 25:56 – Guest: I have a similar story. I had some friends who were spending more than $2,000 a month on Heroku. We tried to find how to reduce the amount of money. We removed the application from the Heroku and put it inside a local machine (probably $800 computer) that runs 24/7 and the only expenses were Internet ($50.00 / month) and 1 SSD ($100) and 1 micro-server through Amazon. Now it works and we were spending over 200x the amount that we needed to. In this example it wasn’t a critical system. In this case self-host was far better and cheaper, so it really depends on your case. 28:08 – Panel: Yeah, sometimes the old school and simple solutions are it. 28:26 – Chuck: I have a virtual machine/servers on Digital Ocean, and I cap deploy. I will login in every-now-and-then, but that’s it. 28:50 – Panel adds in his comments to this topic. 29:17 – Guest: Sometimes these old school solutions tend to be slower, but it depends on what you need for that situation. 29:50 – Chuck: David Brady called that his “Time to Twitter.” 30:04 – Fresh Books! 31:10 – Chuck: Can you talk about your discussion about this, please? 31:23 – Guest: I wrote this article, and it was translated into a few different languages. In the talk that I gave, I talked about my article. It’s funny b/c I wasn’t expecting all of this attention. 33:33 – Guest: I was nervous when I gave the talk so I don’t think it was that good. (Laughs.) 33:50 – Guest: We are human beings and we are always making mistakes, which is okay. 36:55 – Chuck: Yeah I run into that, too. Especially when running the podcast. 37:14 – Guest: That’s apart of the game right? We like to play with new technologies and if it weren’t for experimenting with new stuff our whole industry wouldn’t be as fun. We have the freedom to test, and we get to break tings and not get fired. That’s apart of our jobs. 37:51 – Panel: That’s a good point. A service like beanstalk or Heroku it’s easy to push your app out into the world. But when you dig in deeper, I think that knowledge really starts to seep in and you get to be a better developer. 38:27 – Chuck comments on this topic. 39:12 – Panel: To Pedro’s point... 39:42 – Guest: Yes, we work as a frontend or backend developer or a system administrator, but we need to understand the infrastructure. I want to know and when I know more then my work as a backend developer will improve and communicate with the system. That people know how to use Ruby on Rails and they get used to it but forget about database behind that, and...where you can write your own inquires. They think it’s not their job, but it IS their job. 41:17 – Chuck: To take that step one step further. Chuck talks about performance issues, codes, and more. 41:48 – Chuck: I want to try out Dokku! 42:00 – Guest comments. 43:53 – Chuck: Let’s do Picks! 44:00 – Advertisement: Get A Coder Job! End – Cache Fly! Links: Get a Coder Job Course Ruby Ruby on Rails Angular React React Native Docker Kubernetes Heroku Beanstalk CodeFund Amazon S3 GitHub: Kubernetes IMDB – Pedro C. FB: RR – DevChat TV RR 382 Episode Pedro’s blog article: “Creating a Heroku-Like Deployment Solution with Docker” Comic of Code Compiling GitHub: Dokku/Dokku Digital Ocean: Dokku Digital Ocean: Cloud Hosting App Developers Love Pedro’s Website Pedro’s Twitter Pedro’s Crunchbase Pedro’s GitHub Sponsors: Sentry CacheFly Fresh Books Picks: Dave Legos Rubix’s Cube Eric Digital Ocean @samantha_tse @jna_sh @Zaltsman Nate Alone - History Channel Charles MF CEO - Podcast Extreme Ownership - Book Drip TheDevRev.com Pedro Di.FM Shortcut Foo
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
Panel: Dave Kimura Eric Berry Charles Max Wood Nate Hopkins Special Guest: Pedro Cavalheiro In this episode of Ruby Rogues, the panelists talk with Pedro Cavalheiro who is from Brazil, but currently resides in Hamburg, Germany where he works at Xing. He is a software engineer, an actor, and has been working with the web since 2010. He has worked mostly with Ruby and PHP languages, and since 2015 has worked full-time with Ruby on Rails. The panelists and Pedro talk about his background and his article. Check it out! Show Topics: 0:00 – Advertisement: Sentry.io 1:04 – Chuck: Hi! Panel is Eric, Dave, Nate, myself – and our special guest is Pedro Cavalheiro! Please introduce yourself! Is that Spanish or Portuguese? Chuck: P.S. – The DevRev is my new show and check it! 1:57 – Guest: My name means gentleman! Here at your service. 2:05 – Guest: I am a developer and worked with web technologies for 10 years. I do some DevOps stuff and working with Ruby. I just moved to Hamburg, Germany with the same company. 3:02 – Chuck: How do you make that decision? 3:07 – Guest: There is no magical answer. It depends on your needs and what time you have? At the time when I wrote that article I worked with a small startup company. For us, we used Heroku at the time. 4:09 – Guest: Current company is bigger and 500 developers. We have different ops teams and they have their own infrastructure and tools. They have more money, time, and people. For what they need it needs to be more scalable. It depends on the company and the requirements and your resources. 5:00 – Panel: I need to preface first: I love hosted solutions, but at the same time there is a hidden cost set that people don’t think about. 6:16 – Guest: If you compare your own infrastructure vs. cloud platform they will think that it is cheaper than having a hosted solution. 7:28 – Chuck: Yeah, that’s a discussion that I find that I have with myself and with my own company. It makes a ton of sense to have some system setup and it’s something that I am managing. 8:05 – Panelists talks about AWS and AMI. 9:06 – Guest. 9:21 – Panel: Can you talk about the article you wrote? Why did you write it? Give us some context into the article and where are we now? 9:48 – Guest talks in-detail about his article and where he was in life when he wrote this article! 14:10 – Panel: How much time did you invest into that? 14:16 – Guest: Less than a week; maybe 3-4 days for the whole process. Writing the article took about 2 days. 14:50 – Chuck talks about Docker, Azure, Dokku among other things. Question: Where do you look at all of these different things, and how do evaluate? 16:02 – Guest: I am a huge Heroku fan, and I would suggest people to use it. It’s brilliant. The company I work today it could be expensive to use b/c it’s a heavy load application and it won’t work. As for me (personal projects) I will play around these different tools. 19:02 – Panel: It’s easy to get up and running of Heroku. I think it’s similar to Kubernetes. 20:00 – Guest: I agree with that. The guest shares a story that relates to this topic. 21:45 – Panel: If you are using self-hosted...put some security on your application. Even if it’s just a demo you are protecting your environment. 22:17 – Chuck: Where do you guys come down on making these types of decisions? 22:30 – Panel: I see it as an investment; especially if your development team is small. Eventually, it will scale but in the early days of a project it is a legit choice to use Heroku or Beanstalk. CodeFund is still on Heroku. Right now it’s solving those problems for us. 23:45 – Chuck: Look at everything that we are all running. What do you guys recommend? 24:19 – Panel: I use S3, elastic search, among other things. 25:56 – Guest: I have a similar story. I had some friends who were spending more than $2,000 a month on Heroku. We tried to find how to reduce the amount of money. We removed the application from the Heroku and put it inside a local machine (probably $800 computer) that runs 24/7 and the only expenses were Internet ($50.00 / month) and 1 SSD ($100) and 1 micro-server through Amazon. Now it works and we were spending over 200x the amount that we needed to. In this example it wasn’t a critical system. In this case self-host was far better and cheaper, so it really depends on your case. 28:08 – Panel: Yeah, sometimes the old school and simple solutions are it. 28:26 – Chuck: I have a virtual machine/servers on Digital Ocean, and I cap deploy. I will login in every-now-and-then, but that’s it. 28:50 – Panel adds in his comments to this topic. 29:17 – Guest: Sometimes these old school solutions tend to be slower, but it depends on what you need for that situation. 29:50 – Chuck: David Brady called that his “Time to Twitter.” 30:04 – Fresh Books! 31:10 – Chuck: Can you talk about your discussion about this, please? 31:23 – Guest: I wrote this article, and it was translated into a few different languages. In the talk that I gave, I talked about my article. It’s funny b/c I wasn’t expecting all of this attention. 33:33 – Guest: I was nervous when I gave the talk so I don’t think it was that good. (Laughs.) 33:50 – Guest: We are human beings and we are always making mistakes, which is okay. 36:55 – Chuck: Yeah I run into that, too. Especially when running the podcast. 37:14 – Guest: That’s apart of the game right? We like to play with new technologies and if it weren’t for experimenting with new stuff our whole industry wouldn’t be as fun. We have the freedom to test, and we get to break tings and not get fired. That’s apart of our jobs. 37:51 – Panel: That’s a good point. A service like beanstalk or Heroku it’s easy to push your app out into the world. But when you dig in deeper, I think that knowledge really starts to seep in and you get to be a better developer. 38:27 – Chuck comments on this topic. 39:12 – Panel: To Pedro’s point... 39:42 – Guest: Yes, we work as a frontend or backend developer or a system administrator, but we need to understand the infrastructure. I want to know and when I know more then my work as a backend developer will improve and communicate with the system. That people know how to use Ruby on Rails and they get used to it but forget about database behind that, and...where you can write your own inquires. They think it’s not their job, but it IS their job. 41:17 – Chuck: To take that step one step further. Chuck talks about performance issues, codes, and more. 41:48 – Chuck: I want to try out Dokku! 42:00 – Guest comments. 43:53 – Chuck: Let’s do Picks! 44:00 – Advertisement: Get A Coder Job! End – Cache Fly! Links: Get a Coder Job Course Ruby Ruby on Rails Angular React React Native Docker Kubernetes Heroku Beanstalk CodeFund Amazon S3 GitHub: Kubernetes IMDB – Pedro C. FB: RR – DevChat TV RR 382 Episode Pedro’s blog article: “Creating a Heroku-Like Deployment Solution with Docker” Comic of Code Compiling GitHub: Dokku/Dokku Digital Ocean: Dokku Digital Ocean: Cloud Hosting App Developers Love Pedro’s Website Pedro’s Twitter Pedro’s Crunchbase Pedro’s GitHub Sponsors: Sentry CacheFly Fresh Books Picks: Dave Legos Rubix’s Cube Eric Digital Ocean @samantha_tse @jna_sh @Zaltsman Nate Alone - History Channel Charles MF CEO - Podcast Extreme Ownership - Book Drip TheDevRev.com Pedro Di.FM Shortcut Foo
Panel: Charles Max Wood Aaron Frost Shai Reznik Divya Sasidharan Joe Eames Lucas Reis Special Guest: Sean Merron In this episode, The panelist of Adventure In Angular, View on Vue, React Round-Up, and 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
Panel: David Kimura Eric Berry In this episode of Ruby Rogues, the panelists talk amongst themselves about their favorite software, equipment, and apps. Both Eric and David thoroughly share their preferred picks within these categories, and they explain how and why they use the specified item. Check out today’s episode to hear more! Show Topics: 0:00 – Advertisement: Sentry.io 1:03 – David: Welcome! Today, Chuck is not feeling well. I am David and today we have Eric Berry on our panel today. It is just the two of us today. I want to talk about our development environment. What is your setup like? Do you have an office space and your hardware? 1:58 – Eric: I Have a room in my basement that has everything that I need. I do work from home. There is my guitar, my geek toys and more. For my hardware I am using 2017 MacBook Pro (16 GB of ram). The 13-inch is convenient, but I upgraded b/c I do a lot of traveling. I do pull the iPad out and use DUET. You no longer have to use a cord. I have a monitor that is 30-inches and it’s gorgeous. That is my hardware setup. I am not a mechanical keyboard guy, and I stick with the Apple super flat keyboard. I do use Bestand – it’s a holster for the keyboard and the track pad. What do you have? 4:35 – David: I have a Frankenstein setup. My needs change, over time, and when that changes my hardware changes. Back in the day I did not have a Mac and I used a Windows machine. I used to be a gamer, but then met my wife and then stopped b/c she didn’t like for me to waste time. My setup is more proper. I have a baseline iMac Pro b/c there was a great deal of $1,000 off. The other option was an iMac. I like the desktop b/c that’s where I do work – at home. It was a $4,000 investment. I am on my computer ALL the time it was worth it to me. I got the wall-mount for me, and I have more monitors wall-mounted, too. 8:00 – David: That is my monitor and computer setup. I have an eco-rhythmic keyboard b/c of childhood injuries. I have a really old Microsoft keyboard from 2005 something. It was cheap but I like the style of it. For my mouse I have a Logitech mouse. I love the feel of this thing. It has a side scroll left and right, and up and down. Especially when I am looking at code. It helps with my video editing, too. My mouse is my favorite to-date. I don’t have too much plugged into the Mac. I have a GoDrive, which has everything on it – my whole life’s work is on there. If there is ever an emergency I know to grab that. Back things up in case of an emergency would be my tips to you all. 11:40 – Eric: I have struggled with backing things up actually. The problem that I have is that I am constantly moving my laptop. I have this guilt and fear of doing it wrong. 12:33 – David: I have this work laptop – I don’t back that up every day. David gives Eric his suggestions in regards to backing files up. David mentions Back Blaze. 14:05 – Eric: That makes sense. I live in the Apple eco-system. I have my phone, watch, 40 iPads, laptop – everything backs up to the Cloud. The date we are recording this is 10/30/18. Apple just announced a new upgrade. I feel like this could compete with an actual laptop computer. Eric asks David a question. 15:35 – David: ...My main problem with that is that you might already have a developmental machine. It’s a stationary computer then it’s not feasible to take on the go. I do have an iPad Pro and I will take that on the go. I can login to my home network. BLINK – I used on my iPad Pro. David continues to talk about his setup. 19:00 – Eric: I kind of agree with you. I have seen it used quite a bit. My brother does everything online for his job. The pros are that if you are training, and his company is configured that way. The pros is that you can code from anywhere on anyone’s computer. I am glad that it DOES exist. It’s not Cloud9 but someone does offer... 20:20 – David: I think going to a solo screen does hurt my productivity – working on the iPad vs. working on the computer. I could get faster and faster but only to a certain degree. If you have the resources – then I don’t think it’s sustainable. However, if you don’t have the resources it’s better than nothing. At least you are coding and that’s important. 22:15 – Eric: I think of the audience we cater to with Ruby Rogues. I wonder if our listeners are strapped for cash or if they do have the resources to get the job done? 22:48 – David: If you don’t have a lot of money, you don’t have to buy a Mac. If Cloud hosting isn’t your thing there are different options. You have DOCKER, and use Windows as your main editor, and the WSL. I wanted to do a test – I bout a laptop for $500-$700 and you can get away with doing what you need to do. Learning how to program and code with what you have is great! 25:00 – Advertisement – Fresh Books! 26:05 – Eric: Let’s talk about the software developer environment. Nate Hopkins isn’t on today, but you can’t change his mind – I am VEM all the way. I think Cuck is EMAX. 26:43 – Eric: What do you do? 26:45 – David: I use VS code. David talks about the benefits of using VS code. 27:37 – Eric: Yes, 100%. I met the lead engineer behind VS code. They just made a new announcement. I have been using VS code for quite a while now. The integrated terminal and other features are awesome. Pulling me out of Sublime Text was a really, really hard thing for me. 29:28 – David: Sublime text, yes, but I got tired of the 40-year long beta, and the lack of expanding it, too. VS code has won my heart over. 30:53 – Eric: My guess is that they are going to leave it alone. I am sure they will connect the 2 teams. Think of how much work has gone into ATOM. That would be a hard pill to swallow. 31:20 – David: At the end of the day, though, it is a company. You don’t need 2 different editors when they do the same thing. 31:40 – Eric: I would have to disagree with you. Maybe they won’t merge the 2 but they just become different between ATOM (React and React Native) and... 32:22 – David: Why would a company cancel something only have 1 season? (Clears throat...Fox!) 32:58 – Eric: I open very large files with Sublime. Sublime handles this very easily. This goes back to: why am I opening up very large files? 33:31 – David: It’s a log file don’t lie. 33:40 – David: What browser do you use? Safari? 34:03 – Eric: Safari is nice for non-developers. Safari is lightweight and very fast. I have been a browser whore. I go from bedroom to bedroom from Opera to Firefox to Chrome. I fall into the Chrome field though. I have a problem with Chrome, though, and that it knows me too well. Google can sell my data and they do. 37:14 – David: With BRAVE, weren’t they doing something with the block chain and bit coin to reward you for browsing? 37:38 – Eric: Yeah I think that’s being run by... 38:03 – David: I still use CHROME b/c I like the extensions. It’s important to know why you are picking a certain browser. When you are talking about development you need to know who your target audience is. What kind of apps do you use? 39:54 – Eric: It’s interesting to see how much traffic the Android Browser gets. You want to switch over to other parts? For my tech software...I use Polymail.io for email. I use THINGS to keep me on-track, I use SLACK, BRAVE BROSWER, iTerm3 and MERT. I use FANTASTICO (calendar), and I use BEAR (for my note taking). What about you? 41:21 – David: I use iTerm3, too. I’m on 3 different Slack channels. I have been using DISCORD. Other tools that I use are SPECTACLE (extension) among others. I try to keep it slim and simple, though. Another one is EasyRez (free download) and you can adjust the screen resolution on your desktop monitors. It’s important to target my audience better. I do like PARALLELS, too. 44:24 – David continues: Screenflow, Apple Motion, and Adobe After Effects CC. 45:04 – Eric: I use 1 PASSWORD and BETA BASE. 46:04 – David: Have you heard of Last Pass? 46:15 – Eric: Oh sure! I have been using though 1 Password and I guess there some loyalty there. 46:54 – David asks Eric a question about 1 Password about pricing. 47:12 – Eric: I want to pay with money than with something else. 47:23 – David: It’s owned by LogMeIn, and they have tons of experience with security. 48:00 – Eric: I am going to put an article here that compares all these different apps so you can see the similarities and differences side-by-side. 48:40 – David: Anything else? Banking passwords? 48:54 – Eric: Nah, I am excited to see where we are. I like Mojave for the desktop but I don’t like it for the constant number of resets that I’ve had to do. I love what I do. 49:34 – David: Yeah, I agree. I haven’t experienced any major setbacks, yet. 49:55 – Picks! 50:03 – Eric: I think this whole episode has been PICKS! 50:15 – Advertisement: Get A Coder Job! End – Cache Fly! Links: Get a Coder Job Course Ruby Rust Ruby Motion Ruby on Rails Angular React React Native Komodo Bestand Duet Atom.io EasyRez Polymail.io Docker Adobe After Effects CC LogMeIn Brave 1 Password iTerm3 VS CODE iPad Pro Last Pass GoDrive Mojave EMAX Back Blaze Discord Sublime Text AWS Cloud9 StatCounter GitHub: Mert Bear App Process.st Pi-Hole Sponsors: Sentry Cache Fly Fresh Books Picks: Dave ProxMox Pi-Hole Eric Open Source Funders
Panel: Aaron Frost Brian Love Special Guest: Amir Tugendhaft In this episode, Aaron and Brian talk with Amir Tugendhaft who is a web developer who is located in Israel. He finds much gratification developing and building things from scratch. Check out today’s episode where Aaron, Brian, and Amir talk about just that. Other topics include UI Design, Flexbox, UX design, PrimeNG, and ag-Grid. Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:52 – Host: Welcome! Today’s panel is myself, Brian, and our guest is Amir Tugendhaft! 1:13 – Guest: I am a developer and experience with Angular and React. 1:56 – Host: You spend your days/nights there? 2:03 – Panel: He is committed. 2:08 – Host: I am going to back up a second, and Brian could you please introduce yourself, please? 2:26 – Brian: I am the CETO at an Angular consulting firm (Denver, CO). We have the pleasure with working with Aaron from time-to-time. My Twitter handle is @brian_love – check it out! 2:52 – Host: What is CETO stand for? 2:59 – Brian answers the question. Brian: I oversee the crew among other things. 3:31 – Host: What do you want to talk about today, Amir? You are the guest of honor today! 3:40 – Guest. 4:00 – Host: That is a lot of information – that might be more than 1 episode. We have to stay focused! 4:14 – Host: I read one of your recent blogs about Cross Filled Violators. I met you through your blog before we did the Host: Give us your own ideas about starting your own app. 4:50 – Guest answers the question. 6:17 – Host: I am biased. But here is a fact. I used to work on a large team (60 people) and everyone committing to the same page app. We were using Angular.js 1.5, which I think they are still using that. I know that it worked but it wasn’t the easiest or fastest one to maintain, but it worked. 7:05 – Brian. 7:10 – Host: What are you trying to do? React doesn’t fulfill that need. I think you are being hyperballic and using extreme cases as the norm. Let’s be honest: we do cool stuff with jQuery plugins when we didn’t have a framework. When they say that the framework is stopping them then I say: I agree to disagree. 8:00 – Host: What do you think, Amir? 8:04 – Guest: I don’t have preferences. I try to build applications through the technologies and create components and simple applications. 8:30 – Brian. 8:33 – Guest: You create the component, and then... 9:21 – Brian: You don’t have to have a template file and another file – right? 9:35 – Guest. 9:48 – Host: I do in-line styles and in-line templates. One thing I learned from React is that I like my HTML, style and code. I like it being the same file as my component. I like that about that: I like single file components. This promotes getting frustrated if it gets too big. Yeah if it’s more than 500 lines than you have to simplify. That’s one of the things that l like. 10:47 – Brian: Modules versus... 10:55 – Guest. 11:07 – Host: I think in React and Vue you have the word module but in JavaScript you have a file that exports... 11:26 – Host: I have my opinion here and talking with Joe. He made a good point: at a certain level the frontend frameworks are the same. You could be doing different things but they basically do the same thing. 13:57 – Guest: Basically what that means is that the technology used it will do the same thing. Your patterns and practices are huge. 14:17 – Brian: If you are talking about the 3 popular frameworks out there – they are basically doing the same thing. I like Angular a little big more, though. Like you said, Aaron, people tend to pick the same one. I like the opinionated things about Angular. You get properties, components or called props or inputs you are getting a lot of the same features. It comes down to your personal preference. 15:31 – Host: What else Amir? 15:35 – Guest: Let’s talk about the UI. 16:05 – Brian. 16:08 – Guest asks a question. 16:25 – Brian: How have you tackled this problem? 16:34 – Guest: I kind of ran with it. If there wasn’t something that I liked I started from scratch, because it really didn’t feel right. 16:51 – Brian: I am an enemy of starting over type of thing. You have a lot of engineers who START projects, and they can say that they start this piece, but the experts and choice team members have what it takes to ship a feature. I mean fully ship it, not just 80%, but also the final 20%. I think it takes a lot of pose decision making to say I want to rewrite it but not right now. I still need to ship this code. I have always been a bigger fan as not rewriting as much as possible; however, if you started with good patterns then that’s true, but if you are starting off with bad patterns then maybe yes. I like that opinion b/c you have to start right. Brian: How do you do your CSS? 19:05 – Guest. 19:52 – Advertisement: Get A Coder Job! 20:30 – Brian: How do you make those decisions, Amir? 20:39 – Guest: I see something that I like and ask myself how do I apply this to my design and I start scaling things. 21:50 – Host: Are you using a tool like Sketch for your initial UI design? 22:05 – Guest. 22:54 – Host: I worked on a project where the client had a designer (UX). 24:00 – Host and Guest go back-and-forth. 24:51 – Host: I am sure it’s all about the quality from your designer, too. Hopefully it works well for you and it’s quality. 25:18 – Host: There is a lot to building an app from scratch. I am not a good designer. I am not a designer – I mean straight-up. I got nothing. I appreciate team members that can do that. 26:06 – Guest: Do you write...? 26:35 – Host: Only on the most recent project. The designer didn’t own the HTML CSS but he initially wrote it and then gave it to me and now I own it, and it’s in components. If he wants updates then I have to go and make changes b/c he doesn’t know Angular. If it’s a sketch or a PNG you have to make it look like that. That’s what most of my career has been. Host: HTML and CSS got me 762x easier once Flexbox came around! I know there is a decimal there! 28:23 – Host talks about Flexbox some more. 28:42 – Guest asks a question. 28:50 – Host: I suppose if I really had heavy needs for a table then I would try CSS grid could solve some problems. I might just use a styled table. 29:12 – Brian: ag-Grid or something else. 29:21 – Host: On this recent project...I’ve used in-house design and other things. If I ever needed a table it was there. I don’t rebuild components b/c that can get expensive for me. 30:50 – Brian: Accessibility. 31:00 – Host: Your upgrade just got 10x harder b/c you own the component loop. I really don’t build tables or drop-downs. Only way is if I really need to build it for a specific request. 31:30 – Brian. 31:58 – Host: Let me give you an example. You can think I am crazy, but a designer gave me a drop-down but he told me to use PrimeNG. I had the chose of building my own drop-down or the designer has to accept whatever they gave him. I made the UI make what he wanted and I made the drop-down zero capacity and then... Host: When you click on what you see you are clicking on the... Host: Does that make sense? 33:35 – Guest. 33:50 – Host. 34:25 – Brian: That is interesting; remember when... 34:58 – Host: We will send this episode to Jeremy – come on Jeremy! Any last ideas? Let’s move onto picks! 35:20 – Advertisement – Fresh Books! 30-day free trial! END – Advertisement – Cache Fly! Links: Vue jQuery Angular React C# What is a UX Design? UI Design Flexbox Sketch ag-Grid PrimeNG Brian Love’s Twitter Aaron Frost’s Medium Amir’s Medium Amir’s Twitter Amir’s GitHub Amir’s LinkedIn Amir’s Facebook Sponsors: Angular Boot Camp Fresh Books Get a Coder Job Course Cache Fly Picks: Aaron Movie: “A Star Is Born” Concept - Model Driven Forms Amir Puppeteer Arrow Function Converter Brian TV Series: “The 100” Angular Schematics
Panel: David Kimura Eric Berry In this episode of Ruby Rogues, the panelists talk amongst themselves about their favorite software, equipment, and apps. Both Eric and David thoroughly share their preferred picks within these categories, and they explain how and why they use the specified item. Check out today’s episode to hear more! Show Topics: 0:00 – Advertisement: Sentry.io 1:03 – David: Welcome! Today, Chuck is not feeling well. I am David and today we have Eric Berry on our panel today. It is just the two of us today. I want to talk about our development environment. What is your setup like? Do you have an office space and your hardware? 1:58 – Eric: I Have a room in my basement that has everything that I need. I do work from home. There is my guitar, my geek toys and more. For my hardware I am using 2017 MacBook Pro (16 GB of ram). The 13-inch is convenient, but I upgraded b/c I do a lot of traveling. I do pull the iPad out and use DUET. You no longer have to use a cord. I have a monitor that is 30-inches and it’s gorgeous. That is my hardware setup. I am not a mechanical keyboard guy, and I stick with the Apple super flat keyboard. I do use Bestand – it’s a holster for the keyboard and the track pad. What do you have? 4:35 – David: I have a Frankenstein setup. My needs change, over time, and when that changes my hardware changes. Back in the day I did not have a Mac and I used a Windows machine. I used to be a gamer, but then met my wife and then stopped b/c she didn’t like for me to waste time. My setup is more proper. I have a baseline iMac Pro b/c there was a great deal of $1,000 off. The other option was an iMac. I like the desktop b/c that’s where I do work – at home. It was a $4,000 investment. I am on my computer ALL the time it was worth it to me. I got the wall-mount for me, and I have more monitors wall-mounted, too. 8:00 – David: That is my monitor and computer setup. I have an eco-rhythmic keyboard b/c of childhood injuries. I have a really old Microsoft keyboard from 2005 something. It was cheap but I like the style of it. For my mouse I have a Logitech mouse. I love the feel of this thing. It has a side scroll left and right, and up and down. Especially when I am looking at code. It helps with my video editing, too. My mouse is my favorite to-date. I don’t have too much plugged into the Mac. I have a GoDrive, which has everything on it – my whole life’s work is on there. If there is ever an emergency I know to grab that. Back things up in case of an emergency would be my tips to you all. 11:40 – Eric: I have struggled with backing things up actually. The problem that I have is that I am constantly moving my laptop. I have this guilt and fear of doing it wrong. 12:33 – David: I have this work laptop – I don’t back that up every day. David gives Eric his suggestions in regards to backing files up. David mentions Back Blaze. 14:05 – Eric: That makes sense. I live in the Apple eco-system. I have my phone, watch, 40 iPads, laptop – everything backs up to the Cloud. The date we are recording this is 10/30/18. Apple just announced a new upgrade. I feel like this could compete with an actual laptop computer. Eric asks David a question. 15:35 – David: ...My main problem with that is that you might already have a developmental machine. It’s a stationary computer then it’s not feasible to take on the go. I do have an iPad Pro and I will take that on the go. I can login to my home network. BLINK – I used on my iPad Pro. David continues to talk about his setup. 19:00 – Eric: I kind of agree with you. I have seen it used quite a bit. My brother does everything online for his job. The pros are that if you are training, and his company is configured that way. The pros is that you can code from anywhere on anyone’s computer. I am glad that it DOES exist. It’s not Cloud9 but someone does offer... 20:20 – David: I think going to a solo screen does hurt my productivity – working on the iPad vs. working on the computer. I could get faster and faster but only to a certain degree. If you have the resources – then I don’t think it’s sustainable. However, if you don’t have the resources it’s better than nothing. At least you are coding and that’s important. 22:15 – Eric: I think of the audience we cater to with Ruby Rogues. I wonder if our listeners are strapped for cash or if they do have the resources to get the job done? 22:48 – David: If you don’t have a lot of money, you don’t have to buy a Mac. If Cloud hosting isn’t your thing there are different options. You have DOCKER, and use Windows as your main editor, and the WSL. I wanted to do a test – I bout a laptop for $500-$700 and you can get away with doing what you need to do. Learning how to program and code with what you have is great! 25:00 – Advertisement – Fresh Books! 26:05 – Eric: Let’s talk about the software developer environment. Nate Hopkins isn’t on today, but you can’t change his mind – I am VEM all the way. I think Cuck is EMAX. 26:43 – Eric: What do you do? 26:45 – David: I use VS code. David talks about the benefits of using VS code. 27:37 – Eric: Yes, 100%. I met the lead engineer behind VS code. They just made a new announcement. I have been using VS code for quite a while now. The integrated terminal and other features are awesome. Pulling me out of Sublime Text was a really, really hard thing for me. 29:28 – David: Sublime text, yes, but I got tired of the 40-year long beta, and the lack of expanding it, too. VS code has won my heart over. 30:53 – Eric: My guess is that they are going to leave it alone. I am sure they will connect the 2 teams. Think of how much work has gone into ATOM. That would be a hard pill to swallow. 31:20 – David: At the end of the day, though, it is a company. You don’t need 2 different editors when they do the same thing. 31:40 – Eric: I would have to disagree with you. Maybe they won’t merge the 2 but they just become different between ATOM (React and React Native) and... 32:22 – David: Why would a company cancel something only have 1 season? (Clears throat...Fox!) 32:58 – Eric: I open very large files with Sublime. Sublime handles this very easily. This goes back to: why am I opening up very large files? 33:31 – David: It’s a log file don’t lie. 33:40 – David: What browser do you use? Safari? 34:03 – Eric: Safari is nice for non-developers. Safari is lightweight and very fast. I have been a browser whore. I go from bedroom to bedroom from Opera to Firefox to Chrome. I fall into the Chrome field though. I have a problem with Chrome, though, and that it knows me too well. Google can sell my data and they do. 37:14 – David: With BRAVE, weren’t they doing something with the block chain and bit coin to reward you for browsing? 37:38 – Eric: Yeah I think that’s being run by... 38:03 – David: I still use CHROME b/c I like the extensions. It’s important to know why you are picking a certain browser. When you are talking about development you need to know who your target audience is. What kind of apps do you use? 39:54 – Eric: It’s interesting to see how much traffic the Android Browser gets. You want to switch over to other parts? For my tech software...I use Polymail.io for email. I use THINGS to keep me on-track, I use SLACK, BRAVE BROSWER, iTerm3 and MERT. I use FANTASTICO (calendar), and I use BEAR (for my note taking). What about you? 41:21 – David: I use iTerm3, too. I’m on 3 different Slack channels. I have been using DISCORD. Other tools that I use are SPECTACLE (extension) among others. I try to keep it slim and simple, though. Another one is EasyRez (free download) and you can adjust the screen resolution on your desktop monitors. It’s important to target my audience better. I do like PARALLELS, too. 44:24 – David continues: Screenflow, Apple Motion, and Adobe After Effects CC. 45:04 – Eric: I use 1 PASSWORD and BETA BASE. 46:04 – David: Have you heard of Last Pass? 46:15 – Eric: Oh sure! I have been using though 1 Password and I guess there some loyalty there. 46:54 – David asks Eric a question about 1 Password about pricing. 47:12 – Eric: I want to pay with money than with something else. 47:23 – David: It’s owned by LogMeIn, and they have tons of experience with security. 48:00 – Eric: I am going to put an article here that compares all these different apps so you can see the similarities and differences side-by-side. 48:40 – David: Anything else? Banking passwords? 48:54 – Eric: Nah, I am excited to see where we are. I like Mojave for the desktop but I don’t like it for the constant number of resets that I’ve had to do. I love what I do. 49:34 – David: Yeah, I agree. I haven’t experienced any major setbacks, yet. 49:55 – Picks! 50:03 – Eric: I think this whole episode has been PICKS! 50:15 – Advertisement: Get A Coder Job! End – Cache Fly! Links: Get a Coder Job Course Ruby Rust Ruby Motion Ruby on Rails Angular React React Native Komodo Bestand Duet Atom.io EasyRez Polymail.io Docker Adobe After Effects CC LogMeIn Brave 1 Password iTerm3 VS CODE iPad Pro Last Pass GoDrive Mojave EMAX Back Blaze Discord Sublime Text AWS Cloud9 StatCounter GitHub: Mert Bear App Process.st Pi-Hole Sponsors: Sentry Cache Fly Fresh Books Picks: Dave ProxMox Pi-Hole Eric Open Source Funders
Panel: Aaron Frost Brian Love Special Guest: Amir Tugendhaft In this episode, Aaron and Brian talk with Amir Tugendhaft who is a web developer who is located in Israel. He finds much gratification developing and building things from scratch. Check out today’s episode where Aaron, Brian, and Amir talk about just that. Other topics include UI Design, Flexbox, UX design, PrimeNG, and ag-Grid. Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:52 – Host: Welcome! Today’s panel is myself, Brian, and our guest is Amir Tugendhaft! 1:13 – Guest: I am a developer and experience with Angular and React. 1:56 – Host: You spend your days/nights there? 2:03 – Panel: He is committed. 2:08 – Host: I am going to back up a second, and Brian could you please introduce yourself, please? 2:26 – Brian: I am the CETO at an Angular consulting firm (Denver, CO). We have the pleasure with working with Aaron from time-to-time. My Twitter handle is @brian_love – check it out! 2:52 – Host: What is CETO stand for? 2:59 – Brian answers the question. Brian: I oversee the crew among other things. 3:31 – Host: What do you want to talk about today, Amir? You are the guest of honor today! 3:40 – Guest. 4:00 – Host: That is a lot of information – that might be more than 1 episode. We have to stay focused! 4:14 – Host: I read one of your recent blogs about Cross Filled Violators. I met you through your blog before we did the Host: Give us your own ideas about starting your own app. 4:50 – Guest answers the question. 6:17 – Host: I am biased. But here is a fact. I used to work on a large team (60 people) and everyone committing to the same page app. We were using Angular.js 1.5, which I think they are still using that. I know that it worked but it wasn’t the easiest or fastest one to maintain, but it worked. 7:05 – Brian. 7:10 – Host: What are you trying to do? React doesn’t fulfill that need. I think you are being hyperballic and using extreme cases as the norm. Let’s be honest: we do cool stuff with jQuery plugins when we didn’t have a framework. When they say that the framework is stopping them then I say: I agree to disagree. 8:00 – Host: What do you think, Amir? 8:04 – Guest: I don’t have preferences. I try to build applications through the technologies and create components and simple applications. 8:30 – Brian. 8:33 – Guest: You create the component, and then... 9:21 – Brian: You don’t have to have a template file and another file – right? 9:35 – Guest. 9:48 – Host: I do in-line styles and in-line templates. One thing I learned from React is that I like my HTML, style and code. I like it being the same file as my component. I like that about that: I like single file components. This promotes getting frustrated if it gets too big. Yeah if it’s more than 500 lines than you have to simplify. That’s one of the things that l like. 10:47 – Brian: Modules versus... 10:55 – Guest. 11:07 – Host: I think in React and Vue you have the word module but in JavaScript you have a file that exports... 11:26 – Host: I have my opinion here and talking with Joe. He made a good point: at a certain level the frontend frameworks are the same. You could be doing different things but they basically do the same thing. 13:57 – Guest: Basically what that means is that the technology used it will do the same thing. Your patterns and practices are huge. 14:17 – Brian: If you are talking about the 3 popular frameworks out there – they are basically doing the same thing. I like Angular a little big more, though. Like you said, Aaron, people tend to pick the same one. I like the opinionated things about Angular. You get properties, components or called props or inputs you are getting a lot of the same features. It comes down to your personal preference. 15:31 – Host: What else Amir? 15:35 – Guest: Let’s talk about the UI. 16:05 – Brian. 16:08 – Guest asks a question. 16:25 – Brian: How have you tackled this problem? 16:34 – Guest: I kind of ran with it. If there wasn’t something that I liked I started from scratch, because it really didn’t feel right. 16:51 – Brian: I am an enemy of starting over type of thing. You have a lot of engineers who START projects, and they can say that they start this piece, but the experts and choice team members have what it takes to ship a feature. I mean fully ship it, not just 80%, but also the final 20%. I think it takes a lot of pose decision making to say I want to rewrite it but not right now. I still need to ship this code. I have always been a bigger fan as not rewriting as much as possible; however, if you started with good patterns then that’s true, but if you are starting off with bad patterns then maybe yes. I like that opinion b/c you have to start right. Brian: How do you do your CSS? 19:05 – Guest. 19:52 – Advertisement: Get A Coder Job! 20:30 – Brian: How do you make those decisions, Amir? 20:39 – Guest: I see something that I like and ask myself how do I apply this to my design and I start scaling things. 21:50 – Host: Are you using a tool like Sketch for your initial UI design? 22:05 – Guest. 22:54 – Host: I worked on a project where the client had a designer (UX). 24:00 – Host and Guest go back-and-forth. 24:51 – Host: I am sure it’s all about the quality from your designer, too. Hopefully it works well for you and it’s quality. 25:18 – Host: There is a lot to building an app from scratch. I am not a good designer. I am not a designer – I mean straight-up. I got nothing. I appreciate team members that can do that. 26:06 – Guest: Do you write...? 26:35 – Host: Only on the most recent project. The designer didn’t own the HTML CSS but he initially wrote it and then gave it to me and now I own it, and it’s in components. If he wants updates then I have to go and make changes b/c he doesn’t know Angular. If it’s a sketch or a PNG you have to make it look like that. That’s what most of my career has been. Host: HTML and CSS got me 762x easier once Flexbox came around! I know there is a decimal there! 28:23 – Host talks about Flexbox some more. 28:42 – Guest asks a question. 28:50 – Host: I suppose if I really had heavy needs for a table then I would try CSS grid could solve some problems. I might just use a styled table. 29:12 – Brian: ag-Grid or something else. 29:21 – Host: On this recent project...I’ve used in-house design and other things. If I ever needed a table it was there. I don’t rebuild components b/c that can get expensive for me. 30:50 – Brian: Accessibility. 31:00 – Host: Your upgrade just got 10x harder b/c you own the component loop. I really don’t build tables or drop-downs. Only way is if I really need to build it for a specific request. 31:30 – Brian. 31:58 – Host: Let me give you an example. You can think I am crazy, but a designer gave me a drop-down but he told me to use PrimeNG. I had the chose of building my own drop-down or the designer has to accept whatever they gave him. I made the UI make what he wanted and I made the drop-down zero capacity and then... Host: When you click on what you see you are clicking on the... Host: Does that make sense? 33:35 – Guest. 33:50 – Host. 34:25 – Brian: That is interesting; remember when... 34:58 – Host: We will send this episode to Jeremy – come on Jeremy! Any last ideas? Let’s move onto picks! 35:20 – Advertisement – Fresh Books! 30-day free trial! END – Advertisement – Cache Fly! Links: Vue jQuery Angular React C# What is a UX Design? UI Design Flexbox Sketch ag-Grid PrimeNG Brian Love’s Twitter Aaron Frost’s Medium Amir’s Medium Amir’s Twitter Amir’s GitHub Amir’s LinkedIn Amir’s Facebook Sponsors: Angular Boot Camp Fresh Books Get a Coder Job Course Cache Fly Picks: Aaron Movie: “A Star Is Born” Concept - Model Driven Forms Amir Puppeteer Arrow Function Converter Brian TV Series: “The 100” Angular Schematics
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
Panel: David Kimura Eric Berry In this episode of Ruby Rogues, the panelists talk amongst themselves about their favorite software, equipment, and apps. Both Eric and David thoroughly share their preferred picks within these categories, and they explain how and why they use the specified item. Check out today’s episode to hear more! Show Topics: 0:00 – Advertisement: Sentry.io 1:03 – David: Welcome! Today, Chuck is not feeling well. I am David and today we have Eric Berry on our panel today. It is just the two of us today. I want to talk about our development environment. What is your setup like? Do you have an office space and your hardware? 1:58 – Eric: I Have a room in my basement that has everything that I need. I do work from home. There is my guitar, my geek toys and more. For my hardware I am using 2017 MacBook Pro (16 GB of ram). The 13-inch is convenient, but I upgraded b/c I do a lot of traveling. I do pull the iPad out and use DUET. You no longer have to use a cord. I have a monitor that is 30-inches and it’s gorgeous. That is my hardware setup. I am not a mechanical keyboard guy, and I stick with the Apple super flat keyboard. I do use Bestand – it’s a holster for the keyboard and the track pad. What do you have? 4:35 – David: I have a Frankenstein setup. My needs change, over time, and when that changes my hardware changes. Back in the day I did not have a Mac and I used a Windows machine. I used to be a gamer, but then met my wife and then stopped b/c she didn’t like for me to waste time. My setup is more proper. I have a baseline iMac Pro b/c there was a great deal of $1,000 off. The other option was an iMac. I like the desktop b/c that’s where I do work – at home. It was a $4,000 investment. I am on my computer ALL the time it was worth it to me. I got the wall-mount for me, and I have more monitors wall-mounted, too. 8:00 – David: That is my monitor and computer setup. I have an eco-rhythmic keyboard b/c of childhood injuries. I have a really old Microsoft keyboard from 2005 something. It was cheap but I like the style of it. For my mouse I have a Logitech mouse. I love the feel of this thing. It has a side scroll left and right, and up and down. Especially when I am looking at code. It helps with my video editing, too. My mouse is my favorite to-date. I don’t have too much plugged into the Mac. I have a GoDrive, which has everything on it – my whole life’s work is on there. If there is ever an emergency I know to grab that. Back things up in case of an emergency would be my tips to you all. 11:40 – Eric: I have struggled with backing things up actually. The problem that I have is that I am constantly moving my laptop. I have this guilt and fear of doing it wrong. 12:33 – David: I have this work laptop – I don’t back that up every day. David gives Eric his suggestions in regards to backing files up. David mentions Back Blaze. 14:05 – Eric: That makes sense. I live in the Apple eco-system. I have my phone, watch, 40 iPads, laptop – everything backs up to the Cloud. The date we are recording this is 10/30/18. Apple just announced a new upgrade. I feel like this could compete with an actual laptop computer. Eric asks David a question. 15:35 – David: ...My main problem with that is that you might already have a developmental machine. It’s a stationary computer then it’s not feasible to take on the go. I do have an iPad Pro and I will take that on the go. I can login to my home network. BLINK – I used on my iPad Pro. David continues to talk about his setup. 19:00 – Eric: I kind of agree with you. I have seen it used quite a bit. My brother does everything online for his job. The pros are that if you are training, and his company is configured that way. The pros is that you can code from anywhere on anyone’s computer. I am glad that it DOES exist. It’s not Cloud9 but someone does offer... 20:20 – David: I think going to a solo screen does hurt my productivity – working on the iPad vs. working on the computer. I could get faster and faster but only to a certain degree. If you have the resources – then I don’t think it’s sustainable. However, if you don’t have the resources it’s better than nothing. At least you are coding and that’s important. 22:15 – Eric: I think of the audience we cater to with Ruby Rogues. I wonder if our listeners are strapped for cash or if they do have the resources to get the job done? 22:48 – David: If you don’t have a lot of money, you don’t have to buy a Mac. If Cloud hosting isn’t your thing there are different options. You have DOCKER, and use Windows as your main editor, and the WSL. I wanted to do a test – I bout a laptop for $500-$700 and you can get away with doing what you need to do. Learning how to program and code with what you have is great! 25:00 – Advertisement – Fresh Books! 26:05 – Eric: Let’s talk about the software developer environment. Nate Hopkins isn’t on today, but you can’t change his mind – I am VEM all the way. I think Cuck is EMAX. 26:43 – Eric: What do you do? 26:45 – David: I use VS code. David talks about the benefits of using VS code. 27:37 – Eric: Yes, 100%. I met the lead engineer behind VS code. They just made a new announcement. I have been using VS code for quite a while now. The integrated terminal and other features are awesome. Pulling me out of Sublime Text was a really, really hard thing for me. 29:28 – David: Sublime text, yes, but I got tired of the 40-year long beta, and the lack of expanding it, too. VS code has won my heart over. 30:53 – Eric: My guess is that they are going to leave it alone. I am sure they will connect the 2 teams. Think of how much work has gone into ATOM. That would be a hard pill to swallow. 31:20 – David: At the end of the day, though, it is a company. You don’t need 2 different editors when they do the same thing. 31:40 – Eric: I would have to disagree with you. Maybe they won’t merge the 2 but they just become different between ATOM (React and React Native) and... 32:22 – David: Why would a company cancel something only have 1 season? (Clears throat...Fox!) 32:58 – Eric: I open very large files with Sublime. Sublime handles this very easily. This goes back to: why am I opening up very large files? 33:31 – David: It’s a log file don’t lie. 33:40 – David: What browser do you use? Safari? 34:03 – Eric: Safari is nice for non-developers. Safari is lightweight and very fast. I have been a browser whore. I go from bedroom to bedroom from Opera to Firefox to Chrome. I fall into the Chrome field though. I have a problem with Chrome, though, and that it knows me too well. Google can sell my data and they do. 37:14 – David: With BRAVE, weren’t they doing something with the block chain and bit coin to reward you for browsing? 37:38 – Eric: Yeah I think that’s being run by... 38:03 – David: I still use CHROME b/c I like the extensions. It’s important to know why you are picking a certain browser. When you are talking about development you need to know who your target audience is. What kind of apps do you use? 39:54 – Eric: It’s interesting to see how much traffic the Android Browser gets. You want to switch over to other parts? For my tech software...I use Polymail.io for email. I use THINGS to keep me on-track, I use SLACK, BRAVE BROSWER, iTerm3 and MERT. I use FANTASTICO (calendar), and I use BEAR (for my note taking). What about you? 41:21 – David: I use iTerm3, too. I’m on 3 different Slack channels. I have been using DISCORD. Other tools that I use are SPECTACLE (extension) among others. I try to keep it slim and simple, though. Another one is EasyRez (free download) and you can adjust the screen resolution on your desktop monitors. It’s important to target my audience better. I do like PARALLELS, too. 44:24 – David continues: Screenflow, Apple Motion, and Adobe After Effects CC. 45:04 – Eric: I use 1 PASSWORD and BETA BASE. 46:04 – David: Have you heard of Last Pass? 46:15 – Eric: Oh sure! I have been using though 1 Password and I guess there some loyalty there. 46:54 – David asks Eric a question about 1 Password about pricing. 47:12 – Eric: I want to pay with money than with something else. 47:23 – David: It’s owned by LogMeIn, and they have tons of experience with security. 48:00 – Eric: I am going to put an article here that compares all these different apps so you can see the similarities and differences side-by-side. 48:40 – David: Anything else? Banking passwords? 48:54 – Eric: Nah, I am excited to see where we are. I like Mojave for the desktop but I don’t like it for the constant number of resets that I’ve had to do. I love what I do. 49:34 – David: Yeah, I agree. I haven’t experienced any major setbacks, yet. 49:55 – Picks! 50:03 – Eric: I think this whole episode has been PICKS! 50:15 – Advertisement: Get A Coder Job! End – Cache Fly! Links: Get a Coder Job Course Ruby Rust Ruby Motion Ruby on Rails Angular React React Native Komodo Bestand Duet Atom.io EasyRez Polymail.io Docker Adobe After Effects CC LogMeIn Brave 1 Password iTerm3 VS CODE iPad Pro Last Pass GoDrive Mojave EMAX Back Blaze Discord Sublime Text AWS Cloud9 StatCounter GitHub: Mert Bear App Process.st Pi-Hole Sponsors: Sentry Cache Fly Fresh Books Picks: Dave ProxMox Pi-Hole Eric Open Source Funders
Panel: Aaron Frost Brian Love Special Guest: Amir Tugendhaft In this episode, Aaron and Brian talk with Amir Tugendhaft who is a web developer who is located in Israel. He finds much gratification developing and building things from scratch. Check out today’s episode where Aaron, Brian, and Amir talk about just that. Other topics include UI Design, Flexbox, UX design, PrimeNG, and ag-Grid. Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:52 – Host: Welcome! Today’s panel is myself, Brian, and our guest is Amir Tugendhaft! 1:13 – Guest: I am a developer and experience with Angular and React. 1:56 – Host: You spend your days/nights there? 2:03 – Panel: He is committed. 2:08 – Host: I am going to back up a second, and Brian could you please introduce yourself, please? 2:26 – Brian: I am the CETO at an Angular consulting firm (Denver, CO). We have the pleasure with working with Aaron from time-to-time. My Twitter handle is @brian_love – check it out! 2:52 – Host: What is CETO stand for? 2:59 – Brian answers the question. Brian: I oversee the crew among other things. 3:31 – Host: What do you want to talk about today, Amir? You are the guest of honor today! 3:40 – Guest. 4:00 – Host: That is a lot of information – that might be more than 1 episode. We have to stay focused! 4:14 – Host: I read one of your recent blogs about Cross Filled Violators. I met you through your blog before we did the Host: Give us your own ideas about starting your own app. 4:50 – Guest answers the question. 6:17 – Host: I am biased. But here is a fact. I used to work on a large team (60 people) and everyone committing to the same page app. We were using Angular.js 1.5, which I think they are still using that. I know that it worked but it wasn’t the easiest or fastest one to maintain, but it worked. 7:05 – Brian. 7:10 – Host: What are you trying to do? React doesn’t fulfill that need. I think you are being hyperballic and using extreme cases as the norm. Let’s be honest: we do cool stuff with jQuery plugins when we didn’t have a framework. When they say that the framework is stopping them then I say: I agree to disagree. 8:00 – Host: What do you think, Amir? 8:04 – Guest: I don’t have preferences. I try to build applications through the technologies and create components and simple applications. 8:30 – Brian. 8:33 – Guest: You create the component, and then... 9:21 – Brian: You don’t have to have a template file and another file – right? 9:35 – Guest. 9:48 – Host: I do in-line styles and in-line templates. One thing I learned from React is that I like my HTML, style and code. I like it being the same file as my component. I like that about that: I like single file components. This promotes getting frustrated if it gets too big. Yeah if it’s more than 500 lines than you have to simplify. That’s one of the things that l like. 10:47 – Brian: Modules versus... 10:55 – Guest. 11:07 – Host: I think in React and Vue you have the word module but in JavaScript you have a file that exports... 11:26 – Host: I have my opinion here and talking with Joe. He made a good point: at a certain level the frontend frameworks are the same. You could be doing different things but they basically do the same thing. 13:57 – Guest: Basically what that means is that the technology used it will do the same thing. Your patterns and practices are huge. 14:17 – Brian: If you are talking about the 3 popular frameworks out there – they are basically doing the same thing. I like Angular a little big more, though. Like you said, Aaron, people tend to pick the same one. I like the opinionated things about Angular. You get properties, components or called props or inputs you are getting a lot of the same features. It comes down to your personal preference. 15:31 – Host: What else Amir? 15:35 – Guest: Let’s talk about the UI. 16:05 – Brian. 16:08 – Guest asks a question. 16:25 – Brian: How have you tackled this problem? 16:34 – Guest: I kind of ran with it. If there wasn’t something that I liked I started from scratch, because it really didn’t feel right. 16:51 – Brian: I am an enemy of starting over type of thing. You have a lot of engineers who START projects, and they can say that they start this piece, but the experts and choice team members have what it takes to ship a feature. I mean fully ship it, not just 80%, but also the final 20%. I think it takes a lot of pose decision making to say I want to rewrite it but not right now. I still need to ship this code. I have always been a bigger fan as not rewriting as much as possible; however, if you started with good patterns then that’s true, but if you are starting off with bad patterns then maybe yes. I like that opinion b/c you have to start right. Brian: How do you do your CSS? 19:05 – Guest. 19:52 – Advertisement: Get A Coder Job! 20:30 – Brian: How do you make those decisions, Amir? 20:39 – Guest: I see something that I like and ask myself how do I apply this to my design and I start scaling things. 21:50 – Host: Are you using a tool like Sketch for your initial UI design? 22:05 – Guest. 22:54 – Host: I worked on a project where the client had a designer (UX). 24:00 – Host and Guest go back-and-forth. 24:51 – Host: I am sure it’s all about the quality from your designer, too. Hopefully it works well for you and it’s quality. 25:18 – Host: There is a lot to building an app from scratch. I am not a good designer. I am not a designer – I mean straight-up. I got nothing. I appreciate team members that can do that. 26:06 – Guest: Do you write...? 26:35 – Host: Only on the most recent project. The designer didn’t own the HTML CSS but he initially wrote it and then gave it to me and now I own it, and it’s in components. If he wants updates then I have to go and make changes b/c he doesn’t know Angular. If it’s a sketch or a PNG you have to make it look like that. That’s what most of my career has been. Host: HTML and CSS got me 762x easier once Flexbox came around! I know there is a decimal there! 28:23 – Host talks about Flexbox some more. 28:42 – Guest asks a question. 28:50 – Host: I suppose if I really had heavy needs for a table then I would try CSS grid could solve some problems. I might just use a styled table. 29:12 – Brian: ag-Grid or something else. 29:21 – Host: On this recent project...I’ve used in-house design and other things. If I ever needed a table it was there. I don’t rebuild components b/c that can get expensive for me. 30:50 – Brian: Accessibility. 31:00 – Host: Your upgrade just got 10x harder b/c you own the component loop. I really don’t build tables or drop-downs. Only way is if I really need to build it for a specific request. 31:30 – Brian. 31:58 – Host: Let me give you an example. You can think I am crazy, but a designer gave me a drop-down but he told me to use PrimeNG. I had the chose of building my own drop-down or the designer has to accept whatever they gave him. I made the UI make what he wanted and I made the drop-down zero capacity and then... Host: When you click on what you see you are clicking on the... Host: Does that make sense? 33:35 – Guest. 33:50 – Host. 34:25 – Brian: That is interesting; remember when... 34:58 – Host: We will send this episode to Jeremy – come on Jeremy! Any last ideas? Let’s move onto picks! 35:20 – Advertisement – Fresh Books! 30-day free trial! END – Advertisement – Cache Fly! Links: Vue jQuery Angular React C# What is a UX Design? UI Design Flexbox Sketch ag-Grid PrimeNG Brian Love’s Twitter Aaron Frost’s Medium Amir’s Medium Amir’s Twitter Amir’s GitHub Amir’s LinkedIn Amir’s Facebook Sponsors: Angular Boot Camp Fresh Books Get a Coder Job Course Cache Fly Picks: Aaron Movie: “A Star Is Born” Concept - Model Driven Forms Amir Puppeteer Arrow Function Converter Brian TV Series: “The 100” Angular Schematics
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
Panel: Dave Kimura Charles (Chuck) Max Wood Nate Hopkins Special Guest: Dan Mayer In this episode of Ruby Rogues, the panel talks with Bozhidar Batsov who is the VP of Engineering at Toptal, and an Emacs fanatic. The panel and the guest talk about RubCop, Emacs, and Komodo, among other topics! Check out today’s episode for more details. Show Topics: 0:00 – Sentry.IO – Advertisement! 1:07 – Chuck lists the panelists and the special guest. 1:37 – Chuck: Why are you famous? 1:41 – Guest gives his background. 2:13 – Guest: I am passionate about Emacs. 2:55 – Chuck. 2:58 – Panel: I have on a few projects. Do you know RUFO? It’s a bit more opinionated than RuboCop. 3:25 – Guest: I am familiar with RUFO and their approach is similar to JavaScript called Pretty or something like that. 4:45 – Guest: 4:49 – Panel: Can you tell us what RuboCop is and why is it important? 5:00 – Guest: There are a few main things that RuboCop is: 1.) Placement for Ruby minor... 2.) Lint tool 3.) Automatic checker for all the best practices outlined in the community 4.) Formatter for Ruby code – you can feed it ugly code and it will spin out beautiful code 7:30 – Panel: What are the origins of the project? Where you interested in the performance and security aspects of it? 7:49 – Guest. The guest talks about RuboCop in detail. 10:59 – Panel: It’s important to remember that these are just guidelines and they are NOT set in stone. Using single or double quotes. As long as the project is consistent and using decent practices then I am okay with the code. I will disable the...in RuboCop. Today with high-resolution monitors it’s one of those things that are an annoyance to me. It’s just my opinion, though. 12:07 – Guest: Why disable it and not...? 13:36 – Panel: You could use VS code instead of Emacs! I am just kidding. 13:51 – Guest: I hope you are kidding! 13:56 – Chuck: I cannot live without this code... 14:06 – Guest. 14:26 – Panel: I was an early adapter from the beginning and it was hella slow. I tried it from sublime text and I got annoyed so I eventually switched to VS code. Once I got over the brand name, I really like it as my main editor. 15:20 – Panel: Maybe it’s more approachable and it’s easier to dip your toes in. 15:35 – Guest. 16:29 – Panel: I haven’t heard of KOMODO in long time. I remember that was one of the first IDs that I had checked out. I tried that then went to Ruby Mine and then tried Sublime text and then VS. 16:57 – Guest: Komodo was a famous editor. 17:17 – Panel: I am curious on RuboCop that the adaption is driven by teaching idiomatic Ruby to people new to the language? 17:40 – Guest: I don’t think it’s much about the stylistic stuff at this point. I also noticed that the main driver of the group was... Guest goes into great detail about this topic. 22:44 – Guest (continues): RuboCop offers a bunch of different structure. 24:27 – Guest (continues): We are wondering how to approach the issue of performance. The performance aspect tended to be trickier than what we had expected. The majority of developers when given the choice to either secure or make something convenient - they will choose the latter option. 25:47 – Panel: That’s why they get hit with a high AWS bill. 26:00 – Guest. 26:30 – Panel: The things you have learned with RuboCop, is it changing the direction with MRI or the design of the language at all? 26:40 – Guest: I would hope so, but I don’t have hard evidence to prove this. If you give people too many options then it could be a waste of time. I don’t care about the nuances. 30:06 – Ad: RubyMine! 30-day trial! 30:38 – Panel: Would you recommend the Rails style guide if you are building a Rails style project? Should we use that as a baseline and then customize it for your team? 30:55 – Guest: The style guide should be good. For a while I was the only editor. Not a lot of the options that are there aren’t my personal opinion, but it’s the general prescription. If you have strong preferences and you have your team agree on those then it’s okay to be modifying it. At the end of the day it’s better to have consistency within a project. You are doing great! 32:57 – Chuck asks a question. 33:44 – Chuck: Could I modify a rule? 33:53 – Guest: There are varying degrees to the rule. 35:56 – Panel: One of your conference talks you talked about the future of Rails and the future of other Ruby frameworks? 36:18 – Guest: I am worried about the future of Ruby b/c I see people talking about the maturity of the system but there isn’t a clear vision to where we are going. There are some cornerstones for Ruby 3 that he is repeating. 41:05 – Guest (continues): I think we need to commit to the module and the API. 45:42 – Chuck: All of those things make sense to me. Is there any desire for people to fork Ruby or pulling / putting some of this in? 46:00 – Guest. 48:18 – Panel: Transition that to Rails and the future of Rails? 48:27 – Panel: There are big companies that are making changes. 48:51 – Guest. 53:33 – Panel: I think that is a common pattern that most companies move towards. 54:12 – Chuck: We did an episode on ElixirMix with Chris McCord. Check that out! 54:35 – Chuck: Picks! 54:40 – Advertisement – Fresh Books! End – Cache Fly! Links: Get a Coder Job Course Ruby Rust Ruby Motion Ruby on Rails Angular Komodo Emacs RuboCop RuboCop – GitHub Stimulus reflex Messages: Share Screens Smittybilt Visual Studio Code: Introducing Visual Studio Live Share VRBO Bozhidar’s GitHub Bozhidar’s Twitter Bozhidar’s Patreon Bozhidar’s Open Collective Past EMx Episode 020 with Chris McCord! Sponsors: Sentry RubyMine Cache Fly Fresh Books Picks: Dave Tire Plugs VS Live Share Nate Share Screen using Messages on Mac Charles VRBO Find opportunities for R&R Rocket League Bozhidar Documentation for Markdown users Bear App
Panel: Dave Kimura Charles (Chuck) Max Wood Nate Hopkins Special Guest: Dan Mayer In this episode of Ruby Rogues, the panel talks with Bozhidar Batsov who is the VP of Engineering at Toptal, and an Emacs fanatic. The panel and the guest talk about RubCop, Emacs, and Komodo, among other topics! Check out today’s episode for more details. Show Topics: 0:00 – Sentry.IO – Advertisement! 1:07 – Chuck lists the panelists and the special guest. 1:37 – Chuck: Why are you famous? 1:41 – Guest gives his background. 2:13 – Guest: I am passionate about Emacs. 2:55 – Chuck. 2:58 – Panel: I have on a few projects. Do you know RUFO? It’s a bit more opinionated than RuboCop. 3:25 – Guest: I am familiar with RUFO and their approach is similar to JavaScript called Pretty or something like that. 4:45 – Guest: 4:49 – Panel: Can you tell us what RuboCop is and why is it important? 5:00 – Guest: There are a few main things that RuboCop is: 1.) Placement for Ruby minor... 2.) Lint tool 3.) Automatic checker for all the best practices outlined in the community 4.) Formatter for Ruby code – you can feed it ugly code and it will spin out beautiful code 7:30 – Panel: What are the origins of the project? Where you interested in the performance and security aspects of it? 7:49 – Guest. The guest talks about RuboCop in detail. 10:59 – Panel: It’s important to remember that these are just guidelines and they are NOT set in stone. Using single or double quotes. As long as the project is consistent and using decent practices then I am okay with the code. I will disable the...in RuboCop. Today with high-resolution monitors it’s one of those things that are an annoyance to me. It’s just my opinion, though. 12:07 – Guest: Why disable it and not...? 13:36 – Panel: You could use VS code instead of Emacs! I am just kidding. 13:51 – Guest: I hope you are kidding! 13:56 – Chuck: I cannot live without this code... 14:06 – Guest. 14:26 – Panel: I was an early adapter from the beginning and it was hella slow. I tried it from sublime text and I got annoyed so I eventually switched to VS code. Once I got over the brand name, I really like it as my main editor. 15:20 – Panel: Maybe it’s more approachable and it’s easier to dip your toes in. 15:35 – Guest. 16:29 – Panel: I haven’t heard of KOMODO in long time. I remember that was one of the first IDs that I had checked out. I tried that then went to Ruby Mine and then tried Sublime text and then VS. 16:57 – Guest: Komodo was a famous editor. 17:17 – Panel: I am curious on RuboCop that the adaption is driven by teaching idiomatic Ruby to people new to the language? 17:40 – Guest: I don’t think it’s much about the stylistic stuff at this point. I also noticed that the main driver of the group was... Guest goes into great detail about this topic. 22:44 – Guest (continues): RuboCop offers a bunch of different structure. 24:27 – Guest (continues): We are wondering how to approach the issue of performance. The performance aspect tended to be trickier than what we had expected. The majority of developers when given the choice to either secure or make something convenient - they will choose the latter option. 25:47 – Panel: That’s why they get hit with a high AWS bill. 26:00 – Guest. 26:30 – Panel: The things you have learned with RuboCop, is it changing the direction with MRI or the design of the language at all? 26:40 – Guest: I would hope so, but I don’t have hard evidence to prove this. If you give people too many options then it could be a waste of time. I don’t care about the nuances. 30:06 – Ad: RubyMine! 30-day trial! 30:38 – Panel: Would you recommend the Rails style guide if you are building a Rails style project? Should we use that as a baseline and then customize it for your team? 30:55 – Guest: The style guide should be good. For a while I was the only editor. Not a lot of the options that are there aren’t my personal opinion, but it’s the general prescription. If you have strong preferences and you have your team agree on those then it’s okay to be modifying it. At the end of the day it’s better to have consistency within a project. You are doing great! 32:57 – Chuck asks a question. 33:44 – Chuck: Could I modify a rule? 33:53 – Guest: There are varying degrees to the rule. 35:56 – Panel: One of your conference talks you talked about the future of Rails and the future of other Ruby frameworks? 36:18 – Guest: I am worried about the future of Ruby b/c I see people talking about the maturity of the system but there isn’t a clear vision to where we are going. There are some cornerstones for Ruby 3 that he is repeating. 41:05 – Guest (continues): I think we need to commit to the module and the API. 45:42 – Chuck: All of those things make sense to me. Is there any desire for people to fork Ruby or pulling / putting some of this in? 46:00 – Guest. 48:18 – Panel: Transition that to Rails and the future of Rails? 48:27 – Panel: There are big companies that are making changes. 48:51 – Guest. 53:33 – Panel: I think that is a common pattern that most companies move towards. 54:12 – Chuck: We did an episode on ElixirMix with Chris McCord. Check that out! 54:35 – Chuck: Picks! 54:40 – Advertisement – Fresh Books! End – Cache Fly! Links: Get a Coder Job Course Ruby Rust Ruby Motion Ruby on Rails Angular Komodo Emacs RuboCop RuboCop – GitHub Stimulus reflex Messages: Share Screens Smittybilt Visual Studio Code: Introducing Visual Studio Live Share VRBO Bozhidar’s GitHub Bozhidar’s Twitter Bozhidar’s Patreon Bozhidar’s Open Collective Past EMx Episode 020 with Chris McCord! Sponsors: Sentry RubyMine Cache Fly Fresh Books Picks: Dave Tire Plugs VS Live Share Nate Share Screen using Messages on Mac Charles VRBO Find opportunities for R&R Rocket League Bozhidar Documentation for Markdown users Bear App
Panel: Dave Kimura Charles (Chuck) Max Wood Nate Hopkins Special Guest: Dan Mayer In this episode of Ruby Rogues, the panel talks with Bozhidar Batsov who is the VP of Engineering at Toptal, and an Emacs fanatic. The panel and the guest talk about RubCop, Emacs, and Komodo, among other topics! Check out today’s episode for more details. Show Topics: 0:00 – Sentry.IO – Advertisement! 1:07 – Chuck lists the panelists and the special guest. 1:37 – Chuck: Why are you famous? 1:41 – Guest gives his background. 2:13 – Guest: I am passionate about Emacs. 2:55 – Chuck. 2:58 – Panel: I have on a few projects. Do you know RUFO? It’s a bit more opinionated than RuboCop. 3:25 – Guest: I am familiar with RUFO and their approach is similar to JavaScript called Pretty or something like that. 4:45 – Guest: 4:49 – Panel: Can you tell us what RuboCop is and why is it important? 5:00 – Guest: There are a few main things that RuboCop is: 1.) Placement for Ruby minor... 2.) Lint tool 3.) Automatic checker for all the best practices outlined in the community 4.) Formatter for Ruby code – you can feed it ugly code and it will spin out beautiful code 7:30 – Panel: What are the origins of the project? Where you interested in the performance and security aspects of it? 7:49 – Guest. The guest talks about RuboCop in detail. 10:59 – Panel: It’s important to remember that these are just guidelines and they are NOT set in stone. Using single or double quotes. As long as the project is consistent and using decent practices then I am okay with the code. I will disable the...in RuboCop. Today with high-resolution monitors it’s one of those things that are an annoyance to me. It’s just my opinion, though. 12:07 – Guest: Why disable it and not...? 13:36 – Panel: You could use VS code instead of Emacs! I am just kidding. 13:51 – Guest: I hope you are kidding! 13:56 – Chuck: I cannot live without this code... 14:06 – Guest. 14:26 – Panel: I was an early adapter from the beginning and it was hella slow. I tried it from sublime text and I got annoyed so I eventually switched to VS code. Once I got over the brand name, I really like it as my main editor. 15:20 – Panel: Maybe it’s more approachable and it’s easier to dip your toes in. 15:35 – Guest. 16:29 – Panel: I haven’t heard of KOMODO in long time. I remember that was one of the first IDs that I had checked out. I tried that then went to Ruby Mine and then tried Sublime text and then VS. 16:57 – Guest: Komodo was a famous editor. 17:17 – Panel: I am curious on RuboCop that the adaption is driven by teaching idiomatic Ruby to people new to the language? 17:40 – Guest: I don’t think it’s much about the stylistic stuff at this point. I also noticed that the main driver of the group was... Guest goes into great detail about this topic. 22:44 – Guest (continues): RuboCop offers a bunch of different structure. 24:27 – Guest (continues): We are wondering how to approach the issue of performance. The performance aspect tended to be trickier than what we had expected. The majority of developers when given the choice to either secure or make something convenient - they will choose the latter option. 25:47 – Panel: That’s why they get hit with a high AWS bill. 26:00 – Guest. 26:30 – Panel: The things you have learned with RuboCop, is it changing the direction with MRI or the design of the language at all? 26:40 – Guest: I would hope so, but I don’t have hard evidence to prove this. If you give people too many options then it could be a waste of time. I don’t care about the nuances. 30:06 – Ad: RubyMine! 30-day trial! 30:38 – Panel: Would you recommend the Rails style guide if you are building a Rails style project? Should we use that as a baseline and then customize it for your team? 30:55 – Guest: The style guide should be good. For a while I was the only editor. Not a lot of the options that are there aren’t my personal opinion, but it’s the general prescription. If you have strong preferences and you have your team agree on those then it’s okay to be modifying it. At the end of the day it’s better to have consistency within a project. You are doing great! 32:57 – Chuck asks a question. 33:44 – Chuck: Could I modify a rule? 33:53 – Guest: There are varying degrees to the rule. 35:56 – Panel: One of your conference talks you talked about the future of Rails and the future of other Ruby frameworks? 36:18 – Guest: I am worried about the future of Ruby b/c I see people talking about the maturity of the system but there isn’t a clear vision to where we are going. There are some cornerstones for Ruby 3 that he is repeating. 41:05 – Guest (continues): I think we need to commit to the module and the API. 45:42 – Chuck: All of those things make sense to me. Is there any desire for people to fork Ruby or pulling / putting some of this in? 46:00 – Guest. 48:18 – Panel: Transition that to Rails and the future of Rails? 48:27 – Panel: There are big companies that are making changes. 48:51 – Guest. 53:33 – Panel: I think that is a common pattern that most companies move towards. 54:12 – Chuck: We did an episode on ElixirMix with Chris McCord. Check that out! 54:35 – Chuck: Picks! 54:40 – Advertisement – Fresh Books! End – Cache Fly! Links: Get a Coder Job Course Ruby Rust Ruby Motion Ruby on Rails Angular Komodo Emacs RuboCop RuboCop – GitHub Stimulus reflex Messages: Share Screens Smittybilt Visual Studio Code: Introducing Visual Studio Live Share VRBO Bozhidar’s GitHub Bozhidar’s Twitter Bozhidar’s Patreon Bozhidar’s Open Collective Past EMx Episode 020 with Chris McCord! Sponsors: Sentry RubyMine Cache Fly Fresh Books Picks: Dave Tire Plugs VS Live Share Nate Share Screen using Messages on Mac Charles VRBO Find opportunities for R&R Rocket League Bozhidar Documentation for Markdown users Bear App
Panel: Dave Kimura Charles Max Wood David Richards Special Guest: Dan Mayer In this episode of Ruby Rogues, the panel talks with Dan Mayer who believes that small distributed software teams can make a large impact. Dan loves Ruby, distributed systems, OSS, and making development easier. The panel and Dan talk about performance and benchmarking. Check out today’s episode to learn more! Show Topics: 0:00 – Sentry.IO – Advertisement! 1:07 – Chuck: Our panel is Dave, David, myself, and our guest is Dan Mayer. Say “Hi”! 1:24 – Chuck: Give a brief introduction, please. 1:32 – Dan gives his background and what he currently is working on. 1:53 – Chuck: We wanted to talk to you about benchmarking and performance. Tell us how you got into this? 2:28 – Dan: It has been an interesting timeline for me. About seven years I worked for a large site that had a legacy Rails app. It got a lot of dusty corners over the years and we removed dead code, and removed bugs and confusion for the consumer. We were finding ways to tweak it and not impacting your users. I was using Trace Point but the overhead was quite significant. I moved away from that project but found that I found a need for it, again, a few years later. I actually tried to modify...and basically Eric said “prove that it is slow.” It really wasn’t the type of bottleneck that I was seeing. Since then I am rewriting it. I removed one bottleneck and now... 5:00 – Chuck: ...if that number gets smaller then Ruby is doing well. Is it really that simple? How do you benchmark? 5:15 – Dan answers the question. 6:40 – Panel: How do you benchmark things front to back? 6:49 – Dan: I look at benchmarking in different layers. You can see the overall impact in the broad range. If you want to see specific things then that’s a little trickier. For Ruby 3x3 he has been working on a Rails Benchmark, and that’s Noah. He has a sample Rails app and... 8:09 – Chuck: He is using discourse, and we talked to him on a past episode. 8:20 – Dan: My original plan was to insert my gem within that project. However, I ran into a few issues and Noah and I are working on that because of the issues. 8:57 – Panel: How does the coverband gem – how does it provide security so you don’t leak out information to in-users? 9:12 – Dan answers the question. 9:54 – Panel: Then you can build whatever views you want to trace back that sort of information? 10:02 – Dan answers the question. 10:30 – Chuck: Is it running benchmarks against every method you have in your app or what? 10:40 – Dan answers question. 11:27 – Panel: I like when I can remove all of the code I feel safe. 1:37 – Dan: The gem was driven by the fact that I love to delete code. These old files have been sitting around – they aren’t valid – let’s get rid of them. 12:04 – Chuck: This is off topic from benchmarking, but... 12:43 – Dan: ...to get that feature at run time it can hurt your performance. 15:20 – Panel: Is there added memory usage? 15:27 – Dan: I rewrote the library around coverage and I put it out. It worked well for my company and myself. But people were saying that they got a huge performance hit. I went from needing to sample to capture...the new bottleneck was collecting the data all of the code usage of your gems and...it went from just recording your custom code to all Ruby code. Where it was slowing down was reporting that. I didn’t have any benchmarks to capture that. What I was failing to do was... I can talk about what I did do to help people if you want? 17:41 – Chuck: Looking at how much storage is my app using or how much...How can you even begin to isolate it? 18:11 – Dan: On all the different types of benchmarking – I know there is a benchmarking memory increase. I haven’t benchmarked that, yet. To get at these different levels, how do we ensure that’s fast? It was a new challenge to me. 19:45 – Panel: It sounds like this has become a practice over the years. Is that how you handle it or how do you like to use it? 20:07 – Dan: When I started using this benchmarking is because I wanted to solve something. There were several regressions. We’d go back and address it. What I tried doing is put all the benchmarks into the gem. I think back by the Ruby 3x3 goals... 21:49 – Panel: What comes to mind is appreciating well-crafted software that really does well – maybe measure what customer output is? 22:43 – Dan: What people care about is their application. You can look to see... 23:33 – Panel: Automating takes that pressure right off of me and I can do 23:47 – Chuck: Recording all the things you want to do. We are talking about this right now you can record some of it in these tests or... 24:06 – Dan: I have fixed these performance things in the past. I have more confidence that these things get fixed before they get released. Having that methodology helps a lot. 24:43 – Advertisement – RubyMine 25:10 – Panel: I think it’s good to see WHERE your application is getting used the most. To see where you have the MOST code usage. 26:20 – Dan: That’s a good story on back on regressions on benchmarking or performances. 27:46 – Dan: One thing that I think is interesting – I believe the Rails performance testing has gone blank essentially. There are good articles but in the Rails 5 the guides no longer have any information. There is so much talk about performance and benchmarking but things have gotten lost, too. 28:28 – Panel: It’s interesting how we get into x, y, and z. We tend to figure it out and some guys focus on the next thing and the next. 29:24 – Dan: The fads of the things that go in-and-out. It’s definitely coming back: the performance in the Ruby world. My theory is that the tools have gotten that much better and people are doing less. They have offloaded a lot of things for people. It shows, though, it doesn’t do everything. 30:19 – Panel: I think that’s valuable, too. The WHOLE package – this is how we deliver, and these are the tools and the toolkits. I miss Ruby every time that I have to step away b/c I have to use something else. 31:17 – Dan: It sounds COOL to use Elixir and whatnot, but I just can’t get into it as much as when I use Ruby. When I try to branch out to use another language it isn’t the same. 31:47 – Panel: When the pressure is high I use Ruby so that’s where my heart is. 31:58 – Dan: It falls a little short, sometimes, it’s an easy thing that people say: it’s so slow. It’s one of those that we’d like to have a better answer. Is it something that people have thought of as a continual thing or...? 32:47 – Chuck: It’s generally to resolve an issue here or there. 32:57 – Panel. 33:07 – Chuck: When I do use the benchmarks I have added in my test suite a trip wire that validates that it’s under a certain point. 33:37 – Panel: If I did that my tests would never pass. 33:45 – Chuck. 33:49 – Dan: How can you do that reliably where you get the value but you don’t have a bunch of false failures? A person has to do it to see if it is faster/slower. 34:26 – Panel: For my applications – usually they are slow not b/c of Ruby but b/c of a poor architectural decision we have made. Every situation you can go and weight it to see what is best. Ultimately they are the ones that are brining in money into your business. 35:27 – Chuck: When I add things into my test suites is b/c there was some major performance hiccup where it ruins the user’s flow. 35:55 – Dan: The way you benchmark it... Benchmarking a gem or a library it’s how can it impact other people’s apps. And the Ruby 3x3 is proving that it’s faster – what does that mean – and I think Noah has done some great work on. 36:30 – Dan: The last thing I want to mention is Julia’s work on that is what got me back into coverband. I was thinking I would use a different version of coverband that would use RBSPY. 37:37 – Chuck: Yeah, that was a great episode. 37:44 – Dan: I want to play with it some more. I guess I would have to know more in Rust, though. 37:57 – Chuck: Anything that you are working on within this space? 38:04 – Dan: There have been 4-5 current people in coverband and we have added a bunch of new benchmarks and they are 60% faster. I am trying to work on getting a simpler version out there. Hopefully it will be live soon after getting rid of the bugs. 39:05 – Chuck: How can people find you? 39:10 – Dan: My blog, Twitter, and GitHub! 39:22 – Chuck: M-A-Y-E-R. 39:36 – Picks! 39:40 – Advertisement – Fresh Books! End – Cache Fly! Links: Get a Coder Job Course Ruby Rust Ruby Motion Ruby on Rails Angular Benchmark-IPS Rbspy Ruby Benchmarking Benchmarking Bugs Coverband TracePoint RR 362 Episode Rails Guides Atomic Habits EasyRes Skinny Pop Blog through AppSignal Book: Extreme Ownership Noah Gibbs’ Twitter Dan Mayer’s Blog Dan Mayer’s Twitter Dan Mayer’s GitHub Dan Mayer’s Medium Sponsors: Sentry RubyMine Cache Fly Fresh Books Picks: David Atomic Habits by James Clear Dave EasyRes Skinny Pop Charles Extreme Ownership Jocko Willink podcast 2 Keto Dudes Ketogenic Forums Dan Artemis https://blog.appsignal.com/2018/09/28/active-record-vs-ecto.html https://github.com/evanphx/benchmark-ips https://github.com/rbspy/rbspy
Panel: Dave Kimura Charles Max Wood David Richards Special Guest: Dan Mayer In this episode of Ruby Rogues, the panel talks with Dan Mayer who believes that small distributed software teams can make a large impact. Dan loves Ruby, distributed systems, OSS, and making development easier. The panel and Dan talk about performance and benchmarking. Check out today’s episode to learn more! Show Topics: 0:00 – Sentry.IO – Advertisement! 1:07 – Chuck: Our panel is Dave, David, myself, and our guest is Dan Mayer. Say “Hi”! 1:24 – Chuck: Give a brief introduction, please. 1:32 – Dan gives his background and what he currently is working on. 1:53 – Chuck: We wanted to talk to you about benchmarking and performance. Tell us how you got into this? 2:28 – Dan: It has been an interesting timeline for me. About seven years I worked for a large site that had a legacy Rails app. It got a lot of dusty corners over the years and we removed dead code, and removed bugs and confusion for the consumer. We were finding ways to tweak it and not impacting your users. I was using Trace Point but the overhead was quite significant. I moved away from that project but found that I found a need for it, again, a few years later. I actually tried to modify...and basically Eric said “prove that it is slow.” It really wasn’t the type of bottleneck that I was seeing. Since then I am rewriting it. I removed one bottleneck and now... 5:00 – Chuck: ...if that number gets smaller then Ruby is doing well. Is it really that simple? How do you benchmark? 5:15 – Dan answers the question. 6:40 – Panel: How do you benchmark things front to back? 6:49 – Dan: I look at benchmarking in different layers. You can see the overall impact in the broad range. If you want to see specific things then that’s a little trickier. For Ruby 3x3 he has been working on a Rails Benchmark, and that’s Noah. He has a sample Rails app and... 8:09 – Chuck: He is using discourse, and we talked to him on a past episode. 8:20 – Dan: My original plan was to insert my gem within that project. However, I ran into a few issues and Noah and I are working on that because of the issues. 8:57 – Panel: How does the coverband gem – how does it provide security so you don’t leak out information to in-users? 9:12 – Dan answers the question. 9:54 – Panel: Then you can build whatever views you want to trace back that sort of information? 10:02 – Dan answers the question. 10:30 – Chuck: Is it running benchmarks against every method you have in your app or what? 10:40 – Dan answers question. 11:27 – Panel: I like when I can remove all of the code I feel safe. 1:37 – Dan: The gem was driven by the fact that I love to delete code. These old files have been sitting around – they aren’t valid – let’s get rid of them. 12:04 – Chuck: This is off topic from benchmarking, but... 12:43 – Dan: ...to get that feature at run time it can hurt your performance. 15:20 – Panel: Is there added memory usage? 15:27 – Dan: I rewrote the library around coverage and I put it out. It worked well for my company and myself. But people were saying that they got a huge performance hit. I went from needing to sample to capture...the new bottleneck was collecting the data all of the code usage of your gems and...it went from just recording your custom code to all Ruby code. Where it was slowing down was reporting that. I didn’t have any benchmarks to capture that. What I was failing to do was... I can talk about what I did do to help people if you want? 17:41 – Chuck: Looking at how much storage is my app using or how much...How can you even begin to isolate it? 18:11 – Dan: On all the different types of benchmarking – I know there is a benchmarking memory increase. I haven’t benchmarked that, yet. To get at these different levels, how do we ensure that’s fast? It was a new challenge to me. 19:45 – Panel: It sounds like this has become a practice over the years. Is that how you handle it or how do you like to use it? 20:07 – Dan: When I started using this benchmarking is because I wanted to solve something. There were several regressions. We’d go back and address it. What I tried doing is put all the benchmarks into the gem. I think back by the Ruby 3x3 goals... 21:49 – Panel: What comes to mind is appreciating well-crafted software that really does well – maybe measure what customer output is? 22:43 – Dan: What people care about is their application. You can look to see... 23:33 – Panel: Automating takes that pressure right off of me and I can do 23:47 – Chuck: Recording all the things you want to do. We are talking about this right now you can record some of it in these tests or... 24:06 – Dan: I have fixed these performance things in the past. I have more confidence that these things get fixed before they get released. Having that methodology helps a lot. 24:43 – Advertisement – RubyMine 25:10 – Panel: I think it’s good to see WHERE your application is getting used the most. To see where you have the MOST code usage. 26:20 – Dan: That’s a good story on back on regressions on benchmarking or performances. 27:46 – Dan: One thing that I think is interesting – I believe the Rails performance testing has gone blank essentially. There are good articles but in the Rails 5 the guides no longer have any information. There is so much talk about performance and benchmarking but things have gotten lost, too. 28:28 – Panel: It’s interesting how we get into x, y, and z. We tend to figure it out and some guys focus on the next thing and the next. 29:24 – Dan: The fads of the things that go in-and-out. It’s definitely coming back: the performance in the Ruby world. My theory is that the tools have gotten that much better and people are doing less. They have offloaded a lot of things for people. It shows, though, it doesn’t do everything. 30:19 – Panel: I think that’s valuable, too. The WHOLE package – this is how we deliver, and these are the tools and the toolkits. I miss Ruby every time that I have to step away b/c I have to use something else. 31:17 – Dan: It sounds COOL to use Elixir and whatnot, but I just can’t get into it as much as when I use Ruby. When I try to branch out to use another language it isn’t the same. 31:47 – Panel: When the pressure is high I use Ruby so that’s where my heart is. 31:58 – Dan: It falls a little short, sometimes, it’s an easy thing that people say: it’s so slow. It’s one of those that we’d like to have a better answer. Is it something that people have thought of as a continual thing or...? 32:47 – Chuck: It’s generally to resolve an issue here or there. 32:57 – Panel. 33:07 – Chuck: When I do use the benchmarks I have added in my test suite a trip wire that validates that it’s under a certain point. 33:37 – Panel: If I did that my tests would never pass. 33:45 – Chuck. 33:49 – Dan: How can you do that reliably where you get the value but you don’t have a bunch of false failures? A person has to do it to see if it is faster/slower. 34:26 – Panel: For my applications – usually they are slow not b/c of Ruby but b/c of a poor architectural decision we have made. Every situation you can go and weight it to see what is best. Ultimately they are the ones that are brining in money into your business. 35:27 – Chuck: When I add things into my test suites is b/c there was some major performance hiccup where it ruins the user’s flow. 35:55 – Dan: The way you benchmark it... Benchmarking a gem or a library it’s how can it impact other people’s apps. And the Ruby 3x3 is proving that it’s faster – what does that mean – and I think Noah has done some great work on. 36:30 – Dan: The last thing I want to mention is Julia’s work on that is what got me back into coverband. I was thinking I would use a different version of coverband that would use RBSPY. 37:37 – Chuck: Yeah, that was a great episode. 37:44 – Dan: I want to play with it some more. I guess I would have to know more in Rust, though. 37:57 – Chuck: Anything that you are working on within this space? 38:04 – Dan: There have been 4-5 current people in coverband and we have added a bunch of new benchmarks and they are 60% faster. I am trying to work on getting a simpler version out there. Hopefully it will be live soon after getting rid of the bugs. 39:05 – Chuck: How can people find you? 39:10 – Dan: My blog, Twitter, and GitHub! 39:22 – Chuck: M-A-Y-E-R. 39:36 – Picks! 39:40 – Advertisement – Fresh Books! End – Cache Fly! Links: Get a Coder Job Course Ruby Rust Ruby Motion Ruby on Rails Angular Benchmark-IPS Rbspy Ruby Benchmarking Benchmarking Bugs Coverband TracePoint RR 362 Episode Rails Guides Atomic Habits EasyRes Skinny Pop Blog through AppSignal Book: Extreme Ownership Noah Gibbs’ Twitter Dan Mayer’s Blog Dan Mayer’s Twitter Dan Mayer’s GitHub Dan Mayer’s Medium Sponsors: Sentry RubyMine Cache Fly Fresh Books Picks: David Atomic Habits by James Clear Dave EasyRes Skinny Pop Charles Extreme Ownership Jocko Willink podcast 2 Keto Dudes Ketogenic Forums Dan Artemis https://blog.appsignal.com/2018/09/28/active-record-vs-ecto.html https://github.com/evanphx/benchmark-ips https://github.com/rbspy/rbspy
Panel: Charles Max Wood John Papa Special Guest: Adrian Faciu In this episode, Chuck talks with Adrian Faciu who is a developer for Visma and is a blogger. The panel talks to Adrian about his blog titled, “NgRx Tips & Tricks.” They ask Adrian in-depth questions about NgRx, among many other topics. Listen to today’s episode for more details! Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:55 – Chuck: Hi! Our guest is Adrian Faciu. 1:10 – Guest: Hello! I am Adrian and I am a developer who works for a Norwegian company, but I live in Romania! 1:35 – Chuck. 1:36 – Guest. 1:47 – Chuck: The market is so global. I have talked with many different guests from different parts of the world – it’s really neat! It’s this global phenomenon. 2:12 – Guest: It’s a great thing! 2:23 – Chuck: They have an office where you live? 2:31 – Yes. 2:37 – Chuck: How are you guys using Angular over there? 2:47 – Guest: We have several different products. We customize using them with internalized tools. 3:04 – Chuck: Real quick let’s talk about your blog post. I will admit I am not that familiar with NgRx, so I will ask newbie questions. Now do you want to explain what this is? 3:41 – Guest: Sure! The short story of the article is I saw people doing things the hard way. And after I figured out some things, people encouraged me to write about my experience. 4:37 – Chuck: John Papa just signed-in! 4:53 – Guest: Yes NgRx is... 5:02 – Chuck: You used classes for all actions what do you mean by that? 5:05 – Guest answers the question into detail. 6:31 – Chuck: Let’s say we have a class that uses a log error... 6:42 – Guest: For example you have actions that... 7:02 – Chuck: When you use the reducer... 7:10 – Guest: There are other tricks we can use like keeping all of them in the same file... 8:00 – Guest talks about the union type. 8:24 – Chuck: You learned this by doing things wrong – what happens when you do these things wrong? 8:30 – Guest: If you don’t put all of your classes in the right file then you end up with a lot of files. If you don’t create hero types then you’d have to... 10:02 – Chuck: If you import user actions then does it import all of the other types? 10:08 – Guest: Import everything from that file. 10:17 – Chuck: If you have any questions, John, feel free to chime-in! 10:29 – John: Yeah I am scanning through this. The negative I hear a lot of through actions, it’s cause we create constants – the action class creators, it seems to cause an undue amount of stress. How much actual code do you actually have to write – how do you feel about that? 11:12 – Guest: I didn’t want to write all of this code! That’s what I wanted to avoid. 11:44 – John: I wrote them, didn’t like them, I went back to them... It wasn’t just that I created a new action I had to create the constant and other things – also the place you do the union type, I’d forget to do the union type at the end! If you don’t have all of those things then it won’t work. Even on a simple project I’d have 120 lines of code for a simple task. 12:49 – Guest: Yes. Sometimes I would forget this or that. I’d have to figure out what I did wrong. I went back and created classes for a lot of things. I like the benefits. 13:19 – John: I like your ideas and your tips in your blog. How do you feel about the NAMES of those actions? 13:55 – Guest. 14:51 – John: Important part is the naming of the string inside of it – that’s the value... So you can see the actions that are being displayed. 15:25 – Guest: If you didn’t do it right that’s where the problem would be. 15:38 – John: To me it’s a love/hate relationship b/c there is so much code to it. I usually copy and paste which means that I usually forget to change something. I agree, but I don’t’ like creating it. 16:05 – Guest: I’ve been trying to figure out a solution for it eventually I gave up. 16:23 – John: Moving onto effects – inside that happens inside of the Redux cycle – if you want to do something outside of it that’s when you do effects right? 16:40 – Guest. 16:49 – John: Using the effects is good or do it a different way? 17: 20 – Guest: It makes my components cleaner. I have seen projects that DON’T use it and it’s not the best. 17:36 – John: Like getting a list of customers... (I am using my hands and nobody can see me!) It’s weird to me to NOT use the effects! 18:52 – Guest: If you implement some type of caching then it’s everything to put everything in the state. 19:07 – Chuck: I haven’t used it as much as I would like, but I haven’t do much with it. 19:23 – John: I am curious from somebody hasn’t dove into it – does effects make sense to you, Chuck? 19:39 – Chuck: It seems like effects is a side effect? Like calling out an external API... 20:10 – John: Yeah even multiple effects. John asks a question. 20:23 – Guest answers the question. 20:29 – Chuck: I like that you can make constrained assumptions and all of the complicated... 21:10 – Guest: I am using my effects like functions. 21:26 – John’s question. 21:31 – Chuck: Doing everything! You said implement the 2-payload method – that doesn’t make sense? 21:43 – Guest: Not 100% convinced you need it. What people are doing on these actions... 22:43 – Chuck: How much magic you want? 22:50 – Guest. 22:59 – John: I am confused about ERROR HANDLING. What do you advise for people to do? 23:21 – Guest: Basically, when you deal with that effect you deal with the actions, and the actions... If you get an error on it it’s done. I was trying to explain there that...do it on another stream. Try it on another stream and handle it. What happened to me – I did it on the action state and I got an error and then everything will stop. 24:27 – John: That’s not good! 24:32 – Chuck. 24:35 – John: Good tip! 24:40 – Chuck: Angular has gotten better at that. I still find, though... 25:06 – John. 25:16 – John: Hey I appreciate these blog posts that don’t always show the happy path. To show the unhappy path is a good idea. 25:32 – Chuck. 26:00 – Going down your list, Adrian, let’s talk about effects are services. I agree, but not that we have... 26:24 – Guest: I have seen cases where people forget that. They say I want to call a service, how do I do that? They forget... 26:50 – John: You have to provide your services somewhere. The old way was you could go into the... What do you do? 27:28 – Guest: Most of the applications... 28:17 – John. 28:25 – Chuck: I love deleting code! 28:32 – John: You end up in a spaghetti pool, though, if you needed that deleted code. Nooooo!!! 29:00 – Chuck. 29:01 – Guest. 29:10 – Advertisement: Get A Coder Job! 29:49 – John: Let’s talk about reducers – the smallest part of your tip sections. You say, “keep them simple” – how do you keep them simple? 30:07 – Guest: I have received this observation from several people. This is the biggest problem I had. How to keep them simple... 31:08 – John: When someone makes that type of code – where would you want them to put it? 31:23 – Guest: It depends on different types of actions. Maybe I have some sort of matter that I added to the data – an action from my application we can catch it into an effect and... Not all of the actions have to go to the reducer. 32:04 – John: I say, “Hmm...” when I see reducers like this...they are running a synchronized code inside of a reducer. And I see that a lot. 32:24 – Chuck. 32:28 – John: You go call a reaction, and...sometimes they are doing HTP there, but it’s hard to explain. 33:11 – John: What are some of the things that they can do to step-into, when they are using these? 33:16 – Guest: That’s why I only have these things about the reducers. 33:48 – Chuck: I am wondering what is the life cycle look like? What do you call a reducer from an effect from an action or vice versa? 34:09 – Guest answers the question. 34:37 – John: It can be confusing with all of these different terms. Where does it end? Your component you have to say: call this action. Perform this action and then the action says get customers – the NgRx library listens for that and helps connect to the reducer for you. Look into the action and then return that to a stream to whatever... 35:29 – Guest: Yes, it sends it to reducers. Guest goes into more detail. 36:09 – John: You never talk to the reducer directly? 36:17 – Chuck: ...is that something I should have done before – or does it call effects and the effects load the information into the state and the reducer pulls it out for the action? 36:46 – Guest. 36:58 – Chuck. 37:03 – Guest. 37:53 – John: It really depends on what you want to do, Chuck. John will give a hypothetical scenario. 38:58 – Chuck: In your scenario, let’s say... 39:14 – John: Everything is right up until the end there. It’s a little magical, honestly. I just know here is my selector and here is my data! 40:17 – Chuck: Selector is essentially I am interested in THIS state or THIS state change. 40:40 – Guest. 40:50 – Chuck: So when that changes... 40:56 – Guest. 40:59 – John. 41:05 – Chuck: A little piece of the overall store. 41:18 – Guest: My tip there was a bout the selectors... 42:30 – Chuck: So I can hand off my selector to multiple places? 42:36 – Guest: Yep. You don’t need to know anything else. 42:44 – Guest: Combine it as needed. Another benefit here is memorization. It says that each time you select pure functions it wont call the function again. 43:42 – I am seeing a trend in your tips, too. I am seeing easier way to code. You are always saying selector technique. There are a lot of terms in NgRx module. Dispatchers and states and stores...it’s nice to have a way to create the code easier. 44:21 – Guest: It does take a lot of time for someone to grasp. 44:30 – Chuck. 44:35 – John: Don’t use the store all over the place – that’s what Adrian says! 44:54 – Guest: I think it’s more like dumb components. I have a container of all of these dumb components. The container is the one that KNOWS. 46:22 – Chuck: It’s just a button. 46:28 – Guest: You click the button and it triggers. Whenever you want to use that component then you... 46:48 – Chuck: Any types of data that you wouldn’t want to use in your NgRx store? 47:07 – Guest: It depends – I am not holding any logging information there, though. 47:51 – John: I like to ask WHY. Property initialization. You are saying... 48:11 – Guest: It’s less code and it’s reasonable. If I can have less code then I’d love to have it. I think it’s cleaner b/c it’s not that much code. Most people might think blah, blah, blah, but I think it looks okay. 48:46 – John: I can see why it would be less code. 48:57 – Guest. 49:07 – John: I haven’t seen this: looking at your property initializer... Looking at your code here, Adrian... The store object itself is a reference to the NgRx store. That means you have to... To me I don’t want my app to know that NgRx is involved. I started to do this...I was creating an Angular service, which... Have you done this before? 50:33 – Guest: I have seen this function but I haven’t played with it. It makes sense. This takes it a step further. Like you say it’s perfect b/c nobody knows anything about that store, but it’s a new level. I think you have some benefits with that way of doing it, too. 51:23 – John: The one thing that sticks out is company name is your observable, then your... 52:10 – Guest: Yeah that’s good b/c it might be better! They might not even know what NgRx is, and you have a service so just use them. Yeah it’s just an observable. 52:33 – Chuck: You don’t want to see my garage. 52:44 – Guest: Some services are underrated. Like you suggested we could use them for much more. 53:01 – Guest: It was nice writing these tips. 53:19 – Chuck: What are working on now? 53:23 – Guest: Writing a new blog. 53:41 – Chuck: We will keep an eye out for it. Where do you post? 53:55 – Guest: Usually Medium, and Twitter. Search for my name and you will find me, b/c I have the same handler on all the places. 54:15 – Chuck & John: Let’s go to picks! 54:30 – Chuck is talking about future episodes and potential topics. You can vote stuff up on Trello on NgRx so we can go deeper on this topic. 55:40 – Advertisement – Fresh Books! 1:02:00 – Advertisement – Cache Fly! Links: Vue jQuery Angular C# Chuck’s Twitter John Papa’s Twitter Adrian’s Medium Adrian’s Twitter Adrian’s GitHub Adrian’s Blog Post Adrian’s Article: Testing NgRx Effects Sponsors: Angular Boot Camp Fresh Books Get a Coder Job Course Cache Fly Picks: John NgRx Data Conferences - Don’t feel mofo Charles Discord App Adrain Angular In-depth Doc Wallaby
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
Panel: Charles Max Wood John Papa Special Guest: Adrian Faciu In this episode, Chuck talks with Adrian Faciu who is a developer for Visma and is a blogger. The panel talks to Adrian about his blog titled, “NgRx Tips & Tricks.” They ask Adrian in-depth questions about NgRx, among many other topics. Listen to today’s episode for more details! Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:55 – Chuck: Hi! Our guest is Adrian Faciu. 1:10 – Guest: Hello! I am Adrian and I am a developer who works for a Norwegian company, but I live in Romania! 1:35 – Chuck. 1:36 – Guest. 1:47 – Chuck: The market is so global. I have talked with many different guests from different parts of the world – it’s really neat! It’s this global phenomenon. 2:12 – Guest: It’s a great thing! 2:23 – Chuck: They have an office where you live? 2:31 – Yes. 2:37 – Chuck: How are you guys using Angular over there? 2:47 – Guest: We have several different products. We customize using them with internalized tools. 3:04 – Chuck: Real quick let’s talk about your blog post. I will admit I am not that familiar with NgRx, so I will ask newbie questions. Now do you want to explain what this is? 3:41 – Guest: Sure! The short story of the article is I saw people doing things the hard way. And after I figured out some things, people encouraged me to write about my experience. 4:37 – Chuck: John Papa just signed-in! 4:53 – Guest: Yes NgRx is... 5:02 – Chuck: You used classes for all actions what do you mean by that? 5:05 – Guest answers the question into detail. 6:31 – Chuck: Let’s say we have a class that uses a log error... 6:42 – Guest: For example you have actions that... 7:02 – Chuck: When you use the reducer... 7:10 – Guest: There are other tricks we can use like keeping all of them in the same file... 8:00 – Guest talks about the union type. 8:24 – Chuck: You learned this by doing things wrong – what happens when you do these things wrong? 8:30 – Guest: If you don’t put all of your classes in the right file then you end up with a lot of files. If you don’t create hero types then you’d have to... 10:02 – Chuck: If you import user actions then does it import all of the other types? 10:08 – Guest: Import everything from that file. 10:17 – Chuck: If you have any questions, John, feel free to chime-in! 10:29 – John: Yeah I am scanning through this. The negative I hear a lot of through actions, it’s cause we create constants – the action class creators, it seems to cause an undue amount of stress. How much actual code do you actually have to write – how do you feel about that? 11:12 – Guest: I didn’t want to write all of this code! That’s what I wanted to avoid. 11:44 – John: I wrote them, didn’t like them, I went back to them... It wasn’t just that I created a new action I had to create the constant and other things – also the place you do the union type, I’d forget to do the union type at the end! If you don’t have all of those things then it won’t work. Even on a simple project I’d have 120 lines of code for a simple task. 12:49 – Guest: Yes. Sometimes I would forget this or that. I’d have to figure out what I did wrong. I went back and created classes for a lot of things. I like the benefits. 13:19 – John: I like your ideas and your tips in your blog. How do you feel about the NAMES of those actions? 13:55 – Guest. 14:51 – John: Important part is the naming of the string inside of it – that’s the value... So you can see the actions that are being displayed. 15:25 – Guest: If you didn’t do it right that’s where the problem would be. 15:38 – John: To me it’s a love/hate relationship b/c there is so much code to it. I usually copy and paste which means that I usually forget to change something. I agree, but I don’t’ like creating it. 16:05 – Guest: I’ve been trying to figure out a solution for it eventually I gave up. 16:23 – John: Moving onto effects – inside that happens inside of the Redux cycle – if you want to do something outside of it that’s when you do effects right? 16:40 – Guest. 16:49 – John: Using the effects is good or do it a different way? 17: 20 – Guest: It makes my components cleaner. I have seen projects that DON’T use it and it’s not the best. 17:36 – John: Like getting a list of customers... (I am using my hands and nobody can see me!) It’s weird to me to NOT use the effects! 18:52 – Guest: If you implement some type of caching then it’s everything to put everything in the state. 19:07 – Chuck: I haven’t used it as much as I would like, but I haven’t do much with it. 19:23 – John: I am curious from somebody hasn’t dove into it – does effects make sense to you, Chuck? 19:39 – Chuck: It seems like effects is a side effect? Like calling out an external API... 20:10 – John: Yeah even multiple effects. John asks a question. 20:23 – Guest answers the question. 20:29 – Chuck: I like that you can make constrained assumptions and all of the complicated... 21:10 – Guest: I am using my effects like functions. 21:26 – John’s question. 21:31 – Chuck: Doing everything! You said implement the 2-payload method – that doesn’t make sense? 21:43 – Guest: Not 100% convinced you need it. What people are doing on these actions... 22:43 – Chuck: How much magic you want? 22:50 – Guest. 22:59 – John: I am confused about ERROR HANDLING. What do you advise for people to do? 23:21 – Guest: Basically, when you deal with that effect you deal with the actions, and the actions... If you get an error on it it’s done. I was trying to explain there that...do it on another stream. Try it on another stream and handle it. What happened to me – I did it on the action state and I got an error and then everything will stop. 24:27 – John: That’s not good! 24:32 – Chuck. 24:35 – John: Good tip! 24:40 – Chuck: Angular has gotten better at that. I still find, though... 25:06 – John. 25:16 – John: Hey I appreciate these blog posts that don’t always show the happy path. To show the unhappy path is a good idea. 25:32 – Chuck. 26:00 – Going down your list, Adrian, let’s talk about effects are services. I agree, but not that we have... 26:24 – Guest: I have seen cases where people forget that. They say I want to call a service, how do I do that? They forget... 26:50 – John: You have to provide your services somewhere. The old way was you could go into the... What do you do? 27:28 – Guest: Most of the applications... 28:17 – John. 28:25 – Chuck: I love deleting code! 28:32 – John: You end up in a spaghetti pool, though, if you needed that deleted code. Nooooo!!! 29:00 – Chuck. 29:01 – Guest. 29:10 – Advertisement: Get A Coder Job! 29:49 – John: Let’s talk about reducers – the smallest part of your tip sections. You say, “keep them simple” – how do you keep them simple? 30:07 – Guest: I have received this observation from several people. This is the biggest problem I had. How to keep them simple... 31:08 – John: When someone makes that type of code – where would you want them to put it? 31:23 – Guest: It depends on different types of actions. Maybe I have some sort of matter that I added to the data – an action from my application we can catch it into an effect and... Not all of the actions have to go to the reducer. 32:04 – John: I say, “Hmm...” when I see reducers like this...they are running a synchronized code inside of a reducer. And I see that a lot. 32:24 – Chuck. 32:28 – John: You go call a reaction, and...sometimes they are doing HTP there, but it’s hard to explain. 33:11 – John: What are some of the things that they can do to step-into, when they are using these? 33:16 – Guest: That’s why I only have these things about the reducers. 33:48 – Chuck: I am wondering what is the life cycle look like? What do you call a reducer from an effect from an action or vice versa? 34:09 – Guest answers the question. 34:37 – John: It can be confusing with all of these different terms. Where does it end? Your component you have to say: call this action. Perform this action and then the action says get customers – the NgRx library listens for that and helps connect to the reducer for you. Look into the action and then return that to a stream to whatever... 35:29 – Guest: Yes, it sends it to reducers. Guest goes into more detail. 36:09 – John: You never talk to the reducer directly? 36:17 – Chuck: ...is that something I should have done before – or does it call effects and the effects load the information into the state and the reducer pulls it out for the action? 36:46 – Guest. 36:58 – Chuck. 37:03 – Guest. 37:53 – John: It really depends on what you want to do, Chuck. John will give a hypothetical scenario. 38:58 – Chuck: In your scenario, let’s say... 39:14 – John: Everything is right up until the end there. It’s a little magical, honestly. I just know here is my selector and here is my data! 40:17 – Chuck: Selector is essentially I am interested in THIS state or THIS state change. 40:40 – Guest. 40:50 – Chuck: So when that changes... 40:56 – Guest. 40:59 – John. 41:05 – Chuck: A little piece of the overall store. 41:18 – Guest: My tip there was a bout the selectors... 42:30 – Chuck: So I can hand off my selector to multiple places? 42:36 – Guest: Yep. You don’t need to know anything else. 42:44 – Guest: Combine it as needed. Another benefit here is memorization. It says that each time you select pure functions it wont call the function again. 43:42 – I am seeing a trend in your tips, too. I am seeing easier way to code. You are always saying selector technique. There are a lot of terms in NgRx module. Dispatchers and states and stores...it’s nice to have a way to create the code easier. 44:21 – Guest: It does take a lot of time for someone to grasp. 44:30 – Chuck. 44:35 – John: Don’t use the store all over the place – that’s what Adrian says! 44:54 – Guest: I think it’s more like dumb components. I have a container of all of these dumb components. The container is the one that KNOWS. 46:22 – Chuck: It’s just a button. 46:28 – Guest: You click the button and it triggers. Whenever you want to use that component then you... 46:48 – Chuck: Any types of data that you wouldn’t want to use in your NgRx store? 47:07 – Guest: It depends – I am not holding any logging information there, though. 47:51 – John: I like to ask WHY. Property initialization. You are saying... 48:11 – Guest: It’s less code and it’s reasonable. If I can have less code then I’d love to have it. I think it’s cleaner b/c it’s not that much code. Most people might think blah, blah, blah, but I think it looks okay. 48:46 – John: I can see why it would be less code. 48:57 – Guest. 49:07 – John: I haven’t seen this: looking at your property initializer... Looking at your code here, Adrian... The store object itself is a reference to the NgRx store. That means you have to... To me I don’t want my app to know that NgRx is involved. I started to do this...I was creating an Angular service, which... Have you done this before? 50:33 – Guest: I have seen this function but I haven’t played with it. It makes sense. This takes it a step further. Like you say it’s perfect b/c nobody knows anything about that store, but it’s a new level. I think you have some benefits with that way of doing it, too. 51:23 – John: The one thing that sticks out is company name is your observable, then your... 52:10 – Guest: Yeah that’s good b/c it might be better! They might not even know what NgRx is, and you have a service so just use them. Yeah it’s just an observable. 52:33 – Chuck: You don’t want to see my garage. 52:44 – Guest: Some services are underrated. Like you suggested we could use them for much more. 53:01 – Guest: It was nice writing these tips. 53:19 – Chuck: What are working on now? 53:23 – Guest: Writing a new blog. 53:41 – Chuck: We will keep an eye out for it. Where do you post? 53:55 – Guest: Usually Medium, and Twitter. Search for my name and you will find me, b/c I have the same handler on all the places. 54:15 – Chuck & John: Let’s go to picks! 54:30 – Chuck is talking about future episodes and potential topics. You can vote stuff up on Trello on NgRx so we can go deeper on this topic. 55:40 – Advertisement – Fresh Books! 1:02:00 – Advertisement – Cache Fly! Links: Vue jQuery Angular C# Chuck’s Twitter John Papa’s Twitter Adrian’s Medium Adrian’s Twitter Adrian’s GitHub Adrian’s Blog Post Adrian’s Article: Testing NgRx Effects Sponsors: Angular Boot Camp Fresh Books Get a Coder Job Course Cache Fly Picks: John NgRx Data Conferences - Don’t feel mofo Charles Discord App Adrain Angular In-depth Doc Wallaby
Panel: Charles Max Wood John Papa Special Guest: Adrian Faciu In this episode, Chuck talks with Adrian Faciu who is a developer for Visma and is a blogger. The panel talks to Adrian about his blog titled, “NgRx Tips & Tricks.” They ask Adrian in-depth questions about NgRx, among many other topics. Listen to today’s episode for more details! Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:55 – Chuck: Hi! Our guest is Adrian Faciu. 1:10 – Guest: Hello! I am Adrian and I am a developer who works for a Norwegian company, but I live in Romania! 1:35 – Chuck. 1:36 – Guest. 1:47 – Chuck: The market is so global. I have talked with many different guests from different parts of the world – it’s really neat! It’s this global phenomenon. 2:12 – Guest: It’s a great thing! 2:23 – Chuck: They have an office where you live? 2:31 – Yes. 2:37 – Chuck: How are you guys using Angular over there? 2:47 – Guest: We have several different products. We customize using them with internalized tools. 3:04 – Chuck: Real quick let’s talk about your blog post. I will admit I am not that familiar with NgRx, so I will ask newbie questions. Now do you want to explain what this is? 3:41 – Guest: Sure! The short story of the article is I saw people doing things the hard way. And after I figured out some things, people encouraged me to write about my experience. 4:37 – Chuck: John Papa just signed-in! 4:53 – Guest: Yes NgRx is... 5:02 – Chuck: You used classes for all actions what do you mean by that? 5:05 – Guest answers the question into detail. 6:31 – Chuck: Let’s say we have a class that uses a log error... 6:42 – Guest: For example you have actions that... 7:02 – Chuck: When you use the reducer... 7:10 – Guest: There are other tricks we can use like keeping all of them in the same file... 8:00 – Guest talks about the union type. 8:24 – Chuck: You learned this by doing things wrong – what happens when you do these things wrong? 8:30 – Guest: If you don’t put all of your classes in the right file then you end up with a lot of files. If you don’t create hero types then you’d have to... 10:02 – Chuck: If you import user actions then does it import all of the other types? 10:08 – Guest: Import everything from that file. 10:17 – Chuck: If you have any questions, John, feel free to chime-in! 10:29 – John: Yeah I am scanning through this. The negative I hear a lot of through actions, it’s cause we create constants – the action class creators, it seems to cause an undue amount of stress. How much actual code do you actually have to write – how do you feel about that? 11:12 – Guest: I didn’t want to write all of this code! That’s what I wanted to avoid. 11:44 – John: I wrote them, didn’t like them, I went back to them... It wasn’t just that I created a new action I had to create the constant and other things – also the place you do the union type, I’d forget to do the union type at the end! If you don’t have all of those things then it won’t work. Even on a simple project I’d have 120 lines of code for a simple task. 12:49 – Guest: Yes. Sometimes I would forget this or that. I’d have to figure out what I did wrong. I went back and created classes for a lot of things. I like the benefits. 13:19 – John: I like your ideas and your tips in your blog. How do you feel about the NAMES of those actions? 13:55 – Guest. 14:51 – John: Important part is the naming of the string inside of it – that’s the value... So you can see the actions that are being displayed. 15:25 – Guest: If you didn’t do it right that’s where the problem would be. 15:38 – John: To me it’s a love/hate relationship b/c there is so much code to it. I usually copy and paste which means that I usually forget to change something. I agree, but I don’t’ like creating it. 16:05 – Guest: I’ve been trying to figure out a solution for it eventually I gave up. 16:23 – John: Moving onto effects – inside that happens inside of the Redux cycle – if you want to do something outside of it that’s when you do effects right? 16:40 – Guest. 16:49 – John: Using the effects is good or do it a different way? 17: 20 – Guest: It makes my components cleaner. I have seen projects that DON’T use it and it’s not the best. 17:36 – John: Like getting a list of customers... (I am using my hands and nobody can see me!) It’s weird to me to NOT use the effects! 18:52 – Guest: If you implement some type of caching then it’s everything to put everything in the state. 19:07 – Chuck: I haven’t used it as much as I would like, but I haven’t do much with it. 19:23 – John: I am curious from somebody hasn’t dove into it – does effects make sense to you, Chuck? 19:39 – Chuck: It seems like effects is a side effect? Like calling out an external API... 20:10 – John: Yeah even multiple effects. John asks a question. 20:23 – Guest answers the question. 20:29 – Chuck: I like that you can make constrained assumptions and all of the complicated... 21:10 – Guest: I am using my effects like functions. 21:26 – John’s question. 21:31 – Chuck: Doing everything! You said implement the 2-payload method – that doesn’t make sense? 21:43 – Guest: Not 100% convinced you need it. What people are doing on these actions... 22:43 – Chuck: How much magic you want? 22:50 – Guest. 22:59 – John: I am confused about ERROR HANDLING. What do you advise for people to do? 23:21 – Guest: Basically, when you deal with that effect you deal with the actions, and the actions... If you get an error on it it’s done. I was trying to explain there that...do it on another stream. Try it on another stream and handle it. What happened to me – I did it on the action state and I got an error and then everything will stop. 24:27 – John: That’s not good! 24:32 – Chuck. 24:35 – John: Good tip! 24:40 – Chuck: Angular has gotten better at that. I still find, though... 25:06 – John. 25:16 – John: Hey I appreciate these blog posts that don’t always show the happy path. To show the unhappy path is a good idea. 25:32 – Chuck. 26:00 – Going down your list, Adrian, let’s talk about effects are services. I agree, but not that we have... 26:24 – Guest: I have seen cases where people forget that. They say I want to call a service, how do I do that? They forget... 26:50 – John: You have to provide your services somewhere. The old way was you could go into the... What do you do? 27:28 – Guest: Most of the applications... 28:17 – John. 28:25 – Chuck: I love deleting code! 28:32 – John: You end up in a spaghetti pool, though, if you needed that deleted code. Nooooo!!! 29:00 – Chuck. 29:01 – Guest. 29:10 – Advertisement: Get A Coder Job! 29:49 – John: Let’s talk about reducers – the smallest part of your tip sections. You say, “keep them simple” – how do you keep them simple? 30:07 – Guest: I have received this observation from several people. This is the biggest problem I had. How to keep them simple... 31:08 – John: When someone makes that type of code – where would you want them to put it? 31:23 – Guest: It depends on different types of actions. Maybe I have some sort of matter that I added to the data – an action from my application we can catch it into an effect and... Not all of the actions have to go to the reducer. 32:04 – John: I say, “Hmm...” when I see reducers like this...they are running a synchronized code inside of a reducer. And I see that a lot. 32:24 – Chuck. 32:28 – John: You go call a reaction, and...sometimes they are doing HTP there, but it’s hard to explain. 33:11 – John: What are some of the things that they can do to step-into, when they are using these? 33:16 – Guest: That’s why I only have these things about the reducers. 33:48 – Chuck: I am wondering what is the life cycle look like? What do you call a reducer from an effect from an action or vice versa? 34:09 – Guest answers the question. 34:37 – John: It can be confusing with all of these different terms. Where does it end? Your component you have to say: call this action. Perform this action and then the action says get customers – the NgRx library listens for that and helps connect to the reducer for you. Look into the action and then return that to a stream to whatever... 35:29 – Guest: Yes, it sends it to reducers. Guest goes into more detail. 36:09 – John: You never talk to the reducer directly? 36:17 – Chuck: ...is that something I should have done before – or does it call effects and the effects load the information into the state and the reducer pulls it out for the action? 36:46 – Guest. 36:58 – Chuck. 37:03 – Guest. 37:53 – John: It really depends on what you want to do, Chuck. John will give a hypothetical scenario. 38:58 – Chuck: In your scenario, let’s say... 39:14 – John: Everything is right up until the end there. It’s a little magical, honestly. I just know here is my selector and here is my data! 40:17 – Chuck: Selector is essentially I am interested in THIS state or THIS state change. 40:40 – Guest. 40:50 – Chuck: So when that changes... 40:56 – Guest. 40:59 – John. 41:05 – Chuck: A little piece of the overall store. 41:18 – Guest: My tip there was a bout the selectors... 42:30 – Chuck: So I can hand off my selector to multiple places? 42:36 – Guest: Yep. You don’t need to know anything else. 42:44 – Guest: Combine it as needed. Another benefit here is memorization. It says that each time you select pure functions it wont call the function again. 43:42 – I am seeing a trend in your tips, too. I am seeing easier way to code. You are always saying selector technique. There are a lot of terms in NgRx module. Dispatchers and states and stores...it’s nice to have a way to create the code easier. 44:21 – Guest: It does take a lot of time for someone to grasp. 44:30 – Chuck. 44:35 – John: Don’t use the store all over the place – that’s what Adrian says! 44:54 – Guest: I think it’s more like dumb components. I have a container of all of these dumb components. The container is the one that KNOWS. 46:22 – Chuck: It’s just a button. 46:28 – Guest: You click the button and it triggers. Whenever you want to use that component then you... 46:48 – Chuck: Any types of data that you wouldn’t want to use in your NgRx store? 47:07 – Guest: It depends – I am not holding any logging information there, though. 47:51 – John: I like to ask WHY. Property initialization. You are saying... 48:11 – Guest: It’s less code and it’s reasonable. If I can have less code then I’d love to have it. I think it’s cleaner b/c it’s not that much code. Most people might think blah, blah, blah, but I think it looks okay. 48:46 – John: I can see why it would be less code. 48:57 – Guest. 49:07 – John: I haven’t seen this: looking at your property initializer... Looking at your code here, Adrian... The store object itself is a reference to the NgRx store. That means you have to... To me I don’t want my app to know that NgRx is involved. I started to do this...I was creating an Angular service, which... Have you done this before? 50:33 – Guest: I have seen this function but I haven’t played with it. It makes sense. This takes it a step further. Like you say it’s perfect b/c nobody knows anything about that store, but it’s a new level. I think you have some benefits with that way of doing it, too. 51:23 – John: The one thing that sticks out is company name is your observable, then your... 52:10 – Guest: Yeah that’s good b/c it might be better! They might not even know what NgRx is, and you have a service so just use them. Yeah it’s just an observable. 52:33 – Chuck: You don’t want to see my garage. 52:44 – Guest: Some services are underrated. Like you suggested we could use them for much more. 53:01 – Guest: It was nice writing these tips. 53:19 – Chuck: What are working on now? 53:23 – Guest: Writing a new blog. 53:41 – Chuck: We will keep an eye out for it. Where do you post? 53:55 – Guest: Usually Medium, and Twitter. Search for my name and you will find me, b/c I have the same handler on all the places. 54:15 – Chuck & John: Let’s go to picks! 54:30 – Chuck is talking about future episodes and potential topics. You can vote stuff up on Trello on NgRx so we can go deeper on this topic. 55:40 – Advertisement – Fresh Books! 1:02:00 – Advertisement – Cache Fly! Links: Vue jQuery Angular C# Chuck’s Twitter John Papa’s Twitter Adrian’s Medium Adrian’s Twitter Adrian’s GitHub Adrian’s Blog Post Adrian’s Article: Testing NgRx Effects Sponsors: Angular Boot Camp Fresh Books Get a Coder Job Course Cache Fly Picks: John NgRx Data Conferences - Don’t feel mofo Charles Discord App Adrain Angular In-depth Doc Wallaby
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
Panel: Dave Kimura Charles Max Wood David Richards Special Guest: Dan Mayer In this episode of Ruby Rogues, the panel talks with Dan Mayer who believes that small distributed software teams can make a large impact. Dan loves Ruby, distributed systems, OSS, and making development easier. The panel and Dan talk about performance and benchmarking. Check out today’s episode to learn more! Show Topics: 0:00 – Sentry.IO – Advertisement! 1:07 – Chuck: Our panel is Dave, David, myself, and our guest is Dan Mayer. Say “Hi”! 1:24 – Chuck: Give a brief introduction, please. 1:32 – Dan gives his background and what he currently is working on. 1:53 – Chuck: We wanted to talk to you about benchmarking and performance. Tell us how you got into this? 2:28 – Dan: It has been an interesting timeline for me. About seven years I worked for a large site that had a legacy Rails app. It got a lot of dusty corners over the years and we removed dead code, and removed bugs and confusion for the consumer. We were finding ways to tweak it and not impacting your users. I was using Trace Point but the overhead was quite significant. I moved away from that project but found that I found a need for it, again, a few years later. I actually tried to modify...and basically Eric said “prove that it is slow.” It really wasn’t the type of bottleneck that I was seeing. Since then I am rewriting it. I removed one bottleneck and now... 5:00 – Chuck: ...if that number gets smaller then Ruby is doing well. Is it really that simple? How do you benchmark? 5:15 – Dan answers the question. 6:40 – Panel: How do you benchmark things front to back? 6:49 – Dan: I look at benchmarking in different layers. You can see the overall impact in the broad range. If you want to see specific things then that’s a little trickier. For Ruby 3x3 he has been working on a Rails Benchmark, and that’s Noah. He has a sample Rails app and... 8:09 – Chuck: He is using discourse, and we talked to him on a past episode. 8:20 – Dan: My original plan was to insert my gem within that project. However, I ran into a few issues and Noah and I are working on that because of the issues. 8:57 – Panel: How does the coverband gem – how does it provide security so you don’t leak out information to in-users? 9:12 – Dan answers the question. 9:54 – Panel: Then you can build whatever views you want to trace back that sort of information? 10:02 – Dan answers the question. 10:30 – Chuck: Is it running benchmarks against every method you have in your app or what? 10:40 – Dan answers question. 11:27 – Panel: I like when I can remove all of the code I feel safe. 1:37 – Dan: The gem was driven by the fact that I love to delete code. These old files have been sitting around – they aren’t valid – let’s get rid of them. 12:04 – Chuck: This is off topic from benchmarking, but... 12:43 – Dan: ...to get that feature at run time it can hurt your performance. 15:20 – Panel: Is there added memory usage? 15:27 – Dan: I rewrote the library around coverage and I put it out. It worked well for my company and myself. But people were saying that they got a huge performance hit. I went from needing to sample to capture...the new bottleneck was collecting the data all of the code usage of your gems and...it went from just recording your custom code to all Ruby code. Where it was slowing down was reporting that. I didn’t have any benchmarks to capture that. What I was failing to do was... I can talk about what I did do to help people if you want? 17:41 – Chuck: Looking at how much storage is my app using or how much...How can you even begin to isolate it? 18:11 – Dan: On all the different types of benchmarking – I know there is a benchmarking memory increase. I haven’t benchmarked that, yet. To get at these different levels, how do we ensure that’s fast? It was a new challenge to me. 19:45 – Panel: It sounds like this has become a practice over the years. Is that how you handle it or how do you like to use it? 20:07 – Dan: When I started using this benchmarking is because I wanted to solve something. There were several regressions. We’d go back and address it. What I tried doing is put all the benchmarks into the gem. I think back by the Ruby 3x3 goals... 21:49 – Panel: What comes to mind is appreciating well-crafted software that really does well – maybe measure what customer output is? 22:43 – Dan: What people care about is their application. You can look to see... 23:33 – Panel: Automating takes that pressure right off of me and I can do 23:47 – Chuck: Recording all the things you want to do. We are talking about this right now you can record some of it in these tests or... 24:06 – Dan: I have fixed these performance things in the past. I have more confidence that these things get fixed before they get released. Having that methodology helps a lot. 24:43 – Advertisement – RubyMine 25:10 – Panel: I think it’s good to see WHERE your application is getting used the most. To see where you have the MOST code usage. 26:20 – Dan: That’s a good story on back on regressions on benchmarking or performances. 27:46 – Dan: One thing that I think is interesting – I believe the Rails performance testing has gone blank essentially. There are good articles but in the Rails 5 the guides no longer have any information. There is so much talk about performance and benchmarking but things have gotten lost, too. 28:28 – Panel: It’s interesting how we get into x, y, and z. We tend to figure it out and some guys focus on the next thing and the next. 29:24 – Dan: The fads of the things that go in-and-out. It’s definitely coming back: the performance in the Ruby world. My theory is that the tools have gotten that much better and people are doing less. They have offloaded a lot of things for people. It shows, though, it doesn’t do everything. 30:19 – Panel: I think that’s valuable, too. The WHOLE package – this is how we deliver, and these are the tools and the toolkits. I miss Ruby every time that I have to step away b/c I have to use something else. 31:17 – Dan: It sounds COOL to use Elixir and whatnot, but I just can’t get into it as much as when I use Ruby. When I try to branch out to use another language it isn’t the same. 31:47 – Panel: When the pressure is high I use Ruby so that’s where my heart is. 31:58 – Dan: It falls a little short, sometimes, it’s an easy thing that people say: it’s so slow. It’s one of those that we’d like to have a better answer. Is it something that people have thought of as a continual thing or...? 32:47 – Chuck: It’s generally to resolve an issue here or there. 32:57 – Panel. 33:07 – Chuck: When I do use the benchmarks I have added in my test suite a trip wire that validates that it’s under a certain point. 33:37 – Panel: If I did that my tests would never pass. 33:45 – Chuck. 33:49 – Dan: How can you do that reliably where you get the value but you don’t have a bunch of false failures? A person has to do it to see if it is faster/slower. 34:26 – Panel: For my applications – usually they are slow not b/c of Ruby but b/c of a poor architectural decision we have made. Every situation you can go and weight it to see what is best. Ultimately they are the ones that are brining in money into your business. 35:27 – Chuck: When I add things into my test suites is b/c there was some major performance hiccup where it ruins the user’s flow. 35:55 – Dan: The way you benchmark it... Benchmarking a gem or a library it’s how can it impact other people’s apps. And the Ruby 3x3 is proving that it’s faster – what does that mean – and I think Noah has done some great work on. 36:30 – Dan: The last thing I want to mention is Julia’s work on that is what got me back into coverband. I was thinking I would use a different version of coverband that would use RBSPY. 37:37 – Chuck: Yeah, that was a great episode. 37:44 – Dan: I want to play with it some more. I guess I would have to know more in Rust, though. 37:57 – Chuck: Anything that you are working on within this space? 38:04 – Dan: There have been 4-5 current people in coverband and we have added a bunch of new benchmarks and they are 60% faster. I am trying to work on getting a simpler version out there. Hopefully it will be live soon after getting rid of the bugs. 39:05 – Chuck: How can people find you? 39:10 – Dan: My blog, Twitter, and GitHub! 39:22 – Chuck: M-A-Y-E-R. 39:36 – Picks! 39:40 – Advertisement – Fresh Books! End – Cache Fly! Links: Get a Coder Job Course Ruby Rust Ruby Motion Ruby on Rails Angular Benchmark-IPS Rbspy Ruby Benchmarking Benchmarking Bugs Coverband TracePoint RR 362 Episode Rails Guides Atomic Habits EasyRes Skinny Pop Blog through AppSignal Book: Extreme Ownership Noah Gibbs’ Twitter Dan Mayer’s Blog Dan Mayer’s Twitter Dan Mayer’s GitHub Dan Mayer’s Medium Sponsors: Sentry RubyMine Cache Fly Fresh Books Picks: David Atomic Habits by James Clear Dave EasyRes Skinny Pop Charles Extreme Ownership Jocko Willink podcast 2 Keto Dudes Ketogenic Forums Dan Artemis https://blog.appsignal.com/2018/09/28/active-record-vs-ecto.html https://github.com/evanphx/benchmark-ips https://github.com/rbspy/rbspy
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 J5 ports and SD card readers Podwrench
Panel: Dave Kimura Charles Max Wood David Richards Special Guest: Genadi Samokovarov In this episode of Ruby Rogues, the panel talks with Genadi Samokovarov who is a software developer and loves using Ruby. Genadi also likes dance music. You can check out his code at GitHub and his mixes on SoundCloud. Finally, he blogs about technology that he cares about. Check-out his post about a curious Proc.new case in Ruby. If you are interested in his work experience, check out his resume here. Send Genadi an email or follow his social links. Show Topics: 0:00 – Sentry.IO – Advertisement! 1:30 – Chuck: Introduce yourself please. 1:39 – The guest talks about his background and the company he works for. 2:03 – Chuck: Did you build the web console or something else? 2:05 – Guest. 3:20 – Chuck: How do you run Ruby on the web console? 3:40 – Guest answers Chuck’s question. 4:13 – Chuck: The other question is about security concerns – you don’t want to run in production? 4:25 – Guest: No, you don’t want to do that. 4:31 – Chuck: Use at home - don’t use it on your work server. 5:15 – Panel: It’s one of those features that people overlook on Rails. You have to proactively add in a pack to launch in a web console in that particular view. A lot of times people will either throw away rays (ERB) and they are able to get the same thing but you can interact with the page w/o full rendering of the application. What I just mentioned what does a web console has a space for? 6:18 – Guest. 7:23 – Panel: What would happen – if I put a debugging code in my application and it got committed and shipped – what would happen? 7:46 – Guest answers. 8:24 – Chuck: When you deploy a production I don’t even know what this tag is? 8:33 – Guest. 9:10 – Chuck: Can I run it on Sinatra...or the other ones? 9:20 – Guest: If you make a bit of effort... 9:42 – Chuck: How does it pass things to the backend? 9:52 – Guest. 11:22 – Chuck: Let’s say you set this up and you would include the gem in the Rails app – I guess it comes by default. 11:36 – Guest. 11:58 – Panel: And if you want to embed it in a view in Rails? 12:05 – Guest. 12:06 – Chuck: That’s nice. 12:08 – Guest. 12:43 – Panel: I would think that would be the most exciting things. I know the views and how it’s included there is a little bit of a black box for me. I don’t know quite what is going on and that’s after many years of use. Being able to open the web console and see what’s going on and see what I was thinking. Sometimes when I have hard times with my code it’s because I didn’t understand the Rails way and how they organize things. So for me to take a look it dawns on me. 13:33 – Guest. 13:41 – Panel: I learned Rails on a laptop. I went to terminal mode only and I learned it really, really well. 14:21 – Guest. 14:27 – Panel: Can web console do a separate JavaScript app and then you have a Ruby API backend – can you use console any plugin to integrate with that? 15:00 – Guest. 16:20 – Panel: That’s really cool, and good note. When people are developing a gem they keep one type of Ruby or whatever. They don’t take into account that Ruby or the MRI or whatever they are using it’s cool that you are proactive keeping into account the different interpreters and it works across the platform. 16:56 – Guest: It’s a tricky business. 18:39 – Panel: So is this under active development or...? 18:45 – Guest. 18:53 – Chuck: What was the hardest part to put this together? 19:00 – Guest: Getting it to work! 19:09 – Chuck: Nope...just getting it to work. 19:15 – Guest. 20:43 – Panel: That’s something where I have been in situations where it has given back the Rails spec trace. Not the actual application – I have no idea how to debug it. Then I dig in deeper and find it’s in my application part. It is important to have that. 21:13 – Guest. 21:51 – Get A Coder Job! 22:15 – Chuck: Anything else or should we talk about the conference for a minute? 22:30 – Guest. 24:09 – Panel: So you are getting these conferences going – is there a healthy/strong Ruby following in Bulgaria, generally? 24:25 – Guest: We do Meetups. It’s pretty active and a healthy community. It’s not as strong as the States, but it’s strong. 25:26 – Panel: Nice. I find that it’s interesting – I was around with Ruby in 2004, and people have been using Ruby for a while and Rails was new. It’s fun to build an organization around that and empower people to do great things. It’s great to do work that are learning Ruby. 26:08 – Guest. 26:25 – Panel: So that’s one of my coworkers and got him using VS code and show people the light to make the switch. 26:50 – Chuck: I’ve already switched. 27:01 – Panel: We like our tools. 27:17 – Guest: I guess my people like VS code b/c it’s easier to maintain. 27:35 – Panel: Maybe my mind is so feeble-minded. 27:45 – Chuck: I turned on the EMAX for along time and turned on my EMAX in my KS code. I get the nice extras. I don’t feel like there are 10 zillion things to worry about. 28:12 – Guest. 28:21 – Panel: I think the key is the expressiveness – get it the ways I want 28:38 – Chuck: I just want to think of the fact that I am using code – and that’s a good thing. 28:54 – Guest. 29:04 – Panel: How many attendees did you have? 29:08 – Guest. 29:22 – Chuck: The conferences that I like to attend that have an attendance of 150, I like b/c it’s intimate. The larger conferences I feel lost in the crowd. It’s just different for me. 30:17 – Panel: It makes it easy to break into groups if the conference is small. 30:30 – Panel: There are so many things that the experts can teach and show to the beginners. They could teach me something that I didn’t know. It’s powerful b/c you’re talking about projects and get to know each other. 31:39 – Guest. 32:16 – Panel: One thing I like is that the attendees make a Slack channel, and the speaker can address that during the talk. Sometimes they get answered, but just in case. 32:40 – Chuck: Anything you’re working on now? 32:43 – Guest. 32:52 – Panel: Nice. 33:00 – Guest. 33:37 – Chuck: How can people find out about these different conferences? 33:50 – Guest: We have a Twitter account. 33:04 – Chuck: Let’s go to picks! 34:12 – Advertisement – Fresh Books! 41:31 – Cache Fly! Links: Get a Coder Job Course Ruby Ruby Motion Ruby on Rails Angular Ruby Issue Tracking System Libraries.io Balkan Ruby Partial Conf Chaos Group Genadi Samokovarov’s Twitter Genadi Samokovarov’s GitHub Genadi Samokovarov’s Website Sponsors: Sentry Get a Coder Job Course Fresh Books Cache Fly Picks: David Creative Quest by Quest Love The Rhythm in Everything Dave Dewalt Clamps Action Text Charles The Diabetes Code Keto Diet Endorsed Local Providers via Dave Ramsey Genadi Long Walk Freedom
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 J5 ports and SD card readers Podwrench
Panel: Dave Kimura Charles Max Wood David Richards Special Guest: Genadi Samokovarov In this episode of Ruby Rogues, the panel talks with Genadi Samokovarov who is a software developer and loves using Ruby. Genadi also likes dance music. You can check out his code at GitHub and his mixes on SoundCloud. Finally, he blogs about technology that he cares about. Check-out his post about a curious Proc.new case in Ruby. If you are interested in his work experience, check out his resume here. Send Genadi an email or follow his social links. Show Topics: 0:00 – Sentry.IO – Advertisement! 1:30 – Chuck: Introduce yourself please. 1:39 – The guest talks about his background and the company he works for. 2:03 – Chuck: Did you build the web console or something else? 2:05 – Guest. 3:20 – Chuck: How do you run Ruby on the web console? 3:40 – Guest answers Chuck’s question. 4:13 – Chuck: The other question is about security concerns – you don’t want to run in production? 4:25 – Guest: No, you don’t want to do that. 4:31 – Chuck: Use at home - don’t use it on your work server. 5:15 – Panel: It’s one of those features that people overlook on Rails. You have to proactively add in a pack to launch in a web console in that particular view. A lot of times people will either throw away rays (ERB) and they are able to get the same thing but you can interact with the page w/o full rendering of the application. What I just mentioned what does a web console has a space for? 6:18 – Guest. 7:23 – Panel: What would happen – if I put a debugging code in my application and it got committed and shipped – what would happen? 7:46 – Guest answers. 8:24 – Chuck: When you deploy a production I don’t even know what this tag is? 8:33 – Guest. 9:10 – Chuck: Can I run it on Sinatra...or the other ones? 9:20 – Guest: If you make a bit of effort... 9:42 – Chuck: How does it pass things to the backend? 9:52 – Guest. 11:22 – Chuck: Let’s say you set this up and you would include the gem in the Rails app – I guess it comes by default. 11:36 – Guest. 11:58 – Panel: And if you want to embed it in a view in Rails? 12:05 – Guest. 12:06 – Chuck: That’s nice. 12:08 – Guest. 12:43 – Panel: I would think that would be the most exciting things. I know the views and how it’s included there is a little bit of a black box for me. I don’t know quite what is going on and that’s after many years of use. Being able to open the web console and see what’s going on and see what I was thinking. Sometimes when I have hard times with my code it’s because I didn’t understand the Rails way and how they organize things. So for me to take a look it dawns on me. 13:33 – Guest. 13:41 – Panel: I learned Rails on a laptop. I went to terminal mode only and I learned it really, really well. 14:21 – Guest. 14:27 – Panel: Can web console do a separate JavaScript app and then you have a Ruby API backend – can you use console any plugin to integrate with that? 15:00 – Guest. 16:20 – Panel: That’s really cool, and good note. When people are developing a gem they keep one type of Ruby or whatever. They don’t take into account that Ruby or the MRI or whatever they are using it’s cool that you are proactive keeping into account the different interpreters and it works across the platform. 16:56 – Guest: It’s a tricky business. 18:39 – Panel: So is this under active development or...? 18:45 – Guest. 18:53 – Chuck: What was the hardest part to put this together? 19:00 – Guest: Getting it to work! 19:09 – Chuck: Nope...just getting it to work. 19:15 – Guest. 20:43 – Panel: That’s something where I have been in situations where it has given back the Rails spec trace. Not the actual application – I have no idea how to debug it. Then I dig in deeper and find it’s in my application part. It is important to have that. 21:13 – Guest. 21:51 – Get A Coder Job! 22:15 – Chuck: Anything else or should we talk about the conference for a minute? 22:30 – Guest. 24:09 – Panel: So you are getting these conferences going – is there a healthy/strong Ruby following in Bulgaria, generally? 24:25 – Guest: We do Meetups. It’s pretty active and a healthy community. It’s not as strong as the States, but it’s strong. 25:26 – Panel: Nice. I find that it’s interesting – I was around with Ruby in 2004, and people have been using Ruby for a while and Rails was new. It’s fun to build an organization around that and empower people to do great things. It’s great to do work that are learning Ruby. 26:08 – Guest. 26:25 – Panel: So that’s one of my coworkers and got him using VS code and show people the light to make the switch. 26:50 – Chuck: I’ve already switched. 27:01 – Panel: We like our tools. 27:17 – Guest: I guess my people like VS code b/c it’s easier to maintain. 27:35 – Panel: Maybe my mind is so feeble-minded. 27:45 – Chuck: I turned on the EMAX for along time and turned on my EMAX in my KS code. I get the nice extras. I don’t feel like there are 10 zillion things to worry about. 28:12 – Guest. 28:21 – Panel: I think the key is the expressiveness – get it the ways I want 28:38 – Chuck: I just want to think of the fact that I am using code – and that’s a good thing. 28:54 – Guest. 29:04 – Panel: How many attendees did you have? 29:08 – Guest. 29:22 – Chuck: The conferences that I like to attend that have an attendance of 150, I like b/c it’s intimate. The larger conferences I feel lost in the crowd. It’s just different for me. 30:17 – Panel: It makes it easy to break into groups if the conference is small. 30:30 – Panel: There are so many things that the experts can teach and show to the beginners. They could teach me something that I didn’t know. It’s powerful b/c you’re talking about projects and get to know each other. 31:39 – Guest. 32:16 – Panel: One thing I like is that the attendees make a Slack channel, and the speaker can address that during the talk. Sometimes they get answered, but just in case. 32:40 – Chuck: Anything you’re working on now? 32:43 – Guest. 32:52 – Panel: Nice. 33:00 – Guest. 33:37 – Chuck: How can people find out about these different conferences? 33:50 – Guest: We have a Twitter account. 33:04 – Chuck: Let’s go to picks! 34:12 – Advertisement – Fresh Books! 41:31 – Cache Fly! Links: Get a Coder Job Course Ruby Ruby Motion Ruby on Rails Angular Ruby Issue Tracking System Libraries.io Balkan Ruby Partial Conf Chaos Group Genadi Samokovarov’s Twitter Genadi Samokovarov’s GitHub Genadi Samokovarov’s Website Sponsors: Sentry Get a Coder Job Course Fresh Books Cache Fly Picks: David Creative Quest by Quest Love The Rhythm in Everything Dave Dewalt Clamps Action Text Charles The Diabetes Code Keto Diet Endorsed Local Providers via Dave Ramsey Genadi Long Walk Freedom
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 J5 ports and SD card readers Podwrench