Podcasts about guest not

  • 8PODCASTS
  • 18EPISODES
  • 52mAVG DURATION
  • ?INFREQUENT EPISODES
  • Dec 18, 2018LATEST

POPULARITY

20172018201920202021202220232024


Best podcasts about guest not

Latest podcast episodes about guest not

Elixir Mix
EMx 032: Using Ecto with Edgar Pino

Elixir Mix

Play Episode Listen Later Dec 18, 2018 46:18


Panel: Mark Ericksen Josh Adams Special Guest: Edgar Pino    In this episode of Elixir Mix, the panel talks with Edgar Pino who talks with the panel about the latest version of Ecto! They discuss Ecto’s new features and how easy of a transition it was to go from the previous to the newest version. Edgar Pino is a software engineer who currently resides in Utah! Check out today’s episode! Show Topics: 0:00 – Advertisement: Get A Coder Job!  1:04 – Mark: Hello! Please give us your background? 1:16 – Guest: I have been in Elixir for the past year or two and I have been living in Utah. 1:48 – Mark: I love the nature and state parks. Winter is coming, so I hope you are ready! 1:58 – Guest: Winter...hopefully it will be great! 2:20 – Panelists and guest go back-and-forth. 2:30 – Mark: Let’s talk about your blog posts about Ecto. What are your new announcements? 2:52 – Guest: Our new version was released a few weeks ago. 3:32 – Panel. 3:38 – The guest talks about the old and new versions of Ecto. 4:03 – Panel: What is new and how is this going to affect me (the new version)? 4:11 – Panel: The transition was pretty painless for me. The only change was the breaking-up of the adapter ad also the timestamp bit. That was it. 4:34 – Panel: Yeah that micro-timestamp surprised me for a second, but it wasn’t that bad after all. 4:52 – Guest: Yeah it was painless for me, too. 5:19 – Panel: Edgar can you talk about the change and what they did with the timestamps? 5:32 – The guest answers the question. 5:54 – Panel: Elm opted to use the micro-millisecond, too. Time zones aren’t a thing. 6:24 – Mark. 7:08 – Panel: My tests are the only reason why I care about the millisecond. 7:21 – Mark: With the upgrade don’t do what I did. Mark talks about how he updated and the issues he had. 8:47 – Guest: Pattern matching? 8:53 – Mark: Yep that sort of stuff. I didn’t need to do it and it was a learning experience. Edgar, please give us an introduction to the blog posts? Why did you want to document it? 9:18 – Guest: I always used Ecto with Phoenix but started learning Ecto by itself. I jotted down notes that I thought was interesting. That’s how it started. 10:17 – Mark: See links in the show notes. Using a gen to use the repo – this is one thing that I didn’t know was an option. 10:46 – Guest. 11:01 – Mark asks a question. 11:10 – Guest: Not really PHP applications but listening to web messages and hot topics but you are doing the database and serving data... 11:40 – Guest talks about Ecto and the different versions and features. 12:09 – Mark chimes-in. 12:23 – Panel: Yep – it’s under the hood and it’s for business logic and doesn’t have a web piece. Stop writing tings for the web – it’s a fad. 12:50 – Mark: It’s an umbrella and saw this through the Phoenix generators. 13:54 – Guest talks about web applications. 14:06 – Mark: Let’s talk about schema and databases? 14:23 – Panelist chimes-in. 14:51 – Panelists and guest talk about schemas, apps, and more. Check it out here. 16:13 – Guest: You will get the data and pass it in as a structure and... 16:23 – Mark: Here is a map of what I’d like you to do on my behalf. It goes to a chain set and I will turn it into a string and this is why it’s failed. 17:25 – Panel. 17:31 – Mark: It’s not hard and it’s pretty easy. Let’s talk about blog posts.  18:10 – Panel. 18:22 – Mark: I use Absinthe in the library in Elixir to support GraphQL. 18:50 – Panel. 19:06 – Guest: The total number of results and only once did I need a more complicated thing. 19:34 – Mark: I haven’t had a need for those. 20:01 – Panelists and guests talk about the hypothetical situations where and how they would use certain features for said situations. 20:23 – Guest: You don’t have to understand right out-of-the-box. 20:40 – Panel: Have you used stored functions as meta-columns in an Ecto schema? 20:48 – Panelist explains. 21:24 – Guest: I have used them in the past and now I don’t. For me it was hard to debug – maybe it’s just me. 21:43 – Panel: I was introduced to them through a colleague of mine. 21:53 – Mark chimes-in and talks about him being a DOT NET developer. 22:18 – Panelist chime-in, too! 22:50 – Mark. 23:16 – Panel: It was an awful time and not a good idea. 70 pages! Debugging it was hard. 23:35 – Mark: That experience was apart of that burn that I had before. I wanted to stay far away from it as far as I could. 24:00 – Panel: When I was doing it in DOT NET we didn’t have migrations. 24:12 – Panelist continues. 24:32 – Guest: I wonder if... 24:37 – Panel: It’s just a sequel – it’s not just an Ecto specific feature. 24:48 – Guest. 24:53 – FreshBooks! 26:01 – Mark: Edgar you were interested also in HOW Ecto was built. What experience did you have? 26:21 – Guest answers the question. 28:22 – Panel: No you typed REPO there. 28:30 – Guest: Whenever you save or make an update it’s a method. Unlike Ecto you have to all it something else. 28:47 – Panel: Hey let me get those article posted and someone did it in Loop and that is a lot of queries. 29:03 – Guest: Yeah that’s a good point. 29:45 – Mark: Something I’ve noticed is that they talk about performance improvements and better memory usage. Go read about it- it’s great. They talk about HOW Ecto is working and what is behind the scenes. 31:15 – Mark: Another feature that I have seen is UPSERTS. 31:50 – Guest talks about UPSERTS, too. 32:34 – Mark: Say I have a system that has 3 servers and it’s rolling updates (it will take down one and put up the new code, etc. and it will cycle) one thing they added was a lock on the migration table. I don’t know if you’ve had this – once it hits production data it is slow. Mark continues. 33:20 – Panel: I think it was just luck of the draw. 33:30 – Mark continues. 33:57 – The guest talks about his experience with the above-mentioned scenario. 34:20 – Mark: I like that you both have had goo experiences with your upgrades. I want people to be excited and know that there are great features out there. 34:49 – Guest: Yes, I have found that the blog post is helpful. It’s good to get adapted to the new changes. 35:17 – Panel: Yeah I normally don’t have teasers up to the actual upgrade. 35:28 – Panel: The community is nice and people made a good effort to communicate and help people. They did a GOOD job of helping people to feel comfortable within the transition from one version to the next! 41:37 – Ad: Lootcrate.com END – CacheFly! Links: Ruby Elixir Elixir: GenServer GenServers Elm JavaScript Visual Studio Code React Edgar Pino A sneak peek at Ecto 3 Ecto Active Record Pattern Repository Sponsors: Loot Crate Get a Coder Job! Fresh Books CacheFly Picks: Mark Plex Josh This Erlang Life Guest Ecto Documentation! Edgar Pino – My blog!

Adventures in Angular
AiA 220: Creating a Great Community with Juan Herrera

Adventures in Angular

Play Episode Listen Later Dec 18, 2018 48:36


Panel: Charles Max Wood John Papa Aaron Frost Special Guest:  Juan Herrera In this episode, the panelists talk with today’s special guest, Juan Herrera. The guys talk about community and how the Angular community is different than others out there. The following topics are discussed: calls for proposals (CFP), talking at conferences, Meetups, and reaching out to others within the same field as yours. The team emphasizes how meeting and networking not only creates great business connections, but great lasting friendships, too! Check it out! Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:52 – Chuck: Hello! Our panel is Eric, John, and myself. Our special guest today is Juan Herrera! 1:00 – Panel and guest go back-and-forth. 2:28 – Chuck: Let’s discuss how to think about community locally, nationally, and internationally! 2:39 – Guest talks about his background and his work in Columbia. 4:00 – Aaron: I will give my talk in Spanish and it will be epic. I think we should start a hashtag “bonniemademedoit.” Aaron is talking about Bonnie and how she’s inspired Juan and many, many people.  5;18 – Chuck: She is so enthusiastic about this stuff you have a hard time telling her “no.” 5:32 – Guest. 6:00 – Panel: I am proud that she is apart of our community, which is our topic today. 6:26 – Guest: Yes, I think these conferences help make people pumped-up about these sort of things. 6:53 – Chuck: I am curious when talk about community – talking about global communities they are similar to other Meetups and incorporate their own way of doing things. How do you find that your particular area is unique in its own way? 7:32 – Guest: When we start this community I want to see what’s already out there? Once I know that I was trying to mimic what was already out there. In addition to that I went out of my way to figure out how to make people feel welcomed and find our own niche. 10:27: Panel: Hey – let’s create a community! I think sometimes it’s deliberate and other times it just happened. It sounded like you were very intentional. How did you get people involved? How did you get the word out? How did you get people to give talks? 11:10 – Guest: Yes that is a great challenge for us. Great question! I wanted to help people gain exposure and to help them participate at the conference. After giving their talk we give them a special gift. It can be a shirt or sticker or something. It seems enough for people to come and participate. We realized some people were scared to participate b/c imposter syndrome kicked-in. We made sure they felt comfortable and it helped them to participate. 15:00 – Panel: Yeah it sounds like 300 is a very solid conference. Good job! 15:18 – Chuck: Yeah they compare it to the bigger conferences when the local conferences are just as strong and good. Sometimes the smaller conferences are really nice b/c they are more intimate. 16:05 – Panel: I am not a fan of these massive conferences. Great, but you can’t have conversation with 50,000 people. You go to the vendor floor – it’s loud and dark. I go to conferences to talk and listen to them. I like to listen to their challenges and hear stories. 17:01 – Panel: I enjoy the variety. 17:48 – Panel: Just the quality of people that were there was fantastic. NG VIKINGS is a great one to go to! 18:10 – Panel: I saw the conference for New Zealand? And the one that is in Antarctica?! 19:10 – Panel: Some people say: I don’t know how to get involved with X conference? I have a hard time giving advice b/c we all have different backgrounds. Who wants to present on Chrome Frame? Or... 21:07 – Guest: Not everyone is outgoing nor comfortable being in front of an audience. However, just practicing helps! 21:33 – Advertisement: Get A Coder Job! 22:12 – Panel: Chuck, I want to hear about your community! 22:25 – Chuck: I can’t go to a development conference that doesn’t know who I am. I thrive off of people and connecting with them. There are a lot of great opportunities from learning from folks. The email went out this morning and get in the general channel and say: What do you listen to? What are you up to? It’s nice to hear feedback. 25:54 – Panel: I appreciate the work you’ve done within the community, too, Chuck! 26:08 – Panel: My community I’ve been around the block for about 20+ years. I get into one technology and then bounce from one to the other. I’ve had the blessing to be apart of many different communities. I did a lot of JavaScript back in the day and then left when it was a mess. These communities all have something similar: people come together. They want to find others who look/act like them! These experiences change people’s lives! 28:11 – Guest: Through these communities I’ve made a lot of friends and great colleagues. Not just professional but also personal. 28:44 – Panel: Yep the people that I’ve met through Twitter and conferences. 29:00 – Panel. 29:33 – Panel: I was in Poland a few weeks ago and I met some guys – two different Mike’s. I love how down-to-earth these guys are and I think it’s awesome to meet these great people at these conferences! 30:11 – Panel: Go to Angular conferences if you can! 31:25 – Panel: I tell people to do the same thing! 33:17 – Guest: Yeah there are people out there that are introverted, but know that other people are like you, too! Reach out to people before the conference and Tweet at them! Invite people to your group and meet-up at conferences and have a coffee! 34:55 – Panel: I meet a lot of people on Twitter. 35:51 – Panel: I think we are getting to the end and I need to say this. The angular community is a bit different compared to other communities. One thing that this community doesn’t have is the focus of the community. On top of the community are Rob, Steven, Jewels and Naomi and others! I think the Angular team themselves really care! I know they care. 38:09 – Guest: I completely agree with you, Aaron! We appreciate it! 38:25 – Chuck: To wrap-up let’s talk to you, Juan, about where communities should be going to take care of the people 38:45 – Guest: Yeah, what are we going to do next year? Are we going to do Meetups? Do they need something else? What are the needs of our members today and tomorrow? We decided to change the format. We realized that Meetups are great but they are 20-minute talks and they aren’t enough for our members. We do 4 hour Meetup that is called the MEGA MEETUP! 41:00 – Fresh Books! END – CacheFly! Links: Vue jQuery Angular JavaScript Python React Cypress Meetup Conference in Antarctica! Guest: Juan Herrera – Twitter Guest: Juan Herrera – GitHub Sponsors: Angular Boot Camp Cache Fly Picks: Aaron Harry Potter Play Talk from Angular Connect – Grant Timmerman – Google Team CFP: ngVikings 2019 CFP: ngConf @aaronfrost – Twitter! Chuck DevChat TV transferring from WordPress to a static site. Guest JS – library CFP in Columbia! (2019 conference) @jdjuan – Twitter! John Forbes Article: How to start a conversation...

Devchat.tv Master Feed
EMx 032: Using Ecto with Edgar Pino

Devchat.tv Master Feed

Play Episode Listen Later Dec 18, 2018 46:18


Panel: Mark Ericksen Josh Adams Special Guest: Edgar Pino    In this episode of Elixir Mix, the panel talks with Edgar Pino who talks with the panel about the latest version of Ecto! They discuss Ecto’s new features and how easy of a transition it was to go from the previous to the newest version. Edgar Pino is a software engineer who currently resides in Utah! Check out today’s episode! Show Topics: 0:00 – Advertisement: Get A Coder Job!  1:04 – Mark: Hello! Please give us your background? 1:16 – Guest: I have been in Elixir for the past year or two and I have been living in Utah. 1:48 – Mark: I love the nature and state parks. Winter is coming, so I hope you are ready! 1:58 – Guest: Winter...hopefully it will be great! 2:20 – Panelists and guest go back-and-forth. 2:30 – Mark: Let’s talk about your blog posts about Ecto. What are your new announcements? 2:52 – Guest: Our new version was released a few weeks ago. 3:32 – Panel. 3:38 – The guest talks about the old and new versions of Ecto. 4:03 – Panel: What is new and how is this going to affect me (the new version)? 4:11 – Panel: The transition was pretty painless for me. The only change was the breaking-up of the adapter ad also the timestamp bit. That was it. 4:34 – Panel: Yeah that micro-timestamp surprised me for a second, but it wasn’t that bad after all. 4:52 – Guest: Yeah it was painless for me, too. 5:19 – Panel: Edgar can you talk about the change and what they did with the timestamps? 5:32 – The guest answers the question. 5:54 – Panel: Elm opted to use the micro-millisecond, too. Time zones aren’t a thing. 6:24 – Mark. 7:08 – Panel: My tests are the only reason why I care about the millisecond. 7:21 – Mark: With the upgrade don’t do what I did. Mark talks about how he updated and the issues he had. 8:47 – Guest: Pattern matching? 8:53 – Mark: Yep that sort of stuff. I didn’t need to do it and it was a learning experience. Edgar, please give us an introduction to the blog posts? Why did you want to document it? 9:18 – Guest: I always used Ecto with Phoenix but started learning Ecto by itself. I jotted down notes that I thought was interesting. That’s how it started. 10:17 – Mark: See links in the show notes. Using a gen to use the repo – this is one thing that I didn’t know was an option. 10:46 – Guest. 11:01 – Mark asks a question. 11:10 – Guest: Not really PHP applications but listening to web messages and hot topics but you are doing the database and serving data... 11:40 – Guest talks about Ecto and the different versions and features. 12:09 – Mark chimes-in. 12:23 – Panel: Yep – it’s under the hood and it’s for business logic and doesn’t have a web piece. Stop writing tings for the web – it’s a fad. 12:50 – Mark: It’s an umbrella and saw this through the Phoenix generators. 13:54 – Guest talks about web applications. 14:06 – Mark: Let’s talk about schema and databases? 14:23 – Panelist chimes-in. 14:51 – Panelists and guest talk about schemas, apps, and more. Check it out here. 16:13 – Guest: You will get the data and pass it in as a structure and... 16:23 – Mark: Here is a map of what I’d like you to do on my behalf. It goes to a chain set and I will turn it into a string and this is why it’s failed. 17:25 – Panel. 17:31 – Mark: It’s not hard and it’s pretty easy. Let’s talk about blog posts.  18:10 – Panel. 18:22 – Mark: I use Absinthe in the library in Elixir to support GraphQL. 18:50 – Panel. 19:06 – Guest: The total number of results and only once did I need a more complicated thing. 19:34 – Mark: I haven’t had a need for those. 20:01 – Panelists and guests talk about the hypothetical situations where and how they would use certain features for said situations. 20:23 – Guest: You don’t have to understand right out-of-the-box. 20:40 – Panel: Have you used stored functions as meta-columns in an Ecto schema? 20:48 – Panelist explains. 21:24 – Guest: I have used them in the past and now I don’t. For me it was hard to debug – maybe it’s just me. 21:43 – Panel: I was introduced to them through a colleague of mine. 21:53 – Mark chimes-in and talks about him being a DOT NET developer. 22:18 – Panelist chime-in, too! 22:50 – Mark. 23:16 – Panel: It was an awful time and not a good idea. 70 pages! Debugging it was hard. 23:35 – Mark: That experience was apart of that burn that I had before. I wanted to stay far away from it as far as I could. 24:00 – Panel: When I was doing it in DOT NET we didn’t have migrations. 24:12 – Panelist continues. 24:32 – Guest: I wonder if... 24:37 – Panel: It’s just a sequel – it’s not just an Ecto specific feature. 24:48 – Guest. 24:53 – FreshBooks! 26:01 – Mark: Edgar you were interested also in HOW Ecto was built. What experience did you have? 26:21 – Guest answers the question. 28:22 – Panel: No you typed REPO there. 28:30 – Guest: Whenever you save or make an update it’s a method. Unlike Ecto you have to all it something else. 28:47 – Panel: Hey let me get those article posted and someone did it in Loop and that is a lot of queries. 29:03 – Guest: Yeah that’s a good point. 29:45 – Mark: Something I’ve noticed is that they talk about performance improvements and better memory usage. Go read about it- it’s great. They talk about HOW Ecto is working and what is behind the scenes. 31:15 – Mark: Another feature that I have seen is UPSERTS. 31:50 – Guest talks about UPSERTS, too. 32:34 – Mark: Say I have a system that has 3 servers and it’s rolling updates (it will take down one and put up the new code, etc. and it will cycle) one thing they added was a lock on the migration table. I don’t know if you’ve had this – once it hits production data it is slow. Mark continues. 33:20 – Panel: I think it was just luck of the draw. 33:30 – Mark continues. 33:57 – The guest talks about his experience with the above-mentioned scenario. 34:20 – Mark: I like that you both have had goo experiences with your upgrades. I want people to be excited and know that there are great features out there. 34:49 – Guest: Yes, I have found that the blog post is helpful. It’s good to get adapted to the new changes. 35:17 – Panel: Yeah I normally don’t have teasers up to the actual upgrade. 35:28 – Panel: The community is nice and people made a good effort to communicate and help people. They did a GOOD job of helping people to feel comfortable within the transition from one version to the next! 41:37 – Ad: Lootcrate.com END – CacheFly! Links: Ruby Elixir Elixir: GenServer GenServers Elm JavaScript Visual Studio Code React Edgar Pino A sneak peek at Ecto 3 Ecto Active Record Pattern Repository Sponsors: Loot Crate Get a Coder Job! Fresh Books CacheFly Picks: Mark Plex Josh This Erlang Life Guest Ecto Documentation! Edgar Pino – My blog!

