Skip to content

Instantly share code, notes, and snippets.

@willtsai
Last active January 11, 2024 00:42
Show Gist options
  • Save willtsai/47862766d46000611528bfa62dc7e751 to your computer and use it in GitHub Desktop.
Save willtsai/47862766d46000611528bfa62dc7e751 to your computer and use it in GitHub Desktop.
github-universe-2023

GitHub Universe 2023 Trip Notes

Opening Keynote

  • "GitHub is the AI powered developer platform"
  • History and growth of Copilot: 1MM subscribers to date
  • Demo of Copilot chat to set up a project
  • Copilot available in preview on JetBrains IDEs
  • Copilot Chat in Android GitHub mobile
  • AI is powering features all over GitHub, from pair programming to automation and security (code, secrets scanning)
  • Demo of Copilot Chat to answer questions about your codebase
  • Copilot chat extensions
  • GitHub Copilot Partner Program
  • Copilot Enterprise: customized copilot for specific organization (documentation, code, etc.)
  • Copilot Workspace: analyzes issue to suggest code changes and PR to fix

GitHub Copilot: the AI pair programmer for today and tomorrow

  • Streamed this session in the background while attending sprint planning
  • Trends and metrics related to the adoption of Copilot in Accenture
  • Demo of Copilot chat in VS Code
  • Guest speaker from AMD to talk about their switch to VSCode so that they may leverage Copilot

Guest speaker: creator of datasette.io

  • An open source tool for exploring and publishing data (e.g. Wordpress for data)
  • Talked about how he was able to monetize on his open source project, starting from fellowship grants
  • Different models: hosted service, enterprise licensing, etc.
  • Settled on hosted service version - hosted platform called fly.io, able to spin up individual containers per customer
  • Working in the public, sponsors paying for feelancers to support the project
  • "Pay maintainers to speak to your team" -- can come out of companies' training budgets

Guest speaker: Shanea Leven, cofounder and CEO of CodeSee

  • CodeSee is a tool for visualizing codebases
  • Problem: codebases are hard to understand, especially for new developers who are trying to onboard to a new project or if expert no longer on team
  • Challenging to understand the overall system and architecture
  • Being human, reading the code is the least efficient way of understanding the codebase
  • AI-written code is going to make this problem worse
  • How to address: focus on onboarding, self updating documentation,
  • Codesee helps with automating these to provide a better developer experience
  • Codesee has raised $10MM in funding
  • (need to check out Codesee)

Guest speaker: Ron Efroni, cofounder and CEO of Flox based on open source project Nix

  • Raised $27MM for Flox
  • Nix is: declarative language for describing infrastructure, package manager, operating system
  • Flox: bringing Nix to work
  • Created mutual core layer for every developer to work on -- shared environment

flox problems

Flox_solutions

What's in the Octoverse 2023?

  • Martin Woodward walks through the latest State of the Octoverse report on developer community trends
  • Indonesia and Japan developer community growth predicted to grow fastest next year, Germany and Russia grow rate will be slowest
  • Open source growing worldwide, especially in Asia and Africa
  • Generative AI projects are among the fastest growing open source projects
  • C and C++ surprising growth
  • IAC and cloud native centric languages growing fastest
  • Rust community growth was surprisingly the largest
  • Pace of growth of number of public repos with docker files on GH is flattening out
  • Key takeaways:
    • open source growth is strong in terms of new contributors and geographic spread
    • development is being democratized
    • gen AI is bringing in the most new contributors and fueling the growth
    • almost a third of repos with a star has at least one maintainer using copilot

image

fastest growing open source projects by project and contributors

top 10 programming languages

top languages by usage

top languages by growth of contributors

image

Unlocking accelerated innovation without compromising customer trust

  • Panel discussion with security leaders from heavy regulated finance and banking industries (Fidelity, CBA, Deutsche Börse Group, and Bank of England)
  • How to balance innovation and security
  • Shift left -- catch anything silly (e.g. secrets getting committed) and flag for fix immediately
  • Enable security and developers to work under one platform
  • Security everywhere: how to introduce security at the right time in the SDLC (e.g. build, deploy, etc.) protecting the flows, flagging issues immediately to fix
  • Reselience needs to be in place as threat attack times are outpacing response times
  • Metrics dashboard to not only monitor security but also unify the "language" between security, development, and business teams
  • Security culture is key, metrics should send the right signals to incentivize the right behaviors
  • Shipping faster and engineering efficiency tend to be top of mind for leadership teams
  • GitHub Actions allows for automation without needing to change all the applications and services in the organization that have been built up over time and may be Different
  • Security should be in place to enable innovation - reduces risk in moving faster
  • Discussions around regulation and compliance trends (increasing)
  • Take caution when it comes to AI, but are embracing it within guardrails - sandboxed experiments, comprehensive evaluations of risks, data safety, IP security, etc. also need to consider the impact on business and society - e.g. AI-based system deciding whether someone is approved for loan.
  • Need to embrace AI so that we may defend against attackers who are also adopting AI

Driving organizational sustainability with platform engineering

  • Staff SWE from NYT's talking about their platform engineering story
  • Talked about definitions of sustainability and platform engineering -- basically investments for growth and scale
  • Platform engineering is a team that builds tools and services for other teams to use
  • Emphasis on "communal" learning and support to help engineers grow and be successful
  • Platform architecture - focus on modularity or abstraction in their developer platforms to help teams move faster, have to avoid platform chaos - build only what's useful, focus on separation of concerns, avoid building tools from scratch
  • Value documentation a lot, feel that with good documentation, need for some tools may even be eliminated
  • Developer portal platforms that is plugin based is key (e.g. Backstage)
  • Examples of most important components: runtime templates to minimize boilerplate code, runtime templates to abstract standards and best practices, runtime modules to enable standardization in more flexible way (e.g. template functions), package manager and repo

Streamlining DevOps: infrastructure as state at Air France KLM

  • Devops engineers from Air France KLM talking about challenges they've faced with devops
  • IAC was a new difficult, especially when they were used to deploying into private data centers
  • In their migration to cloud, they wanted to adopt full cloud native approach instead of just moving their VMs to the cloud, which meant replatforming all their applications to adopt services like Kubernetes and serverless
  • Both ops and dev are creating their own resources through IAC (e.g. GitHub and Terraform)
  • State management is easy for ops as nothing changes in their workstreams
  • State management is hard for devs as they cannot use Terraform twice on the same object, cannot configure a sub-part of something which is bigger and already delivered by Terraform, which means that devs need to write and maintain a bunch of imperative code on top of what was delivered to them by ops
  • Shared components are delivered by ops but configured by devs, but then devs need to become experts of each components
  • Initial solution: ops set up GitHub Action workflow to configure things on behalf of the dev
  • Final solution: dev can provide configurations via descriptive YAML which then the GH Actions and PowerShell scripts set up by ops can then execute the configurations
  • Demo of their solution

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment