Desert Code Camp - 2018 SessionsA list of all of the sessions at Desert Code Camp - 2018en-usMy Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1599A Developer's Guide to DockerIt works on my machine. Weve all heard it. Most of us have said it. Its been impossible to get around it until now. Not only can Docker-izing your development environment solve that issue, but it can make it drop-dead simple to onboard new developers, keep a team working forward and allow everyone on the team use their desired tools! I will show you how to get Docker set up to use as the run environment for your software projects, how to maintain the docker environment, and even how easy it will be to deploy the whole environment to production in a way that you are actually developing in an environment that isnt just like production. It IS the production environment! You will learn the basics of Docker, how to use it to develop and how to deploy your development environment as the production environment!Wed, 15 Aug 2018 16:44:11 -07002018-08-15T16:44:11-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1725A Lap Around Custom SharePoint Online DevelopmentDemonstrating the new methodology and tooling required for customizations on SharePoint Online including use of the CSOM, JSOM, SharePoint REST API, PnP Partner Pack on Azure, PnP Provisioning Engine, PnP Timer Job Framework, Provider-Hosted Add-ins on Azure, and SharePoint Framework Web Parts.Thu, 13 Sep 2018 17:37:33 -07002018-09-13T17:37:33-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1681A Lap around Sitecore 9In this session, discuss Sitecore 9 architectural changes and capabilities that developer teams can leverage to satisfy their business marketing needs.Sat, 25 Aug 2018 08:28:09 -07002018-08-25T08:28:09-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1650A No-Slide, Code-Only Intro to Solidity and Dapp Programming on the Ethereum BlockchainWe'll build, from the ground up, a small Solidity smart contract, deploy it on the Rinkeby test network, and quickly build a decentralized application (Dapp) using node and React to give you a quick overview of how to build blockchain applications. Buckle up. It's going to be a fun ride.Wed, 15 Aug 2018 16:47:17 -07002018-08-15T16:47:17-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1728A Public Key Infrastructure (PKI) Primer: Or, why we can trust people on the internet.Many would like to know more about how SSL, TLS, and PKI work but find the subject daunting. In this talk we'll try to break down the basics in PKI, and learn the terminology used, to have a better understanding and lay the foundation for further study.Sun, 16 Sep 2018 09:27:37 -07002018-09-16T09:27:37-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1723Abstract Syntax TreesEver thought, "I wish there was a way to refactor this code automatically"? Abstract Syntax Trees (ASTs) provide a way to restructure code bases large and small to fit your needs. This session will provide an overview of what ASTs are and will introduce several of the popular Node.js libraries for interacting with ASTs.Thu, 13 Sep 2018 05:52:57 -07002018-09-13T05:52:57-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1632Accelerating Message-Driven Software Design and ImplementationAccelerate your Domain-Driven Design (DDD) software development efforts using Event Storming and #NoEstimates. With Event Storming you stand on firm ground to implement message-driven architectures that yield scalable, resilient, responsive, and adaptive software that can be adjusted to the ever-changing needs of your front-running business. As an added benefit, Event Storming opens the door to use a #NoEstimates approach to determining the time needed to implement a Kanban work in progress (WiP) or Scrum sprint.Wed, 15 Aug 2018 16:46:06 -07002018-08-15T16:46:06-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1719Acceptance Testing with ASP.NET Core<p>Effectively creating End-To-End Acceptance Tests for ASP.NET Core Apps.<br /><br />In this session, we will look at some of the new powerful tools that are present in ASP.NET Core, making it easy to test your Web App using your favorite Unit Testing framework, with minimal setup. <br /><br />We will talk about various elements and strategies:<br />- Shared Data Contracts<br />- Client Gateways<br />- Elements to test<br />- Elements to avoid testing<br />- Testing instead of debugging<br />- Targetting multiple environments<br />- When to execute your Acceptance Tests<br /><br /></p>Sun, 09 Sep 2018 14:23:07 -07002018-09-09T14:23:07-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1617Accessibility for Web DevelopersLearning to code accessibly makes you a better web developer, improves the uability experience for all your users, and earns you good karma. Join the revolution taking place in web development and learn: - What accessibility means in web development - How to include basic accessibility with minimal effort - How to write HTML and CSS to improve accessibility - When to use advanced accessibility techniques like WAI-ARIAWed, 15 Aug 2018 16:45:10 -07002018-08-15T16:45:10-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1708Accidentally DevOps : Continuous Integration for the .NET DeveloperAre your production releases big and scary? They shouldnt be! In this talk Ill show you how to make releases easier and repeatable. Well look at how CI can surface issues faster. Then we'll set up a CI server, hook up a process to build and deploy to Azure with every checkin. Ill show you all the tools you need to get started with CI on the .NET stack. This talk is by a Developer for Developers. If you're interested in the release process and making it easier, this talk is for you. Topics Include: Build servers (Jenkins, TeamCity etc) Setting up a local NuGet server Octopus Deploy for easy deployments. MSBuild Unit and Integration Tests Canary and Monitoring The ELK Stack Blue/Green deployments for Seamless releases Configuration Management VCS Best Practices Database CI with RedGate ToolsTue, 04 Sep 2018 14:00:40 -07002018-09-04T14:00:40-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1623An Introduction to VueJSIn this presentation you'll be introduced to Vue.js & it's core concepts. We'll take a look at it's life cycle, explain the MVVM Pattern and cover the vue cli which help you create applications with ease. While Vue itself is focused on the view, we will look at Vuex, a library that provides state management.Wed, 15 Aug 2018 17:26:09 -07002018-08-15T17:26:09-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1644Anatomy of a Web RequestWhat happens after you type the web address before the page renders? Is it a black box to you? It doesn't need to be. We'll peel back the onion and look at DNS, HTTP, TLS, and briefly discuss the client render pipeline and windows metaphors. Ultimately we'll see the internet is not a black box. Open the lid and look inside.Wed, 15 Aug 2018 17:02:13 -07002018-08-15T17:02:13-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1712Apache Kafka: A brief introductionApache Kafka is a high-performance distributed streaming platform. But what exactly does that mean, and how can you use it? In this introduction we'll go over some Kafka concepts, advantages, and use cases to help you understand what Kafka is, how it works, and how it can help you deliver next-generation applications.Tue, 04 Sep 2018 16:04:34 -07002018-09-04T16:04:34-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1678Applied Functional Programming<p>Functional programming (FP) is a hot topic these days. Often times getting started with FP is a series of tutorials that show the learner how to use functions like map, filter, and reduce (fold in some languages). Maybe the learner will start to stumble on words like functor and monad. These are all really good things but does not show how to apply functional programming in a larger programming context. How does functional programming help developers solve problems? What does it look like to leverage functional thinking and design in application development? These are something we are going to explore in this section. The primary audience for the session are people who have a curiosity for FP, or have tried their hand at FP only to find themselves stuck on map, filter, and reduce (fold) and want to try to expand their mind further into functional thinking. My goal is to show how to apply FP to day to day programming tasks and help demystify some of the art of FP.</p>Sat, 25 Aug 2018 08:28:38 -07002018-08-25T08:28:38-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1665Automating Single Page App Delivery - The Serverless Way!Join me in discussing how to architect and automate the hosting and delivery of scalable modern Single Page Applications (SPA's) on AWS. By leveraging fully managed cloud services like S3, CloudFront, CloudWatch, WAF, CodePipeline/CodeBuild and GitHub, we can build a rock solid and highly-available hosting solution with a git-centric automated delivery pipeline.Wed, 15 Aug 2018 16:54:13 -07002018-08-15T16:54:13-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1649Azure IoT Hub in Action for DevelopersIn this talk, I'll explain what IoT Hub is and how it works with your IoT Solutions. I'll show programmatically how to create a simulated device for testing, and then write a sample for sending messages to the IoT Hub and routing those messages to different places based on message properties, such as Azure Storage, a Service Bus queue, and Power BI. Then I'll show some demos with an IoT Device (the MX Chip IoT DevKit) sending messages to an IoT hub.Wed, 15 Aug 2018 16:47:15 -07002018-08-15T16:47:15-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1601Be Confident Giving a Presentation in Front of Any AudienceIn today's job market being an effective communicator is a critical skill even if you are a developer who just wants to write code all day. Being a confident communicator and public speaker can set you apart from the crowd. Public speaking at the end of the day is all about effectively communicating our ideas to others. We have all been training our whole lives to be better communicators. Not a one of us was born with the ability to talk. Talking is a learn skill, just like public speaking is. Anyone can learn to be a confident communicator with a bit of know-how and some practice. I will share with you how I went from a shy, introverted software developer who would run away from any kind of public speaking to a professional speaker that sprints towards every speaking opportunity and how you can do it as well. You will walk away on the road to becoming a confident public speaker that knows how to give an effective presentation and will be ready to nail your next presentation.Thu, 16 Aug 2018 15:19:46 -07002018-08-16T15:19:46-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1619Being unyieldingly organizedI like to think I am well-organized; I'll talk about the tricks and techniques for both becoming and staying organized.Wed, 15 Aug 2018 16:45:15 -07002018-08-15T16:45:15-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1593Blazor - Getting Started<p>Blazor is an experimental web UI framework based on C#, Razor, and HTML that runs in the browser via Web Assembly. Blazor promises that we can create web applications using the backend languages of our choice while compiling to Web Assembly. The current state of UI development is complex and the problem is not getting better. Many developers are curious about Blazor, while some are skeptical. What problems might Blazor solve?</p> <p>This session is ideal for developers and other interested parties who have little or no knowledge of Blazor and want to learn the basics. It will provide a brief overview of Blazor and then it will show a simple but practical implementation of Blazor. It will utilize Visual Studio 2017 and Microsoft SQL Server Management Studio, starting with a small Azure SQL database and Web API, and then building a Blazor web application that interacts with these components. Links to relevant information and tutorials will be provided.</p>Wed, 03 Oct 2018 21:07:10 -07002018-10-03T21:07:10-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1624Build a Slack Bot in PythonWe'll go over fundamentals of the Python programming language by building a slack bot using the slack sdk. We'll start with a blank slate and build a bot that you can extend. Learn to set up your environment for testing and code coverage. We'll also look at list compression, mocking objects, dynamic module loading. A bot can help automated many tasks and is fun! Many organizations use chat bots to automate certain tasks including getting information quickly and even releasing builds or making system wide changes. This new way of working is often referred to as ChatOps. In addition to company specific tasks, bots are used to also inject fun into the workplace by providing cat gifs or jokes as needed. I'll share how code camp uses it's bot ccbot to help us plan the event! We'll look at how you can store secrets in environment variables, as well as easily deploy this bot to an ec2 instance.Wed, 15 Aug 2018 16:48:13 -07002018-08-15T16:48:13-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1651Build Your Own Controls!Are you bored with the "out-of-the-box" UIs for mobile devices? Do you wish you can build really cool looking controls that will take your applications to the next level? Never fear! It's not really that hard and you can do it! In this presentation, we'll look at how to build custom controls for mobile devices. We will look at the process of creating custom controls, tools that will help get you there, and how to redistribute your controls to others. This examples in this presentation will focus on iOS (iPhone and iPad), but the concepts and some of the tools will apply to Android as well.Wed, 15 Aug 2018 16:47:23 -07002018-08-15T16:47:23-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1584Building .NET Applications for any Cloud with Cloud Foundry<p>Cloud Foundry is an open-source Platform as a Service (PaaS) available on virtually any cloud (Azure, IBM, Amazon, Google, and others) that manages containers and applications with many of the same capabilities of Docker and Kubernetes, without the complexity or vendor lock-in. In this session, we will build a .NET core based Microservices application and deploy it into production on Cloud Foundry to demonstrate the features and ease of use of the Cloud Foundry platform. Warning: once you experience Cloud Foundry you'll never want to deploy your applications without it again.Cloud Foundry is an open-source Platform as a Service (PaaS) available on virtually any cloud (Azure, IBM, Amazon, Google, and others) that manages containers and applications with many of the same capabilities of Docker and Kubernetes, without the complexity or vendor lock-in. In this session, we will build a .NET core based Microservices application and deploy it into production on Cloud Foundry to demonstrate the features and ease of use of the Cloud Foundry platform. Warning: once you experience Cloud Foundry you'll never want to deploy your applications without it again.</p>Wed, 15 Aug 2018 16:43:08 -07002018-08-15T16:43:08-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1569Building a Web Site with Angular<p>In this session I will show you how to build a web site using Angular. To do this I will build a web site for AlsoRann Co., a (fictitious) medium sized company that wants to display a catalog of their products on their web site and allow users to place orders for them. I'll show you how to build pipes, directives, elements, everything needed to create a modern website with the latest Angular build.</p>Wed, 15 Aug 2018 16:41:44 -07002018-08-15T16:41:44-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1646Building/Publishing a .NET Core website to AZURE on macOS using Visual Studio for MacThis course walks through building and publishing a .Net Core 2.1 MVC website. We will use Visual Studio for Mac as the IDE so bring your MacBooks. We will finish by publishing the website to Azure with just a few clicks to deploy.Wed, 15 Aug 2018 16:47:23 -07002018-08-15T16:47:23-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1659Coding VR is Easier Than You ThinkYou know, coding your own VR experience is easier than you think. You should attend this Desert Code Camp talk on Virtual Reality. I'll show you how we coded a VR experience for the HTC Vive, how I created the animations, and how I gathered all the assets. As a BONUS, the experience youll see is an A.I. Perceptron (Google it). You put on the VR headset, place points on a graph, and the Perceptron finds its decision boundary. And, yep, we'll have a VR headset for you to try. Come in-person for a real virtual experience!Wed, 15 Aug 2018 16:53:53 -07002018-08-15T16:53:53-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1652Computer Science for ImpostersDo you suffer from Imposter Syndrome? Many people in this industry don't come from Computer Science backgrounds. You might have gotten your first exposure to computer programming through web development or by accident and have grown from there. Do you wish that you knew more about computer science, but don't know where to start or are afraid of asking questions? This presentation is for you. In this presentation, we're going to discuss and explain things like Big-O notation, data structures, and algorithms. We'll teach you the things that you need to know and show you were to look to learn more. Join us in this safe environment and come ready to ask all of your questions.Wed, 15 Aug 2018 16:47:31 -07002018-08-15T16:47:31-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1628Creating an Alexa Skill w/ the newest Alexa Skill Kit for Java :: Impl. an AWS Lambda function in Java, building and deploying w/ AWS CodeBuild<p>A short two years ago, I talked about <em>"Bots, Amazon Echo, language user interfaces in general"</em> the slides are still available and the code is of course still in GitHub. However, much has changed and fortunately for the better!</p> <p>I still belief that Java is a very suitable language to build <strong>Alexa Skills</strong> and even if you are eventually going to host your skill in EC2 or as an AWS Lambda function, during development, <strong>Tomcat</strong> is your friend. Running and debugging your skill right on your laptop offers tremendous advantages during the development process. So lets talk about how to develop an Alexa Skill using Java and the latest Alexa Skill Kit for Java. We wil be using Java/Tomcat installed on a Laptop as our hosting platform, quickly put an SLL Cert in place, and develop an Alexa Skill.</p> <p><em>... from WAR to Lambda ...</em></p> <p>Java sometimes doesn't seem to be a 1st class citizen when it comes to <strong>AWS Lambda</strong>, but with just a few considerations, it's easy to implement an efficient AWS Lambda function in <strong>Java</strong>. To become useful, we'll also put the Lambda function behind the AWS API Gateway, so that it can be called from the web (i.e. with an HTTP GET or POST request).</p> <p>Once we have done that we'll push the code into a Github Repository and move the build and deployment process into <strong>AWS CodeBuild</strong>. This (still new) AWS service for <strong>Continuous Integration and Deployment</strong> (aka CI/CD) will pull the code from the Git Repo and build the artifact, puts it into an S3 bucket, from which it is deployed into AWS Lambda ... <br /><br />Come on .. that's cool stuff: Software Development meets Dev Ops.</p>Wed, 15 Aug 2018 16:45:49 -07002018-08-15T16:45:49-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1693Data Analyst to Data Scientist: Learning Python with an Excel MindsetAs data nerds, our first interactions with programming concepts usually starts out in Excel. Sometimes we don't even realize we are so close to general programming theory when working in Excel since it is such a feature-rich product. In this session, we will explore the foundations of programming in Python while drawing parallels and demonstrating similarities between a traditional Analyst Excel workflow.Tue, 28 Aug 2018 15:40:34 -07002018-08-28T15:40:34-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1679Deep Learning BasicsIn this session, you'll see how deep learning works. We'll cover the basics, discussing concepts and techniques that are common to many types of deep learning. Although math is inherent in how deep learning works, Joe will explain enough to where you don't have to be an expert in calculus, linear algebra, or statistics. You'll see that this technology doesn't require a Ph.D. for any developer who wants to learn and take advantage of AI. By the end of the presentation, you will have seen a full example of how deep learning works, design and considerations, and practical applications.Sat, 25 Aug 2018 08:28:33 -07002018-08-25T08:28:33-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1585Design Patterns for Loosely Coupled ApplicationsBuilding loosely coupled applications is critical to creating solutions that follow good object oriented principles. These principles help make sure our applications are testable, maintainable and extensible. In this session we will explore several design patterns that are key to building applications that maintain loose coupling. We start by reviewing a tightly coupled application. Then, we explore several critical design patterns by using them to convert the application into a maintainable and extensible solution that can be validated using unit tests.Wed, 15 Aug 2018 16:43:09 -07002018-08-15T16:43:09-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1726Effective DynamoDB and in-memory DynamoDB Acceleration (DAX) in AWS<p>Amazon DynamoDB is a (popular) nonrelational database (NoSQL) that delivers reliable performance at any scale. It's a fully managed on AWS, multi-region, multi-master database that provides consistent single-digit millisecond latency, and offers built-in security, backup and restore, and in-memory caching.</p> <p>To use DynamoDB effectively, one must understand key concepts like partition/hash keys or range/sort keys to store NoSQL data, scan vs query calls to access data, projections and expressions, a mapper class for ORM, global secondary indexing to allow adhoc querying, asynchronous calls and batch read/write operations.</p> <p>As a cloud offering, Dynamo DB needs resource provisioning, time to live and autoscale configuration aligned with your application's needs along with monitoring via Cloudwatch or 3rd party tools. In addition, Dynamo DB also provides in memory acceleration caching via DAX, trigger mechanism and data exports via data pipeline.</p> <p>This session will cover how to effectively program for DynamoDB noSQL through judicious choice of:</p> <ul> <li style="padding-left: 30px;">Table data's primary keys, secondary indices, schema</li> <li style="padding-left: 30px;">In-memory caching (DAX), ORM Mapper class</li> <li style="padding-left: 30px;">Effective and efficient ways of querying, scanning (Query expression, projections)</li> <li style="padding-left: 30px;">Provisioning, scaling and monitoring (Cloudwatch, autoscale)</li> <li style="padding-left: 30px;">Backups, exports, data pipeline for offline/realtime analytics</li> <li style="padding-left: 30px;">Cost implications & comparison (Using 2018 AWS $ rates in popular AWS region)</li> </ul> <p>Examples will be provided in Java, Javascript/NodeJS and will walk through the AWS DynamoDB SDK and console with examples for table creation, CRUD operations, capacity management, accelerator cache cluster config and security group settings.</p> <p> </p> <pre>Keywords: Cloud, NoSQL, Dynamo, AWS, DAX, Amazon, Web Services, Storage, Database, DynamoDB </pre>Tue, 18 Sep 2018 06:44:52 -07002018-09-18T06:44:52-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1669Effective Remote TeamworkTechnology work often requires collaborating with people not located in the same location. There are many challenges to making this work. In this session, I will share a variety of tips and techniques that I have used to make remote software development easier.Wed, 15 Aug 2018 16:38:59 -07002018-08-15T16:38:59-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1664Email is back!It never went away really, but email marketing is bigger than ever. And coding CSS/HTML email templates is still a thing. And pretty much with the same kind of messy code that you would expect. However, the tools you can use to code these emails are making things easier. Learn about all the latest tools and workflows available and find out why coding emails is a hidden dev opportunity worth looking into.Wed, 15 Aug 2018 16:54:11 -07002018-08-15T16:54:11-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1675Entity Framework performance monitoring and tuningObject Relational Mapping technologies, including the Entity Framework can drastically simplify the programming model against databases, but when done carelessly, performance can suffer. In this session, we'll explore some real-life strategies that have solved performance issues in production applications that I have encountered at a variety of customers. We'll discuss the pros and cons of working without stored procs and cover strategies for monitoring and tuning your entity queries.Sun, 19 Aug 2018 13:41:46 -07002018-08-19T13:41:46-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1575Essential Tools for Xamarin Developers!Cross-platform mobile development has been democratized for .NET developers thanks to Xamarin & Microsoft. However, professional Xamarin development isn't a piece of cake. Sure, tooling has come a long way, but successful mobile apps need a lot more. The whole Xamarin technology stack needs deep understanding. Do you know what platforms you can target & how to maximize code reuse? Lets do a run-down of the essential tools, frameworks and utilities that should be in every Xamarin developers arsenal. The ubiquitous IDEs, necessary plugins, cloud backends, deployment tools, testing solutions, network utilities, DevOps workflows and polished UI all ready for your app development pleasure. How about adding some cloud-powered AI or Alexa voice assistance to your app? What can you do to delight your users, maintain developer sanity and deliver high quality apps? Lets stop reinventing wheel and ship apps faster the right tools help!Tue, 04 Sep 2018 16:09:43 -07002018-09-04T16:09:43-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1733Fight for the customer: Why customer obsession mattersWho is software written for? Customers! Successful software projects put customers first, which requires customer obsession throughout the entire software development lifecycle. It takes time and effort to establish a customer obsessed mindset, but it will pay dividends in the long run and serve to benefit your product. This session will explore why you should invest the time to become customer obsessed and provide some concrete examples of what customer obsession looks like.Thu, 27 Sep 2018 19:56:53 -07002018-09-27T19:56:53-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1573Flying High with Xamarin!<p>Cross-platform mobile development has been democratized for .NET developers – thanks to Xamarin & Microsoft. Let’s build a cool app together – targeting all platforms from the comforts of Visual Studio on Windows or Mac. Real world apps need cloud data connectivity, navigation, storage, lifecycle management, plugins and polished UI – let’s do all that. Let’s take a look at some must-have tooling for professional Xamarin developers. Let’s dip into device capabilities, reuse libraries and elevate the user experience. Loads of fun while learning cutting-edge mobile development – you in?</p>Tue, 04 Sep 2018 16:09:40 -07002018-09-04T16:09:40-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1676Getting pushy with SignalR and Reactive ExtensionsAs our systems increasingly demand more real-time updates, we need better ways of working with these live streams of information. Traditional pull models fail to provide the real-time responsiveness and scale needs that modern systems expect. Moving to a push model allows us to scale easier and react to new data as it becomes available. SignalR facilitates push notifications over HTTP to a variety of clients. The Reactive Extensions were designed to allow for asynchronous LINQ over push based collections. In this talk, youll see how the synergy of these two technologies merge to make otherwise difficult tasks, a push over.Sun, 19 Aug 2018 13:41:45 -07002018-08-19T13:41:45-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1590Getting Started in React<p>One of the reasons for React's huge popularity in building Web Applications is that it's a pretty big paradigm shift from previous techniques of JavaScript in the front-end. The shift in the way we think about how front-end apps should be built is very powerful and makes App creation much easier than in the past. However, getting used to the new paradigm can be a bit of a struggle at first. This talk will assume your JS chops are decent and that you might be coming from another library or framework like jQuery or Angular. I'll teach the basics of React including the parts that often go unexplained.</p> <p>Pro Tip: One frequent comment from people trying to learn React is how they it's difficult because most React tutorials are very ES6+ heavy and it's hard to tell what is a React thing and what is just the new ES6 and beyond stuff. Well, the React community embraces the modern JavaScript ES6 syntax so it's worth becoming familair with before learning React, so be sure to brush up on some of these things:</p> <p>- Object Destructuring (including parameter destructuring) <br />- The new "spread" operator - Arrow Functions (http://bradwestfall.com/articles/dont-get-javascript-es6-arrow-functions)<br />- The new JS Class Syntax (Btw, JS Classes are purposely not meant to be as full-featured as traditional OOP langs)<br />- And "JavaScript Promises"</p>Wed, 15 Aug 2018 16:43:42 -07002018-08-15T16:43:42-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1597Getting started with Angular MaterialAngular Material 101Wed, 15 Aug 2018 16:44:07 -07002018-08-15T16:44:07-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1707Getting started with React NativeDo you want to build mobile apps but don't have the bandwidth to learn Swift, Java, or Kotlin? If you are JavaScript savvy, you can build mobile apps using React Native. You don't even have to know React even though it's helpful if you do. Come and find out how easy it is to get started and go home and start building mobile apps!Tue, 04 Sep 2018 13:46:28 -07002018-09-04T13:46:28-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1620Getting started with TSQL TestingHow to get started testing microsoft sql stored procedures using TSQLTWed, 15 Aug 2018 16:45:23 -07002018-08-15T16:45:23-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1713Git-Good - Using Git effectively even on personal projectsGit is such an essential skill in today's development ecosystem that I would argue that being familiar with it is as important as knowing how to code itself especially considering that you will most likely ended up working in groups and git being the superior code sharing tool these days. While a lot of people uses git platforms (GitHub, Gitlab, Bitbucket) to host their personal projects, there is still quite a gap between keeping track of your own project and working collaboratively with someone else. In a personal setting, you can always commit to master and keep everything in that one branch. While it is not ideal, that's what works for most people. Instead, the session will be focusing on the effective use of forking, branching, creating issues, creating PRs, issue ticket referencing etc.Wed, 05 Sep 2018 09:55:58 -07002018-09-05T09:55:58-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1637Going serverless on AWS and keeping your sanityAs applications grow so does the need to maintain them. Let's unravel some of the challenges related to deployment, project maintenance, and design patterns. We'll cover APIs, Scheduled Jobs, and Pipelines.Wed, 15 Aug 2018 16:46:45 -07002018-08-15T16:46:45-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1635Going serverless on AWS with c# and dotnet core 2.0Building an API can be costly and time consuming. We'll cover how you can use FAAS to make this process simple by using @kalarrs combine with Serverless framework. You'll have API's up and running in less than an hour that can scale to any demand.Wed, 15 Aug 2018 16:46:40 -07002018-08-15T16:46:40-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1636Going serverless on AWS with Typescript and Node.jsBuilding an API can be costly and time consuming. We'll cover how you can use FAAS to make this process simple by using @kalarrs combine with Serverless framework. You'll have API's up and running in less than an hour that can scale to any demand.Wed, 15 Aug 2018 16:46:43 -07002018-08-15T16:46:43-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1724Hexagonal Architecture - Building Stable Systems with Unstable Dependencies<p>Does you system have any of the following problems?</p> <ul> <li>Framework migrations are painful</li> <li>Unit testing the system is hard</li> <li>Unable to run your system as a Command Line Tool</li> <li>Changing a data source requires changes to business logic code</li> </ul> <p>If so, then Hexagonal Architecture can likely help!</p> <p>In this session we'll start with a simple web service that is coupled to its database and refactor it, step by step, to match the Hexagonal Architecture paradigm. Along the way we'll also learn about domain modeling, system architecture, and dependency management. We'll have actionable takeaways that you can use to start designing your system in a more flexible and maintainable way.</p> <p>Come join us and learn how to build stable systems with unstable dependencies!</p>Thu, 13 Sep 2018 11:04:39 -07002018-09-13T11:04:39-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1612How I overcame my fears and just learned React already. 5 Month React Journey Through Central America.<p>The adventure of investing a year to learn React, NodeJS, Express, authentication, authorization and moving to Central America to decrease my cost of living so that I could afford to do it.</p> <p>How I overcame my fears and just learned React already.</p> <p>I'm a autodidactic, (self- taught), software developer that moved to Central America to decrease my expenses and continue to learn software development. I chose this path because I didn't want to get a job that would take time and energy away from what I wanted to do, write code.</p> <p>In this talk I'll cover:</p> <ul> <li>JavaScript</li> <li>React</li> <li>ES6</li> <li>Authentication/Authorization</li> <li>Living Abroad (how to do it and why I'm going to do it again)</li> <li>More</li> </ul> <p>You may follow me at @awefulBrown on Twitter, Instagram, and Twitch where I stream some of my coding sessions. Tho' I tend to spend more time in the real world than the digital one.</p> <p>Onward.</p>Wed, 15 Aug 2018 16:45:02 -07002018-08-15T16:45:02-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1736How to Create a Chrome Extension in 15 MinutesIn todays world, it seems like there is a Chrome plugin for almost everything. Have you ever wondered how difficult the process would be to create your own or what all it would entail? Let me show you in under 15 minutes! I will go through the process step-by-step to help you turn your idea into reality so you can publish a real extension in the Chrome Web Store!Thu, 27 Sep 2018 20:14:44 -07002018-09-27T20:14:44-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1627Improve the Effectiveness of your User StoriesBeing an "agile" shop is about honoring the principles and values that create agility. In this workshop I will give you practical advice that should help you save time by developing user stories leveraging a feature focused, story driven development framework. When you come out you'll know better: * How to split stories so that they show value but can be delivered in an iteration * How to avoid the temptation to split stories between functional areas (e.g. dev and test) * How to spend the right amount of time splitting stories so youre not doing it all the time at the cost of getting something builtWed, 15 Aug 2018 16:46:01 -07002018-08-15T16:46:01-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1673Improving code quality with Roslyn Static AnalysisThe new .Net compliers in Visual Studio 2015 and beyond include the ability to expose the language services to allow developers to build their own analyzers and code fixes/refactorings. In this session we'll introduce you to the capabilities of the compiler platform and demonstrate how we can extend it to more proactively catch common coding smells and patterns that would have otherwise caused runtime exceptions that can be caught during compilation instead. If you've relied on third party commercial coding tools like resharper in the past, you'll see how you can build your own tooling extensions or leverage some of the many open source solutions.Sun, 19 Aug 2018 13:41:42 -07002018-08-19T13:41:42-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1671Introducing Integrated Architecture<p>This isn't a session about a vanity architecture nor about how about all other architecture styles are wrong. This session digs into what is right about various architectural styles and how parts of different styles are really the same thing. After a quick review of what software architecture is, the principles, values, and effective mission of the various components of each style will be clarified to reveal <em>Integrated Architecture</em>. What that means for .NET Visual Studio solution and project structure and design will be covered as a means of solidifying the concepts. Depending on audience preference, styles like Service-orientation, Service-Oriented Architecture, Hexagonal Architecture, Clean Architecture, n-Tier and Layered architecture, Message-Driven/Event-Oriented, GRASP, etc. can be used for comparison and contrast.</p>Thu, 16 Aug 2018 07:13:01 -07002018-08-16T07:13:01-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1683Introduction to Azure DatabricksInterested in finding out more about what Databricks does and when you might want to use it? This session will show you how and when would be a good time to create a solution using it. Databricks can provide a very quick way of processing data by adding nodes increase performance for tasks, such as analyzing data for a ML solution from an Azure data store. Azure Databricks also includes a collaborative workspace so that using Azure Active Directory, teams of people can create code in a notebook in R or Python and implement the notebook as an Azure Databrick job. The step-by-step demos will include all you need to know to implement Databricks.Sat, 25 Aug 2018 08:27:46 -07002018-08-25T08:27:46-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1588Introduction to DockerLearn the basics of setting up docker, creating images and containers and build a simple app that utilizes them. The discussion will also focus on the role docker plays in modern application development.Wed, 15 Aug 2018 16:43:38 -07002018-08-15T16:43:38-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1622Introduction to JavaScript and Node.js<p>Introduction to the language and runtime with examples of the many ways Node.js can be used.</p> <p>Previous experience in a programming language is helpful.</p> <p>No previous JavaScript experience is expected.</p>Sun, 23 Sep 2018 05:30:35 -07002018-09-23T05:30:35-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1595Introduction to Rust: From Zero to Crate in Sixty Minutes<p>Rust is a modern, strongly-typed, non-garbage collected language from Mozilla pursuing the trifecta: safety, concurrency, and speed. For three years the StackOverflow survey has placed Rust as the most loved language. You can write anything from operating systems, device drivers, video games, graphical applications, to web applications in Rust. It can be a little intimidating to get started as there are a few concepts that may be new to the learner. We'll explore the language by looking at how to build a program that queries and aggregates data from a web service, breaking it down for beginners and seasoned Rustaceans alike. After this session, you should be able to understand some of the features of Rust, how to get started, and where to find resources to continue learning Rust if you so desire.</p>Thu, 20 Sep 2018 17:28:48 -07002018-09-20T17:28:48-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1735Java 8 Lambdas and Streams - Good practicesJava version 8/1.8 has become the industry standard and enables developers to use Lambda expressions, Stream API, functional interfaces due to their popularity, performance improvements etc.,<br /> 1. Java lambda expressions are Java's first step into functional programming. A Java lambda expression is thus a function which can be created without belonging to any class and can be passed around as if it was an object and executed on demand.<br /> 2. Stream API is used to process collections of objects. A stream is a sequence of objects that supports various methods which can be pipelined to produce the desired result.<br /> 3. A functional interface is an interface that contains only one abstract method. They can have only one functionality to exhibit.<br /> The question is as a developer are we following good practices in applying these powerful features to our code? Following good practices will help in writing maintainable and easily understandable code, increases efficiency and reduces cost. In this session, I'll share some good practices for using Java 8/1.8 features.Thu, 27 Sep 2018 19:56:58 -07002018-09-27T19:56:58-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1600JavaScript LevelUpIf you've been developing for the web any length of time, you've probably written some JavaScript. You know the basics of the language and you can get things done, and applications shipped. But as the proliferation of JavaScript continues into frameworks like UnderscoreJS, KnockoutJS, AngularJS, AnyOtherThingYouCanThinkOfJS, and even to the server (with NodeJS) you may find yourself struggling to understand how to write professional, full-fledged applications using JavaScript. In this session you will LevelUp your JavaScript skills by learning about closures and how they help to modularize your javascript. Prototypal inheritance and how you can extend JavaScript and you will learn about JavaScript design patterns and how they can take your JavaScript skills to the next level!Wed, 15 Aug 2018 16:44:07 -07002018-08-15T16:44:07-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1714Just be ReasonableIntroduction to ReasonML and why it is the core to all things react. Plus... reason native?Thu, 06 Sep 2018 09:03:31 -07002018-09-06T09:03:31-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1626Just Vue ItWith an ever-increasing amount of support and popularity, it's never been a better time to see if Vue is the right framework for you. In this talk, Griffin will give a high-level overview of this performant framework and what you'll need to get started. This includes Vue's syntax, structure, and methods as well as a look at popular modules such as Vuex and Vue-Router.Wed, 15 Aug 2018 16:46:18 -07002018-08-15T16:46:18-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1638Kubernetes for the Docker DeveloperSo you've gotten good at Docker, and you're ready to take it to the next level. Come see how Kubernetes (K8s) adds a mature solution for running containers in production and development. We'll start with Docker containers and Docker compose files, and we'll layer in pods, deployments, services, and ingress. We'll dig into minikube and kubernetes in docker desktop for local work, and managed cloud K8s on Azure. You'll leave with a solid understanding of the principles of K8s, and a practical set of skills for driving this container orchestrator throughout the software development lifecycle.Wed, 15 Aug 2018 17:02:21 -07002018-08-15T17:02:21-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1695Learn RESTful APIs: Design, Implement and Test<p>In this session we will be understanding the design basics of RESTful web APIs and learn how to implement them using two different technologies Node.js and ASP.NET Core. We will cover implementing APIs from ground up using sample data set and testing the developed APIs using Postman to ensure all requirements are met. By the end of the course, you will understand the fundamentals of REST and you'll be able to start designing & implementing your APIs.</p>Thu, 13 Sep 2018 05:53:03 -07002018-09-13T05:53:03-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1611Leveraging Go to Build a FaaS Platform<p>This will be a step-by-step talk on building a FaaS platform for executing Go functions from packages exposed via Git and a REST API to trigger function execution. The system will utilize the Go build system internally, text templates, GOPATH, and the Go standard library atop FreeBSD Jails and ZFS. Function as a service (FaaS) is a type of cloud computing that allows a consumer of the service the ability to run discrete, specific pieces of code rather than building a full application or integrating that functionality into a larger application. This approach allows for potentially less code, cheaper computing costs, and faster development. These systems are quickly becoming integral components of modern architectures. Most of the major cloud providers have incorporated some form of FaaS into their service offering. One of the biggest benefits to using one of these services is that you have access to the catalog of other services they offer which allows for building powerful applications quickly with less code. This talk will go through the steps necessary to build your own FaaS system that will be able to execute Go functions in packages accessible via Git. We’ll begin with a high level review of what FreeBSD Jails are, how they’re used traditionally and how they’ll be used by our system. Then a high level review of ZFS, more from the perspective of our use case which will include zpools, datasets, snapshots, and clones and how they’ll provide us with our filesystems. Once the base system components are understood, we’ll take a look at why Go is a great choice to build this system. At the heart of what binds these components together is Go’s text template system, the compiler, GOPATH, and the standard library. The talk will also cover building an extremely simple DHCP server embedded into the application as well as a REST API for triggering function execution and a means of administration. The goal, By the end is to have the audience understand how Go makes building a FaaS platform easy with real world, practical examples, and a reference implementation to use for inspiration or to build from.</p>Wed, 15 Aug 2018 16:45:00 -07002018-08-15T16:45:00-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1704Lights, Music, and Robotics! Pushing data through bluetooth, usb, and MIDI all from the decentralized web.<p>Let's learn newer web hardware and networking APIs and stitch them together in a truly serverless way using the decentralized web.</p>Mon, 03 Sep 2018 10:54:42 -07002018-09-03T10:54:42-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1634LinkedGo or PokemonIn - how to actually use LinkedIn to connect to the right people, not just "catching them all"A six-step system on how to utilize the world's biggest professional online network to connect with the right people. To many of us underestimate the power of LinkedIn and the connections made there. By understanding how to leverage the platform you can reach the right person - the person who will be your mentor, a co-founder or future boss. We will cover: How to use the professional network to create relevant connections and opportunities. How to build a smart network. A smart network will lead you to new opportunities. How to craft a personalized LinkedIn Invitation to connect with the right people. When to say no to invites. PS If you're a salesperson hoping to find a magic bullet to spray and pray to find potential customers - this is not the session for you.Wed, 15 Aug 2018 16:46:33 -07002018-08-15T16:46:33-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1607Machine Learning for the MassesBasic machine learning using jupyter notebook , basic prediction using 1 variable , linear regression example predicting movie choices in Netflix and products in amazonWed, 15 Aug 2018 16:44:36 -07002018-08-15T16:44:36-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1731Magic Snippets: Life-Pro-Tips for a Better Career and Life<p>In today’s busy world, any small advantage over the competition can lead to a huge difference in success. The best way to get this small advantage is to learn small, easy-to-apply techniques that can differentiate you from the next guy or girl. These techniques that you will learn about in this presentation will have you thinking “Why didn’t I think of that?” or “How did I not learn about this earlier?” In total, we will dive deep into four different types of “Pro-Tips” that you can start applying to your life today. You will leave this talk a better teammate, a better friend, a better negotiator, and overall: a better version of yourself.</p>Sun, 23 Sep 2018 13:06:45 -07002018-09-23T13:06:45-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1709Material Design Spec: The Why for your CSS design<p>“Use our controls. They are super easy and sexy. And look how easy they are to use!” That’s their line. From Bootstrap to YUI to a sea of commercial control suites, you are fed beautiful code samples on "How", but when your needs extend beyond the out-of-box experience, you are alone, left with elegant buttons on an inelegant website. You get Frankenstein's Monster. But what if there was something better? Something not built upon “How”; something built upon “Why”. From the makers of Angular, we bring you Material, a full design specification to help you understand the reason instead of just the implementation. Like a requirements document for padding and line-height and margin. For many a software developer, CSS is a scary place. Let this be your guide.</p>Tue, 04 Sep 2018 14:00:45 -07002018-09-04T14:00:45-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1658Micro:bit: the Perfect Programming Device for Kids (and Adults)?<p>The Micro:bit is a tiny programmable computer (1.6 x 2 inches) was originally designed for use by children aged 11-12, but why do kids get to do all the fun stuff? This is also fun for “adult children” as well.</p> <p> </p> <p><img src="http://tech.microbit.org/docs/hardware/assets/microbit-overview.png" alt="Device Overview" width="440" height="388" /></p> <p>It is half the size of a credit card.</p> <p>It is the easiest device to program. All you need is a browser!</p> <p>Come and see how easy and fun it is to play with this $15 device.</p> <p>You get all this:</p> <ul> <li style="font-weight: 400;"><span style="font-weight: 400;">Weight: 8g</span></li> <li style="font-weight: 400;"><span style="font-weight: 400;">Processor: 32-bit ARM Cortex M0 CPU</span></li> <li style="font-weight: 400;"><span style="font-weight: 400;">Bluetooth Low Energy</span></li> <li style="font-weight: 400;"><span style="font-weight: 400;">Digital Compass</span></li> <li style="font-weight: 400;"><span style="font-weight: 400;">Accelerometer</span></li> <li style="font-weight: 400;"><span style="font-weight: 400;">Micro-USB controller</span></li> <li style="font-weight: 400;"><span style="font-weight: 400;">5x5 LED matrix with 25 red LEDs</span></li> <li style="font-weight: 400;"><span style="font-weight: 400;">2 programmable buttons</span></li> </ul> <p>http://microbit.org/</p> <p>Want to start coding now?  Check this out:  https://makecode.microbit.org/</p> <p> </p>Sun, 02 Sep 2018 16:20:01 -07002018-09-02T16:20:01-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1701Move over Selenium: UI Testing with Cypress<p>Cypress is a relatively new front end testing tool that can be used for your UI testing needs. In this session we'll discuss challenges faced when using Selenium and demonstrate how Cypress can help with those challenges. At the end of the demo attendees will have an understanding of what Cypress is and isn't, marvel at the simple installation process, see how to write a test using Javascript without inspecting elements in the page source, know how to mock a response from API calls and learn some of the best practices that can help you be more successful at testing using Cypress.</p>Wed, 29 Aug 2018 22:57:31 -07002018-08-29T22:57:31-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1581Mr. Potato Head BrandingFor most people, branding is like playing with an incomplete Mr. Potatohead. Youve got to have all of the branding pieces in all the correct places if you want your marketing and advertising dollars to be successful. Learn important elements of building a successful brand online such as social media strategy, a website, press releases, search engine optimization, and your overall brand message.Fri, 07 Sep 2018 05:43:36 -07002018-09-07T05:43:36-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1670Naming ThingsThere are 2 hard problems in computer science: cache invalidation, naming things, and off-by-1 errors. This session is about naming things. In software, we need to name classes, methods, properties, libraries, and solutions. We also have to give names to variables, parameters, namespaces, interfaces, services, resources, etc. And most of the time, they can't conflict. Sometimes it's easy but sometimes it can be hard. We'll do a quick review of some of the easy guidelines that avoid some (somewhat easy) decisions then look into the things that require names that involve a deeper understanding of context. What the contexts are, their granularity, and how that applies to alleviating naming issues will be covered. How the types of contexts and their motivation and good compartmentalization makes for easier naming will be detailed. We'll dig into some details of English grammar that should relegate naming is hard as a code smellsomething that hints at deeper problems in the structure of code. And finally, time permitting, some techniques and ideas to relegate *naming is hard* to problems of the past will be outlined.Thu, 16 Aug 2018 07:13:09 -07002018-08-16T07:13:09-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1692OG;IoTOG;IoT An Original Guy presents a collection of interesting old things from the dawn of the personal computer. Abacus, slide rule, mechanical calculator progresses to a functional Altair 8080b with eight inch disk drives running CP/M as well as a selection of Altair, Imsai, Atari, Commodore and perhaps an original home Atari Pong game. Exhibit available all day with most displays in operational condition.Mon, 27 Aug 2018 20:44:26 -07002018-08-27T20:44:26-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1589React with Redux(and Immutable)<p>Refactoring a pure React web app to one that uses Redux (with Immutable): 'How to' by example</p>Wed, 15 Aug 2018 16:43:40 -07002018-08-15T16:43:40-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1630Reactive Domain-Driven Design with the vlingo/platform<p>Implemented in pure Java, the open source vlingo/platform makes using contemporary DDD tools, as well as the surrounding cloud and microservices architectures and patterns, vastly simpler to deliver successfully by means of a modern reactive toolset. The vlingo/platform supports the ways that a DDD Bounded Context and its Ubiquitous Language are contemporarily modeled and expressed. Underlying everything in the vlingo/platform is the vlingo/actors toolkit, which is an implementation of the Actor Model, making message-driven and event-driven microservices fully concurrent. Other platform tools include reactive clustering, actor partitioning/sharding, HTTP, authentication and authorization, service registration and discovery, persistence, event sourcing, and streams.</p>Wed, 15 Aug 2018 16:45:56 -07002018-08-15T16:45:56-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1629Reactive Domain-Driven Design: Modeling Uncertainty<p>Using the foundational ideas of Domain-Driven Design (DDD), including the Bounded Context, Ubiquitous Language, Context Mapping, and business-driven modeling, this talk explores modeling uncertainty. Systems today are far more likely to be distributed, especially due to the ever increasing popularity of the cloud and microservices. Systems are also increasingly asynchronous, event-driven, and reactive. In the face of these and other influencing conditions, a pertinent question is, how can DDD be even more relevant today than when it was first explained? This talk addresses the current industry competing forces, and how the uncertainty introduced by vastly distributed systems can be finessed into highly functioning, business-centric systems, that teams can design, develop, and reason about.</p>Wed, 15 Aug 2018 16:45:32 -07002018-08-15T16:45:32-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1710Rebooting the ASP.NET FranchiseAre you an ASP.NET developer that is tired of the baggage and cruft within the framework? Do you wish you could use OS X for developing ASP.NET apps? Are you new to ASP.NET, but are adverse to installing Windows and Visual Studio? Everything has changed: ASP.NET isnt just for Visual Studio, anymore. Learn how ASP.NET has broken free from Windows and has turned into a fresh, cross-platform, OS-agnostic framework. Develop ASP.NET applications on your OS, with your editor, in your way. No more compromises, no VMs, no workarounds. Grab some popcorn and experience the reboot of the ASP.NET Franchise.Tue, 04 Sep 2018 14:03:43 -07002018-09-04T14:03:43-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1653Reduce Application Friction! Making Your UI Buttery Smooth!How to leverage modern web technology to make your apps buttery smooth! Leverage CSS transforms, CSS opacity, webworkers, and other techniques to make your app super buttery! We'll utilize the Chrome dev tools to measure the butter factor. This is essential for developers looking to impress clients!Sat, 25 Aug 2018 08:29:36 -07002018-08-25T08:29:36-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1621Rethinking Testing React ApplicationsTesting React applications has followed a fairly standard pattern for a while now: set up enzyme, shallow render a component, and assert against various aspects of said component. Finally, if you were enough of a glutton for punishment, you'd set up some Selenium tests for end-to-end testing. However, some new tools have come onto the scene recently that have changed how I and others think about testing our applications. What we'll cover in this session - Why shallow rendering is still ok, let's just think about why we're using it - Thinking about tests from the users' perspective with react-testing-library - Testing with RTL when using react-router - Using Cypress.io for simple e2e testing - What to mock/stub in my e2e testsWed, 15 Aug 2018 16:45:20 -07002018-08-15T16:45:20-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1677S.O.L.I.D<p>Many people know about S.O.L.I.D, but don't understand what each of the five principles are or how they are implemented in code. This session will describe what each of the principles are, how they affect development, and show code to demonstrate how the principles are implemented.</p>Sun, 09 Sep 2018 14:24:21 -07002018-09-09T14:24:21-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1648Setting up CI/CD with Azure DevOps (formerly known as VSTS)<p>Azure DevOps - Microsoft's product formerly known as VSTS - isn't just for storing source code! Learn how to set up automated builds and releases, push releases to targets such as on-site servers or Azure, kick off code quality analysis, deploy database schema changes, and many other tasks. Have you been dealing with a painful release process that has too many manual steps? Here's your opportunity to find out how to let Azure DevOps handle the heavy lifting for you.  We'll also cover what's new since VSTS became Azure DevOps, as well as how you can store your build definitions as YAML files directly in your source code repository.</p>Wed, 15 Aug 2018 16:47:13 -07002018-08-15T16:47:13-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1720Simple CircleCI 2.0 setup for a Vue project with end-to-end tests and karma unit testsGiven a simple Vue app with karma unit tests and nightwatch e2e tests already set up, go through the steps to configure a simple Circle CI setup that will run for PRsWed, 12 Sep 2018 10:25:57 -07002018-09-12T10:25:57-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1737Soft on People, Hard on Code: interpersonal approaches that promote high quality software<p>What makes high quality software? Or rather who makes it? In this session we’ll consider different measures of software quality as well as interpersonal approaches that lead to the desired results. We will look at principles that promote relentlessly high standards, standards which might seem unreasonably high, while allowing engineers (humans) to thrive and grow. We’ll also evaluate the viability of alternative strategies like ‘cracking the whip’ or working longer hours.</p> <p>You might like this talk if you have ever:</p> <ul> <li>Played with Lego</li> <li>Pushed bad code</li> <li>Pushed outstanding code</li> <li>Built something you were proud of</li> <li>Felt like you don’t belong (or cried at your desk)</li> </ul>Wed, 03 Oct 2018 07:12:09 -07002018-10-03T07:12:09-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1684SQL for Data ScientistsA lot of the work that data scientist do is manipulating the data to be used in data science experiments. In this session I will show you how to perform some common data science tasks using T-SQL in SQL Server, which can speed up the processing of data for analysis. This session will show how to gather summary information, develop unique sample sets to prevent overfitting, create datasets without any NULL values and determine the statistical distribution of values. If you are just getting started in SQL or are interested in finding out what kind of SQL that may be used by data science, this session is for you.Sat, 25 Aug 2018 08:27:50 -07002018-08-25T08:27:50-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1647Step Up Your Portfolio Game => Use Gatsby.js, a Blazing-Fast React Static Site GeneratorIf youre still using HTML, CSS and vanillaJS to build your portfolio, then this talk is for you. Learn Gatsby.js - the static site generator for React. Its blazing-fast, extremely well-documented, and easy to pick up. Step up your portfolio game by coming to this session. No prior React experience needed!Wed, 15 Aug 2018 16:47:10 -07002018-08-15T16:47:10-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1655Tackling Tribal Knowledge: Communication for the Benefit of AllTribal knowledge is the collective wisdom of an organization, yet it's generally not recorded for others, kept up to date, and so commonly found within a few key individuals. Appropriately sharing and documenting this type of information can have a huge positive impact on so many aspects of a team's success and yet we neglect it. What can we do about it?Wed, 15 Aug 2018 16:47:34 -07002018-08-15T16:47:34-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1666Taking control of your technical career<p>Your career path is yours to control. You define the approach and, ultimately, the outcome. In this workshop, I will give practical pointers on how conquering your fear of rejection can lead to landing your next technical job. I will guide you through exercises and provide feedback so you can learn how to position yourself for more 'yeses'. You’ll learn how to...</p> <ul> <li>leverage your online presence</li> <li>free yourself from the opinions of others</li> <li>move from the first conversation to a lasting connection</li> <li>embrace your fear, network better and influence your industry.</li> </ul> <p>After participating in the presentation, attendees will be able to analyze their online presence, create an elevator pitch, and develop the confidence to take steps outside of their comfort zone in order to accomplish their next technical career goal.</p>Wed, 15 Aug 2018 16:54:15 -07002018-08-15T16:54:15-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1616TDD (Test Driven Development)With the advent of CI/CD and build pipelines the focus on unit testing is getting the deserved attention. Having a concise unit test case suite basically forms foundation to a solid build pipeline implementation where we can setup thresholds. TDD is now completely into mainstream development focusing the age old methodology of test cases being the driver of the development to provide unambiguous requirements and reduction in defects early on in development. We will have discussion around different testing strategies and will use Java for demonstrating Unit testing with help of JUnit and Spring Boot.Wed, 15 Aug 2018 16:45:08 -07002018-08-15T16:45:08-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1594Things You Should Know Before Becoming An Engineering Manager<p>First-time engineering managers can often feel like they’ve been thrown into the deep end. Before saying yes to your first manager role, here are some things you should learn about yourself.</p>Wed, 15 Aug 2018 16:43:53 -07002018-08-15T16:43:53-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1602Up and Running with Angular in 60 MinutesIf you have been thinking about learning Angular, now is your chance. Take your Angular knowledge from 0 to 60 in just 1 hour. We will take a stroll through the concepts that you need to know like modules, components, services, routes, and guards to be able to create any Angular application. Then we will make a quick stop at the Angular CLI to take a look around at all of the fantastic functionality and productivity it provide us. Finally, we will finish our stroll through Angular looking at some real world code examples. You will walk away with the knowledge and resources you need to immediately start coding your own Angular applications. See you there to jump start your Angular development.Wed, 15 Aug 2018 17:00:20 -07002018-08-15T17:00:20-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1583User Experience at Every Level of BusinessUser Experience is included at every level of business. This can be seen in the culture of a company. Through the content, products and services that the employees create, the company engages with its consumers. User experience is integrated into every touchpoint of a companys infrastructure when people engage with a brand. Learn why its important to have a Generalist on the team to oversee the User Experience for a company at every level of its processes, including: hiring, design, development, advertising, and marketing.Fri, 07 Sep 2018 05:43:37 -07002018-09-07T05:43:37-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1625Video and Audio Capture for iOS ApplicationsYour phone or tablet has a camera, but do you really know how to use it? Capturing images, video, and audio has so many applications that can make some applications and ideas even better. In this session, well look at the capabilities of the iPhone and iPad and how to use them to build cool new features for your application.Wed, 15 Aug 2018 16:46:44 -07002018-08-15T16:46:44-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1574What can Visual Studio do for Mobile Developers?So you are a Mobile developer? Looking for sanity amidst a plethora of platforms, frameworks and tooling options? Wondering if Visual Studio is the right IDE for you? Let me convince you why .. lets talk: Visual Studio for Windows & Mac Easy getting started experience Mobile to Cloud end-to-end tooling Emulator/Simulator choices Live deployments and device testing DevOps with Visual Studio App Center Polished UI through Extensions Visual Studio is the epitome of Microsoft's 'Mobile First, Cloud First' mantra. With rich tooling for mobile developers across Windows and Mac, Visual Studio is paving the way for true cross-platform mobile development from a single rich IDE.Tue, 04 Sep 2018 16:09:43 -07002018-09-04T16:09:43-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1643What is this .NET Core thing anyway?Have you heard the buzz? .NET Core 2.1 is released, and with it a great compatability story with regular .NET Framework. Want to get started and don't know where to look? Or played with some old project.json projects and want to get restarted? Come journey with us through the fundamental principles of .NET Core, look at how these evolved during the development of .NET Core, and see how you can get started today building and deploying .NET Core products.Wed, 15 Aug 2018 17:01:56 -07002018-08-15T17:01:56-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1592Whats new in Entity Framework Core 2.1?Entity Framework (EF) Core is the lightweight, extensible, and cross-platform version of Entity Framework, the popular Object/Relational Mapping (O/RM) framework for .NET. This talk will give a quick look at the new features for .NET Core 2.1. We will look at the new release, how to install it and show sample projects covering the following topics: Improved LINQ Translation Owned Entities and Table Splitting Global Query Filters DbContext Pooling String interpolation in raw SQL methods Explicitly compiled queries Self-contained entity configurations in code first Query types LINQ GroupBy Data SeedingSat, 18 Aug 2018 05:45:09 -07002018-08-18T05:45:09-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1682Why Is My CSS Not Working!?It happens every day. You optimistically write the most basic CSS (Cascading Style Sheet) rule to style your website and are met with one of two results. Either nothing take effect or the wrong thing gets effected. Pessimism eventually prevails and you abandon ship on a good idea leaving in place a wasted opportunity to make your page shine. In this session we will run through use cases of CSS problems and present tips and tricks that will improve your ability to solve them.Sat, 25 Aug 2018 08:28:05 -07002018-08-25T08:28:05-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1705Writing More Advanced Queries in T-SQL<p>For over 40 years, SQL has remained the gold standard for querying and manipulating data. While NoSQL databases are becoming more widely used, SQL remains a valuable skill in developers' toolbelts due to how prolific the language remains.<br /> <br /> However, despite its maturity, efficient and simple solutions are not always obvious in SQL. In this presentation, we'll be solving several scenarios based on real-world problems. Together we'll discuss common issues, why basic approaches fall short, and how applying more advanced SQL techniques provides a better alternative. While this presentation will focus specifically on T-SQL, the techniques we'll be covering are applicable to other variants of SQL as well. <br /> <br /> Topics covered:</p> <ul> <li><strong>Performance</strong> - Avoid row-by-agonizing-row (RBAR) approaches and use set-based solutions by leveraging a numbers table and by using window functions.</li> <li><strong>Functionality</strong> - Navigate hierarchical data using recursive common table expressions (CTEs).</li> <li><strong>Consistency</strong> - Avoid common concurrency pitfalls by strategically applying the appropriate isolation level within your query.</li> </ul> <p>Applying these same techniques to other problems you may encounter in the future will lead to creative and elegant solutions.</p>Tue, 11 Sep 2018 09:20:43 -07002018-09-11T09:20:43-07:00Copyright ©2010-2018, My Conference Eventshttp://oct2018.desertcodecamp.com/session/default.aspx?sessionid=1576Xamarin.Forms Takes You Places!Youve heard the buzz target every mobile platform from a single C#/XAML codebase. Sounds too good to be true? The story is actually even better - lets unpack the promise of Xamarin.Forms. The reach goes beyond just mobile platforms of iOS, Android & Windows did you know your Xamarin.Forms apps could target MacOS, Smart Watches, Smart TVs, Refrigerators & Hololens? And its not just futuristic devices or platforms, you could take Xamarin.Forms goodness back to WPF & even Web! This isnt utopia, but an absolute reality today. Lets dive into each platform and unearth the magic behind the cross-platform development democratization for .NET developers.Tue, 04 Sep 2018 16:09:44 -07002018-09-04T16:09:44-07:00Copyright ©2010-2018, My Conference Events