Sessions

3 Core Java Skills to MasterFor developers, a constant area of focus is refining and building our programming skills. As the rate of change continues to increase there are numerous new technologies and tools to consider. Learning is the constant, mastering core skills - those that transcend context is paramount. This talk focuses on mastering 3 skills essential to Java development. We start by looking at better ways to handle null values. The next topic is checked exceptions. While they often get a bad rap, we examine cases where they add clarity to APIs. We conclude with exploring reducing code complexity by using enums enhanced with lambda expressions, a simple implementation of the strategy pattern.

A little bit of Caffeine and a whole lot of TrustIt's one thing to trust others, but do you fully trust yourself? Are you acting in your own best interest when it comes to your career? Your answer may surprise you.

Absolutely Fabulous - F# |> JavaScriptIt's not a pipe dream. You can take advantage of the rich JS ecosystem for building UIs without ever leaving the typed, functional first goodness that is F#. Come get an introduction to Fable, the compiler that turns F# into JavaScript you can be proud of.

Agile Product Management?Agile Software Development techniques are the foundation of how most modern software products are developed. How relevant are these techniques to how software products are conceived, improved, marketed, sold, implemented and managed? In a development environment where we value responding to change over following a plan, how does product vision and strategy dovetail with responding to a fast-paced and competitive market? Also, what's the difference between a Product Owner and a Product Manager? What's the relationship between a Product Roadmap and a Product Backlog? In this session we will discuss what successful Product Managers do in an Agile environment and what rules you should bend or break when it's bad for business.

Be a Professional Developer and Write Clean CodeProfessional developers must write the best code possible, given what they know and what they have at the moment of writing. After a while, we may look at that code and wonder "wow, what was I thinking?", and that's a good thing: it shows we have improved. This session is about my observations regarding code I either wrote or had to work with.

Beyond the Daily Stand-up: An Intro to ScrumCountless companies believe they're doing Scrum because they have 30-minute daily stand-ups (with people sitting and staring at their laptops) every morning. But Scrum is really a lot more than that. In this session, we see all of the main parts of Scrum (roles, artifacts, and events), and we also talk about some real world collaborations in teams who adopted Scrum.

Big | Small | Tiny Data + The Hybrid CloudCRUX: The focus of this talk is Data (Big Data, Small Data, Tiny Data, Micro Data) ..and.. The Hybrid Cloud (Microsoft & non-Microsoft) Offerings available as of this point-in-time (Sep-2017).

PRE-REQUISITES: none, other than just your interest.

AUDIENCE: This talk is for anyone, irrespective of whether you are just entering the industry, updating/expanding your skills, or just seeking answers to questions like:
    1. Big Data? Small Data? Tiny Data?
    2. Cloud? Hybrid Cloud? Global Hybrid Cloud?
    3. Why should I care? What's in it for me? Where do I go from here?

NOTE: The presenters, Tex (25+ year technologist) & Sons (Valentino & Zane, budding technologists), are with Hybrid Decisions® Corp and are presenting on behalf of www.HCCUG.org (Houston Cloud Computing User Group)

Building Augmented Reality Apps Using ARKit for iOSAugmented Reality allows users to place virtual objects in the real world. In this session Mohammad Azam will demonstrate how to build Augmented Reality using ARKit framework. Azam will also showcase some fun AR projects he has been working on. This sessions has minimal slides and lot of live coding. Prepare to be amazed!! :)

Building pragmatic mobile appsLast year, our team landed on a project that was just in a vision document form at a process management company with a huge portfolio. Over the course of time, I lead our team to convert that vision into an iOS app using Xamarin, ASPNET Core api, Angular Web App and NServicebus endpoint. It was quite a fun filled ride because all the technologies we were dealing with were new and were in flux. They presented a unique set of challenges. We as a team learned a lot of valuable lessons during this process. This presentation is going to cover those.

Building Your Media Library with PlexThis session will dig into how to build your own "private Netflix" ... using your own, existing media library of DVDs and BluRays ... using Plex Media Server. We'll take a tour of how Plex can be the hub of your home media, allowing you to access, stream and even download your movies, pictures and music to just about any device. We'll also touch on the hardware that you'll want to have (which is much less expensive that you might think!) as well as challenges that you may face (especially with transcoding). Finally, we'll also cover the basics of how to rip your DVDs and BluRays to be served up by Plex.

