Functional programming is all the rage these days, but our codebases, libraries, and built-in methods are predominately Object-Oriented. Using OO syntax with functional constructs, we can write in a style compatible with either paradigm and enjoy the benefits of both.
We will explore disjunction, monoids, monads, and other algebraic abstractions to produce highly composable, safer, and simpler code.
React is a library that totally eschews the traditional model-view-controller architecture in favor of consolidating all concerns of a component into a single location. This may seem to be a bad idea but it actually makes code very easy to read and maintain. This is, however, a break from the way we typically think. We will go over this new line of thinking, complete with little React examples to toy with.
By the end of this workshop, you will understand:
We will step through each tab of the developer tools and learn all the great things it can do. After learning about each tab, we will pause for a quick assignment where we’ll have to use the tools we just covered to diagnose problems on real websites.
We’ll learn how to:
Diagnose a slow webpage
Persist changes to disk
Step through debug
Set a breakpoint on element modification
Audit a website
And much more!
Web performance is a must known skill for every developer. In this workshop we will cover the basics of Web Performance Optimization, how to measure performance on desktop and mobile devices, what are the important differences on mobile browsers and practical tips to follow to achieve extreme web performance.
We will have time to make real live analysis on websites and understand how to separate Above-the-Fold content from the rest and when to do it.
Attendees will understand new concepts, such as Speed Index and new tools to profile, measure, analyze and improve websites' performance.
Angular 1 developers who wants to learn how to make the switch and dive deep into, components, services and Angular 2 architecture
As an author of React Quickly (Manning, 2016) I will teach front-end developers how to build web UIs with React.js. I'll show how to render React isomorphically, how to test it, and how to use React Router and Reflux data store.
What? Is that even possible? We're sure as hell going to try! Since many of us are self taught and/or dropouts (myself included) we lack the advantages that a formal CS education can give. This additional theory can give us useful context to make tradeoffs in implementations and architectures.
We're going to cover:
Algorithms and Big O Analysis Recursion Sorting! Bubble Insertion Merge Quick Data Structures! Stacks, Queues and Priority Queues Maps and Sets Hash Tables Array Lists Linked Lists Binary Search Trees AVL Trees Functional Programming 101 in 30 mins Map Reduce Filter Who this class is for?
Anyone who wishes they had a better understanding of computer science concepts. This includes self-taught developers, designers who learned to code, or devs just starting down the path of learning to be a good coder.
Who this class is not for?
If you look at the list of concepts we're going over and say "I know most or all of those" then this class won't be for you. You're welcome to still come but this class will focus on getting everyone up on the same understanding.
The very talented Marshall Upshur will be TA'ing the class.
We'll take a deep dive into an opinionated pattern of state management in Redux that we use in production at Patreon. Attendees will learn to think clearly about the different types of client-side state (data, references to data, viewport state, ajax state, component ui state) and build reusable complex UIs. Introduces patterns of state management in Redux that emphasize code reuse more heavily than traditional Redux examples. Great for medium to large web teams. Usable not just in SPA but also in a multi-page architecture.
In this workshop we will get into practical examples of how to create a Progressive Web App -an offline capable web application- using the latest specs. Google, Mozilla, Samsung, Opera and Microsoft are all supporting the Progressive Web Apps new world. We will cover desktop and mobile webapps, using Service Workers and other specs, debugging techniques and tools available. We will learn how to detect connection and how to create a successful offline experience. We will cover how to use Push Notifications for the Web, how to setup notifications server-side using Node.js to connect to browsers' servers. We will finally see how to use Web App Manifest to convert the website into a native-like webapp and how to serve similar solutions for Safari and iOS and other non-compatible browsers. We will talk about polyfills, Application Cache and iOS Home Screen webapps. After this workshop you will have a fully functional PWA that you can serve to your users.