All Angular Podcasts by Devchat.tv
AiA 220: Creating a Great Community with Juan Herrera

All Angular Podcasts by Devchat.tv

Play Episode Listen Later Dec 18, 2018 48:36


Panel: Charles Max Wood John Papa Aaron Frost Special Guest:  Juan Herrera In this episode, the panelists talk with today’s special guest, Juan Herrera. The guys talk about community and how the Angular community is different than others out there. The following topics are discussed: calls for proposals (CFP), talking at conferences, Meetups, and reaching out to others within the same field as yours. The team emphasizes how meeting and networking not only creates great business connections, but great lasting friendships, too! Check it out! Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:52 – Chuck: Hello! Our panel is Eric, John, and myself. Our special guest today is Juan Herrera! 1:00 – Panel and guest go back-and-forth. 2:28 – Chuck: Let’s discuss how to think about community locally, nationally, and internationally! 2:39 – Guest talks about his background and his work in Columbia. 4:00 – Aaron: I will give my talk in Spanish and it will be epic. I think we should start a hashtag “bonniemademedoit.” Aaron is talking about Bonnie and how she’s inspired Juan and many, many people.  5;18 – Chuck: She is so enthusiastic about this stuff you have a hard time telling her “no.” 5:32 – Guest. 6:00 – Panel: I am proud that she is apart of our community, which is our topic today. 6:26 – Guest: Yes, I think these conferences help make people pumped-up about these sort of things. 6:53 – Chuck: I am curious when talk about community – talking about global communities they are similar to other Meetups and incorporate their own way of doing things. How do you find that your particular area is unique in its own way? 7:32 – Guest: When we start this community I want to see what’s already out there? Once I know that I was trying to mimic what was already out there. In addition to that I went out of my way to figure out how to make people feel welcomed and find our own niche. 10:27: Panel: Hey – let’s create a community! I think sometimes it’s deliberate and other times it just happened. It sounded like you were very intentional. How did you get people involved? How did you get the word out? How did you get people to give talks? 11:10 – Guest: Yes that is a great challenge for us. Great question! I wanted to help people gain exposure and to help them participate at the conference. After giving their talk we give them a special gift. It can be a shirt or sticker or something. It seems enough for people to come and participate. We realized some people were scared to participate b/c imposter syndrome kicked-in. We made sure they felt comfortable and it helped them to participate. 15:00 – Panel: Yeah it sounds like 300 is a very solid conference. Good job! 15:18 – Chuck: Yeah they compare it to the bigger conferences when the local conferences are just as strong and good. Sometimes the smaller conferences are really nice b/c they are more intimate. 16:05 – Panel: I am not a fan of these massive conferences. Great, but you can’t have conversation with 50,000 people. You go to the vendor floor – it’s loud and dark. I go to conferences to talk and listen to them. I like to listen to their challenges and hear stories. 17:01 – Panel: I enjoy the variety. 17:48 – Panel: Just the quality of people that were there was fantastic. NG VIKINGS is a great one to go to! 18:10 – Panel: I saw the conference for New Zealand? And the one that is in Antarctica?! 19:10 – Panel: Some people say: I don’t know how to get involved with X conference? I have a hard time giving advice b/c we all have different backgrounds. Who wants to present on Chrome Frame? Or... 21:07 – Guest: Not everyone is outgoing nor comfortable being in front of an audience. However, just practicing helps! 21:33 – Advertisement: Get A Coder Job! 22:12 – Panel: Chuck, I want to hear about your community! 22:25 – Chuck: I can’t go to a development conference that doesn’t know who I am. I thrive off of people and connecting with them. There are a lot of great opportunities from learning from folks. The email went out this morning and get in the general channel and say: What do you listen to? What are you up to? It’s nice to hear feedback. 25:54 – Panel: I appreciate the work you’ve done within the community, too, Chuck! 26:08 – Panel: My community I’ve been around the block for about 20+ years. I get into one technology and then bounce from one to the other. I’ve had the blessing to be apart of many different communities. I did a lot of JavaScript back in the day and then left when it was a mess. These communities all have something similar: people come together. They want to find others who look/act like them! These experiences change people’s lives! 28:11 – Guest: Through these communities I’ve made a lot of friends and great colleagues. Not just professional but also personal. 28:44 – Panel: Yep the people that I’ve met through Twitter and conferences. 29:00 – Panel. 29:33 – Panel: I was in Poland a few weeks ago and I met some guys – two different Mike’s. I love how down-to-earth these guys are and I think it’s awesome to meet these great people at these conferences! 30:11 – Panel: Go to Angular conferences if you can! 31:25 – Panel: I tell people to do the same thing! 33:17 – Guest: Yeah there are people out there that are introverted, but know that other people are like you, too! Reach out to people before the conference and Tweet at them! Invite people to your group and meet-up at conferences and have a coffee! 34:55 – Panel: I meet a lot of people on Twitter. 35:51 – Panel: I think we are getting to the end and I need to say this. The angular community is a bit different compared to other communities. One thing that this community doesn’t have is the focus of the community. On top of the community are Rob, Steven, Jewels and Naomi and others! I think the Angular team themselves really care! I know they care. 38:09 – Guest: I completely agree with you, Aaron! We appreciate it! 38:25 – Chuck: To wrap-up let’s talk to you, Juan, about where communities should be going to take care of the people 38:45 – Guest: Yeah, what are we going to do next year? Are we going to do Meetups? Do they need something else? What are the needs of our members today and tomorrow? We decided to change the format. We realized that Meetups are great but they are 20-minute talks and they aren’t enough for our members. We do 4 hour Meetup that is called the MEGA MEETUP! 41:00 – Fresh Books! END – CacheFly! Links: Vue jQuery Angular JavaScript Python React Cypress Meetup Conference in Antarctica! Guest: Juan Herrera – Twitter Guest: Juan Herrera – GitHub Sponsors: Angular Boot Camp Cache Fly Picks: Aaron Harry Potter Play Talk from Angular Connect – Grant Timmerman – Google Team CFP: ngVikings 2019 CFP: ngConf @aaronfrost – Twitter! Chuck DevChat TV transferring from WordPress to a static site. Guest JS – library CFP in Columbia! (2019 conference) @jdjuan – Twitter! John Forbes Article: How to start a conversation...

