[Video 211] Matthew Clark: The How and Why of Ruby

Ruby is famous for letting programmers do anything and everything. You can change the language, the syntax is extremely flexible, and there are many ways to do the same thing. This flexibility is great for experienced developers, but how does it work for new programmers? In this talk, Matthew Clark enumerates a number of reasons why Ruby is a good language to learn programming, and points to the features that make Ruby easy to understand and learn. As he says, we can talk about things without getting absorbed in the minutiae of where to put parentheses.

[Video 210] Andrea Crotti: Metaprogramming, from decorators to macros

Metaprogramming is a powerful technique in which we write code that then writes code. What tools does Python provide for metaprogramming? And how/when should we use such techniques?  In this talk, Andrea Crotti walks us through metaprogramming in Python, showing such techniques as decorators and metaclasses.  If you’re an intermediate Python developer looking to improve your code, this talk should give you many new ideas.

[Video 209] Jeremy Howard: The Data Science Revolution

We hear a lot about “big data” and “machine learning.” But why are these topics interesting? What sorts of advantages can they give us? In this talk, Jeremy Howard describes the ways in which machine learning and data analysis have already changed the worlds of business and medicine, and ways in which we can expect to see our lives change in the future. If you’ve wondered why people are getting excited about “big data,” this is a high-level, entertaining explanation.

[Video 208] Anton Caceres: Asynchronous Web Development with Python 3

Python 3 has been out for a while, but many companies haven’t yet found a compelling reason to move from Python 2. One feature which has been getting a growing amount of attention, and which is encouraging people to move to Python 3, is asyncio — a part of the standard library as of Python 3.4, which allows for asynchronous I/O.  But what does “asynchronous I/O” mean, how does it relate to Python, and why would I want to use it?  Moreover, how can I use it?  In this talk, Anton Caceres introduces us to asynchronous Web development in Python, which is based on Python’s generators, and which offers a new way to think about Web applications.

[Video 207] Brian Knapp: Message-Oriented Programming

Many of us program with object-oriented languages, such as Ruby. But what does “object-oriented programming” really mean? The emphasis in Smalltalk, the original OO language, wasn’t on objects so much as on messages — the communication that took place between the objects. In this talk, Brian Knapp explores what messages are, and how thinking in terms of them can change (and improve) the way in which you write object-oriented code — not just in Ruby, but in other languages, too.

[Video 206] Aysylu Greenberg: Benchmarking — You’re Doing It Wrong

Programmers love to use benchmarks to figure out whether a program is running quickly enough. Or to find the bottlenecks in a program. Or, sometimes, just to figure out why users are experiencing slow behavior.  But programmers who try to compare programs, or algorithms, or languages, or technologies, are often accused of making mistakes with their benchmarks. In this talk, Aysylu Greenberg looks at benchmarking, and points to ways in which our benchmarks may well be flawed — and how we can try to avoid such problems.

[Video 205] Vibhor Kumar: The NoSQL Way in PostgreSQL

PostgreSQL is obviously a relational database. (The “SQL” in its name sorta gives that away.)  But PostgreSQL has, over the last few versions, added a growing number of features normally associated with NoSQL. In this talk, Vibhor Kumar describes some of the latest NoSQL features to be added and improved in PostgreSQL, , including the Hstore key-value storage and the JSONB storage type.

[Video 204] Magnus Hagander: A look at the Elephant’s trunk

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.

[Video 203] Sam Saffron: Off the Rails

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?

[Video 202] Edmund Jackson: Clojure Data Science

Data science is a collection of disciplines that allow us to look through large collections of data, in order to discover and understand the patterns hidden within.  Clojure has emerged as an excellent language for doing data science — because of its interoperability with the JVM, along with  its clean and functional syntax. In this talk, Edmund Jackson demonstrates why you would want to use Clojure for data science, and how you could go about doing so.