SlideShare une entreprise Scribd logo
1  sur  222
Télécharger pour lire hors ligne
P2P Bug Tracking with SD
                   http://syncwith.us


curl fsck.com/sd|perl;
~/sd/bin/sd




    SD を使った P2P バグトラッキング
Hi!


こんにちは
I’m Jesse (obra)


    Jesse です
I own a small
software company


小さな会社の社長をしています
(Best Practical)
I’ve been making
   issue trackers since
            1995

1995 年からバグトラッカーを作ってきました
Our software
  has some bugs


うちのソフトには バグがあります
All software
 has some bugs


どんなソフトでもバグはあります
(All software
  is made of bugs)


ソフトなんてバグでできているのです
I spend a lot of time
   on airplanes...


  私はよく飛行機に乗ります
...and at conferences
     with bad wifi

   ネットにつながりにくい
  イベントにもよく行きます
I need to keep track
of our bugs and our
        work

  でも、バグや仕事から目を
   離すわけにはいきません
I’m the boss


  社長ですから
I have no excuse for
 not doing my work


   言い訳は通用しません
I need to keep track
 of our bugs and our
   work even when I
don’t have net access
 ネットがなくてもバグや仕事は
  管理しないといけないのです
I’ve tried everything


 あらゆる方法を試してみました
Text files


テキストファイル
Text files in
version control

 バージョン管理した
  テキストファイル
IMAP Servers


  IMAP サーバ
RSS Feeds


 RSS フィード
Running RT on
    my laptop


ラップトップで RT を走らせてみたり
Keeping browsers
       open


ブラウザを開きっぱなしにしてみたり
Nothing was quite
      right

  どれもイマイチでした
So we built SD


そこで作ったのが SD です
SD is a Bug Tracker


  SD はバグトラッカーです
SD is a Distributed
   Bug Tracker


SD は分散型のバグトラッカーです
SD Features ( の特徴 )
Tracks bugs             P2P Sync
CLI                     Trac Sync
Web UI                  RT Sync
Scriptable              Hiveminder Sync
Works offline
                        GitHub Sync
Attachments
Comments
                        Google Code Sync
Customizable workflow   Conflict Resolution
Custom properties       Git integration
                        Darcs integration
Principles of
   distributed
   computing

分散コンピューティングの原理
Bill Joy, Tom Lyon,
 Peter Deutsch and
   James Gosling
    created these
ビル・ジョイらはこんなものを作りました
The network is
   reliable


ネットワークが信頼できて
Latency is zero


  遅延時間はゼロで
Bandwidth is infinite


      帯域幅は無限
The network is
    secure


 ネットワークは安全で
Transport cost is zero


       転送料はゼロ
The network is
homogeneous


 ネットワークは均質で
Topology
 doesn't change


ネットワークの構成は変化しない
There is one
administrator


  管理者はひとり
I didn’t make
      those up


私にはそんなもの用意できませんでした
Bill Joy, Tom Lyon,
Peter Deutsch and
James Gosling did

   彼らは用意しましたが
s
         ie of
     lac
 Principles
   l
 a
F distributed
  computing

分散コンピューティングの原理
Those are all LIES


そんなものは真っ赤な嘘です
The network is not
     reliable


ネットワークなんて信頼できません
SD isn’t network-
     dependent

だから SD はネットワークに依存しません
Latency hurts


遅延時間もひどいものです
SD runs at the edge


だから SD は境界上で動作します
Bandwidth is always
    a problem


 帯域幅はいつでも悩みの種です
SD knows which
changesets you’ve
  already seen
だから SD はどのチェンジセット
  を見たか覚えています
The network is
    insecure


ネットワークは安全ではありません
SD doesn’t depend
on a network security
        layer
 だから SD はネットワークのセキ
  ュリティ層には依存しません
Topology is
unpredictable
  and fluid
ネットワークの構成は予測
 できませんし流動的です
SD is topology-
   agnostic

だから SD は構成不可知
 論の立場をとります
There is no
administrator


管理者なんていません
(But there are many
  people who think
        they’re
   administrators)
そのつもりでいる人はたくさんいますが
SD lets you
  implement policy in
     the centralized
   systems it syncs to
だから SD は同期先の中央管理システム側で
ポリシーを実装できるようになっています
Transport
 costs money


転送料はタダではありません
SD doesn’t use much
  bandwidth & can use
      non-network
       substrates
 だから SD はあまり帯域幅を使いません。
ネットワーク以外の下位層にも対応しています
The network is
 heterogeneous


ネットワークは均質ではありません
SD is designed to
  sync to foreign
      systems
だから SD は外部のシステムと同期
  できるようになっています
SD runs locally


SD はローカルで実行できます
SD plays well
    with others


ほかのソフトともうまくつきあえます
It syncs
the way you do


同期の取り方は人間と同じ
Clone a project’s bug
database (over HTTP)

 (HTTP 経由で ) プロジェクトの
バグデータベースのクローンを作って
Work offline


オフラインで作業して
Pull changesets from
  anyone you work
         with

仕事仲間からチェンジセットを取ってきて
Publish your
database replica with
       rsync

データベースの複製を rsync で公開
Topology doesn’t matter...




 ネットワークの構成なんて関係ありません
Don’t worry


  ご心配なく
It won’t break


それでも壊れませんから
SD learns how to
  resolve each
    conflict...
SD は衝突の解決策をひとつ
  ひとつ学んでいきます
...based on how
  everyone else
    resolves it
 ベースとなるのは、ほか
の人がどう解決したかです
Using SD (CLI)


 SD の使い方 (CLI)
Getting Started


  使ってみましょう
SD Shell

 $ sd

  シェル
./
Getting help


$ sd help
    ヘルプ
Creating a new
   project


 $ sd init
新規プロジェクトの作成
Project settings


$ sd settings
  プロジェクトの設定
Config file


$ sd config
  設定ファイル
Create a bug


$ sd ticket create

    バグ情報を登録する
Listing bugs


$ sd ticket list
   バグ情報の一覧表示
Show a bug


$ sd ticket show
   バグ情報を表示する
Update a bug


$ sd ticket update

    バグ情報を更新する
Log


$ sd log
   ログ
Git Integration


  $ git sd
    Git に統合
Using SD (Web)


 SD の使い方 (Web)
Web? Isn’t SD an
 offline tool?

あれ、 SD ってオフラインツー
  ルじゃなかったの?
Local microserver


 ローカルのマイクロサーバ
$ sd browser
Home


ホーム
Create a ticket


 チケットを登録する
Search


 検索
Show a bug


バグ情報を表示する
Update a bug


バグ情報を更新する
Comments


  コメント
History


  履歴
Working with others


 ほかの人と一緒に作業する場合
Working with others
    (Using SD)

 ほかの人と一緒に作業する場合
     (SD を利用 )
Any topology


ネットワークの構成は任意
It doesn’t matter who
    you sync with


同期する相手は誰でもかまいません
You get all the
     updates
    eventually

そのうちすべての更新情報が届きます
Cloning


$ sd clone
   クローン
clone makes a replica
  of someone else’s
       database
 クローンするとほかの人のデー
  タベースの複製を作ります
Pulling


$ sd pull
   取得
pull imports unseen
   changes from
 another database
       replica
ほかのデータベースの複製から未見
  の変更をインポートします
Publishing


$ sd publish
     公開
publish writes out a
     copy of your
  database replica for
        sharing
データベースの複製のコピーをほかの人と共
    有できるように書き出します
(As SD changesets
    and static HTML)


SD のチェンジセットと静的な HTML の形で
Hackathon mode
   (using Bonjour)


ハッカソンモード (Bonjour を使って )
Publish your replica


   $ sd server
Pull updates


$ sd pull --local
      更新を取得
Working with others
(Using other systems)

 ほかの人と一緒に作業する場合
  ( ほかのシステムを使う )
But you already have
    a bug tracker?


もうバグトラッカーを使っていますって?
No Problem!


   大丈夫!
I use at least
    two others.


私も少なくともあと 2 つ使っています
I wrote at least
   two others.


少なくともあと 2 つ書きました
We designed SD talk
  to foreign bug
      trackers
