by Brad Broulik
Want to learn how to create a single responsive site that can be viewed across all devices by applying the latest Web techniques and strategies? In this talk, we’ll explore the patterns and strategies we can apply to create sites that adapt across all our devices including mobile phones, tablets and desktop browsers. Topic discussed will include:
- Building responsive sites with fluid grids, media, and media queries
- Learn to implement the appropriate layout patterns for your content
- Learn to apply a responsive image strategy
- Learn to build responsive navigation
- Learn responsive workflow patterns
- Learn about tools and frameworks that help simplify responsive web development
- Learn performance strategies that keep sites lean, fast, and responsive
by Brian P. Hogan
In this talk you'll learn how to use Grunt for a variety of purposes as we explore how it all works. We’ll cover how to develop Grunt tasks, how to work with files, how Multitasks work, and how to use Grunt and its plugin system to manage the development of a single page app that uses CoffeeScript, Sass, and Angular. When we’re done you’ll know exactly how Grunt works so you can use it on your own projects right away.
by Chris Johnson
Do you use OS X or Linux daily for development? Ever wondered how to automate those tasks you repeat over and over? Want to make managing remote servers easier?
In building your *nix tool box we'll learn how to use some simple scripts and libraries to build out a custom tool box tailored to your specific situation.
This will bring you one step closer to saying 'Unix is my IDE'.
by Chris Wilson
I've given a few talks about Haskell at previous TCCCs, but one thing that kept coming up was that people would say "hey, I want to do some hands-on stuff."
Well you're in luck. I'm going to go through a quick hands-on intro to Haskell. Bring your computer and get ready to hack. I'll teach the basics of programming with Haskell. You'll learn the data structures, functions, and other tidbits necessary to start really writing code. Come see for yourself what everyone's been talking about!
by Dan Callahan
Create your own HTML tags with Custom Elements!
Take your hands off the handlebars.js with HTML Templates!
Seamlessly reuse front-end code with HTML Imports!
Shine light on the Shadow DOM!
In this session, you'll learn how the brand new "Web Components" standards will help you "define widgets with a level of visual richness and interactivity not possible with CSS alone, and ease of composition and reuse not possible with script libraries today." In other words, you can finally encapsulate and extend HTML itself, and it's awesome.
Plus, we'll make a brand new <custom-blink> tag in the first five minutes. The Web will thank us later.
by Dan Nordquist
Whether you're typing out a Subversion log message, a blog post, or an email, sometimes plain text just isn't enough. Join Dan Nordquist for a discussion of Markdown, a language (and program) that enables people to write HTML without the hassle. Learn how to use Markdown, who uses it today, what problems it solves, and how to include it in your projects.
by David Shepherd
Developers are busy people, running from sprint to sprint, with little time for self-reflection. They don't notice how often they mutter "..how'd he implement that.." or "..where's that method that does X?" They don't notice that the search tool they use to answer these questions is from the 1960s. They don't even seem to notice that 90% of these type of searches fail! Fortunately, a developer turned researcher did notice, and has dedicated the better part of the last decade to eliminating this quiet productivity-killer.
In this talk, I'll use both video examples and a massive repository of real developer activity data to prove that the typically-used regex searches waste a significant part of your day. Yet this talk won't dwell on the past; it focuses squarely on a better search future. I'll provide a tour of Visual Studio's many built in searches, demonstrate two search tools available as extensions, and provide guidelines for better searching. By attending this talk you will become a more effective searcher, a skill that is surprisingly fundamental to software development, and I estimate you can eliminate 10-30% waste from an average sprint.
by David Washington
The latest trend in mobile apps is to differentiate through hyper-interactive touch interfaces. Designing and thinking for touch means being prepared to re-think your UX for touch first. In this session, we’ll walk through how to design a non-traditional user experience with direct manipulation, real-time feedback and learnable feedback.
by Eric Brandes
You have mountains of data. Users demand instant rich interactions. Businesses need deeper insights from that data. How can you group, search, and drill down into big data in real-time without crushing the database or writing cumbersome map/reduce jobs?
Elastic Search is the distributed, open source answer to your problems. It’s a powerful tool that slices and dices massive data sets in real-time. In this talk we’ll see some live demos that showcase the power of Elastic Search, but would melt a traditional database. Things like full text searching, nested groupings, and real-time analytics. We’ll also discuss when and why you would use Elastic Search over more conventional alternatives.
by Jake Good
Lightning talks are short presentations, back to back, about almost any topic you can speak about in 5 minutes. Spots will be limited as 75 minutes will allow for 15 spots through the session.
- Why I love llamas and how they help me write code
- Check out this cool TODO app I wrote in Brainf*ck
- This is my secret SSH session to an FBI computer
- My startup, FaceSpaceLinkedVine is launching next week, here's our awesome landing page where you can share your email with us and that's about it.
We'll have a laptop setup for short demos (web/app/etc) or if you can cobble together your laptop fast enough, you can use that.
by James Greene
Attendees can expect answers to the following questions:
- What is Node, really?
- What is Node good for? What is Node exceptionally great for?
- Why should I care about Node? Isn't it only used by "hipster" startups? I work in the enterprise!
- How do I use Node?
- How should I structure my Node application?
- What is NPM? How do I use it?
- Is there an analogous Node module to my beloved "Library XYZ" for .NET (or other languages/runtimes)?
- Can I only use Node on the server-side?
- ...and so much more!
by James McConnell
Want true de-coupling in your code? Want to be able to write small, isolated pieces of functionality and hook them all up together at run-time? Come learn about the Managed Extensibility Framework, one of the more obscure parts of the .NET Framework where we will learn some magic about composing an application from separate parts.
by Jason Clifford
DevOps has become an increasingly popular buzzword over the last few years and is surrounded by many misconceptions. We’ll cover what DevOps really is, it’s history and how it can provide a competitive advantage. We will also go over an introduction to Chef and Puppet with examples for both Linux and Windows.
by Jason More
The first time you you write tests for any new framework can be challenging. How do you setup the tests? How do you run them efficiently? What about mocking upstream callers? Is any of it really worth it?
During this talk I’ll show you how to write unit tests for Angular controllers, directives, services, along with browser components such as setTimeout and making HTTP calls. I’ll be writing my tests in Jasmine, and continuously running them in Karma. Then we will wrap up by writing one end-to-end test using Protractor.
by Jenna Pederson
As teams start to adopt agile practices, feedback and quality are core components. We will take a look at what goes into agile testing, patterns for success, and the reasons why test driven development is effective. The second half of the session will focus on the test driven development workflow where we will work through some examples.
by John Culviner
by John Urberg
by Justin Wendlandt
There are a lot of exciting talks about how to implement particular functionality X in Framework Y using programming language Z. Not too many people get excited or present about how to improve your daily development workflows and tasks.
This talk will focus on how to automate everything you can imagine using Visual Studio 2013. This includes topics involving T4 templating languages, custom code generators, creating Visual Studio project templates (.vsix files) and building NuGet packages. We will also examine how to use the Visual Studio DTE COM-API to automate tasks in Visual Studio. The emphasis on this talk will be around how you as an architect or team lead can enable the other members on your team to start up a project or application using pre-built templates so that you can maintain consistency between all of your applications in the enterprise.
A lot of contribution work going on at Microsoft to enable the open source community to contribute more project and project item templates for Visual Studio that you can check out / contribute to located at http://sidewaffle.com/.
by Ken Korth
Did you drink the AngularJS KoolAid(r)? If you have already started developing in AngularJS, you know by now that there are little things that can catch you by surprise. That is what this session is all about: little tips and tricks that can help you reach 'Ahah!' moments with AngularJS.
This session is aimed toward beginning Angular developers who are struggling with questions like:
- What is the best way to have controllers communicate?
- Why is $scope often getting in my way?
- How does $q and the promise API work in Angular?
- How do $apply and $digest work (and more importantly, why you should or shouldn't use them)?
by Kevin Hakanson
Want to leverage your creativity, love of board games, and web platform experience to do something different? Turn your imagination into a Print & Play card game using only a modern web browser, color printer and text editor.
by Kristina Durivage
The area of wearable technology is getting increasingly popular and taking all sorts of forms. This talk will follow one path to making wearable technology, and will cover some tips and common pitfalls to avoid.
by Kyle Boon
Vagrant is a tool to create and configure development environments in a virtual machine. I'll go over the basics of vagrant plus orchestration tools like chef. I'll also show how Bloom Health uses Vagrant to help developers cope with our growing services based stack. These tools allow developers to focus on writing business logic and not worry about mysql versions and other minutiae.
by Lou Miranda
Mobility isn’t just about smartphones anymore. Since the advent of the iPad, four years ago, tablets have sold in the hundreds of millions. Recent studies on consumer spending for the 2013 holiday season demonstrate that much mobile commerce occurs on tablets. And as a productivity device, a tablet can be much more useful than a phone-sized device.
But is designing and developing for tablets too difficult? Are there reasonable ways of cutting costs when developing tablet apps? How much visual design and code reuse is there in “universal” apps that run on phones and tablets? How different is a tablet from a laptop, and how different is it from a phone? All this and more will be discussed as we cover one of the leading trends for mobility in 2014.
by Matthew Renze
Most presentations on Agile practices only cover what Agile is and how Agile practices work. However, in this session, you will learn why Agile practices like Scrum, TDD, and refactoring are so effective in terms of economics, psychology, and science. In addition, we'll explain the success of Agile practices with insights from various scientific fields including Information Theory, Network Theory, and Game Theory. Whether you're still unsold on the value of Agile, actively practicing Agile, or need to convince others of the value of Agile, this presentation is for you.
by Mike Hodnick
What is Live Coding? Live Coding is an emerging art form in which performers use programming languages to create live, improvised sound and visuals. Rebuffing trends in turn-key computer DJ software, Live Coding embraces transparency, improvisation, and a raw, genuine, hands-on approach to electronic musical performance. In this session we will explore Live Coding and its impact on the arts, education, and software engineering. We will dig in to some popular Live Coding environments that YOU can use today to create with. Last, but certainly not least, we will make beautiful noise with code and a pair of speakers.
by Nate Young
by Nick Stevens
by Norton Lam
A lot of media attention has been given to Google Glass. Some believe it is the future, others think it is just a passing fad. Like the iPhone before it, it's success will depend a lot on the applications that will be developed for it.
Google is selling Glass to those interested in trying out the technology, called Glass Explorers. Many of them are beginning to create very interesting applications for the device.
This talk will introduce you to Glass and the basics of Glass development with the Glass Development Kit. Topics will include hardware and software capabilities and show code that accesses them. The Mirror API will be touched on, but not covered.
by Paul Timmerman
Readers block writers and writers block readers. You’ve got to write your T-SQL code with that in mind, right? Not necessarily! By utilizing the Read Committed Snapshot database option or the Snapshot Isolation level within SQL Server, you can dramatically increase concurrency for your database applications. After a high level overview of SQL Server isolation levels, we’ll spend the majority of this session discussing the implementation of optimistic concurrency control within SQL Server. We’ll look at the benefits and drawbacks of using an optimistic isolation level and discuss use cases where it may or may not be appropriate. Come learn how to put one of the more powerful, but least understood, aspects of SQL Server to work for you!
by Richard Isaacson
A conversation of the Systems journey from Operator to Architect. We will cover techniques and tools that apply to each of the job title stages. In addition we will talk about how systems automation isn’t confined and is becoming relevant to the application development life-cycle. While this talk is very Unix family focused the general topics should apply to any operating system. Management is welcome to attend as the talk may give them an idea of what their teams should be doing and how to support their team.
We will not be dwelling long on on any one technology stack as we will favor a strong overview of what the journey should look like. Executing commands from notes, from memory, in scripts, as a part of tools, and via push button self-service will be our major mile markers.
by Robert Boedigheimer
The latest version of HTML is not completely standardized yet, but there are parts that are available in the latest version of browsers. There are many new elements, including those that provide more semantic meaning to common <div> elements (like header, footer, etc). A new <canvas> can be used for drawing, while the <audio> and <video> provide new multimedia capabilities. New input types are utilized by devices to provide context sensitive keyboards and improved usability. The new application caching and web storage provide the capability for disconnected web sites for smartphones and tablets. Learn about support for HTML 5 in major browsers, and see how Modernizr can provide feature detection and smooth fallbacks via various polyfills.
by Robert Boedigheimer
Do you have questions about your web site's performance? Would you like to have your site reviewed live? Don't worry, I'm not selling anything, but you'll be selling a lot more when your site is so much faster! There are many techniques such as HTTP compression, caching with expirations, bundling and minification, image optimization, CDNs, and more that we will review in the context of attendees' real web sites. We will also discover tools such as Fiddler and Page Speed you can use to diagnose performance on your own. Ever wanted a free performance review of your web site with tips to improve it, now's your chance!
by Scott Heckel
by Todd H Gardner
Let's fix our bugs!
by Vince Bullinger
Creating enterprise-caliber mobile applications presents a myriad of problems. One of those problems is having an entirely separate team of developers with an entirely separate skillset for each platform on which you’d like your app to work. Cross-platform mobile development seeks to alleviate this problem.
In this talk, we’ll take a deep-dive into the Xamarin framework. We’ll take an in-depth look at the Xamarin approach to solving this problem, as well as briefly touch upon native development and other technologies’ cross-platform solutions and when each one may be appropriate to use. We’ll also go over some best practices for Xamarin development for the enterprise environment and take a look at tools associated with Xamarin.