It's a whole lot more than just jQuery! We're making our first trip to Chicago to bring together experts from across the field of front-end development to bring you up to speed on the latest open web technologies. Get the latest on jQuery and related projects, code architecture and organization, design and implementation practices, tooling and workflow improvements, and emerging browser technologies.
Together again! We had such a good time with Roost in San Diego that we're taking the show on the road. Roost is a two-day training event operated by the folks at Bocoup, designed to give developers an immersive, hands-on experience creating modern web applications.
The jQuery Foundation's CDN is powered by MaxCDN. With the recent release of their analytics platform and the massive amount of requests coming from code.jquery.com we thought why not use this data to build something cool?
We'll provide you read-only access to the jQuery CDN analytics and you provide an awesome visualization of that data. Anyone with a conference pass can compete. Work in teams or work alone. We'll give you all of the details in this time together then send you out to create over the next 24 hours.
Information about prizes coming soon!
jQuery Mobile 1.5 brings lots of new features and a revamped navigation system, more performance optimization possibilities for advanced users and adoption of more widgets from jQuery UI. Lately though, the question I am asked isn't about what's going to be in 1.6, 1.7, and so on, but about the future of jQuery Mobile after the merger with jQuery UI, and what the future is for the jQuery Mobile project. I’ll go into our current road map and details (as many as are available right now) about the future of jQuery Mobile and what it will look like after 2.0
Error driven development. Is that even a thing? It should be, at least for the next 30 minutes. Correctly creating and handling errors in your app is arguably more important than handling success cases, so let's do a better job! This talk will take an in depth look at the elusive Error class and how to wield it. We'll cover best practices, vendor specific extensions, sub classing and error handling patterns in both synchronous and asynchronous code. Write better errors, handle errors better, improve your SLA, come see this talk.
Let's party like it’s the late 1990's — When the Components spec was originally introduced and 2Pac was livin' in a gangsta's paradise. While the implementation of this paradigm is long overdue, at least it's been a sufficient amount of time for Microsoft to forget Google stole their idea.
In this presentation, we'll look at each piece of the Web Components spec including Templates, Decorators, Custom Elements, The Shadow Dom, and HTML Imports. We'll also look at how this may integrate with ECMAScript 6 Modules to create a truly modularized, encapsulated, decoupled web.
Although Web Components are not yet ready for use in production we'll look at how we can be building our applications with components in mind, and how frameworks like Angular, Ember, and Polymer are already doing so. This is not only one of the most exciting specs in draft, it's also one of the most important paradigm shifts in web development since Al Gore created the internet.
Description coming soon
You know your way inside and out when it comes to DevTools in all the browsers. You understand the network waterfall and can hunt down memory leaks with the best of them. However, you're hitting some sporadic issues on mobile, but you can't reliably reproduce them. Perhaps you've got some minified code in production and you'd really like to just replace it for debugging with unbuilt code, but you don't want to actually put your unbuilt app into production.
Proxies to the rescue! In this talk, Brian will introduce the concept of using a proxy as a debugging tool, showing you how you can observe everything happening at a network level, including hijacking requests, responses, modifying headers, and even emulating latency problems, in order to help you harden your application against the harsh realities of slow, flaky networks.
In this talk we will present a practical approach to building offline-enabled, data-driven applications using jQuery, jQuery Mobile, and PersistenceJS as an O-R-M abstraction on top of HTML5’s varying offline storage standards. Using this combination, we introduce a simple data synchronization paradigm that allows mobile HTML5 apps to download data, store and manipulate that data locally, and re-synchronize that data whenever the device is online. In addition, we present some of the benefits of viewing data stored in a database, including sorting, grouping, filtering, and full text indexing lists of data objects.
With offline storage added to the mix, mobile HTML5 starts to deliver on the promise of a fully cross-platform, browser driven experience that is just as good as any native app.
Client-side form validation is a notoriously painful development experienece. Yet, despite HTML5 constraint validation—a series of APIs designed to make form validation way easier—being implemented in most browsers, no one actually uses it. In this talk you'll see why. We'll discuss constraint validation's pain points, and how you can overcome them in your own applications. Come learn how to use HTML5 form validation today!
This is a case study on how I took slow loading tables full of basketball data for stats.nba.com and made them fast and fun. It's also about how sometimes reinventing the wheel (in this case the wheel is a table generating plugin) is the best solution for a large project that requires agile feature development.
Instead of storing the Todo list as plaintext in localStorage, this “secure” TodoMVC implementation encrypts Todos using a password derived key. The PBKDF2 algorithm is used for the deriveKey operation, with getRandomValues generating a cryptographically random salt. The importKey method sets up usage of AES-CBC for both encrypt and decrypt operations. The final solution helps address item “A6-Sensitive Data Exposure” from the OWASP Top 10.
You've been creating your masterpiece for the last 24 hours or so and now it's time to show it off to your fellow hackers and our judges. Winners will then be selected and announced at the evening party immediately following this wrapup so come out and grab a little bite to eat or something to drink and see if you won!
Information about prizes coming soon!
The list of solidified ES6 features keeps growing and we, on the client side, just get greener with envy. Many of these new features won’t be supported in a broad base of browsers for years to come, but there is hope for us nonetheless. While we don’t have the ease of flipping a command line flag, like node, to bask in the warm sunlight of ES6 sugar, we can build a system that gives us similar results.
After listening to this talk, I hope your jealousy will be soothed, and I know that your curiosity will be satisfied.
Building front-end web applications takes a lot more than just a CSS Preprocessor, jQuery, and an MVC framework. Running that application takes, monitoring, and performance improvements, developer happiness, build tools and analytics. Front-End Ops is the set of jobs that a front-end developer should be doing to support their application, rather than just building it in a vacuum. Some teams can afford to have a dedicated Front-End Ops engineer, and others will have engineers that wear many hats.
While this is cool, this idea can be taken a step further. Who says we have to just use this as a "display-only" technology?
In this experiment, we will see how we can make our content interactive - using this new technology as an HTML5 Game Console.
In today's responsive world, user experience and application performance is becoming more important than ever. Performance optimization has long been considered a task that requires careful manual "tuning" of several application components, as well as continuous testing. In some cases, the effort involved may outweigh performance gains, and this is when developers must walk the tight rope between benefit and cost. With the advent of automated build tools and task runners like Grunt, automating these tasks has become possible. In this session we will cover examples of some of the most common approaches, as well new and more radical methods including unCSS, combining media queries, bunching up API calls, automatic sprite image generation, and others.
As web applications get more complex, with more moving parts, and more async behavior, the ability to run a smooth user experience with a consistent state become a lot harder. Utilizing the simple power of Promises, with some lessons learned from concurrent programming, we can provide some tools and techniques to bring order to async issues like out of order execution, request/animation interruption, and state management.
We'll begin by briefly discussing what functional programming means and compare it to the more popular imperitive programming style. This includes, but not limited to, concepts like immutability, partials and predicates. Then we'll play with some functions native to JS that allow us to transform values instead of mutating them. Following that, we'll wield underscore and underscore-contrib to make writing functional JS even more powerful.
By the end of this talk, you'll be able to write more concise, safer, reusable and understandable code.
To most people in JS, functional programmers are perceived as academic hipsters raving about things like applicative functors, semigroup homomorphisms and Yoneda lemmas for no good reason except to make the rest of us feel stupid. And this is fair; there’s no better way to make you feel pitifully mainstream than throwing category theory at you. Conversely, JS programmers tend to believe functional programming, therefore, can have no real world application because nobody in the real world has any idea what a Yoneda lemma is and they seem to be getting by just fine without it.
Except we aren’t. We’ve been living in callback hell for almost two decades now, and no matter how many control flow libraries we submit to npm, things don’t seem to be getting any better. And that’s where functional programming comes in—turns out callbacks are just functions, and those academics in their ivory towers with their Haskell compilers actually encountered and solved these problems long ago. And now we can have their solutions in JS too, because of functional reactive programming. To demonstrate, I’ll attempt to write a browser based game, from scratch, with ponies, using RxJS, everybody’s favourite reactive library, live on stage in 30 minutes with no callback hell in sight. And we’ll be finding out if this reactive stuff is all it’s cracked up to be or not.
Building a mobile web app that animates smoothly is nearly impossible unless you're an expert developer. It's time for the web to get its own collection of fast by default components. In this talk we'll look at how you can use readily available Polymer elements to build an app that is buttery smooth on phones and tablets. We'll also show off some cool new tools that make it super easy to go from zero to working prototype in no time flat.
Web sites and web applications provide a special flavor of debugging for developers. The techniques used can range from archaic and brute force alert() debugging, to simply altering the code and refreshing your browser until it seems to work. Ideally you will utilize some more advanced developer tooling but many are left confused when it comes to debugging a mobile site because the mobile debugging landscape changes so fast. In this talk I will highlight some common mobile debugging techniques from in-browser emulation to remote debugging solutions from weinre to browser developer tools that allow for remote debugging.
As a developer, building stuff is in our DNA. Then we are asked to produce documentation, and our heads explode. There are many tools and resources to help you, but what's the best route to take? This talk will cover documentation best practices from auto-generated to static site generators, that way when you build something, someone might actually use it.
In the heart of the city, Sheraton Chicago Hotel & Towers puts you within reach of some of the best restaurants and attractions Chicago has to offer.
Sheraton Chicago Hotel & Towers
301 East North Water Street
Chicago, IL 60611
Deluxe Room Price: $385 $269/night + free Wi-Fi for jQuery attendees for a limited time
Book Online: https://www.starwoodmeeting.com/Book/jQuery
WordPress is a Founding level member of the jQuery Foundation. The jQuery Foundation also uses WordPress to manage all of its websites via GitHub which was made possible with the help of WordPress developers.
IBM is pleased to partner with the community sponsoring the jQuery Chicago conference. As a Founding level member of the jQuery Foundation, IBM is committed to embracing open technologies like jQuery with products and customers to accelerate their open Cloud adoption and rapidly integrate their Social and Mobile apps into their back-end infrastructure for greater value.
Media Temple's premium web hosting and cloud services power more than 1.5 million websites in 100 different countries. Over 125,000 people and businesses rely on our simple tools for web hosting, one-click WordPress installs, virtual servers, domain registration, business applications, and other cloud services.
The visitors to your website are from anywhere in the world, yet your hosting isn’t. This means the further away they are the slower your page loads. MaxCDN gives you access to over 500 peering partners worldwide and direct reach into over 90 countries.
DigitalOcean is the world's fastest growing cloud hosting provider built for developers. Our mission is simple: we're passionate about making complex infrastructure simple and delighting our customers with a seamless experience that brings them joy. New users can easily deploy a blazing fast cloud server in 55 seconds with an intuitive control panel interface, which can be replicated on a larger scale with the company's straightforward API.
Mandrill is a scalable and affordable email infrastructure service, with all the marketing-friendly analytics tools you’ve come to expect from MailChimp. Apps can use Mandrill to send automated transactional email, like password reminders and shopping-cart receipts.
Accenture is a global management consulting, technology services and outsourcing company. Working with Accenture in the United States, you can join ranks with more than 281,000 people in more than 200 cities in 56 countries. We serve clients in more than 120 countries and work with clients in nearly every major industry worldwide, including 91 of the Fortune Global 100 and more than three-quarters of the FortuneGlobal 500 and government agencies around the world. Accenture's people build careers in different areas of business, specifically Consulting, Technology and Outsourcing, as well as within our internal corporate functions.
The jQuery Foundation believes that everyone deserves a thoroughly pleasant conference experience, regardless of who they are. We adhere to the JSConf Code of Conduct and expect that all of our speakers, attendees, and volunteers will do the same.