Sd は外部のバグトラッカーともや
りとりできるように設計しました
RT
RT::Client::REST
(By DMITRI, DAMS & AMS)
Hiveminder
Net::Jifty
(by SARTAK)
Trac
Net::Trac
(by JESSE & TSIBLEY)
Google Code
Net::Google::Code
(by SUNNAVY and FAYLAND)
GitHub
Net::GitHub
 (by FAYLAND)
Lighthouse
  (VERY beta!)
Net::Lighthouse
   (by SUNNAVY)
Redmine
(Read-only for now)
Net::Redmine
  (by GUGOD)
Want to help with
Bugzilla, Jira, FogBugz
 or something else?

   Bugzilla とかも使いたい?
Work with
             foreign
           replicas in
              a Star
            Topology
スター構成にすれば外部の複製も使えます
X
              An SD
            node can
             act as a
            gateway
SD のノードはゲートウェイにもなります
Clone


$ sd clone

   クローン
Clone from Google
         Code
$ sd clone --from gcode:k9mail

       Google Code から
Clone from RT
$ sd clone --from "rt:https://rt.cpan.org|DBI|"




                   RT から
Clone from Trac

$ sd clone --from trac:https://trac.parrot.org/parrot


                    Trac から
Clone from GitHub

$ git sd clone --from github:miyagawa/remedie


               Github から
SD reverse engineers
  a database history


SD はデータベースの履歴を逆解析します
Pull


$ sd pull
SD reverse engineers
 a partial database
       history
 SD は部分的なデータベースの
     履歴も逆解析します
Push


$ sd push
SD figures out local
updates and sends
 them upstream
  SD はローカルの更新を見
   つけて上流に送ります
(Then it does a bunch
  of book-keeping)


それからさまざまな記録をつけます
So what’s that all
look like in the real
       world?

  実際の例を見てみましょう
Google Code              Alice’s SD                      Bob’s SD

Create some bugs


                         clone --from gcode:k9mail                                              Alice’s SD makes a full copy of the k9mail from google
                                                                                               code

Someone updates ticket
12

                         ticket update 13

                         ticket create

                         pull --from k9mail                                                    SD integrates upstream changes from Google Code since
                                                                                               Alice ran the ‘clone’ command.

                         push --to k9mail                                                      SD figures out what’s changed locally since the original
                                                                                               ‘clone’ command. SD then sends any changes that
                                                                                               Google Code hasn’t seen upstream as ticket updates.
                                                                                               Alice’s new ticket and her updates to ticket 13 are now
                                                                                               part of the upstream bug database in Google Code

                         publish --to                                                          SD exports a full copy of Alice’s bug database and rsyncs
                         alice.com:public_html/k9                                              it up to alice.com/k9. Anyone browsing alice.com/k9 can
                                                                                               clone her SD replica. (Or see it in static HTML)


                                                         clone --from http://alice.com/k9      Bob makes a full copy of Alice’s SD replica of the k9mail
                                                                                               database. He’s now free to make changes to his local
                                                                                               database replica.

                                                         ticket update 45

                                                         ticket create

                         ticket create

                         ticket update 45

                                                         publish --to bob.com:public_html/k9   Bob publishes his full K9 bug database. Anyone browsing
                                                                                               bob.com/k9 can clone Bob’s K9 replica. Anyone who
                                                                                               already has a copy of Alice or Bob’s database can
                                                                                               incorporate Bob’s new ticket and his changes to ticket
                                                                                               45.

                         pull --from http://bob.com/k9                                         Alice’s SD pulls all previously unseen updates from Bob’s
                                                                                               published database replica and incorporates them. If
                                                                                               Bob's edits to ticket 45 didn't conflict, Alice's SD
                                                                                               incorporate them. If they did conflict, Alice will be
                                                                                               prompted to resolve the conflict.
Installing SD


SD のインストール
It’s time to get SD
  up and running


いよいよ SD を走らせてみましょう
SD is in Perl


SD は Perl で書かれています
SD uses 45-90
CPAN modules

 45 ~ 90 個の CPAN
モジュールを使っています
Are you afraid?


    大変そう?
Don’t be


 心配ご無用
I have a novel idea
         for
 a Perl application
これまでの Perl アプリとは違う
新しいやり方を思いついたんです
One-tweet install.


