Software developers love to talk about “abstraction” as an important principle. But what’s the point of abstraction? How does it help us to write, and create, software that easier to write, extend, and modify? How can we use the principles of abstraction to think in new and better ways, to solve bigger problems, and write better software? In this talk, Gershom Bazerman talks about abstraction — not just from the perspective of the Haskell language, but from programming in general.
The Go language continues to rise in popularity. What is it about Go that makes it popular? And why should you consider it for your upcoming projects? In this talk, Thomas Wilde introduces the language, starting with its origins and motivations, and moving into basic syntax and some of Go’s most famous features, such as goroutines. If you have always been curious about Go, but haven’t had a chance to learn it, this talk is a good introduction to the language, and where it might be useful in your projects.
We use the term “language” to describe a programming language, but we normally assume that there is a world of difference between human languages and programming languages. But what if there were a human language that could be described similarly to how we describe a programming language? That might provide us with some insights into the structures of both! In this talk, David Branner introduces us to classical Chinese, a language whose structure can be analyzed similarly to programming languages. Even if you don’t know any Chinese, this talk provides useful insights into the way that we people communicate with one another, and with our machines.
Web applications generally have a database on the back end. But how should we structure that database? There are many ways to structure our database in a database, and some of them are far more efficient and manageable than others. In this talk, Andrew Godwin discusses and shows many of the different ways in which people use and abuse their databases for back-end storage, and indicates why these might be bad ideas — whether you’re using Django, or any other Web application framework.
DevOps is increasingly mainstream: Companies depend heavily on their servers, and this means that their operations, integration, and deployment need to be automated and monitored to an increasingly large degree. But beyond the obvious trends in favor of DevOps, what do we know? How many companies are investing in DevOps? Why? And what areas are of most interest? And how can devops engineers help companies to improve better and faster? In this talk, Michael Coté surveys the current state of devops, describes the trends, and tells us what language we can (and should) use to convince management that it’s a worthwhile investment.
RSpec is one of the best-known test frameworks in the Ruby world. With RSpec 3.0, the framework has made a large number of changes, mostly aimed at making tests cleaner, easier to write and understand, but also making RSpec itself easier to maintain. In this talk, Jon Rowe describes the changes and improvements in RSpec 3.0, and why these are changes that everyday developers (and RSpec users) should notice, care about, and even incorporate into their work.
Congratulations! You’ve been invited to interview with the company of your dreams. Of course, this means that you’re going to be put through a grueling technical interview. What do companies look for, both before and during the interview? What strategies can you employ to increase your chances of success? In this talk, Gayle McDowell tells you how to apply for jobs — starting with your resume, and then with the knowledge that you should have and demonstrate during an interview.
PostgreSQL has been growing in popularity for the last few years, partly because its performance continues to be excellent as it scales. But this doesn’t mean that PostgreSQL scales magically or automatically, or that we don’t need to worry about which queries are consuming the greatest resources. pg_stat_statements is a PostgreSQL extension that lets you track query performance over time. In this talk, Lukas Fittl describes some advanced ways in which you can use pg_stat_statements to understand, and then improve, your PostgreSQL database performance.