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.
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.
In this episode of Adventures in Angular, Brad McAlister joins our regular panelists: Alyssa, Chris, and Brooks! Brad walks us through his work of transitioning into an Annex Monorepo and how working with Angular Elements in conjunction has been going. Brad also breaks down what StoryBook is and how it has helped him in his workflows.
Picks
Michael Hladky joins the adventure to discuss how he's gotten a 60% performance increase using push pipe and related techniques.
Many developers can get by without this technology, but Michael explains how to pull the push pipe into your code and what that looks like compared to Zone.js and the default stack in Angular.
Links
Joaquin Cid is an Argentinian developer who has built a plugin for NGXS state library that allows developers to connect to Firebase and have their queries automatically import into NGXS. Further, it also allows them to define actions that will update their datastore when triggered.
The new Adventures in Angular panel dives into the ins and outs of using NGXS and Firebase to build rich applications with Angular and these technologies.
Links
In today's episode, Lucas is joined by Jason Akbar, a full-stack software engineer who’s got a knack for front-end development. He recently penned some intriguing articles on Medium about RxJS operators. He will reveal what motivated him to write about RxJS operators, especially focusing on the top 17 operators that every Angular developer should know. They will break down each of these operators—like the map, filter, and debounce time—and discuss how they can streamline your Angular development. Jason will also touch on some of the lesser-known but incredibly useful operators like concat and merge, providing real-world examples of where these can come in handy.
Whether you’re navigating your way through Angular or looking to refine your skills, this episode is packed with nuggets of wisdom that you won't want to miss. Jason also has some tips on where you can find additional resources to master RxJS.
Links
Ankit Sharma, an Angular GDE and author, joins us in this episode of Adventures in Angular to talk about using Azure cognitive services with Angular.
Links
Armen Vardanyan is an Armenian Angular developer who works extensively with both angular and RXjs. He walks Chuck through the ins and outs of how he uses RXjs to expand the functionality of his Angular applications and how to think about observables in general.
Picks
Ravi Veliyat helps train people in many web technologies, Angular being one of them. The panel discusses the various ways you can get your components to communicate, from inputs and outputs all the way up to NgRx. Ravi walks through the different options, with great examples that will keep you on the edge of your headphones.
Links
Philipp Kief is a German developer who walks through how to manage and capture errors in your Angular application and how to display them to users.
He discusses how he standardized error handlers in his applications and what he does to make sure that they get logged someplace.
Links
Nishu Goel joins the Adventure to talk about how Web Components can be used in Angular applications and how to use them to share functionality across multiple applications written in different frameworks. We also dive into how web components are used and compatibility across browsers.
Links
The illustrious and well-regarded Gil Fink joins the Adventures in Angular panel to talk about profiling your Angular apps. Profiling consists of finding bottlenecks, and memory leaks among other problems within your application. Most of the time, the problems are hard to see from the development side. Usually, they appear when your user uses a device that is slow or a connection that is faulty. Gil explains how to find and fix them.
Links
In this episode, Lucas, Armen, and Subrat are joined by Luis Galeas, the CEO and founder of Ambar. Today's discussion dives into the fascinating world of event sourcing, exploring its intricacies in both front-end and back-end development.
Event sourcing has emerged as a pivotal technique for managing the state by recording events that can rebuild the application state, bringing unique challenges and opportunities, especially on the back end where state persistence and scalability are critical. Luis shares his expertise on how Ambar's tools simplify event connections with minimal coding, the importance of efficient data transfer, and how event sourcing can transform state management.
They also cover practical aspects like the technological components, system design, and implementation strategies for event sourcing, providing a comprehensive overview for developers keen on enhancing their applications. Lucas, Armen, and Subrat, alongside Luis, provide valuable insights and address common challenges, ensuring you walk away with actionable knowledge.
To round things off, Luis introduces a free course offered by Ambar to dive deeper into event sourcing and discusses how gradual implementation can ease the transition for your development projects. Stay tuned for a deep dive into event sourcing's potential to revolutionize your approach to state management in both front-end and back-end technologies.
Socials
In this episode of Adventures in Angular, Will Gant, author of Remote Work talks about working from home and working outside of the client's office. He and Brooks share their experience with working through the challenges, benefits, and methods of working remotely.
Picks
In this episode of Adventures in Angular the panel interviews Dave Cooper, who recently gave a talk at AngularConnect about using Mock Data. Dave starts by explaining more about his talk and sharing the benefits of using data mocking solutions and rapid prototyping. He shares the secrets of doing rapid prototyping.
There are challenges to using mock data, Dave shares a few of them and explains how to overcome them. The number one challenge of using mock data is keeping it in sync with your real data and making it look real.
Dave explains how to get started with mock data and shares library recommendations. The panel discusses the use cases for mock data and Dave walks them through a few scenarios for using mock data. He shares use case recommendations and discusses using mock data for testing.
The panel discusses the benefits of using mock data for demos and courses. The possibilities and future of mock data and pact testing are explored. Dave shares his coding process and explains how much faster he can code by using mock data.
Links
Freddy Montes joins the adventure to discuss how he and his team manage state in their Angular components.
Many development teams instinctively reach for a solution like ngrx when they're building their angular apps and start seeing complex state. However, there's a lot of boilerplate and it's often overkill for small to medium apps. Freddy talks about his journey into managing state for his components using observables and basic state libraries.
Links
Have you ever thought how nice it'd be to write your apps for desktop and mobile alongside the web? Richard Sithole joins the adventure to discuss how to pull a desktop app and mobile app into your repo using electron and capacitor to extend the functionality to new platforms.
It turns out that a single repo cross-platform app isn't a total pipe dream.
Links
Dive deep into the latest trends and challenges in the development world. Lucas, Armen, and Subrat Mishra are joined by a special guest, Rakia Ben Sassi, a Google Developer Expert in Angular.
In this episode, they explore the complexities and potential benefits of adopting Zoneless Angular and discuss the critical updates in Angular 18, including improved composability for micro frontends and interoperability with other frameworks. They also cover the technical barriers and performance issues associated with Zone JS, and how its removal could significantly streamline your development process.
They delve into the practical considerations for server-side rendering (SSR) and client-side rendering (CSR), offering a hybrid approach that could be beneficial for large applications. Rakia shares some fascinating use cases, including an e-commerce application example, to illustrate the real-world impact of choosing SSR versus CSR.
They touch on the new features in the Angular Forms API, including a discussion on the new observable for form control events, and its relevance in complex applications.
Finally, they wrap up with some promotional content, where Armen talks about his upcoming book "Modern Angular," Lucas highlights Top End Devs' tech podcasts, Rakia promotes her blog and video courses, and Subrat invites you to check out his YouTube channel.
Social Media
Special guest, Vitalii Bobrov joins us to talk about accessibility on the web and how to relate it to user experience in general. What can we do to improve accessibility? How can we improve accessibility? Why should we even care about accessibility? Find the answers to these questions and much more on this very insightful episode of Adventures in Angular.
Links
Alex Eagle is a Software Engineer on the core Angular team at Google. Alex and the panel talk about Bazel, a a free software tool that allows for the automation of building and testing of software.
Links
Raul Jimenez, the CEO of Byte Default, answers the panels many questions on functional programming with NgRx. In this playful interview, Raul defines functional programming and what it is trying to solve. The panel discusses side effects using a Spiderman analogy. Raul shares the benefits of switching to and when to use NgRx. The importance of knowing RxJS in using NgRx is considered by the panel. The episode ends with an in-depth discussion on some the specifics of using NgRx for functional programming.
Links
In this episode of Adventures in Angular the panel interviews Tara Manicsic. Tara is an Angular Developer Experience Engineer at Netlify. Tara explains what she does at Netlify. She explains what Netlify is and introduces the topic for today’s episode, JAMstack. She explains what services Netlify offers and the packages they offer.
She explains that the JAM in JAMstack stands for JavaScript API Markup, which outlines the best practices of a JAMstack architecture. During her explanation of JAMstack and the benefits of a microservice architecture, she references Smashing Magazine and their switch to JAMstack.
Tara overviews each letter of JAM and how they affect JAMstack. J or Javascript refers to the use of a JavaScript language, like Angular and others. Tara lists the API’s one might use for the A in JAM. The panel discusses the M or Markup. Markup serves up fast and safe prerendered content. Tara explains what prerender means and it makes the content safer and the sites faster. Tara then overviews the entire JAMstack process and explains atomic deployment.
The panel considers how JAMstack is picking up in the Angular ecosystem. Tara outlines a few of the benefits seen when using JAMstack and the panel considers the possible use cases. She shares a few real-life examples of the success seen when JAMstack is used in an enterprise application.
Links
In this episode of Adventures in Angular the panel interviews Zama Khan Mohammed about his recent book and other open source work he has done in the Angular community. Zama explains what is so different about his book and why it is worth reading. His book takes an approach different than the common practice of walking readers through concepts, instead, his book walks readers through using a project perspective.
The first chapter walks through setting up Angular, installing Angular CLI and Angular console. After the set up is complete he walks readers through a very basic flashbase application. Zama explains how this first chapter is geared toward beginners. In his book, Zama shows users how to use the whole platform. He covers PWA and how to create brand new projects from scratch.
The panel asks him about his unique project perspective strategy for this book. Each chapter of Zama’s book walks the readers through a different project, unlike most technical books that walk readers through one project introducing a different concept each chapter. Zama explains why he wrote the book this way. He wanted to bring different libraries and tools into each project to highlight how deep and rich the Angular community and ecosystem are. The panel shares how the ecosystem and community make Angular so great to use.
Zama’s book is called Angular Projects and was published by Packt Publishing. Zama shares where to find it for those interested. The panel considers how hard writing a book must be. Zama explains the time and stress involved in writing a book. He admits he has been approached to write more books but has resolved to wait a bit before diving back into writing.
The panel discusses Zama’s open source efforts in the Angular community. They consider a few of his projects including, ngx-formly, codelyzer, and ngx-loading. He wrote ngx-formly after using formerly and he decided he wanted to use it with Angular 2.0. The panel was impressed with his contributions to codelyzer, where he helped with the accessibility requirements.
After using react-loadable Zama knew he wanted a similar feature in Angular to provide more control over loading so he built ngx-loadable. The panel defines lazy loading for listeners and explains how having control over what can load and how fast it can load can be useful in applications. Zama shares some of the improvements he has made in version 2.0.
Zama shares his hopes for speaking at ng-conf 2020, this takes the panel down a tangent discussing the exciting workshops that will be at ng-conf next year. Brian Love will be teaching a two-day workshop on Angular fundamentals. Aaron Frost is teaching and observables class and a reactive angular class. They advise everyone to buy an ng-conf ticket and not to be afraid to submit a CFP.
Back on topic, Zama shares the challenges in writing, publishing and maintaining an opensource library. He explains how contributing to open source is a great way to learn and a great way to see what a framework can do. He shares advice for those looking to get into open source and invites everyone to try Hacktoberfest.
Links
In today's episode, They dive deep into the fascinating world of WebAssembly and Rust with our special guest expert, Evgeniy Tuboltsev. WebAssembly, a powerful binary format, allows code to run at near-native speeds in the browser, making it ideal for high-performance tasks like video processing, gaming, and cryptography. Rust, a compiled language, seamlessly integrates with WebAssembly, elevating front-end capabilities to new heights. They explore how you can leverage these technologies in Angular, the performance benefits, and the intricacies of bundle size optimization. Plus, get insider tips on transitioning from TypeScript to Rust and the upcoming updates in Angular version 18.1. Stay tuned as Lucas and Evgeniy break down the best practices and emerging trends in WebAssembly and Rust, and discover how to make applications more powerful and efficient than ever before!
Socials
In this episode, they dive deep into the world of Angular application testing with our special guest, Matt, the author of the Angular Mini Book and creator of the ng demo repository. They explore the essentials of unit tests, service tests, and end-to-end tests using Cypress, and discuss the intricacies of building a robust testing infrastructure with tools like Jasmine, Jest, and Storybook.
Join the hosts as they unpack the challenges and best practices in testing Angular components, using everything from JSON files in automated CI environments with GitHub actions to advanced tools like Applitools and Playwright. Lucas shares insights on achieving high code coverage with SonarQube, clean code principles, and the importance of end-to-end tests for application migration and framework testing.
This episode is jam-packed with valuable tips on creating full-stack applications, microservices, and micro frontends with JHipster, as well as discussions on the expanding tool support for Angular. So, get ready to level up your Angular development and testing game with this must-listen episode!
Socials
In this episode of Adventures in Angular, Sani Yusuf stops by for an adventure and chats with Alyssa, Brooks & Chris about building component libraries in Nx and how he feels forms are one of Angular’s most powerful and perhaps underrated features.
Links
Catalin Ciubotaru joins the show today to share his industry insights and the advantages and disadvantages of using Angular in a startup.
In this episode…
In this episode, Brooks, Alyssa and Chris talk with Aliaksei Kuncevič about Progressive State Management with NGXS. Aliaksei walks the crew through this progressive journey by starting small and implementing reactive services. These are services with a behavior subject. Aliaksei then demonstrates how you can migrate from reactive services to using NGXS.
Links
In this episode of Adventures in Angular Tomas Trajan, an angular elements expert, breaks down how to use angular elements for the panel. Tomas explains that angular elements are great for very specific use cases.
Tomas starts by describing a scenario with a large enterprise with tens of developer teams and hundreds of developers, they have a few choices on how to organize their applications. The first option is a messy monolith. The second option is using monorepos and Nx. The final option is to use a multi-spa solution.
Tomas explains how the multi-spa solution works. This solution consists of 80 stand-alone applications, on the same page and share components. Tomas outlines the common problems when using the solutions and how using angular elements combat those problems.
The panel moves on to considers how you know if you should use angular elements in this way. Tomas provides two questions to ask yourself when deciding whether or not to use angular elements. The first question is, are you in a multi-spa scenario? The second question is, are components shared across applications? If the answer is yes for both of those questions then angular elements can only help the situation.
In last week’s episode of Adventures in Angular the panel interviewed Victor Savkin about using monorepos and Nx. The panel asks Tomas to compare the strategy of using monorepos and Nx to his strategy of using multi-spa with angular elements. He explains why an enterprise might choose multi-spa over monorepos. He also gives the reasons the organization he is working with chose to work with multi-spa.
Aaron asks for clarification for using elements in these multi-spa projects. Tomas goes into great detail, breaking down the way multi-spa and angular elements work together. They walk through it together using consumer profiles as an example.
Tomas explains that using his approach all the applications update components all at once using angular elements. The panel considers the benefits of using Tomas’s approach and which scenarios it would work best for. Aaron expresses his appreciation for all the work Tomas did and the problems he overcame then bundling his solution in a library together so developers can just use it without all the pain.
The library can be found on Github. Tomas tells the panel that there has already been some community contribution to the library. He describes some of the pull requests they have received along with the plans they have for angular elements.
The topic turns to mismatched versioning and how the bundle will work. Tomas explains that the only problem they have seen with mismatched versioning is with zone.js. He shares some workarounds to the problem and promises that they are working on a solution.
The episode ends with the panel listing all the major benefits that an enterprise can gain from using the multi-spa and angular elements approach. It will save them money, allow teams to work together, create and isolation. Tomas also shares some of the new features available in angular elements today.
Links
Mrina Sugosh is a Keynote Speaker, Advisory Board Member and Technical Storyteller. They delve into the world of web development and all things tech. In today's episode, they have an insightful discussion about the technical complexities of exporting invoices to PDF, the challenges of converting HTML rich text to PDF or Word documents while preserving formatting, and the importance of maintaining compatibility with front-end frameworks like Angular, React, or Vue. They explore the release schedule, customization options, and product updates related to the javascript-based rich text editor, TinyMCE. Join them as they uncover the intricacies of maintaining a rich text editor, the significance of Tiny's products for developers, and the ideal audience for leveraging Tiny's solutions. Whether you're a seasoned developer or just embarking on your coding journey, this episode promises to offer valuable insights into the complex world of web development.
Sponsors
Santosh Yadav is a Google Developer Expert for Angular. They delve into the intricacies of contributing to the Angular ecosystem and demystify the challenges associated with open-source projects. They discuss the importance of long-term commitment to open-source contributions, share insights on committing to documentation, and emphasize the significance of understanding Angular's commit structure. The episode also touches upon the upcoming virtual conference, TIL Conf, and provides valuable advice for both new and experienced developers looking to make a meaningful impact in the open-source community. Tune in for an enlightening and engaging discussion on the world of Angular development and open-source contributions.
Sponsors
Michael Prentice is the owner of DevIntent and an AngularJS Material Lead Maintainer at Rangle.io.
Sponsors
Craig Spence was a developer at Trade Me in New Zealand before he moved to Sweden to join Spotify. Trade Me is New Zealand's biggest website and it is similar to eBay where people buy and sell lots of different items. Craig talks about his experiences migrating Trade Me from AngularJS to Angular and the challenges they faced. One of the tips Craig has for the audience is when faced with a problem it is better to ask for help from those who have been in similar situations before, rather that attempting to solve it alone. The panel also agrees that developers should stop writing in AngularJS and make the decision to move forward. Craig recently started working at Spotify in Sweden and is dealing with a challenging bug that has lasted for over 13 days.
Links
In this week’s episode of Adventures in Angular the panel interviews Shlomi Assaf, talking about ngrid. After some playful banter about the naming of Ngrid, Shlomi shares the reasons behind building ngrid. The company he was working for at the time need a grid, he tested nggrid but wanted something completely opensource, so he built one. He also explains that nggrid caused some problems in their project which made him want something more customizable.
Shlomi explains how much work is needed on the application and asks listeners to contribute to documentation or other areas of the project. Shai Reznik endorses Shlomi as one of the smartest peoples he knows and tells listeners if they want to learn from someone who knows a lot about angular to step up and join this project.
The panel asks about the challenges Shlomi faced while building this app and what it was like using the CDK. Nggrid has a how company working on it but ngrid has only Shlomi. Shlomi explains that the CDK had a lot of the building blocks need to building blocks to build this application and was the power behind the project. The CDK’s lacks the ability to extend easily which was a challenge. He explains that his biggest frustration while building the application was the drag and drop feature.
Shlomi shares many of the features he built into the application that even though he built it over a three year period he could do it piece by piece because of the way he designed it. He considers the selling points of the application and shares them with the panel. Shlomi compares ngrid to other grid, explaining how templating, creating columns and pagination are all made easier with ngrid. With ngrid there is also virtual scrolling and you can control the width of each column.
Next, the pane considers performance, asking how the grid would handle if you loaded thousand or even tens of thousands of records and data onto the grid. Shlomi explains that unless the cells were extremely complex that ngrid’s performance would not suffer. The panel how ngrid could work with serverside rendering but not with NativeScript. Shlomi explains version support and advises listeners to use Angular 8.
The panel ends the episode by sharing information about next year's ng-conf. Tickets go on sale on October 1, 2019, the best deals go fast so watch out for them. Many of the panel will be there, Brian Love will be giving the Angular Fundamentals Two-Day Workshop. The CFP also opens October 1, 2019, and will close January 1, 2019. Aaron Frost invites anyone who would like to submit to reach out to the veteran panelists to nail down ideas for their conference proposals. He also recommends submitting more than one.
Sponsors
Alan Agius is a Software Engineer at Google. Lucas and Alan dive into the world of Angular development with a focus on internationalization and library management. They unpack the latest features of Angular 17.3, including improvements to Angular CLI, and shed light on the upcoming developments in version 18. They explore the nuances of runtime and build time translations, share insights on integrating NX with Angular projects, and discuss the use of Bazel for building frontend and backends in a single repository. They also highlight a third-party library called Transloco that leverages Angular Internationalization's runtime capabilities. Get ready for a deep dive into Angular and internationalization on this episode of Top End Devs!
Sponsors
Konstantin Dinaev is the director of product development and a major contributor to Ignite UI. They explore the differences between Ignite UI and Material UI, focusing on Ignite UI's suitability for data-heavy applications and diverse, complex components. From its open-source nature to its dual licensing model for commercial usage, they explore the key features and extensive range of components available in the Ignite UI library. Tune in as they delve into accessibility, internationalization, and the challenges of creating a comprehensive component library while maintaining backward compatibility and code splitting. This episode is packed with insights and expertise, so let's jump in and explore the world of Ignite UI!
Sponsors
Dean Radcliffe is a senior software engineer at Optum. Armen and Lucas take a deep dive into the intricacies of reactivity and RxJS. Our special guest, Dean, introduces us to the RxFX library and its potential to simplify observable and effect handling. Join them as they explore the complexities of managing loading states and effects in app development, and gain insight into the challenges of concurrency and cancellation.
Sponsors
In this episode of Adventures in Angular, Charles does a solo episode talking about entrepreneurship and the topic/course on “How to Get a Job.” This is an informative episode for those looking for a job as a developer and how to prepare your resume for your career search. Charles covers the core pieces of the course and specific areas of tailoring your credentials for the job you want to acquire.Sponsors
Thomas Pink and Fabian Friedl from Dynatrace join Adventures in Angular to discuss the highs and lows of building an in-house design system with Angular and the exciting move from keeping it internal to open sourcing and letting the world loose upon it.
Sponsors
Armen Vardanyan is an Armenian Angular developer who works extensively with both Angular and RXjs. He walks Chuck through the ins and outs of how he uses RXjs to expand the functionality of his Angular applications and how to think about observables in general.
Sponsors
In this episode of Adventures in Angular, we talk with Katerina Skroumpelou, who is a Google Maps and Angular Google Developer Expert and team member at @nrwl_io, living in Greece. In this episode, Katerina talks about how she got started with Google Maps. She also covers how the Google Maps JS API has changed over time, how you can get started using it in your Angular applications, and what you all can do with the API!
Sponsors
Ionic’s very own Ely Lucas swings by to chat to Alyssa, Chris & Brooks about NestJS, the node framework that’s winning over devs in the Angular community and beyond. The panel dive into the docs, learning about how Nest allows developers to structure powerful backends with a syntax that will make Angular devs in particular feel right at home.Sponsors
Armen, Subrat, and Chuck dive deep into the ever-evolving world of Angular development and the latest developments in the NGRX framework. In this episode, they explore the introduction of version 17 of NGRX and the shift towards fully signal-based stores. They discuss the implications for existing NGRX data usage, the frustrations and opportunities presented by this shift, and insights into customizing error handling and actions.
Sponsors
Armen, Charles, and Lucas join this week's panelist episode. They dive deep into the process of converting components to standalones using a schematic provided by the Angular team. They discuss the challenges faced in the migration process, insights into the reasons behind certain Angular features still being module-based, and the adoption of new control flow syntax. They also share their experiences with transitioning to Angular 17, involving challenges, code changes, and a migration process that requires careful consideration. Plus, they explore the use of signals for reactive state and change detection and shed light on the migration to Angular SSR, including helpful tips and best practices.
Sponsors
Armen and Lucas join this week's panelist episode. They explain SSR, how it works, its advantages, and its pros and cons. They dive into the services it provides to its users and how it improves applications. Moreover, they discuss the SSR improvements in Angular 17 and many more.
Sponsors
Charles, Lucas, and Subrat join this week's panelist episode. They delve into the world of Angular development and the latest advancements in the tech industry. They explore the key features and improvements in Angular 17, including rendering percentages, performance enhancement in continuous integration, control flow, and vernacular views. They delve into the rebranded logo and the new documentation website, Angular.dev, and its pros and cons. Additionally, the discussion covers AI integration, non-coding tech business models, and the impact of stable bundlers on build performance.
Sponsors
Alex Inkin is a lead front-end developer. They dive into the world of Angular development. They explore three utility libraries created by Alex: Taiga UI, web APIs for Angular, and Mosquito, an input masking library. Get insights into Alex's experience working on open-source projects and his tips and recommendations for developers.
Sponsors
Vincent Ogloblinsky is a software architect. They dive into the world of documentation generation for Angular code bases with a deep dive into Compodoc. They explore the challenges of maintaining and supporting major and minor versions of Angular, the intricacies of file-based routing, and the balance between complexity and simplicity in development.
Sponsors
Dany Paredes is a senior frontend engineer and Google Developer Expert. He joins the show to talk about UI libraries in Angular. He begins by explaining the problems it solves, the problems it creates, when you should use a library, when you should build one from scratch, and many more!
Sponsors
Doguhan Uluca is a Software, Agile, and Cloud engineering expert, Author, and Speaker. He joins the show to talk about his book, "Angular for Enterprise-Ready Web Applications". He begins by explaining his book, his motivation for writing about enterprise applications, and many more! Sponsors
In this episode of Adventures in Angular, special guest, Christian Liebel engages the panel in an interesting discussion on Angular performance especially as it relates to runtime performance.
Sponsors
Marek Panti is an Angular developer at UNIQA Insurance Group AG. They dive into the world of artificial intelligence and its impact on developers, exploring the future of JavaScript and UI design, and delving into the evolution of JavaScript frameworks. Additionally, they discuss the challenges faced by front-end developers, the complexities of back-end development, and the ongoing debate on front-end vs. back-end salaries. Marek also shares insights from their own project, giving us a glimpse into the intricate world of calendar development.
Sponsors
Armen, Lucas, and Subrat join this week's panelist episode. They talk about the fascinating topic of using signals and observables in Angular. They also explore the differences between the two approaches, their use cases, and how you can enhance your development process. Moreover, they dive into the reactive graph systems to handling loading states, and many more!
Sponsors
Lucas and Subrat delve into a thought-provoking topic: the significance of a college degree in the job market. They share their insights and experiences, discussing the impact of not going to college, the importance of networking and experiential learning, and the varying requirements in different countries and industries. From the benefits of attending a prestigious university to the changing landscape of hiring practices, they explore the factors to consider when deciding on the path to success.
Sponsors
Daniel Kreider joins the Adventure to discuss some of the things that are slowing down your front-end app. He also dives into the handful of things you should look at first in order to make sure that your application is running at top speed.
Sponsors
Armen comes back to the show to talk about one of his articles, “Change Detection without Change Detection". Change detection functions by helping rerender the UI when data changes. Armen joins Chuck and Subrat as he shares the importance of using his Change Detection technique to improve performance rather than using the built-in one.
Topics discussed
José Ignacio Santa Cruz is a Fullstack engineer at Newfire Global. He joins the show to talk about his article," Upgrading an enterprise app to Angular 16". He begins by explaining the level of difficulty you might experience in upgrading your app. He talks about its importance, its process, common pitfalls you might encounter, and many more!
Sponsors
Armen, Lucas, and Subrat join this week's panelist episode to talk about Angular's "Built-in Control Flow". They begin by sharing their perspective on Angular's newest change and give an introduction to the Built-in Control Flow. Additionally, they explain its purpose and how developers can benefit from this.
Sponsors
Alain Chautard is an Expert trainer and GDE. He joins the show to talk about being a tech speaker and attending conferences. They also dive into its benefits, expectations when attending conferences, the process of being a speaker, and many more!
Sponsors
Jessica Janiuk is a Senior Software Engineer at Google. She joins the show to talk about Hydration and Server-Side Rendering in Angular 16. She begins the show by talking about her career and her achievements. She explains the process of how hydration works.
Sponsors
Armen and Lucas join this week's panelist episode to talk about Advanced Patterns with Angular Directives. Armen takes the lead as he continues to talk about his article on, "Angular Directives". He discusses the use cases of angular directives.
On YouTubeAdvanced Patterns with Angular Directives Part 2 - AiA 381
Sponsors
Eduardo Roth is a Hero Software Engineer and Ionic Developer Expert. He joins the show to talk about Angular Signals in Practice. He talks about his experience in building an app with Angular Signals and the challenges he encountered. He also talks about bridging Signals with RxJS.
On YouTubeAngular Signals in Practice - AiA 380
Promoted Links
Bruce A. Tate is a Founder at Groxio, Elixir Expert, and a Technical Author. He joins the show alongside Charles Max Wood to talk about his book, "Seven Languages in Seven Weeks". He also delves into some of the preparations and anticipations that come with reading the book.
Links
Jason Weimann is a Developer and Instructor. He returns to the show with Chuck to talk about video game creation. He shares his experiences as a developer and dives into his courses wherein he gives beginners and aspiring developers a walk-through of the world of creating games.
Links
Armen, Lucas, and Subrat join this week's episode to talk about "Superpowers with Directives and Dependency Injection". Armen begins the show by talking about the reason why he thinks directives are one of the most crucial tools in Angular. They also discuss the powerful use cases for Directives.
Sponsors
Simon Grimm is a Creator, Indie Maker & Solopreneur. He is currently working at The Ionic Academy. He joins the show to talk about Ionic and building native mobile apps with Angular. He explains all about "Capacitor" and how it contributes to your web application.
Sponsors
Are you dissatisfied with your job? Sam Feeney helps organizations improve employee engagement, increase retention, and reinvent hiring while helping individuals (re)discover career satisfaction in their current roles. He joins the show alongside Chuck Wood to tackle altering the way you perceive your job and talk about Career satisfaction.
On YouTubeHow Do You Stop Hating Your Job? - BONUS
Socials
Armen, Chuck, and Lucas join this week's panelist episode to talk about Signals in Angular. Armen starts off as he gives an introduction to Signals and he explains the difference between RxJS. Additionally, they discuss the problems they solve in Angular.
On YouTubeSignals, the Future of Reactive Programming in Angular - AiA 377
Sponsors
Hosts of the React Round Up podcast, Jack Herrington, Paige Niedringhaus, and TJ Vantoll, join the Adventures in Angular Panel on this week's episode crossover. They begin the episode by contrasting the two frameworks and offering their own viewpoints on React and Angular. Additionally, they explain each of the frameworks' strong points.
Sponsors
Chuck and Lucas join this week's panelist episode to talk about ways how to deploy applications and some of the past and current services they have used. Chuck takes the lead as he dives into some of his past experiences in deployment.
Sponsors
Chuck and Lucas join this week's panelist episode discussing Angular Structural Directives and Their Microsyntax. They kick us off as Lucas explains the concept of Structural directives, and how developers might use them to their advantage.
On YouTubeAngular Structural Directives and Their Microsyntax - AiA 374
Sponsors
Chuck and Lucas join this week's panelist episode as they talk about "content creation". They start off as they dive into different ways of monetizing your content. Additionally, they talk about approaches on how to capture the interest of the audience to get them to subscribe to your courses.
On YouTubeHow to Succeed in Content Creation- AiA 373
Sponsors
Colum Ferry is a Senior Software Engineer at Nrwl. He joins the show to discuss "Component-First Architecture with Standalone Components and Nx". He begins by explaining the concept of the article. He also elaborates more about Nx and its amazing features for developers.
Sponsors
Lucas Paganini is the CEO of unvoid.com. He takes on this week's solo episode to talk about a library called, "fp-ts". It gives developers access to popular patterns and secure abstractions from typed functional languages in Typescript. He discusses some of the issues that the library resolves.
Sponsors
Chuck, Lucas, and Subrat join this panelist episode to talk about setup and workflow for working in angular apps. They begin by discussing their thoughts on Visual Studio Code. Additionally, they tackle its features and VS code extensions that make working with angular apps easier.
Sponsors
Alain Chautard is a certified Google Developer in Angular and he works as an individual consultant for Angular projects. He joins the show to discuss his career as an Angular expert and Angular mentor. He talks about his projects and his blog. He offers advice on how to become a Google Developer Expert and discusses his experience in the field.
Sponsors
Chuck, Lucas, and Subrat join this panelist episode to talk about Tailwind CSS. They begin by discussing their perspectives and knowledge gained by using Tailwind. They tackle its benefits and impact on your applications.
Sponsors
Armen Vardanyan is a Google Developer Expert for Angular, and Frontend Team Lead at Volo. He returns to the show to discuss his article, "Using NgRx Packages with Standalone Angular Features". He talks about how to use NgRx packages with standalone features.
Sponsors
Charles, Lucas, and Subrat take on this week's panelist episode as they tackle all about Custom Form Components. Lucas starts off the episode by explaining different methods on how you can effortlessly and with ease create custom form components. Subrat also shares his own insight on some other techniques for creating forms depending on how complex your form is. Moreover, they discuss integrating custom form components with Angular forms API.
On YoutubeAngular's Custom Form Components - AiA 366
Sponsors
Walid Bouguima is a Software Engineer at Hilti Group. He joins the show with Chuck, Lucas, and Subrat to discuss his article, " Angular Clean Http Service Methods: Handle Your Backend Communication With Ease". He explains his goals and reasons why he created this method and what advantages it may bring to developers in the Angular community. Moreover, the panel shares their own perspective and some tips about Walid's article.
On YouTubeWriting Clean Http Service Methods With Walid Bouguima - AiA 365
Sponsors
Marek Panti is an Angular developer at UNIQA Insurance Group AG. He joins the panel to talk about his article, "Angular Standalone Components". Standalone components simplify the process of creating Angular applications. He explains how he was able to come up with the idea for his article.
About This Episode
Amal Ayyash is a UX Designer and Front-end Developer. and her current main focus is Angular. She joins Chuck and Lucas to discuss her article, “RxJS-based state management in Angular”. She starts the show off by explaining the reason why she chose to use RxJS to create state management instead of using NgRX. She also gives advice to other developers, encouraging them to use their own frameworks or codes rather than third-party solutions.
About this Episode
Chuck welcomes Lucas to the show as a regular host of Adventures in Angular. They begin by discussing Angular 15's most recent updates and what benefit it might have for the current Angular community. Lucas also offers his perspective on the new tools and what makes him excited to use them.
About this Episode
Each encounter teaches us a lesson. Every setback is a victory. What Can You Do To Take Control Of Your Career? Chuck and Subrat join the show as Chuck takes the lead in sharing his past work experiences and his inspiring journey towards his road to success. He also talks about his current plans for Top End Devs such as conferences, book clubs, meetups, and many more!
Sponsors
Lucas Paganini is a content creator and developer. Together with his team creates educational content about web development through articles and YouTube tutorials. He has been working on Angular since 2017 and is the CEO of a remote company called Unvoid. He joins Chuck on the show to talk about his article, "Automatically Unsubscribe Observables on Destroy".
About this Episode
Get the Black Friday/Cyber Monday "Focus Blocks Bundle" Deal Coupon Code: "THRIVE" for a GIANT discount Are you looking at all the layoffs and uncertainty going on and wondering if your company is the next to cut back? Or, maybe you're a freelancer or entrepreneur who is trying to figure out how to deliver more value to gain or retain customers? Mani Vaya joins Charles Max Wood to discuss the one thing that both of them use to more than double their productivity on a daily basis. Mani has read 1,000's of productivity books over the last several years and has formulated a methodology for getting more done, but found that he lacked the discipline to follow through on his plans. The he found the one thing that kept him on track and made him so productive that he is now getting all of his work done and was able to live the life he wants. Chuck also weighs in on how Mani's technique has worked for him and allows him to spend more time with his wife and kids, run a podcast network, and a nearly full time contract. Join the episode to learn how Chuck and Mani get into a regular flow state with their work and consistently deliver at work.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
Armen comes back to the show to talk about one of his articles, “Change Detection without Change Detection". Change detection functions by helping rerender the UI when data changes. Armen joins Chuck and Subrat as he shares the importance of using his Change Detection technique to improve performance rather than using the built-in one.
Topics discussed
In Angular apps, remembering user-preferred settings is an excellent way to provide a good experience for the users; you can save data in the user’s browser using the localStorage object, which provides methods for working the key-value data. Today on the show, GDE Angular expert Dany Paredes shares his insights about localStorage, how to learn about this API, and knowledge to build in Angular to save background color preferences.
In this episode…
Maina Wycliffe, Google Developer Expert in Angular, joins the show today to talk about his weekly newsletter called “All Things Typescript” and his various content and production strategies. Similarly, Charles also shares his perspective about how he has grown TopEndDevs.
In this episode…
Maria Korneeva joins the show today to share her approach on how to proxy HTTP requests in Angular, including use cases and various strategies to make proxying simplified and useful to your Angular workflows.
In this episode…
Catalin Ciubotaru joins the show today to share his industry insights and the advantages and disadvantages of using Angular in a startup.
In this episode…
Today on the show, Charles and Subrat interview Miroslav Jonas to discuss various approaches related to monorepos, linting and CI. Enjoy this broad conversation as the panel shares their industry insights on these various topics and strategies you can start to implement today.
In this episode…
Do you want to level up in your career? Do you want to become a top 1% developer? Today on the show, Charles provides three simple steps you can implement today to help get you there.
In this episode…
If you are testing an Angular application, then at some point, you will be required to test asynchronous behavior. Today on the show, guests Stephen Cooper and Mona Peirov share about how you can validate your internal models with async Angular testing and integrate AG Charts into your workflows.
Sponsors
Meetups are a remarkably easy and convenient way to connect and network with others. Today on the show, Charles shares his various strategies on how to make the most of Meetups, whether to network to find a better job, learn something new, collaborate with others, get counsel about your career or current work problems, or simply enjoy the human connection and community with others.
Sponsors
Nx is a smart, fast and extensible build system with first class monorepo support and powerful integrations, and it has a powerful core and a rich plugin ecosystem. Today, Charles interviews Angular expert Lars Gyrup Brink Nielsen to discuss the benefits of the Nx build framework.
In this episode…
One of the upcoming future features in the Angular framework will revolve around “Standalone Components” (SC) vs. “Optional NgModules”. When SC makes NgModules optional, it depreciates their value in the long run and could lead us to determine their necessity. Given that Angular is an enterprise framework, can we have modulars in an angular application or should we eliminate this? Angular expert Rainer Hahnekamp joins the show to share his perspective on how SC will affect modularity in an Angular application.
Sponsors
Charles Max Wood is the master architect behind Top End Devs, which includes 11 unique podcast shows for DevOps. Today on the show, Subrat interviews Charles on how to launch, grow, and monetize a podcast show from scratch. He shares his process, the strategies to launch, various tools, sites, and apps, how to build an audience, and how to monetize a show.
Sponsors
Tomas Trajan, Google Developer Expert for Angular and Web technologies, joins the show today to discuss NgRx and best practices. They deliberate the main integrations for NgRx with Angular, various implementation strategies, and more. This is an exciting conversation you won’t want to miss!
In this Episode…
Hossein Mousavi shares his methodology to angular form by presenting his template driven approach vs. reactive form approach. They also discuss the differences between form control, form group, and form array, and how you can build upon the elements within Angular through modular patterns and object-oriented project paradigms. Finally, they discuss how the Angie directive allows you to create web applications by routing requests to controllers and directives and referencing data models in a fashion similar to how you would use AngularJS.Sponsors
LinksPicksDo you want to become a 10x top end developer? Do you want to take your career to the next level? Charles provides a 7 step roadmap to get you there:
1) Learn something new everyday.
a. 10-15 minutes, learn something new that can help you move the needle forward in your career.
b. Make 1% incremental progress everyday will compound to 37x better yearly. Everything adds up.
2) Commit code daily and practice your craft.
a. Practice makes perfect, try something new.
3) Meet someone new every week.
a. Contact and/or connect with another industry professional.
b. Build relationships and continue to stay in touch with them regularly.
4) Post or publish some sort of media each week.
a. Learn and process new information and content that can be presented or utilized elsewhere.
5) Go to a community coding group or event monthly.
a. Relationships will pay off and so will the knowledge share.
b. Commit to speak or present to the group on a specific topic and stretch yourself.
6) Go to a coding conference annually.
a. Network and collaborate with others.
b. Immerse yourself in the content and implement your top take-aways.
7) Make a plan and set your goals.
a. What are your goals and how will you get there?
b. Commit to making it happen. Sponsors
Sometimes your development skills lead you into a role other than full time code sherpa. If you're wondering which ways you can take your career to have some new adventures, listen to this episode with Karl Hughes, Subrat Mishra and Charles Max Wood.Sponsors
LinksTo build or to buy, that IS the question. In this episode, Charles talks with Carl Bergenhem about the BIG updates in Kendo UI, as well as how to navigate the tricky waters of building your own components. “I think the first thing to look at is what you’re trying to accomplish. There might be hyper specialized scenarios, but when it comes to picking something off the shelf, it depends on what kind of UI you’re building.”
- Carl Bergenhem In This Episode1) What you NEED to know about Angular’s updates this year
2) The BEST questions to ask before you commit to buying vs. building your own components
3) How to build Angular UI components without worrying that they’ll disintegrateSponsors
Your toolbelt needs some upgrading. In this episode, Charles sits down with Jared Youtsey, a developer who’s taken productivity to the next level and will show you how to do the same. “Having the right tooling in place makes a big difference in productivity.”
- Jared Youtsey In This Episode1) Why having the correct tooling is HUGE for productivity
2) Jared’s go-to tools for adding jet fuel to your efficiency and accuracy
3) How to implement snippets and autofill to make your life easier (especially if you hate typing)Sponsors
If your Angular needs a home, look no further than your own desktop! In this episode, the group talks to Sam Basu to learn ALL the deets about integrating Angular into your desktop properly. They lay out how PWAs CAN work (if done correctly), the big differences between cross-platform vs. one basket, and why 2022 is gonna be a GOOD year for Angular. “The desire to see ‘web stuff’ on native is nothing new, and it’s good to have choices in Angular.”
- Sam Basu In This Episode1) How PWAs ARE an option for Angular on desktop this year (follow these tips to do it right)
2) Why the answer to “How do I integrate these tools?” is only TWO words long
3) The BIG differences between integrating cross-platform vs. all into one basket
4) Exciting Angular developments this year that you DESERVE to know ASAP (including .NET MAUI…you’re welcome!)Sponsors
This ain’t your granddaddy’s browser. In this episode, Charles and Subrat sit down with Eric Simons, a developer who’s on the forefront of expanding for what’s possible for your toolchain in browsers. They lay out a BIG trend you oughta know, how these programs can help you level up your security, and how the “Google Docs” approach gives a hint for some remarkable developments coming this year and beyond. “Browsers have gotten a lot more pliable and robust over the past half decade.”
- Eric Simons In This Episode1) A BIG trend that’s need to know about Angular and beyond (and how it’ll affect you)
2) Why these programs will help you step up your security while maintaining continuity
3) How these toolchains are applying the “Google Docs” approach to all kinds of use cases 4) The COOLEST upcoming developments that are “barely scratching the surface” for what’s possible in 2022 and beyond (including desktop AND mobile!)Sponsors
Well, it depends. In this episode, Charles sits down with Aristeidis Bampakos, a Greek developer at Google who knows a thing or two (or seven) about how to use dependency injectors right. They talk about why DI’s could be a blessing OR a curse, how the “component hierarchy” can affect your whole structure, and the ONE thing you should know before you give up on your injector. “We must never forget that Angular is cross-platform. The actual way Angular works with injection is when you provide the service. It’s like using a recipe!”
- Aristeidis Bampakos In This Episode
Here’s your SIGNAL to try SignalR. In this episode, Charles and Armed sit down with Andrew Evans, a software developer who’s keen on Microsoft’s newest toy. They discuss the best way to integrate SignalR with Angular, how SignalR is different from Socket IO, and the future of web sockets and modern apps. “With these new web standards, I would just leverage whatever tools work best for you, your company, and your customers.”
- Andrew Evans In This EpisodeWanna try Microsoft’s new toy? Andrew lays out how to connect SignalR with Angular
How to know if adding SignalR is right for your setup (and the most common bugs to watch out for)
The BIGGEST differences between Socket IO and SignalR (and what they mean for high-end developers)
Andrew talks about the future of web sockets and how they’re changing modern app architectureSponsors
IF you don’t want to use If statements, THEN what? We’ve got you. In this episode, Charles sits down with Yiu Pang (Leo) Chan, a software developer whose expertise in Angular has helped hospitals weather the COVID storm on their systems. They talk about Leo’s go-to tips for building a robust dashboard, the biggest way Angular changed Leo’s game, and Leo’s #1 choice for building stacks in 2022. “OOP summarizes things very well and gives the user quick insight to see how it’s performing. It’s a brand new approach that’s helped me brainstorm more creatively.”
- Yiu Pang (Leo) Chan In This EpisodeLeo’s go-to tips for building an intuitive and powerful dashboard
How COVID forced Leo to think beyond if-statements and go beyond the norm
The BIGGEST way that Angular and OOP changed Leo’s game and simplified his workflow
Leo’s #1 choice for building stacks in 2022Sponsors
Ever feel like a damsel in distress held captive by app limitations? Never fear! In this episode, Charles and Sani sit down with Patricio Vargas, a software developer who’s an expert on PWA’s and enriching the customer experience. They cover why PWA’s have “superpowers”, a user statistic that will scare the connection issues right out of you, and why Clubhouse fell from grace (and what others apps can learn from it).“One of the reasons Angular is great is because, with one command, all the setup is done for you. It’s super fun!”
Subrat and Chuck sit down and discuss what they're working on and where they're heading going forward. They've both changed work situations and are doing new things. They also talk about the stuff going on outside of work.Panel
Georgi Parlakov outlines the problems he's had using the Angular Test-Bed and what he's done to move to a different system.He's built a library called scuri to help him build and run his tests in a way that make it easy to standardize the tests he runs.Panel
Francesco Leardini joins the adventure to discuss how to build PWA's using Angular. In some ways it's pretty straightforward. In other ways, you need to invent ways to get what you need.Francesco explains how to pull in the various features that make up PWA's and the advantages of using them with your Angular applications to enhance your users' experience.Panel
Get the Black Friday/Cyber Monday "Double Your Productivity by 5pm Today" Deal
Coupon Code: "DEEP" for a GIANT discountMani provides us with strategies and tactics to get Deep Work time and how to get our minds into that focused state for hours at a time.He has read hundreds of books that have taught him the secrets to getting more done by getting into this state.He starts by telling us how he was passed over for a promotion at Qualcomm in favor of someone younger and less experienced and how that inspired him to figure out what the other guy was doing differently. He learned that he needed to get more done with the time he was spending on his projects.The trick? Deep Work!Deep Work is the ability to spend uninterrupted, focused time on a task to bend your entire mind toward the goal.Other developers call it "Flow" or "the Zone."Mani provides us with strategies and tactics to get Deep Work time and how to get our minds into that focused state for hours at a time. Get the Black Friday/Cyber Monday "Double Your Productivity by 5pm Today" Deal
Coupon Code: "DEEP" for a GIANT discount
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
Charles Max Wood talks about what has brought about the new direction he's heading in with Top End Devs and talks about some of the things that have led to this new direction.He'll be going into more at https://topenddevs.com/podcast Panel
Tom Smykowski joins the adventure to discuss the VS Code plugin that he wrote to help people avoid some of the mistakes commonly made within Angular apps. The reminders appear inline in the editor. He also explains how to build VS Code extensions.
Armen and Chuck discuss the ESLint NGRx plugin. They go over what it adds to ESLint and some of the things that you should be looking for as you write NGRx code in order to make it more uniform, concise, and easy to read.Armen also talks about his experience contributing to the plugin.Panel
Catalin Ciubotaru joins the adventure to discuss how to get Angular Universal to send server side HTTP codes to the browser from the back-end when Angular is geared toward the front-end and doesn't natively send status codes.Panel
Marco Zuccaroli joins the adventure to discuss deploying an Angular application using serverless and basic devops to get an application deployed once the original devops guy was gone.He walks through the things he learned and the architecture he deployed to make the application work.Panel
Armen takes the lead this week to discuss TypeScript usage and how to bring in mixins into the picture as you build more complicated applications with TypeScript.Panel
Wycliffe Maina is a Kenyan developer who has written several articles about TypeScript. He joins the adventure to discuss the ins and outs and several tips and tricks for using TypeScript in your Angular and other applications.Panel
Philipp Kief is a German developer who walks through how to manage and capture errors in your Angular application and how to display them to users.He discusses how he standardized error handlers in his applications and what he does to make sure that they get logged someplace.Panel
Tomas Trajan is a developer from Slovakia living in Switzerland. He talks about his experiences using streams, observables, and RxJS in Angular over the last several years.He gives a few lessons and examples of when and how it should be used in your applications.Panel
Pavel Tuzov is a developer at Microsoft who has recently written about building reactive Angular applications using RxJS and Observables. He and Chuck have a conversation about how to build reactive applications and the tools Angular gives you to approach programming with a Reactive paradigm.Panel
Charles Max Wood leads the conversation about how to stay current on all the stuff going on in technology and Angular.Given the pace that things move at in technology, it's impossible to stay up on everything. Chuck shares his strategies for staying on top of the things that make a difference in your career.Panel
Michael Hladky rejoins the Adventure to have more discussions around performance and the push pipe. He jumps in and explains the let directive and leads into the other ways of managing changes in your Angular apps.Panel
Miroslav Jonas joins the Adventure to discuss how to make your applications work on different screen sizes within Angular.Sometimes, you can get away with media queries and responsive design, but in other cases you're better off removing elements from the DOM and only managing and reworking the elements that you care about for your media size.Panel
Jérémy Bardon joins the adventure to discuss how to reuse code in Angular. Specifically, the discussion covers reusable components and goes into improving code with them.Panel
Stephen Cooper joins the Adventure to discuss the ngTemplateOutlet, how it's used and where you'd add it to your application.It allows you to put a template into place where you have the outlet so you can specify what to put into the spot you have the template in and then specify the variables that it uses. This allows you to have a custom template for a specific item.Panel
Lars Gyrup Brink Nielsen joins the Adventure to continue discussing testing Angular and with Spectacular and to finish the discussion on testing routing in Angular.Panel
Daniel Kreider joins the Adventure to discuss some of the things that are slowing down your front-end app. He also dives into the handful of things you should look at first in order to make sure that your application is running at top speed.Panel
Michael Hladky joins the adventure to discuss how he's gotten a 60% performance increase using push pipe and related techniques.Many developers can get by without this technology, but Michael explains how to pull the push pipe into your code and what that looks like compared to Zone.js and the default stack in Angular.Panel
Lars Brink joins the adventure to discuss how he tests routed Angular features using the RouterTestingModule. He explains what it is and why it's not as well documented as it could be.The panel then takes him through testing other parts of an application using Spectacular and other tools to make sure that Angular applications behave as expected.Panel
Joaquin Cid is an Argentinian developer who has built a plugin for NGXS state library that allows developers to connect to Firebase and have their queries automatically import into NGXS. Further, it also allows them to define actions that will update their datastore when triggered.
The new Adventures in Angular panel dives into the ins and outs of using NGXS and Firebase to build rich applications with Angular and these technologies.Panel
Chuck dives into the 3 essentials for getting the next successful outcome you want in your career. Whether that's something simple like a raise or something more complex like going freelance, you can achieve it by working on 3 main areas.First, building skills. The most obvious type of skills you'll need is technical skills. However, don't neglect your people skills and your organizational skills as well since you're often paid for how you work with people and enhance their work and how you put your work together in the most efficient ways.Second, building relationships. Often other people will be able to help you find the opportunities or will be the ones to make the decisions that impact your ability to get the outcome you want. Having good relationships is key to having good outcomes.Third, building recognition. Being known for being valuable in important ways allows you to leverage the skills you have to build better relationships and create opportunities to get what you need to get the outcomes you want by giving people what they want. A podcast is a great way to do all three. Chuck explains exactly how that works in this podcast and goes deeper as part of the Dev Influencers Accelerator.Panel
Tarang Khandelwal found himself in the unenviable position where he needed to be able to dynamically choose which component to load dynamically.He did this by passing in a string key that determined the component that would load in its place. However, given that not all components and component signatures are the same, this is more complex than it seems.Tarang explains to Chuck what this entails and why you might need a setup like this in the first place.Panel
Chuck explains what he taught Nathan last week when we asked how to get hired at a FANG (Facebook Apple/Amazon Netflix Google) company. Essentially, it boils down to how to build the skills and knowledge needed to pass the interview. How to build the relationships to get into the door and have the interviewer want you to succeed. And how to build the reputation that has the company wanting you regardless of the outcome.
This approach also works for speaking at conferences, selling courses, and other outcomes as well as it's the core of building a successful career as an influencer.Panel
Andrei Gatej joins the adventure and discusses some less well known features of the Angular Router with Charles Max Wood.They walk through some of the features of nesting routes and how to debug issues when your routes don't bubble up the tree the way you expect.Andrei also explains how redirects and router outlets might not have been what Chuck thought they were.Panel
Freddy Montes joins the adventure to discuss how he and his team manage state in their Angular components.Many development teams instinctively reach for a solution like ngrx when they're building their angular apps and start seeing complex state. However, there's a lot of boilerplate and it's often overkill for small to medium apps.Freddy talks about his journey into managing state for his components using observables and basic state libraries.Panel
Chuck was on a strategic call with one of his potential coaching clients talking about cryptocurrencies and realized that this is one of the major reasons that people want to become influencers. Or, rather, that many people aspire to make a difference and/or make money and the best way to do that is to become the person people go to for what you do.So, how do you become the first person people think of when they think of that thing you know how to do? Let Chuck tell you.Panel
Have you ever thought how nice it'd be to write your apps for desktop and mobile alongside the web? Richard Sithole joins the adventure to discuss how to pull a desktop app and mobile app into your repo using electron and capacitor to extend the functionality to new platforms.It turns out that a single repo cross-platform app isn't a total pipe dream.Panel
Charles talks about the things that get developers stuck when they're trying to start their podcast or other influencer channel. He explains how to get around having those things hamper your journey.Panel
Charles talks about the things that get developers stuck when they're trying to start their podcast or other influencer channel. He explains how to get around having those things hamper your journey.Panel
Charles Max Wood talks about how to build, grow, and benefit from positive relationships within programming. He talks about how he's built genuine positive relationships with hundreds of programmers and how he and others have grown from those relationships. He also explains that you get out of relationships what you put into them. Finally, he goes into how to begin to build relationships by building a system of influence you can use on behalf of the people you want relationships with.Panel
Armen Vardanyan is an Armenian Angular developer who works extensively with both angular and RXjs. He walks Chuck through the ins and outs of how he uses RXjs to expand the functionality of his Angular applications and how to think about observables in general.Panel
Charles Max Wood discusses several opportunities that came his way early in his podcasting career and other opportunities that have come to other people after only a couple of podcast episodes. He explains why that happens and how you can use this to create more influence as a developer.Panel
Emma Twersky is a Developer Advocate at Google on the Angular team and runs the GDE program for Angular. She walks Shai and Chuck through the features of the upcoming Angular release expected sometime in May. She also explains some of the process for choosing which features to work on and how things make it into releases of Angular.Panel
Charles Max Wood started podcasting because it sounded fun and because he wanted to talk about technology. He learned pretty quickly that it got him access to people who understood the things he wanted to learn. The reasons changed over the years, as Charles explains before he talks about the big payoff he gets now from doing the podcasts.Panel
Richard Sithole sits down with Charles Max Wood to discuss his story from growing up in South Africa and the setbacks he experienced as he worked his way into the software industry. He walks through his learning journey and the challenges he faced as he moved from one stage to another to become a successful software engineer in Berlin, Germany.Panel
Jason Weimann started out as an enthusiast of the Massively Multiplayer Online Role Playing Game, Everquest. After becoming a software developer and building a collaborative community playing the game, learn how he used his connections to get a job working for the company that made the game, even if it wasn't a job working as a game developer and how that led to a career working on one of the most popular online games of the time.Panel
Jason Weimann started out as an enthusiast of the Massively Multiplayer Online Role Playing Game, Everquest. After becoming a software developer and building a collaborative community playing the game, learn how he used his connections to get a job working for the company that made the game, even if it wasn't a job working as a game developer and how that led to a career working on one of the most popular online games of the time.Panel
Chuck outlines how he's used his podcasts to find mentors to continue his learning journey over 12 years of podcasting. Some mentors have been long lived relationships while others have lasted only a few months or even days. This episode shares Chuck's experience learning from the top people in the development community as a programmer and podcaster.Panel
Chuck outlines how he's used his podcasts to find mentors to continue his learning journey over 12 years of podcasting. Some mentors have been long lived relationships while others have lasted only a few months or even days. This episode shares Chuck's experience learning from the top people in the development community as a programmer and podcaster.Panel
Remember the amazing adventure it was to learn a new thing every day as a Junior Developer? It's easy to feel a little stuck or lost as a Senior developer since there aren't roadmaps or people looking to mentor seniors. (Besides Charles Max Wood.) Chuck talks about how he felt that way at different points in his career and how podcasting and connecting with the programming communities helped him get past that.Panel
Charles Max Wood goes into the origin story of his podcasting career and how it relates to his programming career. He starts with his interest from a young age in technology and his dreams of being a radio DJ. He moves quickly through college and into his first job after college where he was introduced to podcasts by a co-worker who had purchased an iPod.He calls out several mentors like Gregg Pollack, Eric Berry, Nate Hopkins, Cliff Ravenscraft, David Brady, Dave Jackson, and many more.He then explains what he'd do differently if he were starting today.Join the Dev Heroes Accelerator at https://devchat.tv/hero Panel
Charles Max Wood explains how he landed his first 4 freelance clients that took him through a few years of freelancing with only 3 years of experience and a few hundred podcast listeners. Funnily enough, they actually came to him, not the other way around.He explains how he made himself attractive to them and then turned it into a mutually profitable relationship once he had their attention.Panel
Charles Max Wood explains the process he uses to stay current in various technologies including JavaScript and Angular. He walks through the process of finding influencers, groups, forums, and content outlets that produce the information he's looking for and then using them to stay on top of the movements within the programming community using a specialized trello board setup.Panel
This is a repeat episode of Adventures in Angular. Here is the original link https://devchat.tv/adv-in-angular/034-aia-live-from-ng-conf-2015/ Sponsors
John-Daniel Trask, founder and CEO of Raygun, talks about his experience building a monitoring company and about how to measure the speed and quality of your code.Special Guest: John-Daniel Trask.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
This is a repeat episode of Ruby Rogues 485The Rogues dive into who are top 5% developers, what they're doing and how to recognize them. They start out discussing how mid-level developers can move up and how developers can grow in more ways that technical skills.Panel
Charles Max Wood takes a solo flight into how to make an impact on the development community and build the career you want at the same time. Chuck starts out summarizing his journey over the last year or so and then dives into his vision of how people can grow into becoming an influencer and using that to create opportunities in your life and career.Please check out devchat.tv/nextlevel Panel
In the inaugural episode of Adventures in Angular, the panelists talk to Miško Hevery about the birth of AngularJS.Panel
Brooks and Alyssa talk about the updates in Angular 11 and the update party the Angular team threw for v11. Check out the Angular YouTube for the Keynote and Q&A recording and check out the Kendo UI YouTube Channel for the game session recording Alyssa & Brooks did!Panel
In this episode, we dive into the issues our community is facing in today’s crazy world. We talk about tips the panelists have for dealing with the stressors of today and how we, as a community, can come together in positivity as we grow ever larger.Panel
In celebration for our 300th episode, Brooks, Alyssa & Chris ago through The Sate of JS Survey and talk about the results from last year. They also talk about the upcoming 2020 survey and encourage everyone to take part and represent for Angular!Panel
In this episode of Adventures in Angular, we talk with Katerina Skroumpelou who is a Google Maps & Angular Google Developer Expert and team member at @nrwl_io living in Greece. In this episode, Katerina talks through how she got started with Google Maps. She also covers how the Google Maps JS API has changed overtime, how you yourself can get started using it in your Angular Applications and what you all can do with the API! Sponsors
PanelIn this episode, Brooks, Alyssa and Chris talk with Aliaksei Kuncevič about Progressive State Management with NGXS. Aliaksei walks the crew through this progressive journey by starting small and implementing reactive services. These are services with a behavior subject. Aliaksei then demonstrates how you can migrate from reactive services to using NGXS. Sponsors
PanelIn this episode of Adventures in Angular, Brad McAlister joins our regular panelists: Alyssa, Chris and Brooks! Brad walks us through his work of transitioning into an Annex Monorepo and how working with Angular Elements in conjunction has been going. Brad also breaks down what StoryBook is and how it has helped him in his work flows.Sponsors
PanelAsaad Saad has 16 years of experience in Web Development. He has worked with big companies in the Middle East including (Amazon Middle East, Yahoo Middle East, and Abu Dhabi Government). He joined MIU University in 2014. He works as an assistant professor of computer science and program director of the Masters’ in Software Development Program. In this episode, Asaad talks about his experiences teaching different Front-end frameworks to Master students and why they always prefer Angular over React.Sponsors
PanelIonic’s very own Ely Lucas swings by to chat to Alyssa, Chris & Brooks about NestJS, the node framework that’s winning over devs in the Angular community and beyond. The panel dive into the docs, learning about how Nest allows developers to structure powerful backends with a syntax that will make Angular devs in particular feel right at home.Sponsors
PanelThomas Pink and Fabian Friedl from Dynatrace join Adventures in Angular to discuss the highs and lows of building an in-house design system with Angular and the exciting move from keeping it internal to open sourcing and letting the world loose upon it.Sponsors
PanelSpecial guest, Vitalii Bobrov joins us to talk about accessibility on the web and how to relate it to user experience in general. What can we do to improve accessibility? How can we improve accessibility? Why should we even care about accessibility? Find the answers to these questions and much more on this very insightful episode of Adventures in Angular.Sponsors
PanelIn this episode of Adventures in Angular, Uri Shaked, a brilliant maker and developer, talks with us about getting into Arduino with JavaScript. We also chat about other things like community, open source and NextJS.Sponsors
PanelAnkit Sharma, an Angular GDE and author, joins us in this episode of Adventures in Angular to talk about using Azure cognitive services with Angular.Sponsors
PanelIn this episode of Adventures in Angular, special guest, Christian Liebel engages the panel in an interesting discussion on Angular performance especially as it relates to runtime performance.Sponsor
PanelIn this episode of Adventures in Angular, Sani Yusuf stops by for an adventure and chats with Alyssa, Brooks & Chris about building component libraries in Nx and how he feels forms are one of Angular’s most powerful and perhaps underrated features.Sponsors
PanelRavi Veliyat helps train people in many web technologies, Angular being one of them. The panel discusses the various ways you can get your components to communicate, from inputs and outputs all the way up to NgRx. Ravi walks through the different options, with great examples that will keep you on the edge of your headphones.Sponsors
PanelThe illustrious and well-regarded Gil Fink joins the Adventures in Angular panel to talk about profiling your Angular apps. Profiling consists of finding bottlenecks, and memory leaks among other problems within your application. Most of the time, the problems are hard to see from the development side. Usually, they appear when your user uses a devise that is slow or a connection that is faulty. Gil explains how to find and fix them.Panel
In this episode of Adventures in Angular, Will Gant, author of Remote Work talks about working from home and working outside of the client's office. He and Brooks share their experience with working through the challenges, benefits, and methods of working remotely.Panel
Subrat Kumar Mishra is a full stack developer who has worked with Angular and Java. He's the host of the Fun of Heuristic YouTube channel. He talks about OOP principles, Node.js, lazy loading components, and why he chose Angular.Panel
Nishu Goel joins the Adventure to talk about how Web Components can be used in Angular applications and how to use them to share functionality across multiple applications written in different frameworks. We also dive into how web components are used and compatibility across browsers.Panel
Evan Weaver is the CEO and founder at Fauna. He starts out talking about the problems that existed when working at Twitter with databases and scaling. They began as a consultancy and the grew into a serverless database company.Panel
Alyssa, Chris, and Chuck dive into whether or not Angular is declining in popularity. They begin talking about a tweet by @wellpaidgeek and things like State of JS and what it says about the growth and relative popularity of Angular when compared with Vue, React, and Svelte. The discussion also weaves into whether or not it's worth starting in or finding a job in today.Panel
Christian walks Charles and Younes through the 10 commandments of building Angular applications. We talk about how to arrange Angular applications, design components, and best practices. We also talk through tools, teams, and performance.Panel:
Dale Spoonemore joins the adventure to talk about his journey from no coding experience to writing one of the most popular gardening apps on the web with Ionic. Dale explains how learning to garden sparked a journey that led him to teach himself Angular and Ionic to build the Seed to Spoon app.Panelists
In this episode of Adventures in Angular Charles Max Wood interviews Jamie Perkins, creator of Podfan. Podfan is a membership for podcasts. Charles invited Jamie on the show to talk about building Podfan with Angular. Jamie built Podfan with Angular Fire and Firebase. He highly recommends them, explaining that it is a fast and easy way to build applications. They discuss how easy it is to get started with Firebase and Jamie shares things to watch out for when getting started. Firebase pricing is discussed. Jamie explains how his Firebase plan works. Walking Charles through getting started with Firebase, Jamie explains how the different databases work and what to watch out for with security and authentication.The panel discusses the customer experience and what Jamie used for design. They discuss his process and the time he spent on the project. Jamie shares what he is working on and what he is adding to Podfan. Charles asks questions about Podfan’s capabilities. Panelists
In this episode of Adventures in Angular the panel interviews Juan Stoppa about what it is really like working on an enterprise application for a large company. They start by discussing state management and the solutions that they are using and the benefits of using a custom solution. Juan then explains that it can be difficult getting features out to clients quickly and what their flow looks like. The panel wonders about their architecture and explains the difference between trunk-based development and branch-based development. Juan considers how Angular 9 will improve their use of feature flags. The panel explains what feature flags are. Shai Reznik aks Juan about their testing. The panel considers how important end to end testing is in an enterprise application. Juan shares the tools they use for testing. Another challenge they face developing an enterprise application is meeting the requirements for the clients since they have so many and they have long release cycles. They finish by discussing the culture in large companies.Panelists
In this episode of Adventures in Angular Charles Max Wood continues interviewing speakers at RxJS Live. First, he interviews Mike Ryan and Sam Julien. They gave a talk about Groupby, a little known operator. They overview the common problems other mapping operators have and how Groupby addresses these problems. The discuss with Charles where these types of operators are most commonly used and use an analogy to explain the different mapping operators. Next, Charles talks to Tracy Lee. Her talk defines and explains the top twenty operators people should use. In her talk, she shows real-world use cases and warns against gotchas. Tracy and Charles explain that you don’t need to know all 60 operators, most people only need about 5-10 to function. She advises people to know the difference between the different types of operators. Tracy ends her interview by explaining her desire to inspire women and people of minority groups. She and Charles share their passion for diversity and giving everyone the chance to do what they love. Dean Radcliffe speaks with Charles next and discusses his talk about making React Forms reactive. They discuss binding observables in React and how Dean used this in his business. He shares how he got inspired for this talk and how he uses RxJS in his everyday work. The final interview is with Joe Eames, CEO of Thinkster. Joe spoke about error handling. He explains how he struggled with this as did many others so he did a deep dive to find answers to share. In his talk, he covers what error handling is and what it is used for. Joe outlines where most people get lost when it comes to error handling. He also shares the three strategies used in error handling, Retry, Catch and Rethrow and, Catch and Replace. Charles shares his admiration for the Thinkster teaching approach. Joe explains what Thinkster is about and what makes them special. He also talks about The DevEd podcast. Panelists
In this episode of Adventures in Angular Charles Max Wood does interviews at RxJS Live. His first interview is with Hannah Howard at RxJS Live about her talk. Hannah is really enthusiastic about RxJS especially when it comes to frontend development. Her talk is about how to architect full-scale apps with RxJS. Hannah gives a brief summary of her talk. Charles having met Hanna previously at Code Beam asks her how functional programming and reactive programming work together in her mind. Hannah describes how she sees programming. Charles’s next interview is with Ben Lesh, a core team member of RxJS. Ben has been working on RxJS for the last four years. In his talk, he shares the future of RxJs, the timeline for versions 7 and 8. With Charles, he discusses his work on RxJS and the adoption of RxJS. Next, Charles interviews Sam Julien and Kim Maida. They gave a talk together covering the common problems developers have when learning RxJS. In the talk, they share tips for those learning RxJS. Charles wonders what inspired them to give this talk. Both share experiences where they encouraged someone to use RxJS but the learning curve was to steep. They discuss the future of RxJS adoptions and resources. Finally, Charles interviews Kim alone about her second talk about RxJS and state management. She explains to Charles that many state management libraries are built on RxJS and that it is possible to roll out your own state management solution with RxJS. They discuss why there are so many different state management libraries. Kim shares advice for those looking to roll out their own solutions.Panelists
In this episode of Adventures in Angular Charles Max Wood interviews speakers at JAMstack Conf SF. Mandy Michael gives a talk about responsive typography and variable fonts. Mandy explains what variable fonts are and how they can be used to shrink, stretch and do some very fun and creative thing with them. They discuss how to use them and Mandy explains some of the demos from her talk. Charles asks Mandy what some of the things were that she had to cut from her talk. She had to cut a few longer demos, details and performance improvements that can be made with responsive typography. Mandy shares what she is working on now with responsive typography and explains how much fun she has had expressing herself through variable fonts. To see more of Mandy’s demos and to learn more about responsive typography and variable fonts see the links below. Next, Charles interviews Shawn Erquhart work runs the Netlify CMS project. Charles shares his experience using Netlify and Shawn addresses some of the issues Charles has come across. Charles does say the using Netlify is simple, clean and nice. Shawn shares the origin story of Netlify. They discuss what it means to be a git-based content management system. They discuss how to contribute to the Netlify CMS open source project. Charles mentions his book and they discuss how contributions to open source projects like these are a great way to get a job. Shawn explains how to get started implementing Netlify CMS and how they target different static site generators.Panelists
In this episode of Adventures in Angular the panel interviews Dave Cooper, who recently gave a talk at AngularConnect about using Mock Data. Dave starts by explaining more about his talk and sharing the benefits of using data mocking solutions and rapid prototyping. He shares the secrets of doing rapid prototyping. There are challenges to using mock data, Dave shares a few of them and explains how to overcome them. The number one challenge of using mock data is keeping it in sync with your real data and making it look real. Dave explains how to get started with mock data and shares library recommendations. The panel discusses the use cases for mock data and Dave walks them through a few scenarios for using mock data. He shares use case recommendations and discusses using mock data for testing. The panel discusses the benefits of using mock data for demos and courses. The possibilities and future of mock data and pact testing are explored. Dave shares his coding process and explains how much faster he can code by using mock data. Panelists
In this episode of Adventures in Angular the panel interviews Phillipe De Ryck. Phillipe is a web security expert out of Belgium. He shares ways for Angular developers to better secure their apps. Phillipe explains to the panel that his goal is not to shame developers but inspire them to do what they can. He knows most developers are just trying to get as much done in the time that they have. In this episode, he shares ways for developers to improve the security of their apps. The episode starts with some security scary stories. Phillipe invites everyone to check out the OWASP top ten projects. They have lists of the top ten security measures you should be doing, they have lists for different ecosystems and types of projects so there is something there for everyone. Phillipe explains what types of attacks are most common today. The panel wonders how do you know something is safe to install. Phillipe explains that there are no guarantees. Sharing statistics Phillipe tells then panel that it is worse than they thought, each package is most likely dependent on more packages and the odds are high that one of those packages has vulnerable code. He explains what you can do to check for those vulnerabilities and to see if they are exploitable. Phillipe shares recommendations for continuous monitoring services and other tools. He explains why Angular is the best framework for securing your apps and lists all the security features that come with Angular. He compares Angular, React, Amber, and Vue. Phillipe gives his opinion and recommendation on authentication libraries. He explains the differences between OpenID Connect and Allout, explaining how they work. The episode ends as Phillipe shares his contact information and the conferences he will be attending and speaking at. Panelists
In this episode of Adventures in Angular Charles Max Wood joins Tammy Everts at JAMstack Confer. Tammy gives a listeners a sneak peek into her talk about website performance, more specifically JavaScript performance. Charles discusses the performance of Devchat.tv and Google Lighthouse scores. Tammy explains that while Google Lighthouse is good it isn’t completely reliable and can miss chunks of time when your JavaScript is failing and you have unhappy users.Tammy shares ways to drill down and see how your JavaScript is behaving in the wild. She talks about blocking Javascript which every developer is familiar with and non-blocking JavaScript that has high blocking CPU time which makes for janky sites. Tammy and Charles discuss what CPU is and what it measures. Tammy names resources and tools to help avoid this problem. Rules of thumb for avoiding these issues are explained by Tammy. First, Reduce, make sure all the JavaScript needs to be there. Next, Monitor, track your metrics. She also suggests working with vendors and maintaining a performance budget for metrics that matter. The interview ends with a little about Speedcurve and what they do. Tammy is the CXO of Speedcurve. Panelists
In this episode of Adventures in Angular the panel interview Loiane Groner about her Portuguese content creation. She starts by sharing her story and how she got into content creation and why she creates content for developers in Brazil. She gives advice on how to get started creating blog content and shares strategies for pushing out posts and organizing post ideas. Moving on to video content, the panel share editing, and recording tips. Loiane shares recommendations for editing and recording software. They advise keeping videos short and to be consistent in creating content. Loiane answers questions about revenue and analytics. She also gives advice on dealing with internet trolls. The episode ends as Loiane dives into the struggles of learning to code as a native Portuguese speaker in an English based coding language. She explains how translation works and shares opportunities for people to help. The Angular community’s translation efforts are outlined, including translating documentation and their work with ng-Girls. Panelists
"The MaxCoders Guide to Finding Your Dream Developer Job" by Charles Max Wood is available on Amazon. Get your copy here today only for $2.99!
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
In this episode of Adventures in Angular Charles Max Wood interviews Ire Aderinokun at JAMstack conf 2019. Ire works for Buycoins, a cryptocurrency exchange for Africa. She gave a lightning talk, “Headless Chrome & Cloudinary for progressively enhanced dynamic content on the web”. After giving a brief overview of her talk to Charles, Ire defines progressive enhancement for the listeners. Walking through how progressive enhancement works, she explains how Headless Chrome and Cloudinary helped her with the project she shared in the talk. Ire and Charles consider the blindspot that developers experience because they work on high-end devices and how using progressive enhancement helps those who use lower-end devices. Ire shares her experience with JAMstack and explains how progressive enhancement works with JAMstack. Charles shares his experience using JAMstack. The episode ends with Ire giving advice and resources to help get started with progressive enhancement. Panelists
In this episode of Adventures in Angular the panel interviews Stephen Cooper about his recent talk at Angular Connect. His talk was about ngTemplateOutlets. Stephen answers the questions of the panel about ngTemplateOutlets and explains how and when to use them. He starts by explaining the difference between component outlets and template outlets. Aaron Frost, Frosty, asks Stephen to walk through how to make a ngTemplate and explain what it is useful for. The panel considers the various use cases they would use this for. Frosty wonders why he would use a ngTemplateOutlet instead of a bunch of ngIfs. Stephen explains when it would be wise to use ngIfs and when it would be better to use ngTemplateOutlets. The panel discusses ngComponentOutlets, Stephen explains how they relate to ngTemplateOutlets and how they give you another level to reusing components. He overviews the best way to use ngComponentOutlets and warns listeners of the tricky parts. Stephen shares the best times to use ngTemplateOutlets and overviews some of the common use cases he has seen for them. He explains that they are very useful when creating shareable components or repeating similar chunks of code in a component. He shares some resources to help listeners get started. Panelists
In this episode of Adventures in Angular the panel interviews Tara Manicsic. Tara is an Angular Developer Experience Engineer at Netlify. Tara explains what she does at Netlify. She explains what Netlify is and introduces the topic for today’s episode, JAMstack. She explains what services Netlify offers and the packages they offer. She explains that the JAM in JAMstack stands for JavaScript API Markup, which outlines the best practices of a JAMstack architecture. During her explanation of JAMstack and the benefits of a microservice architecture, she references Smashing Magazine and their switch to JAMstack. Tara overviews each letter of JAM and how they affect JAMstack. J or Javascript refers to the use of a JavaScript language, like Angular and others. Tara lists the API’s one might use for the A in JAM. The panel discusses the M or Markup. Markup serves up fast and safe prerendered content. Tara explains what prerender means and it makes the content safer and the sites faster. Tara then overviews the entire JAMstack process and explains atomic deployment. The panel considers how JAMstack is picking up in the Angular ecosystem. Tara outlines a few of the benefits seen when using JAMstack and the panel considers the possible use cases. She shares a few real-life examples of the success seen when JAMstack is used in an enterprise application. Panelists
In this episode of Adventures in Angular the panel has fun interviewing David East about Firebase. David starts by sharing what it was like at the recent Firebase Summit in Madrid. There were so many announcements they had a tough time fitting them all into the one-hour keynote address. One of the cool new features announced at the Firebase Summit is Firebase Extension, David describes it as serverless without any code. The panel discusses this feature and how it works. Another cool feature announced is Google Analytics for Firebase. This allows you to use Firebase tools in conjunction with Google Analytics. The panel considers the smart things you can do in your app with this feature. The next feature the panel discusses is Remote Config which allows you to store data and then pull out that information on demand. If you use the Google Analytics for Firebase you can target specific data for certain audiences. David explains that before this could only be done with native apps. He also explains how in doing this you no longer have to worry about the gtag loader and defines gtag for the panel. The panel gets a little off track as David jokingly explains his beef with Aaron Frost, Frosty. Frosty host My Angular Story and a while back had twitted looking for awesome angular stories. David had responded but never heard back from Frosty. Frosty jokingly says he faxed an invite to David. The panel jokes about how awesome David’s episode will be and tells everyone to look out for his episode. Getting back on track, David gives more examples of ways to use the Remote Config feature on with the Google Analytics for Firebase. Frosty confesses he needs to get better at looking at analytics. Sharing an example from a company he is currently working for, Frosty explains how they made nearly 2 million dollars just by changing the color of a button. The panel considers how minor changes like that can make such a big difference and how analytics helps you target your audience. David shares the story behind writing Angular Fire. Jeff Cross worked on the angular team and started writing angular fire but then left for Nrwl. After Jeff left, David took over and ended up rewriting the entire library. He explains some of the mistakes that they made that led to the rewrite and how he fixed them. The panel wonders at David about using Angular Fire and NgRX. David tells the panel that the Firebase console uses NgRx under the hood and shares what he learned while working on it. Using firebase and NgRx can be very confusing because of the mass duplication of responsibility. David’s advice is to let Firebase and NgRx do their own thing and connect the dots with RxJs. David discusses Firestore, a very advanced caching system and what you can do with it. Including, working offline and setting security rules. Frosty brings up Firebase Messaging Cues, he explains that it is similar to three-way messaging cues except its n-way. David explains that even though he is intrigued by the idea, he does not approve of the name. The panel considers possible use cases for an n-way messaging cue. David explains some of the costs and benefits of this architecture. The episode ends with a discussion of Firebase’s documentation, which is currently a group of markdown files. David defends the simplicity of this documentation style and gives recommendations and resources for those who need more help. Panelists
In this episode of Adventures in Angular the panel interviews Zama Khan Mohammed about his recent book and other open source work he has done in the Angular community. Zama explains what is so different about his book and why it is worth reading. His book takes an approach different than the common practice of walking readers through concepts, instead, his book walks readers through using a project perspective. The first chapter walks through setting up Angular, installing Angular CLI and Angular console. After the set up is complete he walks readers through a very basic flashbase application. Zama explains how this first chapter is geared toward beginners. In his book, Zama shows users how to use the whole platform. He covers PWA and how to create brand new projects from scratch. The panel asks him about his unique project perspective strategy for this book. Each chapter of Zama’s book walks the readers through a different project, unlike most technical books that walk readers through one project introducing a different concept each chapter. Zama explains why he wrote the book this way. He wanted to bring different libraries and tools into each project to highlight how deep and rich the Angular community and ecosystem are. The panel shares how the ecosystem and community make Angular so great to use. Zama’s book is called Angular Projects and was published by Packt Publishing. Zama shares where to find it for those interested. The panel considers how hard writing a book must be. Zama explains the time and stress involved in writing a book. He admits he has been approached to write more books but has resolved to wait a bit before diving back into writing. The panel discusses Zama’s open source efforts in the Angular community. They consider a few of his projects including, ngx-formly, codelyzer, and ngx-loading. He wrote ngx-formly after using formerly and he decided he wanted to use it with Angular 2.0. The panel was impressed with his contributions to codelyzer, where he helped with the accessibility requirements. After using react-loadable Zama knew he wanted a similar feature in Angular to provide more control over loading so he built ngx-loadable. The panel defines lazy loading for listeners and explains how having control over what can load and how fast it can load can be useful in applications. Zama shares some of the improvements he has made in version 2.0. Zama shares his hopes for speaking at ng-conf 2020, this takes the panel down a tangent discussing the exciting workshops that will be at ng-conf next year. Brian Love will be teaching a two-day workshop on Angular fundamentals. Aaron Frost is teaching and observables class and a reactive angular class. They advise everyone to buy an ng-conf ticket and not to be afraid to submit a CFP. Back on topic, Zama shares the challenges in writing, publishing and maintaining an opensource library. He explains how contributing to open source is a great way to learn and a great way to see what a framework can do. He shares advice for those looking to get into open source and invites everyone to try Hacktoberfest. Panelists
In this week’s episode of Adventures in Angular the panel has fun interviewing Narwhal rocks star and NgRx expert, Wes Grimes. Wes starts by sharing how he got started in NgRx. In a previous company, Wes was the lead architect for a project that had need of a state management solution, so it was his job to figure out how to use NgRx. While figuring it out he created a structure for using NgRx and used that structure to write a blog article about best practices for NgRx. This blog article took the world by a storm and now has over 200,00 views. People are now building libraries and courses based on his article. The panel has a little considering the possible searches that lead people to his article. Jennifer Wadella shares some of the weirder searches that have led people to her posts. After their fun, the panel tries to get back on track. This article thrust Wes into the world of helping people understand NgRx, what he calls a mystical machine. He explains how this article was only the beginning of learning NgRx and that he is currently working on revising that first post. The main point covered in the article was how to organize the store and how to store it in the file system. It walks through creating angular modules for each slice of the store. The second point is covers heavily is the use of barrels. The biggest problem Wes see people run into in NgRx is they do not know where all their actions are. He shares the solution he uses for this problem, using a public API to group actions so they are easier to find. The panel expresses their frustration with the hard time the CLI has with barrel files. Wes explains why this is a common problem and shares a solution. The panel asks for other gotcha’s to watch for when using NgRx. Wes explains how and what developers miss out on when they fail to use selectors to their fullest. When selectors are used correctly and completely developers receive all the benefits of the testing they do on NgRx. The other benefits are builtin memoization and reusability. Another gotcha he warns against is using facades before fully understanding NgRx. This really fires up the panel, who then debates the use of facades in NgRx. Aaron Frost expresses his opinion that NgRx isn’t for everything and that by using facades you may not need to use NgRx. Wes explains that the large companies he works for are already committed to NgRx as their solution and he advises them not to use facades. Wes explains the downsides of using NgRx, the first is when developers jump in before they understand it and back themselves into a corner. Another downside is the upfront investment cost when learning NgRx. The panel jumps in wondering what Wes thinks of hiding those developers unfamiliar in NgRx with a facade. Wes explains how in doing this the team would be compromising architecture in order to avoid teaching developers to use NgRx properly. He clarifies that he doesn’t think facades are bad but in order to use them correctly in NgRx developers must first understand how NgRx works. Aaron explains why when working with developers unfamiliar with angular he advises them not to learn NgRx right away. Wes shares how he has seen developers misuse facades. When using a facade it entices developers to hop back and for between imperative and declarative code. Aaron jumps in and explains that imperative code in reactive programming is very bad. He invites listeners to go out and learn more about this because it is very important to understand. The panel considers strategies to help teams code reactively. Wes recommends requesting data from the server. This pattern is straight forward to implement and handles a lot of the common use cases in the store. Aaron suggests turning off default change detection, doing so will force the programmers to code reactively. Another way suggested is to structure teams separating concerns. The episode ends with Wes sharing his experience joining the NgRx core team by working in the documentation, filling in gaps that he found. He also shares what will be coming to NgRx. The platform will be expanding beyond just state management, supplying reactive libraries for angular. They are also getting ready for an experimental release of NgRx component. Panelists
In this week’s episode of Adventures in Angular the panel interviews Shlomi Assaf, talking about ngrid. After some playful banter about the naming of Ngrid, Shlomi shares the reasons behind building ngrid. The company he was working for at the time need a grid, he tested nggrid but wanted something completely opensource, so he built one. He also explains that nggrid caused some problems in their project which made him want something more customizable. Shlomi explains how much work is needed on the application and asks listeners to contribute to documentation or other areas of the project. Shai Reznik endorses Shlomi as one of the smartest peoples he knows and tells listeners if they want to learn from someone who knows a lot about angular to step up and join this project. The panel asks about the challenges Shlomi faced while building this app and what it was like using the CDK. Nggrid has a how company working on it but ngrid has only Shlomi. Shlomi explains that the CDK had a lot of the building blocks need to building blocks to build this application and was the power behind the project. The CDK’s lacks the ability to extend easily which was a challenge. He explains that his biggest frustration while building the application was the drag and drop feature. Shlomi shares many of the features he built into the application that even though he built it over a three year period he could do it piece by piece because of the way he designed it. He considers the selling points of the application and shares them with the panel. Shlomi compares ngrid to other grid, explaining how templating, creating columns and pagination are all made easier with ngrid. With ngrid there is also virtual scrolling and you can control the width of each column. Next, the pane considers performance, asking how the grid would handle if you loaded thousand or even tens of thousands of records and data onto the grid. Shlomi explains that unless the cells were extremely complex that ngrid’s performance would not suffer. The panel how ngrid could work with serverside rendering but not with NativeScript. Shlomi explains version support and advises listeners to use Angular 8. The panel ends the episode by sharing information about next year's ng-conf. Tickets go on sale on October 1, 2019, the best deals go fast so watch out for them. Many of the panel will be there, Brian Love will be giving the Angular Fundamentals Two-Day Workshop. The CFP also opens October 1, 2019, and will close January 1, 2019. Aaron Frost invites anyone who would like to submit to reach out to the veteran panelists to nail down ideas for their conference proposals. He also recommends submitting more than one. Panelists
In this week’s episode of Adventures in Angular the panel interviews Manfred Steyer, the creator of ngx-build-plus and angular architecture expert and consultant. Ngx-build-plus is a way to extend how the CLI is doing its build. Manfred explains how ngx-build plus works in two different ways. The first is that it provides a partial webpack configurations file that merges with the webpack configuration that the CLI is using. The second, it provides a plugin with free methods that influence the CLI. Manfred consults with companies on architecture, he explains that the main problem when people take a simple application and make it complex, big, with a lot of entities and forms. This makes it difficult to manage in the long term. He borrows ideas from domain-driven design to help these companies structure their applications. Strategic domain-driven design is one of the main strategies he uses when structuring an application. Strategic domain-driven design is subdividing a big application into subdomains, then modeling those subdomains separately. By modeling the separately, the coupling is limited. This makes it easier to change parts of the code without breaking anything unrelated in the application. The panel asks Manfred for recommendations for using domain-driven design in their architecture. Manfred recommends using libraries within monorepos and outlines the benefits. Using this method creates isolation, you can’t easily access everything in the library because of the public API. Manfred explains how a public API works like a facade. Nx is the recommended tool for the monorepos, as it adds many great features to the CLI and is not as heavyweight as other monorepo solutions. Manfred explains one of his favorite features called tagging. This restricts which libraries can access another library. The panel discusses some examples of tagging. The panel wonders about Manfred’s opinions on state management solutions. Manfred explains that he doesn’t believe that every application needs a state management solution. When used at the wrong time a state management solution is an overkill. He also explains that not using a state management library does not make someone a bad person. The panel discusses how you know if you need a state management solution. Manfred indicates two things to look for when considering the use of a state management library. First, is there a lot of state? Second, is the state going to be used by many different components? If you are not sure he recommends starting with a facade and adding a state management library later if needed. The panel explains what a facade is. A facade is when you combine a lot of systems under a single API, like jquery. Manfred gives an example of what a management facade should look like. The panel shares experiences explaining how it works and gives advice and examples of using a facade. The topic turns to the importance of testing. Manfred shares his testing philosophy, asking how do you sleep at night knowing you have to change a part of the application? Does it scare you because you know you are going to break everything in a terrible and painful way? Or, Do sleep soundly because you know you are safe to do what needs to be done. Shai Reznik equates this to the shake meter, how much does your hand shake when you push the button to execute a change. Manfred’s recommends starting with unit testing, testing where you need it and avoid a testing coverage goal. Unit testing he explains are more stable than end-to-end testing. You do need end-to-end testing but very little in comparison to unit testing. Aaron Frost shares the tool protractor flake as a way to combat the flakiness of end-to-end testing. Manfred explains that there are two common mistakes people make in their angular architecture. The first is over-engineering and under-engineering an application. He explains the problems that arise with each and how to combat this problem. The sweet spot can be found by knowing what you want, finding the right structuring to fit what you want. The panel wonders how to measure the cleanliness of code in an application. Manfred recommends looking at each indirection and deciding if it is necessary. The panel explains what indirections are, an example is event mechanisms, you can’t see a direct effect. The panel discusses NgRx as an indirection framework. Manfred warns not to use NgRx all the time only when you need it. This launches the panel onto a tangent of choosing tools and how to weight the pros and cons of each tool. The phrase “use it when you need it” is considered by the panel, the genericness of the phrase is discusses. The panel advises new developers who don’t have the experience to gauge if they need something or not to do the research necessary to understand a tool and to experiment with it. The panel comes back to the other common mistake made with architecture which is chatty applications. Applications that send thousands of requests to the backend causing the application to slow. The panel considers why this happens. Aaron explains the concept of affordance and how this results in chatty applications. Panelists
Episode SummaryIn this episode of Adventures in Angular Tomas Trajan, an angular elements expert, breaks down how to use angular elements for the panel. Tomas explains that angular elements are great for very specific use cases. Tomas starts by describing a scenario with a large enterprise with tens of developer teams and hundreds of developers, they have a few choices on how to organize their applications. The first option is a messy monolith. The second option is using monorepos and Nx. The final option is to use a multi-spa solution. Tomas explains how the multi-spa solution works. This solution consists of 80 stand-alone applications, on the same page and share components. Tomas outlines the common problems when using the solutions and how using angular elements combat those problems. The panel moves on to considers how you know if you should use angular elements in this way. Tomas provides two questions to ask yourself when deciding whether or not to use angular elements. The first question is, are you in a multi-spa scenario? The second question is, are components shared across applications? If the answer is yes for both of those questions then angular elements can only help the situation. In last week’s episode of Adventures in Angular the panel interviewed Victor Savkin about using monorepos and Nx. The panel asks Tomas to compare the strategy of using monorepos and Nx to his strategy of using multi-spa with angular elements. He explains why an enterprise might choose multi-spa over monorepos. He also gives the reasons the organization he is working with chose to work with multi-spa. Aaron asks for clarification for using elements in these multi-spa projects. Tomas goes into great detail, breaking down the way multi-spa and angular elements work together. They walk through it together using consumer profiles as an example. Tomas explains that using his approach all the applications update components all at once using angular elements. The panel considers the benefits of using Tomas’s approach and which scenarios it would work best for. Aaron expresses his appreciation for all the work Tomas did and the problems he overcame then bundling his solution in a library together so developers can just use it without all the pain. The library can be found on Github. Tomas tells the panel that there has already been some community contribution to the library. He describes some of the pull requests they have received along with the plans they have for angular elements. The topic turns to mismatched versioning and how the bundle will work. Tomas explains that the only problem they have seen with mismatched versioning is with zone.js. He shares some workarounds to the problem and promises that they are working on a solution. The episode ends with the panel listing all the major benefits that an enterprise can gain from using the multi-spa and angular elements approach. It will save them money, allow teams to work together, create and isolation. Tomas also shares some of the new features available in angular elements today. Panelists
Episode Summary Victor Savkin, former angular team member and now cofounder of Narwhal Technologies Inc or Nrwl, returns to Adventures in Angular to teach the panel about monorepos. Victor starts by explaining what monorepos are and why you might need one. Monorepo style development is when multiple projects developed in the same repository and the tools used to manage code between those apps. There are many benefits to using monorepos as Victor explains to the panel, such as sharing code between apps. Monorepos help you see what's going on in reality as well as helps you take control of the structure of your code. It also allows for more interesting deployment strategies. Victor talks briefly about his time at Google, working on the toolchain and using a large monorepo. After the panel asks about the costs of using a monorepo strategy, Victor explains that there are many perceived costs that are actually false or easily overcome. The first perceived cost he tells the panel about is how people get confused and believe that apps have to be deployed together when they really have to be developed in the same repository. The second is the fear of misplaced ownership, that some other developer will come along and ruin their code. Victor explains that ownership can be configured and controlled so that no one you don’t trust can touch your code. The next myth developers believe about monorepos is that it doesn’t scale and especially when it comes to performance. Victor explains that when the app is set up correctly and testing used correctly this isn’t a problem. The final perceived cost is that Git will break. Victor debunks this by explaining that you would have to be doing extremely well in order for Git to be a bottleneck and even then there are ways around that problem. Victor explains the one real cost and that is you have to change the way you code. The panel discusses a few different coding styles. Victor recommends getting used to single version policy and trunk-based development. He defines trunk-based development, explaining how it works and why it is better for monorepos than long-range branch development. Victor sees two types of groups who want to get started in monorepos and he explains what they most commonly do wrong. The first is greenfield projects who jump right in without thinking about it and eventually crash. The second is teams with a giant app and through a monorepo in hoping it will help them structure their app. He explains there is a right way to start using monorepos in both situations. Asking the important question is how to get started. Agreeing upon the structure, naming, ownership, are you going to build the frontend and backend in the same repo, and the answers to a bunch of other questions will affect your work the most, even more than the tooling you use. Some of these answers will be specific to your company where others will be universal, like naming and ownership. With other tools for monorepo out there, the panel asks Victor why Nrwl decided to build their own tool. Victor explains that the current tools on the market do not do it all. Lerna only does one thing great and Bazel is very selective on who can run it. Nrwl is hoping to marry Bazel to Nx, so they can allow everyone to use Bazel. They want Nx to support all tools and even Windows. The panel wonders if Nx is perfect. Victor explains that it nearly there. Nx is pluggable and easy to use. It is easy to learn. Victor explains that they really care about developer experience at Nrwl. Nx is free and opensource so everyone can give monorepos a try. Resources for learning about monorepos are discussed. Victor invites everyone to watch the ten-minute getting started video on the Nx website. He also lets the listeners know about a new book coming out mid-September and it will be more organizational based than the last. The panel wants to know what comes with Nx. Victor explains that Nx gives you modern tools by setting up Cypress, Jest and other tools for you. Because Nrwl is a consulting firm, the panel hopes that Victor will have an update on the trends. Victor shares his view that trends don’t really tell you anything about the true status of a framework. How many downloads a framework has doesn’t show the longevity of that framework. Frameworks being used to make large scale apps that will be around for years is how you can tell the longevity of a framework. From that perspective, Victor feels that Angular is doing really well. To end the episode, Shai Reznik recalls how passionate Victor was about NgRx a few years ago. He asks Victor if he still feels the same way as before. Victor explains that NgRx is pretty well most of the time, has great docs, is well maintained, and he would still recommend it.Panelists
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
Sponsors
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:
Panel:
Panel:
- Aaron Frost
- Brian Love
Special Guest: Amir TugendhaftIn this episode, Aaron and Brian talk with https://twitter.com/amirtugi who is a web developer who is located in Israel. He finds much gratification developing and building things from scratch. Check out today’s episode where Aaron, Brian, and Amir talk about just that. Other topics include UI Design, Flexbox, UX design, PrimeNG, and ag-Grid.Show Topics:0:00 – Advertisement: https://angularbootcamp.com 0:52 – https://medium.com/@frosty/preparing-to-become-a-gde-752b551c88df Welcome! Today’s panel is myself, Brian, and our guest is https://twitter.com/amirtugi 1:13 – Guest: I am a developer and experience with Angular and React.1:56 – Host: You spend your days/nights there?2:03 – Panel: He is committed.2:08 – Host: I am going to back up a second, and Brian could you please introduce yourself, please?2:26 – https://twitter.com/brian_love?lang=en I am the CETO at an Angular consulting firm (Denver, CO). We have the pleasure with working with Aaron from time-to-time. My Twitter handle is https://twitter.com/brian_love?lang=en – check it out!2:52 – Host: What is CETO stand for?2:59 – Brian answers the question. Brian: I oversee the crew among other things.3:31 – Host: What do you want to talk about today, Amir? You are the guest of honor today!3:40 – Guest.4:00 – Host: That is a lot of information – that might be more than 1 episode. We have to stay focused!4:14 – Host: I read one of your recent blogs about Cross Filled Violators. I met you through your blog before we did theHost: Give us your own ideas about starting your own app.4:50 – Guest answers the question. 6:17 – Host: I am biased. But here is a fact. I used to work on a large team (60 people) and everyone committing to the same page app. We were using Angular.js 1.5, which I think they are still using that. I know that it worked but it wasn’t the easiest or fastest one to maintain, but it worked.7:05 – Brian.7:10 – Host: What are you trying to do? React doesn’t fulfill that need. I think you are being hyperballic and using extreme cases as the norm. Let’s be honest: we do cool stuff with jQuery plugins when we didn’t have a framework. When they say that the framework is stopping them then I say: I agree to disagree.8:00 – Host: What do you think, Amir?8:04 – Guest: I don’t have preferences. I try to build applications through the technologies and create components and simple applications.8:30 – Brian.8:33 – Guest: You create the component, and then...9:21 – Brian: You don’t have to have a template file and another file – right?9:35 – Guest.9:48 – Host: I do in-line styles and in-line templates. One thing I learned from React is that I like my HTML, style and code. I like it being the same file as my component. I like that about that: I like single file components. This promotes getting frustrated if it gets too big. Yeah if it’s more than 500 lines than you have to simplify. That’s one of the things that l like.10:47 – Brian: Modules versus...10:55 – Guest.11:07 – Host: I think in https://reactjs.org and https://vuejs.org you have the word module but in JavaScript you have a file that exports...11:26 – Host: I have my opinion here and talking with Joe. He made a good point: at a certain level the frontend frameworks are the same. You could be doing different things but they basically do the same thing.13:57 – Guest: Basically what that means is that the technology used it will do the same thing. Your patterns and practices are huge.14:17 – Brian: If you are talking about the 3 popular frameworks out there – they are basically doing the same thing. I like Angular a little big more, though. Like you said, Aaron, people tend to pick the same one. I like the opinionated things about Angular. You get properties, components or called props or inputs you are getting a lot of the same features. It comes down to your personal preference.15:31 – Host: What else Amir?15:35 – Guest: Let’s talk about the UI.16:05 – Brian.16:08 – Guest asks a question. 16:25 – Brian: How have you tackled this problem?16:34 – Guest: I kind of ran with it. If there wasn’t something that I liked I started from scratch, because it really didn’t feel right.16:51 – Brian: I am an enemy of starting over type of thing. You have a lot of engineers who START projects, and they can say that they start this piece, but the experts and choice team members have what it takes to ship a feature. I mean fully ship it, not just 80%, but also the final 20%. I think it takes a lot of pose decision making to say I want to rewrite it but not right now. I still need to ship this code. I have always been a bigger fan as not rewriting as much as possible; however, if you started with good patterns then that’s true, but if you are starting off with bad patterns then maybe yes. I like that opinion b/c you have to start right.Brian: How do you do your CSS?19:05 – https://www.linkedin.com/in/amir-tugi/?originalSubdomain=il 19:52 – https://devchat.tv/get-a-coder-job/ 20:30 – Brian: How do you make those decisions, Amir?20:39 – Guest: I see something that I like and ask myself how do I apply this to my design and I start scaling things.21:50 – Host: Are you using a tool likehttps://www.sketchapp.com for your initial https://en.wikipedia.org/wiki/User_interface_design 22:05 – Guest.22:54 – Host: I worked on a project where the client had a https://youtu.be/Ovj4hFxko7c 24:00 – Host and Guest go back-and-forth. 24:51 – Host: I am sure it’s all about the quality from your designer, too. Hopefully it works well for you and it’s quality.25:18 – Host: There is a lot to building an app from scratch. I am not a good designer. I am not a designer – I mean straight-up. I got nothing. I appreciate team members that can do that.26:06 – Guest: Do you write...?26:35 – Host: Only on the most recent project. The designer didn’t own the HTML CSS but he initially wrote it and then gave it to me and now I own it, and it’s in components. If he wants updates then I have to go and make changes b/c he doesn’t know Angular. If it’s a sketch or a PNG you have to make it look like that. That’s what most of my career has been.Host: HTML and CSS got me 762x easier once https://css-tricks.com/snippets/css/a-guide-to-flexbox/ came around! I know there is a decimal there!28:23 – Host talks about https://css-tricks.com/snippets/css/a-guide-to-flexbox/ some more. 28:42 – Guest asks a question. 28:50 – Host: I suppose if I really had heavy needs for a table then I would try CSS grid could solve some problems. I might just use a styled table.29:12 – Brian: https://www.ag-grid.com or something else.29:21 – Host: On this recent project...I’ve used in-house design and other things. If I ever needed a table it was there. I don’t rebuild components b/c that can get expensive for me.30:50 – Brian: Accessibility.31:00 – Host: Your upgrade just got 10x harder b/c you own the component loop. I really don’t build tables or drop-downs. Only way is if I really need to build it for a specific request.31:30 – Brian.31:58 – Host: Let me give you an example. You can think I am crazy, but a designer gave me a drop-down but he told me to use https://codeburst.io/why-not-primeng-852a9dfca6bc I had the chose of building my own drop-down or the designer has to accept whatever they gave him. I made the UI make what he wanted and I made the drop-down zero capacity and then...Host: When you click on what you see you are clicking on the...Host: Does that make sense?33:35 – Guest.33:50 – Host.34:25 – Brian: That is interesting; remember when...34:58 – Host: We will send this episode to Jeremy – come on Jeremy! Any last ideas? Let’s move onto picks!35:20 – https://www.freshbooks.com END – https://www.cachefly.com Links:
- https://vuejs.org
- https://jquery.com
- https://angular.io
- https://reactjs.org
- https://docs.microsoft.com/en-us/dotnet/csharp/
- https://youtu.be/Ovj4hFxko7c
- https://en.wikipedia.org/wiki/User_interface_design
- https://css-tricks.com/snippets/css/a-guide-to-flexbox/
-
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
Panel: https://twitter.com/cmaxw?lang=en Special Guests: https://github.com/adtm In this episode, the Chuck talks with https://www.aaron-gustafson.com who is a web-standards and accessibility advocate working at Microsoft. Aaron and Chuck talk about PWAs and the ins and outs of these progressive web apps. Check out today’s episode to hear more!Show Topics:0:36 – Chuck: Our guest is Aaron, say HI!0:41 – Aaron: Hi! I have been working on the web for 20 plus years. I am working on the Edge team for accessibility among other things. I have done every job that you can do on the web.1:08 – Chuck: That is one of OUR publications?1:14 – Aaron: No the communities. I joined the staff as editor in chief for 1.5 year now. It’s a nice side project to do.1:36 – Chuck: I thought it was a commercial thing.1:40 – Aaron: No it’s volunteer.1:52 – Chuck: Talk about your web background?2:02 – Aaron: I remember the first book I got (title mentioned). My first job on the web (cash) I was the content manager in Florida and this was in 1999. Gel Macs just came out. I relocated from FL to CT and worked for other companies. I got into CSS among other things. It’s been a wild ride and done it all.3:52 – Chuck: Let’s talk about web standards?4:05 – Aaron: It depends on the organization and what the spec is and where it originates. It’s interesting to see how HTML developed back in the day.When standardization started working then everything started to converge.Everything is a little different now. Some specs come out from companies that... (Apple, https://responsiveimages.org, and Grid are mentioned among other things.) 7:37 – Chuck: We set up to talk about PWAs. Where did PWAs come from?7:57 – Aaron: Modern web design, best web applications. Being secure. One of the underpinnings came out from Google and they have been supporters of that.Firefox is working on installation as well.The Chrome implementation is weird right now, but it becomes an orphaned app. It’s like the old chrome apps where in Windows you can install from the Microsoft store. But the case of Chrome you don’t have to go through the store.10:14 – Chuck asks a question.10:24 – Aaron answers.11:53 – Chuck: What makes it a progressive web app rather than a regular website?12:05 – Aaron: The definition is running on HTPS and...Aaron defines the terms that Chuck asks at 11:53. 12:43 – Aaron: Of course you can push forward if it makes sense from the baseline.12:56 – Chuck: We have an Angular podcast, and we talked about PWAs and nobody had a good definition for it.13:18 – Aaron.13:22 – Chuck: What are the pros of having a PWA? Let’s start with the basics first.13:33 – Aaron: The ability to control how you react to the network. We development is challenging maybe in other areas because of the lack of control and how your code gets to your users. Any special needs that YOU might have.Aaron goes into detail on this topic.17:14 – Chuck: Is the service worker the star for PWAs?17:20 – Aaron: In a way, kind of.Aaron goes into detail on this topic. Share 2 is mentioned, too. 19:42 – Chuck: If the service worker intermediates between the browser and the page / Internet would it make sense to have your worker have it load and then load everything else? Cause you have those Web Pack now.20:14 – Aaron: Some people would consider it but I wouldn’t necessarily. I am not a fan for that. If anything goes wrong then nothing loads. I remember back when...22:23 – Aaron: That is a lot of overhead.22:34 – Chuck: I am wondering what is the best practice? How do you decide to pull in a service worker and then move into more complicated issues?22:53 – https://www.youtube.com/channel/UCDWpGhFB8j6Kia4B_MKUG3w: Progressive Web App where they talk about their evolution about this.25:17 – https://www.freshbooks.com/?adgroupid=51893696397&ag=%255Bfreshbooks%255D&camp=US%2528SEM%2529Branded%257CEXM&campaignid=717543354&crid=289640536553&dclid=CNGHh6XkmN4CFQO5TwodEqEA2w&dv=c&gclid=EAIaIQobChMIzpSso-SY3gIVDoxpCh0-HwkaEAAYASAAEgI6JfD_BwE&gclsrc=aw.ds&kw=freshbooks&kwid=kwd-298507762065&ntwk=g&ref=ppc-na-fb&source=GOOGLE Code: DEVCHAT.26:25 – Chuck: In order to be a PWA you don’t need to have a push notification.26:38 – Aaron: I don’t think anyone would want a push notification from me.27:12 – Chuck: What features do PWAs have?27:18 – Aaron: Features? None of them really, other than push notifications, it’s just standard it’s going to make an App feel more App “y”. If that’s something you want to do. It’s up to you to determine that.There is going to be like push notifications – sending person new updates about the order. If you were a new site you want to make sure you are not doing a push notifications on everything cause that would be too much. Exercising care with the capabilities with what the users are doing on your computer. This is a person that you are dealing with. We need to seem less needy. Give users control of how they want to use it. For example, Twitter will give you that control per user.30:56 – Chuck: Could you also do it for different parts of the page?31:01 – Aaron: It’s different scopes. Your servicer worker has different scopes and it needs to be in the root folder or the JavaScript folder. You can have different workers but they will come from different scopes.31:32 – Chuck gives a hypothetical example.31:50 – You can do a bunch of different service workers.32:11 – Chuck: This is why we create different hierarchies in our code.32:26 – Chuck: Is there a good point where people can be more informed with PWAs?32:40 – Aaron: https://www.pwastats.com and https://twitter.com/pwastats with Cloud 4.33:22 – Chuck asks a question.33:26 – Aaron: Yes. If you are a photographer you don’t want to cash all of your photos on someone’s hard drive. We have to be good stewards of what is operating on people’s hard drives.Even something as simple as a blog can benefit from being a PWA.35:01 – Chuck: Are there new things that are being added to a PWA?35:12 – Aaron: A new feature is the background sync.Aaron: What is native and what is web?36:33 – Chuck: Yeah it can detect a feature in your machine. Dark mode is...36:48 – Aaron: It would be nice to see things standardized across the board.37:00 – Chuck: How does this play into https://electronjs.org or Android or...? Do those need to be PWAs?37:16 – Aaron: It depends on what you are building. So I talked with people through Slack and they want total control. If you r desire is to shift the same experience then https://electronjs.org can make a lot of sense. They will have to pay a premium, though, your users. If you are aware of that then go the https://electronjs.org route. But for most cases then https://electronjs.org might be overkill for you. You don’t need that extra overhead.39:55 – Aaron continues. Aaron: I think the major benefit of PWA is...41:15 – Chuck: The other angle to that is that in an Electron app does it make sense to use a PWA things?41:23 – Aaron: Yes that makes sense.41:34 – Unless for some reason you need to unlock into an older version, which I hope is not the case b/c of security reasons.41:55 – Aaron continues. 42:34 – Chuck: Where can we find you?42:35 – Aaron mentions Twitter and other sites. See Links!43:02 – https://www.digitalocean.com/ Links:
- https://rubyonrails.org
- https://angular.io/guide/quickstart
- https://www.pwastats.com
- https://twitter.com/pwastats
- https://electronjs.org
- https://www.aaron-gustafson.com
- https://www.linkedin.com/in/aarongustafson
- https://twitter.com/AaronGustafson
- https://github.com/aarongustafson
- https://www.youtube.com/channel/UCDWpGhFB8j6Kia4B_MKUG3w
- https://medium.com/@AaronGustafson
- https://devchat.tv/get-a-coder-job/
- https://twitter.com/cmaxw?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor
Sponsors:
- https://devchat.tv/get-a-coder-job/
-
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
Panel:
Panel:
- Charles Max Wood
Special Guest: Brady GasterIn this episode, Chuck talks with https://twitter.com/bradygaster about https://www.asp.net/signalr that is offered through Microsoft. Brady Gaster is a computer software engineer at Microsoft and past employers include Logical Advantage, and Market America, Inc. Check out today’s episode where the two dive deep into SignalR topics.Show Topics:0:00 – Advertisement: https://angularbootcamp.com 0:56 – Chuck: Hello! We are going to talk about https://www.asp.net/signalr which is an offering through Microsoft.1:09 – Guest: It started in 2011 that’s when I got involved, but I wasn’t with Microsoft, yet, at that point. I was working on the technology, though.Effectively you can do real time HTMP but what they did (Damon and David) let’s create a series of abstractions but not we have for Java. They basically cam up this idea let’s do web sockets and then go back to pole / pole / pole. It’s to see what the server and the client can support. Guest talks about https://socket.io, too. 6:45 – Chuck: What we are talking about real time coordination between apps.6:56 – Guest: Web sockets, 1 million...and 2.6 million messages a second!7:05 – Chuck: I can set that up like I usually set up web sockets?7:17 – Guest: There is a client library for each. Effectively you have a concept called a connection.9:48 – Chuck: How do you handle authentication on the frontend?9:56 – Guest: We have server side things that we can attribute things.10:09 – Chuck.10:12 – Guest: If you authenticate to the site then the site passes the token and it basically sits on top of the same plumbing.10:38 – Chuck.10:42 – Guest.10:54 – Chuck.10:58 – Guest: We recently just had the https://www.dotnetconf.net. We had an all night, 24-hour thing.11:48 – Chuck: Here you are, here you go.You hook it all up, JavaScript into your bundle.12:05 – (The guest talks about how to install.)13:12 – Chuck: I could come up with my own scheme.13:25 – Guest: The traditional example is SEND A MESSAGE and then pass you string. Well tomorrow I do that and I just change the code – it’s great b/c I send up a ping and everybody knows what to do what that ping. It’s just a proxy.14:17 – Chuck: I am trying to envision what you would use this for? If you are worried about it being stale then you refresh. But if you want the collaborative stuff at what point do you ask: Do I need SignalR?15:00 – Guest: When I do my presentations on SignalR and being transparent I want to send you 1,000 messages but 1 or 2 messages will be dropped. You don’t want to transmit your order data or credit card information. Do you have a hammer and you need a screw? If you need stock tickers and other applications SignalR would work.Keeping your UI fresh it is a great thing.19:02 – Chuck: You do that at the Hub? You set up the Hub and it passes everything back and forth. What can you do at the Hub for filtering and/or certain types of events?19:26 – Guest: I am looking at a slide. What’s the cool thing about SignalR and the API is it’s deceptively simple on purpose. If you want to call out to clients, you can get a message to all of your clients if you select that/those feature(s). Some other features you have are OTHERS, and Clients.Group.20:57 – Chuck: Can you set up your own?20:58 – Guest: I don’t know.21:12 – Chuck: Clients who belong to more than one group.21:23 – Guest: Dynamics still give some people heartburn. (The guest talks about https://docs.microsoft.com/en-us/dotnet/csharp/ Dev, Hub, and more!) 23:46 – https://devchat.tv/get-a-coder-job/ 24:23 – Chuck: How do people get started with this? Do they need Azure?24:30 – Guest: You don’t need Azure you can go to https://docs.microsoft.com/en-us/aspnet/signalr/overview/getting-started/introduction-to-signalr and it’s apart of the .NET team, too.26:39 – Guest talks about how to installhttps://twitter.com/SignalR?lang=en – see links below! 27:03 – Chuck: You don’t have to KNOW .NET.27:11 – Guest: It was created by that team (*fair enough*) but you don’t have to know .NET.27:57 – Guest: You can I could do JavaScript all the way.29:04 – Chuck: Yes, we keep moving forward. It will look different what people are using.29:21 – Guest: That was an early thing and I was reading through the old bugs from 2011/2012 and that’s one thing that kept coming up. I didn’t want to use https://jquery.com to use SignalR – now you don’t. It’s a happy thing.30:45 – Guest: Someone suggested using https://developer.android.com/reference/android/os/Parcel I have a question do you have any recommendations to have https://www.npmjs.com/package/node-sass workflow to have it less stressful? 31:30 – Chuck: It’s out of Ruby that’s my experience with Node-Sass.31:40 – Guest: I haven’t used Ruby, yet.31:46 – Guest: I haven’t heard of Phoenix what is that?31:50 – Chuck answers. Chuck: It’s functional and very fast.Once you’ve figured out those features they almost become power features for you. Elixir has a lot of great things going for it.32:50 – Guest: I tried picking up GO recently.33:08 – Chuck: Lots of things going on in the programming world.33:18 – Guest: I have always had a mental block around Java. I was PMing the Java guys and I asked: will this stuff work on...Once I got it then I thought that I needed to explore this stuff more!I want to learn Ruby, though.34:16 – Chuck: Anything else in respect to http://signalr.net 34:15 – Guest: I really think I have dumped everything I know about Signal R just now.I would draw people to the DOCS pages.A guide for anything that could happen on the JavaScript side – check them out!We have tons of new ideas, too!37:33 – Picks!37:42 – https://www.freshbooks.com/?adgroupid=51893696557&ag=r%252F+%257Efreshbooks&camp=US%2528SEM%2529Branded%257CEXM&campaignid=717543354&crid=284685866051&dclid=CO7qmoiOh94CFUnHwAodiCQBUA&dv=c&gclid=EAIaIQobChMI--6zho6H3gIVjsVkCh2wsQx6EAAYASAAEgL9B_D_BwE&gclsrc=aw.ds&kw=freshbooks&kwid=kwd-298507762065&ntwk=g&ref=ppc-na-fb&source=GOOGLE 47:54 – https://www.cachefly.com Links:
- https://vuejs.org
- https://jquery.com
- https://angular.io
- https://docs.microsoft.com/en-us/dotnet/csharp/
- https://twitter.com/cmaxw?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor
- https://www.asp.net/signalr
- https://twitter.com/SignalR?lang=en
- https://github.com/SignalR/SignalR
- https://socket.io
- https://www.npmjs.com/package/node-sass
- https://docs.microsoft.com/en-us/aspnet/signalr/overview/guide-to-the-api/hubs-api-guide-javascript-client
- http://signalr.net
- https://realtalkjavascript.simplecast.fm
- https://developer.android.com/reference/android/os/Parcel
- https://twitter.com/bradygaster
- https://github.com/bradygaster
- https://www.linkedin.com/in/bradygaster
Sponsors:
- https://angularbootcamp.com/
- https://www.digitalocean.com/
- https://devchat.tv/get-a-coder-job/
- https://www.cachefly.com
Picks:Brady
- Team on General Session
- https://www.korg.com/us/
- https://www.seahawks.com/
- Brady’s kids
-
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
Panel:
Panel: Charles Max Wood Special Guests: Ed Thomson In this episode, the Adventures in Angular panel talks with Ed Thomson who is a Program Manager at Azure through Microsoft, Developer, and Open Source Maintainer. Ed and Chuck discuss in full detail about Azure DevOps! Check out today’s episode to hear its new features and other exciting news!Show Topics:0:59 – Live at Microsoft Ignite1:03 – Ed: Hi! I am a Program Manager at Azure. 1:28 – Rewind 2 episodes to hear more about Azure DevOps!1:51 – Ed: One of the moves from Pipelines to DevOps – they could still adopt Pipelines. Now that they are separate services – it’s great.2:38 – Chuck talks about features he does and doesn’t use.2:54 – Ed.3:00 – Chuck: Repos and Pipelines. I am going to dive right in. Let’s talk about Repos. Microsoft just acquired GitHub.3:18 – Ed: Technically we have not officially acquired GitHub.3:34 – Chuck: It’s not done. It’s the end of September now.3:55 – Ed: They will remain the same thing for a while. GitHub is the home for open source. Repos – we use it in Microsoft. Repositories are huge. There are 4,000 engineers working in these repositories. Everyone works in his or her own little area, and you have to work together. You have to do all this engineering to get there. We bit a tool and it basically if you run clone...Ed continues to talk about this topic. He is talking about One Drive and these repositories.6:28 – Ed: We aren’t going to be mixing and matching. I used to work through GitHub. It’s exciting to see those people work close to me.6:54 – Chuck.6:59 – Ed: It has come a long way.7:07 – Chuck: Beyond the FSF are we talking about other features or?7:21 – Ed: We have unique features. We have branch policies. You can require that people do pole request. You have to use pole request and your CI has to pass and things like that. I think there is a lot of richness in our auditing. We have enterprise focus. At its core it still is Git. We can all interoperate.8:17 – Chuck.8:37 – Ed: You just can’t set it up with Apache. You have to figure it out.8:51 – Chuck: The method of pushing and pulling.9:06 – Chuck: You can try DevOps for free up to 5 users and unlimited private repos. People are interested in this because GitHub makes you pay for that.9:38 – Ed and Chuck continue to talk.9:50 – Ed: Pipelines is the most interesting thing we are working on. We have revamped the entire experience. Build and release. It’s easy to get started. We have a visual designer. Super helpful – super straightforward. Releases once your code is built – get it out to production say for example Azure. It’s the important thing to get your code out there.10:55 – Chuck: How can someone start with this?11:00 – Ed: Depends on where your repository is. It will look at your code. “Oh, I know what that is, I know how to build that!” Maybe everyone isn’t doing everything with JavaScript. If you are using DotNet then it will know.12:05 – Chuck: What if I am using both a backend and a frontend?12:11 – Ed: One repository? That’s when you will have to do a little hand packing on the...There are different opportunities there. If you have a bash script that does it for you. If not, then you can orchestrate it. Reduce the time it takes. If it’s an open source project; there’s 2 – what are you going to do with the other 8? You’d be surprised – people try to sneak that in there.13:30 – Chuck: It seems like continuous integration isn’t a whole lot complicated.13:39 – Ed: I am a simple guy that’s how I do it. You can do advanced stuff, though. The Cake Build system – they are doing some crazy things. We have got Windows, Lennox, and others. Are you building for Raspberries Pies, then okay, do this...It’s not just running a script.15:00 – Chuck: People do get pretty complicated if they want. It can get complicated. Who knows?15:26 – Chuck: How much work do you have to do to set-up a Pipeline like that?15:37 – Ed answers the question in detail.16:03 – Chuck asks a question.16:12 – Ed: Now this is where it gets contentious. If one fails...Our default task out of the box...16:56 – Chuck: If you want 2 steps you can (like me who is crazy).17:05 – Ed: Yes, I want to see if it failed.17:17 – Chuck: Dude, writing code is hard. Once you have it built and tested – continuous deployment.17:33 – Ed: It’s very easy. It’s super straightforward, it doesn’t have to be Azure (although I hope it is!).Ed continues this conversation.18:43 – Chuck: And it just pulls it?18:49 – Ed: Don’t poke holes into your firewall. We do give you a lot of flexibility19:04 – Chuck: VPN credentials?19:10 – Ed: Just run the...19:25 – Chuck comments.19:36 – Ed: ...Take that Zip...20:02 – Ed: Once the planets are finely aligned then...it will just pull from it.20:25 – Chuck: I host my stuff on Digital Ocean.20:46 – Ed: It’s been awhile since I played with...20:55 – Chuck.20:59 – Ed and Chuck go back and forth with different situations and hypothetical situations.21:10 – Ed: What is Phoenix?21:20 – Chuck explains it.21:25 – Ed: Here is what we probably don’t have is a lot of ERLANG support.22:41 – Advertisement.23:31 – Chuck: Let’s just say it’s a possibility. We took the strip down node and...23:49 – Ed: I think it’s going to happen.23:55 – Ed: Exactly.24:02 – Chuck: Testing against Azure services. So, it’s one thing to run on my machine but it’s another thing when other things connect nicely with an Azure set-up. Does it connect natively once it’s in the Azure cloud?24:35 – Ed: It should, but there are so many services, so I don’t want to say that everything is identical. We will say yes with an asterisk.25:07 – Chuck: With continuous deployment...25:41 – Ed: As an example: I have a CD Pipeline for my website. Every time I merge into master...Ed continues this hypothetical situation with full details. Check it out!27:03 – Chuck: You probably can do just about anything – deploy by Tweet!27:15 – Ed: You can stop the deployment if people on Twitter start complaining.27:40 – Chuck: That is awesome! IF it is something you care about – and if it’s worth the time – then why not? If you don’t have to think about it then great. I have mentioned this before: Am I solving interesting problems? What projects do I want to work on? What kinds of contributions do I really want to contribute to open source?That’s the thing – if you have all these tools that are set-up then your process, how do you work on what, and remove the pain points then you can just write code so people can use! That’s the power of this – because it catches the bug before I have to catch it – then that saves me time.30:08 – Ed: That’s the dream of computers is that the computers are supposed to make OUR lives easier. IF we can do that and catch those bugs before you catch it then you are saving time. Finding bugs as quickly as possible it avoids downtime and messy deployments.31:03 – Chuck: Then you can use time for coding style and other things.I can take mental shortcuts.31:37 – Ed: The other thing you can do is avoiding security problems. If a static code analysis tool catches an integer overflow then...32:30 – Chuck adds his comments.Chuck: You can set your policy to block it or ignore it. Then you are running these tools to run security. There are third-party tools that do security analysis on your code. Do you integrate with those?33:00 – Ed: Yep. My favorite is WhiteSource. It knows all of the open source and third-party tools. It can scan your code and...34:05 – Chuck: It works with a lot of languages.34:14 – Ed.34:25 – Chuck: A lot of JavaScript developers are getting into mobile development, like Ionic, and others. You have all these systems out there for different stages for writing for mobile. Android, windows Phone, Blackberry...35:04 – Ed: Let’s throw out Blackberry builds. We will ignore it.Mac OS dies a fine job. That’s why we have all of those.35:29 – Chuck: But I want to run my tests, too!35:36 – Ed: I really like to use App Center. It is ultimately incredible to see all the tests you can run.36:29 – Chuck: The deployment is different, though, right?36:40 – Ed: I have a friend who clicks a button in...Azure DevOps.37:00 – Chuck: I like to remind people that this isn’t a new product.37:15 – Ed: Yes, Azure DevOps. 37:24 – Chuck: Any new features that are coming out?37:27 – Ed: We took a little break, but...37:47 – Ed: We will pick back up once Ignite is over. We have a timeline on our website when we expect to launch some new features, and some are secret, so keep checking out the website.39:07 – Chuck: What is the interplay between Azure DevOps and Visual Studio Code? Because they have plugins for freaking everything. I am sure there is something there that...39:30 – Ed: I am a VI guy and I’m like 90% sure there is som
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
Panel:
Special Guests: Jia LiIn this episode, the Adventures in Angular panel talks with Jia Li about Zones.js. Check-out today’s episode to hear this topic plus more!Show Topics:1:20 – What are zones?1:25 – Jia: It is a library developed 4 years ago.1:45 – Panelist: Execution context? What is this?1:50 – Jia answers this question.2:42 – I know it’s big in Angular because it kind of takes care of itself. What are the new things you have done in zones and let’s talk about that?3:01 – Jia: I started contributing 2 years ago. About 1 year ago I was using Angular. I would like to talk about different3:35 – Where are zones used in Angular – lots of people don’t know where it is.3:48 – Jia: For four parts.6:23 – What is this framework that you are talking about? Check-out the links for this framework.6:42 – Panelists chime-in with their comments.7:29 – Jia: It is a standalone package in Zone.8:27 – Going back to John’s question. I only ran into it a few times – one time in one of my classes I made a new behavior subject. That subject got created before the zone. Anything I did outside of Angular zone, didn’t know what was going on. Once I stuck the behavior subject in one of the classes everything got taken care of. You kind of monkey patch...what else gets monkey patched by zones?9:28 – Jia answers the question.10:54 – Monkey-patch is a term that we use in this industry. What is it?11:05 – Jia answers this question.Jia: Monkey patch basically is overriding the procedure for the API.14:05 – What are some of the new things you are doing? I know you’ve done some new things and what’s new with Zones?14:28 – Lia: It’s all about the performance.16:55 – Panelist: I didn’t know all about these hooks – so that’s cool! I knew about handling errors, but I didn’t know there are different ways to work with the tasks. I am curious what kind of interesting things have you done with Zones as an Angular developer?17:38 – Lia answers the questions.19:15 – Debugging and tests are good for Zones. But it sounds like you are saying that Zones is not good for...19:50 – Lia answers the question.20:35 – Panelist: Sounds like Zones is doing what you need out of the box for...20:51 – Panelist: You improved some of the performance? Zones doesn’t have that much of a footprint and is pretty lightweight. How much did you better the performance? 20-30%?2:25 – Jia – I think the library is faster. There is a lot of garbage collection.It’s not that much.22:47 – Advertisement – Code Badges! 23:38 – Panelist: So it will help with garbage collection. That is good to know. Cool to know that you can optimize such a small library with...23:48 – Jia comments.26:09 – Panelist: Gottcha.26:16 – Jia continues this topic.Jia: A lot of new things are happening with the testing in the Zone. There are a lot of new features in the syntax.27:35 – That is a nice feature to add back in.27:43 – Jia continues the talk.28:55 – Panelist: There are a lot of tests in this Repo. Do Zones generally work out of the box or do you have to add support for different things? What are the criteria to add support to? Blue Birds added to the list somehow.29:32 – Jia answers this question.30:03 – Panelist: Can the GIST team add support or only can the Zone team add it?30:37 – Jia: Other teams can add support to their libraries. It’s public.31:10 – Panelist: This is over my head, but is there a plan to get the documents going?31:32 – Jia adds a comment.31:41 – Panelist: Google this: What the heck is zones?An opposite side of the question: What would happen to Angular if you remove Zones.js?32:10 – Jia answers this question.332:37 – Zones is effectively how it works sweetly in Angular. It’s not totally true but if you remove Zones.js – which I see some people doing – why would someone do this? Is it heavy is it...?33:20 – Jia answers the question.Jia: It’s not good for the Angular element.34:29 – Panelist: It is an island of Angular.34:54 – Jia continues this conversation.35:10 – Panelist: That’s interesting – good to know.35:18 – Jia: Back to the new features.38:22 – Jia mentions another feature.39:43 – JavaScript something haunts you – then you are now a real developer!40:03 – Jia: Yes, exactly.40:10 – Panelist: I am going to put some things in the links that the listeners can access. (NG Zone)40:28 – Picks!40:31 – Advertisement – Get a Coder Job Course Links:Panel: Charles Max Woods Special Guests: Donovan Brown In this episode, the Adventures in Angular panel talks with Donovan Brown. He is a principal DevOps Manager with Microsoft with a background in application development. He also runs one of the nation’s fastest growing online registration sites for motorsports events DLBRACING.com. When he is not writing software, he races cars for fun. Listen to today’s episode where Chuck and Donovan talk about DevOps, Azure, Python, Angular, React, Vue, and much, much more!Show Topics:1:41 – Chuck: The philosophies around DevOps. Just to give you an idea, I have been thinking about what I want to do with the podcasts. Freedom to work on what we want or freedom to work where we want, etc. Then that goes into things we don’t want to do, like fix bugs, etc. How does Microsoft DevOps to choose what they want to do?2:37 – Guest: We want to automate as much as we can so the developer has less work. As a developer I want to commit code, do another task, rinse and repeating.Minutes and not even hours later then people are tweeting about the next best thing. Do what you want, where you want. Code any language you want.4:15 – Chuck: What has changed?4:19 – Guest: The branding changed. The name wasn’t the most favorite among the people. The word “visual” was a concerned. What we have noticed that Azure will let me run my code no matter where I am. If you want to run Python or others it can run in Azure.People didn’t need all of it. It comes with depositories, project management, and so much more! People could feel clumsy because there is so much stuff. We can streamline that now, and you can turn off that feature so you don’t have a heart attack. Maybe you are using us for some features not all of them – cool.7:40 – Chuck: With deployments and other things – we don’t talk about the process for development a lot.8:00 – Guest talks about the things that can help out with that.Guest: Our process is going to help guide you. We have that all built into the Azure tab feature. They feel and act differently. I tell all the people all the time that it’s brilliant stuff. There are 3 different templates. The templates actually change over the language. You don’t have to do mental math.9:57 – Chuck: Just talking about the process. Which of these things we work on next when I’ve got a bug, or a ...10:20 – Guest: The board system works like for example you have a bug. The steps to reproduce that bug, so that there is no question what go into this specific field. Let the anatomy of the feature do it itself!11:54 – Chuck comments.12:26 – Chuck: Back to the feature. Creating the user stories is a different process than X.12:44 – Guest – You have a hierarchy then, right? Also what is really cool is we have case state management. I can click on this and I expect this to happen...These are actual tasks that I can run.13:52 – Chuck: Once you have those tests written can you pull those into your CI?14:00 – Guest: “Manual tests x0.”Guest dives into the question. 14:47 – I expect my team to write those test cases. The answer to your question is yes and no.We got so good at it that we found something that didn’t even exist, yet.16:19 – Guest: As a developer it might be mind16:29 – Chuck: I fixed this bug 4x, I wished I had CI to help me.16:46 – Guest: You get a bug, then you fix a code, etc., etc. You don’t know that this original bug just came back. Fix it again. Am I in Groundhog Day?They are related to each other. You don’t have a unit test to tell you. When you get that very first bug – write a unit test. It will make you quicker at fixing it. A unit test you can write really fast over, and over, again. The test is passing. What do you do? Test it. Write the code to fix that unit test. You can see that how these relate to each other. That’s the beauty in it.18:33 – Chuck: 90% of the unit tests I write – even 95% of the time they pass. It’s the 5% you would have no idea that it’s related. I can remember broad strokes of the code that I wrote, but 3 months down the road I can’t remember.19:14 – Guest: If you are in a time crunch – I don’t have time for this unit test.Guest gives us a hypothetical situation to show how unit tests really can help.20:25 – Make it muscle memory to unit test. I am a faster developer with the unit tests.20:45 – Chuck: In the beginning it took forever. Now it’s just how I write software now.It guides my thought process.21:06 – Guest: Yes! I agree.22:00 – Guest: Don’t do the unit tests22:10 – Chuck: Other place is when you write a new feature,...go through the process. Write unit tests for the things that you’ve touched. Expand your level of comfort.DevOps – we are talking about processes. Sounds like your DevOps is a flexible tool. Some people are looking for A METHOD. Like a business coach. Does Azure DevOps do that?23:13 – Guest: Azure DevOps Projects. YoTeam. Note.js, Java and others are mentioned by the Guest.25:00 – Code Badges’ Advertisement25:48 – Chuck: I am curious – 2 test sweets for Angular or React or Vue. How does that work?26:05 – Guest: So that is Jasmine or Mocha? So it really doesn’t matter. I’m a big fan of Mocha. It tests itself. I install local to my project alone – I can do it on any CI system in the world. YoTeam is not used in your pipeline. Install 2 parts – Yo and Generator – Team. Answer the questions and it’s awesome. I’ve done conferences in New Zealand.28:37 – Chuck: Why would I go anywhere else?28:44 – Guest: YoTeam was the idea of...28:57 – Check out Guest29:02 – Guest: I want Donovan in a box. If I weren’t there then the show wouldn’t exist today.29:40 – Chuck: Asks a question.29:46 – Guest: 5 different verticals.Check out this timestamp to see what Donovan says the 5 different verticals are. Pipelines is 1 of the 5.30:55 – Chuck: Yep – it works on my Mac.31:04 – Guest: We also have Test Plant and Artifacts.31:42 – Chuck: Can you resolve that on your developer machine?31:46 – Guest: Yes, absolutely! There is my private repository and...33:14 – Guest: *People not included in box.*33:33 – Guest: It’s people driven. We guide you through the process. The value is the most important part and people is the hardest part, but once on33:59 – Chuck: I am listening to this show and I want to try this out. I want a demo setup so I can show my boss. How do I show him that it works?34:27 – Azure.com/devops – that is a great landing page.How can I get a demo going? You can say here is my account – and they can put a demo into your account. I would not do a demo that this is cool. We start you for free. Create an account. Let the CI be the proof. It’s your job to do this, because it will make you more efficient. You need me to be using these tools.36:11 – Chuck comments.36:17 – Guest: Say you are on a team of developers and love GitHub and things that integration is stupid, but how many people would disagree about...38:02 – The reports prove it for themselves.38:20 – Chuck: You can get started for free – so when do you have to start paying for it?38:31 – Guest: Get 4 of your buddies and then need more people it’s $6 a month.39:33 – Chuck adds in comments. If this is free?39:43 – Guest goes into the details about plans and such for this tool. 40:17 – Chuck: How easy it is to migrate away from it?40:22 – Guest: It’s GITHub.40:30 – Chuck: People are looing data on their CI.40:40 – Guest: You can comb that information there over the past 4 years but I don’t know if any system would let you export that history.41:08 – Chuck: Yeah, you are right.41:16 – Guest adds more into this topic.41:25 – Chuck: Yeah it’s all into the machine.41:38 – Chuck: Good deal.41:43 – Guest: It’s like a drug. I would never leave it. I was using TFS before Microsoft.42:08 – Chuck: Other question: continuous deployment.42:56 – When I say every platform, I mean every platform: mobile devices, AWS, Azure, etc.Anything you can do from a command line you can do from our build and release system. PowerShell you don’t have to abandon it.45:20 – Guest: I can’t remember what that tool is called!45:33 – Guest: Anything you can do from a command line. Before firewall. Anything you want.45:52 – Guest: I love my job because I get to help developers.46:03 – Chuck: What do you think the biggest mistake people are doing?46:12 – Guest: They are trying to do it all at once. Fix that one little thing.It’s instant value with no risks whatsoever. Go setup and it takes 15 minutes total. Now that we have this continuous build, now let’s go and deploy it. Don’t dream up what you think your pipeline should look like. Do one thing at a time. What hurts the most that it’s “buggy.” Let’s add that to the pipeline.It’s in your pipeline today, what hurts the most, and don’t do it all at once.49:14 – Chuck: I thought you’d say: I don’t have the time.49:25 – Guest: Say you work on it 15 minutes a day. 3 days in – 45 minutes in you have a CSI system that works forever. Yes I agree because people think they don’t “have the time.”50:18 – Guest continues this
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
Panel:
Panel:
Panel
- Brendan Eich
- Joe Eames
- Aaron Frost
- AJ ONeal
- Jamison Dance
- Tim Caswell
- Charles Max Wood
Discussion01:57 – Brendan Eich Introduction
- http://en.wikipedia.org/wiki/JavaScript
- http://en.wikipedia.org/wiki/Brendan_Eich
02:14 – Origin of JavaScript
- http://en.wikipedia.org/wiki/Java_(programming_language)
- http://en.wikipedia.org/wiki/Netscape
- http://en.wikipedia.org/wiki/James_H._Clark
- http://en.wikipedia.org/wiki/Marc_Andreessen
- http://en.wikipedia.org/wiki/Mosaic_(web_browser)
- http://en.wikipedia.org/wiki/NCSA_HTTPd
- http://en.wikipedia.org/wiki/Lynx_%28web_browser%29
- http://en.wikipedia.org/wiki/Lou_Montulli
- http://www.sgi.com/
- https://www.kernel.org/
- http://www.nndb.com/people/397/000031304/
- Kipp Hickman
- http://www.microunity.com
- http://www.oracle.com/us/sun/index.htm
- http://en.wikipedia.org/wiki/Andy_Bechtolsheim
- http://en.wikipedia.org/wiki/Bill_Joy
- http://en.wikipedia.org/wiki/Sun_1
- http://en.wikipedia.org/wiki/Scheme_(programming_language)
- http://www.amazon.com/gp/product/0262510871/ref=as_li_qf_sp_asin_il_tl?camp=1789&creative=9325&creativeASIN=0262510871&ie=UTF8&linkCode=as2&linkId=3VUQDAMFNEGYNADN&tag=chamaxwoo-20
- http://en.wikipedia.org/wiki/Guy_L._Steele
- http://en.wikipedia.org/wiki/Gerald_Jay_Sussman
- http://en.wikipedia.org/wiki/SPDY
- http://www.ksl.stanford.edu/people/robm/
- http://www.mikemccool.com
- http://www.apache.org
- http://www.ambergini.com/mocha/Introduction.html
- http://peninsulacreamery.com
- http://msdn.microsoft.com/en-us/library/ms228506(v=vs.90).aspx
- http://www.java4s.com/core-java/static-in-java-static-variables-static-methods-static-classes/
10:38 – Other Languages for Programmers
- http://en.wikipedia.org/wiki/Visual_Basic
- https://www.google.com/chrome/browser/
- https://chrome.google.com/webstore/detail/blacklist/jbpccandodannohfaoncogijbkfcmpgo
- https://www.mozilla.org/en-US/firefox/new/
12:38 – Naming JavaScript and Writing VMs
- https://canvas.instructure.com/login
- http://www.cs.cornell.edu/andru/
16:14 – Envisioning JavaScript’s Platform
- http://en.wikipedia.org/wiki/Web_2.0
- http://en.wikipedia.org/wiki/Ajax_%28programming%29
- Hidaho Design
- http://www.opera.com
- https://www.mozilla.org/en-US/
- http://en.wikipedia.org/wiki/Logo_(programming_language)
- http://www.smalltalk.org/main/
- http://selflanguage.org
- http://en.wikipedia.org/wiki/HyperTalk
- http://en.wikipedia.org/wiki/Bill_Atkinson
- http://en.wikipedia.org/wiki/HyperCard
- http://starwarsgames.org/starwarstrenchrun.php
- http://en.wikipedia.org/wiki/David_Ungar
- http://homes.cs.washington.edu/~chambers/
- http://en.wikipedia.org/wiki/Lars_Bak_(computer_programmer)
- http://www.strongtalk.org
- http://www.typescriptlang.org
- http://en.wikipedia.org/wiki/HotSpot_(Java)
- http://code.google.com/p/v8/
- https://www.dartlang.org
- http://en.wikipedia.org/wiki/Jamie_Zawinski
24:42 – Working with http://www.ecma-international.org
- http://en.wikipedia.org/wiki/Bill_Gates
- Blackbird
- http://download.cnet.com/Spyglass/3000-2248_4-75804666.html
- http://www.adobe.com/devnet/author_bios/carl-cargill.html
- http://www.ecma-international.org/memento/history.htm
- http://www.usa.philips.com
- https://twitter.com/mikecowlishaw
- http://www.borland.com
- https://github.com/jwiegley/gdtoa
- http://www.ecmascript.org
- http://www.quora.com/Lisp-programming-language
- http://en.wikipedia.org/wiki/Richard_P._Gabriel
31:26 – Naming Mozilla
- https://twitter.com/JWZ
- http://godzilla.wikia.com/wiki/Godzilla
31:57 – Time-Outs 32:53 – Functions
- http://clojure.org
- https://twitter.com/JohnRose00
- http://www.oracle.com/index.html
- http://www.scala-lang.org
- http://async-io.org
38:37 – XHR and Microsoft
- http://www.winsite.com/flash/flash+programming+language/
- http://hadoop.apache.org
-
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
Panel:
Panel:
Panel:
Panel:
Panel:
Panel:
Panel:
Panel: Charles Max Wood Special Guests: Vesa JuvonenIn this episode, the Adventures in Angular panel talks to Vesa Juvonen about building SharePoint extensions with JavaScript. Vesa is on the SharePoint development team and is responsible for the SharePoint Framework, which is the modern way of implementing SharePoint customizations with JavaScript. They talk about what SharePoint is, why they chose to use JavaScript with it, and how he maintains isolation. They also touch on the best way to get started with SharePoint, give some great resources to help you use it, and more!In particular, we dive pretty deep on:
Panel:
Panel:
Panel:
Panel: Charles Max Wood Special Guests: Ori Zohar and Gopinath ChigakkagariIn this episode, the Adventures in Angular panelists discuss Cloud-Hosted DevOps with Ori Zohar and Gopinath Chigakkagari at Microsoft Build. Ori is on the product team at VSTS focusing on DevOps specifically on Azure. Gopinath is the group program manager in VSTS primarily working on continuous integration, continuous delivery, DevOps, Azure deployment, etc. They talk about the first steps people should take when getting into DevOps, define DevOps the way Microsoft views it, the advantages to automation, and more!In particular, we dive pretty deep on:
Panel:
Panel:
Panel: Charles Max Wood Special Guests: Tomek SułkowskiIn this episode, the JavaScript Jabber panelists discuss UX in Angular with Tomek Sułkowski. Tomek currently works as a front-end engineer for an app creating company, as well as has been working for Sages running front-end workshops that mostly have to do with Angular. They talk about his blog post, buttons, and improving the user experience. They also touch on the importance of using simple solutions rather than overcomplicated ones, how to teach UI in training, and much more!In particular, we dive pretty deep on:
Panel:
Panel:
Panel:
Panel:
Panel:
Panel:
Panel:
Panel:
Panel:
Panel:
Panel:
Panel: Charles Max WoodAlyssa Nicoll Special Guests: Sacha GreifIn this episode of Adventures in Angular, the panel discuss the state of JS survey with Sacha Greif. This is a survey that is sent out to developers in order to see what people perceive the state of JavaScript is. They talk about his inspiration for creating this survey as well as discuss the data that was collected. This is a great episode for people who want to hear interesting data on JS in today’s current climate.In particular, we dive pretty deep on:
Panel: Charles Max WoodShai ReznikJoe EamesJohn Papa Special Guests: NoneIn this episode of Adventures in Angular, the panel discuss the Framework Summit. This is a conference that is focused on front-end frameworks, such as Angular, React, and Ember. Frameworks are such a central piece to front-end development, and so this conference is going to be detailed towards people who are working with multiple types of frameworks or want to learn about new frameworks. One of the biggest goals of this conference is to help end framework wars and bring people from different types of frameworks together.In particular, we dive pretty deep on:
Panel: Charles Max WoodJoe EamesAlyssa NicollJohn PapaWard Bell Special Guests: Alex EagleIn this episode of Adventures in Angular, the panel discusses Angular’s BuildTools with Alex Eagle. Alex has been working on the Angular core team at Google for the past three years and works on developer tooling there. He discusses the advantages of using a new build system, Bazel, and how using this system could improve your coding across the board. They also compare Bazel to other Angular tools and talk about when you would want to integrate Bazel into your tool belt.In particular, we dive pretty deep on:
Panel: Charles Max WoodJoe Eames Special Guests: Udo SchöferIn this episode of Adventures in Angular, the panel discusses NG Dynamic Forms with Udo Schöfer. Udo is web engineer from Nuremberg, Germany, with a focus on Angular, Node and Responsive Design. He is also the creator of NG Dynamic Forms. Udo discusses this topic and when and why it is best used, as well as the steps to use this library in Angular. He wanted to be able to give something back to the community and invites everyone to at least give it a try.In particular, we dive pretty deep on:
Panel: Charles Max WoodJoe EamesAlyssa NicollWard BellShai ReznikSpecial Guests: Minko GechevIn the episode of Adventures in Angular the panel discusses Angular Differs with Minko Gechev. Minko is a return guest to AiA, and is the founder o Rhyme and contributes to the Open Source community regularly. Minko is on the show to talk about Angular Differs. The discussion covers the details of the Differs and why they are important on the Angular platform. The topics covered are the concerns of differs, data applications and structures, problems solved and why it is good for Angular developers and much more.In particular, we dive pretty deep on:
Panel: Charles Max WoodJohn PapaAlyssa NicollWard BellShai ReznikSpecial Guests: Austin McDanielIn the episode of Adventures in Angular the panel discusses Reducing Boilerplate of Redux/NGRX Patterns in Angular with Austin McDaniel. Austin is an Angular Team Member, he contributes to the material project, is a panelist on the Angular Air Podcast, and much more. Austin talks about the boilerplate issues of Redux/NGRX Patterns in Angular. Austin and the panel discuss the fixes for these once difficult actions with NGRX actions. This is a great episode to understand the reduced boilerplate and libraries.In particular, we dive pretty deep on:•Issues with boilerplate
Panel: Joe EamesAlyssa NicollWard BellSpecial Guests: Eric Simons and Albert PaiIn the episode of Adventures in Angular, the panel discusses StackBlitz with Eric Simons and Albert Pai. the co-founders of thinkster.io, where their company javascript technology’s various frameworks and backend. Also, with the recent creation of Stalkblitz, which is the main topic of today discussion.Stackblitz it an online VS Code IDE for Angular, React, Ionic, and a few more other technologies are supported. This is designed to run web pack and vs code inside your browser at blazing fast speeds. Eric and Albert dive into the many different advantages and services available by StackBlitz and thinker.io.In particular, we dive pretty deep on:•Programming at 10-13 years old
Panel: Charles Max WoodJoe EamesAlyssa NicollWard BellSpecial Guests: Eudes Petonnet-Vincent and Matt Hippely In the episode of Adventures in Angular the panel discusses The Clarity Project at VMware with Eudes Petonnet-Vincent and Matt Hippely. Matt is a user interface engineer and has been working on The Clarity Project for a year. Matt has front experience as well as in many other aspects of the Clarity project. Eudes is a Web UI engineer, and well all piece of the stack in the project. Clarity is an Angular component library and full design system. The panel and guest discuss the build of the Clarity project, bootstrap, VMware, and much more.In particular, we dive pretty deep on:
Panel: Charles Max WoodJoe EamesAlyssa NicollIn the episode of Adventures in Angular the panel discusses why people are sticking with Angular JS (1.x). The panel talks about the pros and cons of working in Angular 1.x. Chuck talks about a quick poll and about those who are still using AngularJS 1.x and not Angular 2.x. The discussion covers resources, expertise, familiarity, community, stability, RXJS, etc. This is a great episode for those who want to learn more about reasons to why some abandon or stay with AngularJS 1.x.In particular, we dive pretty deep on:•Why are you still using with Angular 1.x, and not Angular 2.x
Panel: Ward BellJoe EamesCharles Max WoodSpecial Guests: Zack Chapple & Kim MaidaIn the episode of Adventures in Angular the panel speaks with Zack Chapple. Zack is a software architect at Career Builder , and is the founder and main organizer for NG Atlanta. Zack is on the show to talks about the inspiration for NG Atlanta and the origin stories of the conference. Zack describes the details and goals of the conferences concerning diversity, demographics, and technology.Also joining the show is Kim Maida. Kim is the technical content lead at Auth0. Kim talks about the demographics of women and the diversity of the conference speaks and attendees. Zack is on the show to talks about the inspiration for NG Atlanta and the origin stories of the conference. Zack describes the details and goals of the conferences concerning diversity, demographics, and technology.In particular, we dive pretty deep on:
Panel: Ward BellAlyssa NicollJoe EamesJohnCharles Max WoodSpecial Guests: Jesse SandersIn the episode of Adventures in Angular the panel speaks with Jesse Sanders. Jesse is the CEO of BrieBug, A consulting firm in Denver Colorado. Jesse talks about the interesting challenges his company encounters with helping their clients with form creative solutions. Jesse mentions being a developer for over 20 years and familiarity with many platforms.Jesse is on the show to talk about NGRZX, Entities, Redux States, etc, the panel asks questions about how this all applies to Angular. Jesse talks about the current complexities and how these tools handle events, components, etc. This is a great episode to learn more about NGRX, Entities, and Redux, and how they used with Angular.In particular, we dive pretty deep on:•What does BrieBug do for its clients?
Panel:Ward BellAlyssa NicollJohn PapaJoe EamesCharles Max WoodSpecial Guests: Peter Bacon Darwin and Megan Kingdom-DaviesIn the episode of Adventures in Angular the panel speaks with Peter Bacon Darwin and Megan Kingdom-Davies. Peter is an Angular Developer, known for maintaining AngularJS and the creator of Jammy. Megan is an event organizer with White October Events in the UK and has organized the Angular Connect Event. The panel and guest discuss the great environment of the conference and the business and community connections they form during the conference.In particular, we dive pretty deep on:•Angular Connect Conference details and what it is about
Panel: Ward BellJohn PapaJoe EamesCharles Max WoodIn the episode of Adventures in Angular the panel discusses Deploying Angular. Specifically, the panel talks about the complexities of the development server and CLI. Each panelist talks about their own paths on how they might deploy, the uses of guides, projects, tools or technologies and strategies they use to help the production. This is a great episode to grasp different approaches and tools to deploying Angular.In particular, we dive pretty deep on:•Is it easy Joe? Did you figure it out?
Charles Max WoodSpecial Guests: Chris DiasPJ MeyerIn this episode, Charles is at Microsoft Connect 2017 in NYC. Charles speaks with Chris Dias and PJ Meyer about Visual Studio Code and Live Sharing. Chris and PJ explain more on their demo at Microsoft Connect on Live Collaborative Editing and Debugging. Learn more about the new features with Visual Studio Code and the efficient workflows with screen sharing, and much more.In particular, we dive pretty deep on:
Panel: Joe EamesCharles Max WoodSpecial Guest:Justin SchwartzenbergerIn the episode of Adventures in Angular the panel welcome Justin Schwartzenberger to talk about Angular Air. Justin is a podcaster, product manager, and educator at Narwhal Technologies. Justin talks about his experience working with customers and contributing to the Angular community. Justin discusses the content of his podcast, Angular Air, and how it helps the Angular community learn all about Angular. This is a great episode for learning about other podcast platforms that focus on all things Angular.In particular, we dive pretty deep on:•What do you do at Narwhal and with Angular Air?
Charles Max WoodSpecial Guests: Amanda SilverIn this episode, Charles is at Microsoft Connect 2017 in NYC. Charles speaks with Amanda Silver. Amanda is deemed the TypeScript and future of JavaScript guru, and this year's speakers at Microsoft Connect with Visual Studio Live Share. Amanda shares what is new with TypeScript and how that is a kind of subscript to JavaScript. Amanda explains the big picture of TypeScript’s inception and where she believes the language will be most efficient and effective for JavaScript and TypeScript developers.In particular, we dive pretty deep on:
Panel:Charles Max WoodIn this episode of Adventures in Angular, Charles does a solo episode talking about entrepreneurship and the topic/course on “How to Get a Job.” This is an informative episode for those looking for a job as a developer and how to prepare your resume for your career search. Charles covers the core pieces of the course and specific areas of tailoring your credentials for the job you want to acquire.In particular, we dive pretty deep on:
Panel: Joe EamesAlyssa NicollShai ReznikSpecial Guest:Maxim KoretskyiIn the episode of Adventures in Angular the panel welcome Maxim Koretskyi to talk about Change Detection in Angular. Maxim explains that he enjoys reverse engineering and working with Angular. Maxim talks about working with Angular and React to figure out how the Change Detection works on both platforms. Furthermore, Maxim mentions that all his findings and on his blog on Medium.In particular, we dive pretty deep on:
Panel: Joe EamesAlyssa NicollCharles Max WoodWard BellAaron FrostIn the episode of Adventures in Angular, the panel’s discussion topic is about upgrading Angular. The panel covers preparation and the difficulties of getting started with the upgrade service. Notably, basic users do not understand the process of the updated with simple applications. Also, playing with the idea to rewrite your applications in Angular directly, or do we just upgrade?In particular, we dive pretty deep on:
Panel: Joe EamesAlyssa NicollCharles Max WoodWard BellSpecial Guests: Aaron FrostIn the episode of Adventures in Angular, the panel speaks with Aaron Frost. Aaron is a return guest and works at SaltStack. In this episode, the panel and Aaron ask questions about the upcoming NG Conf. 2018. The panel discusses the many exciting upcoming topics discussions, events, and speakers.Importantly, Aaron and Joe give a preview of the theme of the event. Aaron mentions, for this year, NG Conf. is going to be about what the community wants to hear about. This is based on recent surveys taken by developers and new coders. These particular details extend into to specific speakers and the level of expertise for discussion.In particular, we dive pretty deep on:•NG Conf. - Grand America - April 18-20, 2018
Panel: Joe EamesShai ReznikAlyssa NicollCharles Max WoodSpecial Guests: Bryan ForbesIn the episode of Adventures in Angular, the panel speaks with Bryan Forbes. Bryan has been working for Sight Pen a consultancy company that works with JavaScript and many others platforms. Bryan mentions that SitePen is well known for their Dojo toolkit. Bryan talks about testing Angular with the intern tool.Bryan and the panel dive into the testing of all sorts old and new tools and compared them to the Intern Toolkit. Bryan talks about the different kinds functions that are needed to compile and implement testing. The discussion covers tools like Testacular, karma, Protractor, and Leadfoot, and Intern, as testing kits for Angular.In particular, we dive pretty deep on:
Panel: Ward BellJoe EamesShai ReznikAlyssa NicollCharles Max WoodSpecial Guests: Paul Spears and John BaurPaul and John both work at Oasis Digital Solutions in St. Louis. Paul is the lead curriculum author for the Angular Bootcamp course. Both, Paul and John teach Angular to companies, public, private, and offer consulting to their customers.Paul and John speak about specific ways they approach teaching. Both teachers have a wide range of experience in teaching Angular. Paul and John speak about the most current best practices of teaching and learning Angular.In particular, we dive pretty deep on:
Panel: WardAlyssaJoeCharlesIn this episode of Adventures in Angular the panel tackles the topic of build systems for Angular. Since the building process is subjective to experience and options. The panel talks about different ways to build based on their own qualification and prior knowledge of things like web pack, system JS, and many more.Joe, Ward, Alyssa, and Charles discuss how Web Pack is used, and individual problems they encounter in areas of the CLI and other areas. Ward and the team discuss guides to the CLI and deployments. Also, some talks about working backward to figure issues out. Also the key four lines of code.In particular, we dive pretty deep on:
03:26 - Style Guides
08:57 - Naming Conventions11:51 - The Growth of the Angular 1 Style Guide14:41 - Style Guide Dislikes21:26 - Multiple RecommendationsAiA 154: Angular Animations with Gil Fink This episode of Adventures in Angular features panelists Ward Bell, Joe Eames, and Charles Max Wood. Special Guest Gil Fink is on the podcast this week to discuss Angular Animations. Tune in to find out more about this topic! [00:01:05] Introduction to Gil Gil is the CEO of Sparxys, which is a small consulting company that he owns in Israel. He has been working for Microsoft for nine years in web development. He wrote the book Pro Single Page Application Development. Currently, he is also speaking in conferences and consulting for companies in Israel. [00:02:06] Introduction to Angular Animation Angular Animation is a model that has been used since Angular 2.0. In the full version it received it’s own model and expanded from Angular core. It is based on Web Animation API and gives a specific language to write Animations declaratively using Typescript in the components. It is also easy to write. Animations are not used to make web pages a “swirling vortex of text.” It instead is something that is used to capture the attention of the user to let them know what is new or where they should pay attention. It gives the user a better overall experience. For example, how to show a user they have a validation error: use a red blinking border. It does not have to be sophisticated or complicated, but can be if that is what is wanted. [00:05:48] Web Animation API Animation mobile in Angular has been available for roughly two years. There is a function called animate which gives the ability for an application to be animated. Web Animation API runs animation for you but is not simple. [00:07:35] What kinds of things do you see people doing with Animations? A common thing for developers is to make Animations make transitions between pages in SPA. Animations also can be used for appearing, or fading in or out elements. More transitions can be made for panel, where they slide from one side to the other, which grabs the attention of the user. SVG and Canvas also are used for Animations by developers. [00:10:33] Starting with Animations Most developers are in a hurry to write their first animations. First, they have to understand animations because understanding concepts are helpful. Reading examples of what CSS 3 and Web Development API are can be a helpful tool. Gil suggests MDM and Mozilla to gain a better understanding. After grasping these concepts, read about how to use the Angular Animation model and how it was created. The Angular Animation model is actually not needed to create Animation in websites – you can use CSS 3 animation and Web Development API. [00:14:15] How do I add Angular Animations to my Angular app?
AiA 153: Conferences and Speaking On this episode of Adventures and Angular the panelists are Alyssa Nicoll, Joe Eames, John Papa, Charles Max Wood. They discuss attending and speaking at conferences. Tune in to listen to their opinions![00:01:23] Benefits of Conferences Joe believes that attending somewhere between two and four conferences is good for a developer’s career. The minimum should be attending one conference a year. Some companies believe that people are wasting time because they are taking time away from work. They are of the mindset that they could learn the same information from a video. But John looks at it as developers learning how to communicate. If developers use their time well, they can potentially solve problems and find ideas they have never heard of and can learn how to implement them at work.John believes the benefits to the developer verses the company are different. Developers could meet a potential employer who would pay you more than your current employer. For companies, if people want to leave, forcing them to stay may not be the best thing to do. Forcing someone to stay could lead to low productivity, which is not the best thing for the company. The more educated the employee the happier they will be, and happy employees stick around.Charles believes that the reason you go is for things you can’t do at home. These are interactions, new thought processes, and mindshare. Companies that don’t give their employees chances to go to conferences are missing out on reasons why they hired them in the first place.[00:09:00] Why Attend Conferences?If the goal of attending conferences is to try to be better than everybody else, there are better goals. Go to conferences for yourself and your own education. Go to be the best developer that you can be.Before you get to a conference ask - What are the problems you’re trying to solve at work? How do you keep up? How could a conference help me? How are people feeling about the technology? If you cannot find out information online, it makes it a huge asset.Charles once heard a financial expert say you should get three to five times out of anything you do as you put in. Be sure to make the conference worth it.[00:13:40] – New Trend at Conferences There has been a noticeable trend at conferences for smaller groups to not watch sessions. They do not go to workshops, listen to speakers, or seemingly network with other developers. Instead, they just go to the parties with their friends. This could be a reason employers feel it is a waste of time and money for employees to attend conferences. Alyssa still thinks that people will take away something even by simply being around like-minded individuals.[00:15:50] Companies Perspective on ConferencesCompanies will want people who have experience with speaking at conferences. They will want those people who have influence in the community they have been speaking to. But sometimes, once the company hires them, they do not want them to speak at any more conferences. They get the job because of the extra things they do, but now they want people to focus on the job and don’t want to risk people finding another job.People need to have a conversation about the values they and their new company have to see if they match. To do this they need make sure to ask questions to see if something they value, such as conferences, will be allowed to continue once they are employed. Some companies may not want them to go to or speak at conferences. Any company’s core value is to do business and make money. If they are not doing that then they cannot employ people. They may think that letting people attend conferences is holding up their production.People need to be sure to think about the concerns the company has when negotiating. For example, there was an employee that wanted to speak at conferences, but was so valuable to his company that he could not leave. That led him to train someone who could handle things while he was gone. People have to earn trust from their employer. Some people do not think about how to do this; instead they give away swag from the company or tell secrets while speaking at conferences. This is a way to lose trust and potentially be fired.[00:27:18] Alternative PerspectivesSome companies will send and pay for people to go to conferences; no questions asked. They will be happy that their employees were invited to represent their company. There may be rules about what they are allowed to speak about.One thing to do as an employee is to always clarify if the contract is the same before going to speak at a conference. Make sure to continuously ask, “does this still fit for me?”[00:30:45] Developers and Conferences As a developer, attending conferences is good for your career. Should attend two a year. There are no negatives. Could never talk to another person, and still have benefits from sitting in the room.[00:31:54] Becoming a SpeakerWhat do you want? All developers want different things. Some want to write great software, have a job, contribute, learn, but do not want to build a reputation. Some feel like they can make a difference and get excited about speaking. There’s not a right or wrong as long as you get what you want out of your career. Speaking is valuable and a good way to give back to the community.
[00:36:20] How do you get into speaking? Start speaking at meet ups. Talk for five-minute intervals. Afterwards ask people to give feedback and do not take it personally. It will help to make you a better speaker. It is easier to know what you need to improve.Meetup.com helps you to find places to speak. Contact the organizer of a meet up and ask to speak. Two to three times a year hire a speaking coach. Look at this as a perspective of a professional who can give you advice to get better. It is easier to have feedback rather than self-evaluate. This also teaches how to get better at communicating with people. Picks: Joe:Valerie KittelAlyssa:NG Houston John:Do not speak at the audience; bring them on the same journey you went through when you learned that thing you're speaking about. Charles:Angular Dev Summit
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
AiA 152: Multirepo vs Monorepo with Jeff Whelpley and Kushal DaveOn today's episode of Adventures in Angular, we have panelists Ward Bell, Joe Eames and Charles Max Wood. We have special guests, Jeff Whelpley and Kushal Dave. The discussion ranges from the organization of code bases to the benefits of using Monorepo vs Multirepo. Tune in![00:01:45] – Introduction to Jeff Whelpley and Kushal DaveKushal is CTO at Scroll, a start-up. Before that, he was at Foursquare, Chartbeat, Google, and IBM. He has worked in a lot of monorepo code base. Although he actually has experience working on a lot of Multirepo situations.Jeff is the CTO of a small startup in Boston called GetHuman that helps people with customer service problems. He has been on Adventures in Angular a couple of times before. He has also been in a couple of other podcasts before, as well as in the open-source community.[00:03:20] – Introduction to the issueTypically, when you’re working in just one or two people team, you don’t really have that many issues centered on dev process, coordinating changes between each other, and trying to figure out the best optimal way to organize your code. Most of the time, you understand the entire code base because you’re working with everything. It gets to be a much different problem once you get to have a larger team. In essence, everything is starting slow down because of different overhead related to the process that was needed in order to make sure got quality changes. You basically have to spend a lot of time and thought around your developer process, how you structure your code, how you physically setup, and organize your entire code base.[00:06:20] – How to organize your code bases?When Kushal worked at Google, everything is in a single giant repository. There are one or two exceptions for client code and some infrastructure things. It allowed people to feel that they could change any of the code and it made it easy to keep everybody in sync with the state of the code. There is some sort of workflow and process things that you have to change in order to get that right. Probably, the biggest one is trying to keep the repo from working in long running branches because things start to diverge. That was the model of Foursquare too.[00:08:15] – How do you run all of the CI across everything?The answer changes to different sizes. At Scroll and for most of the time that Kushal was at Foursquare, it was efficient to run all the builds on every commit. If you just have one mega build that just runs continuously, that’s good enough up until 30 or 40 developers. Once you hit that size, there’s a variety of build tools out there that you can use and understand the structure of your code base. Once you’ve used one of these build tools, declaratively indicate which artifacts depends on which libraries, and what the full dependency thing is, you can build only the relevant CI’s. You can decide whether this change only touches this binary or this test.Chuck also like the approach of having everything in master. If it was experimental, it would still go into master and their CI would effectively run the different builds with the different feature flags. If what you did broke something that somebody else was working on in a process, you could just adjust it midstream.[00:16:00] – Gatekeeper processThe gatekeeper process protects the whole code base but at the same time, it’s in the layer of bureaucracy.We’ve been reviewing every piece of code before it’s allowed to land in master. Everybody on our team commits multiple times a day to master. All the changes, as much as possible are really small, especially the feature flag check. In that world, there is this bureaucracy. Hopefully, it’s not holding you up too much. The flipside of that is when you’ll feel really confident that you didn’t break anybody who depends on you and you’re going to have to revisit this change a month from now.For the past 9 months or so, Jeff tried a bunch of different configurations. He tried monorepo and other configurations from the other end of the spectrum - many small packages. As he was interviewing people with their different setups, they’ve all encountered the same types of problems. Regardless if you’re using monorepo or not, as long as you’re trying to keep your changes small and specific, and implemented quickly, it can alleviate any other pains.[00:22:10] – Guard railsThe guard rails are just the reviewers. For us, every change that’s getting reviewed means that in some extent, there’s a human check on that. I’m not sure if you can but I certainly know that Reviewable and Fabricate both offer sort of wide range of configuration options. I can imagine the world in which you can programmatically keep people from landing changes that didn’t have that level.In Github, there are guard rails. That actually helps the reviewers. It’s reassuring to have some technology that this person is associated with this set of boundaries. If you want to step outside of the boundaries, they’re going to have to get some other person who understands the code that’s outside of the line to join in approving that. If their organization is big, this is something that they might have to think about.Jeff advises to really be careful about what you’re doing. Is this a change where you are just bumping version numbers or is this something that you have to change a business logic?[00:28:15] – Allowing different people to upgrade dependenciesThe only way Kushal has ever seen it done is a brutal all-nighter by somebody who has to sit there and get everything working. But one of the things that Google does is they develop a lot of patterns about how to refactor code to make things easier.One solution that Jeff sees is the complete opposite of the spectrum from monorepo. Dr. Gleb Bahmutov is a huge fan of open-source smaller repos - a lot of the mentality of keeping things small, separate and distinct. He’s decided that he’s going to stick in the many repo universe and just create tooling to solve some of these problems. For versioning, he runs this server that detects that a new version has been published. It will automatically try to update it and run all the tests. But according to Kushal, if you have different repos, you can move differently in terms of dependencies but if you’re now out of sync, you may suddenly have incompatible dependencies across what you’re doing. It’s a question of when you want to deal with the problem.Chuck talks about the ways you can get out of sync. With the multirepo, you can get out of sync not just on the dependencies and the build process, but also on the API’s. If you have a module that you’re working on over here and whatever are consuming it on the other side as a driver may not be updated yet so it doesn’t talk properly. Jeff also noticed that with Angular DI, if you aren’t actually using the same version, you run into issues because it has to be the exact same thing at every level or else the injection token is different.[00:36:50] – Develop within Monorepo or develop in a separate repoChuck thinks that it depends. If there are a lot of dependencies and shortcuts that he can take by relying on the monorepo, he will do it on the monorepo like if it auto loads the correct libraries automatically. And then, they don’t have to do a whole lot of setup. If it’s small, independent, and it’s going to move quickly, then, a separate repo may be the right answer.Kushal adds that there are a lot of benefits in doing it in the monorepo. With feature flags, you have the benefit of reviewing it. It also allows you and others to keep up with everyone in terms of breaking API changes, other than having some brutal merge.Jeff will do it in a separate repo. If this an experimental thing, it disturbs people less. It alleviates the notifications that go on. That is why Kushal’s team also built a lot of custom Slack cooks in order to get some notifications tailored to the parts that they only care about.[00:44:50] – How do you work it out so that things aren’t so tightly coupled?There are no circular dependencies between your packages even transitively. As your monorepo grows you may eventually have some tooling that requires that for your build system. Can this layer have this type of functionality? Or does it need to be moved into a new package? It also means it improves your architecture.Kushal’s team is working on Java. This object that users and organizations create can know about each other’s’ objects but the users can never depend back into organizations or vice versa. You can think of the layered model of networking. We have the pure data model objects are not allowed to know anything about the service layer that interacts with the database. The database can know about those model objects. The web tier can obviously know about both the model objects and the service tier because it utilizes both of those.[00:47:30] – How are those relationships defined?They are defined in build files. If you look at Pants or Blaze or Buck, all those build systems have explicit dependency configurations so you can sort of keeping any of those invariants from being broken. But Kushal’s team just have a Wiki page that lists out the rules. They also have a test that looks for any cycles in any package dependencies.Jeff’s team created a CLI tool that walks down all subdirectories from where they’re running it. It finds all the package JSON in all your subdirectories and it creates the dependency graphs. They haven’t fully moved to a monorepo but they did start to consolidate. They have a couple of larger repos. This tool will see the dependency graph for all the NPM modules and also see the dependencies between the repos based off of the NPM module dependencies.[00:50:20] – Multimonorepo It’s not perfect to have one larger repo that has basically all of the none-deployable codes. Jeff and his team have a separate set of repos for the actual deployable code. They haven’t
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
AiA 151: WebVR with Aysegul YonetThe panel for this episode of Adventures in Angular is Alyssa Nicoll, Joe Eames, Lukas Ruebbelke, and Charles Max Wood. Special guest Aysegul Yonet is here to discuss WebVR and visualizations. Tune in to learn more![00:02:36] Can you really do VR with Angular?Yes. VR is a different kind of API.[00:03:07] Can you give a brief explanation of how Web VR works?Web VR is currently an experimental API. It creates 3D experiences that interact using the gamepad API. Angular and Web VR work together by writing more declarative experiences.[00:04:05] What do you mean by it being experimental?Things are changing quickly. Not all browsers are implemented. It has to be enabled in Chrome, it can be enabled in Firefox, but not all other browsers implement it. A 2.0 Web VR version is being created, which will be similar to the version that is out now.[00:05:05] VR in a Predictable Manner Not enabled in some of the browsers but can check it and leave a message. Once you have an available browser, there is a consistent interaction.[00:06:30] What kind of hardware is required to run the VR experience?VR is now very accessible to everyone because of Web VR. Google Cardboard is one of the cheapest ways. It is around $20. Samsung VR headset is free. Also can purchase cheap hand controls. Developers do not have to go through app stores to release a product, which makes it cheap for them as well.[00:08:30] What are three cases that you see Web VR that could be disruptive?One case is in the education field. Google Expedition is creating an app for teachers to create experiences for students to see different places such as museums. A second case is in the medical world. Web VR can be an amazing pain killer. It has been used in Leukemia patients. For example, kids don’t want to take medication but using VR they can fight the disease itself. A third case is the Smithsonian Museum in DC. Artwork was scanned through VR and 3D experiences created through that.[00:14:35] Where would you recommend we start to try out VR?A-Frame is the easiest to use for beginners. You don’t need to know how to use 3D. It has Angular components. There is also Play, where you can take any experience you want and work off of that. Sketchfab is an app where you can use 3D models. There is also a Google app that takes 360-degree 3D pictures and turns them into experiences.[00:16:44] Would those 3D pictures have sound or just an image?Yes, it does have sound as well.[00:17:52] Does A-Frame have components that you feed data to?It is just like any kind of Angular component. It seems foreign to web developers because you are creating a scene. But A-Frame makes it easy for you: just have to add the objects itself. You have components for a scene.[00:19:14] How do you program the interactions with objects in Angular/Web VR app?Interactions are not the easiest to program. Trying to solve the problem itself. You can take data through the Gamepad API. You can also use Itracking where you look at an object and select it.[00:20:14] How long have you been doing this?Not long - she was “dying to work with WebVR.” She had a chance to work with Play and had fun.[00:21:00] Could I built a desktop app with Electron? Will it work in Chromium? Yes.[00:21:20] Will it work in the embedded Safari or Chrome Views that you get on Android or the iPhone?Not sure. But it can be loaded unto a website and downloaded onto your phone.[00:23:00] Fairly approachable if you have a SmartPhone.MergeVR has a Goggle and Cube. It can create VR experiences for kids. The product is affordable: only $60 for Goggles and the Cube is $20.[00:24:20] How do you test it?Hard to test because it is visual based. There is a Chrome plug-in that helps. The mapping is very mathematical, which is an easy part to test. [00:25:30] Is there anybody in the WebVR space that you admire?A-Frame team has done a great job. The 3JS creator Mr.Doob has been developing for a long time, before the community there is now. Companies have been using his stuff for years. Brandon Jones, who is implementing WebVR on the Chrome team.[00:34:47] How is VR development different from web development? Other than the interaction, writing the code isn’t all that different. The tool used was created for websites with 3D capabilities. Usability is different. There is an adjustment curve with VR: people navigate VR with a mouse better than with a headset.Picks Lukas:
AiA 150: What’s New with Ionic with Mike HartingtonIn this episode of Adventures in Angular the panel is Ward Bell, Alyssa Nicoll, Joe Eames, and Charles Max Wood. The panel talks to special guest Mike Hartington about Ionic. Tune in to learn more![00:02:02] Introduction to Mike HartingtonMike is a developer for the Ionic framework. He helps people succeed on Mobile.[00:02:40] What have you been working on lately?Ionic is currently going through an investigative phase. They are moving things to a vanilla JavaScript state and web component based architecture.[00:03:02] What do you mean by web component based architecture? Throughout all different frameworks (such as Angular, React, Ember) and libraries have a similar concept of a reusable thing. It is a custom element they can ship, which becomes limiting. It only works in their specific framework because the API capability isn’t there. Ionic wants to make something that works in all frameworks.[00:04:27] When you’re talking about web components, you’re talking about the idea of components?No, talking about the web standard itself.[00:05:25] What does this mean for people who are used to the way Ionic works with Angular?When implementing these experiments in new releases, it shouldn’t change for people who are currently using Ionic and Angular; everything pretty much stays the same. There is a slightly smaller payload, but that’s it.[00:06:32] As essentially as Angular developers, we will actually be interacting with an adapter?More or less. There would have a single Ionic Angular package. Everything it needs to have the web components talk to Angular would already be including as soon as you started the entire app.[00:07:16] If I became another kind of developer, we will be able to get the same experience because there will be a way to interact with other web components?Yes, that’s the vision. It was the idea when we first started Ionic. It is easier to implement now than when Ionic first started.[00:09:20] Do you think it is limiting to our creativity as developers? Can still create something new within Ionic and have something more custom to your needs.[00:12:26] If I have something that adapts to something else, is that going to impact performance?It shouldn’t. The code would not be heavy; it would be vanilla JavaScript. It would run outside of your framework. It could run faster because they are default APIs. It allows for an extra layer and everything Angular can do will still work with a web component.[00:15:15] Efficiency and simplicity of web components implementation frees you from having to carry the payload of a general application component framework. Is that where you’re going?Generally. The building time of an app is APIs Makes sense for application development but not controls.[00:16:25] Does this translate all the way up to desktop browsers?Becomes more useful because web components uses browsers own APIs. Overall payload ends up being smaller. Smaller network area users can take advantage and it can be faster if a large desktop application is used.[00:17:35] Is there a direction Ionic has?Ionic understands hybrid technology is going to be around. Some people want distribution through an app and some just want a website. Ionic is catering to both parties. At the end, browser will implement APIs that native devices have.[00:19:00] Do you see a move away from the phone gap approach towards PWAs or do you not know how it will play? Just released the numbers from a developer survey we sent out. There is a healthy mix between people who want a native binary and progressive web apps.[00:19:35] Will Ionic continue doing progressive web apps and splitting the difference?Ionic will continue pushing for progressive web apps.[00:21:00] Ionic and Augmented RealityHe doesn’t know. Has seen a few people that has a HoloLens. In the future, Ionic could possibly use augmented reality.[00:26:54] Intro to Mike at Dev SummitWill speak about Ionic components across multitude of frameworks. How to take advantage of tools that Ionic has to use to create own custom components that work across all frameworks.Picks Alyssa:
Joe:AiA 149: Angular, Web Bluetooth, and IoT with Uri ShakedIn this episode, Shai Reznik, Ward Bell, Lukas Ruebbelke, and Charles Max Wood talk to Uri Shaked about using Angular with Web Bluetooth and IoT.[00:02:27] – Introduction to Uri ShakedUri is an Angular GDE from Israel. His Angular Story episode is here.[00:03:21] – Introduction to Hardware with AngularAngular allows you to build web applications that scale quickly. For hardware devices, you need some kind of interface. Instead of a button, you have a mobile app or web application. This is one place where Angular comes into play. Building control panels, etc.You can do this with pure JavaScript or native mobile apps as well.[00:05:20] – Does it run on the IoT device? or on the web?It can do both. You can run Angular on a webserver on a Raspberry Pi or you can use Web Bluetooth to connect to the IoT device.[00:06:45] – What are the advantages of using web technologies?There's no hardware setup. And using Angular Material or Ionic, the UI looks right without spending a ton of time.RxJS allows you to gather sensor data from accelerometers, heart rate monitors, etc. connected via bluetooth.[00:09:20] – The physical webAn IoT device that broadcasts its own URL. You can then interface with the device simply by scanning for and browsing to the device. One example is walking into a room, scanning, and then controlling the lights without installing an app.[00:10:34] – SecuritySecurity is optional on Bluetooth Low Energy. Bluetooth devices used to pair using pin codes and they got set to 0000 or 1234 by default. So now BLE devices don't require it. Some devices add security on top of bluetooth or use the pairing mechanism.Security is an ongoing concern with IoT in general. The devices that Uri has played with don't implement security.Uri actually had an audience member hack into the smart bulb he was using during a demo.[00:15:08] – How do you manage your connection to the device through Angular?Uri uses async/await to manage the promises based functions that allow you to connect to the device. He wraps all of this in a service.The bluetooth terminology used for the functions that manage the device are also called services. Don't get them confused.[00:16:48] – What's the most useful thing you can do with this?Connecting to an EEG headset that measures brainwaves. Uri wants to allow headset owners to perform EEG experiments in the browser. Otherwise, they have to set up a bluetooth dongle and install python and some libraries to make it work. He'd like to make it simple enough to browse to a webpage and click "Connect."He'd like to show the user pictures and then guess which one you're looking at.[00:19:58] – What is the most useless thing you've build with this?Uri 3D-printed a robot and installed an accelerometer into it and connected it to a WebGL based system to show the orientation of the robot.[00:22:32] – How do you get started?You need a browser and a bluetooth device. A smart lightbulb or a robot. You can use your smartphone to simulate a bluetooth device. Uri wrote an Android app that simulates a smart light bulb. Then you can connect the app to your computer's browser and control the smart bulb app from your computer.[00:25:00] – Ward has a proposal for UriConnect lights in your t-shirt to an arduino device and control it from your phone. Web Bluetooth is much simpler than native APIs for Android or iOS.[00:29:45] – Commercial applicationsPhysical web applications and connecting to remote tools and sensors.Smart counters for your electric meter.Jen Looper's blog post on web bluetooth and beacons.The Louvre uses beacons.[00:33:00] – The physical webUri ran a beacon that broadcast his personal site. He took his trash out and one of his neighbors kept getting a notification about his website on his phone.PicksLukas Ruebbelke
Shai ReznikAiA 148: What’s New in NativeScript with TJ VanTollOn today's episode of Adventures in Angular, we have panelists Alyssa Nicoll, Ward Bell, and Charles Max Wood. We have a special guest, TJ VanToll of Progress. If you want to stay current with NativeScript, tune in![00:01:55] – Introduction to TJ VanTollTJ works as a Developer Advocate for Progress, which is a software development company behind KendoUI, NativeScript, and few other tools.[00:02:20] – NativeScriptNativeScript is completely free, completely open-source tool that lets you build iOS and Android native apps with Native user interfaces using JavaScript. It also provides built-in support for both TypeScript and Angular, as well. If you’re an Angular developer, it’s a tool that you can use to take Angular and build for Native iOS and Native Android.[00:03:15] – Native apps using JavaScript core or v8 on AndroidNativeScript uses Native UI components so they’re not using web view, the DOM, HTML, etc. For people that are coming from an Angular background, your apps look like Native apps. They’re using the same building blocks that you’d use if you’re building your app straight up in Xcode or Android Studio. You’re still building your apps the same way, the same file and folder structure, routing, etc. But the real learning curve that it takes to build NativeScript apps is that you have to use their user interface components to build your apps.[00:05:35] – Template syntaxIf you’re building a fairly complex Angular app, when you have all custom components, it’s going to look exactly like a NativeScript app. It’s basically using a suite of custom Angular components vs. using divs and spans as you’re building blocks.Angular is an optional dependency. NativeScript, at its lowest level, it’s just a technology that’s allowing the communication between JavaScript and these Native objects. The reason why the team spends a lot of time working with Angular integrations is that the model that Angular uses happens to be a really good fit for NativeScript. Any JavaScript developer who doesn’t really like using frameworks at all, using these components and syntax that they’re not familiar with could make their learning curve a little bit heavy.[00:08:05] – What’s new in NativeScript Over the last 6 months or a year, the team’s focus has been performance, tooling, and plug-ins.Performance:In the last release, specifically, NativeScript 3.0 was shipped back in May. That release is really the combination of profiling over the NativeScript source-code based on how fast your apps start up, how you can render your UI, etc. There is a cost to working with NativeScript because we are letting you write your source code in JavaScript. The team’s effort has been in really optimizing how fast you can paint your UI’s, how fast you can transition from one page to the next, the startup time, etc. One of the performance penalties that NativeScript has is because you’re using JavaScript, there is one step that truly Native apps don’t have. Specifically, Angular is not necessarily known for being the world’s smallest JavaScript framework. But Angular is being known for being very tool able. So the team shipped a Webpack plug-in that helps you reduce the footprint of your app, which means faster start-up times when you’re using Angular with NativeScript.Tooling:The other thing that’s related to tooling with NativeScript is the command line interface. You build NativeScript apps with the command line interface. The team is working on adding some more visual tooling, more like a companion to the CLI. There are problems that visual tooling can solve like how do you build your icons? How do you deal with splash screens? How do you deal with some of these Native configuration files? There is a thing called NativeScript Sidekick that can help you with some of these tasks. There’s an early beta out now.Plug-ins:The team purposely try to keep NativeScript core light, trying to keep our footprint small. TJ encourages developers, on your own team, and the NativeScript community to do that to your plugins because the NativeScript plug-in ecosystem explodes over the last few months. There are somewhere over 500 plug-ins. Their new plug-ins market place is plugins.nativescript.org/ that shipped several months ago. Now, they’re trying to work to add some consistencies to the plug-ins and adding some documentation around as well.[00:13:25] – NativeScript 3.0 upgrade and compatibility with NativeScript 2.0It’s like Angular 2.0 to Angular 4.0 in a sense that there are few breaking changes but for most apps, it’s going to be fairly transparent or fairly trivial to update. It had some breaking changes with NativeScript plug-ins and one of the main reasons that they bumped the version number up is part of that performance changes to specifically render your interface faster. They also have to change their layout mechanism and some of the API with the NativeScript visual tree. Those are things that are unlikely to hit your common app because you’re probably just coding using their Angular components, in which case, you don’t necessarily need to know what’s going on under the hood. The team also worked with the plug-in authors of the top 30 or 40 most downloaded plugins out there to make sure that they were absolutely ready to go for the launch date for 3.0.If you are getting trouble with the upgrade, you can reach out on their forums. They’ve been trying to tackle these issues when they come up.[00:15:30] – Communication, upgrade, breaking things, and bugsProgress, as a company, haven’t done project quite like NativeScript before. It’s a project that’s completely open-source and completely free. They want to give people some freedom to of experiment and build their own things. But they try to be as transparent as possible on what we’re trying to do and reach out for feedback.They have a NativeScript Slack channel, which has a lot of people in there. They’re the first point of contact when making changes. And for the actual upgrade process, they try to actually put a good effort to get plug-ins where people have put on a considerable amount of effort into them.[00:17:35] – NativeScript 4.0Debugging:If you’re a Visual Studio Code user, you can now just directly do this step debugging directly within the debug tab in VS Code for your completely Native iOS and Android apps. The team also launched support for the Chrome developer tools for NativeScript but they’re only available at a very limited capacity right now. Right now, in the Chrome dev tools, the console works and you can see network request but it’s not the full experience that you’d expect if you’re using those tools for web apps.Visual tree:One of the big pinpoints when it comes to learning NativeScript is learning how to build a visual tree with NativeScript. You can mess with CSS in your web apps, you can play around with layouts, play around with colors, etc. That’s possible to break that to NativeScript as well.Performance:The other big thing is again related to performance. We’ve got a lot of efforts going on at the moment, specifically, around start-up time. I mentioned we shipped a lot of performance-related things for NativeScript 3.0 but most of those were focused on the runtime experience – how fast we can paint your UI, how fast we can paint more complex Native user interfaces. We’re not turning our attention more to just how fast we can start-up your app and what sort of things we can do to optimize that and bring that number down as much as possible. A lot of that involves how can we fight with web configuration files to get exactly what we want, what are the best ways to reduce the number of files we’re using, use whatever we can to reduce that bundle size.The last that’s related to toolings is some of the visual tooling that we have. They think they can bring some fairly powerful behavior to NativeScript developers. In the past progress, they've had some premium tools for working with mobile apps that let you do things like build apps in the cloud. Say, you are a Windows developer and you want to build iOS apps, we have some premium tooling that could do that today. We think we’re going to be able to bring that to the open-source version of NativeScript, sort of make that work with directly within the NativeScript CLI.[00:21:15] – Store on distribution of appsWith NativeScript, things are going to work exactly the same as if you’re building things from the ground up with Xcode or Android Studio. NativeScript CLI spits out the Native app package - that’s .apk file for Android and .ipa file for iOS. You just head out to the Native stores and actually register your apps and use those stores as the distribution model to get your app out to your users.There are certain people, especially companies, that don’t need to distribute their apps publicly. Think an app that you need your internal people to have, maybe they’re sales rep, maybe they’re doing an inventory job. In Progress, they sell some of the tools that you can use to distribute your apps locally to users. Because it’s generating those exact same Native binaries, once you have that, you can use any iOS or Android distribution model that you want to use.[00:22:30] – Start-up performanceOne of the big performance advantages that Native apps have is you don’t necessarily have to deal with a network. In terms of media files, a web app might need to worry about your initial load of image assets or video assets. But with Native apps, you have the ability to package that in the file.The specific cost when it comes to start-up time is not getting JavaScript from the network. The cost is actually the registration of your JavaScript code with v8 or JavaScript core. It’s the same reason that there’s a cost for that in the browser if you feed Angular into v8. There’s a cost that it will take to be able to parse that thing and run with it.[00:25:30] – Lower cost for low-powered devicesTJ has zer
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
AiA 147: Codelyzer and Static Analysis Tools for Angular with Minko GechevThe week on Adventures in Angular features panelists Alyssa Nicoll, Shi Resnick, Lukas Ruebbelk, and Charles Max Wood. The special guest this week is Minko Gechev who is here to discuss Codelyzer. Minko is currently working on a start up. Angular JavaScript is the programming language that excites him the most.How do you work in a start up and still have free time?He tries to find an overlap between the work he's doing in the startup and work he does in his spare time. This is why he had previous work that was completely Angular (Angular Seed). This startup is more complicated because the overlap isn't as much.What is Codelyzer? Last year, he worked on the Angular Style Guide. He thought it was a good idea to have an automated way to verify a given project that follows the Angular Style Guide. He built on top of that and built Angular and provided similar style checks on top of templates, Angular CSS Styles inside of the components, and the Angular expressions inside of the templates. Codelyzer is a tool for static code analysis for Angular applications.How is it used? It can be used as a set of rules on top of tslint. You install it with mpm. Then tslint performs static analysis and verifies whether the source code follows some style guidelines that our team has agreed upon. When Codelyzer is used, we can also analyze the templates on Angular applications. After that, you can confirm it follows these rules by running tslint on top of the entire project.How many of the default tslint rules do you agree with?Minko states that that is a lot of tslint and Angular rules that align and that he agrees with most of them. He does admit there are some he finds annoying, such as specific semi colon rules. Overall, he believes that if the team has agreed upon the rule, it is following in order to avoid arguing.What do you recommend as the best way to add Codelyzer to a project that started without it?He thinks you should add one rule at a time. All the wordings will be fixed one by one, eventually fixing the entire project. He has also started working on style analysis on top of the application, which is performance analysis. He doesn’t know what data the application will process. But he still considers that a given component will have performance if it has a huge -- in the template. So static analysis we can find such templates and eventually warn the users about eventual performance issues that are possible.How hard is it to add or change in Codelyzer? It might be slightly harder compared to tslint because there are more things that can be statically verified. In Tslint there's a visitor pattern. There is a classical design from the Ganga; it is used for the reversal of syntax 3 of a Typescript code. So when you implement the visitor pattern, you visit a specific construct, verify whether the name follows some guidelines. It is pretty much the same thing in Codelyzer but you can also implement the same visitor pattern for visiting the template of the component. Currently, the project has more than 20 contributors. It looks complicated but not if you spend 30 to 40 minutes looking at the code.What was the motivation behind going deep into Angular? The style was easy for static (automated) verification. This way saved a lot of time from code reviews. Code reviews still have to be performed, but at least can skip the verification from style guides because they can be automatically done.He likes compilers, it is the front end of a compiler: analyzing Syntax 3 part of a compiler itself interesting algorithms. There is another rule from Codelyzer being worked on that isn't completely stable yet. It is to find out which styles are actually used inside of the template. Codelyzer can find out some of the styles that are no longer applied to some of the styles within the template. This is not ready yet but it will be ready in a couple of configurations.Is the idea of searching through of finding either redundant or non-used style, is this something Codelyzer's doing for the very first time (no one has ever done it) or are there tools that this would replace?For Angular, there is no other tool like that. JavaScript or HTML may be close. The Browser can do that.If I want to write a rule do I take the abstract syntax and tell it what to look for? How does that work?You can’t learn it by heart, so I usually copy and paste the existing code and then modify it. It is a standard typescript rule so you need to provide an abstract rule; you'll need to provide the visitor. If the rule is super complicated, you need four visitors.Are you relying on tslint to break things down into tokens and the abstract syntax and then doing the work from there? Yeah. I did some extensions of tslint. Just extending tslint because it would have been too much work to create something from scratch. He is relying on tslint’s error reporting.So in order to set this up on a CI machine, it needs to be able to run node and install some mpm packages?Yes. Run node, install tslint, install Codelyzer and have this rule directory with the Codelyzer rules inside tslint.Is there a visual proof for knowing what the rule does? There is documentation on codelyzer.com/rules.Picks: Shi:
AiA 146: 10 Ways to Lose a Developer with Bonnie Brennan and Keith StewartOn today's episode of Adventures in Angular, we have panelists Ward Bell, Alyssa Nicoll, Joe Eames, and Charles Max Wood. We have special guests, Bonnie Brennan of ngHouston and Keith Stewart of CollabNet. The discussion ranges from the Most Common Reason for People to Leave to Mandatory Happy Hour that companies have! Stay tuned![00:01:05] Introduction to Bonnie Brennan and Keith StewartBonnie is an Angular architect at Houston, Texas. She is the founder of ngHouston. She also runs Code Bridge Texas with her daughter. They do free programming workshops for girls. She’s going to be at a couple of conferences coming up. They’re going to AngularMix and FrontEnd Connect with Alyssa.Keith, on the other hand, works for a company called CollabNet as a UI Tech Lead. He is working mostly on UI’s for DevOps-related products. He is also a frequent panelist on the ngHouston Meet up broadcast that Bonnie runs and a curator on ngDoc.io with Alyssa and Joe.[00:03:20] – Most common reason for people to leaveIf Bonnie has to narrow down, she thinks it’s the tech stack. Some companies have a lot of legacy code that needs to be maintained but at the same time, when you are a developer who spends a lot of time on emerging technologies, you want to be working on this new stuff that you’re learning.While working on this course on how to find a better dev job, Charles surveyed people on Skype or the phone. They feel stuck and not moving ahead.[00:10:50] – In the culture, if you’re not a performer, then, you’re not trying hard enough?Joe thinks that we have this problem in this industry that if you are not going to be blogging and speaking at conferences, then, you just don’t belong. Ward also thinks that you don’t have to be a performer to contribute to a great development environment. But for Bonnie, being a performer is not exactly about getting up on stage. It really is about caring enough.Alyssa tells about the gradient of the type of person. There’s a person like, “Okay, this is just a job for me but I still take pride in my work.” But if you’re in the mindset of “Hey, I have kids or I have a wife outside of this. But I’m still giving it my all while I’m here.” Then, it’s perfectly reasonable. Keith also tells about the two different types of people. The generalists, the folks who are on the bleeding-edge, they don’t necessarily master one of those, and the other folks who get really good at one particular thing that they’re working on.Ward cites an instance where you’re in an enterprise and you have a lot of very important legacy systems that need a person who cares about the legacy stuff. You can’t have a company that has all people who have to be on the bleeding-edge all the time.[00:18:55] – Type of developers that companies want and how to keep themWard mentions how professional growth is important. The opportunities for people to work on the leading technologies is not always something that every company can offer but they can sprinkle these opportunities here and there. It can be done but if it’s not, there are things that you can do with some of the legacy applications to make them more palatable to work on.Charles suggests to companies to show the developers that you care, you are listening. It’s on the roadmap and you’re going to get there.[00:22:55] – Is boss on your list of Ways to Lose a Developer?Bonnie can’t think of the time that she has left because of her boss. But the company culture is an important thing because however, the upper management feels about culture, that’s going to trickle down.One issue about Charles’ boss is that he is very controlling. Another issue is he was specifying the requirements for the application and he wasn’t very good at staying consistent with it. They wind up building one thing but gets angry with them because they hadn’t built what he wanted, even though it was exactly what he specified.Bonnie also had a situation similar to Charles where the project requirements kept changing while she was writing the code. If you feel like you’re going to work to be frustrated again, it doesn’t matter what technology you’re using, it doesn’t matter how you like the rest of your co-workers, eventually, you’re going to burn out.[00:27:00] – Not being paid enoughWhen you’re not making a whole lot of money, Bonnie thinks it can be a big deal but it’s not the biggest issue. For Keith, if he would be weighing two companies, he’ll also choose the company with the good tech stack instead of the company which pays a little higher. But Ward thinks that it is a privilege to be in an industry where even in the low-end of the salary rank, you tend to be pretty comfortable.[00:29:55] – Effective ways to show your appreciation to a developerBonnie refers to an instance when the boss gives credit for a developer in a meeting on how he did a great job on a feature. And on the flipside, the worst kind of boss is the boss that says, “Look what I did.”But Keith finds it a difficult question because it might be different for other people. Some people like to be called out in a meeting and say, “You did a good job.” But some folks would like that to be a little more behind the scenes. Or some folks might be looking for a bonus instead. So you might be able to read your people.For Alyssa, she likes the boss who regularly checks in even if it’s not a pat on the back because it just shows that they care about the process. Ward speaks of the boss who asks your opinion on an important decision, technical or otherwise.[00:37:40] – RecruitmentKeith never likes the recruitment process of companies which bring a lot of people in and give them coding exercises on a whiteboard. So they built a small application that’s similar to the application that the folks will actually be doing.[00:41:05] – Remote vs. working in an officeAlyssa loves being remote. She mentions she has ADHD so she was distracted in an office setting. It’s important for her to set up her environment to be more productive. Bonnie also has been working remote for 3 years now. It used to be difficult to communicate but now, we can just use video call.But Keith finds people more engaged in a meeting when it’s in person. An office space can add a lot of value to a team. Ward points out that you can also be distracted as well by working remote. In Google, they all work in the office. Even though they have open office plans, sitting right next to each other, they trust the people that they can do well in that environment. People put on headphones when they’re really focusing on something.[00:53:20] – Mandatory happy hourCompanies which have a snack room, ping pong table, foosball can contribute to company culture and make it a much more attractive place for developers. But Alyssa gets scared a little bit when programmers go overboard and sometimes you’re not into it as much as they are.PicksWard Bell
- Progressive Web Apps (PWA)
- https://www.google.com.ph/url?cad=rja&cd=1&esrc=s&q=&rct=j&sa=t&source=web&uact=8&url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DcmGr0RszHc8&usg=AFQjCNFteiHS7s7K1wYiwwm9_OlD9BsM1A&ved=0ahUKEwiWj_3m6vvUAhVLUbwKHcSeDjMQtwIIJDAA
Joe Eames
- https://www.google.com.ph/url?cad=rja&cd=2&esrc=s&q=&rct=j&sa=t&source=web&uact=8&url=https%3A%2F%2Fwww.netflix.com%2Ftitle%2F80103734&usg=AFQjCNHF57izk0IQJ8XmF1Ay63ML83JpRg&ved=0ahUKEwjcxtny6vvUAhUBxbwKHYkrAbgQFggwMAE
- Keith Stewart
Charles
- Angular Dev Summit
- https://www.google.com.ph/url?cad=rja&cd=3&esrc=s&q=&rct=j&sa=t&source=web&uact=8&url=https%3A%2F%2Fwww.amazon.com%2FCamelBak-53843-Eddy-Water-Bottle%2Fdp%2FB01787PW8W&usg=AFQjCNETAQ4PYgXgV_UqLnJdxO5nvn38HA&ved=0ahUKEwjDjYT_6vvUAhWHTrwKHUJMBCcQFggvMAI
- https://www.google.com.ph/url?cad=rja&cd=2&esrc=s&q=&rct=j&sa=t&source=web&uact=8&url=https%3A%2F%2Fwww.amazon.com%2FExtreme-Wireless-Speaker-Blue-HX-P430BL%2Fdp%2FB00CDGSNPS&usg=AFQjCNGcC6MiTlBLxq7gRuqMCjOP4b753Q&ved=0ahUKEwjQwdOR6_vUAhVGwbwKHfN1BbcQFggpMAE
Bonnie Brennan
- https://www.pluralsight.com/courses/angular-2-reactive-forms
- https://toddmotto.com/ultimate-guide-to-learning-angular-js-in-one-day/
- https://twitter.com/bonnster75
- https://www.youtube.com/channel/UC3cfVUpgrO5TK6cvH04ieSQ
Keith Stewart
- https://medium.com/curated-by-versett/building-maintainable-angular-2-applications-5b9ec4b463a1
- https://en.wikipedia.org/wiki/Rogue_One
- https://twitter.com/TheKeithStewart
Special Guests: Bonnie Brennan and Keith Stewart.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
AiA 145 Why I’m Still Betting on Angular with Shai ReznikOn today’s episode of Adventure in Angular, we have panelists Alyssa Nicoll, Joe Eames, along with Charles Max Wood. We have a special guest Shai Reznik from Hirez.io, a website and video web development course series that mixes information with a few laughs. Today we are figuring out why Shai is still betting on Angular. It’s a fun show, we hope you check it out!Why are you still betting on Angular?Shai has been getting this question a lot. He tells us about working on Angular courses for his website hires.io He has two courses out so far, first being a course on Angular basics, a second course on Why Angular? Shai suggests that picking a framework is essentially gambling. He also gave a talk “Why I’m betting my future on Angular 2,” focused on the non technical reasons that he is sticking with Angular. If you teach someone without experience about web development and ask them to pick a framework without guidance it’s a disservice. Once that person has gained experience, then they can choose on their own.Shai’s Decision MethodAt HiRez.io he had to pick a specific framework. Shai has been working on comparing different frameworks for years, including React and ViewJS. He adds that when you see talks or documentation on framework, you’re seeing a showcase of the best parts. It isn’t until you work with it that you find the quirks and issues. Part of what he did to learn the frameworks were to simulate real life scenarios. He also came up with a set of requirements to help him. The main question being “Does it handle scaling?” He found that React leans more towards libraries while Angular is more of a framework. It comes down to integration. Building your own framework from a library can be a good practice if you want to become a more professional JavaScript developer. Shai suggests that its like building your own computer instead of buying a brand new one. The issue is with JavaScript, the updates come weekly and so building your own framework from a library comes with a cost. Developed frameworks tend to handle that level of integration for you.Less Mental Overhead with AngularCharles adds that Angular allows him to make things without worrying about when to use things like Redux or Mobix and it just works. There is less mental overhead along with available expertise because everyone is generally using the same stack. React can have a shorter learning curve, and both communities have about the same number of proficient users as a resource. Both seem to be equal in those ways. Having choices keep things on the innovative edge. Shai talks about the Angular team and how innovative they tend to be. Aimee adds that their attitude about Angular is also genuine, giving an example of when they are approached with issues, they are open to discussing them.Dependency InjectingViewJS is also a framework. The one thing that is missing is dependency injection ,which in Shia’s opinion is one of the biggest selling features of Angular. It allows for easier code testing and in Angular 2 it has been improved even more. He adds that some developers can be lazy and not write tests and for them it wouldn’t matter. Angular also prides itself as a JavaScript framework, and so no typescript. When working on a big team, being able to see immediately where things are broken is very helpful and is a plug for Angular.Evolving communitiesJoe says that Angular has a great community and he like Angular because of his familiarity. Shai adds that all three are great solutions. Angular just happens to fit well with his current situation. He had to switch from old technologies or communities because they got stuck in the past. ViewJS is picking up popularity and in a couple years will have a strong community. He adds that while the community and support system is great, it’s not the main reason he stays.Will the market for Angular courses be sustainable?Shai mentions that it seems to come in waves, a certain technology will have hype come in every six months or so. That hype leading to adoption and then months later the adoption rate drops down. This is something he witnessed with Angular 1 in 2012 with 1.0. It took 6 months to a year for people to learn about it and adopt it. It wasn’t until 2013 or 2014 when React came out, early adopters jump on React and started creating hype for it. Some of React solved the pain points for Angular. We are getting to the end of the adoption wave of React. It’s hard to tell how long React and ViewJS will be popular. The new Angular will bring a new wave and peak in demand in a year or so. Shai adds that this is his bet and he may be wrong. He sees that it handles small apps or big apps, having the ability to scale and that is important. Charles adds that Ruby on Rails had a similar cycle. Ruby has stop being in the media as much because it’s becoming stable, but the community is strong there either way. Shai mentions that he doesn’t see these frameworks like React going away soon because they solve real issues. If you zoom out from the discussion, these frameworks are all part of a big JavaScript family. Listens can comment on this episode on what frameworks they’ve choose and why.PicksJoe NGDoc.io
PersistenceAlyssaHiRez.ioCharles Rush Revere and the American Revolution
Palto Alto Firefighter’s Hot Sauce Shia Futur Youtube
Decorators
HiRez.io Links HiRez Twitter
Shai Twitter Special Guest: Shai Reznik.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
On today’s episode of Adventures of Angular we’ve got panelists Ward Bell, Joe Eames, Alicia Michael, John Papa, Charles Max Wood, and our special guest Shayne Boyer. Shayne is a Senior Developer Advocate at Microsoft and on the Azure team. The last time he was on the show was Episode 082 of Adventures in Angular and we talked about getting started with Angular 2. Today we are going to talk a bit about Angular and Azure. Stay tuned.[3:12] Talk about offerings with Azure.
AiA 143 Kendo UI with Burke Holland Charles Max Wood and Burke Holland discuss Kendo UI. Burke Holland is on the Developer Tools Division at Progress. The discussion ranges from the introduction of Kendo UI to tests used for Angular apps. Stay tuned to discover what Kendo UI can do for you![00:01:50] Shutout for Angular Remote ConfCharles will be picking speakers really soon so get your ticket at the early bird price.[00:02:15] – Introduction to Burke HollandBurke Holland is working for Progress in the Developer Tools Division on the Developer Relations Team. They work on products like NativeScript, KendoUI and all the developer tools that Progress makes, which is mostly UI components and mobile frameworksQuestions for Burke Holland[00:03:00] – What is Kendo UI?Kendo UI is a Javascript UI library. It has open source components (Kendo UI Core), but it’s primarily commercial. It’s more on heavy lifting text scenarios like grid that has sorting and filtering, drag and drop, grouping, scheduler, robust calendar interface, pivot grids, Gantt charts, data visualizations. We’ve rebuilt Kendo UI from the ground up using Angular components. It’s the Kendo UI Core Angular that was released last January.[00:08:00] – How are Kendo UI elements pulled for use into an app?There’s a private npm repo that you would just pull in and bundle some of the widgets together. Inputs can be a drop down list, a combo box, autocomplete, etc. Using npm and install -@progress/kendo-angular-input, you get all of those inside your npm modules folder. We and the team are pushing to move to the public npm repo so that people don’t have to register for an account.[00:13:00] What about mobile development? Does this work with NativeScript?Kendo UI widgets do not work inside of NativeScript for mobile apps. However, we are looking for a possibility of merging their NativeScript UI library with Kendo UI so that you can build a website, a progressive web app, a NativeScript app, etc.[00:16:00] Do you also have to pull in some CSS?Kendo UI has their own CSS that is based on Sass. It has a theme builder to customize themes that you can pre-select from. Integration for Bootstrap 4 was also built because Kendo UI does not have a layout system so it doesn’t provide you with any grid system for layouts or for responsive design.[00:19:00] Do you just import it into my app and then use the components, is it that simple?It is recommended to use Angular CLI to use Kendo UI’s components and import it into an app. First step is to create a new project with the Angular CLI because Kendo UI is designed to work with it. You can work with SystemJS, instead, but it requires some tweaking. Next, you would need to add the private npm repo which registers the end point on the terminal. And then, npm-install to install the components. After that, you can include them in your app module file. Import Kendo grid from @progress/kendo-angular-grid. Then, you can import them into your module so you use it in your templates.[00:23:00] – Can I tie a chart to a grid, update the chart and have the grid change?Everything that Angular updates, Kendo UI just updates too. If you buy two components to the same array and you update that array, both of those components are going to update because they’re using Angular’s binding.[00:24:00] – Does Kendo UI work with the older versions of Angular?Kendo UI works with Angular 1.x. By the way, AngularJS means Angular 1.x. Meanwhile, Angular means Angular 2 and up. Directives for Angular 1.x wrap Kendo UI components.[00:28:00] – When moving my component in AngularJS to Modern Angular, do I have to include both of those in the product?I can’t provide any guidance here, other than I wouldn’t do that. If you migrate, you’re going to be firing up a new project but you should be able to move your application logic over pretty well. However, we still have this idea of services and injection and those things are transferable. And then, when you use Kendo UI components, the only thing that’s really transferable there is the configuration settings.[00:29:00] – How do you write tests if you’re testing Angular app? Are there other things that you should be testing?That would mean there’s some sort of functional testing and unit testing. If we’re talking about unit testing, you should just test the way that you would normally test Angular. For functional test, you need a functional testing tool like Selenium or Test Studio.[00:30:00] – Is there anything else that people need to know about Kendo UI?We’ve got a lot of other components coming so stay tuned on that. We’re also working on some React stuff. We always love to get feedback. We have a github repo.PicksBurke Holland:
On today's episode, Adventures in Angular features Angular and Electron with Ryan Chenkie. Ryan is a product owner, blogger, and JavaScript trainer. His interests in working on Angular with other technologies led him to using it on desktop apps with Electron. Tune in!Special Guest: Ryan Chenkie.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
How long do you wait to load regular Angular? Today's episode features Migrating a Large Angular 1.x App to Angular 2+ with Ciro Nunes. Ciro is a frontend engineer at CrossEngage. He appeared on episode 89, where he talked about Angular CLI. Now, he shares how they migrated an app and the challenges they faced. Tune in!Special Guest: Ciro Nunes.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
On today’s episode, Charles Max Wood and Ward Bell discuss NgDoc.Io with Joe Eames and Alyssa Nicoll. NgDoc.Io is a website that contains all Angular-related content in the community. It includes sample projects and apps. It's a great resource for everyone who wants to learn about Angular. Tune in!
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
On today’s episode, Charles Max Wood, Lukas Reubbelke, Ward Bell, Joe Eames, and Alyssa Nicoll discuss ng-conf Roundup. Stay tuned as they share their meaningful experiences in attending the conference!
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
On today’s episode, Charles Max Wood, Joe Eames, and Alyssa Nicoll discuss Progressive Web Apps with Houssein Djirdeh. Houssein is a front-end engineer based in Toronto. He works for Rangle.io where he builds mobile web apps strictly focused on JavaScript. Stay tuned to learn more about the web apps he is working on and what he's currently up to!Special Guest: Houssein Djirdeh.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
On today’s episode, Charles Max Wood, Ward Bell, and Alyssa Nicoll discuss NGRx with Mike Ryan. Mike is a senior software engineer at Synapse Wireless, Inc. in Huntsville, Alabama and is a core team member of NGRx. What he does in work is that he builds real-time interactive UIs for industrial applications. Stay tuned to learn more about what NGRx and what he currently enjoys doing related to web development!Special Guest: Mike Ryan.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
On today’s episode, Charles Max Wood, Joe Eames, John Papa, Lukas Reubbelke, and Ward Bell discuss Catalog of Angular Libraries and Components with Romuald Brillout. Romuald studied computer science and does freelance in programming for particular clients. Stay tuned to learn more about the topic and what he is currently up to! Special Guest: Romuald Brillout.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
On today’s episode, Charles Max Wood, Alyssa Nicoll, Joe Eames, John Papa, Lukas Reubbelke, and Ward Bell discuss Angular Flex Layouts with Thomas Burleson. Thomas has been a part of the Angular community since dot 9 and is currently taking the lead on flex layout. Tune in to learn more what this new library from Angular is all about and discover what it has in store for you.Special Guest: Thomas Burleson.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
On today’s episode, Charles Max Wood, Alyssa Nicoll, Joe Eames, and Ward Bell talk about Joe's experience in building an application with MEAN. Tune in to learn about this JavaScript framework, and hear what happens when Joe gets MEAN.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
On today’s episode, Charles Max Wood, Alyssa Nicoll, John Papa, and Ward Bell talk about RxJS with Angular. Tune it to learn how to use RxJS directly as an Angular developer rather than inside some library.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
On today’s episode, Charles Max Wood, John Papa, and Ward Bell talk about The Angular CLI. Tune it to their interesting talk to understand what CLI does, know where it's at, and consider the issues about it.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
On today’s episode, Charles Max Wood, Joe Eames, John Papa, Ward Bell, Alyssa Nicoll, Jules Kremer, and Lukas Reubbelke discuss Security and Angular with Brian Clark. Brian is a web developer and an architect. He is into secured application development practices. Tune in and learn more about Angular and about security in building applications.Special Guest: Brian Clark.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
On today’s episode, Charles Max Wood, Joe Eames, John Papa, Ward Bell, Alyssa Nicoll, Jeff Whelpley, and Dave Geddes discuss NG-Conf Speaker Selection Process. Tune in and learn how the organizers choose the speakers for the event!Special Guests: Dave Geddes and Jeff Whelpley.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
On today’s episode, Charles Max Wood, Joe Eames, John Papa, Lukas Ruebbelke, and Ward Bell discuss How do I Start My Single Page App. Tune in and learn about the major concerns in starting the app!
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
On today’s episode, Alyssa Nicoll, Joe Eames, Tracy Lee, John Papa, Ward Bell discuss Organizing Non-traditional Developer Events. Tune in to their exciting talk, and learn how these events are organized!
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
On today’s episode, Charles Max Wood, Lukas Ruebbelke, Joe Eames, and Alyssa Nickel discuss GraphQL and Apollo with Uri Goldshtein. Uri is a core developer at Meteor Development Group.Special Guest: Uri Goldshtein.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
On today’s episode, Charles Max Wood, Alyssa Nickel, Ward Bell, and Joe Eames discuss Incrementally Upgrading an Application to Angular 2 with Danny Blue. Danny is a brand manager at LiveSafe, and is an expert when it comes to web technology. Danny talks about upgrading jQuery spa. Special Guest: Danny Blue.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
1:25 - Introducing Travis Tidwell
2:35 - What’s a form and why would you build one?8:30 - Making changes to API-driven forms13:50 - Forms and GraphQL 15:10 - Working with conditions16:55 - Serverless applications24:20 - Microservices, actions, and web hooks29:15 - Are all PWA’s serverless?31:10 - Building apps API-first instead of mobile-first36:00- The user experience and the API-first approach38:10 - The inspection example42:50 - Rendering widgets using Angular46:50 - Teaching the “why” and the “how”Picks:3:10 - Euphemisms for Junior Programmers5:00 - Is “Junior Developer” a useful label?15:25 - Junior/Senior Developer labels and correlations with knowledge18:00 - Hiring and the interview process as a Junior Developer30:00 - Benchmarks for Senior Developers
Picks: Postman (John) National Hour of Code Week (John) “Forgetfulness” by Billy Collins (Ward) Asana (Charles)Standard operating procedures for important tasks (Charles)3:00 - Introducing Victor Savkin
3:30 - Making migration gradual4:45 - NgUpgrade6:20 - What is Router/Upgrade? How is it used?9:15 - Iterative and Incremental upgrading11:35 - UI Router13:20 - Making a gameplan for migrating16:00 - UI Router versus Angular Router20:05 - Angular Upgrade Static21:40 - Why should you upgrade your Angular modules?25:30 - Reviewing the steps26:30 - Step 3: Migrate individual components and services to Angular 228:50 - Leaf components29:50 - Hashtag routing31:00 - Step 4: Divide the routes between the Angular 1 and the Angular 2 routers35:00 - Step 5: Removing Angular 1 from your setup36:10 - When should you do a progressive migration?39:05 - Predictions for the future of upgrading40:40 - Performance implications of upgrading48:00 - Deployment options51:05 - Narwhal Technologies Picks: Rogue One (John)Top Coders Angular 2 cross-country workshops (Joe and John) Ng Conf (Joe) Toby Chrome plug-in (Lukas) The Cook, The Thief, His Wife, and Her Lover (Ward) Ng Cruise (Alyssa) Egghead.io (Alyssa) Newsfeed Eradicator (Charles) Echo Dot (Charles) Ethics in the Real World by Peter Singer (Victor)Special Guest: Victor Savkin.1:20 - What is the Angular router? 4:20 - Router links 5:20 - Child routing 7:00 - Defining a router and a path 10:05 - Controlling browser history 11:05 - Push state versus hash state 15:10 - Style guides and best practices 16:45 - Configuring the routes 19:10 - Router guards 26:55 - Resolve guards 30:20 - Lazy routing and eager routing 38:30 - How to get started with routing Picks: Oakland Raiders (John) Fantastic Beasts and Where to Find Them (John) Rogue One (John) Catalyst by James Luceno (John) The Eagle Huntress (Ward) Evans Mill (Charles) Aaron Walker (Charles) NYC City Pass (Charles) Statue of Liberty (Charles) Ellis Island (Charles) Empire State Building (Charles) Ripley’s Believe It Or Not (Charles) 911 Tribute Center (Charles) Microsoft Connect Keynote (Charles) Javascript Jabber (Charles) iPhreaks (Charles)
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
1:40 - Introducing Uri Goldshtien
6:00 -Intro to Graph QL28:40 - Live demo of using Graph QL35:00 - Demo using example appsSpecial Guest: Uri Goldshtein.2:35 - What types of teams have we worked on?8:30 - Deciding what kind of team to hire14:25 - Issues and concerns with working on back end/front end teams19:00 - Troubleshooting21:00 - Measuring success with split and cross-functional teams25:35 - Benefits of full-stack teams28:45 - Hiring full-stack, front end, and back end31:05 - Hiring experts and specialists34:45 - Mobile teams36:05 - Viability of teams within React and Angular42:55 - The future of web developmentPicks: Doctor Strange (Joe) Hacksaw Ridge (Joe)Major League Soccer finals (Joe) React Native Radio (Charles) Ignite - Infinite Red (Charles) Frontend Masters (Charles)
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
04:25 - Error message: “Unknown provider”6:00 - Error message: “Can’t resolve all parameters”10:00 - Mistakes from Angular’s framework12:55 - Should I be using relative paths?17:45 - Error Message: “Ng4 let customer end customer”19:35 - Error Message: “Component dashboard component is not part of any module”20:37 - Lazy loading and module errors33:10 - NgModule for data collection errors35:30 - No errors schema39:30 - Syntax errors and decorators45:25 - Forgetting to add a component to your template49:30 - Rating Angular 2’s error messages54:10 -Error Message: Object supporting error for NG456:30 - Mapping result errors1:05:00 - Words for the wisePicks: Artisanal Pencil Sharpening (Ward) Bob and Ray, “Most Beautiful Face Contest Winner” (Ward) Plunker (John) Jamba Juice’s Peanut Butter Chocolate Love Shake (Joe) Smashburger (Joe) Tesla Solar (Joe) Covert game (Joe)Doctor (Lukas) Legoland Discovery Center (Lukas) One Stop Nutrition shakes (Lukas) Bike Prank video (Lukas) Born to Win seminar by Zig Ziglar on Audible (Charles) MindMup2 (Charles)Devchat ConferencesDevchat WebinarsNgConf 2017
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
2:15 - How Joe Eames got into Angular7:50 - How Charles Max Wood got into Angular12:30 - Being on Javascript Jabber15:00 - Hosting an Angular conference23:20 - Charles’ education and career in Rails34:35 - Joe’s current projects
37:10 - Charles’ current projects40:25 - Getting into programmingPicks: Designated Survivor (Joe)Going to the dollar theater (Charles) The Daily Lasagna (Charles)2:40 - Introducing Tero Parviainen
02:20 - Introducing Tobias Bosch03:40 - What does the Compiler do?05:00 - Compiling in Angular 209:15 - Loading templates after using an Angular 2.0 Compiler10:30 - Just In Time and Ahead Of Time compilations15:40 - Advantages of the AOT approach17:40 - Hacker attacks19:45 - Dynamic scenarios
21:35 - Functions of the Compiler: Tree shaking25:50 - Angular 2.0 Compiler and end modules26:40 - AOT and sizing27:40 - Rollup bundles30:10 - Using RxJs32:00 - Router outlets and siblings34:40 - Plans for rolling out features for developers37:40 - Motivations and driving forces39:20 - Rendering targetsPicks: Ship To Hawaii (Jules) TensorFlow (Tobias) Your Inner Fish by Neil Shubin book and the PBS Series (Ward) “Cross Site Request Funkery” talk by Dave Smith (Lukas) Professor Frisby's Mostly Adequate Guide to Functional Programming by Brian Lonsdorf (Lukas) Life Expectancy by Dean Koontz (Joe) NG Cruise (Joe) Source Map Explorer (John) Angular 2.0 Ultimate Workshop (rescheduled) (John) The 12 Week Year (Charles) AST Explorer (Joe)Enter the lottery to win the opportunity to buy a ticket to NG-Conf (Joe)Call for presenters for NG-Conf will open November 1st (Joe)Special Guest: Tobias Bosch.2:15 - Introducing Rob Dodson
2:35 - What are Web Components?5:00 - Using Web Components10:05 - Why material design hasn’t focused on Web Components11:55 - Making Web Components smaller14:45 - Standards of work18:10 - What is “Shadydom”?21:05 - Benefits of using Web Components and custom elements26:05 - Web Components and Angular 2.031:05 - Eventing and lifecycle models for Web Components33:55 - Testing Web Components35:30 - Benefits of using Polymer38:50 - Clearing up confusion between Polymer, polyfills, and Web Components41:20 - What does Rob Dodson do?42:40 - Seeing how Angular 2 and Web Components connect1:50 - Introducing Jeff Whelpley at Angular Remote Conf
3:40 - Working on Angular Air6:25 - Lessons from Ben Lesh8:20 - Lessons from Gleb Bahmutov11:50 - Lessons from Aaron Frost14:00 - Lessons from Shai Reznik16:50 - Lessons from Joe Eames19:10 - Lessons from Uri Goldshtein21:40 - Lessons from Wesley Cho and Jesus Rodriguez25:40 - Lessons from Brad Green28:50 - Lessons from Igor Minar31:40 - Lessons from Victor Savkin and Dan Abramov34:30 - Lessons from Amy Knight36:05 - Lessons from Patrick Stapleton39:00 - Lessons from Jamie King and Kyle Newman1:25 - Introducing Marcel Good
2:15 - Introducing Steve Schmitt4:00 - Why replace a MVC with Angular 2.0?6:30 - Transitioning platforms9:50 - Projects on Angular 2.014:50 - Visual Studio and other tools for Angular 2.024:50- Debugging27:30 - Using Webpack in Visual Studio30:20 - Structuring an application in .Net34:20 - Managing app data39:20 - Managing changes49:15 - Examples of Visual Studio working with Angular 2Picks: Silicon Valley Code Camp (Ward) DEVintersection conference in Las Vegas (Ward) Brian Lonsdorf - “Oh Composable World!” Keynote speech (Lukas) Michael Vey Series by Richard Paul Evans, specifically book six: Fall of Hades (Charles) myVEGAS Slots iPhone game (Charles) Temphire Angular 2.0 Examples (Marcel) Google Trips (Marcel) 8 Days A Week Beatles documentary on Hulu (Steve)Special Guest: Marcel Good.2:20 - Should everybody update to Angular 2?3:50 - Defining migration
1:50 - Introducing Nate Murray
2:45 - Redux and Angular 25:45 - Using Redux with apps16:20 - Practical applications with Redux24:35 - What problems does Redux solve?28:00 - Mutable state31:30 - Challenges in Redux32:25 - Tradeoffs using NgRx43:15 - Flow changes in Redux45:40 - Redux and observables52:45 - Simplifying data structures without using ReduxPicks: Alexander Hamilton by Ron Chernow (Ward) “Out of the Tar Pit” by Ben Moseley and Peter Marks (Lukas) RxJS Overview (Lukas)Fishing and fish frys with family (Charles) Using Angular 2 Patterns in Angular 1.x Apps by Lukas Ruebbelke (Nate) Building Angular 2 Applications with Immutable.js and Redux by Houssein Djirdeh (Nate) “A Cambrian and Explosion of Consensual Realities” by Venkatesh Rao (Nate)Special Guest: Nate Murray.2:00 - Introducing Angular 2.0!7:30 - Release plan for updates11:25 - Angular 3.0?13:50 - What to expect from 2.016:15 - Angular within the Javascript world18:00 - Updates to Angular’s Ecosystem18:45 - Patch releases and docks19:55 - Why did Angular 2.0 take so long to come out?24:40 - Top three things to know about Angular 2.026:15 - CLI, AOT, and Lazy Loading30:22 - Angular 1.0 to 2.036:05 - Promoting Angular 2.038:25 - Plans for NG Upgrade39:40 - Impact of AngularPicks: Stranger Things (Kara) Three Body Problem by Cixin Liu, translated by Ken Liu (Brad) Hamilton (Ward) Starship’s Mage by Glynn Stewart (Joe) Gulp (John) Rogue One (John) Angular Connect (Lucas) Maggie Appleton (Lucas) Get to Work Book (Lucas) Angular 2.0 Workshop with John Papa and Dan Wahlin (Lucas) Angular Remote Conference (Charles) Webinars (Charles)
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
1:50 - Introducing Torgeir Helgevold
3:05 - Defining and using Web Worker8:55 - Web Worker and value communication between threads15:05 - Booting an app in Web Worker vs a browser20:15 - Web Worker and mobile browsers23:55 - Reality and perception of running apps on mobile devices29:00 - Multi-threading and Web WorkersPicks: Angular NgModule Doc (John) Tinker Crate (John) Angular 2 Router by Victor Savkin (Lukas) “Out of the Tar Pit” by Ben Moseley and Peter Marks (Lukas) Hardcore Henry (Joe) Vid Angel (Joe) Angular 2 Class with John Pop and Dan Moleen. Use code “AIA” for $200 off registration (Joe) Angular 2 Gitter chat (Tor)Special Guest: Torgeir Helgevold.1:55 - Public Service Announcement: Moving past RC54:40 - Advice for an easy transition9:40 - Modules and smaller apps14:15 - Process for moving folders and modules16:30 - Sharing code between projects19:40 - Ahead Of Time Compiler 27:00 - Non-Javascript back-end systems29:25 - Functions of the NgModule31:00 - Components and Templates
36:40 - Providers38:50 - Ordering Components41:50 - Building a small app with no use for modulesPicks Stranger Things on Netflix (Joe) Game of Thrones (Jules) Angular 2 Class with John Pop and Dan Moleen. Use code “AIA” for $200 off registration (Joe) Gboard for iPhone (Jules) Factorio game (Steve) Electric Knife Sharpener (Ward) IdeaBlade (Ward) Freshdesk (Charles)1:50 -Jules explains release candidacy
7:10- RC5 and Angular 211:20 - Big changes with RC5: NGModules14:45 - Big changes with RC5: Bootstrapping root modules15:45 - Big changes with RC5: Lazyloading and packaging options20:20 - Big changes with RC5: Compiler options23:30 - RC5 and depreciation28:17 - Documentation29:33- Installing release candidate33:50 - Engineering listPicks: Lootcrate (Charles) Stickermule (Charles) Osmo coding set (Lukas) Premier Protein (Lukas) ngMigrate (Lukas) DJI Phantom 4 Drone Camera (Jules) Munchery (Jules)Duet Beer by Alpine Beer Company (Jules)2016 Rio Olympics (Ward)02:59 - Rob Wormald Introduction
03:46 - Stephen Fluin Introduction04:28 - Improvements Coming for Routing in Angular 08:22 - Syntax11:10 - Preloading Data13:59 - Brian Ford’s Router => The New Router17:23 - Does the new router do these things?Check out Angular Remote Conf! Buy tickets! Submit a CFP! Check out the speakers! 03:00 - The Origin Story and Success of Adventures in Angular
14:00 - The Angular Community17:30 - Where is Angular heading?24:39 - Favorite EpisodesCheck out Angular Remote Conf!! 02:01 - David East Introduction
02:34 - Jeff Cross Introduction01:58 - Ahmed ElSayed Introduction
02:09 - Chris Anderson Introduction02:19 - Microsoft Azure Functions02:28 - Building the Azure Functions Portal on Angular 209:37 - The Backend11:18 - Approaching Leadership for Approval to Build in Angular 2/Beta; Deciding Factors15:18 - App Organization and Architectural Pattern18:38 - Ease and Hardships of Starting the App22:33 - Use Cases24:13 - Browser Issues25:39 - Debugging26:52 - Angular CLI28:59 - Workflow40:08 - Observables & Streaming41:36 - Upgrading42:15 - Would you recommend Angular 2?44:35 - Testing PicksGet your early bird tickets for Angular Remote Conf! 02:13 - Pascal Precht Introduction
04:29 - ng-conf06:42 - Dependency Injection; @Injectable01:59 - Dan Wahlin Introduction
03:24 - Dan Wahlin: Typescript: Angular 2's Secret Weapon @ ng-conf 2016 04:44 - ng-conf Fair Day WorkshopsCheck out Newbie Remote Conf! 02:17 - Olivier Combe
03:21 - Why People Want Libraries in Angular 204:13 - Types of Libraries People Might Write05:21 - ng2-translate 08:02 - TypeScript Problems vs Package Manager Problems10:22 - Collaboration13:17 - Advice For Writing Libraries19:47 - Design Considerations25:09 - ng2-translate (Cont’d)27:53 - Advice for People Doing Public vs Public Libraries28:45 - Simplicity30:11 - ng-conf 32:13 - Working with Systems (i.e. webpack)36:53 - Upkeep PicksThis episode was recorded live from ng-conf 2016. The conference and conference experiences, goals, and sessions are discussed amongst all the latest and greatest announcements in Angular such as The Release Candidate. Picks
02:05 - Jeff Whelpley Introduction and Angular Universal Patterns
01:53 - Sean T. Larkin Introduction
02:17 - Configuration 02:56 - webpack 06:17 - Grunt and gulp vs webpack 08:02 - Plugins and Loaders09:49 - Downsides 10:46 - Writing Less Code? 12:50 - Configuration (Cont’d)14:23 - Metrics and Speed18:12 - Migration Risk 20:29 - The Learning Curve 22:04 - webpack with Angular 2 24:21 - webpack and Angular 1 26:05 - Getting Started with webpack27:34 - Why use webpack with your Angular 2 build?36:32 - webpack IntegrationSpecial Guest: Sean T. Larkin.01:52 - Zackary Chapple
02:02 - Performance; Metrics and Analytics08:23 - Performance in Angular 1 vs Angular 2 Apps09:43 - Mobile Performance10:51 - Migration Work from 1 to 216:20 - Single-page Apps21:00 - The RAIL Performance Model 21:42 - Speed; Efficiency25:21 - HTTP 1.0/2.026:49 - Websockets27:11 - Mobile Performance Testing29:20 - Production MonitoringPicks Angular 2: Getting Started by Deborah Kurata (Lucas)01:56 - TJ VanToll Introduction
03:08 - Code Sharing06:35 - Components and Directives13:09 - NativeScript and Electron 15:02 - Business Model16:07 - Compatability; Multi/Cross-Platform Capability17:31 - Why Use NativeScript?26:41 - Performance and Usability; Hybrid and Native30:21 - iOS Concerns; Xamarin 37:23 - Where is NativeScript heading? (Future Visions and Plans)38:21 - Getting Started with NativeScriptPicks Things Organized Neatly (Jules)02:11 - Ciro Nunes Introduction
02:39 - Command-line Interface (CLI) 06:58 - Ciro’s Involvement with the CLI08:10 - Features and Improvements for Angular 203:26 - Style Guides
08:57 - Naming Conventions11:51 - The Growth of the Angular 1 Style Guide 14:41 - Style Guide Dislikes21:26 - Multiple Recommendations02:24 - Jules Kremer Introduction
04:21 - Jules and the Angular Team05:41 - “The Dev Rel Role” (Developer Relations)08:28 - The Enterprise10:22 - The Angular Developer Relations Team12:18 - How the Team Should/Will Work16:05 - The F5 Experience vs The CLI World/Project20:46 - Implementing Simple vs Advanced Concepts27:24 - Angular and Language Paths/Choices31:02 - ASP.NET Core 35:10 - Jule’s Role in Developer Relations04:33 - Inspired by Scott Hanselman: Bring Kindness back to Open Source 06:02 - Cultivating a Community08:53 - Making it Easier for People to Contribute
02:14 - Ben Nadel Introduction
02:56 - Looking at Angular 204:01 - Dialect and Mechanics13:17 - Angular 2: Likes and Dislikes28:02 - Promises and Observables32:11 - Change Detection39:13 - The Mental Model47:12 - redux Picks Ex-Con #2 (Joe)02:36 - Jeremy Elbourn Introduction
03:15 - Material Design; Angular Material05:12 - ComponentsThe recording for this episode took place on February 18th, 2016 at the NG-NL conference in Amsterdam. Thank you to the conference organizers and sponsors for hosting an awesome single-day, multi-track conference.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
02:17 - Shayne Boyer Introduction
02:38 - Shayne’s Background02:08 - Peter Bacon Darwin Introduction
03:48 - Angular 1.506:29 - Will people prefer to write in this style going forward?09:34 - Styling15:58 - The Component Router18:33 - SecurityCheck out Freelance Remote Conf and React Remote Conf! 02:34 - Rob Eisenberg Introduction
03:23 - Aurelia 04:28 - Conventions and Configurations19:15 - 2015: “The Year of the Framework”23:46 - Databinding and Unit Directional Data Flow27:56 - Advice for Framework Developers32:52 - Tool FatigueCheck out Freelance Remote Conf and React Remote Conf! 02:34 - Rob Wormald Introduction
02:53 - How redux Works and How it Works in the Context of Angular 206:19 - Data Structuring and Immutability09:11 - Angular 2 FrustrationsCheck out Freelance Remote Conf! And while you’re there take a look at all of this year’s conferences! 02:42 - Angular 2 Beta and Projected Release Talk
02:34 - Angular in 2015
09:11 - Tooling10:47 - Angular 2 Courses, Style Guide13:01 - People Leaving Angular for React ??14:31 - No New Frameworks of Consequence in 2016 ??21:50 - New Year’s Challenge: Communicate “Why”25:12 - Opinionated Blog Posts and Rants28:42 - Mobile Developers and Applications 33:44 - Angular 2 LIVE PredictionsCheck out Freelance Remote Conf! 02:48 - Andrew Connell Introduction
03:16 - Building for an Office Platform08:12 - How do you host Angular code?09:56 - Why Angular in this situation?14:41 - SharePoint Add-ins27:32 - Adoption, Uptake29:29 - Office UI Fabric33:03 - What’s the plan for Angular 2?The Conversation Gist that Dylan prepared prior to the show. 02:15 - Dylan Johnson Introduction
Get your JS Remote Conf tickets! 02:20 - Burke Holland Introduction
02:40 - TJ VanToll Introduction03:04 - NativeScript + Angular; The DOMCheck out JS Remote Conf! The conference will run from January 14th-16th 2016. 02:22 - Angular 2 in Beta
04:04 - The Notion of a Module05:05 - Where should I start?08:37 - The Module (Cont’d)15:39 - Components17:00 - Template and Metadata21:54 - Databinding29:19 - The Repeater02:20 - Components: Angular 1.0 => Angular 2.0
07:31 - Single Components; Multiple Templates11:37 - Common Associations with an Angular 2.0 ComponentCheck out JS Remote Conf and All Remote Confs! 02:35 - Thomas Burleson Introduction
03:01 - Angular Material05:06 - What makes it “Angular-ish”?09:47 - Visual Design Goals14:38 - Mental Model; google.com/design18:01 - Getting Started with Angular Material02:28 - Ward Bell (and Co.’s) Documentation Contributions for Angular 205:39 - Peter Bacon Darwin (and Co.) & Jade 07:38 - John Papa and the Tour of Heroes Tutorial 09:01 - Geoff Goodman & Plunker 10:07 - GDE (Google Developer Expert) Program/Summit 13:37 - Thomas Burleson & Angular Material 16:07 - The Angular Team <317:13 - Rob Wormald: ng2 + Rx + redux Plunker
19:13 - The Go Programming Language 19:51 - Jeff Whelpley and Patrick Stapleton & Angular Universal 22:52 - Minko Gechev25:56 - FiveFilters.org 26:35 - Aurelia & Other Frameworks + Collaboration and DialogGo check out JS Remote Conf! 02:14 - Pascal Precht Introduction
03:03 - Getting Involved with the Angular 2 Documentation05:10 - Deciding Where to Contribute06:16 - Contributors and ContributionsSuggest topics and guests! aiatopics 02:12 - Jesse Warden Introduction
02:53 - Consulting vs Full-Time Employees06:03 - Common Problems07:50 - Version Cycles and Best Practices11:34 - Educating Clients26:26 - Maintenance and Contracts36:41 - Training and Negotiating RatesPicks Marissa Mayer and the Fight to Save Yahoo! by Nicholas Carlson (Aaron)Submit a CFP or get an early bird ticket! Check out JS Remote Conf! 02:18 - Uri Shaked Introduction
04:27 - Uri’s Libraries 05:11 - Advantages of wrapping things around directives10:33 - How do you wrap things around directives?13:52 - Building angular-moment and angular-spinner 17:09 - Things to do to wrap a component in an Angular directivePicksThe ES2016 Column Operator (Uri)02:18 - Mike Hartington Introduction
02:27 - Matt Kremer Introduction02:36 - The Ionic Framework and Ionic Creator05:25 - ngCordova 07:14 - Performance10:29 - Cordova (Cont’d)11:47 - Use Cases12:37 - Plugins13:54 - What Ionic is NOT Ideal For16:09 - Local Data Storage17:27 - Fidelity of Interactions20:54 - The Business Side of Ionic23:13 - When should I go native? When should I go hybrid?27:58 - Business Cases: Convincing Others to Use Ionic32:44 - Tools for Apache Cordova (TACO) Overlap36:34 - Deployment38:58 - Ionic and Angular 245:06 - IDE SupportPicks RAVPower 23000mAh Portable Charger Power Bank External Battery Pack (Joe)02:39 - When is Angular 2 out? Do you feel like other frameworks (React) are becoming more popular and that people are moving over to them? Will people come back to Angular?21:01 - How can you convince a client to pick Angular over something else like React?26:19 - Should I continue learning Angular 1 or move on to Angular 2? Will there still be jobs where I can use Angular 1 after Angular 2 is released?27:38 - To Typescript or not to Typescript? 33:02 - How do you integrate third-party libraries like Firebase or D3 into an NG2 app, taking into account that NG2 runs on one-way dataflow paradigm fueled by an Rx implementation?36:14 - The Typescript autocomplete/help, etc. that we were discussing before: what tools or IDEs are we talking about?
38:26 - What is the current state of the Angular 2 router?46:08 - Any really good recent D3/Angular resources? What are some things to look at in regards to performance when implementing D3 with Angular?49:40 - How do you structure a really large Angular application?PicksAngular 2 (Patrick)02:07 - K. Scott Allen Introduction
02:32 - Package Managers, Package Managers vs Module Loaders06:09 - Getting Modules, Loading Modules, and Bundling Modules11:06 - Exploring ^ These Options12:27 - Performance, Maintenance, and Tooling Support23:08 - HTTP/2 28:16 - webpack vs jspm.io02:13 - Ari Lerner Introduction
04:56 - ng-book 2This episode is a follow-up episode of Adventures in Angular Episode #48: The Road to NG2 Also, don’t forget to get your Angular Remote Conf Tickets! The online/completely remote conference will run from Thursday, September 24th thru Saturday, September 26th. 03:18 - Panelist Recent Experimentation06:25 - ES6 vs Typescript, Tooling
Get your tickets for Angular Remote Conf!Enter the ng-conf ticket lottery! 03:44 - egghead.io
04:58 - Pluralsight 06:26 - Code School: AngularJS Tutorial 06:38 - Dan Wahlin: AngularJS Fundamentals In 60-ish Minutes 06:52 - DEVintersection Conference 07:30 - Stack Overflow + Plunker 08:02 - Angular Remote Conf 08:50 - AngularConnect 08:58 - Onsite Training11:10 - BackendsDon’t forget to check out Angular Remote Conf! 02:29 - Aysegul Yonet Introduction
02:51 - D3.js 04:29 - Aysegul’s Background in Teaching Computing and Social Interest09:08 - Using D311:49 - Angular + D312:49 - Directives 17:17 - Visualization20:06 - Other Uses for D323:51 - Mind Blowing Aspects of D325:16 - What’s Wrong with D3?27:26 - Debugging28:22 - Animations29:42 - The Learning Curve and Getting Started (Resources)Don’t miss out! Check out Angular Remote Conf! 02: 10 - Will Buck Introduction
02:57 - Membership & Attendance04:48 - Starting a GroupSign up for Angular Remote Conf! 02:35 - Jeff Whelpley Introduction
02:53 - Patrick Stapleton Introduction03:39 - Advantages of Server Rendering14:28 - Universal & Isomorphic24:11 - Caching and Load Balancing03:25 - Promise (Definition)
02:06 - Minko Gechev Introduction
03:57 - Immutability05:11 - Why is immutability interesting to Angular developers?09:19 - Side Effects12:18 - Are immutable data structures in conflict with large quantities of data?Check out RailsClips! 02:24 - Ben Drucker Introduction
03:00 - What is meant by “Angular apps that scale”?04:54 - Tools06:25 - Ben’s Background in Scalability09:28 - “Scalability” and “Scaling”14:00 - Team Size14:53 - EAZE 17:00 - The EAZE Architecture21:17 - What You Should Be Doing to Scale (Tips)Check out RailsClips and RemoteConfs! 02:53 - Jack Doyle Introduction
03:53 - GSAP (GreenSock’s Animation Platform) 04:05 - GreenSock: The Name05:01 - GreenSock: The Inception09:13 - Transitions & CSS Animations10:32 - Who is GreenSock aimed at? / What kind of applications use it?15:01 - Lukas and GreenSock 16:50 - Angular + GreenSock + CSS Animations (GreenSock Under The Hood)27:44 - Using GreenSock Outside of Angular29:20 - Getting Started With Animations, Learning Curve39:13 - When To Use Animations (User Experience)01:33 - Tero Parviainen Introduction
02:28 - Getting Started Digging the Angular Source Code05:05 - The Angular Compiler 06:13 - Advantages of Understanding the Compiler07:42 - Directives10:21 - Combining Controllers and Directives12:43 - Routing13:42 - What do we need to know about the Directive API?15:12 - Transclusion17:46 - Getting Started with the Compiler19:08 - How much do you need to know?20:55 - Why use the compile phase?22:02 - Angular 225:02 - The Clojure and JavaScript WorldsPicks Build Your Own AngularJS with Tero Parviainen (Lukas)02:07 - Uri Goldshtein Introduction
02:27 - What is Meteor?03:23 - The Meteor Company 03:54 - Structure & Deployment11:51 - Revenue Story (Scaling)02:14 - Deborah Kurata Introduction
02:32 - Line of Business App Developers04:24 - How do these apps look different?07:20 - Forms Over Data and Business Rules03:51 - Dilemma of Choice: Onboarding Process
12:45 - Frameworks => Structured Languages02:32 - Patrick Stapleton Introduction
04:21 - Angular 2 and Where It’s Headed05:04 - Enterprise/Small App Distinction07:19 - Angular 2 Preparation and Migration10:35 - Authoring Scenario in ES5 vs ES613:44 - Composition Over Inheritance02:26 - Shai Reznik Introduction
03:02 - Angular 2 and Shai’s Background02:28 - Chris Dias Introduction
02:38 - Erich Gamma Introduction03:38 - Visual Studio CodeCheck out and sign up for Ruby Remote Conf!02:09 - Jafar Husain Introduction
02:42 - Falcor06:56 - MVC (Model View Controller)02:07 - Victor Savkin Introduction
02:30 - Dependency Injection (DI)01:46 - Dan Wahlin Introduction
02:29 - Background and Involvement in the Angular Community02:02 - Shai Reznik Introduction
00:43 - Scott Moss Introduction
01:55 - Scott’s Programming Background04:11 - Working with Lukas05:04 - Angular and ES6 (ECMAScript)06:11 - Subclassing a Directive01:35 - Katya Eames Introduction
01:52 - Ben Nadel Introduction04:47 - PerformanceThank you RailsClips Kickstarter Backers! 02:05 - Matias Niemelä Introduction
03:13 - Animations with Angular04:24 - CSS Animations13:06 - Testing01:20 - Julie Ralph Introduction
01:08 - Dropping the “JS”02:15 - Announcements from ng-conf Blog Post 03:20 - Angular Internationalization (i18n) 05:27 - Annotations
Live from ng-conf 2015! 05:10 - [YouTube] Shai Reznik: ng-wat 05:59 - TypeScript
13:06 - MigrationCheck out RailsClips on Kickstarter!! 00:58 - Andres Dominguez Introduction
01:47 - protractor03:50 - elementor09:54 - Use Outside of Angular10:37 - The Name: “Elementor”11:11 - Conception => Production12:42 - Implementing Elementor / Workflow14:39 - Testing a Non-Angular Website15:31 - Installing the Elementor Chrome Extention18:45 - Running in Emacs 19:47 - Plugins (egghead.io) 20:47 - DebuggingPicksOpen Space Events and Conferences (Joe)Check out RailsClips on Kickstarter!! 01:41 - Craig McKeachie Introduction
02:07 - Routing03:48 - Essential Characteristics of a Router04:53 - Emphasis on the URL10:03 - UI Router > Custom Directives, Includes, or ngSwitch12:06 - Nested Routes15:09 - Boxes: “Boxes in boxes in boxes”19:44 - Navigation and Code Maintenance25:28 - Routers in Other Frameworks and the Angular 1.4 Router01:32 - Redefining Directives
The crew talks to Angular interns Rodric Haddad and Anting Shen.Special Guests: Anting Shen and Rodric Haddad .
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The crew talks to InVision's Ben Nadel.Special Guest: Ben Nadel.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The crew talks isomorphic JavaScript and AngularJS with Jeff Whelpley.Special Guest: Jeff Whelpley.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The crew talks to Marcy Sutton about the importance of accessibility.Special Guest: Marcy Sutton.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The crew talks about testing tools in Angular.Special Guest: Ward Bell.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The crew discusses testing with Ward Bell.Special Guest: Ward Bell.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The crew talks to Wijmo's Chris Bannon and Bernardo Castilho about replacing Microsoft Silverlight with Wijmo and AngularJS.Special Guests: Bernardo Castilho and Chris Bannon.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The crew talks Back& with Itay Herskovits and Relly Rivlan.Special Guests: Itay Herskovits and Relly Rivlan.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The crew talks form validation with Kent C. Dodds.Special Guest: Kent C. Dodds.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The crew talks Duck Angular with Avishek Sen Gupta.Special Guest: Avishek Sen Gupta.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The crew talks about structuring code with Dan Wahlin.Special Guest: Dan Wahlin.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The crew talk about Microsoft Tooling with Mads Kristensen. Special Guest: Mads Kristensen.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The crew discusses style guides with John Papa and guest, Ward Bell.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The crew talks about AtScript with Miško Heverly.Special Guest: Miško Hevery.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The crew talks Angular 1.3 and 2.0 with Brad Green, Igor Minar, and Miško Hevery.Special Guests: Brad Green, Bryan Forbes, Igor Minar, and Miško Hevery.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The crew talks to Jesse Liberty about using Kendo UI in AngularJS.Special Guest: Jesse Liberty.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The panelists talk to Scott Allen about using ES6 with AngularJS.Special Guest: K. Scott Allen.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The panelists talk to Scott Hanselman, of Microsoft, about the modern Web and open source.Special Guest: Scott Hanselman.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The crew talks about directives in AngularJS.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The crew talks AngularFire with David East and Kato Wulf.Special Guests: David East and Kato Wulf.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The crew talks about preferred backends.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The crew discusses ng 2.0 with Rob Eisenberg.Special Guest: Rob Eisenberg.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The crew talks WebGL with Sean GriffinSpecial Guest: Sean Griffin.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The panelists talk to Tyler Renelle about HabitRPG.Special Guest: Tyler Renelle.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The panelists talk about build processes in Angular. Specifically, gulp.js and Grunt.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The panelists talk about best practices for teaching Angular.js.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
Charles Max Wood and Lukas Reubbelke talk about resources and learning Angular.js.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The panelists talk about GDEs.Special Guest: Matias Niemelä.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
The panelists discuss what you need to know about running an AngularJS meetup with Matt Zabriskie and Sharon DiOrioSpecial Guests: Matt Zabriskie and Sharon DiOrio.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.
In the inaugural episode of Adventures in Angular, the panelists talk to Miško Hevery about the birth of AngularJS.Special Guest: Miško Hevery.
Advertising Inquiries: https://redcircle.com/brands
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.