Conquer your Fear of Public SpeakingThis interactive training will focus on the most common reasons behind public speaking anxiety and ways to overcome it. We will go over practical, actionable steps to prepare for a presentation, connect with the audience in the most authentic way, and deliver an impactful, captivating speech.

Controlling the Amazon Echo with JavaScriptYou've heard of the Amazon Echo and you might have one but did you know you can wrangle it to do your own bidding? We will build an Alexa Skill from the ground up with JavaScript to control the Echo in a fun way. We'll talk about how Alexa works, use the Alexa Skill SDK for Node.js to build a skill and AWS Lambda to host it.

Creating an Alexa Skill with AWS LambdaAmazon's Alexa platform is taking the world by storm, helping empower smart homes around the world. But what many developers may not realize is that this is not a closed platform, in fact it has a thriving marketplace for programs, or Skills as Amazon calls them. This talk will walk you through the process of creating a simple Skill for Alexa, and deploying into AWS Lambda. Working copies of the code base will be provided (via GitHub repo) so that attendees should be able to have a skill of their own deployed by the end of the session, which they can then enhance to their heart's content.

Defensive ProgrammingWill your application be rock solid and maintainable? Common principals are share by most rock solid and maintainable applications.

Developing DiversityJennifer Plummer and Frances Jurek will share their experiences of being underrepresented minorities in the technology field and provide recommendations to create an atmosphere that promotes diversity and inclusion at your company.

Dynamic SQL: Tables and PivotsDynamic SQL is a scripting language that helps you design flexibility into your code. It allows you to design solutions, pass parameters and allows you build a single query on values passed. Dynamic SQL has both pros and cons to it's design, but can also be a helpful tool. This presentation will walk through the steps of building dynamic tables, aggregating data in a pivot format and give you the first steps of writing a Dynamic Query. There are hundreds of task that will benefit from the use of Dynamic SQL. From parameter based searches to building dynamic SELECT statements at run time.

Explaining Agile with 140 billion gallons of water.Are you new to Agile? While the agile concepts may sometimes be easy, the why's and how's are a little trickier to wrap your head around. The most interesting way I've found to talk about these why's and how's of Agile, is in the context of a natural disaster that Houston is very familiar with -- flooding. I've unfortunately participated in two recent rising flood water events and employing my agile skills has had a profound impact on the "success of the project". So if the goal (product) from participating in a flood is to maintain a certain lifestyle level after the event, then the deadline is when the water is in the house. This makes the backlog the household inventory to save, which needs to be prioritized. As the water encroaches on the house, it makes sense to regularly check the radar and conditions and assess the work completed, the process, and next course of action. This is called an iteration or sprint. If the whole family knows the goal of the iteration, like all fabric furniture needs to off the ground, then the adults can lift the beds and the children can tackle the chairs. This is a self organized team. If the children say something is too big or heavy to lift, they are blocked and let the team know that they need help. Typically in non critical circumstances, this would happen daily during a standup meeting, where the entire team shares their accomplishments, daily goals, and blockers, but given that imminent flooding is indeed an emergency, the standup portion of this analogy will be skipped. Along the way, small things might be discovered that can greatly improve the situation, like locking the doors to prevent the water pressure from pushing them open. These minor improvements are called kaizen. Finally when the water has receded, the last task is a retrospective, where acknowledgements of the good parts and ideas to improve bad parts are shared.

From the Closet to the Cloud! Physical to Virtual Migration of Linux Systems and ServicesThis presentation will cover the migration of a personal CentOS 5 based Dedicated Server to an Ubuntu 16.04 Virtual Machine running in Microsoft Azure. It all started around six years ago in college when I asked a presumably simple question, “How can I run my own website on a server?”. I was able to acquire a server hosted in Michigan where I began to develop and deploy a variety of websites and services ranging from profitable internet domains to offsite archival of home security footage. There were hiccups along the way including a tech forgetting to plug in my hard drive after requesting a RAM upgrade, losing days of service uptime when requesting a second hard drive, and ultimately discovering that my server host had been acquired and would be shutting down all hosting services. This session will focus on how I was recently able to move everything successfully from the physical drives of that particular system into a Virtual Machine that is scalable on-demand, backs itself up on a user-defined schedule, and even allows for white-label deployment using a base image. There will be much to learn regarding differences in colocation vs cloud hosting, CentOS vs Ubuntu, and configuration of common services such as apache2, drbd, vsftpd, and squid in Linux environments. If you have an interest in general server operations / administration and have wondered about the benefits of the cloud, this session will offer insights and opinions to assist in understanding why cloud is a powerful modern mechanism for server deployment. faster, speedup time to market, and reduce overall cost. In this session we will give you an overview of Azure Functions from introduction to application. We will walk through real world examples of how this cloud service can help you replace and extend networked functionality without the overhead or maintenance of a full-fledged server.

