North Korea is generally thought to be the most isolated country on the planet. There is very little uncontrolled communication into and out of North Korea, and most countries have few or no ties to them. But North Korea, like all countries, needs computers, and those computers need an operating system. Enter “Red Star OS,” a Linux-based operating system used by North Korea, and written by their developers. In this talk, Florian Grunow and Niklaus Schiess look through a copy of Red Star OS, examining its features, including what makes it special (and different) from other Linux distributions.
So you want to add up a bunch of numbers, eh? Fine, but what’s the fastest way in which you can do this? What about if you want to parallelize your solution? What pitfalls will you encounter, and how can you avoid them? In this talk, Guy L. Steele takes us, slowly but surely, though a number of different ideas, strategies, and concepts having to do with parallel programming, and considers the implications of them — regardless of the language you’re using.
Cascading Stylesheets (CSS) is the way in which we describe the design and layout of Web pages. But is CSS a programming language, or something less than one? And have those boundaries changed over time? And what does this mean for the people creating and modifying stylesheets; what skills do they need to have? In this talk, Chris Eppstein describes what CSS has been, is, and will be, and how this will affect front-end design.
Back in college, I had to take a course in signal processing. I did miserably at it, for a variety of reasons — I didn’t have the right math background, I was busy with the student newspaper, and I had no idea what was going on. But it was clear to me, even with my slim grasp of the subject, that manipulation of radio signals could be potentially quite interesting and useful. Fast forward two and a half decades, and wireless systems are all over the place, from WiFi to cellular networks. And the GNU project, unknown to many, has a system known as GNU Radio, that lets you control them. In this talk, Tim O’Shea introduces GNU Radio, telling us what it can do, and why you would even want it.
We’re used to hearing about data science being used in a variety of industries, such as politics, law enforcement, and medicine. But it’s also being used in journalism, to change and improve the ways in which the news is reported. What does it mean to be a data scientist at a newspaper, and in how is it changing the practice of journalism? In this talk, Chris Wiggins describes how the New York Times is using data science in its work, for journalism and for improving its business.
Has your boss ever come to you with an impossible task? Well, just be thankful that your boss isn’t the President, and your task doesn’t involve going to the moon. In this talk, Russ Olsen describes the many seemingly-impossible tasks that engineers were handed when John F. Kennedy decided that the United States should put an astronaut on the moon. Not only does this project make for an exciting and interesting story, but it also provides us with a terrific tale of how to break a seemingly impossible project into smaller parts, iterating closer and closer to success.
For years, front-end developers have employed “minification” to turn CSS into something that’s short, and thus faster to download, Minification techniques have improved over the years, with some providing a great degree of compression. In this talk, Ben Briggs describes the latest version of CSSNano, and how it works to minify CSS, and how it improves on previous generations of minifiers.
Certain things — objects, printed pages, and Web sites — are clearly designed well. And others…. well, not so much. What’s the difference between good and bad design? What leads an organization to create products that are beautiful, functional, and demonstrate an understanding of the people who will be using it? In this talk, Robert Brunner describes what goes into good design. In particular, he points to the fact that a good design rarely (if ever) emerges ready for prime time. Rather, it takes time, discussion, considerations, and testing to ensure that a design is appropriate. Given that our lives depend on the designs of other people, and that we as software developers are responsible for designing products (even if virtual) that others will consume, it’s important for us to think about design and consider how we can improve our approach to it.
Apache Spark has taken the data-science world by storm, offering a new way to process and analyze large quantities of data. Spark provides interfaces in a number of popular languages, such as Java, Scala, and Python, making it possible to perform large-scale data analysis in relatively short periods of time. Indeed, Spark’s claim to fame is that it can do very fast analysis of very large quantities of data. In this talk, Spark inventor Matei Zaharia introduces the technology, describes how it compares and interacts with others, and provides examples of how to use Spark to answer questions about large-scale data sets.