インストールはつぶやき 1 回分
I’m installing #SD (http://syncwith.us)
after seeing @obra’s talk at #YAPCASIA!




   YAPCASIA で @obra の話を見て #SD
(http://syncwith.us) をインストールしてる
80 bytes! I still have
   60 to work with!


80 バイト !  まだ 60 バイトもありますよ !
I’m installing #SD (http://syncwith.us)
after seeing @obra’s talk at #YAPCASIA!
         curl fsck.com/sd|perl;
     export PATH=~/sd/bin:$PATH; sd




curl fsck.com/sd|perl;
export PATH=~/sd/bin:$PATH; sd
You’ll need:

      curl, perl 5.8,
       C compiler

必要なのは curl, perl 5.8, C コンパイラ
You won’t need:

    CPAN

    CPAN 不要
You won’t need:

to answer prompts

質問に答えたりする必要もなし
You won’t need:

to fix dependencies

 依存モジュールの修正も不要
SD is in Perl


SD は Perl で書かれています
SD uses CPAN
    modules.


CPAN モジュールも使っています
This is a blessing.


   ありがたいことです
This is a curse.


 呪いでもありますが
CPAN
      =
Dependency Hell

 CPAN は依存地獄です
When we first built
SD, we used anything
  we thought was
       useful
 SD を最初に作ったときは便利
 そうなものを使いまくりました
(The first version of
  SD used a SVN
     backend)
最初のバージョンはバックエンドに
   SVN を使っていました
The first ~useful
   version of SD:

最初のバージョンがほぼ使えるように
  なったときはこんな感じでした
123 Dependencies


 123 個の依存モジュール
...a couple hours
       later


    …   数時間後には
54 Dependencies


 54 個の依存モジュール
Only one needs a
   compiler.


コンパイラが必要なのは 1 つだけ
Shipwright gives us
 one-command install

Shipwright のおかげでコマンド 1 つでイン
    ストールできるようになりました
curl fsck.com/sd|perl
export PATH=$PATH:~/sd/bin
What’s that do?


  どうなってるのか
curl
perl
$ head /Library/WebServer/Documents/sd

open (my $tar,'|tar xz 2>/dev/null');
while (<DATA>) {
    print $tar $_;
}
close $tar;
exec("cd sd-build; bin/shipwright-builder 
       --install-base=$ENV{HOME}/sd");
__DATA__
?I?Isd-build.tar?<is?F???_1? 䀌 yH?"#‫{$ٲ‬U???H?eH
...
Shipwright installs a
  few Perl modules...

Shipwright は Perl モジュールをいくつかイ
           ンストールします…
...in order


順にあげると…
Scalar-List-Utils String-BufferStack Class-Accessor Class-Data-Inheritable
Tree-DAG_Node Test-Simple Sub-Uplevel Test-Exception Array-Compare Test-
Warn Template-Declare URI HTTP-Server-Simple Params-Util Class-Inspector
File-ShareDir DBI DBD-SQLite HTML-Tagset HTML-Parser HTML-Tree Crypt-
SSLeay JSON YAML-Syck JSON-XS JSON-DWIW JSON-Any Mouse Any-Moose
Compress-Raw-Zlib Compress-Raw-Bzip2 IO-Compress libwww-perl HTTP-
Response-Encoding WWW-Mechanize WWW-Mechanize-GZip File-Slurp Test-
MockModule Net-GitHub MIME-Types Class-Singleton Params-Validate
version ExtUtils-CBuilder ExtUtils-ParseXS Test-Harness File-Temp Module-
Build DateTime-TimeZone List-MoreUtils DateTime-Locale DateTime File-
MMagic Net-Google-Code Term-ReadLine-Perl Digest-SHA1 Digest-HMAC Net-
IP Net-DNS Net-Bonjour TermReadKey UUID-Tiny XML-Atom-SimpleFeed
Digest-SHA Exporter-Lite IPC-Run3 MIME-Base64-URLSafe Sub-Install Data-
OptList Sub-Exporter Path-Dispatcher Module-Pluggable Time-Progress Carp-
Assert Proc-InvokeEditor Test-HTTP-Server-Simple Module-Refresh Carp-
Assert-More Test-LongString Test-WWW-Mechanize Test-Script-Run
prophet.git Devel-StackTrace Exception-Class Error RT-Client-REST Email-
Address YAML Path-Class Clone Hash-Merge UNIVERSAL-isa UNIVERSAL-can
Test-MockObject Net-Jifty Lingua-EN-Inflect Text-CSV Net-Trac boolean Time-
Piece Test-MockTime DateTime-Format-Natural sd.git
(104 dists with our
   sync plugins)


sync プラグイン経由で 104 個
What’s wrong
 with SD?


SD にバグがあったら?
$ sd clone --from http://fsck.com/~jesse/sd-bugs
Don’t want to
  install SD?


インストールはしたくない?
Point your browser at
http://fsck.com/~jesse/sd-bugs/html



        ブラウザからでも大丈夫
What’s next?


 SD のこれから?
Indexing


インデックス
GPG-signed
  changesets


GPG 署名付きのチェンジセット
Actually releasing 1.0


 本当に 1.0 をリリースすること
Thanks!

     Questions?

curl fsck.com/sd | perl


 http://syncwith.us
 jesse@bestpractical.com

Contenu connexe

Similaire à P2P Bug Tracking with SD

Webken 03: Project Design for Optimaizing User Experience
Webken 03: Project Design for Optimaizing User ExperienceWebken 03: Project Design for Optimaizing User Experience
Webken 03: Project Design for Optimaizing User ExperienceNobuya Sato
 
20090323 Phpstudy
20090323 Phpstudy20090323 Phpstudy
20090323 PhpstudyYusuke Ando
 
Cloud era -『クラウド時代』マッシュアップ技術による地方からの世界発信
Cloud era -『クラウド時代』マッシュアップ技術による地方からの世界発信Cloud era -『クラウド時代』マッシュアップ技術による地方からの世界発信
Cloud era -『クラウド時代』マッシュアップ技術による地方からの世界発信Yusuke Kawasaki
 
20090410 Gree Opentech Presentation (opening)
20090410 Gree Opentech Presentation (opening)20090410 Gree Opentech Presentation (opening)
20090410 Gree Opentech Presentation (opening)Hideki Yamane
 
【13-C-4】 「もう業務はとまらない!オフライン機能を使った業務アプリケーションの実例と最新 Curl 情報」
【13-C-4】 「もう業務はとまらない!オフライン機能を使った業務アプリケーションの実例と最新 Curl 情報」【13-C-4】 「もう業務はとまらない!オフライン機能を使った業務アプリケーションの実例と最新 Curl 情報」
【13-C-4】 「もう業務はとまらない!オフライン機能を使った業務アプリケーションの実例と最新 Curl 情報」devsumi2009
 
20090418 イケテルRails勉強会 第2部Air編
20090418 イケテルRails勉強会 第2部Air編20090418 イケテルRails勉強会 第2部Air編
20090418 イケテルRails勉強会 第2部Air編mochiko AsTech
 
20090410 Gree Opentech Main
20090410 Gree Opentech Main20090410 Gree Opentech Main
20090410 Gree Opentech MainHideki Yamane
 
081210 Idcon 04 Itoh Peopleservice
081210 Idcon 04 Itoh Peopleservice081210 Idcon 04 Itoh Peopleservice
081210 Idcon 04 Itoh PeopleserviceHiroki Itoh
 
Understanding Web Services
Understanding Web ServicesUnderstanding Web Services
Understanding Web Servicesaru85
 
Understanding Web Services
Understanding Web ServicesUnderstanding Web Services
Understanding Web Servicesaru85
 
Open Source Type Pad Mobile
Open Source Type Pad MobileOpen Source Type Pad Mobile
Open Source Type Pad MobileHiroshi Sakai
 
20090522 Candycane
20090522 Candycane20090522 Candycane
20090522 CandycaneYusuke Ando
 
Practical Bug Reporting
Practical Bug ReportingPractical Bug Reporting
Practical Bug Reportingcharsbar
 
Five Minutes Introduction For Rails
Five Minutes Introduction For RailsFive Minutes Introduction For Rails
Five Minutes Introduction For RailsKoichi ITO
 
セキュリティとアジャイル開発のいい関係について考える
セキュリティとアジャイル開発のいい関係について考えるセキュリティとアジャイル開発のいい関係について考える
セキュリティとアジャイル開発のいい関係について考えるMakoto Iguchi
 
20090418 イケテルRails勉強会 第2部Air編 解説
20090418 イケテルRails勉強会 第2部Air編 解説20090418 イケテルRails勉強会 第2部Air編 解説
20090418 イケテルRails勉強会 第2部Air編 解説mochiko AsTech
 
Cloud Computing - クラウドコンピューティング(会津産学懇話会)
Cloud Computing - クラウドコンピューティング(会津産学懇話会)Cloud Computing - クラウドコンピューティング(会津産学懇話会)
Cloud Computing - クラウドコンピューティング(会津産学懇話会)Yusuke Kawasaki
 
How To Create Custom DSLs By PHP
How To Create Custom DSLs By PHPHow To Create Custom DSLs By PHP
How To Create Custom DSLs By PHPAtsuhiro Kubo
 

Similaire à P2P Bug Tracking with SD (20)

Webken 03: Project Design for Optimaizing User Experience
Webken 03: Project Design for Optimaizing User ExperienceWebken 03: Project Design for Optimaizing User Experience
Webken 03: Project Design for Optimaizing User Experience
 
20090323 Phpstudy
20090323 Phpstudy20090323 Phpstudy
20090323 Phpstudy
 
Cloud era -『クラウド時代』マッシュアップ技術による地方からの世界発信
Cloud era -『クラウド時代』マッシュアップ技術による地方からの世界発信Cloud era -『クラウド時代』マッシュアップ技術による地方からの世界発信
Cloud era -『クラウド時代』マッシュアップ技術による地方からの世界発信
 
20090410 Gree Opentech Presentation (opening)
20090410 Gree Opentech Presentation (opening)20090410 Gree Opentech Presentation (opening)
20090410 Gree Opentech Presentation (opening)
 
【13-C-4】 「もう業務はとまらない!オフライン機能を使った業務アプリケーションの実例と最新 Curl 情報」
【13-C-4】 「もう業務はとまらない!オフライン機能を使った業務アプリケーションの実例と最新 Curl 情報」【13-C-4】 「もう業務はとまらない!オフライン機能を使った業務アプリケーションの実例と最新 Curl 情報」
【13-C-4】 「もう業務はとまらない!オフライン機能を使った業務アプリケーションの実例と最新 Curl 情報」
 
20090418 イケテルRails勉強会 第2部Air編
20090418 イケテルRails勉強会 第2部Air編20090418 イケテルRails勉強会 第2部Air編
20090418 イケテルRails勉強会 第2部Air編
 
20090410 Gree Opentech Main
20090410 Gree Opentech Main20090410 Gree Opentech Main
20090410 Gree Opentech Main
 
081210 Idcon 04 Itoh Peopleservice
081210 Idcon 04 Itoh Peopleservice081210 Idcon 04 Itoh Peopleservice
081210 Idcon 04 Itoh Peopleservice
 
Understanding Web Services
Understanding Web ServicesUnderstanding Web Services
Understanding Web Services
 
Understanding Web Services
Understanding Web ServicesUnderstanding Web Services
Understanding Web Services
 
Open Source Type Pad Mobile
Open Source Type Pad MobileOpen Source Type Pad Mobile
Open Source Type Pad Mobile
 
20090522 Candycane
20090522 Candycane20090522 Candycane
20090522 Candycane
 
Practical Bug Reporting
Practical Bug ReportingPractical Bug Reporting
Practical Bug Reporting
 
Five Minutes Introduction For Rails
Five Minutes Introduction For RailsFive Minutes Introduction For Rails
Five Minutes Introduction For Rails
 
セキュリティとアジャイル開発のいい関係について考える
セキュリティとアジャイル開発のいい関係について考えるセキュリティとアジャイル開発のいい関係について考える
セキュリティとアジャイル開発のいい関係について考える
 
20090418 イケテルRails勉強会 第2部Air編 解説
20090418 イケテルRails勉強会 第2部Air編 解説20090418 イケテルRails勉強会 第2部Air編 解説
20090418 イケテルRails勉強会 第2部Air編 解説
 
What Can Compilers Do for Us?
What Can Compilers Do for Us?What Can Compilers Do for Us?
What Can Compilers Do for Us?
 
Cloud Computing - クラウドコンピューティング(会津産学懇話会)
Cloud Computing - クラウドコンピューティング(会津産学懇話会)Cloud Computing - クラウドコンピューティング(会津産学懇話会)
Cloud Computing - クラウドコンピューティング(会津産学懇話会)
 
How To Create Custom DSLs By PHP
How To Create Custom DSLs By PHPHow To Create Custom DSLs By PHP
How To Create Custom DSLs By PHP
 
Ribbit
RibbitRibbit
Ribbit
 

Plus de Jesse Vincent

Building a keyboard from scratch
Building a keyboard from scratchBuilding a keyboard from scratch
Building a keyboard from scratchJesse Vincent
 
So, I made a keyboard
So, I made a keyboardSo, I made a keyboard
So, I made a keyboardJesse Vincent
 
Dancing App Stores - Android Open 2011
Dancing App Stores - Android Open 2011Dancing App Stores - Android Open 2011
Dancing App Stores - Android Open 2011Jesse Vincent
 
Perl 5.16 and Beyond - YAPC::Asia 2011
Perl 5.16 and Beyond - YAPC::Asia 2011Perl 5.16 and Beyond - YAPC::Asia 2011
Perl 5.16 and Beyond - YAPC::Asia 2011Jesse Vincent
 
Perl 5.16 and beyond
Perl 5.16 and beyondPerl 5.16 and beyond
Perl 5.16 and beyondJesse Vincent
 
OSCON 2011 - Perl 5.16 and beyond
OSCON 2011 - Perl 5.16 and beyondOSCON 2011 - Perl 5.16 and beyond
OSCON 2011 - Perl 5.16 and beyondJesse Vincent
 
RT4 - The whole sordid story
RT4 - The whole sordid storyRT4 - The whole sordid story
RT4 - The whole sordid storyJesse Vincent
 
K-9 Mail for Android
K-9 Mail for AndroidK-9 Mail for Android
K-9 Mail for AndroidJesse Vincent
 
SD - A peer to peer issue tracking system
SD - A peer to peer issue tracking systemSD - A peer to peer issue tracking system
SD - A peer to peer issue tracking systemJesse Vincent
 
Hacking your Kindle (OSCON Lightning Talk)
Hacking your Kindle (OSCON Lightning Talk)Hacking your Kindle (OSCON Lightning Talk)
Hacking your Kindle (OSCON Lightning Talk)Jesse Vincent
 
Beginning Kindle Hackery
Beginning Kindle HackeryBeginning Kindle Hackery
Beginning Kindle HackeryJesse Vincent
 
SD, a P2P bug tracking system
SD, a P2P bug tracking systemSD, a P2P bug tracking system
SD, a P2P bug tracking systemJesse Vincent
 
Prophet - Beijing Perl Workshop
Prophet - Beijing Perl WorkshopProphet - Beijing Perl Workshop
Prophet - Beijing Perl WorkshopJesse Vincent
 
Beijing Perl Workshop 2008 Hiveminder Secret Sauce
Beijing Perl Workshop 2008 Hiveminder Secret SauceBeijing Perl Workshop 2008 Hiveminder Secret Sauce
Beijing Perl Workshop 2008 Hiveminder Secret SauceJesse Vincent
 
A brief introduction to RTIR
A brief introduction to RTIRA brief introduction to RTIR
A brief introduction to RTIRJesse Vincent
 
An introduction to RTIR
An introduction to RTIRAn introduction to RTIR
An introduction to RTIRJesse Vincent
 
Prophet: a path out of the Cloud
Prophet: a path out of the CloudProphet: a path out of the Cloud
Prophet: a path out of the CloudJesse Vincent
 
Web 2.0 is Sharecropping
Web 2.0 is SharecroppingWeb 2.0 is Sharecropping
Web 2.0 is SharecroppingJesse Vincent
 
Hiveminder - Everything but the Secret Sauce
Hiveminder - Everything but the Secret SauceHiveminder - Everything but the Secret Sauce
Hiveminder - Everything but the Secret SauceJesse Vincent
 

Plus de Jesse Vincent (20)

Building a keyboard from scratch
Building a keyboard from scratchBuilding a keyboard from scratch
Building a keyboard from scratch
 
So, I made a keyboard
So, I made a keyboardSo, I made a keyboard
So, I made a keyboard
 
Dancing App Stores - Android Open 2011
Dancing App Stores - Android Open 2011Dancing App Stores - Android Open 2011
Dancing App Stores - Android Open 2011
 
Perl 5.16 and Beyond - YAPC::Asia 2011
Perl 5.16 and Beyond - YAPC::Asia 2011Perl 5.16 and Beyond - YAPC::Asia 2011
Perl 5.16 and Beyond - YAPC::Asia 2011
 
Perl 5.16 and beyond
Perl 5.16 and beyondPerl 5.16 and beyond
Perl 5.16 and beyond
 
OSCON 2011 - Perl 5.16 and beyond
OSCON 2011 - Perl 5.16 and beyondOSCON 2011 - Perl 5.16 and beyond
OSCON 2011 - Perl 5.16 and beyond
 
RT4 - The whole sordid story
RT4 - The whole sordid storyRT4 - The whole sordid story
RT4 - The whole sordid story
 
K-9 Mail for Android
K-9 Mail for AndroidK-9 Mail for Android
K-9 Mail for Android
 
Perl 5.12.0
Perl 5.12.0Perl 5.12.0
Perl 5.12.0
 
SD - A peer to peer issue tracking system
SD - A peer to peer issue tracking systemSD - A peer to peer issue tracking system
SD - A peer to peer issue tracking system
 
Hacking your Kindle (OSCON Lightning Talk)
Hacking your Kindle (OSCON Lightning Talk)Hacking your Kindle (OSCON Lightning Talk)
Hacking your Kindle (OSCON Lightning Talk)
 
Beginning Kindle Hackery
Beginning Kindle HackeryBeginning Kindle Hackery
Beginning Kindle Hackery
 
SD, a P2P bug tracking system
SD, a P2P bug tracking systemSD, a P2P bug tracking system
SD, a P2P bug tracking system
 
Prophet - Beijing Perl Workshop
Prophet - Beijing Perl WorkshopProphet - Beijing Perl Workshop
Prophet - Beijing Perl Workshop
 
Beijing Perl Workshop 2008 Hiveminder Secret Sauce
Beijing Perl Workshop 2008 Hiveminder Secret SauceBeijing Perl Workshop 2008 Hiveminder Secret Sauce
Beijing Perl Workshop 2008 Hiveminder Secret Sauce
 
A brief introduction to RTIR
A brief introduction to RTIRA brief introduction to RTIR
A brief introduction to RTIR
 
An introduction to RTIR
An introduction to RTIRAn introduction to RTIR
An introduction to RTIR
 
Prophet: a path out of the Cloud
Prophet: a path out of the CloudProphet: a path out of the Cloud
Prophet: a path out of the Cloud
 
Web 2.0 is Sharecropping
Web 2.0 is SharecroppingWeb 2.0 is Sharecropping
Web 2.0 is Sharecropping
 
Hiveminder - Everything but the Secret Sauce
Hiveminder - Everything but the Secret SauceHiveminder - Everything but the Secret Sauce
Hiveminder - Everything but the Secret Sauce
 

Dernier

4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sectoritnewsafrica
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Mark Simos
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observabilityitnewsafrica
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsYoss Cohen
 
Kuma Meshes Part I - The basics - A tutorial
Kuma Meshes Part I - The basics - A tutorialKuma Meshes Part I - The basics - A tutorial
Kuma Meshes Part I - The basics - A tutorialJoão Esperancinha
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024TopCSSGallery
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Karmanjay Verma
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...itnewsafrica
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Nikki Chapple
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkPixlogix Infotech
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 

Dernier (20)

4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platforms
 
Kuma Meshes Part I - The basics - A tutorial
Kuma Meshes Part I - The basics - A tutorialKuma Meshes Part I - The basics - A tutorial
Kuma Meshes Part I - The basics - A tutorial
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App Framework
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 

P2P Bug Tracking with SD