Phabricator gdg presentation

Preview:

Citation preview

Nizameddin Ordulu CTO, kapgel

nizam@kapgel.com

Father of two

Who am I?

MIT, BS ’07, Math & Computer Science Master’s in Engineering, ‘10

Who am I?

Worked at Facebook between 10/2010-03/2014

Who am I?

Mainly worked on MySQL compression while at FB

Who am I?

Compression improvements are available in MySQL 5.6

Who am I?

•Courier service & software for restaurants. •Increased efficiency for couriers. •Shorter delivery times for customers. •Ability to track where your food is.

KapGel

•Created by Facebook engineers as a code review tool. •Blossomed into a full-blown collaboration tool over time. •Easy to setup and manage. •Supports SVN, Git, Mercurial, or plain diffs. •Used by Facebook, Dropbox, Asana, Quora, Uber.

Arcanist: Command line client for phabricator. Differential: Review Code Maniphest: Tasks and Bugs. Diffusion: Host and Browse Repositories. Projects: Organize Projects. Phriction: Wiki. Macro: Image Macros and Memes.

•Owners, Notification Rules, Calendar, Blog, and more.

•Command line client for phabricator. •arc diff sends your code changes to phabricator. •You can send multiple revisions for one commit. •Once the code passes the review you can push it. •arc land pushes the diff. •arc unit run unit tests.

Arcanist

•Command line client for phabricator. •arc diff sends your code changes to phabricator.

Arcanist

•Command line client for phabricator. •arc diff sends your code changes to phabricator.

Arcanist

•Command line client for phabricator. •arc diff sends your code changes to phabricator.

Arcanist

•Command line client for phabricator. •arc diff sends your code changes to phabricator.

Arcanist

•Web UI for reviewing code changes. •Comments can be added anywhere in the code. •Context is also displayed.

Differential

•Web UI for reviewing code changes. •Comments can be added anywhere in the code. •Context is also displayed.

Differential

•Web UI for reviewing code changes. •Comments can be added anywhere in the code. •Context is also displayed.

Differential

•Accept the revision or request changes or just comment on it.

Differential

•Accept the revision or request changes or just comment on it.

Differential

•When changes are requested it’s the diff creator’s turn to address the issues expressed by the reviewer.

• Diff should not be pushed to upstream unless it’s accepted on phabricator.

•Use to arc land enforce this.

Differential

•A tool to create tasks and bugs on phabricator. •Every differential revision should have a task. •Commit messages include task numbers.

Maniphest

Maniphest

Maniphest

•Subtasks. •Ability to merge duplicates. •Prioritization.

Maniphest

•List all tasks that belong to a project. •Create workboards which provides a nice scrum-compatible

interface.

Projects

Projects

•Create wiki pages using remarkup. •Automatically links maniphest tasks and differential diffs. •Great for listing bugs and tasks for those bugs.

Phriction

Phriction

Phriction

Macro•Image macros for inserting images to phabricator

comments using remarkup. •Allows conveying the idea using just an image. •Custom macro creation. •Fun to use!

Macro

Macro

Macro

Nizameddin Ordulu CTO, kapgel nizam@kapgel.com