Join our weekly discussion about how to build top end Angular applications and become an Angular expert.
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular–6102018/support.
php/*
Join our weekly discussion about how to build top end Angular applications and become an Angular expert.
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular–6102018/support.
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
Panel:
- Charles Max Wood
- Joe Eames
- Aaron Frost
- Alyssa Nicoll
Special Guests: https://twitter.com/brian_love?lang=en & https://twitter.com/KevinSchuchard In this episode, the panelist talk with today’s special guests Brian Love & Kevin Schuchard! Brian and Kevin work at https://www.briebug.com – check out their employee profiles https://www.briebug.com/briebug-development-team/! The panelist and guests talk about schematics, Angular, AST, and much more!Show Topics:0:00 – https://devchat.tv/get-a-coder-job/ 0:50 – Chuck: Hello! Our panel today is Joe, Aaron, Alyssa, and myself. We have two guests today, and we are going to talk about schematics. Let’s dive into that!1:46 – Guest: Schematics is a library that is coming out of Angular and the Angular Team.The guest gives a definition of Angular Schematics. 2:26 – Alyssa.2:31 – Kevin: The functionality that you are hoping for depends on the CLI that you are on.3:00 – Alyssa: Sorry for diving into the juicy stuff but we forgot to talk about your introductions!3:19 – The guests talk about their backgrounds and introduce themselves to the panel and the listeners. 3:49 – Alyssa.3:54 – Guest continues.4:21 – Panel: Crazy and busy!4:28 – Alyssa.4:31 – Kevin: I am Senior Developer, and I have worked here for a few years. I have had the opportunities to write some schematics for the company and some of my own schematics.4:53 – Alyssa: Aren’t you so proud that you are a “Senior Developer”?!5:10 – Guest and panelists go back-and-forth. 6:23 – Guests: We want people to be familiar with schematics and start their journey with schematics.6:50 – Panel: It’s kind of trippy isn’t that right?7:00 – Guest: Yeah there are hurdles to learning schematics at first – for sure.7:22 – Alyssa: What is AST?7:29 – Guest gives a definition of AST and goes into much detail about this. 10:00 – Alyssa: I think I understand, now, what AST is. Thanks.Alyssa asks the guests a question. 10:14 – Guest answers the question about AST. 10:51 – Guest continues. 11:27 – Panelist is talking about the AST and schematics. 12:03 – Guest: You can read the whole file and using the AST you can figure out where you went to enter the text.12:25 – Alyssa asks a question. 12:28 – Guest: We are not the developers of schematics, but we are just here to share our knowledge. I want to be super clear here.13:39 – Panelist talks about schematics, CLI, and AST. 14:18 – Guest: You don’t have to know all about AST and everything there is to know to get into it. You can build schematics w/o getting into AST. Just to be clear.14:39 – Alyssa asks a follow-up question. 14:41 – Guest continues. 15:57 – Guest: AST has been around for a while – it’s not a new thing it’s kind of an old thing.Guest talks about tools (Code Shift) that Facebook has built that is related to this topic. 17:22 – Guest: Yeah AST has been around for a while.17:28 – Alyssa asks a question about Code Shift. 17:36 – Guest.18:21 – Panel and guest go back-and-forth. 19:51 – Alyssa: You said you really don’t need to get into AST to do schematics – right? (Yes.)Alyssa asks a question. 20:19 – Guest: There are two pieces with schematics and that’s adding of new files and you can decide which pieces of the templates you want to be compiled.21:58 – Chuck: For schematics you mentioned you could drop strings in.Chuck asks a question.22:29 – Guest answers the question with a hypothetical situation. 23:09 – Chuck: I read the article you wrote and I have a question about your article. Tell me about the tree?23:29 – Guest talks about the tree or aka the host. 25:40 – Guest: The tree is a virtual kind of context and it’s not committing all of the changes to the file system. Whether that is adding, deleting, or updating these files.26:10 – Chuck: Makes sense to me.26:15 – Guest continues talking about schematics. 26:53 – Alyssa: https://yeoman.io is a replacement for schematics?27:05 – Guest: It’s a lightweight alternative. 27:33 – https://angularbootcamp.com 28:10 – Chuck: How does one build a schematic?28:16 – Guest answers the question. 30:34 – Panel: What’s the latest thing you’ve built? Talk about that, please.30:40 – Guest: It’s a schematic and took what we’ve learned to set you up for a starter project. It starts with a blank project.32:57 – Panel: You are just talking some lessons learned and you are saying this is how Kevin says to do it. You’ve packaged that up33:26 – Guest: Yep I have found things that work and there isn’t any magic but put these practices together and made a repository to help testing and making schematics.33:55 – Panel and guests go back-and-forth. 34:20 – Chuck: Let’s say I’ve built this schematic and Frosty wants to share it with his friends. How do we do that? How do you share it? Is there some component that you’ve built?35:06 – Guest: It depends on what you are doing with it.36:14 – Chuck: For mass production, though?36:25 – Guest: I think Chuck is wondering about discoverability. Guest continues and he mentions https://github.com/prettier/prettier, extensions, among other things. 37:18 – Guest: I think it’s my favorite about schematics and it’s Kevin’s.37:40 – Guest.38:20 – Guest continues talking about schematics and https://www.ng-conf.org 38:57 – Guest talks about libraries.40:12 – Chuck: Anything else? Do you NPM install it and it’s just there?40:29 – Guest: There are 2 ways to go about it.53:05 – https://www.freshbooks.com END – https://www.cachefly.com Links:
- https://vuejs.org
- https://jquery.com
- https://angular.io
- https://www.javascript.com
- https://www.python.org
- https://reactjs.org
- https://www.cypress.io
- Yhttps://yeoman.io
- http://groovy-lang.org
- https://github.com/prettier/prettier
- https://www.ng-conf.org
- https://brianflove.com
- https://www.linkedin.com/in/kevinschuchard
- http://blog.briebug.com/building-an-angular-schematic-for-jest-testing
- https://brianflove.com/2018/12/12/angular-schematics-tutorial/
- https://www.kevinschuchard.com/blog/2018-11-20-schematic-sandbox/ + starter project
- https://github.com/schuchard/schematic-starter
- https://blog.angular.io/schematics-an-introduction-dc1dfbc2a2b2
- https://leanpub.com/angular-schematics
- https://github.com/angular/angular-cli/tree/master/packages/schematics/angular 1
- https://github.com/angular/material2/tree/master/src/lib/schematics 2
- https://astexplorer.net/
- https://www.eventbrite.com/e/evening-of-angular-2019-tickets-52323800897
- Example Schematic project with Sandbox: (Written by Kevin)
- https://github.com/briebug/jest-schematic
- https://github.com/schuchard/prettier-schematic
- https://github.com/briebug/ngrx-entity-schematic
- https://github.com/blove/schematics
Sponsors:
- https://angularbootcamp.com/
- https://www.cachefly.com
-
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
Panel:
- Charles Max Wood
- John Papa
- Aaron Frost
Special Guest: Juan HerreraIn 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: https://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 https://twitter.com/antarcticonf?lang=en 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 – https://devchat.tv/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 people38:45 – Guest: Yeah, what are we going to do next year? Are we going to do https://www.meetup.com 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 https://www.meetup.com that is called the MEGA MEETUP!41:00 – https://www.freshbooks.com END – https://www.cachefly.com Links:
- https://vuejs.org
- https://jquery.com
- https://angular.io
- https://www.javascript.com
- https://www.python.org
- https://reactjs.org
- https://www.cypress.io
- https://www.meetup.com
- https://twitter.com/antarcticonf?lang=en
- https://twitter.com/jdjuan?lang=en
- https://github.com/jdjuan
Sponsors:
- https://angularbootcamp.com/
- https://www.cachefly.com
Picks:Aaron
- https://www.harrypottertheplay.com/uk/
- https://youtu.be/f8172H32vxo
- CFP: https://ngvikings.org
- CFP: https://docs.google.com/forms/d/e/1FAIpQLSfYLqvSIckyuhWyIl2NAYWQnSEOz2pXt6VRF1hF9MlBmP7aXw/viewform
- https://twitter.com/aaronfrost – Twitter!
Chuck
- DevChat TV transferring from WordPress to a static site.
Guest
- JS – library
- https://www.ngcolombia.com
- https://twitter.com/jdjuan?lang=en
John
- https://www.forbes.com/sites/darrahbrustein/2018/04/01/15-ways-to-start-a-conversation-at-a-conference-without-feeling-weird/#13beebf83b39
Special Guest: Juan Herrera.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out:
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
Panel:
- Charles Max Wood
- Joe Eames
- John Papa
- Alyssa Nicoll
Special Guest: Michael GiambalvoIn this episode, Chuck talks with special guest https://twitter.com/heathkit who is an author of the book titled, “Testing Angular Applications.” This book can be purchased through Amazon, Manning Publications, among other sites, too. The panelists and the guest talk about different types of tests, such as end-to-end testing and unit testing. They also talk about Angular, Java, Mocha, Test Café, and much more! Check it out!Show Topics:0:00 – Advertisement: https://angularbootcamp.com 0:53 – Chuck: Our panel is John Papa, Joe Eames, https://twitter.com/AlyssaNicoll, and myself. My new show is the http://thedevrev.com – check it out, please!1:26 – Guest: I am a contributing author to our https://www.manning.com/books/testing-angular-applications, which is about Angular.1:56 – Chuck: How is it like to write with multiple people?2:04 – Guest: Yep it’s hard b/c we are in different areas. Back in the 2.0 days, Jesse was writing a book. He was talking about typescript and components. Craig made friends with Jesse and they were talking about the book he was writing. Then we all jumped in to get in finished. We all had areas that we were specialists in!3:21 – Alyssa: If you break it up that makes sense.3:31 – Guest.3:40 – Panel: Pick different words and go around the room.3:51 – Panel: You write the first ½ of a sentence and then you write the other ½ of the sentence!4:10 – Guest: You have these big word documents and go back-and-forth.4:36 – Alyssa: Editing and then pass it back-and-forth – how does that work?4:46 – Guest: It’s like 8 pass backs-and-forth.5:35 – Guest: The editing was the main issue – it took forever!5:50 – Chuck: We were going to co-author a book and we didn’t.Chuck: If you could break down the book in 4 core topics what would they be? Elevator pitch? What is the starting knowledge?6:18 – Guest: We expect you to know Angular Intro and that’s it!6:43 – Chuck: What are the principles?6:50 – Guest: We talk about the testing component. We highlight the benefits of using Angular vs. Angular.js. That shows up in the book a lot. It’s very example driven.7:28 – Chuck: We have been talking about testing quite a bit on the show lately.8:22 – Chuck: Do you see people using the testing in regards to the pyramid?8:33 – Guest: I am not a huge fan of the pyramid. Some questions I ask are: Does it run quickly? Is it reliable? To give you some background I work on Google Club Platform.10:21 – The guest talks about “Page Level Integration Tests.” 11:31 – Alyssa.11:50 – Chuck: After your explanation after writing your book I’m sure it’s a breeze now. Knowing these tests and having the confidence is great.12:13 – Guest: Tools like Cypress is very helpful. Web Driver Testing, too.12:43 – Chuck: Where do people start? What do you recommend? Do they start at Protractor or do they come down to unit tests?13:02 – Guest: Finding the balance is important.14:30 – Chuck: Check out a past episode that we’ve done.14:40 – Panel asks a question about tools such as Test Café and Cypress.14:50 – Guest: I really don’t know Test Café. There is a long story in how all of these fit together.The guest talks about Selenium, Cypress, Safari, Edge, Chrome, Firefox, and Puppeteer! 19:24 – Chuck: Does it work in Electron as well, too?19:26 – Guest: Good question but I don’t know the answer.19:39 – Chuck: Maybe a listener could write a comment and tell us.19:43 – Panel: I’ve used Protractor for many years. I like the explanation that you just gave. The great thing about Protractor is that you can...20:29 – Guest: We wanted to explain the difficulty of Protractor in this book.Guest: You have this test running in Node but then you have your app running in the browser. You have these 2 different run times. You might have to run them separately and there is tons of complexity.21:15 – Panel: As I am coding you have this visual browser on one side, and then on the other side you have...22:22 – Guest asks the panelists a question.22:32 – Panel: I have only used it for a few months and a few several apps but haven’t had those issues, yet.22:55 – Guest: I haven’t heard of Test Café at all.23:05 – Alyssa: Is the book online?23:13 – Guest: It’s available through Manning Publications and Amazon. I think we have some codes to giveaway!23:34 – Chuck: Yeah, we are working on those codes and giveaways. We have mentioned about 5 or 6 tools – are you worried about your book going out of date?24:05 – Guest: Sure that is something we are worried about. When editing took a long time to get through that was one of my thoughts.The guest talks about Selenium, control flow, Protractor, 25:45 – Guest (continues): These new features were coming out while the book was coming out – so there’s that. What’s this thing about control flow and why this matters to you, etc. We were able to add that into the book, which is good. We were able to get those instructions out there. Books have a delay to them.26:47 – Chuck: We talked about this in JavaScript Jabber. This guest talked about this and he is from Big Nerd Ranch. At what point do you have this breaking point: This isn’t a good fit for Test Café or Selenium BUT a good fit for Mocha or Jest?27:27 – https://devchat.tv/get-a-coder-job/ 28:04 – Guest: Do you have a reason why you would switch testing tools?28:12 – Chuck.28:41 – Guest: That’s the tradeoff as you move down the ladder.29:43 – Panel: If you want to trigger an action that isn’t triggerable?29:50 – Guest answers the question. 30:07 – Panel.30:20 – Chuck.30:33 – Guest: You can access code. Usually something in a workflow will make it happen. You have to fall back on some type of UI sort of thing. It’s almost like doing Tetris! I’ve never had to directly call something. I am not the best one to answer that.31:16 – Panel: It’s like a weird mix of tests.31:29 – Panelist is talking about unit testing and other tests. 31:55 – Chuck asks a question. 32:02 – Guest: It depends on the scale of your project.32:28 – Chuck: Do you guys use a test coverage tool or on the side of: everything should run and then test if there is a bug.32:43 – Guest: Coverage isn’t the full story.33:26 – Panel: You said you weren’t a fan of the testing pyramid – can you explain why?33:43 – Guest: I think it turns too much prescriptive.Guest: I think there are bigger concerns out there and the test pyramid is an over-simplification.35:22 – Panel: What’s the difference between fast and slow testing?35:28 – Guest: It really depends on your level of knowledge. If your test suite runs more than twenty minutes to an hour that is probably too slow!36:03 – Alyssa.36:09 – Chuck.36:16 – Alyssa: There is no way that 20 minutes equals that!36:26 – Guest: 20 minutes is the extreme limit. 36:51 – Chuck.37:11 – Panel: Any new Twitter news on Trump?37:21 – Panelist talks about test suites! 37:40 – Panelists and guests go back-and-forth. 38:11 – Chuck: Do you have any recommendations for the unit testing? Keeping it small or not so much?38:29 – Guest: Think: What is this test asking? Don’t write tests that won’t fail if some other tests could have caught them.39:04 – Alyssa: That’s smart!39:09 – Guest continues. 39:28 – Chuck: What else to jump on?Chuck: Do you write your tests in typescript or in Java?39:48 – Guest answers the question. He mentions https://www.python.org, typescript, and more! 40:17 – Alyssa.40:22 – Guest continues. 40:46 – Alyssa: How many people worked on that project?40:50 – Guest: 2 or 3 framework engineers who did the tooling. About 20 people total for tooling to make sure everything worked.41:18 – Panelist asks a question. 41:22 – Guest: About 20 minutes!42:35 – Guest wants to talk about the topic: end-to-end testing! 44:59 – Chuck: Let’s do picks!45:09 – https://www.freshbooks.com END – https://www.cachefly.com Links:
- https://vuejs.org
- https://jquery.com
- https://angular.io
- https://www.javascript.com
- https://www.python.org
- https://reactjs.org
- https://www.cypress.io
- https://github.com/GoogleChrome/puppeteer
- https://www.protractortest.org/#/
- https://mochajs.org
- https://www.seleniumhq.org/projects/webdriver/
- https://docs.microsoft.com/en-us/dotnet/csharp/
- https://github.com/DevExpress/testcafe
- https://istanbul.js.org
-
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
Panel: