• Scale or Fail: real technical war stories about scaling

    Most tech talks on successfully scaling products will have you believing that scaling is easy, the right choice forward is always obvious, and that it always works out in the end. This tech talk is different. Join us at Sourcegraph for real war stories from respected CTOs, architects, hackers, and heads of engineering as they share the tough moments and make-or-break decisions that separated the startup tech teams that successfully scaled from those that didn’t. Instead of engineering platitudes, you’ll leave with a wealth of lessons that otherwise could only be learned in the trenches of real scaling struggles. The panel will address questions such as: • Before you scaled, what specifically occurred when your site went down to bring it back up (e.g., CTO notices site is down, SSHs into server)? What were the first steps you took to make it more robust? • What was your worst “scale fail” (e.g., when the site went down, lost data, exposed user data, etc.)? How did you recover? What steps did you put in place to prevent it from happening again? • At what point, if any, did you switch from “prototyping mode” to “release mode”? How did you reorient the company? • How did you say “no” to things that would have diverted the company’s focus? What did you say “no” to? • What were the most influential moments or decisions in maintaining a high standard of quality and performance? • What dev tools and project management tools did you use when you started that scaled with your business? Which tools didn't you use? Why? • What commonly accepted wisdom about scaling is completely wrong? • Knowing what you know now, what would you advise a new founder to do in the first year of building their product and company? Scale or Fail Panelists: Oliver Gould (https://www.linkedin.com/in/olivergould) is the CTO and co-founder of Buoyant, a company building infrastructure software to make microservice architectures easier, faster, and more reliable. Prior to starting Buoyant, Oliver was a senior engineer on the operations team at Twitter and helped shepherd the transition from a monolithic Rails application running on ad hoc infrastructure to a service-oriented stack deployed using Apache Mesos and Aurora. He also worked on Twitter's monitoring and tracing infrastructure, including the well-known open-source tracing library, Zipkin. Before Twitter, Oliver was a Senior System Architect at Yahoo. Connect with him via Twitter @olix0r (https://twitter.com/olix0r) Jens Pillgram-Larsen (https://www.linkedin.com/in/jenspillgram) is the Engineering Director of Developer Tools at LinkedIn. The team is responsible for defining and building the infrastructure and platform upon which all of LinkedIn’s software products are developed and delivered. Jens has worked in the area of software development tooling, continuous delivery and automation for the past 5 years. His passion is in moving to faster, incremental and automated software development processes through tooling and culture change. At LinkedIn, he has been a key contributor to the company’s migration to continuous delivery, and is currently working on building an integrated software development environment. Connect with him via Twitter @JensPillgram (https://twitter.com/JensPillgram) Eugene Marinelli (https://www.linkedin.com/in/eugene-marinelli-4047bb1) is working on transforming the post-crisis mortgage industry as co-founder and CTO of Blend. Blend is developing a modern platform that allows banks to provide an efficient, self-serve mortgage application process while complying with ever-changing regulations. The company has grown from a few former Palantir engineers (where Eugene worked prior to Blend) to over 60 employees, with several major mortgage lenders deploying Blend to replace their existing systems. Eugene studied computer science at Carnegie Mellon. Connect with him via Twitter @eugeneiiim (https://twitter.com/eugeneiiim)

  • "Battle of the Minds" Monolithic Applications vs. Microservices

    Location visible to members

    Monolithic Applications vs. Microservices It seems like a simple question: Should monolithic applications be broken up into simpler, more independent microservices? And yet, since “good” software architecture must check many boxes, there is no simple answer. The debate over the relative merits of monolithic applications and microservices is being hashed out across the world, in conference rooms, on IRC and Slack channels, on Twitter, and this Wednesday–it comes to Sourcegraph. Which architecture is best? And are they mutually exclusive? How to transition from one to the other? Join us at Sourcegraph's next developer meetup to hear industry leaders duke it out with insights and perspectives from both sides of the debate. Debaters: Randy Shoup (https://www.linkedin.com/in/randyshoup)is a 25-year veteran of Silicon Valley, and has worked as a senior technology leader at companies ranging from small startups, to mid-sized places, to eBay and Google. He speaks regularly on architecture and scalability, as well as organization and culture. Randy is currently VP Engineering at Stitch Fix in San Francisco. Follow him on Twitter @randyshoup (https://twitter.com/randyshoup) James Waldrop (https://www.linkedin.com/in/jawaldrop) has been building large scale internet applications for 20 years. He wrote and open sourced the Iago load testing library as a result of his experience doing performance engineering at several companies including Salesforce.com and Twitter. He was responsible for developer productivity in the areas of Build, Test Frameworks and Developer Analytics at Twitter and is currently working as a senior software engineer (among other things) at FitBit. Follow him on Twitter @hivetheory (https://twitter.com/HiveTheory) Ben Sigelman (https://www.linkedin.com/in/bensigelman) is a cofounder at LightStep, a company working to transform the way that developers build, understand, and interact with distributed systems. Ben spent nine years at Google where he ate lots of snacks and led the design for Dapper, an always-on distributed tracing system; and Monarch, a high-availability time series collection, storage, and query system. Follow him on Twitter @el_bhs (https://twitter.com/el_bhs) John Billings (https://www.linkedin.com/in/john-billings-79431314) is a Technical Lead for infrastructure at Yelp, where he has been working for the past five years. During this time he has helped teams at Yelp migrate to a service-oriented architecture and also deployed supporting infrastructure such as SmartStack. Prior to working at Yelp, John received his PhD from the University of Cambridge by building compilers for Internet routing protocols. Follow him on Twitter @yelpengineering (https://twitter.com/YelpEngineering)

  • Sustaining the Global Code Commons: Funding Open-Source Projects

    Topic: Sustaining the Global Code Commons: Funding Open-Source Projects Publicly available open-source code makes it easier for everyone—hobbyists and large corporations alike—to build software with less duplication of effort. Join us for a panel discussion with software creators, researchers, and legal experts to uncover the challenges of contributing to the global code commons, as well as new solutions for addressing the problems with the current system. The panel will address questions such as: • Who creates this common code, and who funds it? • What motivates developers to release open source software? • How can developers earn a living writing open source software? • What are the pros and cons of the various licenses for monetizing open source projects? Panelists: Nadia Eghbal (https://www.linkedin.com/in/nadiaeghbal)- Nadia explores how the software industry can better support open-source infrastructure, highlighting current gaps in funding and knowledge. Her work is supported by the Ford Foundation. Previously, Nadia was the technical cofounder of a venture-backed food company and a seed-stage investor at Collaborative Fund. Alan Shreve (https://inconshreveable.com/about.html) - Alan developed and maintains a number of open source projects, many of which are used widely. He is one of the founders of equinox.io (http://equinox.io/) and ngrok.com (http://ngrok.com/). He is passionate about building better educational tools for programmers; how to run sustainable self-funded software businesses; and how we can encrypt internet communications and build a safer and more secure web. Brad Rydzewski (https://www.linkedin.com/in/bradrydzewski) - Brad is the co-founder and creator of Drone.io, an award-winning open source continuous integration solution built on Docker with the Go programming language. At Drone.io, he has launched a cloud edition that executes millions of tests for thousands of open source and commercial projects. Anand Babu (AB) Periasamy (https://twitter.com/abperiasamy) - is a free software contributor, angel investor and an entrepreneur. AB is one of the founders of Minio, an open source cloud storage server. Prior to Minio, AB co-founded Gluster, an open source distributed filesytstem. AB is also on the board of Free Software Foundation - India and has authored GNU FreeIPMI and GNU Freetalk. If you have any questions, feel free to reach out to us. We hope to see you there!

  • Service Oriented at Scale with Armon Dadgar


    In this talk Armon will present Consul, a distributed control plane for the datacenter. Consul aims to provide unified service discovery, monitoring, configuration and orchestration. In addition to providing high-level features, it offers low-level primitives like locking which can be used to effectively build distributed systems. We explore the real world usage of Consul both in powering Atlas and other large enterprises in industry. Bio Armon has a passion for distributed systems and their application to real world problems. He is currently the CTO of HashiCorp, where he brings distributed systems into the world of DevOps tooling. He has worked on Terraform, Consul, and Serf at HashiCorp, and maintains the Statsite and Bloomd OSS projects as well. @armon Food + drinks will be provided. Agenda 6:00-6:30: Food + drinks 6:30-7:30: Armon's talk / Q+A 7:20-7:30: Lightning talks 7:30-8:30: Hangout/wrap up

  • A technical overview of Raft, with Diego Ongaro

    Love computer science, algorithms, and systems? This meetup is just for you! We've invited Diego Ongaro, author of the Raft Consensus Algorithm (used by CoreOS and other large open source projects), to talk about his consensus algorithm, Raft, and to show a sneak peek of his upcoming project, LogCabin. Abstract: Consensus is a fundamental building block for fault-tolerant systems, but it's poorly understood. We struggled to build a real system with Paxos, the most widely used consensus algorithm today. As a result, we developed Raft to be easier to understand. In this talk, I'll give an overview of how Raft works. More info on Raft can be found at http://raftconsensus.github.io (http://raftconsensus.github.io/). Bio: Diego recently completed his PhD with John Ousterhout at Stanford.During his PhD, he worked on RAMCloud (a 5-10 microsecond RTTkey-value store), Raft, and LogCabin (a coordination service builtwith Raft). He's lately been continuing development on LogCabin as an independent contractor.

  • Sourcegraph Hacker Meetup: Andrey Petrov on making an open source project thrive

    We've invited Andrey Petrov (aka @Shazow (https://twitter.com/shazow)), author and maintainer of awesome open source projects like urllib3 (https://sourcegraph.com/github.com/shazow/urllib3) and SSH chat (https://github.com/shazow/ssh-chat), to talk about what it takes to make an open source project thrive: lessons from a few successes and many failures. About Andrey: Python/Javascript/Go codelover. Product builder. Tweet ghostwriter. Cartoonist. Canadian. Aspiring world dominator. YC alum and Xoogler. Cat person. Learn more at http://shazow.net/ Food and drinks will be provided. Please let us know if you have any dietary restrictions.

  • Sourcegraph Hacker Meetup - Getting to 1.0 with Emily Stark of Meteor

    We're excited to announce the presenter for our next meetup, Emily Stark of Meteor! Meteor is an open-source platform for building awesome apps. They just launched 1.0, featuring a brand new package system and a slick PhoneGap integration for building mobile apps. In this talk, Emily will give an overview of the technology in Meteor 1.0 and show off some of the projects they're tackling in the post-1.0 era. About: Emily is a core developer at Meteor Development Group, where she works mostly on the Meteor accounts systems, framework security features, and infrastructure. Before joining the Meteor project, she was a grad student at MIT and an undergrad at Stanford, doing research in web security and browser-based cryptography. Schedule Food & drinks 6–6:30pm Emily Stark 6:30–7:15 Q+A 7:15–7:30 Lightning talks 7:30–7:45

  • Sourcegraph Hacker Meetup 006: HTTP/2


    Schedule 6pm: food, mingling 6:30pm-7:15pm: HTTP/2 7:15pm-7:45pm: lightning talks HTTP/2 The first documented version of HTTP was released in 1995* and has been the backbone of the internet as we know it. But isn't it time for an update? HTTP/2 is an upcoming revision of the age old Internet standard. It keeps almost all the semantics we know and are familiar with from HTTP/1.1 but adds new features that improve performance both in latency and byte efficiency. Many of its features are based on an earlier protocol, SPDY. The final HTTP/2 spec should be published early next year. For the latest protocol details check out http://http2.github.io/http2-spec/index.html About Daniel: Daniel has been working on the network stack at Facebook for the last 2.5 years. His primary focus has been on the software load balancers and HTTP infrastructure within the company. Recently, he's focused on taking our existing proxy code and generalizing it for use in HTTP servers and clients around the company. Find him on Facebook @ facebook.com/daniel.sommermann (http://www.facebook.com/daniel.sommermann) Lightning Talks Negotiating for better offers with Code Insider's Vaibhav Mallya Vaibhav is a software engineer out of (Twitter/Amazon/ UMich). He enjoys Python, Flask, and negotiation, so he started the Code Insider talent agency to help engineers and other folks to make the best careers decisions possible. He'll be speaking on how negotiation is like social engineering, and how you can leverage a few basic principles to get better offers. Djaodjin-SaaS Sebastien Mirolo will talk about djaodjin-saas, the open source Django app that implements the *-as-a-Service* part on your site and will bring up the important questions you need to ask yourself,marketers and accountants before diving into coding the subscription logic for your app. *http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol

  • Sourcegraph Hacker Meetup 005: srclib, an open-source, polyglot src analysis lib

    This week's meetup will focus on srclib (https://srclib.org/), an open-source, polyglot code analysis library built with hackability in mind. srclib makes developer tools like editor plugins and code search better. It supports things like jump to definition, find usages, type inference, and documentation generation. It consists of language analysis toolchains (https://srclib.org/toolchains/overview) (currently for Go, JavaScript, Ruby, and Python) with a common output format (https://srclib.org/api/data-model), and developer tools that consume this format. srclib originated inside ✱ Sourcegraph (https://sourcegraph.com/), where it powers intelligent code search over hundreds of thousands of projects. Lots of developers use srclib editor plugins, and there are 20+ open-source contributors, including projects adding support for new languages such as Java, Dart, and Rust, and vim editor support. Schedule 6pm: food, mingling 6:30pm-7:15pm: main talks 7:15pm-7:45pm: lightning talks Talk #1: srclib architecture How do you create a system to analyze code in multiple languages and represent the results in a language-independent format? What data structure can represent a Go function as well as a Ruby class? How did we design our analysis architecture to make it easy for others to write analyzers for new languages? Beyang Liu will talk about the design of the srclib architecture: why we made certain choices, what other things we tried, and where we're still looking for input from the community. Beyang Liu (@beyang (https://twitter.com/beyang)) is a Sourcegraph co-founder. He likes building products that help people be better creators. Before co-founding Sourcegraph, he worked on data analysis and visualization at Palantir and researched computer vision algorithms in Professor Daphne Koller's lab at Stanford. Talk #2: Editor plugins for dev tools Devs can get srclib's code intelligence features in lots of editors (currently Emacs, Sublime, and Atom). Varun Ramesh will give a demo of the coolest editor features he's seen anywhere and then will talk about how he built srclib's support for Atom. He'll also talk about future possible features that srclib could provide in your editor. Varun Ramesh (https://sourcegraph.com/rameshvarun/.repositories) is a CS undergrad at Stanford with a strong background in full-stack development and graphics programming. When not coding for work, Varun is coding for fun at hackathons and game jams. Talk #3: Compiling the web using srclib, at Sourcegraph How do you take a code analyzer that works on a single project and scale it up to hundreds of thousands of open-source projects? How do you compute relationships between projects on a function level and generate statistics over hundreds of millions of function calls? This talk describes how Sourcegraph runs srclib to "compile the web" on Sourcegraph.com (https://sourcegraph.com). Quinn Slack is a Sourcegraph co-founder and programmer who loves open-source code and dogs. Before starting Sourcegraph, he co-founded Blend Labs, worked at Palantir, was the first engineer at Bleacher Report, and worked on tcpcrypt with Professor David Mazieres at Stanford. Lightning Talks Sebastien Mirolo will talk about adders ( http://en.wikipedia.org/wiki/Adder_(electronics)) and his opensource waveform visualizer ( https://github.com/fortylines/responsive_waves ) Zach Latta and Kevin Wang will talk about Interactive Markdown (https://github.com/interactive-markdown/interactive-markdown-chrome), a Chrome extension that lets you run backend code in your browser. It uses a CoreOS cluster and a VNC proxy to stream to a web canvas. The backend is written in Go. TechCrunch (http://techcrunch.com/2014/09/07/shower-with-friends-wins-the-disrupt-sf-2014-hackathon-grand-prize-blitz-and-interactive-markdown-are-runners-up/)