Devchat.tv Master Feed
AiA 220: Creating a Great Community with Juan Herrera

Devchat.tv Master Feed

Play Episode Listen Later Dec 18, 2018 48:36


Panel: Charles Max Wood John Papa Aaron Frost Special Guest:  Juan Herrera In this episode, the panelists talk with today’s special guest, Juan Herrera. The guys talk about community and how the Angular community is different than others out there. The following topics are discussed: calls for proposals (CFP), talking at conferences, Meetups, and reaching out to others within the same field as yours. The team emphasizes how meeting and networking not only creates great business connections, but great lasting friendships, too! Check it out! Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:52 – Chuck: Hello! Our panel is Eric, John, and myself. Our special guest today is Juan Herrera! 1:00 – Panel and guest go back-and-forth. 2:28 – Chuck: Let’s discuss how to think about community locally, nationally, and internationally! 2:39 – Guest talks about his background and his work in Columbia. 4:00 – Aaron: I will give my talk in Spanish and it will be epic. I think we should start a hashtag “bonniemademedoit.” Aaron is talking about Bonnie and how she’s inspired Juan and many, many people.  5;18 – Chuck: She is so enthusiastic about this stuff you have a hard time telling her “no.” 5:32 – Guest. 6:00 – Panel: I am proud that she is apart of our community, which is our topic today. 6:26 – Guest: Yes, I think these conferences help make people pumped-up about these sort of things. 6:53 – Chuck: I am curious when talk about community – talking about global communities they are similar to other Meetups and incorporate their own way of doing things. How do you find that your particular area is unique in its own way? 7:32 – Guest: When we start this community I want to see what’s already out there? Once I know that I was trying to mimic what was already out there. In addition to that I went out of my way to figure out how to make people feel welcomed and find our own niche. 10:27: Panel: Hey – let’s create a community! I think sometimes it’s deliberate and other times it just happened. It sounded like you were very intentional. How did you get people involved? How did you get the word out? How did you get people to give talks? 11:10 – Guest: Yes that is a great challenge for us. Great question! I wanted to help people gain exposure and to help them participate at the conference. After giving their talk we give them a special gift. It can be a shirt or sticker or something. It seems enough for people to come and participate. We realized some people were scared to participate b/c imposter syndrome kicked-in. We made sure they felt comfortable and it helped them to participate. 15:00 – Panel: Yeah it sounds like 300 is a very solid conference. Good job! 15:18 – Chuck: Yeah they compare it to the bigger conferences when the local conferences are just as strong and good. Sometimes the smaller conferences are really nice b/c they are more intimate. 16:05 – Panel: I am not a fan of these massive conferences. Great, but you can’t have conversation with 50,000 people. You go to the vendor floor – it’s loud and dark. I go to conferences to talk and listen to them. I like to listen to their challenges and hear stories. 17:01 – Panel: I enjoy the variety. 17:48 – Panel: Just the quality of people that were there was fantastic. NG VIKINGS is a great one to go to! 18:10 – Panel: I saw the conference for New Zealand? And the one that is in Antarctica?! 19:10 – Panel: Some people say: I don’t know how to get involved with X conference? I have a hard time giving advice b/c we all have different backgrounds. Who wants to present on Chrome Frame? Or... 21:07 – Guest: Not everyone is outgoing nor comfortable being in front of an audience. However, just practicing helps! 21:33 – Advertisement: Get A Coder Job! 22:12 – Panel: Chuck, I want to hear about your community! 22:25 – Chuck: I can’t go to a development conference that doesn’t know who I am. I thrive off of people and connecting with them. There are a lot of great opportunities from learning from folks. The email went out this morning and get in the general channel and say: What do you listen to? What are you up to? It’s nice to hear feedback. 25:54 – Panel: I appreciate the work you’ve done within the community, too, Chuck! 26:08 – Panel: My community I’ve been around the block for about 20+ years. I get into one technology and then bounce from one to the other. I’ve had the blessing to be apart of many different communities. I did a lot of JavaScript back in the day and then left when it was a mess. These communities all have something similar: people come together. They want to find others who look/act like them! These experiences change people’s lives! 28:11 – Guest: Through these communities I’ve made a lot of friends and great colleagues. Not just professional but also personal. 28:44 – Panel: Yep the people that I’ve met through Twitter and conferences. 29:00 – Panel. 29:33 – Panel: I was in Poland a few weeks ago and I met some guys – two different Mike’s. I love how down-to-earth these guys are and I think it’s awesome to meet these great people at these conferences! 30:11 – Panel: Go to Angular conferences if you can! 31:25 – Panel: I tell people to do the same thing! 33:17 – Guest: Yeah there are people out there that are introverted, but know that other people are like you, too! Reach out to people before the conference and Tweet at them! Invite people to your group and meet-up at conferences and have a coffee! 34:55 – Panel: I meet a lot of people on Twitter. 35:51 – Panel: I think we are getting to the end and I need to say this. The angular community is a bit different compared to other communities. One thing that this community doesn’t have is the focus of the community. On top of the community are Rob, Steven, Jewels and Naomi and others! I think the Angular team themselves really care! I know they care. 38:09 – Guest: I completely agree with you, Aaron! We appreciate it! 38:25 – Chuck: To wrap-up let’s talk to you, Juan, about where communities should be going to take care of the people 38:45 – Guest: Yeah, what are we going to do next year? Are we going to do Meetups? Do they need something else? What are the needs of our members today and tomorrow? We decided to change the format. We realized that Meetups are great but they are 20-minute talks and they aren’t enough for our members. We do 4 hour Meetup that is called the MEGA MEETUP! 41:00 – Fresh Books! END – CacheFly! Links: Vue jQuery Angular JavaScript Python React Cypress Meetup Conference in Antarctica! Guest: Juan Herrera – Twitter Guest: Juan Herrera – GitHub Sponsors: Angular Boot Camp Cache Fly Picks: Aaron Harry Potter Play Talk from Angular Connect – Grant Timmerman – Google Team CFP: ngVikings 2019 CFP: ngConf @aaronfrost – Twitter! Chuck DevChat TV transferring from WordPress to a static site. Guest JS – library CFP in Columbia! (2019 conference) @jdjuan – Twitter! John Forbes Article: How to start a conversation...

All Ruby Podcasts by Devchat.tv
RR 392: Crystal and Lucky with Paul Smith & Andrew Mason

All Ruby Podcasts by Devchat.tv

Play Episode Listen Later Dec 11, 2018 62:07


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

Ruby Rogues
RR 392: Crystal and Lucky with Paul Smith & Andrew Mason

Ruby Rogues

Play Episode Listen Later Dec 11, 2018 62:07


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

Devchat.tv Master Feed
RR 392: Crystal and Lucky with Paul Smith & Andrew Mason

Devchat.tv Master Feed

Play Episode Listen Later Dec 11, 2018 62:07


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

Elixir Mix
EMx 029: JWT Auth in Phoenix with Joken with Sophie DeBenedetto

Elixir Mix

Play Episode Listen Later Nov 27, 2018 43:32


Panel: Mark Ericksen Nathan (Nate) Hopkins Charles Max Wood Special Guest: Sophie DeBenedetto In this episode of Elixir Mix, the panel talks with Sophie DeBenedetto who is a teacher at the Flatiron School, a software engineer, and creator of Break In. The panelists and Sophie talk about her blog, the Flatiron School, and her background. Check it out! Show Topics: 0:00 – Advertisement: Get A Coder Job!  0:50 – Chuck: Welcome! Our panel is Mark, Nate, and myself. Our special guest, today, is Sophie! Please introduce yourself! 1:32 – Guest: Hi! I am Sophie and I am an engineer who works at the Flatiron School. We are growing and fast and offer a lot of different courses. We are an international school working with Elixir and Phoenix. 2:10 – Chuck: You gave us multiple topics: Joken and Elixir Packages. Give us please some background there. 2:33 – Guest: I will talk about the problems we were trying to resolve with Joken. The Guest goes into detail about this topic. Sophie mentions Rails, Joken, Guardian, Phoenix, and Erlang-Jose. 4:41 – Guest: We found this nice little library that we needed and that was Joken. Initially, we were trying to hit the nail with a racket and all we needed was a hammer. 6:48 – Guest: I am telling the whole Internet our problem we had, and how we resolved it. That’s why I am here today, because you all found my blog. 9:04 – Panel: There is a lot there! Some terms that you mentioned: JWT is referred to as a JOT – for those listeners who don’t know. Panelist asks question. 9:43 – Guest answers the question. 10:52 – Panel: When I used Joken before I did use it with the HMAC algorithm. You are on the fringe of what is mainstream and you can come across those rough spots. You are doing this service of saying yes I found this problem and I will try to help you with this problem. 11:25 – Guest: It’s an interesting feeling to say we solved this problem and then realizing we were wrong about it. I’m glad that happened because it’s real. As a teacher I saw students being reluctant to blog b/c they didn’t want to be wrong, but that’s how you grow! 12:22 – Chuck: We talked about the JWT and the dots. How is this different than Ruby gems and other things? 12:44 – Guest: I think anyone would have thoughts on this. There’s not a lot of resources, and look into the Ruby community. From the Flatiron School our focus has been Ruby, and we ask our students to contribute. We want to find an answer to any problem we are facing through Ruby and Rails. More or less you will find a solution from somebody through the Internet. Elixir is definitely different from this because it’s a newer framework.  14:26 – Panelist asks about the curriculum through the Flatiron School. 14:48 – Guest answers the question. 16:08 – Panel: We have had Kate Travers from Flatiron Schools on our podcast before. What has your path been? 16:30 – Guest: We graduated at the same time and I went to the educational-side, which I did for a year to about a year and a half. I thought I needed to get my hands dirty, though, to be a better teacher. I went to this company...and I recently rejoined the Flatiron School’s faculty. 17:40 – Panel: That’s great. I was with a company for 3 years, left for 2 years, and then I came back. It’s a testament to not burning bridges. There is value to leaving and going to get new and different experiences. You grow in the process, and that’s what happened for me. I like your path and thanks for sharing your story! 18:50 – Fresh Books! 20:00 – Chuck: Do you have any policies on how students (at Flatiron School) need to contribute? 20:06 – Guest: Not so much HOW but we encourage it. The guest goes into detail and mentions Elixir School (see links below). 21:33 – Panel: That is a good suggestion if a newbie wants to contribute and they are afraid to contribute. You can get involved and your suggestion will be reviewed. 22:10 – Guest: Yes! There is a team member, Matt, and he contributed to the code base. He was new to the Elixir community, and showed his thought-process. Contributing to open source is great because it helps the community, and opens a pathway for great feedback and conversation. 23:30 – Panel: I think that’s a healthy way to look at pole requests. I have worked with folks that don’t view it that way, though. They hold their code a little close to their chest and that’s it. I like the dialogue. 24:00 – Chuck: This stuff isn’t staying still b/c the Elixir community is constantly growing. I cannot recommend highly enough to learn something new. It can be just 20-30 minutes a day. If you aren’t doing that then you will fall behind. 24:57 – Panel: Question for Sophie. How did you get involved with Elixir School? 25:18 – Guest: I am definitely not an expert. It’s a group of people who thought that Elixir should be more accessible. I like it because it’s beginner-friendly. Find something to contribute to b/c there are tons of different levels to find what’s good for you. 27:09 – Panel: Has it be re-skinned/re-themed? 27:15 – Guest: Yeah, I think so. Along with the theme-related they have been putting high priority into different languages. 27:38 – Panelist comments about natural languages and translations. 27:52 – Chuck: Was this a project through the school or something else? 28:06 – Guest: It’s not through the school. 28:36 – Chuck: Any other projects through the school? 28:46 – Guest: Yes, the school has a lab and it’s neat to see it grow! 29:38 – Panel: Have you tried those other technologies before (and they didn’t work) or did you just anticipate it was a problem that you couldn’t solve without the Beam. 30:02 – Guest answers. 32:33 – Panel: That makes sense. You were reaching for Erlang when you were on the Ruby Stack. 32:49 – Guest refers to tooling and Rabbit. 33:00 – Chuck: You mentioned Rabbit – what does your typical stack look like? Are you running Phoenix? Or here is a job so here is Elixir? What is your process like? 33:23 – Guest: A Ruby on Rails app it has all the ups-and-downs and it’s kind of old. As we are growing and partnering with new companies/schools we are updating and seeing a need to grow even more. 34:49 – Panel. 34:54 – Guest: The video that Chris McCord put out! 35:03 – Chuck: Check the show notes’ links! 35:15 – Chuck: Picks! 35:23 – Ad: Lootcrate.com END – CacheFly! Links: Ruby Elixir Elm Atom.io Flutter.io JavaScript Visual Studio Code React Guardian Joken Erlang-Jose Flatiron School Flatiron School's Blog Flatiron Labs Elixir School Elixir School EMx 020 Episode Utah Elixir Meetup Blog: How We Built the Learn IDE in Browser Break_In The Great Code Adventure Rabbit Sophie’s Website Sophie’s Twitter Sponsors: Loot Crate Get a Coder Job! Fresh Books CacheFly Picks: Mark Utah Elixir Meetup Nate Racquetball Getting out and doing something Charles repurpose.io Sling TV Fox Sports Sophie Elixir School Learn IDE Blog

Devchat.tv Master Feed
EMx 029: JWT Auth in Phoenix with Joken with Sophie DeBenedetto

Devchat.tv Master Feed

Play Episode Listen Later Nov 27, 2018 43:32


Panel: Mark Ericksen Nathan (Nate) Hopkins Charles Max Wood Special Guest: Sophie DeBenedetto In this episode of Elixir Mix, the panel talks with Sophie DeBenedetto who is a teacher at the Flatiron School, a software engineer, and creator of Break In. The panelists and Sophie talk about her blog, the Flatiron School, and her background. Check it out! Show Topics: 0:00 – Advertisement: Get A Coder Job!  0:50 – Chuck: Welcome! Our panel is Mark, Nate, and myself. Our special guest, today, is Sophie! Please introduce yourself! 1:32 – Guest: Hi! I am Sophie and I am an engineer who works at the Flatiron School. We are growing and fast and offer a lot of different courses. We are an international school working with Elixir and Phoenix. 2:10 – Chuck: You gave us multiple topics: Joken and Elixir Packages. Give us please some background there. 2:33 – Guest: I will talk about the problems we were trying to resolve with Joken. The Guest goes into detail about this topic. Sophie mentions Rails, Joken, Guardian, Phoenix, and Erlang-Jose. 4:41 – Guest: We found this nice little library that we needed and that was Joken. Initially, we were trying to hit the nail with a racket and all we needed was a hammer. 6:48 – Guest: I am telling the whole Internet our problem we had, and how we resolved it. That’s why I am here today, because you all found my blog. 9:04 – Panel: There is a lot there! Some terms that you mentioned: JWT is referred to as a JOT – for those listeners who don’t know. Panelist asks question. 9:43 – Guest answers the question. 10:52 – Panel: When I used Joken before I did use it with the HMAC algorithm. You are on the fringe of what is mainstream and you can come across those rough spots. You are doing this service of saying yes I found this problem and I will try to help you with this problem. 11:25 – Guest: It’s an interesting feeling to say we solved this problem and then realizing we were wrong about it. I’m glad that happened because it’s real. As a teacher I saw students being reluctant to blog b/c they didn’t want to be wrong, but that’s how you grow! 12:22 – Chuck: We talked about the JWT and the dots. How is this different than Ruby gems and other things? 12:44 – Guest: I think anyone would have thoughts on this. There’s not a lot of resources, and look into the Ruby community. From the Flatiron School our focus has been Ruby, and we ask our students to contribute. We want to find an answer to any problem we are facing through Ruby and Rails. More or less you will find a solution from somebody through the Internet. Elixir is definitely different from this because it’s a newer framework.  14:26 – Panelist asks about the curriculum through the Flatiron School. 14:48 – Guest answers the question. 16:08 – Panel: We have had Kate Travers from Flatiron Schools on our podcast before. What has your path been? 16:30 – Guest: We graduated at the same time and I went to the educational-side, which I did for a year to about a year and a half. I thought I needed to get my hands dirty, though, to be a better teacher. I went to this company...and I recently rejoined the Flatiron School’s faculty. 17:40 – Panel: That’s great. I was with a company for 3 years, left for 2 years, and then I came back. It’s a testament to not burning bridges. There is value to leaving and going to get new and different experiences. You grow in the process, and that’s what happened for me. I like your path and thanks for sharing your story! 18:50 – Fresh Books! 20:00 – Chuck: Do you have any policies on how students (at Flatiron School) need to contribute? 20:06 – Guest: Not so much HOW but we encourage it. The guest goes into detail and mentions Elixir School (see links below). 21:33 – Panel: That is a good suggestion if a newbie wants to contribute and they are afraid to contribute. You can get involved and your suggestion will be reviewed. 22:10 – Guest: Yes! There is a team member, Matt, and he contributed to the code base. He was new to the Elixir community, and showed his thought-process. Contributing to open source is great because it helps the community, and opens a pathway for great feedback and conversation. 23:30 – Panel: I think that’s a healthy way to look at pole requests. I have worked with folks that don’t view it that way, though. They hold their code a little close to their chest and that’s it. I like the dialogue. 24:00 – Chuck: This stuff isn’t staying still b/c the Elixir community is constantly growing. I cannot recommend highly enough to learn something new. It can be just 20-30 minutes a day. If you aren’t doing that then you will fall behind. 24:57 – Panel: Question for Sophie. How did you get involved with Elixir School? 25:18 – Guest: I am definitely not an expert. It’s a group of people who thought that Elixir should be more accessible. I like it because it’s beginner-friendly. Find something to contribute to b/c there are tons of different levels to find what’s good for you. 27:09 – Panel: Has it be re-skinned/re-themed? 27:15 – Guest: Yeah, I think so. Along with the theme-related they have been putting high priority into different languages. 27:38 – Panelist comments about natural languages and translations. 27:52 – Chuck: Was this a project through the school or something else? 28:06 – Guest: It’s not through the school. 28:36 – Chuck: Any other projects through the school? 28:46 – Guest: Yes, the school has a lab and it’s neat to see it grow! 29:38 – Panel: Have you tried those other technologies before (and they didn’t work) or did you just anticipate it was a problem that you couldn’t solve without the Beam. 30:02 – Guest answers. 32:33 – Panel: That makes sense. You were reaching for Erlang when you were on the Ruby Stack. 32:49 – Guest refers to tooling and Rabbit. 33:00 – Chuck: You mentioned Rabbit – what does your typical stack look like? Are you running Phoenix? Or here is a job so here is Elixir? What is your process like? 33:23 – Guest: A Ruby on Rails app it has all the ups-and-downs and it’s kind of old. As we are growing and partnering with new companies/schools we are updating and seeing a need to grow even more. 34:49 – Panel. 34:54 – Guest: The video that Chris McCord put out! 35:03 – Chuck: Check the show notes’ links! 35:15 – Chuck: Picks! 35:23 – Ad: Lootcrate.com END – CacheFly! Links: Ruby Elixir Elm Atom.io Flutter.io JavaScript Visual Studio Code React Guardian Joken Erlang-Jose Flatiron School Flatiron School's Blog Flatiron Labs Elixir School Elixir School EMx 020 Episode Utah Elixir Meetup Blog: How We Built the Learn IDE in Browser Break_In The Great Code Adventure Rabbit Sophie’s Website Sophie’s Twitter Sponsors: Loot Crate Get a Coder Job! Fresh Books CacheFly Picks: Mark Utah Elixir Meetup Nate Racquetball Getting out and doing something Charles repurpose.io Sling TV Fox Sports Sophie Elixir School Learn IDE Blog

Adventures in Angular
AiA 214: NgRx Tips & Tricks with Adrian Fâciu

Adventures in Angular

Play Episode Listen Later Nov 6, 2018 62:17


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

All Angular Podcasts by Devchat.tv
AiA 214: NgRx Tips & Tricks with Adrian Fâciu

All Angular Podcasts by Devchat.tv

Play Episode Listen Later Nov 6, 2018 62:17


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

Devchat.tv Master Feed
AiA 214: NgRx Tips & Tricks with Adrian Fâciu

Devchat.tv Master Feed

Play Episode Listen Later Nov 6, 2018 62:17


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

All Angular Podcasts by Devchat.tv
AiA 207: Ilya Bodrov and Roman Kutanov: "What It Is, and Why You Should Use It. Angular Use-Cases in Startups"

All Angular Podcasts by Devchat.tv

Play Episode Listen Later Sep 18, 2018 54:03


Panel: Charles Max Wood John Papa Ward Bell Special Guests: Ilya Bodrov & Roman Kutanov In this episode, the Adventures in Angular panel talks with Ilya and Roman. Ilya is a professor, writer, and developer. Roman is a cofounder, and a CEO, of a small startup company. Roman is making an application for small businesses, and he also was a CEO of a Russian startup, too. Check-out today’s episode where the panel talks to the guests about Angular, their startup companies, Test Cafe, among others. Show Topics: 1:20 – Guests’ backgrounds. 2:31 – Chuck: Let’s talk about Angular. In your opinion why is it a good option for startups? 2:55 – Guest: Angular is a very good choice. 3:55 – Guest: If you are not familiar with these concepts or a seasoned developer then it can be difficult and complex to get started. It really depends on what you are trying to build. 4:47 – Chuck: Once you get rolling with it then you run into limitations with it. If you need something simple and fast it’s really nice. 5:08 – Guest: Yes. Trying to find your market niche. Angular is very simple to transfer. Angular has a great community. There are some problems, and we know it. Like the whole mess with versions also... 6:27 – John: Can you elaborate a little? 6:34 – Guest: Yes, if you want to be in the latest technologies...so sometimes you get into a situation when you wan to have some libraries installed and you cannot do that. If you are on one version and this one isn’t supported, then it was a huge mess. 7:43 – Guest adds in more comments. 8:26 – Guest: Currently I have Angular 1. It is too complicated to rewrite. 8:40 – Guest adds comments. 8:57 – John: There would have to be a compelling reason for me to go to Angular 6 at this point. Going from 4 to 5 or 5 to 6 – the one feature – boy that is so amazing. To have it to update your app, and update your code then that’s awesome. If you didn’t know that a command changed then you were in trouble. I agree version control has always been a challenge. 10:20 – Guest: What I like about Angular is the community – it drives it in the right direction. They try to make it more productive and that’s what I like. 10:43 – Chuck: What is it like to run a startup? 10:56 – Guest: I started to write the application. What you see is what you get. I use Angular 1. JavaScript is a heavier language. 14:54 – Guest adds comments. 16:02 – Panelist: What kind of server are you using for your startup? 16:19 – Guest: I have Angular 1 as a backhand. The main application right now is... 17:11 – Panelist: What has the experience been like for people? 17:26 – Guest: Yes... 17:32 – Panelist: What were the benefits of using Angular? 17:40 – Guest: Angular was very helpful. The performance is much better. Important for startups is to know how to write functionality. 18:53 – Panelist: What forms were you using? 19:01 – Guest: Template driven. In Angular 1, I created “what you see is what you get.” 19:52 – Panelist: I am torn about forms. The Reactive side but you move a lot of code that doesn’t feel all that intuitive to me. There are pros and cons of each, but it’s not exactly where I want it to be. I would love to mix the 2 together. Have you dealt with validation in the forms? 21:04 – Digital Ocean’s Advertisement. 21:41 – Guest: I have an editor. I send it to the client. Each input is having some sort of validation. 23:17 – Panelist: How do you make them look good? Yeah, I can do it but how does it not look generic? Do you have a layout? 23:53 – Guest: I throw it into the screen – I try to keep it simple. 25:04 – Panelist: That makes sense. I didn’t know if there was a crossover of complexity. I want a balance between... 25:38 – Panelist: Reactive or Template driven? 25:45 – Guest makes comments. You want to have some custom checking. 26:13 – Panelist: Why was it hard? 26:21 – Guest: Not sure...I experimented a lot. 27:27 – Panelist: I gave up on Reactive. One of the killers for me was the nested components. It seemed to fall apart in my hands. It was extremely difficult. The outer form lost contact to what was going on. That was one of the biggest decisions to walk away from Reactive all together. 28:25 – Guest: Now I remember why I dropped templates. 28:44 – Panelist: Not true, but it’s doable! It’s also easy! You have to know what’s going on. Let’s change the story on this – I don’t want to hijack the podcast. 30:55 – Panelist: It makes your ears stand up. John’s objection was that he was putting a lot of stuff into HTML. 32:43 – Panelist: Every time I see some try to decorate the HTLM – no you don’t have to do that. The rules aren’t there. There are exceptions, of course, but real validation is not screen validation. Interestingly, we have written one for this application. It belongs to Marcel. This isn’t Breeze specific – maybe we an get people to working on it. For sure, even if you didn’t have this framework, you can create one on your own. It turns out that it has more models than you think it does. 34:55 – Panelist: Aside from forms, what mattered in your app? 35:22 – Guest answers the question. 36:01 – Panelist: Lazy Loading. In some apps lazy loading doesn’t make sense in all areas. You don’t always have to use. 36:53 – Guest: Yes, when you work for your employer you sometimes have more time available. When you have a startup it’s a race. Your startup doesn’t have any money. 37:24 – Panelist: You had money? 37:33 – Guest: You have to try new things and makes things right. When users really start really using your application. You can fix everything and make the perfect app or you can learn new things about your users. What problems do that have? 38:50 – Panelist: Question asked. 39:40 – Guest answers question.  40:38 – Protractor. 41:51 – Problems that you/we ran into. 42:21 – Panelist: “We” are using Test Cafe. 42:58 – Cypress. 44:10 – You do not need web driver and... 44:29 – Test Cafe is free. 44:39 – I would pay ten’s of dollars to use a piece of software. It’s a budget buster. 45:15 – Sounds like you guys have a great product there. 45:24 – Thanks for having us. 45:30 – Chuck: Let’s go to picks! 45:39 – Code Badges! 46:13 – Picks! Links: Microsoft’s Azure JavaScript Ruby Angular Test Cafe Cypress Ilya’s GitHub Ilya’s SitePoint Ilya’s Twitter Roman’s Crunchbase Roman’s LinkedIn Roman’s Twitter Sponsors: Angular Boot Camp Digital Ocean Get a Coder Job course Picks: Charles Microsoft Ignite Microsoft Connect Follow me on Twitter! Apple Event John Pipelines – Azure VS Code Ward Test Cafe Ilya Framework Event Roman Michael Seibel’s Building Product MLcourse.AI – October 1st next session starts – it’s free

Devchat.tv Master Feed
AiA 207: Ilya Bodrov and Roman Kutanov: "What It Is, and Why You Should Use It. Angular Use-Cases in Startups"

Devchat.tv Master Feed

Play Episode Listen Later Sep 18, 2018 54:03


Panel: Charles Max Wood John Papa Ward Bell Special Guests: Ilya Bodrov & Roman Kutanov In this episode, the Adventures in Angular panel talks with Ilya and Roman. Ilya is a professor, writer, and developer. Roman is a cofounder, and a CEO, of a small startup company. Roman is making an application for small businesses, and he also was a CEO of a Russian startup, too. Check-out today’s episode where the panel talks to the guests about Angular, their startup companies, Test Cafe, among others. Show Topics: 1:20 – Guests’ backgrounds. 2:31 – Chuck: Let’s talk about Angular. In your opinion why is it a good option for startups? 2:55 – Guest: Angular is a very good choice. 3:55 – Guest: If you are not familiar with these concepts or a seasoned developer then it can be difficult and complex to get started. It really depends on what you are trying to build. 4:47 – Chuck: Once you get rolling with it then you run into limitations with it. If you need something simple and fast it’s really nice. 5:08 – Guest: Yes. Trying to find your market niche. Angular is very simple to transfer. Angular has a great community. There are some problems, and we know it. Like the whole mess with versions also... 6:27 – John: Can you elaborate a little? 6:34 – Guest: Yes, if you want to be in the latest technologies...so sometimes you get into a situation when you wan to have some libraries installed and you cannot do that. If you are on one version and this one isn’t supported, then it was a huge mess. 7:43 – Guest adds in more comments. 8:26 – Guest: Currently I have Angular 1. It is too complicated to rewrite. 8:40 – Guest adds comments. 8:57 – John: There would have to be a compelling reason for me to go to Angular 6 at this point. Going from 4 to 5 or 5 to 6 – the one feature – boy that is so amazing. To have it to update your app, and update your code then that’s awesome. If you didn’t know that a command changed then you were in trouble. I agree version control has always been a challenge. 10:20 – Guest: What I like about Angular is the community – it drives it in the right direction. They try to make it more productive and that’s what I like. 10:43 – Chuck: What is it like to run a startup? 10:56 – Guest: I started to write the application. What you see is what you get. I use Angular 1. JavaScript is a heavier language. 14:54 – Guest adds comments. 16:02 – Panelist: What kind of server are you using for your startup? 16:19 – Guest: I have Angular 1 as a backhand. The main application right now is... 17:11 – Panelist: What has the experience been like for people? 17:26 – Guest: Yes... 17:32 – Panelist: What were the benefits of using Angular? 17:40 – Guest: Angular was very helpful. The performance is much better. Important for startups is to know how to write functionality. 18:53 – Panelist: What forms were you using? 19:01 – Guest: Template driven. In Angular 1, I created “what you see is what you get.” 19:52 – Panelist: I am torn about forms. The Reactive side but you move a lot of code that doesn’t feel all that intuitive to me. There are pros and cons of each, but it’s not exactly where I want it to be. I would love to mix the 2 together. Have you dealt with validation in the forms? 21:04 – Digital Ocean’s Advertisement. 21:41 – Guest: I have an editor. I send it to the client. Each input is having some sort of validation. 23:17 – Panelist: How do you make them look good? Yeah, I can do it but how does it not look generic? Do you have a layout? 23:53 – Guest: I throw it into the screen – I try to keep it simple. 25:04 – Panelist: That makes sense. I didn’t know if there was a crossover of complexity. I want a balance between... 25:38 – Panelist: Reactive or Template driven? 25:45 – Guest makes comments. You want to have some custom checking. 26:13 – Panelist: Why was it hard? 26:21 – Guest: Not sure...I experimented a lot. 27:27 – Panelist: I gave up on Reactive. One of the killers for me was the nested components. It seemed to fall apart in my hands. It was extremely difficult. The outer form lost contact to what was going on. That was one of the biggest decisions to walk away from Reactive all together. 28:25 – Guest: Now I remember why I dropped templates. 28:44 – Panelist: Not true, but it’s doable! It’s also easy! You have to know what’s going on. Let’s change the story on this – I don’t want to hijack the podcast. 30:55 – Panelist: It makes your ears stand up. John’s objection was that he was putting a lot of stuff into HTML. 32:43 – Panelist: Every time I see some try to decorate the HTLM – no you don’t have to do that. The rules aren’t there. There are exceptions, of course, but real validation is not screen validation. Interestingly, we have written one for this application. It belongs to Marcel. This isn’t Breeze specific – maybe we an get people to working on it. For sure, even if you didn’t have this framework, you can create one on your own. It turns out that it has more models than you think it does. 34:55 – Panelist: Aside from forms, what mattered in your app? 35:22 – Guest answers the question. 36:01 – Panelist: Lazy Loading. In some apps lazy loading doesn’t make sense in all areas. You don’t always have to use. 36:53 – Guest: Yes, when you work for your employer you sometimes have more time available. When you have a startup it’s a race. Your startup doesn’t have any money. 37:24 – Panelist: You had money? 37:33 – Guest: You have to try new things and makes things right. When users really start really using your application. You can fix everything and make the perfect app or you can learn new things about your users. What problems do that have? 38:50 – Panelist: Question asked. 39:40 – Guest answers question.  40:38 – Protractor. 41:51 – Problems that you/we ran into. 42:21 – Panelist: “We” are using Test Cafe. 42:58 – Cypress. 44:10 – You do not need web driver and... 44:29 – Test Cafe is free. 44:39 – I would pay ten’s of dollars to use a piece of software. It’s a budget buster. 45:15 – Sounds like you guys have a great product there. 45:24 – Thanks for having us. 45:30 – Chuck: Let’s go to picks! 45:39 – Code Badges! 46:13 – Picks! Links: Microsoft’s Azure JavaScript Ruby Angular Test Cafe Cypress Ilya’s GitHub Ilya’s SitePoint Ilya’s Twitter Roman’s Crunchbase Roman’s LinkedIn Roman’s Twitter Sponsors: Angular Boot Camp Digital Ocean Get a Coder Job course Picks: Charles Microsoft Ignite Microsoft Connect Follow me on Twitter! Apple Event John Pipelines – Azure VS Code Ward Test Cafe Ilya Framework Event Roman Michael Seibel’s Building Product MLcourse.AI – October 1st next session starts – it’s free

