{"version":"https://jsonfeed.org/version/1","title":"Gone Mobile","home_page_url":"https://www.gonemobile.io","feed_url":"https://www.gonemobile.io/json","description":"All the latest in .NET Mobile & MAUI (formerly Xamarin) developer technologies, covering in-depth topics ranging from Android, iOS, macOS and Windows, to mobile marketing, design and more!\r\n\r\nAlso on YouTube: https://www.youtube.com/@GoneMobilePodcast","_fireside":{"subtitle":"Your input and output for .NET Mobile & MAUI app development","pubdate":"2024-09-30T12:00:00.000-04:00","explicit":false,"copyright":"2024 by Jonathan Dick, Allan Ritchie, Greg Shackles","owner":"Jonathan Dick, Allan Ritchie","image":"https://media24.fireside.fm/file/fireside-images-2024/podcasts/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/cover.jpg?v=5"},"items":[{"id":"6df6f435-bdeb-4da2-9162-51acd1949ef5","title":"121: Jon tries Mediator! Copilot != Autopilot, and the Best iPhone ever!","url":"https://www.gonemobile.io/121","content_text":"In this episode of Gone Mobile, Jon and Allan discuss a variety of topics ranging from sports team loyalty to the intricacies of app development. They delve into listener feedback about coding with AI tools like ChatGPT and Copilot, share insights on navigating iOS and Xcode updates, and explore new features in the iPhone 16. The conversation also covers updates in Maui and .NET, the importance of staying current with technology, and Jon's personal project of creating a snack app for Disney World. They conclude with a discussion on building a content button in Maui and the challenges of cross-platform development.\n\nTakeaways\n\n\nListener feedback is crucial for app development.\nAI tools can enhance coding but require understanding.\nStaying updated with iOS and Xcode is essential for developers.\nMaui and .NET updates bring new features and improvements.\nCreating a snack app can be a fun personal project.\nCross-platform button development presents unique challenges.\nDocumentation is key for using libraries effectively.\nUnit testing is important for ensuring code quality.\nEngaging with listeners can lead to interesting discussions.\nFuture content may include coding demonstrations.\n\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nAudio Engineer: Jim Heath\n\n\nChapters\n\n\n00:00 Sports and Team Loyalty\n02:57 Listener Feedback and App Development\n06:02 The Role of AI in Coding\n08:58 Using ChatGPT and Copilot Effectively\n11:58 Navigating iOS and Xcode Updates\n15:04 Exploring New Features in iPhone 16\n17:58 Maui and .NET Updates\n20:55 Understanding Workload Management in .NET\n24:03 The Importance of Staying Updated\n27:02 Building a Snack App for Disney World\n30:05 Creating a Content Button in Maui\n32:48 Final Thoughts and Future Plans\n\n\nYouTube\n\nYouTube: https://youtu.be/f9rAV9lW9tkLinks:YouTube","content_html":"
In this episode of Gone Mobile, Jon and Allan discuss a variety of topics ranging from sports team loyalty to the intricacies of app development. They delve into listener feedback about coding with AI tools like ChatGPT and Copilot, share insights on navigating iOS and Xcode updates, and explore new features in the iPhone 16. The conversation also covers updates in Maui and .NET, the importance of staying current with technology, and Jon's personal project of creating a snack app for Disney World. They conclude with a discussion on building a content button in Maui and the challenges of cross-platform development.
\n\nYouTube: https://youtu.be/f9rAV9lW9tk
Links:
","summary":"This week Jon and Allan talk about a variety of things from Copilot on Autopilot, building a Snack App for Disney, iOS and Xcode updates, the new iPhone, and building a ContentButton for .NET MAUI.","date_published":"2024-09-30T12:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/6df6f435-bdeb-4da2-9162-51acd1949ef5.mp3","mime_type":"audio/mpeg","size_in_bytes":31367436,"duration_in_seconds":3920}]},{"id":"ac7f620e-1249-4dfd-9c49-ea8be0b155ef","title":"120: Buffet Style Show","url":"https://www.gonemobile.io/120","content_text":"In this episode, Jon and Allan discuss various topics, including listener feedback, using SQLite for local data storage, changes in Android's page size, creating a personalized video for a Disney trip, and working on a marketing app with custom requirements. In this conversation, Jon and Allan discuss the challenges and best practices of using collection views and bindable layouts in mobile app development. They caution against nesting collection views and bindable layouts within each other, as it can lead to performance issues and difficulties with recycling views. They also emphasize the importance of using cancellation tokens to properly handle asynchronous operations and avoid memory leaks. The conversation concludes with a discussion on the EmbedIO plugin, which allows developers to host a local web server within their mobile apps.\n\nTakeaways\n\n\nListener feedback is important and should be addressed in future episodes\nUsing SQLite for local data storage can be a simple and efficient solution\nAndroid's change in page size will require rebuilding native libraries\nCreating a personalized video for a Disney trip can be a fun and memorable experience\nWorking on a marketing app with custom requirements can be challenging but rewarding Avoid nesting collection views and bindable layouts within each other to prevent performance issues and difficulties with view recycling\nUse cancellation tokens to properly handle asynchronous operations and avoid memory leaks\nConsider alternative approaches, such as lazy loading or logical collapsing, when dealing with large datasets or complex UI structures\nThe EmbedIO plugin allows developers to host a local web server within their mobile apps\n\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nAudio/Video Engineer: Jim Heath\n\n\nChapters\n\n\n00:00 Introduction and Listener Feedback\n03:47 Using SQLite for Local Data Storage\n12:11 Android's Change in Page Size\n16:17 Creating a Personalized Video for a Disney Trip\n20:12 Working on a Marketing App with Custom Requirements\n31:11 Authentication Flows and Security\n49:03 Challenges with Collection Views and Bindable Layouts\n53:11 Avoid Nesting Scrolling Views\n01:01:25 Exploring the EmbedIO Plugin\n\n\nYouTube: https://youtu.be/MH4bwX3JsNYLinks:unosquare/embedio: A tiny, cross-platform, module based web server for .NET","content_html":"In this episode, Jon and Allan discuss various topics, including listener feedback, using SQLite for local data storage, changes in Android's page size, creating a personalized video for a Disney trip, and working on a marketing app with custom requirements. In this conversation, Jon and Allan discuss the challenges and best practices of using collection views and bindable layouts in mobile app development. They caution against nesting collection views and bindable layouts within each other, as it can lead to performance issues and difficulties with recycling views. They also emphasize the importance of using cancellation tokens to properly handle asynchronous operations and avoid memory leaks. The conversation concludes with a discussion on the EmbedIO plugin, which allows developers to host a local web server within their mobile apps.
\n\nYouTube: https://youtu.be/MH4bwX3JsNY
Links:
","summary":"From listener feedback, AI videos, cool things being worked on, to more tales from the crypt, this little bit of everything episode has it all!","date_published":"2024-09-23T12:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/ac7f620e-1249-4dfd-9c49-ea8be0b155ef.mp3","mime_type":"audio/mpeg","size_in_bytes":90743624,"duration_in_seconds":3997}]},{"id":"91ff2146-7440-43e2-a6aa-346b8f8ef4ac","title":"119: In App Purchasing Pain","url":"https://www.gonemobile.io/119","content_text":"The conversation revolves around the challenges and complexities of implementing in-app purchases in mobile apps, specifically focusing on the iOS and Android platforms. The hosts discuss the history of in-app purchases, the revenue cut taken by app stores, the introduction of subscriptions, and the implementation details and testing process involved. They also touch on the limitations and changes in the APIs provided by Apple and Google, as well as the importance of proper testing to ensure a smooth user experience. The conversation discusses the challenges and frustrations of dealing with payment processors, specifically in the context of mobile app development. The hosts express their dissatisfaction with the complexity and lack of flexibility in existing payment systems, such as Apple's StoreKit and Google's Play Billing. They highlight the difficulties of implementing and maintaining payment functionality, including handling subscriptions, refunds, and different transaction states. The hosts also mention RevenueCat as a potential solution that abstracts away the complexities of payment processing and provides a more streamlined experience for developers. The conversation revolves around the challenges and frustrations of implementing in-app purchases in mobile apps. The hosts discuss their personal experiences with app stores, subscription management, and revenue cat. They also touch on the complexities of handling transactions, storing subscription data, and the limitations of the current in-app purchase systems.\n\nYouTube: https://youtu.be/cI0vf--ZQqY\n\nTakeaways\n\n\nIn-app purchases have evolved from one-time consumables to recurring subscriptions, allowing developers to generate continuous revenue.\nApp stores like Apple and Google take a percentage cut from in-app purchases, which can impact the profitability of developers.\nImplementing in-app purchases involves dealing with complex APIs, handling subscription renewals, and validating transactions.\nTesting in-app purchases is crucial to ensure a seamless user experience and avoid revenue loss.\nThe APIs and implementation details for in-app purchases differ between iOS and Android, with each platform having its own challenges and limitations. Existing payment processors for mobile apps, such as Apple's StoreKit and Google's Play Billing, can be complex and inflexible to work with.\nImplementing and maintaining payment functionality, including handling subscriptions, refunds, and transaction states, can be time-consuming and challenging for developers.\nRevenueCat is a potential solution that abstracts away the complexities of payment processing and provides a more streamlined experience for developers.\nHaving a backend service like RevenueCat handle payment processing can free up developers to focus on providing value to their users.\nSimplifying the payment process and providing clear documentation and examples can greatly improve the developer experience. Implementing in-app purchases can be challenging and frustrating\nApp stores have complex rules and limitations for in-app purchases\nSubscription management and revenue cat can help simplify the process\nHandling transactions and storing subscription data require careful consideration\n\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nAudio Engineer: Jim Heath\n\n\nChapters\n\n\n00:00 Introduction and Background\n03:05 The Evolution of In-App Purchases\n05:57 Implementing In-App Purchases: Challenges and Complexity\n10:00 The Importance of Proper Testing\n12:57 Differences in iOS and Android In-App Purchase APIs\n24:58 The Complexity of Payment Processors\n27:15 The Cost of Subscription Business\n29:11 The Complexity of API Configuration\n34:03 RevenueCat: Abstracting Payment Processing\n36:09 Simplifying the Developer Experience\n44:31 The Challenges of Implementing In-App Purchases\n50:01 Simplifying Subscription Management with Revenue Cat\n52:39 Handling Transactions and Storing Subscription Data\nLinks:James Montemagno's In-App Billing PluginYouTube Episode 119","content_html":"The conversation revolves around the challenges and complexities of implementing in-app purchases in mobile apps, specifically focusing on the iOS and Android platforms. The hosts discuss the history of in-app purchases, the revenue cut taken by app stores, the introduction of subscriptions, and the implementation details and testing process involved. They also touch on the limitations and changes in the APIs provided by Apple and Google, as well as the importance of proper testing to ensure a smooth user experience. The conversation discusses the challenges and frustrations of dealing with payment processors, specifically in the context of mobile app development. The hosts express their dissatisfaction with the complexity and lack of flexibility in existing payment systems, such as Apple's StoreKit and Google's Play Billing. They highlight the difficulties of implementing and maintaining payment functionality, including handling subscriptions, refunds, and different transaction states. The hosts also mention RevenueCat as a potential solution that abstracts away the complexities of payment processing and provides a more streamlined experience for developers. The conversation revolves around the challenges and frustrations of implementing in-app purchases in mobile apps. The hosts discuss their personal experiences with app stores, subscription management, and revenue cat. They also touch on the complexities of handling transactions, storing subscription data, and the limitations of the current in-app purchase systems.
\n\nYouTube: https://youtu.be/cI0vf--ZQqY
\n\nLinks:
","summary":"In this episode turned therapy session, Jon vents about In App Purchases and why they are so hard, too hard. Why are they so hard?!","date_published":"2024-09-16T12:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/91ff2146-7440-43e2-a6aa-346b8f8ef4ac.mp3","mime_type":"audio/mpeg","size_in_bytes":88895738,"duration_in_seconds":3878}]},{"id":"b32d6160-c068-4368-8357-4ea98c14c033","title":"118: Mediator for Mobile","url":"https://www.gonemobile.io/118","content_text":"In this episode, Jon and Allan discuss various topics, including office renovations, phone migrations, and the use of mediator patterns in app development. They explore the concept of vertical slicing in architecture and the benefits of using a mediator to route messages. Allan shares his experience with mediator patterns in server architecture and highlights the need for a mediator pattern in app development. They also touch on the scalability of mediator patterns and the potential challenges of using them in certain scenarios. The conversation explores the concept of using a mediator pattern to handle services in an app. The mediator pattern allows for loose coupling and easier unit testing. It also simplifies the management of common services and reduces the need for multiple service injections. The conversation also touches on the use of events and requests with responses in the mediator pattern. The implementation of the mediator pattern in the context of a Maui app is discussed, including handling events and requests, offline mode, caching, and resiliency. In this conversation, Jon and Allan discuss the benefits and use cases of using MediatR in mobile app development. They explore the concept of middleware and how it can be used to handle various aspects of app functionality. They also discuss the challenges of finding and managing dependencies in a loosely coupled architecture. Allan introduces his MediatR library and explains how it simplifies the implementation of Mediator patterns in mobile apps. They also touch on topics like offline caching, resiliency, and event handling.\n\nTakeaways\n\n\nMediator patterns can be used to vertically slice business domains in app development.\nMediators act as traffic cops, directing messages to the appropriate services.\nMediator patterns can improve code organization and reduce the need for injecting multiple services.\nUsing a mediator pattern can make testing and maintaining code easier.\nMediator patterns may not be suitable for high-frequency messaging or performance-critical scenarios. The mediator pattern can be used to handle services in an app, providing loose coupling and easier unit testing.\nUsing a mediator pattern simplifies the management of common services and reduces the need for multiple service injections.\nEvents and requests with responses are key components of the mediator pattern.\nThe mediator pattern can be implemented in a Maui app to handle events and requests, enable offline mode, caching, and resiliency.\nAttributes can be used to customize the behavior of the mediator pattern, such as handling offline mode, caching, and user notifications. MediatR is a powerful library that simplifies the implementation of Mediator patterns in mobile app development.\nMiddleware can be used to handle various aspects of app functionality, such as offline caching, resiliency, and event handling.\nLoosely coupled architectures can be challenging to manage, but tools like MediatR can help alleviate some of the complexity.\nFinding and managing dependencies in a messaging-based architecture can be difficult, but there are strategies like namespacing and code navigation that can help.\nMediatR provides a flexible and extensible solution for handling requests and events in mobile apps.\n\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nAudio Engineer: Jim Heath\n\n\nChapters\n\n\n00:00 Introduction and Office Renovations\n09:07 Phone Migrations and Mediator Patterns\n14:21 Understanding Mediator Patterns\n17:13 Challenges of Scaling Mediator Patterns\n23:04 Implementing the Mediator Pattern in a Maui App\n27:59 Enabling Offline Mode, Caching, and Resiliency\n41:42 Source Generation and Runtime Lookup\n43:24 Replay: Handling Async Enumerables\n46:04 Mediator as a Stepping Stone\n48:26 Removing Attributes and Changing Behavior\n52:05 Improving Developer Experience\n55:11 Using Essentials API for Main Thread Handling\n57:20 Offline Caching with MediatR\n01:00:18 Using Middleware for Request Handling\n01:02:34 Considering Dependencies and Library Usage\nLinks:Shiny Mediator — A Mediator for your .NET Apps with some of the most awesome middleware aroundMediatR — Simple, unambitious mediator implementation in .NETYouTube Episode 118","content_html":"In this episode, Jon and Allan discuss various topics, including office renovations, phone migrations, and the use of mediator patterns in app development. They explore the concept of vertical slicing in architecture and the benefits of using a mediator to route messages. Allan shares his experience with mediator patterns in server architecture and highlights the need for a mediator pattern in app development. They also touch on the scalability of mediator patterns and the potential challenges of using them in certain scenarios. The conversation explores the concept of using a mediator pattern to handle services in an app. The mediator pattern allows for loose coupling and easier unit testing. It also simplifies the management of common services and reduces the need for multiple service injections. The conversation also touches on the use of events and requests with responses in the mediator pattern. The implementation of the mediator pattern in the context of a Maui app is discussed, including handling events and requests, offline mode, caching, and resiliency. In this conversation, Jon and Allan discuss the benefits and use cases of using MediatR in mobile app development. They explore the concept of middleware and how it can be used to handle various aspects of app functionality. They also discuss the challenges of finding and managing dependencies in a loosely coupled architecture. Allan introduces his MediatR library and explains how it simplifies the implementation of Mediator patterns in mobile apps. They also touch on topics like offline caching, resiliency, and event handling.
\n\nLinks:
The conversation revolves around the topic of connectivity in remote areas and the use of offline apps. The hosts discuss their experiences with limited connectivity while traveling and camping. They also touch on the evolution of GPS technology and the challenges of offline mapping. The conversation highlights the importance of offline functionality in apps and the limitations of current map providers. The conversation covers various topics related to maps, offline capabilities, and communication technologies. The main themes include different map providers, the challenges of offline maps, the use of Bluetooth Low Energy (BLE) for communication, and the limitations of current location technologies. The conversation covers various topics related to offline functionality and Bluetooth technology. Allan discusses the importance of designing apps to work offline and the challenges that can arise when there is no internet connection. He also highlights the capabilities of Bluetooth 5 for data transfer and suggests using Bluetooth for offline communication when the internet is unavailable. The conversation touches on the concept of pause and resume for larger file transfers and the use of range requests in HTTP for resuming interrupted uploads. The hosts also share personal anecdotes about their experiences with slow internet connections and the use of download managers in the past.
\n\nLinks:
","summary":"Apps are increasingly reliant on connections always. What do you do to make apps still work out in the wild where there's no internet? Bluetooth, Maps, Data, and more!","date_published":"2024-08-12T12:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/d451a22d-5a39-41d3-ab8f-b6376b740f85.mp3","mime_type":"audio/mpeg","size_in_bytes":84953303,"duration_in_seconds":4058}]},{"id":"74f555ef-fb4e-4e1b-b4db-53bc1993ce3b","title":"116: What's new for .NET 9?","url":"https://www.gonemobile.io/116","content_text":"In this conversation, Jon and Allan discuss the upcoming features in .NET 9 and Maui. They talk about the challenges faced during the development of Maui and the improvements made in the tooling. They also discuss the new C# language features, including collection expressions and the system threading lock type. They touch on the concept of workloads and the introduction of workload version sets to improve the stability and repeatability of builds. They also mention the new title bar customization feature in Maui. In this conversation, Jon and Allan discuss several topics related to .NET MAUI. They cover the customization of the title bar, the new disconnect handlers feature, the embedding of Maui code into native apps, the upcoming CollectionView handler 2, and the potential switch to using unpackaged templates for Windows. They also mention the importance of having an escape hatch when using external libraries and the benefits of the dev loop on Windows. They conclude by encouraging listeners to leave five-star reviews and recommending the Warp tool for Mac users.\n\nTakeaways\n\n\nThe development of Maui faced challenges, but improvements have been made in the tooling.\nNew C# language features in .NET 9 include collection expressions and the system threading lock type.\nWorkloads and workload version sets have been introduced to improve the stability and repeatability of builds.\nMaui now has a title bar customization feature for windows. The conversation highlights the importance of open and transparent communication in the development process. Customizing the title bar in .NET MAUI allows for the addition of various elements such as icons and menus.\nDisconnect handlers in .NET MAUI help manage memory leaks and provide control over when resources are released.\nThe embedding feature in .NET MAUI allows developers to integrate Maui code into existing native apps.\nThe upcoming CollectionView handler 2 in .NET MAUI will use newer APIs, improving performance and reducing complexity.\nThere is a potential switch to using unpackaged templates for Windows in .NET MAUI, which would improve the development experience and deployment process.\nHaving an escape hatch when using external libraries allows for flexibility and easier swapping of components.\nThe dev loop on Windows is fast and efficient, making it a preferred platform for development.\nLeaving five-star reviews and recommending tools like the Warp tool for Mac users helps support the community and discover new resources.\n\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nA/V Engineer: Jim Heath\n\n\nChapters\n\n\n00:00 Introduction and Challenges in Maui Development\n02:31 New C# Language Features in .NET 9\n04:58 Workloads and Workload Version Sets\n10:00 Title Bar Customization in Maui\n14:20 Importance of Open and Transparent Communication\n32:56 Customizing the Title Bar\n39:30 Disconnect Handlers\n43:35 Embedding Maui Code\n49:05 CollectionView Handler 2\n55:44 Switching to Unpackaged Templates for Windows\n59:04 The Dev Loop on Windows\n01:03:52 Having an Escape Hatch\n01:05:56 Recommendation: The Warp Tool\nLinks:YouTube Episode 116","content_html":"In this conversation, Jon and Allan discuss the upcoming features in .NET 9 and Maui. They talk about the challenges faced during the development of Maui and the improvements made in the tooling. They also discuss the new C# language features, including collection expressions and the system threading lock type. They touch on the concept of workloads and the introduction of workload version sets to improve the stability and repeatability of builds. They also mention the new title bar customization feature in Maui. In this conversation, Jon and Allan discuss several topics related to .NET MAUI. They cover the customization of the title bar, the new disconnect handlers feature, the embedding of Maui code into native apps, the upcoming CollectionView handler 2, and the potential switch to using unpackaged templates for Windows. They also mention the importance of having an escape hatch when using external libraries and the benefits of the dev loop on Windows. They conclude by encouraging listeners to leave five-star reviews and recommending the Warp tool for Mac users.
\n\nLinks:
","summary":".NET 9 is just around the corner! Listen to Jon & Allan talk about what they are excited to see in C# 13 and .NET MAUI!","date_published":"2024-08-05T12:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/74f555ef-fb4e-4e1b-b4db-53bc1993ce3b.mp3","mime_type":"audio/mpeg","size_in_bytes":103203127,"duration_in_seconds":4035}]},{"id":"a2a34c70-6ffb-4354-bcdd-0119f1f813d2","title":"115: All the AI","url":"https://www.gonemobile.io/115","content_text":"In this conversation, Jon and Allan discuss their love for coffee and the potential for an AI-powered coffee machine. They also delve into the topic of AI and its applications, particularly in image recognition and document intelligence. Allan shares his experience with training models for forms recognition and credit card scanning, highlighting the benefits of AI in automating data extraction. They also touch on the challenges of image resolution and the potential for on-device AI models. The conversation covers topics such as on-device barcode scanning, Azure Vision, Firebase ML, multilingual apps, and the use of AI in documentation and issue management on GitHub. In this conversation, Allan and Jon discuss their experiences with source generators and AI. They talk about the challenges and benefits of using source generators in their projects and how AI can be applied in various domains. They also mention the importance of understanding the limitations and potential liabilities of AI systems. Additionally, they mention new barcode scanning packages for Maui and reflect on their past experiences with native packages.\n\nTakeaways\n\n\nAI can be applied to improve the coffee-making process, leading to better quality and automation.\nAI has made significant advancements in image recognition and document intelligence, enabling the extraction of data from various sources.\nTraining AI models for specific tasks, such as forms recognition and credit card scanning, can greatly enhance data processing and automation.\nImage resolution and optimization are crucial factors in achieving accurate results with AI models.\nThe potential for on-device AI models offers benefits such as reduced bandwidth usage and improved energy efficiency. On-device barcode scanning is available through Azure Vision and Firebase ML.\nAzure Document Intelligence SDK works well in Maui apps and can be used for tasks like credit card scanning.\nAI can be used to automate documentation writing and make it sound more professional.\nAI can help identify duplicate issues and provide relevant suggestions on GitHub.\nAI language models like ChatGPT can be used to generate code samples and improve productivity.\nAI language models can also be used for multilingual apps and translation tasks.\nRoslyn analyzers can be used to analyze and provide suggestions for code quality and best practices. Source generators can be a powerful tool for generating code and fixing issues, but they require a good understanding of the underlying syntax and tree structure.\nAI can be used in various domains, such as creating assistants and analyzing data, but it's important to consider the potential liabilities and ensure accurate results.\nNew barcode scanning packages for Maui, such as 'barcode-mobile.Maui' and 'barcode-scanning.native.Maui', provide improved functionality and integration with Apple Vision and AndroidX.\nUnderstanding the limitations and potential costs of AI systems is crucial for effective implementation and user satisfaction.\nReflecting on past experiences with native packages, such as ACR Dialogues and HUD, highlights the longevity and continued use of certain libraries in the development community.\n\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nAudio Engineer: Jim Heath\n\n\nChapters\n\n\n00:00 The Quest for the Perfect Cup of Coffee: AI-Powered Coffee Machines\n03:21 Advancements in Image Recognition and Document Intelligence with AI\n07:37 Automating Data Extraction with AI: Forms Recognition and Credit Card Scanning\n11:52 Optimizing Image Resolution for Accurate AI Results\n18:12 The Potential of On-Device AI Models: Efficiency and Convenience\n20:40 On-Device Barcode Scanning\n24:08 Azure Document Intelligence and Maui Apps\n26:11 Automating Documentation Writing\n37:14 AI-Powered Issue Management on GitHub\n40:08 AI for Multilingual Apps and Translation Tasks\n42:42 Using Roslyn Analyzers for Code Quality\n42:51 Introduction\n43:00 Challenges and Benefits of Source Generators\n43:29 Applying AI in Various Domains\n44:29 Creating Analyzers and Code Fixers\n45:34 New Barcode Scanning Packages for Maui\n46:21 Exploring Font Scaling and Modifiers\n48:09 Understanding the Limitations and Liabilities of AI Systems\n51:48 AI in Motion Detection and Trail Cameras\n52:41 Using OpenAI Library for Creating Assistants\n56:54 Reflecting on Past Experiences with Native Packages\n01:02:01 New Barcode Scanning Packages for Maui\n01:03:22 Long Live Barcode Scanning\n01:06:04 Conclusion\nLinks:Barcode Scanning Native (MAUI)Barcode Scanner MobileYouTube Episode 115YouTube Episode 114","content_html":"In this conversation, Jon and Allan discuss their love for coffee and the potential for an AI-powered coffee machine. They also delve into the topic of AI and its applications, particularly in image recognition and document intelligence. Allan shares his experience with training models for forms recognition and credit card scanning, highlighting the benefits of AI in automating data extraction. They also touch on the challenges of image resolution and the potential for on-device AI models. The conversation covers topics such as on-device barcode scanning, Azure Vision, Firebase ML, multilingual apps, and the use of AI in documentation and issue management on GitHub. In this conversation, Allan and Jon discuss their experiences with source generators and AI. They talk about the challenges and benefits of using source generators in their projects and how AI can be applied in various domains. They also mention the importance of understanding the limitations and potential liabilities of AI systems. Additionally, they mention new barcode scanning packages for Maui and reflect on their past experiences with native packages.
\n\nLinks:
","summary":"Everything has AI in it now. What does that even mean anymore? How have Allan and Jon been using AI in their apps, in their lives?","date_published":"2024-07-29T12:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/a2a34c70-6ffb-4354-bcdd-0119f1f813d2.mp3","mime_type":"audio/mpeg","size_in_bytes":88379193,"duration_in_seconds":4068}]},{"id":"7af3da98-5bbe-4789-9ee5-3688302e0733","title":"114: What does your Backend look like?","url":"https://www.gonemobile.io/114","content_text":"In this episode, Jon and Allan discuss various topics related to backend development. They start by joking about Canadian stereotypes and accents. Then, they dive into the world of backend development using ASP.NET Core and API controllers. They talk about the changes in API controllers and the use of IActionResult. They also discuss the benefits of using OpenAPI and generating contracts from it. They mention tools like Kyoto and Refit/Refitter for generating contracts and API clients. The conversation ends with a humorous remark about the possibility of a future tool called 'Refitist.' The conversation covers topics such as Refit, resiliency, GraphQL, OData, and Mediator pattern. Refit is discussed as a tool to generate code for API consumption. Resiliency is mentioned as a client-side concern, and the use of Polly for retrying failed requests is debated. GraphQL and OData are compared in terms of their usefulness and complexity. The Mediator pattern is introduced as a way to structure code and facilitate future scalability. Real-time communication with SignalR is briefly mentioned. The conversation covers topics such as real-time data streaming, the use of Docker for development and deployment, and experiences with different SQL databases. The hosts discuss the pros and cons of real-time data streaming and the various methods available. They also explore the use of Docker for local development and deployment, highlighting its benefits in creating consistent environments. The conversation then shifts to experiences with different SQL databases, including Oracle, MySQL, and SQL Server. They discuss the challenges and advantages of each database and the importance of proper database design and optimization. In this final part of the conversation, Allan and Jon discuss their experiences with different backend technologies, including Postgres SQL and backend-as-a-service platforms like Firebase and Apprite. They also touch on the challenges of managing costs and scalability in cloud services. The episode concludes with a mention of the Packages of the Week segment and a reminder for listeners to leave a five-star review.\n\nTakeaways\n\n\nBackend development in ASP.NET Core involves using API controllers and IActionResult.\nOpenAPI is a useful tool for generating contracts and defining API endpoints.\nTools like Kyoto and Refit/Refitter can be used to generate contracts and API clients.\nThe conversation highlights the importance of keeping up with changes in backend development tools and practices. Refit is a tool for generating code to consume APIs\nResiliency is a client-side concern and can be handled with tools like Polly\nGraphQL and OData are compared in terms of their usefulness and complexity\nThe Mediator pattern is a way to structure code and facilitate future scalability\nReal-time communication with SignalR is challenging for mobile apps Real-time data streaming methods vary and depend on the specific use case and requirements.\nDocker is a useful tool for creating consistent development and deployment environments.\nDifferent SQL databases have their own strengths and weaknesses, and the choice depends on the specific needs of the project.\nProper database design and optimization are crucial for efficient and scalable applications. Postgres SQL is a reliable and fast database option with excellent driver support in .NET\nBackend-as-a-service platforms like Firebase and Apprite offer a comprehensive set of tools and infrastructure for building apps\nManaging costs and scalability in cloud services can be challenging, but it's important to find the right balance\nConsider leaving a five-star review for the podcast to show support and provide feedback\n\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nAudio Engineer: Jim Heath\n\n\nChapters\n\n\n00:00 Introduction and Canadian Stereotypes\n04:42 Exploring Backend Development\n09:03 Streaming Results and OpenAI\n13:52 Generating Contracts with Kyoto and Refit/Refitter\n19:46 The Future of Backend Development\n27:19 Comparing GraphQL and OData\n32:59 Understanding the Mediator pattern\n43:11 Real-time communication challenges with SignalR\n45:06 Real-Time Data Streaming\n48:36 Docker for Development and Deployment\n55:46 Experiences with SQL Databases\n01:09:28 Importance of Database Design and Optimization\n01:19:13 Challenges of Managing Costs and Scalability in Cloud Services\n01:30:54 Don't Forget to Leave a Five-Star Review\nLinks:MediatRGraphQL .NETChilliCream (GraphQL)","content_html":"In this episode, Jon and Allan discuss various topics related to backend development. They start by joking about Canadian stereotypes and accents. Then, they dive into the world of backend development using ASP.NET Core and API controllers. They talk about the changes in API controllers and the use of IActionResult. They also discuss the benefits of using OpenAPI and generating contracts from it. They mention tools like Kyoto and Refit/Refitter for generating contracts and API clients. The conversation ends with a humorous remark about the possibility of a future tool called 'Refitist.' The conversation covers topics such as Refit, resiliency, GraphQL, OData, and Mediator pattern. Refit is discussed as a tool to generate code for API consumption. Resiliency is mentioned as a client-side concern, and the use of Polly for retrying failed requests is debated. GraphQL and OData are compared in terms of their usefulness and complexity. The Mediator pattern is introduced as a way to structure code and facilitate future scalability. Real-time communication with SignalR is briefly mentioned. The conversation covers topics such as real-time data streaming, the use of Docker for development and deployment, and experiences with different SQL databases. The hosts discuss the pros and cons of real-time data streaming and the various methods available. They also explore the use of Docker for local development and deployment, highlighting its benefits in creating consistent environments. The conversation then shifts to experiences with different SQL databases, including Oracle, MySQL, and SQL Server. They discuss the challenges and advantages of each database and the importance of proper database design and optimization. In this final part of the conversation, Allan and Jon discuss their experiences with different backend technologies, including Postgres SQL and backend-as-a-service platforms like Firebase and Apprite. They also touch on the challenges of managing costs and scalability in cloud services. The episode concludes with a mention of the Packages of the Week segment and a reminder for listeners to leave a five-star review.
\n\nLinks:
","summary":"Many mobile apps interact with backend services. What type of tools and technologies are Allan and Jon using to build theirs?","date_published":"2024-07-22T12:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/7af3da98-5bbe-4789-9ee5-3688302e0733.mp3","mime_type":"audio/mpeg","size_in_bytes":84850504,"duration_in_seconds":5382}]},{"id":"b6b24d4a-c799-4a7d-8d2c-d58ca8e0bf32","title":"113: What's all the fuss about Drawn Controls?","url":"https://www.gonemobile.io/113","content_text":"The conversation revolves around the topic of drawn controls in mobile app development. The hosts discuss the pros and cons of using drawn controls versus native controls, as well as the challenges and considerations involved. They explore the idea of a hybrid approach, where some controls are drawn while others remain native. The conversation touches on topics such as scrolling, text entry, and performance implications. Overall, the hosts emphasize the importance of choosing the right approach based on the specific requirements and goals of the app. The conversation explores the challenges and considerations of drawing controls in cross-platform development. It discusses the options of using Skia or native APIs for rendering text and achieving platform-specific looks. The availability of drawing controls in MAUI is highlighted, along with the ability to choose between native drawing surfaces and SkiaSharp. The conversation also touches on the accessibility and sizing implications of drawing controls, as well as the potential benefits of easier unit testing and scalability. In this conversation, Allan and Jon discuss the challenges and considerations of using cross-platform code for drawing controls. They explore the value proposition of using libraries like Syncfusion and the trade-offs of using SkiaSharp for drawing controls. They also touch on the benefits of creating custom layouts and the potential of libraries like AlohaKit and DrawnUI for building visually appealing UIs.\n\nTakeaways\n\n\nThere are different approaches to implementing controls in mobile app development, including drawn controls and native controls.\nThe choice between drawn controls and native controls depends on the specific requirements and goals of the app.\nA hybrid approach, combining drawn controls and native controls, can provide a balance between customization and platform conformity.\nChallenges in implementing drawn controls include scrolling, text entry, and performance optimization.\nConsiderations for choosing between drawn controls and native controls include design consistency, resource management, and system integration. Drawing controls in cross-platform development can be challenging due to differences in rendering text and achieving platform-specific looks.\nMAUI offers the option to draw controls using native drawing surfaces or SkiaSharp, providing flexibility and consistency across platforms.\nAccessibility and sizing considerations are important when drawing controls, as they may require additional code to ensure proper functionality.\nDrawing controls can simplify unit testing and improve scalability by reducing the need for maintaining abstractions over native controls.\nThe availability of drawing controls in MAUI opens up possibilities for easier customization and design flexibility. Using cross-platform code for drawing controls can be challenging and may require additional considerations, such as accessibility APIs on each platform.\nThere is value in using libraries like Syncfusion for existing investments and documentation, but there may be limitations and complaints about library size.\nCreating custom layouts can be a solution for complex UI requirements and can be achieved by measuring and laying out elements.\nLibraries like AlohaKit and DrawnUI offer options for building visually appealing UIs with customizable controls and layouts.\n\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nAudio Engineer: Jim Heath\n\n\nChapters\n\n\n00:00 Introduction and Inside Joke\n01:13 Topic Introduction: Drawn Controls\n07:13 Design Consistency vs. Platform Conformity\n13:35 Text Entry and Customization\n22:26 Scrolling and Performance Optimization\n25:48 Challenges and Considerations of Drawing Controls\n27:33 The Availability of Drawing Controls in MAUI\n29:09 Accessibility and Sizing Implications of Drawing Controls\n31:17 Simplifying Unit Testing and Improving Scalability with Drawing Controls\n47:52 Introduction\n48:04 Challenges and Considerations of Cross-Platform Code for Drawing Controls\n48:59 The Value Proposition of Using Libraries like Syncfusion\n54:18 Exploring Custom Layouts for Complex UI Requirements\n01:00:08 Building Visually Appealing UIs with AlohaKit and DrawnUI\n01:08:07 Conclusion\nLinks:YouTube Episide 113","content_html":"The conversation revolves around the topic of drawn controls in mobile app development. The hosts discuss the pros and cons of using drawn controls versus native controls, as well as the challenges and considerations involved. They explore the idea of a hybrid approach, where some controls are drawn while others remain native. The conversation touches on topics such as scrolling, text entry, and performance implications. Overall, the hosts emphasize the importance of choosing the right approach based on the specific requirements and goals of the app. The conversation explores the challenges and considerations of drawing controls in cross-platform development. It discusses the options of using Skia or native APIs for rendering text and achieving platform-specific looks. The availability of drawing controls in MAUI is highlighted, along with the ability to choose between native drawing surfaces and SkiaSharp. The conversation also touches on the accessibility and sizing implications of drawing controls, as well as the potential benefits of easier unit testing and scalability. In this conversation, Allan and Jon discuss the challenges and considerations of using cross-platform code for drawing controls. They explore the value proposition of using libraries like Syncfusion and the trade-offs of using SkiaSharp for drawing controls. They also touch on the benefits of creating custom layouts and the potential of libraries like AlohaKit and DrawnUI for building visually appealing UIs.
\n\nLinks:
","summary":"Drawn UI vs Native abstractions sometimes feels like a tabs vs spaces debate. This week is all about pros and cons and everything in between around drawn controls from a .NET MAUI perspective!","date_published":"2024-07-15T11:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/b6b24d4a-c799-4a7d-8d2c-d58ca8e0bf32.mp3","mime_type":"audio/mpeg","size_in_bytes":101537158,"duration_in_seconds":4153}]},{"id":"4b825b89-e217-4350-b1dc-6c7afa4e6fd2","title":"112: The Tools & Libraries We Use","url":"https://www.gonemobile.io/112","content_text":"In this conversation, Jon and Allan discuss various tools they use for development. They talk about their preferred operating systems, monitors, and IDEs. They also mention specific tools like Insomnia for API testing and DevTools for debugging. The conversation is light-hearted and includes some banter about Canadian jokes and hockey. In this part of the conversation, Jon and Allan discuss various tools they use, including antivirus software, DevToys, Setapp, file managers, Docker, Cosmos DB, and coffee brewing equipment. In this conversation, Allan and Jon discuss various soft tools and libraries that they use in their development projects. They cover topics such as coffee-making methods, microphones and audio equipment, standing desks, and .NET libraries like MVVM Toolkit, .NET Orleans, and MediatorR. They also mention the Shiny Templates, a collection of templates for Xamarin and Maui apps. Overall, they provide insights into the tools and libraries they find useful in their development workflows.\n\nTakeaways\n\n\nVisual Studio and Visual Studio for Mac are popular IDEs for development\nInsomnia is a useful tool for API testing\nDevTools is great for debugging\nChoosing the right operating system and monitor can greatly enhance the development experience\nHaving a good set of tools can improve productivity and efficiency Antivirus software can sometimes cause issues with certain tools and applications.\nDevToys is a useful tool for various tasks like encoding/decoding strings and testing Xpath queries.\nSetapp is a subscription service that provides access to a wide range of tools and apps for Mac users.\nForklift is a file browser and development toolkit for Mac.\nTotal Commander is a file manager that offers a dual-pane interface and other advanced features.\nUsing a proper coffee grinder, like a burr grinder, can result in a better coffee brewing experience.\nChemex is a popular coffee brewing method that requires a specific type of kettle and filters.\nThe choice of tools can greatly impact productivity and user experience in software development. There are various soft tools and libraries that developers can use to enhance their development workflows.\nChoosing the right tools and libraries depends on the specific needs and requirements of the project.\nSome popular soft tools and libraries mentioned in the conversation include MVVM Toolkit, .NET Orleans, and MediatorR.\nThe Shiny Templates collection provides a wide range of templates for Xamarin and Maui apps.\nExperimenting with different tools and libraries can help developers find the ones that work best for them.\n\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nAudio/Video Engineer: Jim Heath\n\n\nChapters\n\n\n00:00 Introduction and Canadian Jokes\n02:32 Exploring the Tools We Use for Development\n09:17 Using Visual Studio and Rider for Development\n13:07 Testing APIs with Insomnia\n16:22 The Importance of a Good Monitor\n21:07 Other Useful Tools for Development\n22:30 Antivirus Software and Compatibility Issues\n23:35 DevToys: A Handy Tool for Various Tasks\n24:23 Setapp: A Subscription Service for Mac Users\n25:24 Forklift: A File Browser and Development Toolkit for Mac\n26:09 Total Commander: A Feature-Rich File Manager\n29:30 Docker: Simplifying Development and Deployment\n30:19 Kubernetes: A Powerful Container Orchestration Platform\n31:33 Cosmos DB: Offline Development Challenges\n33:19 PostgreSQL: A Versatile and Feature-Rich Database\n36:16 Parallels: Efficient Virtualization for Mac\n38:12 The Importance of a Proper Coffee Grinder\n39:39 Brewing Coffee with Chemex: A Unique Experience\n42:15 The Impact of Tools on Productivity and User Experience\n43:21 The Shower Method of Making Coffee\n45:36 Soft Tools for Podcasting\n48:19 Microphones and Audio Equipment\n49:22 Standing Desks and Key Lights\n52:18 Soft Tools for Mobile App Development\n55:49 MVVM Toolkit and .NET Orleans\n58:11 Shiny Templates for Xamarin and Maui Apps\n01:00:53 MediatorR for Modular Monoliths\nLinks:YouTube Episode 112","content_html":"In this conversation, Jon and Allan discuss various tools they use for development. They talk about their preferred operating systems, monitors, and IDEs. They also mention specific tools like Insomnia for API testing and DevTools for debugging. The conversation is light-hearted and includes some banter about Canadian jokes and hockey. In this part of the conversation, Jon and Allan discuss various tools they use, including antivirus software, DevToys, Setapp, file managers, Docker, Cosmos DB, and coffee brewing equipment. In this conversation, Allan and Jon discuss various soft tools and libraries that they use in their development projects. They cover topics such as coffee-making methods, microphones and audio equipment, standing desks, and .NET libraries like MVVM Toolkit, .NET Orleans, and MediatorR. They also mention the Shiny Templates, a collection of templates for Xamarin and Maui apps. Overall, they provide insights into the tools and libraries they find useful in their development workflows.
\n\nLinks:
","summary":"Every developer has a set of go-to tools and libraries that they seem to always come back to. What do Allan and Jon have in their toolbox?","date_published":"2024-07-08T11:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/4b825b89-e217-4350-b1dc-6c7afa4e6fd2.mp3","mime_type":"audio/mpeg","size_in_bytes":87813733,"duration_in_seconds":4092}]},{"id":"3a4e4047-a81f-4ccb-941a-5ce164ae2397","title":"111: Configuration & Logging","url":"https://www.gonemobile.io/111","content_text":"In this episode, Jon and Allan discuss logging and configuration in mobile app development. They talk about their personal experiences with configuration and logging, including using environment variables, embedded resources, and external libraries like Sentry. They also touch on the performance implications of logging and the potential for source generation to improve configuration handling. Overall, they emphasize the importance of considering the specific needs of the app and the trade-offs between convenience and performance. In this conversation, Allan and Jon discuss logging and error handling in mobile app development. They mention the importance of having good logging tools and the drawbacks of using outdated tools like App Center. They also talk about the benefits of using a local logging system for debugging purposes. The conversation concludes with a discussion on the proper use of try-catch blocks and the importance of handling exceptions at the right level.\n\nTakeaways\n\n\nConsider the specific needs of your app when implementing configuration and logging\nUse environment variables or constants for simple configuration needs\nBe mindful of the performance implications of logging, especially in mobile apps\nExplore external libraries like Sentry for crash reporting and error handling\nSource generation can be a powerful tool for handling configuration Having good logging tools is crucial for effective debugging and error handling in mobile app development.\nUsing outdated tools like App Center for logging can lead to code pollution and limited functionality.\nLocal logging can be useful for debugging purposes, especially in scenarios where cloud logging is not necessary or practical.\nTry-catch blocks should be used strategically and not excessively. They should be placed at the event triggers or where exceptions can be handled effectively.\nProper error handling and logging practices can help improve the overall stability and user experience of mobile apps.\n\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nAudio Engineer: Jim Heath\n\n\nChapters\n\n\n00:00 Introduction and Episode Number\n06:02 Exploring External Libraries for Error Handling\n11:04 Finding the Right Balance: Convenience vs Performance\n23:45 Considerations for Configuration and Logging in Mobile Apps\n26:11 The Performance Implications of Logging\n29:12 Logging and Performance: A Closer Look\n32:05 The Drawbacks of Using Outdated Logging Tools\n34:12 The Benefits of Local Logging\n36:26 Strategic Use of Try-Catch Blocks\n41:38 Proper Error Handling and Logging Practices\nLinks:Sentry IOShiny.Extensions.Configuration — A configuration library that pulls appsettings json from Android assets & iOS bundles allowing for repackaging in white label solutions while still support the common configuration patternYouTube Episode 111","content_html":"In this episode, Jon and Allan discuss logging and configuration in mobile app development. They talk about their personal experiences with configuration and logging, including using environment variables, embedded resources, and external libraries like Sentry. They also touch on the performance implications of logging and the potential for source generation to improve configuration handling. Overall, they emphasize the importance of considering the specific needs of the app and the trade-offs between convenience and performance. In this conversation, Allan and Jon discuss logging and error handling in mobile app development. They mention the importance of having good logging tools and the drawbacks of using outdated tools like App Center. They also talk about the benefits of using a local logging system for debugging purposes. The conversation concludes with a discussion on the proper use of try-catch blocks and the importance of handling exceptions at the right level.
\n\nLinks:
The conversation covers various mobile app development pitfalls and best practices, including the use of assembly scanning, loading large JSON files, and the misuse of dependency injection. The hosts share their experiences and insights on these topics, highlighting common mistakes and potential solutions. The conversation covers topics related to app performance, dependency injection, service management, constructor logic, and the impact of changes from Xamarin Forms to Maui. It delves into the challenges of resolving services, the use of async calls in constructors, and the importance of separating concerns in service management. The discussion emphasizes the need for thoughtful design and the avoidance of unnecessary complexity. In this conversation, Allan and Jon discuss the challenges and misconceptions surrounding observable collections in app development. They explore the performance implications, misuse, and alternative solutions, as well as the complexities of source generators and incremental generators. The conversation also touches on the importance of learning from mistakes and the potential for Roslyn analyzers in XAML. The episode concludes with a discussion about a new plugin package and listener feedback.
\n\nLinks:
","summary":"Allan and Jon have seen some scary things, and survived to talk about them on this episode! Hear what frightening faux pas have developers committed in their Xamarin and MAUI apps!","date_published":"2024-06-14T13:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/afec8e73-f8ec-4262-9c5a-b96e6ac005ac.mp3","mime_type":"audio/mpeg","size_in_bytes":92071653,"duration_in_seconds":4221}]},{"id":"b0e9d390-d8b0-4f01-90e2-2e04db443fba","title":"109: Dependency Injection - Beyond the Basics","url":"https://www.gonemobile.io/109","content_text":"The conversation delves into the topic of dependency injection (DI) and its evolution over the years. It covers the history of DI, different DI libraries, considerations for mobile development, and the future of DI with source generation. The discussion also touches on performance optimizations and the impact of DI on app startup time. The conversation covers topics related to dependency injection, scoping mechanisms, and the challenges of managing scopes in Maui apps. It also delves into the use of Prism and the need for out-of-the-box conventions for handling life cycles and navigation services in Maui. The conversation covers a deep dive into dependency injection, scope boundaries, and the challenges of managing dependencies in the context of mobile app development. It also delves into the nuances of using different DI containers and the impact on app performance. The hosts share their experiences, insights, and recommendations for handling these complexities effectively.\n\nTakeaways\n\n\nDependency injection has evolved over the years and has become a crucial part of app development, especially in the mobile space.\nDifferent DI libraries have their own strengths and considerations, and the choice of library depends on the specific use case and performance requirements.\nThe future of DI may involve source generation, which could lead to significant improvements in performance and reduce complexity in the registration process.\nConsiderations for mobile development include the impact of DI on app startup time and the need for performance optimizations.\nProperty injection and constructor injection are both relevant approaches in DI, and the choice between them depends on the specific requirements of the application. Understanding the challenges of managing scopes in Maui apps\nThe need for out-of-the-box conventions for handling life cycles and navigation services in Maui\nInsights into the use of Prism and its impact on dependency injection in Maui apps Understanding scope boundaries is crucial for effective dependency injection in mobile app development.\nChoosing the right DI container can significantly impact app performance and memory management.\nManaging dependencies and understanding scope lifetimes is essential for avoiding memory leaks and performance issues in mobile apps.\n\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nAudio Engineer: Jim Heath\n\n\nChapter\n\n\n00:00 The Evolution of Dependency Injection\n07:18 Considerations for Mobile Development\n13:47 The Future of Dependency Injection\n23:23 Understanding Scoping Mechanisms and Life Cycles\n26:34 The Need for Out-of-the-Box Conventions in Maui\n29:04 Dependency Injection and Prism in Maui Apps\n41:28 Understanding Scope Boundaries in Dependency Injection\n43:21 Common Misconceptions about Dependency Injection\n45:23 Impact of Dependency Injection in Prism and Maui Apps\n47:11 Debugging and Validation in Dependency Injection\n53:45 Audio Quality and Listener Engagement\nLinks:.NET MAUI Micro MVVM — A small MVVM framework with navigation services & lifecycle built around .NET MAUI Shell by the great Dan SiegelDryIoc — DryIoc is fast, small, full-featured IoC Container for .NET","content_html":"The conversation delves into the topic of dependency injection (DI) and its evolution over the years. It covers the history of DI, different DI libraries, considerations for mobile development, and the future of DI with source generation. The discussion also touches on performance optimizations and the impact of DI on app startup time. The conversation covers topics related to dependency injection, scoping mechanisms, and the challenges of managing scopes in Maui apps. It also delves into the use of Prism and the need for out-of-the-box conventions for handling life cycles and navigation services in Maui. The conversation covers a deep dive into dependency injection, scope boundaries, and the challenges of managing dependencies in the context of mobile app development. It also delves into the nuances of using different DI containers and the impact on app performance. The hosts share their experiences, insights, and recommendations for handling these complexities effectively.
\n\nLinks:
In this conversation, Jon and Allan discuss various topics related to architecture and performance in mobile app development. They touch on the challenges of implementing the MVVM pattern and the potential for excessive property changed notifications. They also discuss the use of observable collections and the importance of using them only when necessary. Additionally, they express their dislike for messaging services and suggest using events or actions instead. Overall, the conversation emphasizes the need for thoughtful architecture and optimization in mobile app development. The conversation explores the use of mediator pattern in mobile and app development. The mediator pattern is seen as a solution to prevent service overrun and to provide logical separation in the app. It allows for vertical slicing of concerns and prevents the need for injecting multiple services. The conversation also discusses the challenges of messaging services and the benefits of using a mediator pattern in terms of scalability, error handling, and unit testing. The potential application of the mediator pattern in Xamarin and .NET Maui apps is explored. In this conversation, Allan and Jon discuss the concept of using a mediator pattern in mobile app development. They explore the benefits of using a mediator to handle communication between different components of an app, such as view models and services. They also discuss existing implementations of the mediator pattern, such as MediatR, and potential future developments in this area. Overall, they highlight the potential value of using a mediator pattern in mobile app architecture.
\n\nLinks:
","summary":"What's tired and what's wired? There's been a number of architecture patterns used in mobile apps over the years. This episode talks about some of them, as well as some new ideas for how to architect apps built across large teams.","date_published":"2024-05-31T13:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/9aa7353c-e805-4129-9643-abbb4a3a0a72.mp3","mime_type":"audio/mpeg","size_in_bytes":81060608,"duration_in_seconds":4098}]},{"id":"e32138c8-9bc5-4f7a-b6da-71d3cae7ae3e","title":"107: IoT and Small Devices","url":"https://www.gonemobile.io/107","content_text":"In this conversation, Jonathan discusses his experience with building automation control systems for his swimming pool using microcontrollers and IoT devices. He talks about controlling the pool temperature, pool pumps, and a saltwater generator. He also explores the challenges and considerations of using different microcontrollers, such as the ESP8266 and the Meadow board, which runs .NET. Jonathan shares his passion for building IoT projects and the potential for using favorite programming languages in these environments. The conversation covers various topics related to IoT platforms, including the evolution of hardware into software-as-a-service (SaaS) platforms, the expansion of Meadow's ecosystem, the integration of Raspberry Pi with Meadow, the challenges of running web servers on microcontrollers, and personal projects involving IoT devices. The conversation also touches on the use of Meadow in pool automation and coffee brewing, as well as the ingenuity of building custom solutions using sensors and Raspberry Pi.\n\nTakeaways\n\n\nBuilding automation control systems for swimming pools using microcontrollers and IoT devices is a fascinating and practical application of technology.\nControlling the pool temperature, pool pumps, and other aspects of pool maintenance can be automated using microcontrollers and relays.\nDifferent microcontrollers, such as the ESP8266 and the Meadow board, offer various capabilities and programming options for building IoT projects.\nThe Meadow board, which runs .NET, provides a more familiar programming environment for developers and offers the potential for using favorite programming languages in IoT - projects. IoT platforms often evolve from hardware devices to full-fledged software-as-a-service (SaaS) platforms.\nMeadow is building an ecosystem around its platform, expanding its libraries and compatibility with devices like Raspberry Pi.\nRunning web servers on microcontrollers like Meadow can be challenging, but Meadow provides solutions like BLE servers and basic web server functionality.\nPersonal projects involving IoT devices can range from pool automation to coffee brewing, and can be built using sensors and Raspberry Pi.\nBuilding custom solutions using sensors and Raspberry Pi can be a creative and practical way to solve real-world problems.\n\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nAudio Engineer: Jim Heath\n\n\nChapters\n\n\n00:00 Introduction and Background\n02:26 Interest in IoT and Microcontrollers\n03:50 Comparing IoT to Early Xamarin Days\n08:11 Controlling Pool Temperature with Microcontrollers\n09:37 Automating Pool Pumps and Saltwater Generator\n28:27 Exploring the Meadow Board and .NET in IoT\n33:19 The Evolution of IoT Platforms\n34:41 Building an Ecosystem and Extending Compatibility\n35:10 Challenges of Running Web Servers on Microcontrollers\n39:23 Personal Projects: Pool Automation and Coffee Brewing\n52:59 Meadow Desktop: Coding Against APIs and Simulating Graphics\n01:03:38 Building Custom Solutions with Sensors and Raspberry Pi\nLinks:Meadow Desktop","content_html":"In this conversation, Jonathan discusses his experience with building automation control systems for his swimming pool using microcontrollers and IoT devices. He talks about controlling the pool temperature, pool pumps, and a saltwater generator. He also explores the challenges and considerations of using different microcontrollers, such as the ESP8266 and the Meadow board, which runs .NET. Jonathan shares his passion for building IoT projects and the potential for using favorite programming languages in these environments. The conversation covers various topics related to IoT platforms, including the evolution of hardware into software-as-a-service (SaaS) platforms, the expansion of Meadow's ecosystem, the integration of Raspberry Pi with Meadow, the challenges of running web servers on microcontrollers, and personal projects involving IoT devices. The conversation also touches on the use of Meadow in pool automation and coffee brewing, as well as the ingenuity of building custom solutions using sensors and Raspberry Pi.
\n\nLinks:
","summary":"Microcontrollers, IoT, and small form factor devices are plentiful and cheap, and they can run .NET on them now too! This episode is all about them and experiences writing code for these devices.","date_published":"2024-05-24T12:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/e32138c8-9bc5-4f7a-b6da-71d3cae7ae3e.mp3","mime_type":"audio/mpeg","size_in_bytes":92170117,"duration_in_seconds":4042}]},{"id":"4aedd8b7-a3fe-4f88-afc0-127c5f7741d4","title":"106: Structuring Apps","url":"https://www.gonemobile.io/106","content_text":"The conversation discusses the importance of structuring apps in terms of business requirements and how to make them easier to navigate and understand. It emphasizes the need to focus on translating business requirements into technology and suggests organizing projects based on business logic rather than technology layers. The conversation also touches on the use of services and the benefits of grouping them by section or feature. Additionally, the conversation explores the challenges of using IL manipulators and the limitations of certain frameworks in the context of C# hot reload. It concludes with a discussion on the need for base implementations and templates that provide guidance on structuring apps and implementing MVVM patterns. In this conversation, Jonathan and John discuss the importance of structuring services in mobile app development. They explore the use of MVVM frameworks like Prism and the challenges of writing technical code on top of existing tech services. They also discuss the benefits of using events and observables in services, as well as the use of dependency injection and the Microsoft implementation. The conversation concludes with a recommendation for the Refit library as the plugin packager product of the week.\n\nTakeaways\n\n\nOrganize projects based on business logic rather than technology layers\nGroup services by section or feature to improve discoverability\nBe cautious when using IL manipulators in mobile apps\nConsider the limitations of certain frameworks in the context of C# hot reload\nProvide base implementations and templates to guide app structure and MVVM implementation Structuring services in mobile app development is crucial for maintaining code organization and scalability.\nMVVM frameworks like Prism provide a comprehensive structure for building full-featured apps.\nWriting technical code on top of existing tech services can lead to complexity and bugs.\nUsing events and observables in services can simplify communication between components and reduce code duplication.\nDependency injection is a powerful tool for managing service dependencies and improving testability.\nThe Refit library is a recommended tool for generating HTTP clients from interfaces in a clean and efficient way.\n\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nAudio Engineer: Jim Heath\n\n\nChapters\n\n\n00:00 Introduction\n00:59 Challenges of App Layout\n01:27 Discoverability of Business Logic\n03:18 Organizing Projects by Business Logic\n04:47 Grouping Services by Section\n06:44 Considerations for Global Services\n08:42 Moving Services to Relevant Folders\n10:03 Multiple Implementations of Services\n13:18 Challenges of IL Manipulators and C# Hot Reload\n19:07 Importance of Base Implementations and Templates\n00:12 Introduction\n00:29 Structuring Services in Mobile App Development\n34:20 The Benefits of Using Events and Observables in Services\n39:43 Dependency Injection and the Microsoft Implementation\n53:07 Plugin Packager Product of the Week: Refit\n01:03:36 Conclusion\nLinks:Refit — The automatic type-safe REST libraryRefitter — Refitter is a tool for generating a C# REST API Client using the Refit library. Refitter can generate the Refit interface and contracts from OpenAPI specifications.","content_html":"The conversation discusses the importance of structuring apps in terms of business requirements and how to make them easier to navigate and understand. It emphasizes the need to focus on translating business requirements into technology and suggests organizing projects based on business logic rather than technology layers. The conversation also touches on the use of services and the benefits of grouping them by section or feature. Additionally, the conversation explores the challenges of using IL manipulators and the limitations of certain frameworks in the context of C# hot reload. It concludes with a discussion on the need for base implementations and templates that provide guidance on structuring apps and implementing MVVM patterns. In this conversation, Jonathan and John discuss the importance of structuring services in mobile app development. They explore the use of MVVM frameworks like Prism and the challenges of writing technical code on top of existing tech services. They also discuss the benefits of using events and observables in services, as well as the use of dependency injection and the Microsoft implementation. The conversation concludes with a recommendation for the Refit library as the plugin packager product of the week.
\n\nLinks:
Jon and Allan discuss their experiences and excitement surrounding tech conferences like WWDC and Google IO. They reminisce about attending conferences in the past and the thrill of new announcements and hardware giveaways. They also speculate on what they hope to see at upcoming conferences, such as immersive movies and a foldable iPhone. The conversation touches on the evolution of UI design and the convenience of using smartphones as cameras. The conversation covers topics such as foldable phones, APIs, UI changes, app stores, and permissions. The hosts discuss their preferences for foldable phones and the potential impact on UI design. They also explore the idea of integrating AI and context awareness into app development. The conversation touches on the App Store fees and the review process. They express their frustrations with Android permissions and suggest improvements for a more streamlined process. The conversation covers various topics including the challenges of changing APIs, the user experience of notifications on different platforms, the potential for new features in Apple TV, the power of Apple's M-series chips, the future of gaming on ARM-based devices, and a shout-out to Gerald Versluis and his packages.
\n\nThe conversation covers topics related to coffee-making methods and the use of XAML in app development. The hosts discuss their preferences for coffee machines and the process of making coffee. They also delve into the use of converters in XAML and the debate between putting logic in the view model or the view. The conversation explores the use of converters, extensions, and behaviors in XAML and their potential drawbacks. It also discusses the benefits of using compiled bindings and the importance of declaring data types in XAML for improved performance. The conversation touches on the use of XAML in Blazor and the potential future of XAML in web development. In this conversation, Jon and Allan discuss various optimization techniques for Xamarin.Forms and .NET MAUI apps. They cover topics such as compiled bindings, the performance impact of converters in collection views, optimizing XAML layouts, and the use of third-party libraries like Sharpnado CollectionView. They also touch on the challenges of building responsive layouts and the importance of considering platform-specific optimizations. Overall, the conversation provides valuable insights into improving the performance of Xamarin.Forms and .NET MAUI apps.
\n\nLinks:
","summary":"Love it or hate it, XAML is here to stay for awhile! Jon and Allan talk about the XAML good, the XAML bad, and the XAML ugly. There's no shame in using some type converters, but is there a better way?","date_published":"2024-04-26T15:30:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/33fce7bb-3cf6-4db6-bd6f-b1bd320e61c7.mp3","mime_type":"audio/mpeg","size_in_bytes":68252221,"duration_in_seconds":4228}]},{"id":"949d7a25-7338-4d9f-81c6-3947d26325fc","title":"103: Offline Data Sync: Cautionary Tales","url":"https://www.gonemobile.io/103","content_text":"The conversation revolves around the topic of offline battle tactics in mobile app development. Jon shares his experience with a pool app that required offline data storage and syncing. He initially used Realm, but faced issues with performance and scalability. He had to rewrite the login service and migrate data to a new backend. Allan discusses the challenges of offline data syncing, including handling deletes and updates, resolving conflicts, and ensuring data security. Jon explains his approach of using Cosmos DB and simple record types to handle offline data syncing. They emphasize the importance of considering the specific needs of the business and avoiding over-engineering solutions. The conversation explores the challenges and considerations of implementing offline functionality in mobile apps. The concept of 'end scars' is introduced, referring to the need to delete or reassign child data when the parent data is modified or deleted. The importance of handling offline scenarios gracefully and providing clear feedback to users is emphasized. The conversation also touches on the use of frameworks and abstractions for offline sync, with a discussion of Azure Mobile Apps and the limitations of such solutions. The benefits of using SQLite and the JSON support it offers are highlighted. In this final part of the conversation, Jon and Allan discuss their experiences with SQLite and offline functionality in mobile apps. They talk about the importance of optimizing app startup time and how SQLite can be a bottleneck in this process. They also share their preference for using SQL and the benefits of using SQLite-PCL-NET. The conversation then shifts to offline functionality and device-to-device communication, with Jon sharing his experience with Google's SDK for nearby communication. They briefly touch on the challenges of offline functionality in airplane environments and the limitations of Bluetooth connectivity. The episode concludes with a discussion on the importance of the SQLite raw library and its role in enabling advanced features like geolocation.\n\nTakeaways\n\n\nOffline data syncing in mobile app development can be challenging and requires careful consideration of business needs.\nChoosing the right technology for offline data storage and syncing is crucial for performance and scalability.\nHandling deletes, updates, conflicts, and data security are important aspects of offline data syncing.\nSimplifying the data model and using simple record types can make offline data syncing easier to implement and maintain.\nAvoid over-engineering solutions and focus on meeting the specific needs of the business. Offline functionality in mobile apps requires careful consideration and handling of data synchronization.\nHandling 'end scars' is crucial, ensuring that child data is properly managed when parent data is modified or deleted.\nProviding clear feedback to users about offline status and data synchronization is essential for a good user experience.\nUsing frameworks and abstractions for offline sync may have limitations and can lead to loss of control over data management.\nSQLite is a reliable and widely-used option for local offline storage, with the added benefit of JSON support for flexible data storage. Optimizing app startup time is crucial, and SQLite can be a bottleneck in this process.\nUsing SQL and libraries like SQLite-PCL-NET can provide more control and flexibility in working with databases.\nOffline functionality and device-to-device communication are important considerations in mobile app development.\nThe challenges of offline functionality in airplane environments include limited connectivity options and the need for peer-to-peer networks.\nThe SQLite raw library, maintained by Eric Sink, is a foundational piece for many SQLite-based solutions and enables advanced features like geolocation.\n\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nAudio Engineer: Jim Heath\n\n\nChapters\n\n\n00:00 Introduction and Setting the Stage\n01:43 Offline Battle Tactics and Scars\n08:14 Challenges with Realm and Login Service\n14:17 Avoiding Over-Engineering and Building Dependencies\n25:15 Simplifying the Data Model for Easier Syncing\n27:04 Conclusion and Key Takeaways\n27:34 Managing 'End Scars' in Data Synchronization\n29:23 Importance of Clear Feedback in Offline Scenarios\n32:30 Benefits of Using SQLite for Local Offline Storage\n37:28 Limitations of Frameworks for Offline Sync\n48:57 Optimizing App Startup Time and the Role of SQLite\n50:47 The Benefits of Using SQL and SQLite-PCL-NET\n51:20 Offline Functionality and Device-to-Device Communication\n52:21 Challenges of Offline Functionality in Airplane Environments\n55:18 The Importance of the SQLite Raw Library and Advanced Features\nLinks:SQLite Raw","content_html":"The conversation revolves around the topic of offline battle tactics in mobile app development. Jon shares his experience with a pool app that required offline data storage and syncing. He initially used Realm, but faced issues with performance and scalability. He had to rewrite the login service and migrate data to a new backend. Allan discusses the challenges of offline data syncing, including handling deletes and updates, resolving conflicts, and ensuring data security. Jon explains his approach of using Cosmos DB and simple record types to handle offline data syncing. They emphasize the importance of considering the specific needs of the business and avoiding over-engineering solutions. The conversation explores the challenges and considerations of implementing offline functionality in mobile apps. The concept of 'end scars' is introduced, referring to the need to delete or reassign child data when the parent data is modified or deleted. The importance of handling offline scenarios gracefully and providing clear feedback to users is emphasized. The conversation also touches on the use of frameworks and abstractions for offline sync, with a discussion of Azure Mobile Apps and the limitations of such solutions. The benefits of using SQLite and the JSON support it offers are highlighted. In this final part of the conversation, Jon and Allan discuss their experiences with SQLite and offline functionality in mobile apps. They talk about the importance of optimizing app startup time and how SQLite can be a bottleneck in this process. They also share their preference for using SQL and the benefits of using SQLite-PCL-NET. The conversation then shifts to offline functionality and device-to-device communication, with Jon sharing his experience with Google's SDK for nearby communication. They briefly touch on the challenges of offline functionality in airplane environments and the limitations of Bluetooth connectivity. The episode concludes with a discussion on the importance of the SQLite raw library and its role in enabling advanced features like geolocation.
\n\nLinks:
","summary":"Mobile apps and offline data synchronization are a match made in where? Listen to some cautionary tales and experiences in building apps with offline data synchronization scenarios! Jon and Allan have the battle scars to prove it!","date_published":"2024-04-19T17:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/949d7a25-7338-4d9f-81c6-3947d26325fc.mp3","mime_type":"audio/mpeg","size_in_bytes":88393893,"duration_in_seconds":3964}]},{"id":"7808f235-7b30-4e12-831f-a0d2343a8352","title":"102: You should learn some MSBuild","url":"https://www.gonemobile.io/102","content_text":"The conversation covers various topics related to MSBuild and project files. It starts with an introduction and a discussion about the weather. The hosts then delve into the history and evolution of MSBuild, including the transition to SDK style projects. They explain the structure of new project files and highlight the benefits of using CS Proj for managing NuGet packages and CI. The conversation also covers customizing project files for platform-specific assets and the use of conditions in project files. The hosts discuss the importance of workloads and the rationale behind different SDKs. They also touch on the future of workloads and the challenges associated with them. This conversation explores various aspects of MSBuild, including workloads, importing MSBuild from NuGet packages, building custom entitlements, adding items to build from NuGet packages, customizing build props and targets, writing custom MSBuild tasks, using custom tasks and source generators, incremental source generation, and Michaela's MSBuild Editor Extension. The hosts emphasize the importance of understanding MSBuild and encourage listeners to explore and experiment with CSProj files to optimize their build processes.\n\nTakeaways\n\n\nMSBuild is a powerful tool for managing project files and building applications.\nSDK style projects provide a more streamlined and approachable format for project files.\nCS Proj files can be customized to include platform-specific assets and configurations.\nUsing CS Proj for managing NuGet packages and CI can simplify the development process.\nWorkloads in MSBuild provide a way to manage and organize project dependencies and configurations. MSBuild is a powerful build system that allows for customization and automation of the build process.\nImporting MSBuild from NuGet packages provides an easier way to test nightly builds and service releases.\nCustomizing build props and targets allows for fine-grained control over the build process and the inclusion of specific assets.\nWriting custom MSBuild tasks in C# can be a powerful way to extend the build system and perform complex build operations.\nUsing custom tasks and source generators can enhance the build process and improve performance.\nMikayla's MSBuild Editor Extension provides helpful features like IntelliSense and package version management for CSProj files.\n\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nAudio Engineer: Jim Heath\n\n\nChapters\n\n\n00:00 Introduction and Weather\n00:20 Introduction to MSBuild\n01:12 Acquiring Taste for MSBuild\n03:17 Slim CS Proj\n04:03 Structure of New Project Files\n05:12 Default Maui Project Template\n06:36 Using CS Proj for NuGet Packages\n07:56 Benefits of Using CS Proj for CI\n08:26 Customizing Project Files for Platform-Specific Assets\n09:53 Leveraging MSBuild for Customization\n10:57 Command Line vs. CS Proj\n11:33 Importing Files and Directory Build Props\n12:37 Multiple SDK Imports\n13:15 Properties and Item Groups in Project Files\n14:05 Conditions in Project Files\n19:48 Rationale for Different SDKs\n22:19 Directory Build Props for Performance\n24:07 Workloads and SDK Imports\n26:17 Future of Workloads\n29:08 Challenges with Workloads\n31:09 MSBuild and Workloads\n32:03 Importing MSBuild from NuGet Packages\n33:12 Custom Entitlements and Build Props\n34:09 Building Custom Entitlements\n36:29 Adding Items to Build from NuGet Packages\n37:38 Automatically Making Apps Work with Libraries\n38:36 Customizing Build Props and Targets\n39:40 Doing Build-Related Tasks in MSBuild\n42:10 Writing Custom MSBuild Tasks\n44:23 Using Custom Tasks and Source Generators\n46:19 Incremental Source Generation\n49:46 Michaela's MSBuild Editor Extension\n56:19 Getting Started with MSBuild\nLinks:MSBuild Editor for Visual Studio","content_html":"The conversation covers various topics related to MSBuild and project files. It starts with an introduction and a discussion about the weather. The hosts then delve into the history and evolution of MSBuild, including the transition to SDK style projects. They explain the structure of new project files and highlight the benefits of using CS Proj for managing NuGet packages and CI. The conversation also covers customizing project files for platform-specific assets and the use of conditions in project files. The hosts discuss the importance of workloads and the rationale behind different SDKs. They also touch on the future of workloads and the challenges associated with them. This conversation explores various aspects of MSBuild, including workloads, importing MSBuild from NuGet packages, building custom entitlements, adding items to build from NuGet packages, customizing build props and targets, writing custom MSBuild tasks, using custom tasks and source generators, incremental source generation, and Michaela's MSBuild Editor Extension. The hosts emphasize the importance of understanding MSBuild and encourage listeners to explore and experiment with CSProj files to optimize their build processes.
\n\nLinks:
","summary":"You'll be eager to sprinkle some MSBuild magic into your projects after this episode!","date_published":"2024-04-12T00:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/7808f235-7b30-4e12-831f-a0d2343a8352.mp3","mime_type":"audio/mpeg","size_in_bytes":98686675,"duration_in_seconds":3524}]},{"id":"0823b9b3-dfd6-4315-a138-6c186bc128c0","title":"101: Slim Bindings","url":"https://www.gonemobile.io/101","content_text":"In this episode, Jon and Allan discuss the concept of slim bindings and their benefits. They explore the challenges of working with full bindings and the need for a more focused approach. The conversation centers around their experience with creating slim bindings for Firebase and other complex controls. They also touch on the difficulties of updating full bindings and the importance of understanding the API being consumed. The episode concludes with a discussion on the role of Sharpie in binding generation and the challenges of dependency management. In this episode, Jon and Allan discuss the challenges and possibilities of Swift interop with .NET and the ongoing work to make Swift interop possible with .NET. They also delve into the differences between Android and iOS bindings, including the ease of Android bindings and the challenges of Kotlin and generics. They explore the AndroidX library and the complexities of dependency management. The conversation concludes with a discussion on community efforts for bindings and the benefits of slim bindings.\n\nTakeaways\n\n\nSlim bindings offer a more focused and simplified approach to working with complex controls and APIs.\nCreating slim bindings requires a deep understanding of the API being consumed and the ability to map it to the target language.\nFull bindings can be challenging to update, especially when there are major changes between versions of the API.\nDependency management can be complex, and colliding dependencies can cause issues in the binding process.\nThe goal is to make binding generation repeatable and provide patterns and examples for popular libraries to simplify the process for developers. Swift interop with .NET is being actively worked on, making it easier to generate bindings and interop code.\nAndroid bindings can be easier than iOS bindings, but Kotlin and generics present challenges.\nAndroidX library and dependency management can be complex, but slim bindings can simplify the process.\nBinding at the bytecode level in Kotlin can be tricky, but slim bindings provide a workaround.\nCommunity efforts are underway to create and maintain bindings for various libraries and frameworks.\nSlim bindings offer a focused and simplified approach to binding native libraries.\n\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nAudio Engineer: Jim Heath\n\n\nChapters\n\n\n00:00 Introduction and Setting the Stage\n02:25 Understanding Slim Bindings\n04:15 Working on Firebase Bindings\n06:16 Challenges with Package Managers\n09:12 Creating Slim Bindings for Complex Controls\n11:40 The Difficulty of Updating Full Bindings\n14:27 The Value of Slim Bindings\n19:06 The Role of Sharpie in Binding Generation\n21:14 Making Binding Generation Repeatable\n22:42 Avoiding Duplicated Dependencies\n24:21 Challenges with Dependency Management\n25:17 Dealing with Colliding Dependencies\n25:44 Swift Interop with .NET\n28:10 Android and Kotlin Bindings\n30:23 Challenges with Kotlin and Generics\n32:23 AndroidX and Dependency Management\n39:12 Binding at the Bytecode Level\n46:39 Community Efforts for Bindings\n47:26 Upcoming Bindings and Slim Bindings\nLinks:Plugin Firebase","content_html":"In this episode, Jon and Allan discuss the concept of slim bindings and their benefits. They explore the challenges of working with full bindings and the need for a more focused approach. The conversation centers around their experience with creating slim bindings for Firebase and other complex controls. They also touch on the difficulties of updating full bindings and the importance of understanding the API being consumed. The episode concludes with a discussion on the role of Sharpie in binding generation and the challenges of dependency management. In this episode, Jon and Allan discuss the challenges and possibilities of Swift interop with .NET and the ongoing work to make Swift interop possible with .NET. They also delve into the differences between Android and iOS bindings, including the ease of Android bindings and the challenges of Kotlin and generics. They explore the AndroidX library and the complexities of dependency management. The conversation concludes with a discussion on community efforts for bindings and the benefits of slim bindings.
\n\nLinks:
","summary":"Slim? Focused? Call them what you want, but we think this is a nice way to integrate native libraries on iOS (and android too) into your .NET MAUI app!","date_published":"2024-04-04T10:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/0823b9b3-dfd6-4315-a138-6c186bc128c0.mp3","mime_type":"audio/mpeg","size_in_bytes":69964002,"duration_in_seconds":3132}]},{"id":"17db87fc-17ef-4982-86fa-c195caeb3c20","title":"100: 100th Episode Celebration with David & Maddy!","url":"https://www.gonemobile.io/100","content_text":"In this episode, the hosts celebrate the 100th episode of the podcast and engage in a casual conversation about various topics related to Xamarin and .NET MAUI. They introduce themselves and discuss their roles as product managers. The conversation covers the early days of Xamarin, the transition to .NET and mobile development, and the evolution of mobile development over the years. They also talk about the transition to Microsoft and the use of Microsoft tools. The episode concludes with a discussion about geographical locations and some trivia. The conversation covers the journey and challenges of.NET MAUI, including its adoption and success. It also explores the lessons learned and the importance of architecture and migration. The speakers reflect on the evolution of Xamarin and.NET MAUI and provide feedback and assessment of the current state of the project. In this episode, the hosts discuss various topics related to Maui and its tooling. They talk about the success of Maui and ports, the importance of reflecting on code and engineering, and the desired features in Maui. They also discuss the need for better tooling and templates, visualizing app navigation and image assets, and improving the shell and view model lifecycle. The hosts express their appreciation for the positive community and the engineering team. The episode concludes with a celebration of the 100th episode of the podcast.\n\nTakeaways\n\n\nThe hosts celebrate the 100th episode of the podcast and engage in a casual conversation about Xamarin and .NET MAUI.\nThey discuss their roles as product managers and their experiences with Xamarin and mobile development.\nThe conversation covers the early days of Xamarin, the transition to .NET and mobile development, and the evolution of mobile development over the years.\nThey also talk about the transition to Microsoft and the use of Microsoft tools, as well as their geographical locations and some trivia. The adoption of.NET MAUI has been steadily growing, with an increasing number of apps being developed using the framework.\nCustomer satisfaction and success stories are important indicators of the impact of.NET MAUI.\nThe journey of.NET MAUI has had its challenges, including delays and technical issues, but the team has been working hard to address them.\nLessons learned include the need for careful planning and evaluation of architectural decisions, as well as the importance of prioritizing tech debt and considering the impact on existing codebases during migration.\n\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nAudio Engineer: Jim Heath\n\n\nChapters\n\n\n00:00 Introduction and Episode 100 Celebration\n01:00 Introductions\n01:19 Background and Roles\n03:09 Early Days of Xamarin\n06:05 Transition to .NET and Mobile Development\n06:32 Evolution of Mobile Development\n09:30 Transition to Microsoft and Remote Work\n11:43 Transition to Microsoft Tools\n12:15 Transition to Microsoft Tools (contd.)\n13:06 Transition to Microsoft Tools (contd.)\n15:11 Transition to Remote Work\n16:24 Geographical Locations and Trivia\n18:06 The Journey of.NET MAUI\n19:10 Shipping.NET MAUI\n20:30 Adoption and Success of.NET MAUI\n22:20 Customer Impact and Satisfaction\n23:25 Challenges and Obstacles Faced\n25:40 Lessons Learned\n28:16 The Evolution of Xamarin and.NET MAUI\n31:17 Reflections on the Journey\n39:55 The Importance of Architecture and Migration\n43:37 Feedback and Assessment\n43:56 Success with Maui and Ports\n45:19 Reflecting on Code and Engineering\n46:39 Desired Features in Maui\n49:08 Tooling and Templates in Maui\n50:32 Visualizing App Navigation and Image Assets\n56:10 Improving Shell and View Model Lifecycle\n01:00:01 Enjoying the Outdoors and Positive Community\n01:02:57 Appreciating the Engineering Team and Community\n01:05:30 Conclusion and Episode 100 Celebration\nSpecial Guests: David Ortinau and Maddy Montaquila.Links:.NET MAUI","content_html":"In this episode, the hosts celebrate the 100th episode of the podcast and engage in a casual conversation about various topics related to Xamarin and .NET MAUI. They introduce themselves and discuss their roles as product managers. The conversation covers the early days of Xamarin, the transition to .NET and mobile development, and the evolution of mobile development over the years. They also talk about the transition to Microsoft and the use of Microsoft tools. The episode concludes with a discussion about geographical locations and some trivia. The conversation covers the journey and challenges of.NET MAUI, including its adoption and success. It also explores the lessons learned and the importance of architecture and migration. The speakers reflect on the evolution of Xamarin and.NET MAUI and provide feedback and assessment of the current state of the project. In this episode, the hosts discuss various topics related to Maui and its tooling. They talk about the success of Maui and ports, the importance of reflecting on code and engineering, and the desired features in Maui. They also discuss the need for better tooling and templates, visualizing app navigation and image assets, and improving the shell and view model lifecycle. The hosts express their appreciation for the positive community and the engineering team. The episode concludes with a celebration of the 100th episode of the podcast.
\n\nSpecial Guests: David Ortinau and Maddy Montaquila.
Links:
","summary":"Special guests Maddy Montaquila and David Ortinau join us on this very special 100th episode of the podcast to talk about past, present, and future of Xamarin and .NET MAUI","date_published":"2024-03-29T10:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/17db87fc-17ef-4982-86fa-c195caeb3c20.mp3","mime_type":"audio/mpeg","size_in_bytes":71950578,"duration_in_seconds":4026}]},{"id":"f9177f8a-0b61-4b16-9681-f7945d9bb288","title":"99: Architecting Plugins and Frameworks","url":"https://www.gonemobile.io/99","content_text":"In this episode, Jon and Allan discuss various topics related to creating and maintaining libraries and NuGet packages. They talk about their experiences with plugin libraries and the importance of supporting open source developers. They also touch on the challenges of avoiding vendor and framework lock-in. Overall, the conversation highlights the value of community-driven development and the need for collaboration and appreciation in the open source world. The conversation explores the process of creating libraries and plugins for cross-platform development. It delves into the challenges of balancing dependencies and code size, as well as the evolution of library development over time. The role of Microsoft Extensions and dependency injection in library development is also discussed. The conversation concludes with a discussion on the improvements in Maui and the use of Microsoft Extensions and DI in the framework. This part of the conversation explores the importance of familiar patterns and dependency injection in Xamarin development. It discusses the trade-off between performance and app size, as well as the challenges of implementing dependency injection in Xamarin.Forms. The conversation also touches on the growth of plugins in the Xamarin ecosystem and the controversy surrounding Reactive Extensions (RX). The creation of Xamarin Essentials and its goal of pleasing the majority of developers is highlighted, along with the focus on testability in Shiny. The chapter concludes with a discussion on the trade-off between performance and interfaces. In this conversation, Jon and Allan discuss various topics related to open source development, including generating interfaces and wrappers, elevating to platform API level, simplifying abstractions, creating custom implementations, using files and folders for caching, managing GitHub repos and libraries, forking and cloning repos, cleaning repos and business continuity, and appreciating open source contributors.\n\nTakeaways\n\n\nSupport open source developers and be kind to them.\nAvoid vendor and framework lock-in by creating your own libraries and packages.\nCollaboration and community-driven development are essential in the open source world.\nMaintaining and updating libraries and plugins requires ongoing effort and dedication.\nCreating libraries and plugins for cross-platform development requires careful consideration of dependencies and code size.\nThe evolution of library development has led to a more streamlined and accessible process.\nMicrosoft Extensions and dependency injection play a significant role in library development.\nMaui offers improvements in lifecycle management and the use of Microsoft Extensions and DI. Familiar patterns and dependency injection provide comfort and ease of use for Xamarin developers.\nBalancing performance and app size is a challenge in mobile development.\nPlugins play a significant role in extending the functionality of Xamarin applications.\nXamarin Essentials aims to provide essential functionality out of the box for Xamarin developers.\nTestability is an important consideration in the design of Xamarin libraries. Consider generating interfaces and wrappers to simplify the usage of platform APIs.\nElevate your code to the platform API level and avoid unnecessary abstractions.\nWhen creating custom implementations, focus on the core business logic and avoid abstracting unnecessary details.\nUse files and folders for caching data, as it can be a simple and effective solution.\nWhen managing GitHub repos and libraries, consider using a template for consistent setup.\nClone and fork repos to ensure business continuity and avoid dependencies on external sources.\nAppreciate and support open source contributors by providing constructive feedback and contributing back to the community.\n\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nAudio Engineer: Jim Heath\n\n\nChapters\n\n\n00:00 Introduction and Episode 100\n00:21 Discussion about Dad Shoes\n01:37 Number of Episodes Together\n03:03 Discussion about Plugin Libraries\n03:45 Continued Support for Native Libraries\n04:08 MVVM Cross and Native App Code\n05:13 Be Nice to Open Source Developers\n06:05 Creating Libraries and NuGet Packages\n07:15 MVVM Cross Plugin Ecosystem\n07:27 Avoiding Vendor Lock-in\n08:01 Discussion about Framework Lock-in\n08:38 Creating the Push Notification App\n11:53 Building Libraries and Plugins\n14:02 The Evolution of Library Development\n16:09 Approaching Cross-Platform Development\n19:04 Balancing Dependencies and Code Size\n22:36 The Role of Microsoft Extensions\n29:10 Improvements in Maui\n31:59 Using Microsoft Extensions and DI\n32:36 Comfortable Patterns and Familiarity\n33:11 The Importance of Dependency Injection\n33:40 Balancing Performance and App Size\n35:09 The Need for Infrastructure and Rapid Application Development\n35:38 The Challenges of Dependency Injection in Xamarin.Forms\n36:59 The Trade-off Between Startup Time and Competitiveness\n37:55 The Importance of Simple and Easy-to-Use Plugins\n38:48 The Benefits of Boilerplate Code in Maui\n40:06 The Growth of Plugins in the Xamarin Ecosystem\n40:55 The Term 'Plugin' and its Usage\n41:53 The Xamarin Component Store\n42:47 The Challenges of Selling Components\n44:41 Starting with the Interface and Adapting to Platforms\n46:47 Designing for Simplicity and Usefulness\n48:05 The Controversy of Reactive Extensions (RX)\n48:44 The Origins of Xamarin Essentials\n51:42 The Goal of Xamarin Essentials: Pleasing the Majority\n53:59 The Original Code Name for Xamarin Essentials\n55:06 The Focus on Testability in Shiny\n55:42 The Trade-off Between Performance and Interfaces\n56:31 Generating Interfaces and Wrappers\n56:47 Elevating to Platform API Level\n57:46 Simplifying Abstractions\n58:46 Creating Custom Implementations\n59:42 Wrapping Essentials Interfaces\n01:00:57 Using Files and Folders for Caching\n01:03:57 Managing GitHub Repos and Libraries\n01:05:14 Template for Repo Setup\n01:05:44 Forking and Cloning Repos\n01:07:07 Cleaning Repos and Business Continuity\n01:08:14 Supporting Open Source Projects\n01:12:21 Appreciating Open Source Contributors\nLinks:Create Your Own .NET MAUI Plugins with This Template","content_html":"In this episode, Jon and Allan discuss various topics related to creating and maintaining libraries and NuGet packages. They talk about their experiences with plugin libraries and the importance of supporting open source developers. They also touch on the challenges of avoiding vendor and framework lock-in. Overall, the conversation highlights the value of community-driven development and the need for collaboration and appreciation in the open source world. The conversation explores the process of creating libraries and plugins for cross-platform development. It delves into the challenges of balancing dependencies and code size, as well as the evolution of library development over time. The role of Microsoft Extensions and dependency injection in library development is also discussed. The conversation concludes with a discussion on the improvements in Maui and the use of Microsoft Extensions and DI in the framework. This part of the conversation explores the importance of familiar patterns and dependency injection in Xamarin development. It discusses the trade-off between performance and app size, as well as the challenges of implementing dependency injection in Xamarin.Forms. The conversation also touches on the growth of plugins in the Xamarin ecosystem and the controversy surrounding Reactive Extensions (RX). The creation of Xamarin Essentials and its goal of pleasing the majority of developers is highlighted, along with the focus on testability in Shiny. The chapter concludes with a discussion on the trade-off between performance and interfaces. In this conversation, Jon and Allan discuss various topics related to open source development, including generating interfaces and wrappers, elevating to platform API level, simplifying abstractions, creating custom implementations, using files and folders for caching, managing GitHub repos and libraries, forking and cloning repos, cleaning repos and business continuity, and appreciating open source contributors.
\n\nLinks:
","summary":"What does it take to build a plugin / framework / nuget /library, and why do we keep building them?","date_published":"2024-03-22T12:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/f9177f8a-0b61-4b16-9681-f7945d9bb288.mp3","mime_type":"audio/mpeg","size_in_bytes":96525849,"duration_in_seconds":4708}]},{"id":"70636311-5b54-4d30-9df6-543de10d9f24","title":"98: MAUI Blazor Hybrid Apps","url":"https://www.gonemobile.io/98","content_text":"In this conversation, Jon and Allan discuss Blazor hybrid development, specifically in the context of Maui. They explore the benefits and challenges of using Blazor in a hybrid setting, including performance considerations and compatibility with different platforms. They also discuss the use of Blazor web views in Maui apps and the integration of native APIs. The conversation highlights the flexibility and potential of Blazor hybrid for building mobile apps. In this conversation, Allan Ritchie and Jon discuss the challenges of cross-platform development and the differences between Web Assembly and Maui. They also explore the use of view models in Blazor and Maui, as well as the benefits of Maui for businesses. The conversation concludes with a discussion on the slow progress of web standards and the plugin packages of the week: MudBlazor and Radzen.\n\nTakeaways\n\n\nBlazor hybrid development allows for the integration of Blazor web views in Maui apps, providing the flexibility to leverage web technologies in a native app environment.\nBlazor's Razor syntax and evolving language features make it a powerful tool for building UI components, especially for forms and complex layouts.\nBlazor hybrid development can offer a faster development loop and improved productivity, especially when working on UI components that are shared between web and mobile platforms.\nThe performance of Blazor web views in Maui apps can vary depending on the platform and the debugging environment, but overall, it can provide a reasonably good user experience. Maui hybrid apps provide a way to run code in both Web Assembly and Maui, allowing for cross-platform development.\nView models in Blazor and Maui can be used to organize code and share functionality between different platforms.\nMaui offers performance advantages and a native look and feel compared to web-based solutions.\nMaui provides an escape route for rendering technology and opens up new hiring markets for businesses.\nThe slow progress of web standards can hinder the development of web apps compared to native solutions.\n\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nAudio Engineer: Jim Heath\n\n\nChapters\n\n\n00:00 Introduction and Small Talk\n00:35 Introduction to Blazor Hybrid\n01:23 Blazor Rendering Modes\n02:15 Experience with Blazor Hybrid\n04:21 Using Razor in Blazor\n05:19 Mobile Blazor Bindings for Xamarin and Maui\n06:18 Choosing Between Blazor and XAML\n07:36 Using Blazor for Complex Layouts\n08:39 Blazor Web Views in Maui\n09:38 Benefits of Blazor Hybrid for Forms\n10:22 Mixing Blazor and Native Components\n11:38 Using Third-Party Control Libraries in Blazor\n12:37 Improvements in Web View Performance\n13:48 Comparing App Performance on Different Platforms\n14:38 Preloading Blazor Content in Maui\n15:12 Loading Experience in Blazor Hybrid\n16:09 Debugging and Performance in Blazor Hybrid\n19:57 Injecting Maui Services into Blazor Pages\n21:05 Debugging Experience in Windows\n22:25 Separating Blazor and Maui Projects\n23:21 Using WebAssembly for Blazor\n24:18 Benefits of Blazor Hybrid for Development\n26:11 Choosing Between Blazor and Native App\n27:28 Challenges of Cross-Platform Development\n29:13 Understanding Maui Hybrid Apps\n30:02 Differences Between Web Assembly and Maui\n31:21 Performance and Native Look\n33:08 View Models in Blazor\n35:23 Using View Models in Maui\n36:44 Navigation in Maui and Blazor\n38:18 Naming Confusion: Maui Blazor Hybrid\n39:25 Benefits of Maui for Businesses\n43:29 Transitioning from Web App to Native App\n45:20 The Slow Progress of Web Standards\n49:45 Plugin Packages of the Week: MudBlazor and Radzen\nLinks:Radzen Blazor ComponentsMudBlazor","content_html":"In this conversation, Jon and Allan discuss Blazor hybrid development, specifically in the context of Maui. They explore the benefits and challenges of using Blazor in a hybrid setting, including performance considerations and compatibility with different platforms. They also discuss the use of Blazor web views in Maui apps and the integration of native APIs. The conversation highlights the flexibility and potential of Blazor hybrid for building mobile apps. In this conversation, Allan Ritchie and Jon discuss the challenges of cross-platform development and the differences between Web Assembly and Maui. They also explore the use of view models in Blazor and Maui, as well as the benefits of Maui for businesses. The conversation concludes with a discussion on the slow progress of web standards and the plugin packages of the week: MudBlazor and Radzen.
\n\nLinks:
","summary":"When a MAUI app meets a Blazor app and they like each other very much, they make a .NET MAUI Hybrid App! We talk about what this means, the advantages, and our experiences dabbling in this area of .NET","date_published":"2024-03-15T12:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/70636311-5b54-4d30-9df6-543de10d9f24.mp3","mime_type":"audio/mpeg","size_in_bytes":63402234,"duration_in_seconds":3124}]},{"id":"8862a41a-10da-40aa-acd8-ffd8cacfb05d","title":"97: Anatomy of the Happiest App on Earth","url":"https://www.gonemobile.io/97","content_text":"The Disney experience app is a mobile engineering marvel. Jon and Allan take a slightly less technical conversation on the anatomy of an app and geek out over the happiest app on earth.\n\nIn this episode, Jon and Allan discuss their recent vacations to Belize and Disney World. They dive into the features and functionality of the Disney mobile app, which allows users to book trips, manage reservations, and access various services. They highlight the seamless integration of the app with hotel check-in, mobile food ordering, and car locator features. The chapter also explores the user interface and navigation of the app, as well as the integration of Magic Bands and Apple Wallet for a convenient and magical experience. The episode concludes with a discussion on the Genie Plus and Lightning Lanes services, as well as the animated passes in Apple Wallet. Disney's attention to detail is evident in their interactive photo experiences, such as the PhotoPass and on-ride photos. The app allows users to book Lightning Lane reservations and participate in scavenger hunts, creating a seamless and engaging experience. Disney's crowd management and analytics ensure a smooth flow of visitors throughout the park. The backend infrastructure supporting these features is a marvel in itself. Overall, Disney's gamification approach enhances the park experience while providing value for the price. In this episode, Allan and Jon discuss the impressive features and functionality of the Disney mobile app. They highlight the interactive droids that react to Bluetooth events in the park and the immersive experience they provide. The conversation then delves into the magic of Disney's app, including its use of Google Maps for detailed mapping and navigation. They also explore the use of Magic Bands for child safety and the seamless integration of various features within the app. The discussion touches on the technical challenges faced by Disney and the solutions implemented to ensure a smooth user experience. The episode concludes with a summary of the main takeaways and a mention of Bluetooth plugin packages for developers interested in similar functionality.\n\nTakeaways\n\n\nThe Disney mobile app offers a wide range of features and functionality to enhance the vacation experience.\nThe app seamlessly integrates with hotel check-in, mobile food ordering, and car locator features for a convenient and efficient experience.\nThe user interface and navigation of the app are well-designed, providing easy access to information and services.\nThe integration of Magic Bands and Apple Wallet allows for a seamless and magical experience throughout the park.\n\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nAudio Engineer: Jim Heath\n\n\nChapters\n\n\n00:00 Vacation experiences: Belize and Disney\n03:10 The Disney app and its features\n05:01 Booking a trip and managing reservations\n07:22 Hotel reservations and check-in\n08:17 Mobile food ordering\n09:15 Car locator feature\n11:43 User interface and navigation\n14:12 Magic Band and Apple Wallet integration\n19:58 Express pass and Magic Band\n21:29 Animated passes in Apple Wallet\n24:13 Attention to Detail\n25:20 PhotoPass and Cast Members\n26:16 Interactive Photos\n27:13 Real-Time Photo Processing\n28:19 On-Ride Photos\n29:29 Scavenger Hunts and App Interactions\n32:46 Crowd Management and Analytics\n38:24 Lightning Lanes and Ride Availability\n44:41 The Backend and Infrastructure\n46:05 The Gamification Experience\n47:10 Interactive Droids and Bluetooth\n48:09 The Magic of Disney's App\n51:12 Disney's Use of Google Maps\n53:18 Magic Bands and Child Safety\n55:06 Technical Challenges and Solutions\n59:00 Cellular Connectivity and Redundancy\n01:01:42 The Marvel of Disney's Mobile App\n01:04:57 Conclusion and Plugin Packages\nLinks:Shiny BluetoothLEPlugin BLE","content_html":"The Disney experience app is a mobile engineering marvel. Jon and Allan take a slightly less technical conversation on the anatomy of an app and geek out over the happiest app on earth.
\n\nIn this episode, Jon and Allan discuss their recent vacations to Belize and Disney World. They dive into the features and functionality of the Disney mobile app, which allows users to book trips, manage reservations, and access various services. They highlight the seamless integration of the app with hotel check-in, mobile food ordering, and car locator features. The chapter also explores the user interface and navigation of the app, as well as the integration of Magic Bands and Apple Wallet for a convenient and magical experience. The episode concludes with a discussion on the Genie Plus and Lightning Lanes services, as well as the animated passes in Apple Wallet. Disney's attention to detail is evident in their interactive photo experiences, such as the PhotoPass and on-ride photos. The app allows users to book Lightning Lane reservations and participate in scavenger hunts, creating a seamless and engaging experience. Disney's crowd management and analytics ensure a smooth flow of visitors throughout the park. The backend infrastructure supporting these features is a marvel in itself. Overall, Disney's gamification approach enhances the park experience while providing value for the price. In this episode, Allan and Jon discuss the impressive features and functionality of the Disney mobile app. They highlight the interactive droids that react to Bluetooth events in the park and the immersive experience they provide. The conversation then delves into the magic of Disney's app, including its use of Google Maps for detailed mapping and navigation. They also explore the use of Magic Bands for child safety and the seamless integration of various features within the app. The discussion touches on the technical challenges faced by Disney and the solutions implemented to ensure a smooth user experience. The episode concludes with a summary of the main takeaways and a mention of Bluetooth plugin packages for developers interested in similar functionality.
\n\nLinks:
","summary":"The Disney experience app is a mobile engineering marvel. Jon and Allan take a slightly less technical conversation on the anatomy of an app and geek out over the happiest app on earth.","date_published":"2024-03-08T12:30:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/8862a41a-10da-40aa-acd8-ffd8cacfb05d.mp3","mime_type":"audio/mpeg","size_in_bytes":75423210,"duration_in_seconds":4103}]},{"id":"f22bb81d-ce27-4757-84e2-04152a2ff92f","title":"96: Selling Jon on Reactive Extensions","url":"https://www.gonemobile.io/96","content_text":"In this episode, Jon and Allan discuss Reactive Extensions (Rx) and its advantages over traditional event handling. They start by addressing Jon's resistance to dependency injection and his concerns about taking dependencies on external libraries. Allan introduces Rx as a solution to handle events more effectively and efficiently. They explore the benefits of Rx, such as composability, filtering, and transforming events. The conversation delves into the implementation of Rx in different platforms and its integration with Maui. They also discuss challenges and solutions in using Rx, including canceling requests and validating input. Overall, the episode highlights the power and versatility of Rx in simplifying event handling and improving code readability. In this conversation, Jon and Allan discuss Reactive UI and Reactive Extensions. They explore the features and benefits of Reactive UI.net and how it simplifies event handling and data binding in UI development. They dive into topics such as throttling and transforming events, filtering empty or invalid values, canceling and restarting events, and handling complex use cases. They also discuss the challenges and limitations of Reactive Extensions, including assembly size and reflection usage. The conversation concludes with a discussion on identifying use cases for Reactive UI and plans for future discussions on the topic.\n\nTakeaways\n\n\nReactive Extensions (Rx) is a powerful library that simplifies event handling and provides a more composable and efficient way to work with events.\nRx offers advantages over traditional event handling, such as the ability to filter, transform, and compose events, as well as handle asynchronous operations.\nRxUI is an open-source project that integrates Rx with Maui and other platforms, providing additional features and simplifying event handling in user interfaces.\nUsing Rx can help address common challenges in event handling, such as memory leaks, complex event patterns, and managing asynchronous operations.\nRegular expressions can be used with Rx to validate and filter input, improving the quality and reliability of user interactions. Reactive UI.net simplifies event handling and data binding in UI development.\nReactive Extensions provide powerful tools for manipulating and transforming events.\nThrottling and filtering events can improve performance and reduce unnecessary processing.\nReactive UI and Reactive Extensions have limitations and may require careful consideration in certain scenarios.\n\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nAudio Engineer: Jim Heath\n\n\nChapters\n\n\n00:00 Introduction and Small Talk\n01:07 Jon's Resistance to Dependency Injection\n02:21 Introducing Reactive Extensions (Rx)\n03:45 Advantages of Rx and Issues with Events\n08:34 Rx in Different Platforms\n10:00 Transforming and Filtering Events with Rx\n15:29 Understanding Observables and Observers\n19:21 Simplifying Event Handling with Rx\n22:21 RxUI and its Integration with Maui\n25:03 Challenges and Solutions in Using Rx\n28:26 Implementing a Search Feature with Rx\n31:03 Handling Continuous Typing and Caching Results\n33:32 Validating Input with Regular Expressions\n34:09 Introduction to Reactive UI and Reactive Extensions\n34:38 Exploring Reactive UI.net\n35:11 Throttling and Transforming Events\n36:25 Distinct Until Changed\n37:12 Filtering Empty or Invalid Values\n37:45 Subscribing to Events\n38:13 Canceling and Restarting Events\n39:05 Complex Use Cases and Limitations\n40:08 Using Reactive Extensions with Async\n41:23 Challenges with Reactive Extensions\n42:21 Assembly Size of System.Reactive\n43:16 Reflection and Dynamic Usage\n44:34 Considerations for Mobile Apps\n48:35 Benefits of Reactive UI in UI Development\n51:08 Identifying Use Cases for Reactive UI\n54:04 Reactive UI and Reactive Extensions as Picks of the Week\n55:06 Conclusion and Future Discussion\nLinks:ReactiveUIReactive Extensions","content_html":"In this episode, Jon and Allan discuss Reactive Extensions (Rx) and its advantages over traditional event handling. They start by addressing Jon's resistance to dependency injection and his concerns about taking dependencies on external libraries. Allan introduces Rx as a solution to handle events more effectively and efficiently. They explore the benefits of Rx, such as composability, filtering, and transforming events. The conversation delves into the implementation of Rx in different platforms and its integration with Maui. They also discuss challenges and solutions in using Rx, including canceling requests and validating input. Overall, the episode highlights the power and versatility of Rx in simplifying event handling and improving code readability. In this conversation, Jon and Allan discuss Reactive UI and Reactive Extensions. They explore the features and benefits of Reactive UI.net and how it simplifies event handling and data binding in UI development. They dive into topics such as throttling and transforming events, filtering empty or invalid values, canceling and restarting events, and handling complex use cases. They also discuss the challenges and limitations of Reactive Extensions, including assembly size and reflection usage. The conversation concludes with a discussion on identifying use cases for Reactive UI and plans for future discussions on the topic.
\n\nLinks:
","summary":"Allan tries to convince Jon that he should use Reactive Extensions in his own projects more given their power and versatility in simplifying event handling and improving code readability. They discuss its benefits, challenges, and solutions, as well as its integration with .NET MAUI and Reactive UI.net.","date_published":"2024-03-01T11:00:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/f22bb81d-ce27-4757-84e2-04152a2ff92f.mp3","mime_type":"audio/mpeg","size_in_bytes":62405322,"duration_in_seconds":3457}]},{"id":"066d6751-3e8f-4390-be31-4d8e7f164bab","title":"95: Xamarin.Forms to MAUI","url":"https://www.gonemobile.io/95","content_text":"In this episode, Jon and Allan discuss the migration experiences from Xamarin.Forms to .NET MAUI. They highlight the opportunity for architectural improvements during the migration process, such as cleaning up code and removing static untestable components. They also explain the evolution of Xamarin.Forms into .NET MAUI and the introduction of handlers. The benefits of the single project structure and the ease of migrating third-party libraries are discussed. The conversation also covers the customization of entry handlers and the migration of resources, including images and fonts. This conversation covers various challenges and solutions related to image management, including the use of vectors, app icons, and splash screens. It also discusses the migration process from Xamarin.Forms to .NET MAUI, highlighting the importance of a methodical approach. The conversation concludes with a recommendation for the Maui Community Toolkit as a valuable resource for developers.\n\nTakeaways\n\n\nMigrating from Xamarin.Forms to .NET MAUI provides an opportunity to improve the architecture of the app.\nThe introduction of handlers in .NET MAUI allows for cleaner and more testable code.\nThe single project structure in .NET MAUI simplifies the development process and improves compile times.\nMigrating third-party libraries may require finding alternatives or porting them to .NET MAUI.\nCustomizing entry handlers and migrating resources, such as images and fonts, can be done more easily in .NET MAUI. Image management in mobile app development can be challenging, especially when dealing with different resolutions and densities.\nUsing vectors can simplify image management by allowing for easy scaling to different sizes.\nApp icons and splash screens can be generated automatically in .NET MAUI, reducing the manual effort required.\nWhen migrating from Xamarin.Forms to .NET MAUI, it is important to approach the process methodically, starting with dependencies and gradually bringing over pages and components.\n\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\n\n\nChapters\n\n\n00:00 Introduction and Migration Experiences\n01:11 Opportunity for Architectural Improvements\n03:16 Evolution of Xamarin.Forms to Maui\n06:27 Architecture of Maui Handlers\n09:30 Benefits of Single Project Structure\n13:56 Migration of Third-Party Libraries\n18:13 Handling Dependency Service and Renderers\n25:09 Porting Plugins and Controls\n32:48 Customizing Entry Handlers\n35:45 Migration of Resources\n37:23 Image Management Challenges\n39:25 Building a Solution: Resize-itizer\n41:03 Vector Images in Maui\n44:05 App Icons and Splash Screens\n46:38 Migrating Resources to Maui\n49:35 Font Handling in Maui\n51:37 Replacing Frames with Borders\n53:10 Avoiding Tap Gesture Issues with Stack Layouts\n55:12 Namespace Changes in XAML\n56:45 Methodical Migration Process\n59:28 Package of the Week: Maui Community Toolkit\n","content_html":"In this episode, Jon and Allan discuss the migration experiences from Xamarin.Forms to .NET MAUI. They highlight the opportunity for architectural improvements during the migration process, such as cleaning up code and removing static untestable components. They also explain the evolution of Xamarin.Forms into .NET MAUI and the introduction of handlers. The benefits of the single project structure and the ease of migrating third-party libraries are discussed. The conversation also covers the customization of entry handlers and the migration of resources, including images and fonts. This conversation covers various challenges and solutions related to image management, including the use of vectors, app icons, and splash screens. It also discusses the migration process from Xamarin.Forms to .NET MAUI, highlighting the importance of a methodical approach. The conversation concludes with a recommendation for the Maui Community Toolkit as a valuable resource for developers.
\n\nIn this episode, Jon and Allan discuss the process of building a mobile app, starting with the analogy of building a lightsaber at Disney. They explore the anatomy of a mobile app, including the use of MVVM architecture and the importance of gluing logic together. They also delve into navigation and the use of Shell in Xamarin.Forms. The conversation then shifts to the benefits of using dependency injection in app development and the considerations for cross-platform development. In this episode, Allan and Jon discuss various aspects of app development, including dependency injection, core services, and cross-platform services. They emphasize the importance of creating a base set of services and thinking outside the box when faced with UI design challenges. They also highlight the significance of solving business problems first and introduce Prism as a comprehensive app architecture framework.
\n\nLinks:
","summary":"How do we build mobile apps? What are the various components and layers and pieces that we need to fit together to be successful in architecting a new app?","date_published":"2024-02-16T11:00:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/74e0c4cd-1322-4155-9ea9-1728be9e6b58.mp3","mime_type":"audio/mpeg","size_in_bytes":65662410,"duration_in_seconds":3678}]},{"id":"92759c48-75f3-4154-9f5f-81a6cd13ab63","title":"93: These aren't your grandma's Templates","url":"https://www.gonemobile.io/93","content_text":"In this episode, Jon and Allan discuss the importance of templates for mobile app development. They explore the challenges of remembering details like Android manifest and info.plist, and how templates can help simplify the process. They also discuss the default templates in Maui and the benefits of item templates in VS Code. The conversation covers the balance between complexity and simplicity in templates, and the value of custom templates for saving time. They also touch on managing permissions and entitlements, and the power of MSBuild and CSProj files in customizing projects. The episode concludes with a discussion on the benefits of community templates. In this episode, Jon and Allan discuss different types of templates available for building mobile apps with .NET Maui. They cover item templates, Maui templates, solution templates, Visual Studio templates, VS Code templates, and command line templates. They also talk about the benefits of creating custom templates and how they can help standardize development practices within an organization.\n\nTakeaways\n\n\nTemplates are essential for simplifying mobile app development and helping developers remember important details.\nDefault templates in Maui and item templates in VS Code provide a starting point for building mobile apps.\nCustom templates can save time and help manage permissions and entitlements.\nMSBuild and CSProj files offer powerful customization options for projects.\nCommunity templates provide additional resources and options for developers. There are various types of templates available for building mobile apps with .NET Maui, including item templates, Maui templates, solution templates, Visual Studio templates, - VS Code templates, and command line templates.\nItem templates are used to add specific elements, such as XAML pages or views, to an existing project.\nMaui templates provide a starting point for building cross-platform apps with .NET Maui and include pre-configured project structures and dependencies.\nSolution templates allow developers to generate a complete solution with multiple projects and project references.\nVisual Studio templates offer a rich mechanism for creating templates with dynamic interfaces and advanced features.\nVS Code templates focus on command line interactions and provide a more lightweight and streamlined experience.\nCommand line templates are used with the 'dotnet new' command and offer a simple and flexible way to generate project structures.\nCreating custom templates can help standardize development practices within an organization and simplify the onboarding process for new projects.\nUsing templates can save time and effort by automating repetitive tasks and providing a consistent starting point for app development.\nConsider using existing templates or creating your own templates to improve productivity and maintain coding best practices.\n\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nAudio Engineer: Jim Heath\n\n\nChapters\n\n\n00:00 Introduction\n00:31 The Importance of Templates for Mobile Apps\n01:38 Default Templates in Maui\n02:35 Item Templates in VS Code\n03:28 The Challenge of Remembering Details\n04:11 Customizing Templates\n05:38 Balancing Complexity and Simplicity in Templates\n06:55 Different Needs for New and Experienced Users\n07:45 Creating Custom Templates\n08:23 Managing Permissions and Entitlements\n09:44 The Power of Templates in Saving Time\n11:05 The Challenge of Changing Requirements\n13:21 Managing Permissions in Templates\n14:42 Working with Templates in Different Environments\n15:23 Using Conditional Logic in Templates\n17:42 Generating Entitlements in Templates\n19:14 Simplifying Project Files\n21:17 The Power of MSBuild and CSProj Files\n23:01 Overcoming Fear of Project Files\n25:21 Using Project Files for Customization\n26:41 The Benefits of Plugin Templates\n30:51 Including Popular Packages in Templates\n32:33 The Value of Community Templates\n33:32 Introduction to Templates\n34:05 Different Template Options\n35:39 Item Templates\n36:09 Maui Templates\n37:46 Solution Templates\n38:15 Visual Studio Templates\n39:21 VS Code Templates\n41:45 Command Line Templates\n43:08 Creating Custom Templates\n45:16 Standardizing Templates\n45:58 Conclusion\nLinks:dotnet-maui-templates (egvijayanand)Shiny TemplatesPlugin.Maui.FeatureMauiAppAccelerator","content_html":"In this episode, Jon and Allan discuss the importance of templates for mobile app development. They explore the challenges of remembering details like Android manifest and info.plist, and how templates can help simplify the process. They also discuss the default templates in Maui and the benefits of item templates in VS Code. The conversation covers the balance between complexity and simplicity in templates, and the value of custom templates for saving time. They also touch on managing permissions and entitlements, and the power of MSBuild and CSProj files in customizing projects. The episode concludes with a discussion on the benefits of community templates. In this episode, Jon and Allan discuss different types of templates available for building mobile apps with .NET Maui. They cover item templates, Maui templates, solution templates, Visual Studio templates, VS Code templates, and command line templates. They also talk about the benefits of creating custom templates and how they can help standardize development practices within an organization.
\n\nLinks:
","summary":"Project and Item Templates come in a variety of shapes and sizes - listen to hear about the great templates available in the MAUI ecosystem, and what they try and help you accomplish.","date_published":"2024-02-09T10:00:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/92759c48-75f3-4154-9f5f-81a6cd13ab63.mp3","mime_type":"audio/mpeg","size_in_bytes":77736762,"duration_in_seconds":2902}]},{"id":"30e4f40f-d92e-4afa-b86c-98971d08107f","title":"92: Background Tasks can be Shiny","url":"https://www.gonemobile.io/92","content_text":"In this episode, Jon and Allan discuss backgrounding in mobile development. They start by reviewing the virtual list view and how it solved Allan's problem. Then, Jon reveals the story behind his nickname 'Red.' The conversation then shifts to backgrounding in mobile development, covering common scenarios such as data synchronization, image uploads, and real-time GPS. They explore the different approaches to backgrounding on Android and iOS, including the use of services, broadcast receivers, foreground services, and job scheduling. Finally, they discuss background transfers on both platforms. This episode explores background transfers, background tasks, and code execution in mobile apps. The hosts discuss the challenges of handling slow APIs, managing state in background jobs, and scheduling one-off and periodic jobs. They also delve into the intricacies of background GPS in iOS and Android, as well as the considerations for background tasks in Windows. The episode concludes with a brief mention of background tasks in CarPlay and Android Auto.\n\nTakeaways\n\n\nBackgrounding in mobile development is the ability to execute code when an app is not in the foreground.\nCommon scenarios for backgrounding include data synchronization, image uploads, and real-time GPS.\nOn Android, backgrounding can be achieved using services, broadcast receivers, foreground services, and job scheduling.\nOn iOS, backgrounding is more restricted, with foreground services and background transfers being the primary options.\nDevelopers should consider the specific platform guidelines and limitations when implementing backgrounding functionality. Background transfers are useful for uploading or downloading large files or data sets.\nManaging state in background jobs can be challenging, but there are various ways to handle it, such as using preferences or messaging frameworks.\nBackground GPS in iOS and Android allows for tracking location and other data, but it should be used judiciously to avoid excessive battery drain.\nBackground tasks in Windows can be achieved using WinRT APIs, but they may be less relevant in desktop scenarios.\nConsider the specific use case and user needs before implementing background tasks, and be mindful of the impact on battery life and data usage.\n\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nAudio Engineer: Jim Heath\n\n\nChapters\n\n\n00:00 Introduction and Virtual List View\n05:28 The Story Behind the Nickname 'Red'\n08:50 Backgrounding in Mobile Development\n19:21 Backgrounding on Android\n27:45 Backgrounding on iOS\n30:31 Background Transfers on Android\n31:55 Background Transfers on iOS\n32:42 Background Transfers\n33:45 Handling Slow APIs\n34:38 Background Tasks in iOS 13\n36:46 Managing State in Background Jobs\n37:45 One-Off and Scheduled Jobs\n40:20 Background Execution in iOS\n41:36 Passing State to Background Jobs\n44:22 Challenges of Data Synchronization\n45:45 Background Execution in Windows\n46:19 Background GPS in iOS\n47:39 Background GPS in Android\n51:53 Considerations for Background Tasks\n55:12 Background Tasks in CarPlay and Android Auto\nLinks:Shiny Jobs","content_html":"In this episode, Jon and Allan discuss backgrounding in mobile development. They start by reviewing the virtual list view and how it solved Allan's problem. Then, Jon reveals the story behind his nickname 'Red.' The conversation then shifts to backgrounding in mobile development, covering common scenarios such as data synchronization, image uploads, and real-time GPS. They explore the different approaches to backgrounding on Android and iOS, including the use of services, broadcast receivers, foreground services, and job scheduling. Finally, they discuss background transfers on both platforms. This episode explores background transfers, background tasks, and code execution in mobile apps. The hosts discuss the challenges of handling slow APIs, managing state in background jobs, and scheduling one-off and periodic jobs. They also delve into the intricacies of background GPS in iOS and Android, as well as the considerations for background tasks in Windows. The episode concludes with a brief mention of background tasks in CarPlay and Android Auto.
\n\nLinks:
","summary":"While we long for the simpler days of background services and daemons on the desktop, mobile devices can do things in the background too with a bit more work. Listen to this tell all episode on backgrounded things, Shiny, and more!","date_published":"2024-02-02T12:00:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/30e4f40f-d92e-4afa-b86c-98971d08107f.mp3","mime_type":"audio/mpeg","size_in_bytes":86496909,"duration_in_seconds":3508}]},{"id":"6082bd0e-d609-4f85-9918-a18f51eb8c76","title":"91: ListViews and CollectionViews","url":"https://www.gonemobile.io/91","content_text":"In this episode, Jon and Allan discuss the challenges and history of implementing lists in mobile apps. They start by addressing a listener question about the difference between CLI commands in MAUI and other UI frameworks. They then dive into the topic of dealing with lists in mobile apps, including the challenges of performance and dynamic sizing. They explore the history of list implementations on different platforms and the limitations of the current CollectionView in MAUI. They also discuss alternative list view controls and the misuse of observable collections in list views. In this episode, Allan and Jon discuss various aspects of building performant lists in mobile apps. They cover topics such as using observable collections for data in motion, optimizing list performance, choosing the right list control, and introduce the Virtualized List View plugin.\n\nTakeaways\n\nImplementing lists in mobile apps can be challenging due to performance and dynamic sizing issues.\nThe history of list implementations on different platforms, such as ListView, RecyclerView, and UICollectionView, has influenced the current state of CollectionView in MAUI.\nThe current CollectionView in MAUI tries to do too much and can be complex to use in certain scenarios.\nAlternative list view controls, such as Sharpnado and Syncfusion, provide different approaches and features for handling lists in mobile apps.\nObservable collections are often misused in list views, leading to performance issues. It is important to use them appropriately and consider using a regular list when the data is not changing frequently. Observable collections are useful for handling data in motion, such as real-time updates or changing distances.\nOptimizing list performance should be done based on actual needs and user behavior, rather than prematurely optimizing for potential issues.\nConsider the specific requirements of your app when choosing a list control, and don't be afraid to explore alternative solutions like Blazor or web technologies.\nThe Virtualized List View plugin by Jon is a powerful tool for building performant lists in Xamarin.Forms and can be a great solution for complex scenarios.\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nAudio Engineer: Jim Heath\n\n\nChapters\n\n00:00 Introduction and Weather\n01:14 Listener Question: CLI Command in MAUI\n05:36 Topic: Dealing with Lists in Mobile Apps\n19:35 History of List Implementations\n25:51 Challenges with Collection View in MAUI\n30:17 Alternative List View Controls\n35:38 Observable Collections and List Views\n39:18 Observable Collection and Data in Motion\n46:11 Optimizing List Performance\n52:26 Choosing the Right List Control\n56:25 Virtualized List View Plugin\n01:00:53 Optimizing List Performance (Continued)\n01:04:08 Conclusion and Plug-in of the WeekLinks:Redth's MAUI VirtualListViewSharpnado CollectionView","content_html":"In this episode, Jon and Allan discuss the challenges and history of implementing lists in mobile apps. They start by addressing a listener question about the difference between CLI commands in MAUI and other UI frameworks. They then dive into the topic of dealing with lists in mobile apps, including the challenges of performance and dynamic sizing. They explore the history of list implementations on different platforms and the limitations of the current CollectionView in MAUI. They also discuss alternative list view controls and the misuse of observable collections in list views. In this episode, Allan and Jon discuss various aspects of building performant lists in mobile apps. They cover topics such as using observable collections for data in motion, optimizing list performance, choosing the right list control, and introduce the Virtualized List View plugin.
\n\nImplementing lists in mobile apps can be challenging due to performance and dynamic sizing issues.
\nThe history of list implementations on different platforms, such as ListView, RecyclerView, and UICollectionView, has influenced the current state of CollectionView in MAUI.
\nThe current CollectionView in MAUI tries to do too much and can be complex to use in certain scenarios.
\nAlternative list view controls, such as Sharpnado and Syncfusion, provide different approaches and features for handling lists in mobile apps.
\nObservable collections are often misused in list views, leading to performance issues. It is important to use them appropriately and consider using a regular list when the data is not changing frequently. Observable collections are useful for handling data in motion, such as real-time updates or changing distances.
\nOptimizing list performance should be done based on actual needs and user behavior, rather than prematurely optimizing for potential issues.
\nConsider the specific requirements of your app when choosing a list control, and don't be afraid to explore alternative solutions like Blazor or web technologies.
\nThe Virtualized List View plugin by Jon is a powerful tool for building performant lists in Xamarin.Forms and can be a great solution for complex scenarios.
00:00 Introduction and Weather
\n01:14 Listener Question: CLI Command in MAUI
\n05:36 Topic: Dealing with Lists in Mobile Apps
\n19:35 History of List Implementations
\n25:51 Challenges with Collection View in MAUI
\n30:17 Alternative List View Controls
\n35:38 Observable Collections and List Views
\n39:18 Observable Collection and Data in Motion
\n46:11 Optimizing List Performance
\n52:26 Choosing the Right List Control
\n56:25 Virtualized List View Plugin
\n01:00:53 Optimizing List Performance (Continued)
\n01:04:08 Conclusion and Plug-in of the Week
Links:
","summary":"Displaying lists of things is foundational to mobile apps. We talk about the history and challenges of ListViews and CollectionViews as well as some alternate implementations!","date_published":"2024-01-26T13:30:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/6082bd0e-d609-4f85-9918-a18f51eb8c76.mp3","mime_type":"audio/mpeg","size_in_bytes":98941848,"duration_in_seconds":3996}]},{"id":"168d05d0-eec1-42af-bf5f-e86571e6219a","title":"90: Push Notifications are Hard!","url":"https://www.gonemobile.io/90","content_text":"Summary\n\nIn this episode, Jon and Allan discuss the complexities of implementing push notifications on iOS and Android. They delve into the history of push notifications and the challenges developers face in tackling this topic. They explore the setup and configuration process for both platforms, including the use of certificates and entitlements on iOS and the use of Firebase on Android. They also discuss the lifecycle of notifications, handling background execution, and the differences between iOS and Android in terms of permissions and notification handling. In this episode, Jon and Allan discuss various aspects of push notifications on Android, including permissions and changes, setting up notifications, specifying intents in notification payloads, silent notifications, sending notifications to tags, handling multiple devices, and the Shiny Push library. They also touch on source generators and boilerplate code. Overall, the conversation provides valuable insights into the complexities and best practices of implementing push notifications on Android.\n\nTakeaways\n\nPush notifications are a complex topic that require careful setup and configuration on both iOS and Android.\nDevelopers face challenges in implementing push notifications due to the differences between platforms and the evolving nature of the technology.\nThe setup and configuration process involves obtaining certificates and entitlements on iOS and using Firebase on Android.\nThe lifecycle of notifications and the handling of background execution differ between iOS and Android.\nPermissions and changes in Android, such as the introduction of post-notifications, add another layer of complexity to push notification implementation. Permissions and changes in Android can impact the implementation of push notifications.\nNotifications on Android can be set up to route directly to an activity by specifying an intent in the notification payload.\nSilent notifications on Android can be used to wake up the app and perform background tasks.\nSending notifications to tags allows for logical grouping and targeted delivery on Android.\nHandling multiple devices and ensuring notifications are received on all devices can be challenging.\nThe Shiny Push library simplifies the implementation of push notifications on Android.\nSource generators can help reduce boilerplate code and make implementation easier.\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nAudio Engineer: Jim Heath\n\n\nChapters\n\n\n00:00 Introduction\n01:09 Tackling Hard Problems\n04:00 History of Push Notifications\n08:30 Setup and Configuration on iOS\n13:02 Registering for Notifications on iOS\n15:22 Lifecycle of Notifications on iOS\n17:43 Silent Notifications on iOS\n19:27 Handling Background Execution on iOS\n22:06 Complexity of Cross-Platform Implementation\n24:19 Setup and Configuration on Android\n28:35 Handling Notifications on Android\n32:19 Permissions and Changes in Android\n33:16 Permissions and Changes\n35:27 Setting Up Notifications on Android\n36:43 Specifying Intents in Notification Payloads\n38:19 Silent Notifications on Android\n41:48 Sending Notifications to Tags on Android\n44:29 Handling Multiple Devices on Android\n49:15 Shiny Push Library\n52:21 Server-to-Server Notifications\n56:08 Source Generators and Boilerplate\n57:44 Plugin Pick: Shiny Push\nLinks:Shiny Push Notifications","content_html":"In this episode, Jon and Allan discuss the complexities of implementing push notifications on iOS and Android. They delve into the history of push notifications and the challenges developers face in tackling this topic. They explore the setup and configuration process for both platforms, including the use of certificates and entitlements on iOS and the use of Firebase on Android. They also discuss the lifecycle of notifications, handling background execution, and the differences between iOS and Android in terms of permissions and notification handling. In this episode, Jon and Allan discuss various aspects of push notifications on Android, including permissions and changes, setting up notifications, specifying intents in notification payloads, silent notifications, sending notifications to tags, handling multiple devices, and the Shiny Push library. They also touch on source generators and boilerplate code. Overall, the conversation provides valuable insights into the complexities and best practices of implementing push notifications on Android.
\n\nPush notifications are a complex topic that require careful setup and configuration on both iOS and Android.
\nDevelopers face challenges in implementing push notifications due to the differences between platforms and the evolving nature of the technology.
\nThe setup and configuration process involves obtaining certificates and entitlements on iOS and using Firebase on Android.
\nThe lifecycle of notifications and the handling of background execution differ between iOS and Android.
\nPermissions and changes in Android, such as the introduction of post-notifications, add another layer of complexity to push notification implementation. Permissions and changes in Android can impact the implementation of push notifications.
\nNotifications on Android can be set up to route directly to an activity by specifying an intent in the notification payload.
\nSilent notifications on Android can be used to wake up the app and perform background tasks.
\nSending notifications to tags allows for logical grouping and targeted delivery on Android.
\nHandling multiple devices and ensuring notifications are received on all devices can be challenging.
\nThe Shiny Push library simplifies the implementation of push notifications on Android.
\nSource generators can help reduce boilerplate code and make implementation easier.
Links:
","summary":"The complexities of implementing push notifications on iOS and Android are many. In this episode we discuss the history of Push Notifications, the setup and configuration process on iOS and Android platforms, their lifecycle, the differences between platforms, as well as the server to server complexities of sending notifications.","date_published":"2024-01-19T10:00:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/168d05d0-eec1-42af-bf5f-e86571e6219a.mp3","mime_type":"audio/mpeg","size_in_bytes":86426753,"duration_in_seconds":3605}]},{"id":"b69c6b3c-5b68-4f6f-86c7-3cf00efd6fc9","title":"89: Bound for greater Bindings","url":"https://www.gonemobile.io/89","content_text":"This conversation discusses the concept of bindings in a mobile.NET, Maui world. Bindings are used to integrate native libraries into the.NET ecosystem. The conversation covers the challenges and complexities of creating bindings for Android and iOS platforms. It explores the differences between Android X libraries and platform APIs. The concept of slim bindings is introduced, which involves creating a simplified interface for interacting with native libraries. The conversation also touches on the use of platform channels for message passing between.NET and native code. The future of bindings and the need for improved tools and processes are discussed. The conversation discusses the challenges and considerations when integrating platform channels in Xamarin projects. It explores the difficulties of referencing native frameworks and dependencies in Xcode projects and suggests the need for improved tooling to simplify the process. The conversation also delves into the complexities of handling AndroidX dependencies and the potential issues with duplicate libraries. Additionally, it highlights the concept of platform channels in Maui and the potential for creating a seamless integration experience. The recommended plugin for this episode is Xamarin Binding Helpers.\n\nPlugins, Packages, and Products\n\nThis week we're talking about Xamarin.Binding.Helpers which helps make it easier to create slim bindings on Android, as well as Platform Channels which is an experiment for creating a message passing interface between native code and .NET MAUI apps.\n\nPeople\n\n\nHosts: Jon Dick, Allan Ritchie\nAudio Engineer: Jim Heath\n\n\nChapters\n\n\n00:00 Introduction\n01:09 Understanding Bindings in a Mobile.NET, Maui World\n02:00 Projections of Native APIs into the Managed.NET World\n03:41 The Evolution of Bindings\n04:06 The Challenge of Android X Libraries\n05:00 Dealing with Bindings in Xamarin\n06:07 The Complexity of Android Libraries\n07:03 Creating Android Bindings\n07:30 The Process of Android Binding\n08:16 Challenges with Java and Kotlin Libraries\n09:08 Handling Complex Inheritance in Java and Kotlin Libraries\n10:22 The Sprawl of Android X Libraries\n11:31 The Challenges of Binding Android X Libraries\n12:09 The Simplicity of Binding Platform APIs\n13:16 The Differences Between iOS and Android Bindings\n14:22 Creating iOS Bindings\n15:48 The Challenges of Objective-C and Swift Libraries\n18:36 The Need for Slim Bindings\n20:00 The Challenge of Dependency Chains\n21:54 The Concept of Slim Bindings\n23:46 The Advantages of Slim Bindings\n27:11 Determining When to Bind the Whole Library\n29:34 Debugging Slim Bindings\n34:52 The Concept of Platform Channels\n38:58 Performance Considerations of Platform Channels\n40:37 The Future of Bindings\n40:46 Integration with Xcode Project\n42:41 Challenges with Tooling\n46:48 Handling AndroidX Dependencies\n50:15 Platform Channels in Maui\n53:00 Plugin Recommendation: Xamarin Binding Helpers\nLinks:Objective SharpieXamarin.Binding.HelpersPlatform Channels","content_html":"This conversation discusses the concept of bindings in a mobile.NET, Maui world. Bindings are used to integrate native libraries into the.NET ecosystem. The conversation covers the challenges and complexities of creating bindings for Android and iOS platforms. It explores the differences between Android X libraries and platform APIs. The concept of slim bindings is introduced, which involves creating a simplified interface for interacting with native libraries. The conversation also touches on the use of platform channels for message passing between.NET and native code. The future of bindings and the need for improved tools and processes are discussed. The conversation discusses the challenges and considerations when integrating platform channels in Xamarin projects. It explores the difficulties of referencing native frameworks and dependencies in Xcode projects and suggests the need for improved tooling to simplify the process. The conversation also delves into the complexities of handling AndroidX dependencies and the potential issues with duplicate libraries. Additionally, it highlights the concept of platform channels in Maui and the potential for creating a seamless integration experience. The recommended plugin for this episode is Xamarin Binding Helpers.
\n\nThis week we're talking about Xamarin.Binding.Helpers which helps make it easier to create slim bindings on Android, as well as Platform Channels which is an experiment for creating a message passing interface between native code and .NET MAUI apps.
\n\nLinks:
","summary":"Bindings are often used to integrate native libraries into .NET MAUI apps. We talk about the challenges of creating bindings for Android and iOS platforms and some alternative techniques such as Slim bindings and Platform Channels for accessiong Swift/ObjC and Java/Kotlin code or libraries in your .NET MAUI apps.","date_published":"2024-01-12T10:30:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/b69c6b3c-5b68-4f6f-86c7-3cf00efd6fc9.mp3","mime_type":"audio/mpeg","size_in_bytes":67421920,"duration_in_seconds":3217}]},{"id":"d95fbf0f-be3e-4ad9-b5c9-1b2000ec51f4","title":"88: Return of Gone Mobile and the State of .NET MAUI","url":"https://www.gonemobile.io/88","content_text":"Summary\n\nIn this episode, Jon and Allan discuss the state of .NET Maui, the challenges of mobile development, and the benefits of using Blazor WebView in Maui apps. They also talk about the evolution of the Mono runtime, the use of handlers in Maui, and the transition from custom renders to source generators. Overall, they highlight the improvements and advancements in the .NET Maui framework and its potential for creating cross-platform mobile apps. In this episode, Jon and Allan discuss app profiling and performance optimization, highlighting the use of tools like DS router and DS dotnet trace to profile apps and identify performance issues. They emphasize the importance of measuring and optimizing early in the development process to avoid potential problems. The conversation then shifts to the introduction of a new segment called 'Plugin Package or Product,' where they showcase a library called compiled bindings that enhances the XAML experience by providing additional operators and reducing verbosity. They express their interest in incorporating such concepts into the core product. The episode concludes with a call to action for listeners to subscribe, leave reviews, and provide topic suggestions for future episodes.\n\nTakeaways\n\nThe .NET Maui framework has made significant progress, with improvements in tooling, performance, and support for modern mobile app development.\nBlazor WebView in Maui allows developers to leverage their existing Blazor skills and codebase to build hybrid mobile apps.\nThe transition from custom renders to handlers in Maui simplifies the development process and improves performance.\nSource generators in Maui enable automatic code generation, reducing the need for manual coding and improving productivity. App profiling and performance optimization are crucial for identifying and resolving performance issues in apps.\nTools like DS router and DS dotnet trace can be used to profile apps and gather trace files and speed scope logs for analysis.\nEarly measurement and optimization can help prevent performance issues and improve the overall user experience.\nCompiled bindings is a library that enhances the XAML experience by providing additional operators and reducing verbosity, making it easier to work with XAML.\n\nPlugins, Packages, and Products\n\nThis week we're talking about Compiled Bindings: https://github.com/levitali/CompiledBindings which provides {x:Bind} Markup Extension for WPF, MAUI and Xamarin Forms.\n\nChapters\n\n\n00:00 Introduction and Changes to the Podcast\n06:17 State of .NET Maui\n09:24 Dependency Injection in .NET Maui\n11:12 Evolution of the Mono Runtime\n13:14 Challenges of Mobile Development\n19:22 Long-Term Release of .NET Maui\n21:20 Blazor Hybrid App\n23:43 Benefits of Blazor WebView\n25:49 Mixing Blazor and Maui\n31:35 Handlers in .NET Maui\n35:13 Porting Custom Renders to Handlers\n37:03 Source Generators in .NET Maui\n38:56 App Profiling and Performance Optimization\n41:29 Plugin Package or Product: Compiled Bindings\n47:04 Closing Remarks and Call to Action\nLinks:CompiledBindings.Maui","content_html":"In this episode, Jon and Allan discuss the state of .NET Maui, the challenges of mobile development, and the benefits of using Blazor WebView in Maui apps. They also talk about the evolution of the Mono runtime, the use of handlers in Maui, and the transition from custom renders to source generators. Overall, they highlight the improvements and advancements in the .NET Maui framework and its potential for creating cross-platform mobile apps. In this episode, Jon and Allan discuss app profiling and performance optimization, highlighting the use of tools like DS router and DS dotnet trace to profile apps and identify performance issues. They emphasize the importance of measuring and optimizing early in the development process to avoid potential problems. The conversation then shifts to the introduction of a new segment called 'Plugin Package or Product,' where they showcase a library called compiled bindings that enhances the XAML experience by providing additional operators and reducing verbosity. They express their interest in incorporating such concepts into the core product. The episode concludes with a call to action for listeners to subscribe, leave reviews, and provide topic suggestions for future episodes.
\n\nThe .NET Maui framework has made significant progress, with improvements in tooling, performance, and support for modern mobile app development.
\nBlazor WebView in Maui allows developers to leverage their existing Blazor skills and codebase to build hybrid mobile apps.
\nThe transition from custom renders to handlers in Maui simplifies the development process and improves performance.
\nSource generators in Maui enable automatic code generation, reducing the need for manual coding and improving productivity. App profiling and performance optimization are crucial for identifying and resolving performance issues in apps.
\nTools like DS router and DS dotnet trace can be used to profile apps and gather trace files and speed scope logs for analysis.
\nEarly measurement and optimization can help prevent performance issues and improve the overall user experience.
\nCompiled bindings is a library that enhances the XAML experience by providing additional operators and reducing verbosity, making it easier to work with XAML.
This week we're talking about Compiled Bindings: https://github.com/levitali/CompiledBindings which provides {x:Bind} Markup Extension for WPF, MAUI and Xamarin Forms.
\n\nLinks:
","summary":"Gone Mobile returns after a several year hiatus! In this episode, Jon and Allan discuss the state of .NET MAUI, the challenges of mobile development, the benefits of using Blazor WebView in Maui apps and surprisingly more!","date_published":"2024-01-05T10:00:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/d95fbf0f-be3e-4ad9-b5c9-1b2000ec51f4.mp3","mime_type":"audio/mpeg","size_in_bytes":62167052,"duration_in_seconds":2928}]},{"id":"2d128a75-f41a-4083-9ee7-c54ef6bc4a14","title":"87: Couchbase Mobile Update with Robert Hedgpeth","url":"https://www.gonemobile.io/87","content_text":"It's been a few years since we've talked Couchbase on the show, so with their recent release of Couchbase Mobile 2.5 we thought we'd bring Robert Hedgpeth on to catch us up!Special Guest: Robert Hedgpeth.Sponsored By:Telerik: Capitalizing on the innate benefits of the native UI while exposing all objects and properties in C#, Telerik UI for Xamarin is a collection of Xamarin.Forms controls and Xamarin wrappers which offer fast loading, excellent drawing capabilities and pixel-perfection while providing “no-compromise” customization, flexibility and stunning UI. Telerik UI for Xamarin. .NET Tools for .NET Ninjas. Download a trial today!\r\n\r\n![Telerik UI for Xamarin](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/6phhkyJ_.jpg)Links:Couchbase Mobile 2.5 ReleasedCouchbase MobileGone Mobile 10: Couchbase Lite","content_html":"It's been a few years since we've talked Couchbase on the show, so with their recent release of Couchbase Mobile 2.5 we thought we'd bring Robert Hedgpeth on to catch us up!
Special Guest: Robert Hedgpeth.
Sponsored By:
Links:
","summary":"It's been a few years since we've talked Couchbase on the show, so with their recent release of Couchbase Mobile 2.5 we thought we'd bring Robert Hedgpeth on to catch us up!","date_published":"2019-07-10T06:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/2d128a75-f41a-4083-9ee7-c54ef6bc4a14.mp3","mime_type":"audio/mp3","size_in_bytes":60636113,"duration_in_seconds":3034}]},{"id":"5f3c7ddb-0298-463c-925f-3f535a872dcc","title":"86: Building PepTown with Eric Sink","url":"https://www.gonemobile.io/86","content_text":"You may know Eric Sink from the database syncing product Zumero, or perhaps the source control versioning system SourceGear. Now, Eric is building a platform for High School sports fundraising, and he's doing it in .NET.Special Guest: Eric Sink.Sponsored By:Raygun: Spot every bug. Discover every performance issue. Ship new features faster and deliver flawless user experiences. Raygun enables you to build stronger, faster and more resilient web and mobile applications for your customers. Get setup in minutes!\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/HBGogQN5.png)Links:Building PepTown with .NET: App OverviewEric Sink's BlogZumero - SQL data sync for mobile appsSourceGear | Vault","content_html":"You may know Eric Sink from the database syncing product Zumero, or perhaps the source control versioning system SourceGear. Now, Eric is building a platform for High School sports fundraising, and he's doing it in .NET.
Special Guest: Eric Sink.
Sponsored By:
Links:
OutSystems allows you to do some pretty amazing things with Low to No Code. We talk to Stacey Levine about their platform to see just how much you an accomplish without coding!
Special Guest: Stacey Levine.
Sponsored By:
Links:
","summary":"OutSystems allows you to do some pretty amazing things with Low to No Code. We talk to Stacey Levine about their platform to see just how much you an accomplish without coding!","date_published":"2019-03-06T09:15:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/579475b3-536b-4860-8666-d04676673a6a.mp3","mime_type":"audio/mp3","size_in_bytes":38837373,"duration_in_seconds":2924}]},{"id":"e8829b26-1064-4b67-9d35-e94b80ece58f","title":"84: Creating Apps From Spreadsheets Using Glide with Jason Smith and Mark Probst","url":"https://www.gonemobile.io/84","content_text":"Creating apps from spreadsheets? You bet! In this episode we're joined by Jason Smith and Mark Probst, formerly of Xamarin/Microsoft, to talk about their new endeavor called Glide. Glide's goal is to let you build beautiful, data-powered apps quickly and easily, so tune in to learn what it's all about!Special Guests: Jason Smith and Mark Probst.Sponsored By:Raygun: Spot every bug. Discover every performance issue. Ship new features faster and deliver flawless user experiences. Raygun enables you to build stronger, faster and more resilient web and mobile applications for your customers. Get setup in minutes!\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/HBGogQN5.png)Links:Glide – Amazing apps from Google SheetsGlide SamplesGone Mobile 28: Behind the Scenes of Xamarin.Forms with Jason SmithGone Mobile 13: Xamarin.Forms","content_html":"Creating apps from spreadsheets? You bet! In this episode we're joined by Jason Smith and Mark Probst, formerly of Xamarin/Microsoft, to talk about their new endeavor called Glide. Glide's goal is to let you build beautiful, data-powered apps quickly and easily, so tune in to learn what it's all about!
Special Guests: Jason Smith and Mark Probst.
Sponsored By:
Links:
We finally sit down with Leonardo and Diego from UXDivers to talk about their products GrialKit and Gorilla Player.
\n\nGrialKit is a collection of Xamarin.Forms user controls, templates, pages, and basically a really simple way to make your app look great.
\n\nGorilla Player lets you live preview and hot reload XAML from your Xamarin.Forms products on a device or simulator.
Special Guests: Diego Rivero and Leonardo Rodriguez.
Sponsored By:
Links:
It's been awhile since we've had a good F# discussion, so for our final episode of 2018 we decided to fix that. Join us as we talk to Jim Bennett about the latest and greatest in the world of F# and how it's becoming a better option than ever before for building mobile apps!
Special Guest: Jim Bennett.
Sponsored By:
Links:
We discuss and recap some of the more interesting highlights from Microsoft Connect 2018.
Sponsored By:
Links:
Bryan can finally share what he's been working on, and "IoT" is full of .NET goodness! On this episode we talk to Bryan Costanich about Meadow, a new microcontroller where .NET is king. This isn't your typical microcontroller, give us a listen!
Special Guest: Bryan Costanich.
Sponsored By:
Links:
Thomas Burkhart talks with us about what Flutter is, what it's like to program in Dart, and the pro's and con's of Flutter as a mobile development platform.
Special Guest: Thomas Burkhart.
Sponsored By:
Links:
","summary":"We talk to Thomas Burkhart in a long overdue episode on Flutter.","date_published":"2018-10-29T10:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/6b3c40ac-7fc7-43f1-a9bb-4e41792d723f.mp3","mime_type":"audio/mpeg","size_in_bytes":44492688,"duration_in_seconds":3091}]},{"id":"cd87c519-4319-42f3-b07c-7dd8566f2d2c","title":"78: Building a Software Business with Matthew Robbins","url":"https://www.gonemobile.io/78","content_text":"Building a business around software is hard work, and often it's hard to come across detailed advice from those who have dared to give it a shot. In this episode we're joined by Matthew Robbins, founder of MFractor, to talk about his experiences building a company around developer tooling, and what he's learned along the way. If you're curious to peek behind the curtain of building MFractor, this is the episode for you!Special Guest: Matthew Robbins.Sponsored By:Telerik: Capitalizing on the innate benefits of the native UI while exposing all objects and properties in C#, Telerik UI for Xamarin is a collection of Xamarin.Forms controls and Xamarin wrappers which offer fast loading, excellent drawing capabilities and pixel-perfection while providing “no-compromise” customization, flexibility and stunning UI. Telerik UI for Xamarin. .NET Tools for .NET Ninjas. Download a trial today!\r\n\r\n![Telerik UI for Xamarin](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/6phhkyJ_.jpg)Links:MFractor","content_html":"Building a business around software is hard work, and often it's hard to come across detailed advice from those who have dared to give it a shot. In this episode we're joined by Matthew Robbins, founder of MFractor, to talk about his experiences building a company around developer tooling, and what he's learned along the way. If you're curious to peek behind the curtain of building MFractor, this is the episode for you!
Special Guest: Matthew Robbins.
Sponsored By:
Links:
","summary":"Building a business around software is hard work, and often it's hard to come across detailed advice from those who have dared to give it a shot. In this episode we're joined by Matthew Robbins, founder of MFractor, to talk about his experiences building a company around developer tooling, and what he's learned along the way. If you're curious to peek behind the curtain of building MFractor, this is the episode for you!","date_published":"2018-10-15T08:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/cd87c519-4319-42f3-b07c-7dd8566f2d2c.mp3","mime_type":"audio/mp3","size_in_bytes":46416478,"duration_in_seconds":2224}]},{"id":"b713b8d3-9106-42e6-88fc-f403e6124921","title":"77: Revisiting ReactiveUI with Kent Boogaart","url":"https://www.gonemobile.io/77","content_text":"Somehow five years have gone by since we last did an episode on ReactiveUI, so we figured it was time to fix that! In this episode we're joined by Kent Boogaart, author of the recently published book You, I, and ReactiveUI, and we dig into what ReactiveUI is, what's changed over the years, and why you should use it in your apps.Special Guest: Kent Boogaart.Sponsored By:MFractor: [MFractor](https://www.mfractor.com) seamlessly integrates with Visual Studio for Mac for a superior Xamarin development experience:\r\n\r\n- Easily create Xamarin.Forms apps with XAML analysis, a suite of navigation shortcuts and powerful XAML to C# code generation tools.\r\n- Take the sting out of Android development using resource Intellisense, a better navigation experience, a suite of Android-specific C# code analyzers and more.\r\n- Make day-to-day development easier with MFractors collection of C# code actions and refactorings.\r\n- Don't like the code that MFractor generates? Tweak it with a rich configuration engine.\r\n\r\nBuild your apps faster with a single user, yearly subscription to MFractor for Visual Studio Mac for $199AUD.\r\n\r\n![MFractor](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/pjQYV87_.png)Links:ReactiveUIYou, I, and ReactiveUIGone Mobile 3: Bettsing on Reactive","content_html":"Somehow five years have gone by since we last did an episode on ReactiveUI, so we figured it was time to fix that! In this episode we're joined by Kent Boogaart, author of the recently published book You, I, and ReactiveUI, and we dig into what ReactiveUI is, what's changed over the years, and why you should use it in your apps.
Special Guest: Kent Boogaart.
Sponsored By:
Links:
","summary":"Somehow five years have gone by since we last did an episode on ReactiveUI, so we figured it was time to fix that! In this episode we're joined by Kent Boogaart, author of the recently published book You, I, and ReactiveUI, and we dig into what ReactiveUI is, what's changed over the years, and why you should use it in your apps.","date_published":"2018-09-10T07:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/b713b8d3-9106-42e6-88fc-f403e6124921.mp3","mime_type":"audio/mp3","size_in_bytes":52380107,"duration_in_seconds":2507}]},{"id":"316cae39-c583-49b2-a6ff-a960289546c1","title":"76: Building Untappd with Greg Avola","url":"https://www.gonemobile.io/76","content_text":"Cheers to the creator of Untappd! We talk about the beer app's humble beginnings and how it grew into a keg-sized success. Find out how it's built, what the backend is like, and what new suds are to come!Special Guest: Greg Avola.Sponsored By:Raygun: Spot every bug. Discover every performance issue. Ship new features faster and deliver flawless user experiences. Raygun enables you to build stronger, faster and more resilient web and mobile applications for your customers. Get setup in minutes!\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/HBGogQN5.png)Links:Untappd - Drink SociallyIonic Framework","content_html":"Cheers to the creator of Untappd! We talk about the beer app's humble beginnings and how it grew into a keg-sized success. Find out how it's built, what the backend is like, and what new suds are to come!
Special Guest: Greg Avola.
Sponsored By:
Links:
","summary":"Cheers to the creator of Untappd! We talk about the beer app's humble beginnings and how it grew into a keg-sized success. Find out how it's built, what the backend is like, and what new suds are to come!","date_published":"2018-08-27T09:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/316cae39-c583-49b2-a6ff-a960289546c1.mp3","mime_type":"audio/mpeg","size_in_bytes":62608533,"duration_in_seconds":3912}]},{"id":"e95f27b4-6ff8-496d-87df-dc3b1fd136c5","title":"75: Easy Mobile App Builds with Dan Siegel","url":"https://www.gonemobile.io/75","content_text":"There's a lot of ways to go about setting up builds for your mobile apps, and a lot of things to consider when doing so. Thankfully, that doesn't mean it needs to be complicated! In this episode we talk to Dan Siegel about his experiences setting up builds for a lot of his apps, and the tools he created to make it easy to add to any Xamarin project. Tune in and learn how you can clean up your build process quickly and easily!Special Guest: Dan Siegel.Sponsored By:Raygun: Spot every bug. Discover every performance issue. Ship new features faster and deliver flawless user experiences. Raygun enables you to build stronger, faster and more resilient web and mobile applications for your customers. Get setup in minutes!\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/HBGogQN5.png)Links:Dan's BlogMobile.BuildTools on GitHubMobile.BuildTools on NuGet","content_html":"There's a lot of ways to go about setting up builds for your mobile apps, and a lot of things to consider when doing so. Thankfully, that doesn't mean it needs to be complicated! In this episode we talk to Dan Siegel about his experiences setting up builds for a lot of his apps, and the tools he created to make it easy to add to any Xamarin project. Tune in and learn how you can clean up your build process quickly and easily!
Special Guest: Dan Siegel.
Sponsored By:
Links:
","summary":"There's a lot of ways to go about setting up builds for your mobile apps, and a lot of things to consider when doing so. Thankfully, that doesn't mean it needs to be complicated! In this episode we talk to Dan Siegel about his experiences setting up builds for a lot of his apps, and the tools he created to make it easy to add to any Xamarin project. Tune in and learn how you can clean up your build process quickly and easily!","date_published":"2018-08-21T07:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/e95f27b4-6ff8-496d-87df-dc3b1fd136c5.mp3","mime_type":"audio/mp3","size_in_bytes":38566690,"duration_in_seconds":1995}]},{"id":"84eed1d5-ada6-498f-a2d1-625295b07484","title":"74: Exploring the Uno Platform with Jérôme Laban","url":"https://www.gonemobile.io/74","content_text":"There are a lot of ways to build mobile apps out there, and Uno brings a fun new twist to the mix: leverage your UWP skills and code across iOS, Android, the web, and maybe more! In this episode we talk to Jérôme Laban about what drove them to create Uno, what it is, how it works, and how to get started bringing UWP to all new platforms!Special Guest: Jérôme Laban.Sponsored By:MFractor: [MFractor](https://www.mfractor.com) seamlessly integrates with Visual Studio for Mac for a superior Xamarin development experience:\r\n\r\n- Easily create Xamarin.Forms apps with XAML analysis, a suite of navigation shortcuts and powerful XAML to C# code generation tools.\r\n- Take the sting out of Android development using resource Intellisense, a better navigation experience, a suite of Android-specific C# code analyzers and more.\r\n- Make day-to-day development easier with MFractors collection of C# code actions and refactorings.\r\n- Don't like the code that MFractor generates? Tweak it with a rich configuration engine.\r\n\r\nBuild your apps faster with a single user, yearly subscription to MFractor for Visual Studio Mac for $199AUD.\r\n\r\n![MFractor](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/pjQYV87_.png)Links:UnoUno on GitHubUno Playground","content_html":"There are a lot of ways to build mobile apps out there, and Uno brings a fun new twist to the mix: leverage your UWP skills and code across iOS, Android, the web, and maybe more! In this episode we talk to Jérôme Laban about what drove them to create Uno, what it is, how it works, and how to get started bringing UWP to all new platforms!
Special Guest: Jérôme Laban.
Sponsored By:
Links:
","summary":"There are a lot of ways to build mobile apps out there, and Uno brings a fun new twist to the mix: leverage your UWP skills and code across iOS, Android, the web, and maybe more! In this episode we talk to Jérôme Laban about what drove them to create Uno, what it is, how it works, and how to get started bringing UWP to all new platforms!","date_published":"2018-08-15T08:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/84eed1d5-ada6-498f-a2d1-625295b07484.mp3","mime_type":"audio/mp3","size_in_bytes":59995812,"duration_in_seconds":2840}]},{"id":"1ea50cf2-63de-4058-88a3-34817d5d97fc","title":"73: Machine Learning with Frank Krueger","url":"https://www.gonemobile.io/73","content_text":"Frank is pretty much a machine himself, so we have him teach us the basics of Machine Learning and how he's been using it in his own apps! Listen to see how you can get started in Machine Learning with C# and .NET!Special Guest: Frank Krueger.Sponsored By:Telerik: Capitalizing on the innate benefits of the native UI while exposing all objects and properties in C#, Telerik UI for Xamarin is a collection of Xamarin.Forms controls and Xamarin wrappers which offer fast loading, excellent drawing capabilities and pixel-perfection while providing “no-compromise” customization, flexibility and stunning UI. Telerik UI for Xamarin. .NET Tools for .NET Ninjas. Download a trial today!\r\n\r\n![Telerik UI for Xamarin](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/6phhkyJ_.jpg)Links:Frank's Blog: Code Prediction with a Neural NetworkFrank's Blog: \"Hotdog or Not\" Using Azure Custom Vision, CoreML,...Frank's Podcast: Merge ConflictContinuous C# and F# IDE for iPads and iPhonesKaggle ML CompetitionsBook: Deep Learning with Python","content_html":"Frank is pretty much a machine himself, so we have him teach us the basics of Machine Learning and how he's been using it in his own apps! Listen to see how you can get started in Machine Learning with C# and .NET!
Special Guest: Frank Krueger.
Sponsored By:
Links:
Long time Xamarin community member Filip Ekberg joins us to talk about how to succeed with Xamarin. Filip has been working on Xamarin since before it was Xamarin and has plenty of experience with success on the Xamarin platform and even some mistakes he's learned from. In this episode we talk about how new and experienced developers alike can be successful with Xamarin.
Special Guest: Filip Ekberg.
Sponsored By:
Links:
","summary":"Long time Xamarin community member Filip Ekberg joins us to talk about how to succeed with Xamarin.","date_published":"2018-07-31T09:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/2156557d-bbdf-4287-8fff-e1a474b24e60.mp3","mime_type":"audio/mpeg","size_in_bytes":40502313,"duration_in_seconds":2521}]},{"id":"ccbc6bbb-513e-4c96-a34b-9bcab1a0f1f6","title":"71: Exploring GraphQL with Glenn Block","url":"https://www.gonemobile.io/71","content_text":"In the world of API development, GraphQL has really been gaining some momentum in the last couple years...but what is it all about? In this episode we're joined by Glenn Block to dig into what it is, what it's not, how it compares to other API approaches and much, much more. If you're looking to cut through the noise and hear what GraphQL is all about, we've got you covered!Special Guest: Glenn Block.Sponsored By:MFractor: [MFractor](https://www.mfractor.com) seamlessly integrates with Visual Studio for Mac for a superior Xamarin development experience:\r\n\r\n- Easily create Xamarin.Forms apps with XAML analysis, a suite of navigation shortcuts and powerful XAML to C# code generation tools.\r\n- Take the sting out of Android development using resource Intellisense, a better navigation experience, a suite of Android-specific C# code analyzers and more.\r\n- Make day-to-day development easier with MFractors collection of C# code actions and refactorings.\r\n- Don't like the code that MFractor generates? Tweak it with a rich configuration engine.\r\n\r\nBuild your apps faster with a single user, yearly subscription to MFractor for Visual Studio Mac for $199AUD.\r\n\r\n![MFractor](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/pjQYV87_.png)Links:Auth0 ExtendGraphQLAPI Development in .NET with GraphQLGraphiQLGraphQL for .NETLearning GraphQL","content_html":"In the world of API development, GraphQL has really been gaining some momentum in the last couple years...but what is it all about? In this episode we're joined by Glenn Block to dig into what it is, what it's not, how it compares to other API approaches and much, much more. If you're looking to cut through the noise and hear what GraphQL is all about, we've got you covered!
Special Guest: Glenn Block.
Sponsored By:
Links:
","summary":"In the world of API development, GraphQL has really been gaining some momentum in the last couple years...but what is it all about? In this episode we're joined by Glenn Block to dig into what it is, what it's not, how it compares to other API approaches and much, much more. If you're looking to cut through the noise and hear what GraphQL is all about, we've got you covered!","date_published":"2018-07-25T07:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/ccbc6bbb-513e-4c96-a34b-9bcab1a0f1f6.mp3","mime_type":"audio/mp3","size_in_bytes":71999485,"duration_in_seconds":3526}]},{"id":"93a86161-307c-4103-bfda-a57a3da94839","title":"70: A Xamarin.Forms 2018 Update with David Ortinau","url":"https://www.gonemobile.io/70","content_text":"If you're looking for the latest and greatest news from the Xamarin.Forms world, you're in luck. In this episode we welcome David Ortinau back to the show to talk about all the new updates to Xamarin.Forms since he was last on a year ago. Spoiler alert: there's a lot!Special Guest: David Ortinau.Sponsored By:Telerik: Capitalizing on the innate benefits of the native UI while exposing all objects and properties in C#, Telerik UI for Xamarin is a collection of Xamarin.Forms controls and Xamarin wrappers which offer fast loading, excellent drawing capabilities and pixel-perfection while providing “no-compromise” customization, flexibility and stunning UI. Telerik UI for Xamarin. .NET Tools for .NET Ninjas. Download a trial today!\r\n\r\n![Telerik UI for Xamarin](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/6phhkyJ_.jpg)Links:Xamarin.Forms: Feature RoadmapXamarin.Forms.Shell SpecXamarin.Forms Drawing Specdavidortinau/Gastropods: A playground for exploring Xamarin.Forms Shell","content_html":"If you're looking for the latest and greatest news from the Xamarin.Forms world, you're in luck. In this episode we welcome David Ortinau back to the show to talk about all the new updates to Xamarin.Forms since he was last on a year ago. Spoiler alert: there's a lot!
Special Guest: David Ortinau.
Sponsored By:
Links:
In this episode we're joined by one of the original Xamarin pioneers, Bryan Costanich, to talk about what he's been up with Wilderness Labs! If you've ever been curious about getting started tinkering with hardware, or were intimidated by the idea, this is the episode for you. Join us as we dive into the state of the landscape, how Wilderness Labs is changing that space, and how it might be way easier than you think to start building your own connected devices!
Special Guest: Bryan Costanich.
Sponsored By:
Links:
The boys are back! In this episode, Jon and Greg catch up on all the latest announcements that came out of the Microsoft Build and Google I/O conferences earlier this month. Looking for a crash course on what you missed? We've got you covered!
Sponsored By:
Links:
","summary":"The boys are back! In this episode, Jon and Greg catch up on all the latest announcements that came out of the Microsoft Build and Google I/O conferences earlier this month. Looking for a crash course on what you missed? We've got you covered!","date_published":"2018-05-16T07:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/f412a3ba-ed95-46b0-a4e8-901f3c85fca4.mp3","mime_type":"audio/mp3","size_in_bytes":66117273,"duration_in_seconds":3082}]},{"id":"fd7b3e2b-55ec-4161-bf2f-5e66a41c694a","title":"67: Alexa, what's Greg watching?","url":"https://www.gonemobile.io/67","content_text":"Greg has been working on a voice driven TV remote using his Amazon Echo (Alexa) and the Logitech Harmony Hub. As a guest on this episode, he talks about the infrastructure and technologies behind his solution to get TV listing information and automatically tune to events.Special Guest: Greg Shackles.Sponsored By:Telerik: Capitalizing on the innate benefits of the native UI while exposing all objects and properties in C#, Telerik UI for Xamarin is a collection of Xamarin.Forms controls and Xamarin wrappers which offer fast loading, excellent drawing capabilities and pixel-perfection while providing “no-compromise” customization, flexibility and stunning UI. Telerik UI for Xamarin. .NET Tools for .NET Ninjas. Download a trial today!\r\n\r\n![Telerik UI for Xamarin](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/6phhkyJ_.jpg)Links:Blog Series: Building a Voice Driven TV RemoteXML TV ListingsAzure FunctionsAzure SearchMQTT","content_html":"Greg has been working on a voice driven TV remote using his Amazon Echo (Alexa) and the Logitech Harmony Hub. As a guest on this episode, he talks about the infrastructure and technologies behind his solution to get TV listing information and automatically tune to events.
Special Guest: Greg Shackles.
Sponsored By:
Links:
","summary":"Greg is in the hot seat talking about he commands his TV to watch the Yankees with his voice.","date_published":"2018-01-15T09:00:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/fd7b3e2b-55ec-4161-bf2f-5e66a41c694a.mp3","mime_type":"audio/mpeg","size_in_bytes":53306491,"duration_in_seconds":3321}]},{"id":"99f7ffae-5b54-4ab2-806e-35358985d88d","title":"66: Under the Hood of the Azure Mobile App with Jakub Jedryszek","url":"https://www.gonemobile.io/66","content_text":"Jakub shares what he's learned using Xamarin to build the Azure App for iOS and Android. It's always interesting to see how real app developers are building real apps, the challenges they face, and tips and tricks for building our own apps.Special Guest: Jakub Jedryszek.Sponsored By:Raygun: Discover, diagnose and understand the root cause of error, crash and performance issues in your software applications in seconds! See how your applications are _really_ performing for users and where they encounter problems using Raygun's full stack software intelligence platform.\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/wteIZ9Zz.png)Links:Building real-world mobile apps with Xamarin: Under the hood of the Azure Mobile app | BRK3289 - YouTubeUnder the hood of the Azure Mobile AppPage Object PatternAzure mobile app | Microsoft AzureAzure mobile app: Customer Feedback","content_html":"Jakub shares what he's learned using Xamarin to build the Azure App for iOS and Android. It's always interesting to see how real app developers are building real apps, the challenges they face, and tips and tricks for building our own apps.
Special Guest: Jakub Jedryszek.
Sponsored By:
Links:
There are a lot of ways out there to build your mobile apps, and React Native offers an interesting way to take your React skills on the web and apply them to building fully native apps across plenty of different platforms. These aren't just hybrid apps running in a browser, so join us as we talk to Bonnie Eisenman about what React Native is, how it works, and how you can get started using it!
Special Guest: Bonnie Eisenman.
Sponsored By:
Links:
Ionic is a framework that allows you to leverage web technologies to build apps for a wide range of platforms, in addition to providing related tools around building, deploying, and monitoring those apps. In this episode we talk to Justin Willis about what Ionic is, what it provides, and why you might use it to build your next app.
Special Guest: Justin Willis.
Sponsored By:
Links:
","summary":"Ionic is a framework that allows you to leverage web technologies to build apps for a wide range of platforms, in addition to providing related tools around building, deploying, and monitoring those apps. In this episode we talk to Justin Willis about what Ionic is, what it provides, and why you might use it to build your next app.","date_published":"2017-12-11T08:00:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/523075c0-fc5d-4b7c-8bdf-f3ddd9d16adb.mp3","mime_type":"audio/mp3","size_in_bytes":79175712,"duration_in_seconds":3657}]},{"id":"0f3cc0fd-1695-4e63-84da-a95b82dfa4eb","title":"63: Building Apps Using Visual Studio Team Services with Gopinath C H","url":"https://www.gonemobile.io/63","content_text":"At Microsoft's Connect(); conference in New York City we sat down with Gopinath C H to talk about Visual Studio Team Services. There are a lot of different components inside of VSTS, so we tried to talk through as many of them as we could and how they can help mobile developers build and maintain their apps. There are a lot of ways to build your apps, and VSTS makes a compelling case for choosing it. Learn how VSTS is being used inside of Microsoft (including for Windows itself!) and how it can help you build and release your apps!Special Guest: Gopinath C H.Sponsored By:Raygun: Discover, diagnose and understand the root cause of error, crash and performance issues in your software applications in seconds! See how your applications are _really_ performing for users and where they encounter problems using Raygun's full stack software intelligence platform.\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/wteIZ9Zz.png)Links:Visual Studio Team ServicesVSTS: Connect(); announcements","content_html":"At Microsoft's Connect(); conference in New York City we sat down with Gopinath C H to talk about Visual Studio Team Services. There are a lot of different components inside of VSTS, so we tried to talk through as many of them as we could and how they can help mobile developers build and maintain their apps. There are a lot of ways to build your apps, and VSTS makes a compelling case for choosing it. Learn how VSTS is being used inside of Microsoft (including for Windows itself!) and how it can help you build and release your apps!
Special Guest: Gopinath C H.
Sponsored By:
Links:
","summary":"At Microsoft's Connect(); conference in New York City we sat down with Gopinath C H to talk about Visual Studio Team Services. There are a lot of different components inside of VSTS, so we tried to talk through as many of them as we could and how they can help mobile developers build and maintain their apps. There are a lot of ways to build your apps, and VSTS makes a compelling case for choosing it. Learn how VSTS is being used inside of Microsoft (including for Windows itself!) and how it can help you build and release your apps!","date_published":"2017-12-04T08:00:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/0f3cc0fd-1695-4e63-84da-a95b82dfa4eb.mp3","mime_type":"audio/mp3","size_in_bytes":38992934,"duration_in_seconds":1829}]},{"id":"85df76e2-abfb-43fe-afe8-ef75a8d4d538","title":"62: Cosmos DB with Kirill Gavrylyuk","url":"https://www.gonemobile.io/62","content_text":"Recorded at Microsoft's Connect(); conference in New York City, we welcomed Kirill Gavrylyuk back on the show to dig into CosmosDB. We talked about what it is, how it works, why you might use it, and much more. Listen in to learn about this exciting new database!Special Guest: Kirill Gavrylyuk.Sponsored By:Telerik: Capitalizing on the innate benefits of the native UI while exposing all objects and properties in C#, Telerik UI for Xamarin is a collection of Xamarin.Forms controls and Xamarin wrappers which offer fast loading, excellent drawing capabilities and pixel-perfection while providing “no-compromise” customization, flexibility and stunning UI. Telerik UI for Xamarin. .NET Tools for .NET Ninjas. Download a trial today!\r\n\r\n![Telerik UI for Xamarin](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/6phhkyJ_.jpg)Links:Azure Cosmos DB","content_html":"Recorded at Microsoft's Connect(); conference in New York City, we welcomed Kirill Gavrylyuk back on the show to dig into CosmosDB. We talked about what it is, how it works, why you might use it, and much more. Listen in to learn about this exciting new database!
Special Guest: Kirill Gavrylyuk.
Sponsored By:
Links:
","summary":"Recorded at Microsoft's Connect(); conference in New York City, we welcomed Kirill Gavrylyuk back on the show to dig into CosmosDB. We talked about what it is, how it works, why you might use it, and much more. Listen in to learn about this exciting new database!","date_published":"2017-11-27T08:00:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/85df76e2-abfb-43fe-afe8-ef75a8d4d538.mp3","mime_type":"audio/mpeg","size_in_bytes":47162580,"duration_in_seconds":2247}]},{"id":"89ac7c82-4fd6-46af-9d28-2442ea3f2687","title":"61: Live Player and Microsoft Connect Roundup with Joseph Hill","url":"https://www.gonemobile.io/61","content_text":"While at Microsoft's Connect(); conference in New York we caught up with Joseph Hill to discuss all the latest and greatest announcements in the Xamarin world, as well as digging deeper into their new Live Player app. Want to get up to speed on all the latest announcements? Look no further!Special Guest: Joseph Hill.Sponsored By:Raygun: Discover, diagnose and understand the root cause of error, crash and performance issues in your software applications in seconds! See how your applications are _really_ performing for users and where they encounter problems using Raygun's full stack software intelligence platform.\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/wteIZ9Zz.png)Links:Xamarin Announcements from Microsoft Connect(); 2017","content_html":"While at Microsoft's Connect(); conference in New York we caught up with Joseph Hill to discuss all the latest and greatest announcements in the Xamarin world, as well as digging deeper into their new Live Player app. Want to get up to speed on all the latest announcements? Look no further!
Special Guest: Joseph Hill.
Sponsored By:
Links:
","summary":"While at Microsoft's Connect(); conference in New York we caught up with Joseph Hill to discuss all the latest and greatest announcements in the Xamarin world, as well as digging deeper into their new Live Player app. Want to get up to speed on all the latest announcements? Look no further!","date_published":"2017-11-20T08:00:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/89ac7c82-4fd6-46af-9d28-2442ea3f2687.mp3","mime_type":"audio/mp3","size_in_bytes":55599376,"duration_in_seconds":2474}]},{"id":"447a5f31-3379-40fd-be5c-2cbd7683a1a2","title":"60: Building a Mobile Flight Simulator with Laura Laban","url":"https://www.gonemobile.io/60","content_text":"Laura Laban is the CEO and founder of Infinite Flight, a popular flight simulator on mobile devices. In this episode, we talk with Laura about the history of Infinite Flight, its features, server infrastructure, where it's going and much more! Special Guest: Laura Laban.Sponsored By:Telerik: Capitalizing on the innate benefits of the native UI while exposing all objects and properties in C#, Telerik UI for Xamarin is a collection of Xamarin.Forms controls and Xamarin wrappers which offer fast loading, excellent drawing capabilities and pixel-perfection while providing “no-compromise” customization, flexibility and stunning UI. Telerik UI for Xamarin. .NET Tools for .NET Ninjas. Download a trial today!\r\n\r\n![Telerik UI for Xamarin](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/6phhkyJ_.jpg)Links:Infinite Flight","content_html":"Laura Laban is the CEO and founder of Infinite Flight, a popular flight simulator on mobile devices. In this episode, we talk with Laura about the history of Infinite Flight, its features, server infrastructure, where it's going and much more!
Special Guest: Laura Laban.
Sponsored By:
Links:
","summary":"Laura Laban is the CEO and founder of Infinite Flight, a popular flight simulator on mobile devices. In this episode, we talk with Laura about the history of Infinite Flight, its features, server infrastructure, where it's going and much more! ","date_published":"2017-11-06T09:00:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/447a5f31-3379-40fd-be5c-2cbd7683a1a2.mp3","mime_type":"audio/mpeg","size_in_bytes":58150114,"duration_in_seconds":3624}]},{"id":"a1deb7a0-3a50-4460-b7b6-0162f7ac1a30","title":"59: SkiaSharp with Matthew Leibowitz","url":"https://www.gonemobile.io/59","content_text":"SkiaSharp is a cross-platform 2D graphics API for .NET platforms based on Google's Skia Graphics Library that can be used across mobile, server, and desktop applications. In this episode we chat with Matthew Leibowitz and dig into what SkiaSharp is, how it works, and how you can get started using it in your apps.Special Guest: Matthew Leibowitz.Sponsored By:Raygun: Discover, diagnose and understand the root cause of error, crash and performance issues in your software applications in seconds! See how your applications are _really_ performing for users and where they encounter problems using Raygun's full stack software intelligence platform.\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/wteIZ9Zz.png)Links:SkiaSharp: The Skia 2D Graphics library from Google exposed to .NET languages and runtimes across the boardFlappyBird clone with SkiaSharp","content_html":"SkiaSharp is a cross-platform 2D graphics API for .NET platforms based on Google's Skia Graphics Library that can be used across mobile, server, and desktop applications. In this episode we chat with Matthew Leibowitz and dig into what SkiaSharp is, how it works, and how you can get started using it in your apps.
Special Guest: Matthew Leibowitz.
Sponsored By:
Links:
Have your cake and eat it too! Build scripts have never been so delicious.
\nWe're joined by Cake team members Gary Park and Mattias Karlsson to talk about the Cake (C#) build system, the history of it, and what it all can do. After listening to this episode we guarantee you'll definitely want to put some more C# in your build scripts with Cake!
Special Guests: Gary Ewan Park and Mattias Karlsson.
Sponsored By:
Links:
","summary":"Have your cake and eat it too! Build scripts have never been so delicious.\r\nWe're joined by Cake team members Gary Park and Mattias Karlsson to talk about the Cake (C#) build system, the history of it, and what it all can do. After listening to this episode we guarantee you'll definitely want to put some more C# in your build scripts with Cake!","date_published":"2017-10-17T10:45:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/514c5611-642a-494a-8755-6235252875c3.mp3","mime_type":"audio/mpeg","size_in_bytes":45919582,"duration_in_seconds":4233}]},{"id":"ee1b4ef9-a272-4fa2-8c3b-ea60746d4360","title":"57: OpenMVVM with Stanko Nikolic and Bojan Misic","url":"https://www.gonemobile.io/57","content_text":"Yes, we're talking about another MVVM framework today, but this one comes with a twist! In this episode we talk to Stanko Nikolic and Bojan Misic about OpenMVVM, an interesting framework they've been working on that combines Xamarin and C# with HTML5 and web views to create a flexible and powerful cross-platform app framework. Join us for a unique approach to cross-platform development with Xamarin!Special Guests: Bojan Misic and Stanko Nikolic.Sponsored By:Telerik: Capitalizing on the innate benefits of the native UI while exposing all objects and properties in C#, Telerik UI for Xamarin is a collection of Xamarin.Forms controls and Xamarin wrappers which offer fast loading, excellent drawing capabilities and pixel-perfection while providing “no-compromise” customization, flexibility and stunning UI. Telerik UI for Xamarin. .NET Tools for .NET Ninjas. Download a trial today!\r\n\r\n![Telerik UI for Xamarin](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/6phhkyJ_.jpg)Links:OpenMVVM - Framework that provides unified API for MVVM applications across many platforms.","content_html":"Yes, we're talking about another MVVM framework today, but this one comes with a twist! In this episode we talk to Stanko Nikolic and Bojan Misic about OpenMVVM, an interesting framework they've been working on that combines Xamarin and C# with HTML5 and web views to create a flexible and powerful cross-platform app framework. Join us for a unique approach to cross-platform development with Xamarin!
Special Guests: Bojan Misic and Stanko Nikolic.
Sponsored By:
Links:
","summary":"Yes, we're talking about another MVVM framework today, but this one comes with a twist! In this episode we talk to Stanko Nikolic and Bojan Misic about OpenMVVM, an interesting framework they've been working on that combines Xamarin and C# with HTML5 and web views to create a flexible and powerful cross-platform app framework. Join us for a unique approach to cross-platform development with Xamarin!","date_published":"2017-10-11T08:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/ee1b4ef9-a272-4fa2-8c3b-ea60746d4360.mp3","mime_type":"audio/mpeg","size_in_bytes":62963303,"duration_in_seconds":3051}]},{"id":"bb942f43-10d8-43ab-819b-87a5d14f0db1","title":"56: MvvmCross Updates with Martijn van Dijk","url":"https://www.gonemobile.io/56","content_text":"It took a few years, but we finally did a show on MvvmCross! In this episode we're joined by Martjin van Dijk, one of the core maintainers of the project, to talk about where MvvmCross came from, what's new in it, and where it's heading!Special Guest: Martijn van Dijk.Sponsored By:Raygun: Discover, diagnose and understand the root cause of error, crash and performance issues in your software applications in seconds! See how your applications are _really_ performing for users and where they encounter problems using Raygun's full stack software intelligence platform.\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/wteIZ9Zz.png)Links:MvvmCrossMvvmCross on GitHubUsing MvvmCross with Xamarin.FormsMvvmCross Hackfest","content_html":"It took a few years, but we finally did a show on MvvmCross! In this episode we're joined by Martjin van Dijk, one of the core maintainers of the project, to talk about where MvvmCross came from, what's new in it, and where it's heading!
Special Guest: Martijn van Dijk.
Sponsored By:
Links:
","summary":"It took a few years, but we finally did a show on MvvmCross! In this episode we're joined by Martjin van Dijk, one of the core maintainers of the project, to talk about where MvvmCross came from, what's new in it, and where it's heading!","date_published":"2017-08-22T08:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/bb942f43-10d8-43ab-819b-87a5d14f0db1.mp3","mime_type":"audio/mp3","size_in_bytes":48014528,"duration_in_seconds":2321}]},{"id":"2fdf2fd3-3785-4b61-aaf1-699def517a43","title":"55: Embeddinating .NET Everywhere with Jonathan Peppers","url":"https://www.gonemobile.io/55","content_text":"Did you know that you can take your .NET code, including Xamarin.iOS and Xamarin.Android views, even Xamarin.Forms, and reference them from native Objective-C or Java applications? In this episode we talk to Jonathan Peppers, an engineer on the team at Microsoft working on this sorcery, and dig into how it works and where it's going. It's a brave new world! Special Guest: Jonathan Peppers.Sponsored By:Raygun: Discover, diagnose and understand the root cause of error, crash and performance issues in your software applications in seconds! See how your applications are _really_ performing for users and where they encounter problems using Raygun's full stack software intelligence platform.\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/wteIZ9Zz.png)Links:Embeddinator-4000","content_html":"Did you know that you can take your .NET code, including Xamarin.iOS and Xamarin.Android views, even Xamarin.Forms, and reference them from native Objective-C or Java applications? In this episode we talk to Jonathan Peppers, an engineer on the team at Microsoft working on this sorcery, and dig into how it works and where it's going. It's a brave new world!
Special Guest: Jonathan Peppers.
Sponsored By:
Links:
","summary":"Did you know that you can take your .NET code, including Xamarin.iOS and Xamarin.Android views, even Xamarin.Forms, and reference them from native Objective-C or Java applications? In this episode we talk to Jonathan Peppers, an engineer on the team at Microsoft working on this sorcery, and dig into how it works and where it's going. It's a brave new world! ","date_published":"2017-08-14T08:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/2fdf2fd3-3785-4b61-aaf1-699def517a43.mp3","mime_type":"audio/mp3","size_in_bytes":44411150,"duration_in_seconds":2065}]},{"id":"cf224190-5ea9-4455-99de-18a25551a996","title":"54: Visual Crash Reporting with Alex Fishman","url":"https://www.gonemobile.io/54","content_text":"There is no shortage of options out there for doing error and crash reporting for mobile apps, but Bugsee takes a different approach, providing a more visual and deeper set of reporting and diagnostics. In this episode we talk to Alex Fishman, founder and CEO of Bugsee, and dig into what they're offering for mobile developers.Special Guest: Alex Fishman.Sponsored By:MFractor: [MFractor](https://www.mfractor.com) seamlessly integrates with Visual Studio for Mac for a superior Xamarin development experience:\r\n\r\n- Easily create Xamarin.Forms apps with XAML analysis, a suite of navigation shortcuts and powerful XAML to C# code generation tools.\r\n- Take the sting out of Android development using resource Intellisense, a better navigation experience, a suite of Android-specific C# code analyzers and more.\r\n- Make day-to-day development easier with MFractors collection of C# code actions and refactorings.\r\n- Don't like the code that MFractor generates? Tweak it with a rich configuration engine.\r\n\r\nBuild your apps faster with a single user, yearly subscription to MFractor for Visual Studio Mac for $199AUD.\r\n\r\n![MFractor](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/pjQYV87_.png)Links:BugseeBugsee Live Demo","content_html":"There is no shortage of options out there for doing error and crash reporting for mobile apps, but Bugsee takes a different approach, providing a more visual and deeper set of reporting and diagnostics. In this episode we talk to Alex Fishman, founder and CEO of Bugsee, and dig into what they're offering for mobile developers.
Special Guest: Alex Fishman.
Sponsored By:
Links:
","summary":"There is no shortage of options out there for doing error and crash reporting for mobile apps, but Bugsee takes a different approach, providing a more visual and deeper set of reporting and diagnostics. In this episode we talk to Alex Fishman, founder and CEO of Bugsee, and dig into what they're offering for mobile developers.","date_published":"2017-07-24T08:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/cf224190-5ea9-4455-99de-18a25551a996.mp3","mime_type":"audio/mp3","size_in_bytes":41591498,"duration_in_seconds":1987}]},{"id":"854fe805-fb7f-4421-b3b0-ad1d7d6899e7","title":"53: Xamarin.Forms Update with David Ortinau","url":"https://www.gonemobile.io/53","content_text":"On this state of the Xamarin.Forms union, we are joined by long time Xamarin community member and now PM of the Xamarin.Forms team, David Ortinau. We discuss Xamarin.Forms becoming open source, XAML Standard, Forms Embedding (and Embedded Forms), Fast Renderers, and what's next for Xamarin.Forms.Special Guest: David Ortinau.Sponsored By:Raygun: Discover, diagnose and understand the root cause of error, crash and performance issues in your software applications in seconds! See how your applications are _really_ performing for users and where they encounter problems using Raygun's full stack software intelligence platform.\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/wteIZ9Zz.png)Links:Xamarin.Forms Open SourceEmbedding Xamarin.Forms in Xamarin NativeGlimpse the future of Xamarin.Forms 3.0!","content_html":"On this state of the Xamarin.Forms union, we are joined by long time Xamarin community member and now PM of the Xamarin.Forms team, David Ortinau. We discuss Xamarin.Forms becoming open source, XAML Standard, Forms Embedding (and Embedded Forms), Fast Renderers, and what's next for Xamarin.Forms.
Special Guest: David Ortinau.
Sponsored By:
Links:
Some jobs are just mobile by definition, such as talent scouts for baseball teams. The Minnesota Twins organization recently decided to embrace this and built a new mobile app experience for their scouts to help make their jobs easier and allow for greater collaboration and coordination across the team. In this episode we put our personal baseball allegiances aside briefly to chat with Jeremy Raadt about the app they built, how they built it, and where they see it going in the future!
Special Guest: Jeremy Raadt.
Sponsored By:
Links:
","summary":"Some jobs are just mobile by definition, such as talent scouts for baseball teams. The Minnesota Twins organization recently decided to embrace this and built a new mobile app experience for their scouts to help make their jobs easier and allow for greater collaboration and coordination across the team. In this episode we put our personal baseball allegiances aside briefly to chat with Jeremy Raadt about the app they built, how they built it, and where they see it going in the future!","date_published":"2017-06-28T08:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/3d278e73-81a2-4ab9-b48f-c552cd4b8e84.mp3","mime_type":"audio/mp3","size_in_bytes":49058641,"duration_in_seconds":2416}]},{"id":"http://gonemobile.io/blog/e0051.react.native.mobile.center.and.continuous.delivery.with.ryan.salva.and.joe.mellin/","title":"51: React Native, Mobile Center, and Continuous Deployment with Ryan Salva and Joe Mellin","url":"https://www.gonemobile.io/51","content_text":"Heard of React Native but not sure what the hype is all about? We've got you covered! At Microsoft's Build conference we sat down with Ryan Salva and Joe Mellin from the Mobile Center team to chat through React Native, how it works, and how it compares to other approaches such as Xamarin. We also dig into the full app development lifecycle, and how React Native and Mobile Center can help you continuously deliver quality apps to your users.Special Guests: Joe Mellin and Ryan Salva.Sponsored By:Raygun: Discover, diagnose and understand the root cause of error, crash and performance issues in your software applications in seconds! See how your applications are _really_ performing for users and where they encounter problems using Raygun's full stack software intelligence platform.\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/wteIZ9Zz.png)Links:React NativeMobile CenterCodePush","content_html":"Heard of React Native but not sure what the hype is all about? We've got you covered! At Microsoft's Build conference we sat down with Ryan Salva and Joe Mellin from the Mobile Center team to chat through React Native, how it works, and how it compares to other approaches such as Xamarin. We also dig into the full app development lifecycle, and how React Native and Mobile Center can help you continuously deliver quality apps to your users.
Special Guests: Joe Mellin and Ryan Salva.
Sponsored By:
Links:
","summary":"Heard of React Native but not sure what the hype is all about? We've got you covered! At Microsoft's Build conference we sat down with Ryan Salva and Joe Mellin from the Mobile Center team to chat through React Native, how it works, and how it compares to other approaches such as Xamarin. We also dig into the full app development lifecycle, and how React Native and Mobile Center can help you continuously deliver quality apps to your users.","date_published":"2017-05-31T09:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/b779c745-9dc3-4fb0-ae0b-ca5b9c88f212.mp3","mime_type":"audio/mpeg","size_in_bytes":56856804,"duration_in_seconds":2652}]},{"id":"http://gonemobile.io/blog/e0050.building.great.app.experiences.with.matt.lacey/","title":"50: Building Great App Experiences with Matt Lacey","url":"https://www.gonemobile.io/50","content_text":"Designing great mobile experiences is much easier said than done, but is critical to the success of an application. In this episode we sit down with Matt Lacey to talk through what makes a great app experience, as well as some practical approaches and patterns you can use to start to use to improve the experience for your users. Usability matters!Special Guest: Matt Lacey.Sponsored By:Raygun: Discover, diagnose and understand the root cause of error, crash and performance issues in your software applications in seconds! See how your applications are _really_ performing for users and where they encounter problems using Raygun's full stack software intelligence platform.\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/wteIZ9Zz.png)Links:Usability Matters","content_html":"Designing great mobile experiences is much easier said than done, but is critical to the success of an application. In this episode we sit down with Matt Lacey to talk through what makes a great app experience, as well as some practical approaches and patterns you can use to start to use to improve the experience for your users. Usability matters!
Special Guest: Matt Lacey.
Sponsored By:
Links:
","summary":"Designing great mobile experiences is much easier said than done, but is critical to the success of an application. In this episode we sit down with Matt Lacey to talk through what makes a great app experience, as well as some practical approaches and patterns you can use to start to use to improve the experience for your users. Usability matters!","date_published":"2017-05-22T09:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/c1c1d3a6-915c-4df2-bc51-a7dc98c21740.mp3","mime_type":"audio/mpeg","size_in_bytes":54012538,"duration_in_seconds":2664}]},{"id":"http://gonemobile.io/blog/e0049.bot.framework.with.david.hamilton/","title":"49: Bot Framework with David Hamilton","url":"https://www.gonemobile.io/49","content_text":"Chat bots are everywhere these days! While at Microsoft's Build conference we sat down with David Hamilton to talk about Microsoft's Bot Framework, and how it can help you start creating chat-based experiences for your users on a variety of platforms. We also take a look at his gigseekr service which leverages the Bot Framework, including a live on-air demo of interacting with it via Cortana!Special Guest: David Hamilton.Sponsored By:MFractor: [MFractor](https://www.mfractor.com) seamlessly integrates with Visual Studio for Mac for a superior Xamarin development experience:\r\n\r\n- Easily create Xamarin.Forms apps with XAML analysis, a suite of navigation shortcuts and powerful XAML to C# code generation tools.\r\n- Take the sting out of Android development using resource Intellisense, a better navigation experience, a suite of Android-specific C# code analyzers and more.\r\n- Make day-to-day development easier with MFractors collection of C# code actions and refactorings.\r\n- Don't like the code that MFractor generates? Tweak it with a rich configuration engine.\r\n\r\nBuild your apps faster with a single user, yearly subscription to MFractor for Visual Studio Mac for $199AUD.\r\n\r\n![MFractor](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/pjQYV87_.png)Links:Bot Frameworkgigseekr","content_html":"Chat bots are everywhere these days! While at Microsoft's Build conference we sat down with David Hamilton to talk about Microsoft's Bot Framework, and how it can help you start creating chat-based experiences for your users on a variety of platforms. We also take a look at his gigseekr service which leverages the Bot Framework, including a live on-air demo of interacting with it via Cortana!
Special Guest: David Hamilton.
Sponsored By:
Links:
","summary":"Chat bots are everywhere these days! While at Microsoft's Build conference we sat down with David Hamilton to talk about Microsoft's Bot Framework, and how it can help you start creating chat-based experiences for your users on a variety of platforms. We also take a look at his gigseekr service which leverages the Bot Framework, including a live on-air demo of interacting with it via Cortana!","date_published":"2017-05-15T09:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/c2dc9363-2a47-4a36-80fd-92bacddd1d47.mp3","mime_type":"audio/mpeg","size_in_bytes":46000769,"duration_in_seconds":2095}]},{"id":"http://gonemobile.io/blog/e0048.mobile.app.security.testing.with.martin.alderson/","title":"48: Mobile App Security Testing with Martin Alderson","url":"https://www.gonemobile.io/48","content_text":"How do you prevent your app from shipping with preventable security vulnerabilities? This episode we talk to Martin Alderson of Codified Security about their automated Mobile App Security testing service.Special Guest: Martin Alderson.Sponsored By:Raygun: Discover, diagnose and understand the root cause of error, crash and performance issues in your software applications in seconds! See how your applications are _really_ performing for users and where they encounter problems using Raygun's full stack software intelligence platform.\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/wteIZ9Zz.png)Links:Codified SecurityXamarin App Security TestingOWASP Mobile Top 10","content_html":"How do you prevent your app from shipping with preventable security vulnerabilities? This episode we talk to Martin Alderson of Codified Security about their automated Mobile App Security testing service.
Special Guest: Martin Alderson.
Sponsored By:
Links:
","summary":"How do you prevent your app from shipping with preventable security vulnerabilities? This episode we talk to Martin Alderson of Codified Security about their automated Mobile App Security testing service.","date_published":"2017-05-09T09:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/17c3f7da-17c8-4ff1-b630-eba0276f3bfe.mp3","mime_type":"audio/mpeg","size_in_bytes":34071908,"duration_in_seconds":1678}]},{"id":"http://gonemobile.io/blog/e0047.building.reactive.apps.with.xamarin.forms.and.fsharp.with.rob.lyndon/","title":"47: Building Reactive Apps with Xamarin.Forms and F# with Rob Lyndon","url":"https://www.gonemobile.io/47","content_text":"In this episode we are joined by Rob Lyndon who is working on the Xamarin.Forms.Reactive.FSharp library. We talk to Rob about what Reactive programming is all about, and how it fits into mobile development. Rob goes into detail about what his library does, how it helps Xamarin.Forms developers, and why he created it.Special Guest: Rob Lyndon.Sponsored By:Raygun: Discover, diagnose and understand the root cause of error, crash and performance issues in your software applications in seconds! See how your applications are _really_ performing for users and where they encounter problems using Raygun's full stack software intelligence platform.\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/wteIZ9Zz.png)Links:Xamarin.Forms.Reactive.FSharpBuild a Functional Reactive Xamarin.Forms App in 30 Minutes","content_html":"In this episode we are joined by Rob Lyndon who is working on the Xamarin.Forms.Reactive.FSharp library. We talk to Rob about what Reactive programming is all about, and how it fits into mobile development. Rob goes into detail about what his library does, how it helps Xamarin.Forms developers, and why he created it.
Special Guest: Rob Lyndon.
Sponsored By:
Links:
","summary":"In this episode we are joined by Rob Lyndon who is working on the Xamarin.Forms.Reactive.FSharp library. We talk to Rob about what Reactive programming is all about, and how it fits into mobile development. Rob goes into detail about what his library does, how it helps Xamarin.Forms developers, and why he created it.","date_published":"2017-05-01T09:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/9aa31056-a271-48a2-b07f-277bfe70b8d7.mp3","mime_type":"audio/mpeg","size_in_bytes":45656072,"duration_in_seconds":3003}]},{"id":"http://gonemobile.io/blog/e0046.visual.studio.mobile.center.with.simina.pasat.and.luke.kim/","title":"46: Visual Studio Mobile Center with Simina Pasat and Luke Kim","url":"https://www.gonemobile.io/46","content_text":"When it comes to developing and maintaining mobile apps there's a lot to think about, between building, testing, distributing, monitoring, and more. In this episode we dig into Microsoft's new Visual Studio Mobile Center, which provides a solution to many of these lifecycle concerns in a single place.Special Guests: Luke Kim and Simina Pasat.Sponsored By:Raygun: Discover, diagnose and understand the root cause of error, crash and performance issues in your software applications in seconds! See how your applications are _really_ performing for users and where they encounter problems using Raygun's full stack software intelligence platform.\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/wteIZ9Zz.png)Links:Visual Studio Mobile Center","content_html":"When it comes to developing and maintaining mobile apps there's a lot to think about, between building, testing, distributing, monitoring, and more. In this episode we dig into Microsoft's new Visual Studio Mobile Center, which provides a solution to many of these lifecycle concerns in a single place.
Special Guests: Luke Kim and Simina Pasat.
Sponsored By:
Links:
","summary":"When it comes to developing and maintaining mobile apps there's a lot to think about, between building, testing, distributing, monitoring, and more. In this episode we dig into Microsoft's new Visual Studio Mobile Center, which provides a solution to many of these lifecycle concerns in a single place.","date_published":"2017-04-12T09:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/b9f507b3-4498-4b33-9ee7-a3f19d7b058c.mp3","mime_type":"audio/mpeg","size_in_bytes":54931714,"duration_in_seconds":2699}]},{"id":"http://gonemobile.io/blog/e0045.azure.iot.with.amanda.lange/","title":"45: Azure IoT with Amanda Lange","url":"https://www.gonemobile.io/45","content_text":"Over the last few years the Internet of Things has taken over the world, but what is it and what can you do with it? In this episode we're joined by Amanda Lange to walk through what it is, what kinds of experiences you can enable, and how Azure can help you manage your devices and create applications.Special Guest: Amanda Lange.Sponsored By:Raygun: Raygun provides error and crash reporting software for all programming languages and platforms including iOS, Android, Xamarin, Javascript and more. Don't just log errors and crashes, solve them with Raygun!\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/eJ74Vld8.png)Links:Azure IoT Developer CenterAzure IoT SDKsWindows 10 IoT CoreMicrosoft IoT SamplesCase Studies","content_html":"Over the last few years the Internet of Things has taken over the world, but what is it and what can you do with it? In this episode we're joined by Amanda Lange to walk through what it is, what kinds of experiences you can enable, and how Azure can help you manage your devices and create applications.
Special Guest: Amanda Lange.
Sponsored By:
Links:
","summary":"Over the last few years the Internet of Things has taken over the world, but what is it and what can you do with it? In this episode we're joined by Amanda Lange to walk through what it is, what kinds of experiences you can enable, and how Azure can help you manage your devices and create applications.","date_published":"2017-03-27T09:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/4a48f75d-2eb2-4e85-814e-fcbdd5bd798f.mp3","mime_type":"audio/mpeg","size_in_bytes":57050543,"duration_in_seconds":2857}]},{"id":"http://gonemobile.io/blog/e0044.fluxing.up.your.xamarin.apps.with.alex.dunn/","title":"44: Fluxing Up Your Xamarin Apps with Alex Dunn","url":"https://www.gonemobile.io/44","content_text":"The Flux architectural pattern has become increasingly common in front-end development, but did you know it's also applicable to mobile apps as well? In this episode we talk to Alex Dunn about Flux, what it is, why it's useful, and his experiences applying it to his Xamarin applications.Special Guest: Alex Dunn.Sponsored By:Raygun: Raygun provides error and crash reporting software for all programming languages and platforms including iOS, Android, Xamarin, Javascript and more. Don't just log errors and crashes, solve them with Raygun!\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/eJ74Vld8.png)Links:Video: Xamarin.FluxXamarin University Guest Lecture: Architecting your app with FluxCode Sample","content_html":"The Flux architectural pattern has become increasingly common in front-end development, but did you know it's also applicable to mobile apps as well? In this episode we talk to Alex Dunn about Flux, what it is, why it's useful, and his experiences applying it to his Xamarin applications.
Special Guest: Alex Dunn.
Sponsored By:
Links:
","summary":"The Flux architectural pattern has become increasingly common in front-end development, but did you know it's also applicable to mobile apps as well? In this episode we talk to Alex Dunn about Flux, what it is, why it's useful, and his experiences applying it to his Xamarin applications.","date_published":"2017-03-06T09:00:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/b4afc3f3-86fa-40e7-b770-320f1d4bbfbd.mp3","mime_type":"audio/mpeg","size_in_bytes":49479692,"duration_in_seconds":2295}]},{"id":"http://gonemobile.io/blog/e0043.enhance.your.ide.with.mfractor.from.matthew.robbins/","title":"43: Enhance your IDE with MFractor from Matthew Robbins","url":"https://www.gonemobile.io/43","content_text":"Ever wish you could automate more simple tasks in Xamarin Studio or Visual Studio for Mac? Matthew Robbins' MFractor Addin may be exactly what you're looking for with several enhancements designed to speed up the Xamarin.Forms developer experience.Special Guest: Matthew Robbins.Sponsored By:Raygun: Raygun provides error and crash reporting software for all programming languages and platforms including iOS, Android, Xamarin, Javascript and more. Don't just log errors and crashes, solve them with Raygun!\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/eJ74Vld8.png)Links:MFractorXamarin University Guest Lecture - Building Xamarin Studio Addins","content_html":"Ever wish you could automate more simple tasks in Xamarin Studio or Visual Studio for Mac? Matthew Robbins' MFractor Addin may be exactly what you're looking for with several enhancements designed to speed up the Xamarin.Forms developer experience.
Special Guest: Matthew Robbins.
Sponsored By:
Links:
","summary":"Ever wish you could automate more simple tasks in Xamarin Studio or Visual Studio for Mac? Matthew Robbins' MFractor Addin may be exactly what you're looking for with several enhancements designed to speed up the Xamarin.Forms developer experience.","date_published":"2017-01-23T09:00:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/7b4891df-e4ef-4035-9392-497033d47a82.mp3","mime_type":"audio/mpeg","size_in_bytes":32949762,"duration_in_seconds":2342}]},{"id":"http://gonemobile.io/blog/e0042.surviving.the.app.store.with.amir.rajan/","title":"42: Surviving The App Store with Amir Rajan","url":"https://www.gonemobile.io/42","content_text":"The App Store is a crazy place, so why not learn the ins and outs from someone who has been through it all? In this episode we sit down with Amir Rajan, developer of the hit game A Dark Room, to talk through his experiences building a successful game, backed by a mountain of data around metrics, revenue, and more.Special Guest: Amir Rajan.Sponsored By:Raygun: Raygun provides error and crash reporting software for all programming languages and platforms including iOS, Android, Xamarin, Javascript and more. Don't just log errors and crashes, solve them with Raygun!\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/eJ74Vld8.png)Links:Surviving the App Store bookAmir's BlogAmir's GamesA Dark Room","content_html":"The App Store is a crazy place, so why not learn the ins and outs from someone who has been through it all? In this episode we sit down with Amir Rajan, developer of the hit game A Dark Room, to talk through his experiences building a successful game, backed by a mountain of data around metrics, revenue, and more.
Special Guest: Amir Rajan.
Sponsored By:
Links:
","summary":"The App Store is a crazy place, so why not learn the ins and outs from someone who has been through it all? In this episode we sit down with Amir Rajan, developer of the hit game A Dark Room, to talk through his experiences building a successful game, backed by a mountain of data around metrics, revenue, and more.","date_published":"2017-01-12T09:00:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/f519a09e-aba7-49cf-b64d-a6fab11fbb5f.mp3","mime_type":"audio/mpeg","size_in_bytes":70981387,"duration_in_seconds":3582}]},{"id":"http://gonemobile.io/blog/e0041.mobile.game.development.and.cocossharp.with.brent.edwards/","title":"41: Mobile Game Development and CocosSharp with Brent Edwards","url":"https://www.gonemobile.io/41","content_text":"Interested in trying out some mobile game development but aren't sure where to start? In this episode we talk to Brent Edwards about how he got started, and how CocosSharp makes it easy to dive in and start creating the next big hit game!Special Guest: Brent Edwards.Sponsored By:Raygun: Raygun provides error and crash reporting software for all programming languages and platforms including iOS, Android, Xamarin, Javascript and more. Don't just log errors and crashes, solve them with Raygun!\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/eJ74Vld8.png)Links:CocosSharpMobile Game Development blog seriesMirror Maze","content_html":"Interested in trying out some mobile game development but aren't sure where to start? In this episode we talk to Brent Edwards about how he got started, and how CocosSharp makes it easy to dive in and start creating the next big hit game!
Special Guest: Brent Edwards.
Sponsored By:
Links:
","summary":"Interested in trying out some mobile game development but aren't sure where to start? In this episode we talk to Brent Edwards about how he got started, and how CocosSharp makes it easy to dive in and start creating the next big hit game!","date_published":"2016-12-29T09:00:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/63275b3e-f05a-4b33-9026-8ee721044fbc.mp3","mime_type":"audio/mpeg","size_in_bytes":70611724,"duration_in_seconds":3262}]},{"id":"http://gonemobile.io/blog/e0040.deep.linking.and.branch.with.sahil.verma/","title":"40: Deep Linking and Branch with Sahil Verma","url":"https://www.gonemobile.io/40","content_text":"Deep linking is a great way to help provide engaging experiences for your users, but how do you get started? What can you actually do with deep links? In this episode we talk to Sahil Verma about deep linking and what Branch is doing to help app developers deliver personalized experience for their users.Special Guest: Sahil Verma.Sponsored By:Raygun: Raygun provides error and crash reporting software for all programming languages and platforms including iOS, Android, Xamarin, Javascript and more. Don't just log errors and crashes, solve them with Raygun!\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/eJ74Vld8.png)Links:BranchXamarin SDK","content_html":"Deep linking is a great way to help provide engaging experiences for your users, but how do you get started? What can you actually do with deep links? In this episode we talk to Sahil Verma about deep linking and what Branch is doing to help app developers deliver personalized experience for their users.
Special Guest: Sahil Verma.
Sponsored By:
Links:
","summary":"Deep linking is a great way to help provide engaging experiences for your users, but how do you get started? What can you actually do with deep links? In this episode we talk to Sahil Verma about deep linking and what Branch is doing to help app developers deliver personalized experience for their users.","date_published":"2016-12-05T09:00:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/dabc21ed-08e7-4cb0-b50e-0f7ed4f92377.mp3","mime_type":"audio/mpeg","size_in_bytes":47484495,"duration_in_seconds":2386}]},{"id":"http://gonemobile.io/blog/e0039.serverless.and.azure.functions.with.donna.malayeri.and.fabio.cavalcante/","title":"39: Serverless and Azure Functions with Donna Malayeri and Fabio Cavalcante","url":"https://www.gonemobile.io/39","content_text":"Want to know what this whole serverless thing is about? Learn all about it and what you can do with Azure Functions from Donna Malayeri and Fabio Cavalcante!Special Guests: Donna Malayeri and Fabio Cavalcante.Sponsored By:Raygun: Raygun provides error and crash reporting software for all programming languages and platforms including iOS, Android, Xamarin, Javascript and more. Don't just log errors and crashes, solve them with Raygun!\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/eJ74Vld8.png)Links:Azure FunctionsAzure App Service Team BlogAzure Functions DocumentationAzure Functions SamplesContosoMoments Sample: CodeContosoMoments Sample: WebsiteContosoMoments Sample: iOS AppAzure Functions GitHub RepoAzure Functions ForumAzure Functions StackOverflowGetting Started with Azure Functions and F#","content_html":"Want to know what this whole serverless thing is about? Learn all about it and what you can do with Azure Functions from Donna Malayeri and Fabio Cavalcante!
Special Guests: Donna Malayeri and Fabio Cavalcante.
Sponsored By:
Links:
In this episode we learn all about the Microsoft Graph API from Simon Jager, and how you can build your mobile apps on top of its offerings.
Special Guest: Simon Jaegr.
Sponsored By:
Links:
Hybrid apps with Xamarin? You bet! In this episode we're joined by Drew Colthorp and Shawn Anderson to talk about why and how they converted their hybrid app, written in Ember, from Cordova to Xamarin.
Special Guests: Drew Colthorp and Shawn Anderson.
Sponsored By:
Links:
","summary":"Hybrid apps with Xamarin? You bet! In this episode we're joined by Drew Colthorp and Shawn Anderson to talk about why and how they converted their hybrid app, written in Ember, from Cordova to Xamarin.","date_published":"2016-07-25T10:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/ad1c874a-a20e-4a77-9794-3d585ddf8320.mp3","mime_type":"audio/mpeg","size_in_bytes":67845030,"duration_in_seconds":3341}]},{"id":"http://gonemobile.io/blog/e0036.android.performance.tuning.with.rabeb.othmani/","title":"36: Android Performance Tuning with Rabeb Othmani","url":"https://www.gonemobile.io/36","content_text":"In this episode we're joined by Rabeb Othmani to talk about Android Performance TuningSpecial Guest: Rabeb Othmani.Sponsored By:Raygun: Raygun provides error and crash reporting software for all programming languages and platforms including iOS, Android, Xamarin, Javascript and more. Don't just log errors and crashes, solve them with Raygun!\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/eJ74Vld8.png)Links:Rabeb's Website","content_html":"In this episode we're joined by Rabeb Othmani to talk about Android Performance Tuning
Special Guest: Rabeb Othmani.
Sponsored By:
Links:
","summary":"In this episode we're joined by Rabeb Othmani to talk about Android Performance Tuning","date_published":"2016-07-12T09:30:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/06d3c693-0752-4d08-81b9-b83761186e36.mp3","mime_type":"audio/mpeg","size_in_bytes":26519441,"duration_in_seconds":1924}]},{"id":"http://gonemobile.io/blog/e0035.mobile.testing.with.alexandra.marin/","title":"35: Mobile Testing with Alexandra Marin","url":"https://www.gonemobile.io/35","content_text":"In this episode we're joined by Alexandra Marin to talk about Behavior Driven Development for Xamarin DevelopersSpecial Guest: Alexandra Marin.Sponsored By:Raygun: Raygun provides error and crash reporting software for all programming languages and platforms including iOS, Android, Xamarin, Javascript and more. Don't just log errors and crashes, solve them with Raygun!\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/eJ74Vld8.png)Links:.NET FringeSpecFlow","content_html":"In this episode we're joined by Alexandra Marin to talk about Behavior Driven Development for Xamarin Developers
Special Guest: Alexandra Marin.
Sponsored By:
Links:
","summary":"In this episode we're joined by Alexandra Marin to talk about Behavior Driven Development for Xamarin Developers","date_published":"2016-07-05T09:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/fbca9c7a-c12d-4cb7-9608-37cd4ee58e5b.mp3","mime_type":"audio/mpeg","size_in_bytes":22729454,"duration_in_seconds":1802}]},{"id":"http://gonemobile.io/blog/e0034-raygun.pulse.with.john.daniel.trask/","title":"34: Raygun Pulse with John-Daniel Trask","url":"https://www.gonemobile.io/34","content_text":"In this episode we're joined by John-Daniel Trask, founder and CEO of Raygun, to talk about Pulse - their Real User Monitoring solution for web and mobile apps.Special Guest: John-Daniel Trask.Sponsored By:Raygun: Raygun provides error and crash reporting software for all programming languages and platforms including iOS, Android, Xamarin, Javascript and more. Don't just log errors and crashes, solve them with Raygun!\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/eJ74Vld8.png)Links:Raygun Pulse - Real User MonitoringEpisode 4: Tracking Errors with Raygun","content_html":"In this episode we're joined by John-Daniel Trask, founder and CEO of Raygun, to talk about Pulse - their Real User Monitoring solution for web and mobile apps.
Special Guest: John-Daniel Trask.
Sponsored By:
Links:
","summary":"In this episode we're joined by John-Daniel Trask, founder and CEO of Raygun, to talk about Pulse - their Real User Monitoring solution for web and mobile apps.","date_published":"2016-06-14T03:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/68a2575c-3ae6-4d56-9adb-97210929609b.mp3","mime_type":"audio/mpeg","size_in_bytes":65050362,"duration_in_seconds":3023}]},{"id":"http://gonemobile.io/blog/e0033-realm.with.tim.anglade.and.kristian.dupont/","title":"33: Realm with Tim Anglade and Kristian Dupont","url":"https://www.gonemobile.io/33","content_text":"In this episode we're joined by Tim Anglade and Kristian Dupont from Realm, a mobile-focused database solution that recently launched support for Xamarin.Special Guests: Kristian Dupont and Tim Anglade.Sponsored By:Raygun: Raygun.io is the fastest and easiest way to track your application's errors and get the level of detail you need to fix crashes quickly. Notifications are delivered right to your inbox and presented on a beautiful dashboard.\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/kiH9Tok0.png)Links:RealmIntroducing Realm XamarinRealm on GitHub","content_html":"In this episode we're joined by Tim Anglade and Kristian Dupont from Realm, a mobile-focused database solution that recently launched support for Xamarin.
Special Guests: Kristian Dupont and Tim Anglade.
Sponsored By:
Links:
","summary":"In this episode we're joined by Tim Anglade and Kristian Dupont from Realm, a mobile-focused database solution that recently launched support for Xamarin.","date_published":"2016-06-01T09:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/60214ab6-6ddf-4a49-9f72-0c966f409bb7.mp3","mime_type":"audio/mpeg","size_in_bytes":78668596,"duration_in_seconds":3552}]},{"id":"http://gonemobile.io/blog/e0032-bitrise.with.barnabas.birmacher.and.daniel.balla/","title":"32: Bitrise with Barnabas Birmacher and Daniel Balla","url":"https://www.gonemobile.io/32","content_text":"In this episode we're joined by Barnabas Birmacher and Daniel Balla to talk about their continunous integration solution for mobile apps. Looking to get started adding CI for your apps? Listen in to find out how!Special Guests: Barnabas Birmacher and Daniel Balla.Sponsored By:Raygun: Raygun.io is the fastest and easiest way to track your application's errors and get the level of detail you need to fix crashes quickly. Notifications are delivered right to your inbox and presented on a beautiful dashboard.\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/kiH9Tok0.png)Links:Bitrise","content_html":"In this episode we're joined by Barnabas Birmacher and Daniel Balla to talk about their continunous integration solution for mobile apps. Looking to get started adding CI for your apps? Listen in to find out how!
Special Guests: Barnabas Birmacher and Daniel Balla.
Sponsored By:
Links:
","summary":"In this episode we're joined by Barnabas Birmacher and Daniel Balla to talk about their continunous integration solution for mobile apps. Looking to get started adding CI for your apps? Listen in to find out how!","date_published":"2016-04-19T16:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/9142d34f-d1da-49b5-800c-229c6359d550.mp3","mime_type":"audio/mpeg","size_in_bytes":26424019,"duration_in_seconds":2511}]},{"id":"http://gonemobile.io/blog/e0031-freshmvvm.with.michael.ridland/","title":"31: FreshMvvm with Michael Ridland","url":"https://www.gonemobile.io/31","content_text":"In this episode we talk to Michael Ridland about his experiences as a Xamarin consultant, and dig into his new MVVM framework made specifically for Xamarin Forms called FreshMvvm!Special Guest: Michael Ridland.Sponsored By:Raygun: Raygun.io is the fastest and easiest way to track your application's errors and get the level of detail you need to fix crashes quickly. Notifications are delivered right to your inbox and presented on a beautiful dashboard.\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/kiH9Tok0.png)Links:FreshMvvm 1.0 ReleasedFreshMvvm on GitHubhave i been pwned?","content_html":"In this episode we talk to Michael Ridland about his experiences as a Xamarin consultant, and dig into his new MVVM framework made specifically for Xamarin Forms called FreshMvvm!
Special Guest: Michael Ridland.
Sponsored By:
Links:
","summary":"In this episode we talk to Michael Ridland about his experiences as a Xamarin consultant, and dig into his new MVVM framework made specifically for Xamarin Forms called FreshMvvm!","date_published":"2016-03-23T09:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/b02287ff-7381-4100-9f80-4a5a3da0b447.mp3","mime_type":"audio/mpeg","size_in_bytes":34586822,"duration_in_seconds":2058}]},{"id":"http://gonemobile.io/blog/e0030-hexagonal.app.architecture.with.chris.williams/","title":"30: Hexagonal App Architecture with Chris Williams","url":"https://www.gonemobile.io/30","content_text":"In this episode we talk to Chris Williams about hexagonal architectures and how it applies to building cross-platform mobile apps. We dig into what the architecture tries to achieve, the benefits you get from approaching software design with it in mind, and how you might already be doing it without even knowing it!Special Guest: Chris Williams.Sponsored By:Raygun: Raygun.io is the fastest and easiest way to track your application's errors and get the level of detail you need to fix crashes quickly. Notifications are delivered right to your inbox and presented on a beautiful dashboard.\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/kiH9Tok0.png)Links:MixRadioThink Hexagonal Architecture for Cross-Platform Mobile AppsHexagonal ArchitectureChris Williams at Evolve 2016","content_html":"In this episode we talk to Chris Williams about hexagonal architectures and how it applies to building cross-platform mobile apps. We dig into what the architecture tries to achieve, the benefits you get from approaching software design with it in mind, and how you might already be doing it without even knowing it!
Special Guest: Chris Williams.
Sponsored By:
Links:
This episode covers pretty much everything there is to know about Push Notifications. From Apple’s APNS to Google’s C2DM and GCM, learn about what they are and how they work. We also discuss the benefits and disadvantages of roll your own with PushSharp and using services like Azure, Amazon EC2, Urbanairship and Parse.
Special Guest: Jon Dick.
Sponsored By:
Links:
","summary":"This episode covers pretty much everything there is to know about Push Notifications. From Apple’s APNS to Google’s C2DM and GCM, learn about what they are and how they work. We also discuss the benefits and disadvantages of roll your own with PushSharp and using services like Azure, Amazon EC2, Urbanairship and Parse.","date_published":"2016-01-25T09:00:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/47bbc7fe-d8ef-4361-a123-e33f2e1f41bf.mp3","mime_type":"audio/mpeg","size_in_bytes":36621614,"duration_in_seconds":3184}]},{"id":"http://gonemobile.io/blog/e0028-Behind-the-Scenes-of-Xamarin-Forms/","title":"28: Behind the Scenes of Xamarin.Forms with Jason Smith","url":"https://www.gonemobile.io/28","content_text":"In this episode we're talking about Xamarin.Forms again, but this time around it's a bit different. We're joined once again by Jason Smith, lead developer of Xamarin.Forms, to take a look behind the scenes of Xamarin.Forms. We get into where it came from, inspirations, design decisions, triumps, mistakes, and more. Join us for this peek behind the curtain of creating the Xamarin.Forms framework!Special Guest: Jason Smith.Sponsored By:Raygun: Raygun.io is the fastest and easiest way to track your application's errors and get the level of detail you need to fix crashes quickly. Notifications are delivered right to your inbox and presented on a beautiful dashboard.\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/kiH9Tok0.png)Links:Xamarin.FormsEpisode 13: Xamarin.FormsXamarin.Forms ListView Performance","content_html":"In this episode we're talking about Xamarin.Forms again, but this time around it's a bit different. We're joined once again by Jason Smith, lead developer of Xamarin.Forms, to take a look behind the scenes of Xamarin.Forms. We get into where it came from, inspirations, design decisions, triumps, mistakes, and more. Join us for this peek behind the curtain of creating the Xamarin.Forms framework!
Special Guest: Jason Smith.
Sponsored By:
Links:
","summary":"In this episode we're talking about Xamarin.Forms again, but this time around it's a bit different. We're joined once again by Jason Smith, lead developer of Xamarin.Forms, to take a look behind the scenes of Xamarin.Forms. We get into where it came from, inspirations, design decisions, triumps, mistakes, and more. Join us for this peek behind the curtain of creating the Xamarin.Forms framework!","date_published":"2015-08-26T09:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/d0dcae48-fb79-4fa1-8d27-cc96d177cbcd.mp3","mime_type":"audio/mpeg","size_in_bytes":53177213,"duration_in_seconds":3421}]},{"id":"http://gonemobile.io/blog/e0027-Automated-App-Testing-with-Niels-Frydenholm/","title":"27: Automated App Testing with Niels Frydenholm","url":"https://www.gonemobile.io/27","content_text":"Interested in getting started writing automated tests for your apps but don't know where to start? In this episode we're joined by Niels Frydenholm to talk about how his team set themselves up for success over at eBay.Special Guest: Niels Frydenholm.Sponsored By:Raygun: Raygun.io is the fastest and easiest way to track your application's errors and get the level of detail you need to fix crashes quickly. Notifications are delivered right to your inbox and presented on a beautiful dashboard.\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/kiH9Tok0.png)Links:Better Apps & Faster Release Cycles: Part 1Better Apps & Faster Release Cycles: Part 2Better Apps & Faster Release Cycles: Part 3Better Apps & Faster Release Cycles: Part 4","content_html":"Interested in getting started writing automated tests for your apps but don't know where to start? In this episode we're joined by Niels Frydenholm to talk about how his team set themselves up for success over at eBay.
Special Guest: Niels Frydenholm.
Sponsored By:
Links:
Prism has been around for awhile, and now you can take advantage of it in your Xamarin.Forms apps! In this episode we dig into what Prism is, why you'd want to use it in your mobile apps, and how it fits into Xamarin.Forms apps.
Special Guest: Brian Lagunas.
Sponsored By:
Links:
Performance is a huge and important topic, so one episode just wasn't enough. In this episode we talk to Harry Cheung about the performance tests he's been running to see just how all these different mobile app development approaches perform when it comes to raw computation.
Special Guest: Harry Cheung.
Sponsored By:
Links:
","summary":"Performance is a huge and important topic, so one episode just wasn't enough. In this episode we talk to Harry Cheung about the performance tests he's been running to see just how all these different mobile app development approaches perform when it comes to raw computation.","date_published":"2015-03-30T09:30:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/6464a8a5-8ae0-44f1-a425-e1d451a64fe7.mp3","mime_type":"audio/mpeg","size_in_bytes":46255793,"duration_in_seconds":2744}]},{"id":"http://gonemobile.io/blog/e0024-Cross-Platform-Performance-Comparisons-with-Kevin-Ford/","title":"24: Cross-Platform Performance Comparisons with Kevin Ford","url":"https://www.gonemobile.io/24","content_text":"Ever wanted to know how different app frameworks and approaches compare with each other when it comes to performance? In this episode we spoke to Kevin Ford to dig into exactly that. Join us for a look at how the native SDKs, Xamarin, and Cordova compare for various performance measurements.Special Guest: Kevin Ford.Sponsored By:Raygun: Raygun.io is the fastest and easiest way to track your application's errors and get the level of detail you need to fix crashes quickly. Notifications are delivered right to your inbox and presented on a beautiful dashboard.\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/kiH9Tok0.png)Links:Performance Comparisons: Part 1Performance Comparisons: Part 2","content_html":"Ever wanted to know how different app frameworks and approaches compare with each other when it comes to performance? In this episode we spoke to Kevin Ford to dig into exactly that. Join us for a look at how the native SDKs, Xamarin, and Cordova compare for various performance measurements.
Special Guest: Kevin Ford.
Sponsored By:
Links:
","summary":"Ever wanted to know how different app frameworks and approaches compare with each other when it comes to performance? In this episode we spoke to Kevin Ford to dig into exactly that. Join us for a look at how the native SDKs, Xamarin, and Cordova compare for various performance measurements.","date_published":"2015-03-22T09:30:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/263051a6-b351-4a40-be53-83bfd5573f5c.mp3","mime_type":"audio/mpeg","size_in_bytes":50104962,"duration_in_seconds":3246}]},{"id":"http://gonemobile.io/blog/e0023-Continuous-Delivery-for-iOS-Apps/","title":"23: Continuous Delivery for iOS Apps with Felix Krause","url":"https://www.gonemobile.io/23","content_text":"Continuous integration and delivery is commonplace in the web development world, but has been notoriously difficult to achieve with mobile apps. In this episode we talk to Felix Krause about his fastlane tools that aim to solve multiple pain points in iOS development and deployment by automating everything.Special Guest: Felix Kraus.Sponsored By:Raygun: Raygun.io is the fastest and easiest way to track your application's errors and get the level of detail you need to fix crashes quickly. Notifications are delivered right to your inbox and presented on a beautiful dashboard.\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/kiH9Tok0.png)Links:Fastlane","content_html":"Continuous integration and delivery is commonplace in the web development world, but has been notoriously difficult to achieve with mobile apps. In this episode we talk to Felix Krause about his fastlane tools that aim to solve multiple pain points in iOS development and deployment by automating everything.
Special Guest: Felix Kraus.
Sponsored By:
Links:
","summary":"Continuous integration and delivery is commonplace in the web development world, but has been notoriously difficult to achieve with mobile apps. In this episode we talk to Felix Krause about his fastlane tools that aim to solve multiple pain points in iOS development and deployment by automating everything.","date_published":"2015-02-16T09:30:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/f131ae5f-5924-4385-934e-c884b11310cd.mp3","mime_type":"audio/mpeg","size_in_bytes":39776566,"duration_in_seconds":2488}]},{"id":"http://gonemobile.io/blog/e0022-Designing-and-Consuming-Modern-APIs-with-Darrel-Miller/","title":"22: Designing and Consuming Modern APIs with Darrel Miller","url":"https://www.gonemobile.io/22","content_text":"When it comes to designing and consuming APIs there is no shortage of approaches out there. In this episode we talk to Darrel Miller about many of these approaches, and ways to design both sides in a modern way to help keep things maintainable and evolvable over time.Special Guest: Darrel Miller.Sponsored By:Raygun: Raygun.io is the fastest and easiest way to track your application's errors and get the level of detail you need to fix crashes quickly. Notifications are delivered right to your inbox and presented on a beautiful dashboard.\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/kiH9Tok0.png)Links:Xamarin Evolve 2014: Use Hypermedia for less App Store HassleHTTP: 1.1HTTP: Message Syntax and RoutingHTTP: Semantics and ContentHTTP: Range RequestsHTTP: CachingFielding's dissertationDesigning Evolvable Web APIs with ASP.NETGitHub's API - HypermediaOData - Batch ProcessingCollection+JSONRunscope.WebPackTavis.UrlTemplatesTavis.PrivateCacheGitLinks","content_html":"When it comes to designing and consuming APIs there is no shortage of approaches out there. In this episode we talk to Darrel Miller about many of these approaches, and ways to design both sides in a modern way to help keep things maintainable and evolvable over time.
Special Guest: Darrel Miller.
Sponsored By:
Links:
Learning to write iOS apps can be a daunting task, especially if you've never written any code before. In this episode we're joined by Reinder de Vries to talk about his approach to teaching people how to write iOS apps, and his experiences along the way.
Special Guest: Reinder de Vries.
Sponsored By:
Links:
","summary":"Learning to write iOS apps can be a daunting task, especially if you've never written any code before. In this episode we're joined by Reinder de Vries to talk about his approach to teaching people how to write iOS apps, and his experiences along the way.","date_published":"2015-01-12T11:00:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/fa113cb0-e3ce-49fb-9d7e-c5b2b7a79b1c.mp3","mime_type":"audio/mpeg","size_in_bytes":35877914,"duration_in_seconds":2239}]},{"id":"http://gonemobile.io/blog/e0020-Mobile-Web-Performance-with-Tammy-Everts/","title":"20: Mobile Web Performance with Tammy Everts","url":"https://www.gonemobile.io/20","content_text":"Performance matters, especially when it comes to mobile development. Join us as we talk to Tammy Everts about the ins and outs of mobile web performance!Special Guest: Tammy Everts.Sponsored By:Raygun: Raygun.io is the fastest and easiest way to track your application's errors and get the level of detail you need to fix crashes quickly. Notifications are delivered right to your inbox and presented on a beautiful dashboard.\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/kiH9Tok0.png)Links:2014 State of the Union for Mobile Ecommerce Performance7 Mobile Web Performance Myths DebunkedWhy is Ember 3x - 5x slower on Android?WebPageTestGhosteryAndroid Fragmentation VisualizedEnough with Javascript Already","content_html":"Performance matters, especially when it comes to mobile development. Join us as we talk to Tammy Everts about the ins and outs of mobile web performance!
Special Guest: Tammy Everts.
Sponsored By:
Links:
APIs have historically been difficult to debug and monitor, and Runscope was founded to help solve this problem. Join us as we talk to John Sheehan about what Runscope offers, and how developers can leverage it to make API development more enjoyable.
Special Guest: John Sheehan.
Sponsored By:
Links:
","summary":"APIs have historically been difficult to debug and monitor, and Runscope was founded to help solve this problem. Join us as we talk to John Sheehan about what Runscope offers, and how developers can leverage it to make API development more enjoyable.","date_published":"2014-10-27T12:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/ab498e7b-4c9b-48df-b4e4-a94dcf8a3bbd.mp3","mime_type":"audio/mpeg","size_in_bytes":43959984,"duration_in_seconds":2744}]},{"id":"http://gonemobile.io/blog/e0018-Securing-Mobile-Apps-with-Troy-Hunt/","title":"18: Securing Mobile Apps with Troy Hunt","url":"https://www.gonemobile.io/18","content_text":"Security is more important today than ever, and mobile apps are no different. Troy Hunt joins us to talk about some common mistakes developers make when developing APIs and apps, and some practical approaches to securing them.Special Guest: Troy Hunt.Sponsored By:Raygun: Raygun.io is the fastest and easiest way to track your application's errors and get the level of detail you need to fix crashes quickly. Notifications are delivered right to your inbox and presented on a beautiful dashboard.\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/kiH9Tok0.png)Links:Hack Your API FirstOWASP Top 10Android Browser FlawWiFi PineappleFiddlerCharles","content_html":"Security is more important today than ever, and mobile apps are no different. Troy Hunt joins us to talk about some common mistakes developers make when developing APIs and apps, and some practical approaches to securing them.
Special Guest: Troy Hunt.
Sponsored By:
Links:
","summary":"Security is more important today than ever, and mobile apps are no different. Troy Hunt joins us to talk about some common mistakes developers make when developing APIs and apps, and some practical approaches to securing them.","date_published":"2014-10-13T09:30:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/ab56e701-0bd0-47bb-917c-e34f7f0ab66e.mp3","mime_type":"audio/mpeg","size_in_bytes":61060277,"duration_in_seconds":3811}]},{"id":"http://gonemobile.io/blog/e0017-Whats-New-in-iOS-8/","title":"17: What's New in iOS8","url":"https://www.gonemobile.io/17","content_text":"Join us again for our annual show discussing all the new features in the latest version of iOS! Mike Bluestein joins us once more, and there’s lots to talk about!Special Guest: Mike Bluestein.Sponsored By:Raygun: Raygun.io is the fastest and easiest way to track your application's errors and get the level of detail you need to fix crashes quickly. Notifications are delivered right to your inbox and presented on a beautiful dashboard.\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/kiH9Tok0.png)Links:Introduction to iOS8Today Widget Blog PostAuto Layout: Easy Layout by Frank KruegerAuto Layout: FluentContraints by Stuart LodgePaint CodeiOS View Effects","content_html":"Join us again for our annual show discussing all the new features in the latest version of iOS! Mike Bluestein joins us once more, and there’s lots to talk about!
Special Guest: Mike Bluestein.
Sponsored By:
Links:
iBeacons are an emerging technology with a lot of exciting applications. In this episode we talked to Doug Thompson to dive into what they are, how they're used, and where beacons are heading in the future.
Special Guest: Doug Thompson.
Sponsored By:
Links:
","summary":"iBeacons are an emerging technology with a lot of exciting applications. In this episode we talked to Doug Thompson to dive into what they are, how they're used, and where beacons are heading in the future.","date_published":"2014-09-08T09:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/6e7a98b5-c47d-4105-b51c-da4ee0c0aa34.mp3","mime_type":"audio/mpeg","size_in_bytes":48732912,"duration_in_seconds":3045}]},{"id":"http://gonemobile.io/blog/e0015-Azure-Mobile-Services/","title":"15: Azure Mobile Services","url":"https://www.gonemobile.io/15","content_text":"Learn all about Azure Mobile Services from some fine folks at Microsoft. We sit down with Kirill and Yavor to talk about the many features of Azure, specifically relating to mobile!Special Guests: Kirill Gavrylyuk and Yavor Georgiev.Links:Azure Mobile ServicesCapptainVisual Studio Azure Update","content_html":"Learn all about Azure Mobile Services from some fine folks at Microsoft. We sit down with Kirill and Yavor to talk about the many features of Azure, specifically relating to mobile!
Special Guests: Kirill Gavrylyuk and Yavor Georgiev.
Links:
","summary":"Learn all about Azure Mobile Services from some fine folks at Microsoft. We sit down with Kirill and Yavor to talk about the many features of Azure, specifically relating to mobile!","date_published":"2014-08-27T09:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/c9e91a9a-dd60-45fc-a5f0-e0af6601579c.mp3","mime_type":"audio/mpeg","size_in_bytes":38208281,"duration_in_seconds":3183}]},{"id":"http://gonemobile.io/blog/e0014-building-apps-on-the-cheap/","title":"14: Building Apps on the Cheap","url":"https://www.gonemobile.io/14","content_text":"Not every app has to have a massive budget. Kevin Knoop joins us this episode to talk about his experiences with building apps on the cheap. You'll be surprised how little his House Alarm app costs him to run!Special Guest: Kevin Knoop.Links:House Alarm AppDigital Ocean HostingApp AnnieFiverrUrban Airship","content_html":"Not every app has to have a massive budget. Kevin Knoop joins us this episode to talk about his experiences with building apps on the cheap. You'll be surprised how little his House Alarm app costs him to run!
Special Guest: Kevin Knoop.
Links:
","summary":"Not every app has to have a massive budget. Kevin Knoop joins us this episode to talk about his experiences with building apps on the cheap. You'll be surprised how little his House Alarm app costs him to run!","date_published":"2014-07-28T10:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/1c5c653e-f349-46e6-b1b2-77afb4d52699.mp3","mime_type":"audio/mpeg","size_in_bytes":43923404,"duration_in_seconds":2192}]},{"id":"http://gonemobile.io/blog/e0013-xamarin-forms/","title":"13: Xamarin.Forms","url":"https://www.gonemobile.io/13","content_text":"Learn how to build cross platform, native apps using Xamarin.Forms! We talk to Jason Smith, one of the developers of Xamarin.Forms about the product, it's strengths and weaknesses over other MVVM libraries, and how to get started!Special Guest: Jason Smith.Links:Xamarin.Forms\r\nXamarin.Forms Official DocumentationCustom Renderers Blog PostCustom Renderers Video Tutorial","content_html":"Learn how to build cross platform, native apps using Xamarin.Forms! We talk to Jason Smith, one of the developers of Xamarin.Forms about the product, it's strengths and weaknesses over other MVVM libraries, and how to get started!
Special Guest: Jason Smith.
Links:
Find out what exactly AppLinks are, how they work, and how you can use Rivets to add support for them to your own .NET apps.
Links:
James Montemagno from Xamarin discusses Portable Class Libraries with us. Learn what PCL's are, how to use them in your Xamarin projects, and what the Advanced PCL or Bait and Switch PCL trick exactly is (hint: use platform specific code with PCL's!).
Special Guest: James Montemagno.
Links:
Wayne Carter from Couchbase and Zack Gramana from Xamarin talk to us about Couchbase Lite for Mobile.
Special Guests: Wayne Carter and Zack Gramana.
Links:
","summary":"Wayne Carter from Couchbase and Zack Gramana from Xamarin talk to us about Couchbase Lite for Mobile.","date_published":"2014-03-25T09:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/354306a7-9414-44e3-912a-f463b3ee8aee.mp3","mime_type":"audio/mpeg","size_in_bytes":45930796,"duration_in_seconds":3827}]},{"id":"http://gonemobile.io/blog/e0008-ben-bishops-monkey-arms/","title":"8: Ben Bishop's Monkey Arms","url":"https://www.gonemobile.io/8","content_text":"Ben's been working on an interesting new framework called Monkey Arms which is inspired by Robot Legs for Flash.Special Guest: Ben Bishop.Links:Monkey ArmsRobot Legs\r\nAddress Book SampleNuGet Package","content_html":"Ben's been working on an interesting new framework called Monkey Arms which is inspired by Robot Legs for Flash.
Special Guest: Ben Bishop.
Links:
","summary":"Ben's been working on an interesting new framework called Monkey Arms which is inspired by Robot Legs for Flash.","date_published":"2014-01-24T09:00:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/803f6c75-5819-4179-978c-424d03b598f9.mp3","mime_type":"audio/mpeg","size_in_bytes":36512413,"duration_in_seconds":3035}]},{"id":"http://gonemobile.io/blog/e0007-the-fsharp-is-for-frank-krueger/","title":"7: The F# is for Frank Krueger","url":"https://www.gonemobile.io/7","content_text":"We force Frank Krueger to talk to us about F#!Special Guest: Frank Krueger.Links:Frank's Site/BlogXamarin PodcastiCircuitDave ThomasCalca","content_html":"We force Frank Krueger to talk to us about F#!
Special Guest: Frank Krueger.
Links:
","summary":"We force Frank Krueger to talk to us about F#!","date_published":"2013-12-19T20:00:00.000-05:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/466f7c3f-cfb1-40f0-915c-0964f63cda4f.mp3","mime_type":"audio/mpeg","size_in_bytes":39566112,"duration_in_seconds":3290}]},{"id":"http://gonemobile.io/blog/e0006-jesse-liberty-xamarin-android/","title":"6: Jesse Liberty and Xamarin.Android","url":"https://www.gonemobile.io/6","content_text":"Jesse Liberty talks to us about his recent ventures into Mobile development with Xamarin.Android!Special Guest: Jesse Liberty.Sponsored By:Raygun: Raygun.io is the fastest and easiest way to track your application's errors and get the level of detail you need to fix crashes quickly. Notifications are delivered right to your inbox and presented on a beautiful dashboard.\r\n\r\n![Raygun](https://uploads.fireside.fm/images/7/7030a7ff-40f9-4d15-94a3-873772db7997/kiH9Tok0.png)Links:Jesse's BlogJesse's mini-series on Learning Xamarin.AndroidFalafel SoftwareGenyMotion Android EmulatorBook: Mobile Development with C#Book: Professional Android Programming with Mono for Android and .NET/C#","content_html":"Jesse Liberty talks to us about his recent ventures into Mobile development with Xamarin.Android!
Special Guest: Jesse Liberty.
Sponsored By:
Links:
We sit down with Jonathan Peppers from Hitcents to talk about writing Games using MonoGame and Xamarin for iOS, Android, Windows and more!
Special Guest: Jonathan Peppers.
Links:
We sit down with John-Daniel Trask and Jeremy Boyd of Mindscape to talk about their Error Reporting service Raygun.io and how it fits in with Mobile and Xamarin apps.
Special Guests: Jeremy Boyd and John-Daniel Trask.
Links:
","summary":"We sit down with John-Daniel Trask and Jeremy Boyd of Mindscape to talk about their Error Reporting service Raygun.io and how it fits in with Mobile and Xamarin apps.","date_published":"2013-10-14T10:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/63f496b8-0622-4a5c-b774-018986bcc5ae.mp3","mime_type":"audio/mpeg","size_in_bytes":37229338,"duration_in_seconds":3102}]},{"id":"http://gonemobile.io/blog/e0003-bettsing-on-reactive/","title":"3: Bettsing on Reactive","url":"https://www.gonemobile.io/3","content_text":"Paul Betts talks with us about all things Reactive: Reactive Extensions (Rx), Reactive UI (RxUI), and how they fit together in a Microsoft and Xamarin mobile world. Paul also discusses his Akavache and Splat libraries, and his new Live-coding experiment!Special Guests: James Clancey and Paul Betts.Links:Reactive ExtensionsReactive UIPaul's GitHubAkavacheSplatRefitRxUI Live (Watch Paul Live-Code!)","content_html":"Paul Betts talks with us about all things Reactive: Reactive Extensions (Rx), Reactive UI (RxUI), and how they fit together in a Microsoft and Xamarin mobile world. Paul also discusses his Akavache and Splat libraries, and his new Live-coding experiment!
Special Guests: James Clancey and Paul Betts.
Links:
","summary":"Paul Betts talks with us about all things Reactive: Reactive Extensions (Rx), Reactive UI (RxUI), and how they fit together in a Microsoft and Xamarin mobile world. Paul also discusses his Akavache and Splat libraries, and his new Live-coding experiment!","date_published":"2013-10-01T11:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/20635406-24e1-463d-8cbb-984b19fd50fe.mp3","mime_type":"audio/mpeg","size_in_bytes":40511620,"duration_in_seconds":3369}]},{"id":"http://gonemobile.io/blog/e0002-ios7-loving-the-tint/","title":"2: iOS7 Loving the Tint","url":"https://www.gonemobile.io/2","content_text":"What’s new in iOS7? In this episode, we talk to Mike Bluestein from Xamarin to hear his thoughts on some of the new iOS7 API’s such as UIKit Dynamics, Sprite Kit, Text Kit and more! We also debate the merits of the new iPhone 5C, and discuss the other new hardware including Touch ID.Special Guests: James Clancey and Mike Bluestein.Links:gMusic AppiOS 7iOS 7 Before and AfterUIKit DynamicsiOS 7 API ChangesSprite KitGame ControllersCocoas2d for XNAThe most forward thinking Apple yet!Scene KitWith iBeacon, Apple is going to dump on NFC and embrace the internet of thingsPaypal BeaconNow, a Google Wallet app for iPhoneTouch IDiPhone 5CiPhone 5SBackgroundingText Kit","content_html":"What’s new in iOS7? In this episode, we talk to Mike Bluestein from Xamarin to hear his thoughts on some of the new iOS7 API’s such as UIKit Dynamics, Sprite Kit, Text Kit and more! We also debate the merits of the new iPhone 5C, and discuss the other new hardware including Touch ID.
Special Guests: James Clancey and Mike Bluestein.
Links:
Our First episode! Introductions, iOS 7, Chromecast, Microsoft minus Ballmer, Why .NET Failed, Wearable tech, and Leap Motion!
Special Guest: Nic Wise.
Links:
","summary":"Our First episode! Introductions, iOS 7, Chromecast, Microsoft minus Ballmer, Why .NET Failed, Wearable tech, and Leap Motion!","date_published":"2013-09-02T12:00:00.000-04:00","attachments":[{"url":"https://aphid.fireside.fm/d/1437767933/7030a7ff-40f9-4d15-94a3-873772db7997/c0ae4618-f0b0-42b2-9890-8f4c81348f75.mp3","mime_type":"audio/mpeg","size_in_bytes":38442456,"duration_in_seconds":3196}]}]}