Hacking Networks Made Easy - Finding and Fixing Low Hanging FruitOften times hackers don't need a super 1337 exploit to compromise a network. What's the point of remotely exploiting a box when you can just guess the password, run a common attack, or utilize an employee's rogue backdoor? In this talk, we will discuss and demonstrate how to find the low hanging fruit that can lead to full compromise of the network and what can be done to detect and protect against them. This presentation will provide you with actionable items for your red and the blue teams that that can be started immediately without spending any additional money or purchasing any tools. You will also leave with the understanding that the blue team may benefit from taking a step back and focusing on improving their initial security posture.

How Not to Destroy DataCRUD apps destroy data. Delete is an obviously destructive operation, but Update is no better. Updates overwrite the data that was once present. What would software look like if the only valid operations were Create and Read? Historical Modeling is a technique for designing and building software systems that permit only inserts, no updates, no deletes. The only way to "modify" an object is to insert related records. You can then read the state of the object by querying for the presence or absence of those related records. We'll start with the assumption that all records are immutable and indelible. From there, we'll build a set of patterns that yield some surprising benefits. With a historical model, synchronizing disparate nodes is trivial: just insert what you don't yet have. Building offline-first web applications is easy. Viewing a snapshot of the system at any point in the past is a simple query. Let's build a historical model together, and see these benefits for ourselves. Let's put aside the assumptions of CRUD applications and discover a whole new set of patterns. Once you master these techniques, you will never destroy data again.

How-to get started with SQL on LinuxMicrosoft ported their flagship enterprise SQL Server database engine to Linux. In this presentation, Peter will discuss what features are currently available with SQL on Linux demonstrating how to download, setup and configure SQL on Linux.

Improve SharePoint user adoption in 90 daysUser adoption and user satisfaction from SharePoint is a big challenge for most organizations and is directly correlated to the ROI of the investment. There are a number of steps that an organization can take to improve the user acceptance in the short term and for the long term. Find out how from the experts.

Incorporating Security Best Practices Into Your Software Development LifecycleSecurity strategy consists of penetration testing, dynamic testing and static scanning. My presentation will illustrate how security testing strategies into our software development lifecycle at my company. In addition, I'll review the best practices for implementing security strategies into development teams successfully. Including tips to stay ahead of the security vulnerabilities in your application.

Intermediate Aurelia: Taking Your SPA to the Next LevelGetting your app running with the basic data-bindings in place is only the first step. Aurelia provides the tools to create an experience your users will love, rather than just tolerate. In this session, we'll cover validation, animation, internationalization, composition, and more!

Introduction to Azure Machine LearningAzure Machine Learning is a cloud predictive analytics service that makes it possible to quickly create and deploy predictive models as analytics solutions. Getting started is easy. The first working prototype is an easy evening project. But Azure Machine Learning will grow to extremely complex projects. This session will demonstrate initial projects utilizing multiple data science principals.

Introduction to Execution PlansIn this session we will take a look at the basics of execution plans. We will discuss what they are, how they are made, and how they are used. We will explore some of the common operators seen in execution plans and their functions. Next we will look at the differences between estimated and actual execution plans. Throughout, you will be getting insight on how to read execution plans to help tune your queries.

Introduction to iPhone DevelopmentIntroduction to iPhone Development

Learn SQL Backups and Master SQL RestoresIf you know very little (or nothing) about backing up and recovering SQL Server databases you are not alone. In the real-world, there are several companies who are a single T-SQL statement away from going out of business. In this talk, you will learn why SQL Server backups are very different from regular system files, learn common pitfalls in disaster recovery plans, and be able to recover on-demand.

Lessons Learned from Civic HackingThe tales of building an robust app with full stack Javascript and wpapi to civic hack Houston's Section 8 Housing.

Life of a Mobile Developer, lessons learned, tools, tips and tricksTools, apps, sites, tips and tricks for being a mobile dev hoss in 2017

