So, your Web application is running slowly. Does this mean that you need to switch languages or frameworks? Buy (or rent) a larger server, or more servers? Start tinkering with the database calls? Perhaps — but it could be that a smart cache, aka an HTTP accelerator, will help you. Caches and HTTP accelerators are no longer as simple as they once were; they can be clever about static vs. dynamic content. In this talk, Wim Godden describes ways in which Varnish and other accelerators work, but then describes where such systems are limited, and some advances that nginx has made in this direction.
Open-source software is now an established part of the high-tech infrastructure, with numerous success stories. Many of the contributors to open source are volunteers, students, and people who just want to get involved, or get experience. But how can you become one of those people? How do you choose a project to which you want to contribute, and then actually contribute? What can you expect? In this talk, Yvonne Lam answers these questions — the non-technical questions about open-source participation that are at least as important as the technical ones.
Containers are no longer the Next Big Thing; they are here, and are becoming an essential part of running any large-scale data center. But this means that you have to manage those containers, and a growing number of tools is starting to help with that task. Google is pushing Kubernetes, an open-source management system for containers. In this talk, Brendan Burns describes Kubernetes, how it works, and what it offers. If you’re interested in managing a large number of servers, then Kubernetes might provide a good solution.
For many years, open-source advocates hoped that one day, lots of software would be open source. This goal, which seemed laughable at the time, has (in many ways) come true. When did this happen? Why did this happen? And what does this mean for business? For software developers? For users? In this talk, Allison Randal considers the history and future of the success of open source, discussing the technical, legal, and economic effects that these changes will generate. She argues, among other things, that open source is increasingly a necessity, and that participation in open source is a competitive edge in the modern era.
Rust is a programming language from Mozilla Labs that has been getting a growing degree of attention. As Rust developer Alex Crichton describes in this talk, Rust aims to provide a systems language, similar to C or C++ in the degree of control that it gives programmers — while providing the reliability and safety of high-level languages such as Python, Ruby, and JavaScript. How does it aim to do this, and why are so many programmers interested in Rust? This talk describes the design goals of Rust, and the ways in which it tries to bridge the gap between control and safety, two goals that other languages would have us believe are mutually exclusive.
Python is popular, and is rapidly growing in popularity — not what you might expect from a 25-year-old language. What is it that makes Python so special? Why are so many people, in so many places adopting Python? In this talk, Raymond Hettinger describes the features of the Python language, ecosystem, and community that combine to make it such a compelling choice for universities, companies, and individuals.
If you have been using Jupyter (aka IPython) notebook for your work in Python, then you’re in good company; many developers (including me) now use it instead of the text-based interactive Python shell. Just using Jupyter has dramatically improved my productivity. However, it turns out that Jupyter, like many open-source projects, is highly customizable. In this talk, Matthias Bussonnier, Jonathan Frederic, and Thomas Kluyver show us how we can customize and change Jupyter Notebook, to make it a custom environment, special for our needs.
There has been a great deal of discussion in recent months among users and designers of dynamic languages, and how they are starting to look into some form of static typing to reduce bugs, and catch problems earlier. Perl 6 has been under development for a long time, with a release promised by the end of 2015. In this talk, Jonathan Worthington describes the ways in which the developers implementing Perl 6 have thought about the dynamic vs. static tradeoffs, and how Perl 6 reflects their decisions. Even if you’re not planning to use Perl 6, it’s interesting to hear how language designers think about what they’re creating, and how their decisions will affect those using their language.
PostgreSQL has been around for 20 years, and continues to be a popular and powerful open-source project, with a growing number of companies adopting it for their database needs. The PostgreSQL developers typically release a new version toward the end of every calendar year; this year, we can expect version 9.5 at some point late in 2015. In this talk, Magnus Hagander describes the new features that PostgreSQL 9.5 will include. If you use PostgreSQL (or are wondering why so many people are now adopting it), this talk will shed light on the future directions of PostgreSQL, and will provide you with the insights you need to prepare for this new version.
Let’s say you have a really popular open-source project. Let’s say that you want to provide the greatest possible performance, but that the basic installation of Ruby on Rails limits you. What can and should you do? How do you deal with this, without breaking Rails, requiring too many customizations or monkey patches, or hurting your application? In this talk, Discourse cofounder Sam Saffron describes how they handle such situations in their (amazing, in my opinion) discussion application. How do they use Rails, how do they go around it, and how do they try to improve performance?