Good developers know about abstractions, and that choosing the right abstraction is vital to writing good code. But great developers (and product owners alike) know that choosing the right abstraction, the right way of thinking, is vital to staffing, design, prioritization, and everything —and sometimes your brain needs more refactoring than your code. This talk is about the invisible mental abstractions you didn’t realize you were using, and how to exploit them for fun and profit.
David Edwards is a software engineer with Pivotal Labs. He graduated from Stanford University, having worked on an interdisciplinary major between the computer science, psychology, linguistics, and philosophy.
Christopher Larsen visits from the Pivotal Labs office in Toronto and introduces a curated collection of techniques and tools for iOS development.
Diego Ongaro gives an overview of how consensus is used in building fault-tolerant, distributed systems as well as how the Raft algorithm itself works. More info on Raft can be found here.
Nicole Sullivan and Colin O’Byrne share their approach to Style Guide Driven Development (SGDD) in redesigning the Cloud Foundry developer console. To learn more about it, check out the developer console live style guide. This post explains tooling around Style Guide Driven Development. You might also be interested in the Hologram open source project, a style guide generation tool.
Faraz Khan and Don Goodman-Wilson of Screenhero give an overview of the engineering challenges involved in building a high-quality video streaming system while also offering a detailed look at some of the ways Screenhero solves these problems.
The grammar of graphics: demystifying data visualisation with d3
Alastair Dant is an experienced software developer, focused on interactive news and visual journalism. Now at The New York Times, he escaped the world of enterprise Java to record the sounds of cities on interactive maps, develop a popular cartoon monster game and build an award-winning team at the Guardian.
Visualizing Garbage Collection in Rubinius, JRuby and Ruby 2.0
In this talk we’ll dive into Ruby internals and take a close look at an ugly topic: garbage collection. How do these Ruby VM’s allocate memory for new objects? How do they identify unused objects? How do they reclaim memory from garbage objects, allowing it to be used again?
You can learn a lot about someone from their garbage. Using a series of diagrams, we’ll visually compare and contrast the complex algorithms these very different Ruby implementations use. What computer science research is behind each garbage collector? We’ll also look at the GC changes planned for the upcoming Ruby 2.1 release.
Pat Shaughnessy is a Ruby developer working at McKinsey & Co., a global management consulting firm. Author of Ruby Under a Microscope, Pat loves diving into the details of a technology, learning how it works, and then explaining it in simple terms that everyone can understand. Pat’s blog articles and conference presentations have been featured multiple times on the Ruby Weekly newsletter, the Ruby5 podcast and the Ruby Show.
Jeff Hui gives an in-depth presentation of all the details involved in reverse engineering Objective-C, covering compilers, linkers, assembly language, as well as some useful tools to aid in the process. The slides from Jeff’s talk can be found here.
InfluxDB – An open source time series, metrics, and analytics database
In this talk I’ll introduce InfluxDB, a distributed time series database we open sourced based on our backend infrastructure at Errplane. I’ll talk about why you’d want a database specifically for time series data and cover the API and some of the key features of InfluxDB, including:Stores metrics (like Graphite) and events (like page views, exceptions, deploys)No external dependencies (self-contained binary)Fast. Handles many thousands of writes per second per serverHTTP API for reading and writing dataSQL-like query languageDistributed to scale out to many machinesBuilt in aggregate and statistics functionsBuilt in downsamplingI’ll talk about the underlying technology and some of the tradeoffs we made in the design to help it scale with time series data.
About Paul Dix
Paul Dix is co-founder and CEO of the Y-Combinator backed company Errplane. Paul is the series editor for Addison Wesley’s “Data & Analytics” series and the author of “Service Oriented Design with Ruby and Rails.” He is a frequent speaker at conferences and user groups including Web 2.0, RubyConf, RailsConf, and GoRuCo. Paul is the founder and organizer of the NYC Machine Learning Meetup. In the past he has worked at startups and larger companies like Google, Microsoft, and McAfee and has a degree in computer science from Columbia University.
How I Learned to Stop Worrying and Love Haskell
The web development world loves languages that are dynamically typed, easy to learn, and supported by giant ecosystems. In that context, Haskell is often thought of as academic — elegant, expressive, and mind-expanding, but too obscure and frankly too hard to be worth the investment for developers who are happy to use less demanding tools as long as they work.
There’s more to the story. Haskell’s type system offers huge practical benefits, especially for developers who need to prototype fast and make deep changes quickly and often while keeping code quality high. Haskell apps run fast and are a cinch to deploy, and the ecosystem is growing by huge leaps. And writing in it is just fun.
We’ll talk about how hard Haskell really is to learn, what makes it worthwhile to learn a language, whether it’s worth it to learn and use Haskell, and where you would start.
About Christian Brink
I was a business guy before my first startup went sideways and I decided to do my second one as a developer. Since November 2010 I’ve been teaching myself, freelancing, doing some really fun master’s coursework at Tufts, and most recently getting started on that second startup, which is what I’m working on over here at the west end of the Pivotal office.
I’ve used 7 or 8 languages in anger, and nothing turns me on like algebraic datatypes.
Francesc Campoy Flores, a developer programs engineer for the Go language at Google, demonstrates how to build a web-app in Go, exposing a REST API for an AngularJS client.
Meta language for language learning
Engaging in a dialog about our relationship with languages fosters the creation of a more elegant language learning system.
About Evan Gardner
Evan Gardner has been working in community and endangered language revitalization for 12 years.