Make Your SQL Server Queries Go Faster!Have you ever developed slowly running queries and wondered how to make your own SQL Server queries go faster? In this session you will learn some T-SQL performance tuning tips that can be applied on Monday back at the office. You will learn how to identify top offender queries, be able to benchmark queries, and apply proper indexes while avoiding common mistakes. Finally we will cover coding patterns that are developer friendly but are not SQL Server database engine friendly and show you how to rewrite them so they can run faster.

Microservices and the CloudWhat is a Microservice? Functions? Service Fabric? Containers? Oh my! What are my options on hosting them in Azure? In this session we will boil it all down to an actionable roadmap that you can use to guide you on journey. We will then demonstrate their use in Azure.

MVVM for mobile, don't do it cause someone told you.Suffering from MVVM overkill? It's totally possible to make a great mobile app without MVVM or at the very least, a minimalist framework, in this session I'll show off the most popular (Cross) and why I can't stand it, then I'll offer up a better alternative.

My mentor and me: How I found a mentor and learned a new technology.Manthan is a young and eager developer wanting to learn database technologies. Peter is an old dinosaur looking pass on his knowledge before a bus hits him. In this presentation, Peter and Manthan will tag team and share their mentor and mentee experience. They will share what worked and what didn't work. This will be fun and engaging presentation on mentorship.

PC Hardware - Building and Upgrading Your MachinesThe PC hardware platform has evolved rapidly in the last several years. Join us for a discussion about the latest in PC hardware and what it all means. We'll talk about how to select different components, what all of the new-fangled jargon means and functionality in Windows 10 to take advantage of it all.

Physical/Electronic Access Control.Physical/Electronic Access Control.

PriceLess Personal Privacy|Protection in The Cloud AgeCRUX: This talk presents PRICELESS ($0) options available at this point in time (Sep-2017) to keep oneself safer in the age of the cloud. Will demo options that cost $0 for Windows 10 & special focus on the $0 options in NON-Windows.

PRE-REQUISITES: none, other than just your interest.

AUDIENCE: This talk is for anyone, who wants reasonable practical personal protection in everyday computing.

NOTE: This session is just the tip of the iceberg of many many many months of research and sleepless nights :- )

R And SQL Server: Two Great Tastes That Taste Great TogetherWith SQL Server 2016, Microsoft has released R Services, a platform for integrating R scripts into your SQL workflows. This talk will walkthrough the basics of installing and configuring R Services, demonstrations of its usage, and discussion of the platform.

Refactoring Toward SOLID CodeWalk with me step-by-step through a refactoring of some pretty complicated code into something much simpler. You've probably heard of these problems, but do you know how to spot them?

  • Single Responsibility Principle Violations
  • Interface Segregation Principle Violations
  • Feature Envy
  • Testing the Implementation
  • Afferent Coupling
Why are fewer constructors better than more? How do optional parameters increase complexity? Why should we limit the number of methods in the public interface? You'll see real examples inspired by real code. You'll learn why these problems lead to poor code quality, lower velocity, and higher defect rates. And you'll experience the refactorings that solve these problems.

So what can YOU do with a $2 computer?Cloud. Scale. Big Data. Machine Learning. Everyone's talking about the high end. Even IoT seems to imply needing a big cluster of servers to work. But Moore's law doesn't talk about scaling up. it just says the same capability halves in price every 18 months. And that makes the low end of computing VERY interesting these days. In this session, we'll look at what's possible with a computer you can get for under $2 in volume (and a few that cost just a bit over that point). And I think you might just be amazed at what you can do today for under the cost of the cheapest cup of coffee you can get at Starbucks.

SQL Server Tips from the FieldMicrosoft SQL Server is gaining more and more market share. IT Leaders find SQL Server is a great place to store your company’s most valuable data so it can be readily accessed when needed. This raises the question: How do I protect my precious data, as well as speed up access to it so people don’t complain? In this session, we’ll learn new features in Microsoft SQL Server 2016, the best methods of backing up/restoring the database, methods for cloning the data real-time and distributing access across other VM’s (AlwaysOn) and how to determine why SQL Server is hogging up all of the CPU and how to turbo-boost performance without upgrading hardware! This will be a lot to cover in a short time, including multiple demos, so prepare to take lots of notes.

Successfully Migrating Existing Databases to Azure SQL DatabaseThe last thing you want to do is leave a bad first impression by having an unsuccessful migration to Azure SQL Database. You will learn how to test migrations for success, successfully migrate your database, and monitor your workload to save money.

The Future of AgileSixteen years after the Agile Manifesto, how are we doing? Is it what the manifesto authors expected? Has our industry improved as a whole? Is agile just a passing fad that will fade away? We will take a brief journey back through the history of project management, technology, and organizational behavior. The evolutionary patterns of changes to each of these help us see how we got to where we are today, while providing useful forecasting insight. You might be surprised to learn the true origins of agile as we learn about emerging trends that give a glimpse into the future of product development.

The lost art of Object DesignDo you believe that writing great code quickly is important? Do you feel compelled to seek the elegant solution? Does it bother you if you are writing the same code for a year? If so, then this session is for you. We will take a look at the evolution of the software industry and how we have lost some of the skills needed to achieve amazing results. This talk is independent of language, and we will be using multiple languages in the examples. We will then dive into a complex series of solutions as a group, and start bringing back object oriented analysis and design.

Top 5 common agile estimation mistakesAs part of becoming a Senior Software Engineer, I have been trusted with the development of a new feature from scratch, and as exciting as this sounds, it also evidenced how hard is to come up with spot on estimations in agile. In this session i'd like to expose my top 5 common mistakes when creating estimations and how to avoid them.

Trust Fall : Creating Teams that TrustNothing improves a team like trust. Teams which trust one another can conquer more problems, more quickly, because less time is lost to friction. Teams which are trusted by the business are capable of creating substantial change within their organizations. In short: Trust Changes Everything. But how do we create trust? We all know that just putting a group of people together does not mean they will trust one another. Some will say it comes with time, but it certainly isn't guaranteed to come with time. But there are ways that teams can be deliberate about creating trust. There are skills which they can learn and practice which will engender trust, not from manipulation but from vulnerability. Your teams can be much more successful, and your life on them more fun and engaging, if you help them develop trust first, and software second.

Upgrading and Migrating to SharePoint 2016 SuccessfullySharePoint 2016 is finally out and it brings tons of new features that continue to make SharePoint an amazing collaboration tool for companies. Many companies are still on SharePoint 2010, maybe even earlier versions. In this session, I discuss and show you the approach for upgrading and migrating to SharePoint 2016. Its time to get with the times and upgrade your farm. I will shares best practices and lots of tips as we upgrade our sample farm. I will include some troubleshooting and custom solutions based on real world scenarios to make sure this isn't another "simple" upgrade. Best of all, we will have fun doing this.

Attendee Takeaways:

  1. Learn how to upgrade to SharePoint 2016 from various SharePoint versions.
  2. Learn best practices for upgrading smoothly and properly.
  3. Learn some tips and tricks to making the upgrade faster, less error prone and efficient to reduce downtime.
  4. Learn how to troubleshooting and deal with upgrade issues.

Visualize real-time sensor data from Azure IoT HubIn this presentation, I will demonstrate how to use the Azure IoT Hub to visualize real-time sensor data with Power Bi and Azure Web Apps. We will simulate a Raspberry PI and other sensors for telemetry. Use the Azure IoT Hub to consume the sensor data via a consumer group. Then, we create an Azure web app in the Azure Portal to read sensor data from the Azure IoT Hub. We will present the real-time sensor data on the Azure Web APp from the Azure IoT Hub. Lastly, we will finish using Power BI to build a dashboard for our sensor data. I will provide handouts for attendees to follow and reproduce the IoT scenario. Look for my blog post on the Azure IoT Hub and Sensor Data.

Attendee Takeaways:

  1. Understand how the Azure IoT Hub works and its role with IoT devices.
  2. Learn how configure the Azure IoT Hub properly with IoT devices.
  3. Create a real world scenario IoT scenario.
  4. Learn how to create an Azure Web App and present data on the internet.

Xamarin Forms for Windows Developers: Tips, Tricks and Lessons LearnedXamarin Forms is a boon to any developer seeking to whet their whistle in the world of cross-platform app development, but the entire concept of Xamarin focuses on Windows developers and their experience using C#, the .NET Framework, and Visual Studio not Android or iOS. In this fast-paced session, Scott will walk developers through a slew of tips. tricks, and "lessons learned," from the perspective of a real-world Windows developer who is also now a real-world Xamarin Forms master.