[Video 300] Douglas Engelbart: The Mother of All Demos

Back in 1968, Douglas Engelbart demonstrated a number of new technologies. These included the mouse, hypertext, real-time editing collaboration, and videoconferencing.  This demonstration, which is nearly 50 years old, is amazing for the numerous technologies that were introduced as breakthrough technologies — almost all of which are commonplace parts of our world today. For our 300th video, we present this historical demo, far less exciting in its presentation than what we get from Silicon Valley, but far greater in its impact than almost any presentation before or since.

[Video 299] Cory Benfield: You Don’t Care About Efficiency: Synchronous Code Is Dying

Most programmers like to make their code more efficient. Whether it’s improving our algorithms, adopting new languages, or just cleaning out old code, we want to make our programs run faster and use fewer resources. But in this talk, Cory Benfield tells us that the problem with much of our code has to do with the fact that we’re using blocking I/O, and that we could improve things dramatically if we were to use asynchronous code. Asynchronous I/O is an area of growing interest and development in several programming languages, including Python (especially the recently-released 3.5) and JavaScript in (ES6).

[Video 298] Wim Godden: When Dynamic Becomes Static: The Next Step in Web Caching Techniques

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.

[Video 297] Peter Seibel: Engineering Effectiveness at Twitter

Every organization wants to make its developers more effective. But what does “effective” mean, in the context of engineering? Are individuals different from organizations?   What can (and should) we do in order to make our engineers more effective? Since it was founded, Twitter has had to scale quickly and effectively, and has seen a large number of effective and ineffective engineering practices. In this talk, Peter Seibel describes the techniques that he has observed and implemented while managing teams of engineers at Twitter, and suggests ways in which we can try to make ourselves (and our teams’) work more effective.

[Video 296] Steve Dower: What’s coming in Python 3.5

Python 3.5 was released earlier this week, and while many Python developers still use 2.7, there is growing interest in the advanced features that Python 3.x provides. That said, many developers wonder why it’s worth upgrading to Python 3. In this talk, Steve Dower describes some of the most interesting and useful new features that Python 3.5 brings to the table. Note that his talk doesn’t cover all of the latest goodies in 3.5, or even items that were already in 3.4.  However, if you’re considering whether you should use Python 3.5, this talk should make it clear that if you can, using Python 3.5 is no longer a “nice to have,” but will make your code more maintainable and flexible.

[Video 295] Charity Majors: Building World Class Ops Teams

It used to be that companies could get away with a single system administrator. But those days are long gone; most companies of even a small size have several people working not as administrators, but rather as DevOps engineers, ensuring that the farms of specialized servers that a company uses run smoothly, quietly, and scalably without any hiccups. How do you put together a DevOps team? What skills (software, hardware, and interpersonal) should you look for? In this talk, Charity Majors describes what is involved in creating a DevOps team, how she has done this at a few different companies — and what she has learned from these experiences.

[Video 294] Britta Weber: Make Sense of your Logs

Nearly every server program produces logs — and while they’re often useful for debugging, they can be even more useful in helping to understand, review, and gain insights into the nature of your software and users.   In this talk, Britta Weber describes the “ELK stack,” consisting of Elasticsearch + logstash + kibana, three open-source tools which can work together to provide useful insights from your logfiles.

[Video 293] Christian Schafmeister: Common Lisp, LLVM, and C++ for Molecular Metaprogramming

Programmers often feel like their work is abstract, and not related to real-world, day-to-day problems.  At the same time, we know that software is often used in crucial aspects of our society. In this talk, Christian Schafmeister describes the software tool that he and his colleagues wrote to create molecules — and particularly proteins, chains of amino acids that are crucial to all life on Earth. He describes his goal of making it as easy to create molecules as it is to create software, and the molecules that he and his colleagues have created using a version of Lisp on LLVM which creates molecules. If you’re interested in the real-world uses of programming, proteins, or solutions to health-care problems, then this talk will be fascinating for you.

[Video 292] Anthony Goldbloom: Latest developments at the cutting edge of Data Science

Data science is a growing discipline; there are so many techniques, data sets, and people in the field that it’s increasingly hard to keep track of what is happening.  In this talk, Anthony Goldbloom describes the sorts of data sets that Kaggle (his company) has been publishing as part of its data-science contests, aimed at crowdsourcing solutions. If you’re interested in how data science techniques are being used to solve problems, or are trying to understand just where and how data science methods differ from others, this talk should be of interest.

[Video 291] Allen Wirfs-Brock: ES6 — JavaScript for the Ambient Computing Era

ECMAScript 6, the new JavaScript standard that’s being released this year, is a huge improvement and upgrade and change from previous versions.   That’s because ES6 is in a new world, with different requirements.  What are these changes, and what led the ES6 designers to make them? How will this affect the ways in which we’re using JavaScript, and computers in general?  How do these changes reflect the new ways in which we’re using computers, which weren’t around when JavaScript was first written? In this talk, Allen Wirfs-Brock reviews not just the changes in JavaScript, but the reasons behind them, and how modern computing differs from what we used just a decade or two ago.