Adventures in Angular
AiA 207: Ilya Bodrov and Roman Kutanov: "What It Is, and Why You Should Use It. Angular Use-Cases in Startups"

Adventures in Angular

Play Episode Listen Later Sep 18, 2018 54:03


Panel: Charles Max Wood John Papa Ward Bell Special Guests: Ilya Bodrov & Roman Kutanov In this episode, the Adventures in Angular panel talks with Ilya and Roman. Ilya is a professor, writer, and developer. Roman is a cofounder, and a CEO, of a small startup company. Roman is making an application for small businesses, and he also was a CEO of a Russian startup, too. Check-out today’s episode where the panel talks to the guests about Angular, their startup companies, Test Cafe, among others. Show Topics: 1:20 – Guests’ backgrounds. 2:31 – Chuck: Let’s talk about Angular. In your opinion why is it a good option for startups? 2:55 – Guest: Angular is a very good choice. 3:55 – Guest: If you are not familiar with these concepts or a seasoned developer then it can be difficult and complex to get started. It really depends on what you are trying to build. 4:47 – Chuck: Once you get rolling with it then you run into limitations with it. If you need something simple and fast it’s really nice. 5:08 – Guest: Yes. Trying to find your market niche. Angular is very simple to transfer. Angular has a great community. There are some problems, and we know it. Like the whole mess with versions also... 6:27 – John: Can you elaborate a little? 6:34 – Guest: Yes, if you want to be in the latest technologies...so sometimes you get into a situation when you wan to have some libraries installed and you cannot do that. If you are on one version and this one isn’t supported, then it was a huge mess. 7:43 – Guest adds in more comments. 8:26 – Guest: Currently I have Angular 1. It is too complicated to rewrite. 8:40 – Guest adds comments. 8:57 – John: There would have to be a compelling reason for me to go to Angular 6 at this point. Going from 4 to 5 or 5 to 6 – the one feature – boy that is so amazing. To have it to update your app, and update your code then that’s awesome. If you didn’t know that a command changed then you were in trouble. I agree version control has always been a challenge. 10:20 – Guest: What I like about Angular is the community – it drives it in the right direction. They try to make it more productive and that’s what I like. 10:43 – Chuck: What is it like to run a startup? 10:56 – Guest: I started to write the application. What you see is what you get. I use Angular 1. JavaScript is a heavier language. 14:54 – Guest adds comments. 16:02 – Panelist: What kind of server are you using for your startup? 16:19 – Guest: I have Angular 1 as a backhand. The main application right now is... 17:11 – Panelist: What has the experience been like for people? 17:26 – Guest: Yes... 17:32 – Panelist: What were the benefits of using Angular? 17:40 – Guest: Angular was very helpful. The performance is much better. Important for startups is to know how to write functionality. 18:53 – Panelist: What forms were you using? 19:01 – Guest: Template driven. In Angular 1, I created “what you see is what you get.” 19:52 – Panelist: I am torn about forms. The Reactive side but you move a lot of code that doesn’t feel all that intuitive to me. There are pros and cons of each, but it’s not exactly where I want it to be. I would love to mix the 2 together. Have you dealt with validation in the forms? 21:04 – Digital Ocean’s Advertisement. 21:41 – Guest: I have an editor. I send it to the client. Each input is having some sort of validation. 23:17 – Panelist: How do you make them look good? Yeah, I can do it but how does it not look generic? Do you have a layout? 23:53 – Guest: I throw it into the screen – I try to keep it simple. 25:04 – Panelist: That makes sense. I didn’t know if there was a crossover of complexity. I want a balance between... 25:38 – Panelist: Reactive or Template driven? 25:45 – Guest makes comments. You want to have some custom checking. 26:13 – Panelist: Why was it hard? 26:21 – Guest: Not sure...I experimented a lot. 27:27 – Panelist: I gave up on Reactive. One of the killers for me was the nested components. It seemed to fall apart in my hands. It was extremely difficult. The outer form lost contact to what was going on. That was one of the biggest decisions to walk away from Reactive all together. 28:25 – Guest: Now I remember why I dropped templates. 28:44 – Panelist: Not true, but it’s doable! It’s also easy! You have to know what’s going on. Let’s change the story on this – I don’t want to hijack the podcast. 30:55 – Panelist: It makes your ears stand up. John’s objection was that he was putting a lot of stuff into HTML. 32:43 – Panelist: Every time I see some try to decorate the HTLM – no you don’t have to do that. The rules aren’t there. There are exceptions, of course, but real validation is not screen validation. Interestingly, we have written one for this application. It belongs to Marcel. This isn’t Breeze specific – maybe we an get people to working on it. For sure, even if you didn’t have this framework, you can create one on your own. It turns out that it has more models than you think it does. 34:55 – Panelist: Aside from forms, what mattered in your app? 35:22 – Guest answers the question. 36:01 – Panelist: Lazy Loading. In some apps lazy loading doesn’t make sense in all areas. You don’t always have to use. 36:53 – Guest: Yes, when you work for your employer you sometimes have more time available. When you have a startup it’s a race. Your startup doesn’t have any money. 37:24 – Panelist: You had money? 37:33 – Guest: You have to try new things and makes things right. When users really start really using your application. You can fix everything and make the perfect app or you can learn new things about your users. What problems do that have? 38:50 – Panelist: Question asked. 39:40 – Guest answers question.  40:38 – Protractor. 41:51 – Problems that you/we ran into. 42:21 – Panelist: “We” are using Test Cafe. 42:58 – Cypress. 44:10 – You do not need web driver and... 44:29 – Test Cafe is free. 44:39 – I would pay ten’s of dollars to use a piece of software. It’s a budget buster. 45:15 – Sounds like you guys have a great product there. 45:24 – Thanks for having us. 45:30 – Chuck: Let’s go to picks! 45:39 – Code Badges! 46:13 – Picks! Links: Microsoft’s Azure JavaScript Ruby Angular Test Cafe Cypress Ilya’s GitHub Ilya’s SitePoint Ilya’s Twitter Roman’s Crunchbase Roman’s LinkedIn Roman’s Twitter Sponsors: Angular Boot Camp Digital Ocean Get a Coder Job course Picks: Charles Microsoft Ignite Microsoft Connect Follow me on Twitter! Apple Event John Pipelines – Azure VS Code Ward Test Cafe Ilya Framework Event Roman Michael Seibel’s Building Product MLcourse.AI – October 1st next session starts – it’s free

North Avenue Lounge
Judge Phineas Englebert - 4/27/2015

North Avenue Lounge

Play Episode Listen Later Jun 13, 2017 60:00


Guest: Not a real person In today's episode, Cris Cray sits down with Judge Phineas Englebert of Warner Robins, Georgia to discuss the state's failed religious freedom bill and the HBO documentary on Scientology called "Going Clear." Host: Cris Gray

Bobby Owsinski's Inner Circle Podcast
Episode #141 – Year End Review And 2017 Predictions

Bobby Owsinski's Inner Circle Podcast

Play Episode Listen Later Dec 27, 2016 30:55


            NEWS A look back at the music business news of 2016 Some music business predictions for 2017 GUEST Not this time The post Episode #141 – Year End Review And 2017 Predictions appeared first on Bobby Owsinski's Inner Circle Podcast.