Our culture's default assumption is that everybody should always be striving for perfection -- settling for anything less is seen as a regrettable compromise. This is wrong in most software development situations: focus instead on keeping the software simple, just "good enough", launch it early, and iteratively improve, enhance, and re-factor it. This is how software success is achieved!
On the fence about Dart? Sure it's horrible? I will give you no fewer than 10 reasons that you are going to love writing your next application in Dart. Don't believe me? I will prove that your code will be better — bordering on beautiful. Dart is going to change the way you think about programming and web programming—for the better. Starting today.
People have been fascinated with random numbers for millennia. How far have we come in that time, and why are they so important? How did a medieval monk's work end up responsible for decades of questionable science? How is something we had no trouble doing before recorded history still causing problems in the cloud? All these questions, and more, will be answered.
The presentation will summarise the experiences of introducing Agile methodologies (Scrum, Kanban) in e-commerce organisation (+1000 employees) that had a strong basis in waterfall project management and ITIL based operations. I would like to show what difficulties we have faced and how we are trying to overcome them.
Do you know any open source project from Korea? or China / Japan? Language barriers and cultural differences makes open-source in East Asia very unique and different from what you may be used to. Join us to learn more what’s happening in open-source outside of the western world!
Android development is challenging. Fortunately, the developer tools provide a great deal of support, making the job more manageable, and a lot easier. I will show you many essential tools, tips and techniques that will increase your development productivity, and improve the quality of your code.
An outreach project at Saint Joseph's College strives to bring low-cost Android-based technology to a wide swath of the college community. Various projects are using Android smartphones as sensors, data collection and media generation, as well as providing an alternative to carrier-based telephony, SMS, and Internet bandwidth.
Android-IA is an open source dsitribution of Android for devices with Intel Core processors distributed on 01.org. This presentation will describe some of the enhancements made to Android so that a single binary image runs well on a variety of off-the-shelf tablets and convertible notebooks.
This session aims to give you the tools to import the real world into the programming scope of your trusty $30 microcontroller, by covering the technology fundamentals and integration essentials of a wide variety of sensors, as well as providing a few alternative power schemes, some actuator examples and even mobility options to increase the variety of your design arsenal.
What if we could catch accessibility regressions the way we catch other behavioral regressions? We will describe some tools and techniques that we've used to catch the "low-hanging" bugs that can make the difference between accessibility and inaccessibility.
BASH is a simple multiplatform alternative to Perl, Python, and Ruby. Join Jason Brittain of eBay's Platform Frameworks group to hear why you should consider using BASH, and when it's the right choice over other programming languages. You'll also see several code example tips and tricks for coding your common modern tasks in BASH.
Ever wanted to do some cool "Minority Report"-like project to detect hand gestures, face detection etc and that too using open source software? In this hands-on tutorial we will teach the basics of the world's most popular open source computer vision libraries, OpenCV and OpenNI library for 2D/3D image processing. We will also show some cool demos on the same using Pandaboard, Kinect etc.
In this 40-minute session, I’d like to discuss the basic business needs in several use-case scenarios that would demonstrate the flexibility of an open-source platform called Drupal, which has made a breakthrough in the CMS community for its extreme flexibility and scalability in rapid development.
Public, private, and hybrid; software, platform, and infrastructure. This talk will discuss the current state of the Platform-as-a-Service space, and why the keys to success lie in enabling developer productivity, and providing openness and choice. We'll do this by considering the success of Open Source in general, and then look at the Cloud Foundry project and its growing ecosystem.
Come learn how to design your own keyboard. We'll talk about everything from open source microcontroller firmware options to the basics of fabrication and soldering. You'll walk away from this talk with everything you need to know to build a keyboard from scratch -- even if you've never touched a soldering iron.
ZooKeeper is the unsung hero. Although a critical component, ZooKeeper is often noticed only after it’s missing. In this presentation, we'll talk about how to efficiently resolve some of the common issues that can cause ZooKeeper’s unavailability. An impenetrable ZooKeeper makes for a healthy cluster.
Google App Engine allows you to build web applications on the same scalable systems that power Google applications. In this session we’ll dive into the best practices for writing scalable PHP applications on the App Engine platform.
Designers and developers have been afraid of the variety of Android flavors for way too long. Android borrows a lot of concept from the web, and we can use the same techniques to cater to the different OS versions and form factors.
Can a corporate predator become a community herbivore? Perhaps - corporations take a journey from control freak to community contributor. Hear about the journey and the key changes that can make it succeed.
You have hundreds of CPAN module dependencies in your Perl application code, and want to always run it with the exact same version on your development, testing and production environments. Carton, with the power of cpanminus 1.6, lets you exactly do that.
To succeed in a world of increased competition, open source projects need to deploy many tools including community management, marketing, governance and tooling. We will show, using Xen as a case study, what happens when a project fails to do this well, and demonstrate how a it can recover from past mistakes through good change management.
You're a fantastic developer/coder of all trades/project manager/designer/sysadmin - but you want to be able to do a little more. What's your strategy for being able to choose your next level up?
We’ll review: strategic and tactical steps, choosing your adventure and acting on it from both a business perspective of a 'career track' as well as ways to be able to participate through open source.
A presentation on the trials and tribulations of moving to a clientside architecture for the web, using open source software and frameworks.
In this session you'll learn how to effectively use software development toolkits that operate across multiple clouds. Find out how to distinguish between the layers of abstraction to achieve maximum portability or utilize cloud specific features. I'll show examples of multi-cloud toolkit code for Java (jclouds), Node.js (pkgcloud), Python (libcloud), and Ruby (fog).
Open Source is quietly helping shape our society, and you can see its impact on government through the work of Code for America. From making public information more accessible to making public artwork easier to find, Code for America finds innovative ways to make a government more efficient.
Using the public code review and automated testing infrastructure built for the OpenStack project itself, systems administrators for the core infrastructure also take advantage of this system to do systems administration for the project's core infrastructure in the open as well. Will discuss the infrastructure, tests we run against our changes and the challenges and successes we've encountered.
(Open Source Initiative),
(PostgreSQL Experts, Inc.),
(Holden Web LLC),
(Software Freedom Conservancy),
(Open Invention Network),
Presented by leaders of multiple open source non-profit foundations, this session introduces choices of governance and organisation for those considering anchoring their community with a non-profit organisation.
By linking together an Ubuntu-based laptop and cloud back-end, developers are able to model an entire environment on their client and then launch it to the cloud. Add to that a community-based library of language profiles to down load and auto-install and you have fluid Open Source end-to-end environment to build test and deploy.
Last year in CNNMoney’s Best Jobs for Fast Growth, software jobs were 7 of the top 20, but averaged a “C” for benefit to society. We’re calling BS.
How do the largest projects scale development? That’s the question answered in this presentation. We’ll take a look at build environments at the largest scale and discuss the choices these organizations made to create builds and projects that can scale across hundreds or thousands of developers. We'll draw conclusion from specific case studies such as Netflix and LinkedIn.
In this session, we will go through how to design a community path to increase user involvement over time. Much of this will go through how to initiate early user engagement through a value proposition and build on that momentum over time. By creating a strong value proposition, in turn you create opportunity and access for your users and build a stronger, more vibrant community.
Free and open source software is equal parts technology and humanity. Beyond the coding standards, development environments and essential parts of delivering free software the ideals that drive this movement are powerful. This is a reflection on the lessons gleaned from successful F/LOSS communities and a call to action to spread their ideals to other endeavors such as medicine and government.
Does your organization suck at bringing awesome products to market? Are you wishing that you weren't lagging behind your competitors or struggling to create a culture and environment that would enable building the next killer application? If so, come to this business track focused workshop to learn from an experienced entrepreneur how to enable your teams to innovate more effectively.
Once the realm of shadowy government organizations, cryptography now permeates computing. Unfortunately, it is difficult to get correct and most developers know just enough to be harmful for their projects. Together, we’ll go through the basics of modern cryptography and where things can go horribly wrong.
PHP is commonly thought of as a programming language that is used in web development. However, it is also a approachable and powerful language to use for creating daemons. In this session we will discuss why and how we use PHP to run everything from our web interface to our backend processes as part of the Barracuda Backup Service.
In many Performance evaluation studies, you will find comparison made in terms of peak throughput or corresponding response time. This can be misleading. In this brief presentation, we will look into why such metrics can be misleading as well as provide framework and principles about performance evaluation which focuses on being able to provide good service in real world production environments.
SELinux is a mandatory access control mechanism for Linux systems found in several main stream distributions. All those fancy security terms may be scary but in truth with a little bit of knowledge its possible to find out WTF SELinux is saying to you. I'll provide an introduction to SELinux to help ordinary people understand basic SELinux concepts and deal with basic SELinux issues.
Bosh is an open source cloud orchestration tool chain, which will let you deploy your application to a number of clouds, and manage the whole application lifecycle - release engineering, VM creation, VM resizing, operating system upgrades, database & application upgrades.
Successful database applications do not happen by accident. In this talk we will present a half-dozen design patterns for database management to help implement 24x7 applications that handle 100s of terabytes spread over multiple continents on databases like MYSQL. Start out using these patterns now and avoid a lot of pain later.
We are rapidly approaching the age of living spaces filled with smart thermostats, doors, lights, toilets and more. How do we design interfaces for them? How can people manage 200 gadgets each demanding new batteries? What if your networked toaster rats you out to the FBI? We will explore using the classic Three Laws of Robotics to guide interface design of the Internet of Things.
Using both SQL and NoSQL databases in the same application enables you to get the benefits of both kind of database: the scalability and performance of NoSQL and ACID transactions of SQL databases. In this talk, you will learn how to design applications that use this approach.
A quick and fun exploration of prime numbers, Markov chains, graph theory, the underpinnings of public key cryptography, and more. Down with continuous math! Up with the discrete!
“Distinction" is the noun for the adjective “Distinguished". The ACM Distinguished Member Recognition Program recognizes those who have "achieved a significant impact on the computing field.” Curiously, the ideals and practices of Open Source software are heavily under-represented. Why is that? And how do we change that?
Scalability today is no longer a question of architecture, or programming language, but instead two things: message passing and data distribution. With the following patterns under your belt, anyone is well on their way to solving both.
* Message patterns: request-reply, publish-subscribe, push-pull, exclusive pair.
* Data structures: DHTs, Vector clocks, Merkel trees, CRDTs.
The year 2040 is the year when people of color will be the majority in the United States, but minorities are vastly underrepresented in the most important part of the US economy, the tech sector. There's been a lot of discussion about the lack of diversity in Silicon Valley and the technology industry recently and, let's face it, the numbers are not good. But why does it even matter?
The future hardware trend is clear.Moore’s Law will be delivering more cores per chip rather than higher clock rates. As multi-core, multiprocessor systems become cheaper and readily available, more of our applications need to exploit the hardware parallelism to realize exponential performance gains.This is all about how to write efficient java code in the multi core world
Gaining insight on data is even more interesting when it comes from the NFL. See how I take play by play data, combine it with other datasets and gain insight from the data.
DTrace is a facility for dynamically tracing operating system level code paths in real time in production (if you so desire.) But what you may not know is that many programming languages support DTrace as well, including Perl, Python and Erlang. This talk will show you how DTrace helps you find and solve tricky application problems quickly and safely even in production environments.
Contributing to Humanitarian FOSS (HFOSS) projects can provide tangible product benefit to organizations building technology for good, and tremendous impact to their beneficiaries. But it can also offer intangible, and often unexpected, benefit to volunteer contributors, helping them expand beyond their core competencies in ways they may never have imagined.
"Everything counts, and people matter most of all." I wrote these words in my journal at the start of 2012, after I first joined the Obama campaign. Now, one year later, I'm realizing how prescient they were for our work – its development, shape, and shipment – and how acutely they apply to what we do in technology every day.
This session talks about the tension between architecture & design in agile projects, discussing two key elements of emergent design (utilizing the last responsible moment and harvesting idiomatic patterns) and how to de-brittlize your architecture, so that you can play nicely with others
A discussion of community building from a psychological perspective. How to recruit people into your project, external and internal motivations, what people regret, self-fulfilling prophecies, confirmation bias, and more.
Two subjects, one session. First, we'll be speaking about how we manage hundreds of git repositories and still get work done. Second, learn about federated services, and how running them can free you from walled gardens.
Web applications are world wide spread nowadays requesting an acceptable response time across all the GEOs. That can be achieved by the use of caching systems. But, how do you know your data can be cached? And even more, how long?
This presentation will show how to use Selenium WebDriver from python and doing web scraping for identifying the datasets and the time frame to use for a web site.
Contributing to Free Software requires a delicate mixture of technical and social skills. Is the developer upstream not being responsive? Does your manager think you're wasting your time? Upstream University has successfully trained developers to become better contributors to projects such as the kernel Linux, and will give each participant a chance to learn new ways of resolving these problems.
Learning the syntax of a new language is easy, but learning to think under a different paradigm is hard. This session helps you transition from an object-oriented imperative programmer to a functional programmer, using Java, Clojure and Scala for examples.
There is a small set of fundamentals that, when well understood, can empower any one to tune any of the garbage collectors in OpenJDK's HotSpot JVM. This is what attendees of this session can expect to learn.
If you have ever wanted to dabble with Apache Hadoop, Hive, HBase or other projects in the Hadoop ecosystem but have been discouraged by the painful process of installation and configuration of these projects, this talk is for you. We will learn how to install Hadoop, Hive and HBase on a cluster by making use of various packages from Apache Bigtop.
Want to learn 3D game programming? Want to learn how to make cool animations with Three.js? Want to make amazing visualizations in 3D? Well, then this is the session for you!
This tutorial will introduce you to: 3D concepts in Three.js, coding for canvas and WebGL, animation techniques, and real world simulation with physics engines. You'll be amazed at what you can create!
Get a thorough introduction to Git and GitHub. You'll leave ready to fork, pull-request, clone, push, pull, log, and fetch with the best of them!
This session provides a primer on WebSocket and Server-Sent Events and their supported use cases. The attendees will learn how to leverage them in their web applications using several code samples through out the talk. Development, deployment, and debugging techniques will be shared with the attendees.
The UserAgent module in the perl web library is tried and true, battle tested (and battle scarred), but sometimes you just want more from your web library - more speed, more features. And sometimes you want less - less typing, less boilerplate. This talk examines four excellent alternatives to LWP::UserAgent: HTTP::Tiny, Mojo::UserAgent, LWP::Curl and Furl.
In this talk we share these "best practices" by building a Go library from the ground up, at each stage discussing the decisions we made and why we made them. In this way the audience should gain an understanding of how to effectively design, build, test, and package their own Go programs and libraries.
Hackerspaces are changing the face of education by applying a DIY principle of Do-ocracy to deficits in the education systems around them and providing places where students can learn engaging topics useful in their lives and careers. Come learn how maker communities worldwide are helping to teach the world, and how we can legitimize the enrichment that goes on behind the shop doors.
Randal Schwartz recounts how he has spent half his life with Perl.
How do you grow the next generation of hackers? As our community gets older, we are making little humans, and we have an excellent opportunity as parents to indoctrinate them with seditious ideas like "it's better to share", and "if you don't like the way things are, change them".
Here's one parent's story of toys and activities for kids from 3 to 10 to grow a new hacker generation.
The biomedical research community is amidst a data revolution driven by the adoption of electronic health records and the arrival of next generation genomic technologies. Researchers require tools that scale with this increase without added complexity. To address this need we have developed Harvest, an open source framework for rapid development of purpose-built data discovery web applications.
Hadoop 2.0 offers major HDFS improvements: new append-pipeline, federation, wire compatibility, NameNode HA, performance improvements, etc. In this session, we'll describe these features, their benefits and the development underway for the next HDFS release. This includes data management features, added support for storage devices and improvements to performance, diagnosability and manageability.
High Availability has become a mandatory feature for databases. MySQL replication is the most used replication solution on the Internet, but a whole family of alternative exists in the MySQL ecosystem. This tutorial walks you through your options and teaches you how to weigh the pro's and con's of each to pick a solution that best matches your use case.
In this workshop, you'll learn how to apply the art and science of constructing enjoyable, engaging games. This is entirely non-electronic; we're not talking about programming, game engine development, or how to approach a publisher with your totally rad idea about how you can have, like Mario only there's explosions. Everything you'll work on will be done with pens, paper, and human brain-meat.
It's widely accepted that learning any new programming language will improve your programming skills in general, but we don't often talk about how. This talk will cover some of the my takeaways after learning Go that have improved my Python and Java skills, as well as cover some bits about why Go is a great choice for those itching to learn a new language.
This talk progresses through a succession of counterexamples (and a few examples) in combining business and open source. We will cover ways to divide your community, withhold value from your customers (paying and not), squander good will, and inhibit adoption.
Many projects would like to have more people doing more stuff, but delegating seems time-consuming. Meanwhile, new contributor enthusiasm is one of the most valuable commodities in the free software world. Great delegators know how to attract enthusiastic new people and maintain their momentum once they've arrived.
This talk will highlight some of the great tools that are available to teach children how much fun coding is. Also some of the different formats used for reaching kids.
Time has changed since the start of Open Source. Companies has now
started to understand that they can use open source without having to
pay for it. How can one today create a viable business around open
Many tech companies and hiring managers would like to hire from a more diverse pool of qualified applicants, but they keep getting the same kinds of candidates. This talk provides specific tips for tweaking recruiting practices to attract a diverse pool of candidates, and offers tips for creating a culture that helps retain a diverse team of tech talent.
GitHub isn’t just for Git anymore. With new projects, as well as open source and SaaS tools you can get back to basics and build websites the old school way. By foregoing the common CMS platform, you can increase agility and transparency, and put the control of your site back in your hands.
Plone is one of the oldest open source Python communities that still releases today. Despite a decade of trials and tribulations, the community is stronger than ever thanks to a unique Python subculture that is passed from "generation to generation". This talk will cover 10 lessons over 10 years on nurturing an open source community that builds character in addition to software.
Object Trampolines are a flyweight pattern: the object is inexpensive to construct and transforms itself on demand. Perl's OO structure makes these relatively easy to implement and use. This talk describes the Object::Trampoline module with applications using DBI and data objects.
Getting everyone in your company or development team on the same page can be a challenge. This on-your-feet workshop will teach fast, fun improv techniques for helping your group to bond and work better together. Learn the secrets of improv-based team building from two professionals who have decades of experience working in open source, Internet start-ups and corporate training.
Learn how inBloom's secure, open-source APIs and services can connect your applications into the ed tech marketplace. Hear how this will enable new learning technologies for students and parents. Examples of early developers that are utilizing this technology to accelerate application development will be showcased.
inBloom Chief Product Officer Sharren Bates will provide an overview of inBloom open-source technologies and its mission of vastly improving K-12 personalized learning. Sharren will review research behind the inBloom vision and what barriers exist today to achieving personalize learning as well as a sample of early, innovative products crossing these barriers with inBloom technology.
This talk is for technical leaders and managers who want their companies to do more in open source. I will give you a CC-licensed presentation template and techniques for explaining open source business models, communities, licensing, and contribution processes to executives and lawyers in your company. You can then customize this for your own company and make the pitch for more OSS involvement.
It's sad that in 2013, var_dump and die are still two of the most common debugging and reflection techniques in PHP. Let's explore the state of interactive debugging in PHP, compare it with what's available in other languages, and apply this with practical tools and techniques which can be used today.
Most companies large and small have shared internal libraries and systems. But ownership of that code often falls onto people with different priorities than the users of the code. We will discuss how you can use open source practices to run internal code bases effectively, provide learning opportunities for employees, and improve your final products.
Apache CloudStack, a project in Incubation, helps an admin or devops engineer build an IaaS cloud. This talk provides a technical description of the CloudStack feature set, deployment options, and integration points with the data center. The project's status and possible future directions will be presented as well.
Debugging concurrency errors can be difficult. Fortunately, Locksmith can help. Locksmith is an open source tool for detecting potential deadlocks in C, C++, and Objective C programs. It can detect common concurrency mistakes.
This new open source library is based concepts first described in
Jeff Hawkins' book On Intelligence and subsequently developed by
Numenta Inc. NuPIC consists of a set of machine learning algorithms
that accurately model layers of neurons in the neocortex. NuPIC's
algorithms continuously learn temporal patterns, make predictions,
and detect anomalous behavior within streaming data.
This is a solid introduction to Apache Hadoop that explains what it is, why it's relevant and how it works. No previous experience is required, and participants will gain a clear understanding of how Apache Hadoop (and many complementary tools) can be used for scalable data processing as well as approaches for integrating it with existing systems.
Go is an open source programming language, developed at Google. Optimized for systems programming, Go combines the ease of a dynamic language with the safety of a statically compiled language, along with support for networked and multicore programming.
It's great knowing what is on TV, but what I really want is how that applies to me. This talk discusses how Hulu has built a scalable content metadata API that can incorporate user specific data.
In this session you'll learn why you can't consider UX and design an optional extra when designing mobile apps, and how to tell an awesome app from a terrible app. In this platform-agnostic design-heavy workshop, you’ll learn how to build wireframes, how to translate those wireframes into actual working Android code, and how to evaluate your designs for future improvement.
Come hear some thoughts about how licensing models affect building an open source community and how their use has evolved over time.
New generation of mobile and web applications use asynchronous messaging extensively. This session will cover protocols and techniques available to use messaging infrastructure directly from web browsers and native mobile applications.
Join us for an in-depth look at native Android Location and GPS capabilities. You'll learn about the many different aspects of the android.location package and how to use it effectively, starting now. We'll apply real-world use cases and demo the results based on different application configurations. In less than one hour you'll learn what typically takes developers several weeks to figure out.
Logging. Everyone does it. Many don't know why they do it. It is often considered a boring chore. A chore that is done by habit rather than for a purpose. But it doesn't have to be! Learn how to build a powerful, scalable open source logging environment with LogStash.
Going from a transactional SQL/ACID-based system, to a scalable NoSQL-based system can be both scary and somewhat mysterious. Many developers don't believe it can be done. It can, however. In this talk, we'll see how and to what degree.
Luigi is a Python module that helps you build complex pipelines of batch jobs. It handles dependency resolution, workflow management, visualization etc. It also comes with Hadoop support built in.
As your team grows and your projects become more complex, you're going to need a certain amount of process. In this talk I'll explain how to add enough engineering management to be effective without driving engineers crazy.
Mirage is a new operating system for the cloud which compiles source code in a functional language (OCaml) into type-safe microkernels that run directly on the public cloud. The compiler specialises appliances such as a web server or database into hundreds of kilobytes, marking a radical shift in how we can manage online services that are always struggling with security isusues.
When hybrid applications are in the center of the discussion, mobile consumers expect fast response time (less than 3 seconds) in order to not switch to other tasks or lose complete interest. This talk will present how this issue was addressed in the design of the Tizen Common Store and tips which can help developers for considering response time when the application is being designed.
Talk will focus on some of the challenges of monitoring a CDN infrastructure and approaches everyone can use to get better at monitoring their own infrastructure using Ganglia including identifying metrics to track, using monitoring for enhanced communication inside the company and better understanding of ones own infrastructure.
Moose continues to emerge as the new standard for writing OO libraries in Perl. It provides a powerful, consistent API for building classes with a minimum of code. It can be customized with reusable components, making it easier to refactor your code as you go. This tutorial will explain what Moose is, how its parts work together, and how to start using Moose today to get more done with less.
Some people will tell you that you need a large, full-stack framework to do web development The Right Way. These people are wrong.
In this talk, we'll focus on four core principles to be a better developer and make your projects more manageable:
- Learn languages, not frameworks
- Build small things
- Less code is better than more
- Create and use simple, readable code
In this session, discover how the community-driven open source projects, Crowbar and Dasein, can enhance the agility of your cloud and big data initiatives. Learn first-hand how users and community members are applying these tools to specific use cases, including OpenStack and Hadoop environments. Also, benefit from our discussion of best practices and lessons learned from real-world deployments.
RepRap 3D printing is the concept of making printers that are made from printed parts. I’ll show off my Open Source Huxley model, built from a kit, and discuss the joy and tears associated with building a printer from parts. We'll discuss the hardware, software, where things are now and how bright the future is for 3D printing.
Many companies need their employees to do more then one job - Programmer, DBA, SysAdmin. The more skills you have, the more you can contribute to the overall success of the company and improve your own job marketability. Learn the basic commands of MySQL Server Administration that every Developer should know, what each does and how to use them.
Netflix has seen tremendous growth in recent years, supporting 800+ device types for more than 30M streaming customers. This growth presents amazing technical challenges. At the center of it all is the Netflix Internal API, quietly handling billions of requests a day. In this session, I will discuss the challenges & solutions, including cloud development, resiliency, scaling, UI support & more.
This talk is going to re-visit some of the "tough parts" of the language by declaring "New Rules" (Bill Maher style) for the language.
For instance: "New rule: Stop using `this` until you fully understand how it gets assigned."
This talk is going to be hard-core on coding and expects a solid understanding of the language.
Successful Open Source and Free Software projects have an abundance of great contributors. A common challenge, however, are those tasks outside the expertise or interest of those contributors. Non-profit organizational homes provide an excellent way to solve that aspect of Open Source and Free Software. This session introduces many options that projects can choose from for a non-profit home.
The 9th Annual O’Reilly Open Source Award winners will be announced.
There has been a strong connection between the terms "web" and "online" for years. The rise of HTML5 and the support of offline mode in most modern browsers changed the play of the game. This session will introduce different ways of storing data on the client as well as highlighting the limitations.
Jeff Hawkins will describe Numenta's vision for machine intelligence. He will give a brief introduction to the technology and describe why Numenta is creating an open source project.
(Massachusetts College of Art and Design)
Digital Media educator Dana Moser will take you through a number of popular options for open source software-based interactions with the Arduino microcontroller and the Raspberry Pi. Includes Processing and PureData (Pd) programming environments for multimedia development.
This talk is about systems performance for enterprise and cloud computing environments. This covers the performance of operating systems themselves, and the performance of applications from operating system context. This talk is intended for any open source operating system, especially the illumos and Linux kernels.
Russ will discuss the decisive competitive edge companies like (mt) Media Temple gains and gives with Open Source programmers.
In the spirit of open source, I'd like to shine a spotlight on depression. Not because it's easy, but because it's important. Mental illness affects many of us, but the stigma attached to it dissuades most people from talking about it openly. That's not how we make progress. With this talk, I want to do my part.
Releasing the source is only half the battle. Collaborating with the community to improve it is what can set an open source project apart. This session details the challenges faced by SparkFun Electronics as it pumped an entire catalog of open hardware projects into GitHub and began collaborating with the community to fix bugs, add features, and advance the technology.
Call us crazy, but here is where you stand up an OpenStack cloud, from
scratch, in three and a half hours. Running full throttle through the
basics of OpenStack, this fast-paced tutorial will whirl through
authentication, image storage, networking, and compute at breakneck
speed. Not for the faint at heart.
A programming language is not enough to build massively scalable fault tolerant cloud based solutions. You need middleware, architectural patterns and tools fit for the purpose. Erlang is no exception. This talk introduces OTP, the defacto framework that comes as part of the Erlang distribution and for decades, has stopped programmers from reinventing the wheel.
Piers Cawley, Senior Programmer, Headforwards.
We strive to create designs that will last. But in doing so, we run the risk of over-engineering: building in so many abstractions at the beginning of a project that it degenerates into unmaintainable code.
What causes these risks, and what can we do about it?
Are you considering an OpenStack cloud implementation? Add this timely session to your OSCON calendar. Tom Fifield, a co-author of the OpenStack Operations Guide, will discuss what it takes, including an introduction to OpenStack, advice on how to interact with the community, deployment approaches, storage and networking decisions, and automating deployment and configuration with popular tools.
Deployment can be a real bugbear for many web developers. From building something easy to deploy and manage; to coming up with a repeatable, consistent process; to continuous deployment…deployment can keep you up at night for months on end. In this talk I'll go through how to get better at deployment, best practices, and lessons learned.
The OpenCompute Hardware Hackathon was designed to bring together electrical, mechanical and software engineers in order to design a novel, low-cost hardware contribution to the OpenComptue project. In this talk, we discuss our team's winning submission, as well as the ideas, people, tools and process that went into the hack.
The Defensive Patent License (DPL) is a new legal mechanism to protect innovators by creating a patent network that is committed to defense and "de-weaponizing" patents. It draws from the theories and values of F/OSS licensing to create obligations that "travel with the patent"--preventing troll from taking over open technologies and pulling them out of the public domain.
Puppet is an immensely powerful tool, but it's not always obvious how to use Puppet correctly. I will explain guiding principles
of responsible Puppet design and architecture, walk through real-life examples to illustrate solid approaches, and illuminate Puppeteers of all skill levels. As a bonus, I will demonstrate ho
w to integrate into continuous integration platforms!
Learn Puppet hands on. We will set up a puppet master and actually write code. No previous Puppet knowledge needed.
There's a growing crowd of Python users who don't consider themselves beginners anymore. However some may notice behavior that's hard to explain. Why doesn't code behave like it should? Why doesn't "correct" code run correctly? We'll look at Python's memory model & best practices, addressing these issues directly. Let's empower attendees to write good code & not create these bugs to begin with!
The Quantified Self movement is all about keeping measurements about your life in order to track progress in various ways. As geeks we all enjoy playing with new toys, and there are a variety of devices and applications out there to help measure steps, activity and fitness. Combining the data from these devices can help you build tools to track your fitness in a way that makes sense for you.
The ability to create quick prototypes is fantastic, whether you're at a hackathon, trying to create a proof of concept for work, or just playing on your own. This talk will show you how to create quick applications using python, php and node.js on Heroku, Appfog and Nodejitsu.
The Dependency Injection (DI) pattern is getting more and more popular in the PHP world. It focuses on the complete separation of object instantiation and dependency tracking from the business logic resulting in a loosely coupled system. This session will introduce the basics of the DI pattern to the audience as well as sharing real world experience from several projects over the last seven years.
When our dev team hit a rut recently, we spent a year examining ourselves - our motivations and values, our processes and tools, our relationships to each other and our customers, even our physical space. We put what we learned to good use and reenergized the team. In this talk we'll share how we did it, some surprises along the way, and techniques that you can use to help reboot your own team.
Mark Shuttleworth, Founder, Canonical, Ltd.
Imagine an organization designed to create happiness among its workers. I’ll talk about my research for the past several years, companies I’ve visited, struggles against my own preconceptions, the surprising number of others who are pushing on the same ideas and writing books on the subject, things I’ve found that seem like answers, and questions that continue to accumulate.
Failure is inevitable. It's only through frequent and ongoing failure that we can keep our web application resilient. Taking example from the Netflix Simian Army, we'll discuss how inducing failure in your production environment is one way to test fault-tolerance on a regular basis.
C++ brought exceptions to mainstream programming; Java goes further with checked exceptions. But are exceptions the one way to report all errors? Scala and Go suggest there is more than one kind of error, so there should be more than one kind of error reporting, and different responses to errors. I’ll show the Scala and Go approaches to the error problem, and how to apply this to Python.
Just developed a new feature, and looking to try it out? The process of testing new features can be tedious and time consuming.
Rust is a system programming language with emphasis on safety, concurrency, and speed. Herb Sutter, in an article "Welcome to the Jungle", likened multi-core, heterogeneous many-core computing environment to the jungle. Have a trusty rusty knife for all your jungle needs.
This talk looks at how Facebook has redesigned its configuration management system to handle a massive, dynamic, heterogeneous environment with a tiny team and open source software. We will look at the philosophy we use to manage our systems, the implementation of that philosophy, and how you can apply these ideas to any size server footprint, from a handful of servers to a global environment.
Server-side browser push technologies have been around for a while in one way or another, ranging from from crude browser polling to Flash enabled frameworks. In this session you'll get a code-driven walk-through on the evolution and mechanics of server-push technologies.
During the 2012 presidential election Obama For America created an Open Source Voter Registration application. The open source application was released by the Democratic National Committee using an open source license. This was the first time that a national presidential campaign had released technology as an open source license. There was much debate on the licensing of this application.
Is your organization committed to the power of the Java platform but stuck on the Java language? Do you spend your time wishing you could use Scala at work? You’ll learn strategies ranging from using Scala for non-production code to easing your fellow programmers into functional programming. You will hear stories of how other organizations have done this and succeeded.
Software Defined Networking is essential to allow for complete cloud automation and agility and is rapidly evolving to become an invaluable tool for cloud operators. In this talk we will discuss the challenges of virtual machine networking, present techniques developed in the last ten years and show how they led to the third leg of virtualization in the datacenter: network virtualization.
Apache Solr is a Lucene-based blazing fast, highly scalable search engine used in thousands of applications and projects at organizations such as Zappos, Wells Fargo, Getty Images and many more.
This tutorial will provide you with the fundamentals, enabling you to be up and running with Solr in minutes.
How do you know you've written a good program? There are a couple standards
most people use: "works for me" and "all tests pass". If you can get to that
point, you're code is in pretty good shape!
This talk will go beyond "it works" to explore a programming technique
where problems are systematically made obvious and code
naturally becomes correct, clear, and maintainable!
Learn about what has been called "most important numerical algorithm of our lifetime" - the Fast Fourier Transform (FFT). In this talk, you will get foundational knowledge of the Fourier Transform and learn how to use Python to extract useful information from sound clips.
The presentation will discuss the building of a management system for the services and application layer of a cloud-application infrastructure. It will focus on the three key components in open source cloud-computing that don’t come in the box:
o Self-healing application infrastructure
o Dynamic auto-scaling
o Automated guest administration
The Perl community wants YOU to contribute! Whether you can barely write a line of code or have been hacking for years, you can make meaningful contributions!
The best tech companies know that designing products with their users in mind is the key to success. Everyone says "Design" is the new hot skill in the tech world. Not only can open source projects benefit from human-centered design practices, they are in a position to get super charged results. Learn the basics of HCD thinking and practices, and how to incorporate it into your next project.
One of the most popular configuration and cloud management tools, Chef is a powerful platform for rapid provisioning and deployment of servers. Attend this tutorial to learn what benefits Chef can bring, how to get started and best use Chef to meet your needs.
This talk will review various approaches to testing a hybrid application, such as a PhoneGap application, on Android. It will explore the development of testing techniques for Apache Cordova, the open source framework that Adobe PhoneGap is based on, with a focus on both unit testing and functional testing.
After fifteen years combined experience developing software of all types we are done with object inheritance and the compromises that it forces on us. Come learn about elegant, superior solutions to the problems inheritance claims to adequately solve.
This talk is primarily for those who are comfortable developing Apps for the web who want to delve into mobile.
We'll cover core architecture - frameworks, networking, retries and storage. On the UI front, learn what works and what doesn't from the front-lines and how to degrade gracefully on older devices. Learn which APIs to use and which to avoid to make a stellar app your users will love.
In this talk, we'll bring you up to date and answer your questions about the various open source projects at Google. Additionally, Shawn Pearce will update you on Git and Gerrit code review. If you care about the future of Git as a client, you should make time for this talk.
Experience the joy of flying the Parrot AR Drone using the power of Clojure.
We will take a journey that begins with a child's dream of having a "real" robot friend. Along the way, we will discover the blessings of a functional language, the power of the Clojure language, the thrill of flying with a REPL, and maybe even gems of wisdom long lost under the snow of the AI Winter.
This talk will explore some of the legal and policy implications of "post-open source software" or "POSS", a purported phenomenon characterized by development on github, no explicit indication of open source licensing, and no concern for project governance. Is any of this real, and if so, is it actually a problem?
In this keynote, Jay Parikh will provide an overview of the Open Compute Project, a thriving consumer-led community dedicated to promoting more openness and a greater focus on scale, efficiency, and sustainability in the development of infrastructure technologies. Jay will give a brief history of the project and describe its vision for the future, focusing on two new projects within OCP.
The Spring framework, the most widely used enterprise Java technology, has just been updated to 3.2, and work is already underway towards the next generation of Spring. Join Josh Long for a look at the amazing new features in Sprint 3.1 and 3.2, as well as a look at what's in the works.
Tizen is an open-source, standards-based platform targeting multiple device categories such as smartphones, in-vehicle infotainment devices, and smart TVs. Tizen 2.2 has been recently announced with upgraded Web application framework and Native application framework. This talk will present an overview of the latest platform features and SDK provided by Tizen, along with its architecture.
Tom Preston-Werner, Co-founder and CEO, GitHub.
String tables are presented as a solution. This energetic presentation shows their implementation and obvious benefit through illustrative slides and interactive demos in context of popular open-source libraries.
Looking back on 30 years of programming: there's nothing new since 1983. Examples and implications.
Puppet and Chef have grown to have their own conferences, but what about the other tools you use? Lets talk about some unsung tools of DevOps that you should be using to augment your existing toolset.
We will discuss the benefits & advantages of Android for embedded segments and how to take it outside of the mobile phone space.
As new data sets become available through municipal Open Data initiatives, how can these be leveraged to reveal insights and build services for communities? This talk shows Cascalog and Open Data from the City of Palo Alto to create a sample app. Some programming background is helpful, but the emphasis is on process: how to approach large-scale Open Data to build data products for a community.
With growing use of computers in schools, tightening district budgets, evolving learning objectives, and the plethora of available applications, it makes sense to leverage open source software to support public education. Hear of the tales of a hacker turned teacher as he uses a variety of purely open source tools and techniques to enhance math and computer education in an alternative setting.
In this session we'll explore how to give, and receive, useful critiques of our work. We'll talk about the different kinds of critiques that are necessary as an idea develops. The emphasis will be on reviewing subjective work, not the easy stuff like white space at the end of a line.
Leigh will talk briefly about these achievements and more importantly what the future holds for Open Source and Open Data at The White House and the many ways citizens and developers can get involved.
One of the simplest seeming problems is just keeping a daemon running. However, it turns out that keeping a long-lived service simply online can take more than you expect. There are a plethora of different tools for doing this, and each has their own unique failure modes and requirements. Come explore the pitfalls we've encountered and workarounds we use to keep a daemon running at all times.
This tutorial gives you the details you need to become an idiomatic PHP programmer when you're coming from another language. We won't waste time on basics but instead tour the landscape of the "PHP way" to approach tasks and concepts that you already know how to do in another language, such as wrangling types, OO, errors, performance, external packages, and development environment.