SlideShare uma empresa Scribd logo
1 de 69
Baixar para ler offline
CandyCane
               A Very Sweet Bug Tracking System for You.
                      2011/09/03 CakeFest 2011




2011   9   3
Who am I ?
               $me = array(
                 ‘name’ => ‘Yusuke Ando’,
                 ‘from’ => array(‘Tokyo’,‘New York’),
                 ‘twitter’ => ‘@yando’,
                 ‘lang’ => array(‘PHP’, ‘Ruby’,‘JavaScript’),
                 ‘job’ => array(‘RAKUTEN’,‘LinkShare’),
                 ‘books’ => 3
               );

2011   9   3
http://2011.phpmatsuri.net/page/what-is-php-matsuri


2011   9   3
Agenda


               • Why do we need Bug Tracking System?
               • What is CandyCane?


2011   9   3
Why do we need Bug Tracking System
2011   9   3
What we do.




2011   9   3
What we do.

               • We write software.




2011   9   3
What we do.

               • We write software.
               • Sometimes, we create bugs.




2011   9   3
What we do.

               • We write software.
               • Sometimes, we create bugs.
               • We immediately fix them if we can.



2011   9   3
What we do.

               • We write software.
               • Sometimes, we create bugs.
               • We immediately fix them if we can.
               • Sometimes, we leave them unfixed.


2011   9   3
What we do.

               • We write software.
               • Sometimes, we create bugs.
               • We immediately fix them if we can.
               • Sometimes, we leave them unfixed.
               • What should we do ?

2011   9   3
2011   9   3
“Keeping a database of bugs is one of the
               hallmarks of a good software team.”




2011   9   3
“Keeping a database of bugs is one of the
               hallmarks of a good software team.”
                                                  Joel Spolsky




2011   9   3
BTS Will Save Us.




2011   9   3
BTS Will Save Us.

               • BTS certainly remember bug.




2011   9   3
BTS Will Save Us.

               • BTS certainly remember bug.
               • Nobody need to suffer with Excel crash.



2011   9   3
BTS Will Save Us.

               • BTS certainly remember bug.
               • Nobody need to suffer with Excel crash.
               • We have to learn how to use BTS.


2011   9   3
Major 6 BTS




2011   9   3
Bugzilla (1998)




2011   9   3
Mantis (2000)




2011   9   3
Trac(2006)




2011   9   3
Redmine(2006)




2011   9   3
PivotalTracker(2008)




2011   9   3
JIRA




2011   9   3
BTS Trends

               • Richer User Interface.
               • Multiple projects support.
               • Customizability, and plugin support.
               • Agile development capability.
               • SaaS (but you may need subscription.)

2011   9   3
is cute.

               • Built on Ruby on Rails.
               • GPL
               • Flexible dashboard for admins.
               • Easy to develop plugin.
               • Pretty popular in Japan.

2011   9   3
Stats on Google Trends




2011   9   3
Forbidden Truth




2011   9   3
Redmine Books.




2011   9   3
2011   9   3
Registered Users


               reach 1,000 user account within 2
                   years. both developers and
                 business people have access to
                            Redmine.




                                                   about 2 years

2011   9   3
2011   9   3
Practices.

               • Turned off unnecessary high load features.
                 (Repo viewer, Documents, Attachment)
               • Made custom plugin.
               • Be nice for Excel peoples.

2011   9   3
Why Not Start Using
                Redmine Now?


2011   9   3
Why Not Start Using
                Redmine Now?
                Because,You Can Use CandyCane!



2011   9   3
What is CandyCane?




2011   9   3
What is CandyCane?




2011   9   3
CandyCane

               • A Bug Tracking System built on CakePHP.
               • GPL
               • Started in April 2009.
               • v0.8
               • 2nd brother of Redmine on Ruby on Rails.

2011   9   3
Redmine Family


                0.8


               1.1.1



               1.2.1     2.2.0    0.8
2011   9   3
Beginning
               • April, 2009.
               • Rewrite in CakePHP, line by line.
               • 8 good CakePHP developers.
               • Using git to maximize development speed.
               • Epic 100-hours of Hackathon.
               • Coding hell.
2011   9   3
2011   9   3
2011   9   3
2011   9   3
2011   9   3
2011   9   3
Use every trick we
                        know.
               • Component
               • Behavior
               • Helper
               • Routing
               • Unit Testing
               • Plugin, Theme
2011   9   3
CI on Jenkins




2011   9   3
2011   9   3
2011   9   3
if($candycane == $redmine)
           {
             echo ‘Oh, It is very similar :)’;
           }

2011   9   3
Advantage of CC

               • 2-minutes installation.
               • Practical Features.
               • Built on CakePHP.
                 -Not require port and memory.
                 - We know how to maintain, extend.



2011   9   3
2-minutes installation
               • Unpack the archive under your webroot.
               • Access the index with a browser.
               • Type in your existing database setting.
               • That’s it!
               • == WordPress
               • Demo
2011   9   3
Practical!

               • 134 actions.
               • Up from 40 when we started.
               • Basic issue management are available.
               • Trimed verbose features.
                 (Repo Viewer, Documenting, Forum)



2011   9   3
Main Features
               • Installer        • Roadmap
               • Accounts         • Time Tracking
               • Multi Projects   • Search
               • Permissions      • Custom Query
               • i18n             • News
               • Issues           • Wiki
2011   9   3
Installer

               • Implemented with plugin.
               • Originally from Croogo.
               • Should be reusable plugin.


2011   9   3
2011   9   3
Project

               • Top level category in CandyCane.
               • Create project first.
               • Add users as member of project.
               • Configure wiki page, if you need.

2011   9   3
2011   9   3
Tracker
               • 2nd level group.
               • Correspond workflow in your team.
               • Built in default are Bug, Feature, Support.
               • You can define different workflow for each
                 tracker type.
                 (i.e Bug must be verified by QA after
                 developer fix it.)


2011   9   3
2011   9   3
Issue

               • Basic element of CandyCane.
               • Have many input fields.
               • Store all history of changes.
               • Time tracking is optional.
               • You can setup costom value for each issue.

2011   9   3
2011   9   3
2011   9   3
Version

               • Version correspond to release date.
               • Must be configured, if you want to see
                 beautiful roadmap page.
               • Can be used as itearation or sprint in agile
                 method.



2011   9   3
2011   9   3
Best Practice

               • Think what will you want to see.
               • Leave out the fields you don’t need.
               • Create your plugin if you need.
               • Hand over exported data to Excel guys.

2011   9   3
ToDo

               • Bug fix
               • Migrate to Cake1.3 or Cake2
               • Refactoring!
               • Enhancement

2011   9   3
Need Your Help




  https://github.com/yandod/candycane
2011   9   3

Mais conteúdo relacionado

Semelhante a 20110903 candycane

MacRuby for Fun and Profit
MacRuby for Fun and ProfitMacRuby for Fun and Profit
MacRuby for Fun and ProfitJoshua Ballanco
 
Are app servers still fascinating
Are app servers still fascinatingAre app servers still fascinating
Are app servers still fascinatingAntonio Goncalves
 
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.WO Community
 
Build software like a bag of marbles, not a castle of LEGO®
Build software like a bag of marbles, not a castle of LEGO®Build software like a bag of marbles, not a castle of LEGO®
Build software like a bag of marbles, not a castle of LEGO®Hannes Lowette
 
Your Goat Anti-Fragiled My SnowFlake! Demystifying DevOps Jargon
Your Goat Anti-Fragiled My SnowFlake! Demystifying DevOps JargonYour Goat Anti-Fragiled My SnowFlake! Demystifying DevOps Jargon
Your Goat Anti-Fragiled My SnowFlake! Demystifying DevOps JargonClinton Wolfe
 
Getting your mobile test automation process in place - using Cucumber and Cal...
Getting your mobile test automation process in place - using Cucumber and Cal...Getting your mobile test automation process in place - using Cucumber and Cal...
Getting your mobile test automation process in place - using Cucumber and Cal...Niels Frydenholm
 
The Good, the Bad and the Ugly things to do with android
The Good, the Bad and the Ugly things to do with androidThe Good, the Bad and the Ugly things to do with android
The Good, the Bad and the Ugly things to do with androidStanojko Markovik
 
Django Deployment with Fabric
Django Deployment with FabricDjango Deployment with Fabric
Django Deployment with FabricJonas Nockert
 
State of jQuery June 2013 - Portland
State of jQuery June 2013 - PortlandState of jQuery June 2013 - Portland
State of jQuery June 2013 - Portlanddmethvin
 
Inside Wordnik's Architecture
Inside Wordnik's ArchitectureInside Wordnik's Architecture
Inside Wordnik's ArchitectureTony Tam
 
EMC World 2016 12 Factor Apps FTW
EMC World 2016 12 Factor Apps FTWEMC World 2016 12 Factor Apps FTW
EMC World 2016 12 Factor Apps FTWTommy Trogden
 
JavaSE - The road forward
JavaSE - The road forwardJavaSE - The road forward
JavaSE - The road forwardeug3n_cojocaru
 
John Resig Beijing 2010 (English Version)
John Resig Beijing 2010 (English Version)John Resig Beijing 2010 (English Version)
John Resig Beijing 2010 (English Version)Jia Mi
 
Appcelerator Titanium Intro
Appcelerator Titanium IntroAppcelerator Titanium Intro
Appcelerator Titanium IntroNicholas Jansma
 
Liberty: The Right Fit for Micro Profile?
Liberty: The Right Fit for Micro Profile?Liberty: The Right Fit for Micro Profile?
Liberty: The Right Fit for Micro Profile?Dev_Events
 
Enterprise Strength Mobile JavaScript
Enterprise Strength Mobile JavaScriptEnterprise Strength Mobile JavaScript
Enterprise Strength Mobile JavaScriptTroy Miles
 
How to stuff a 900 pound gorilla into a smartphone
How to stuff a 900 pound gorilla into a smartphoneHow to stuff a 900 pound gorilla into a smartphone
How to stuff a 900 pound gorilla into a smartphoneJoel Maher
 
Rationalize Android Development with StAnD - Clement Escoffier, akquinet
Rationalize Android Development with StAnD - Clement Escoffier, akquinetRationalize Android Development with StAnD - Clement Escoffier, akquinet
Rationalize Android Development with StAnD - Clement Escoffier, akquinetParis Open Source Summit
 
Applying the Unix Philosophy to Django projects: a report from the real world
Applying the Unix Philosophy to Django projects: a report from the real worldApplying the Unix Philosophy to Django projects: a report from the real world
Applying the Unix Philosophy to Django projects: a report from the real worldFederico Capoano
 

Semelhante a 20110903 candycane (20)

MacRuby for Fun and Profit
MacRuby for Fun and ProfitMacRuby for Fun and Profit
MacRuby for Fun and Profit
 
Are app servers still fascinating
Are app servers still fascinatingAre app servers still fascinating
Are app servers still fascinating
 
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.
 
Build software like a bag of marbles, not a castle of LEGO®
Build software like a bag of marbles, not a castle of LEGO®Build software like a bag of marbles, not a castle of LEGO®
Build software like a bag of marbles, not a castle of LEGO®
 
Your Goat Anti-Fragiled My SnowFlake! Demystifying DevOps Jargon
Your Goat Anti-Fragiled My SnowFlake! Demystifying DevOps JargonYour Goat Anti-Fragiled My SnowFlake! Demystifying DevOps Jargon
Your Goat Anti-Fragiled My SnowFlake! Demystifying DevOps Jargon
 
Getting your mobile test automation process in place - using Cucumber and Cal...
Getting your mobile test automation process in place - using Cucumber and Cal...Getting your mobile test automation process in place - using Cucumber and Cal...
Getting your mobile test automation process in place - using Cucumber and Cal...
 
The Good, the Bad and the Ugly things to do with android
The Good, the Bad and the Ugly things to do with androidThe Good, the Bad and the Ugly things to do with android
The Good, the Bad and the Ugly things to do with android
 
Dev Ops without the Ops
Dev Ops without the OpsDev Ops without the Ops
Dev Ops without the Ops
 
Django Deployment with Fabric
Django Deployment with FabricDjango Deployment with Fabric
Django Deployment with Fabric
 
State of jQuery June 2013 - Portland
State of jQuery June 2013 - PortlandState of jQuery June 2013 - Portland
State of jQuery June 2013 - Portland
 
Inside Wordnik's Architecture
Inside Wordnik's ArchitectureInside Wordnik's Architecture
Inside Wordnik's Architecture
 
EMC World 2016 12 Factor Apps FTW
EMC World 2016 12 Factor Apps FTWEMC World 2016 12 Factor Apps FTW
EMC World 2016 12 Factor Apps FTW
 
JavaSE - The road forward
JavaSE - The road forwardJavaSE - The road forward
JavaSE - The road forward
 
John Resig Beijing 2010 (English Version)
John Resig Beijing 2010 (English Version)John Resig Beijing 2010 (English Version)
John Resig Beijing 2010 (English Version)
 
Appcelerator Titanium Intro
Appcelerator Titanium IntroAppcelerator Titanium Intro
Appcelerator Titanium Intro
 
Liberty: The Right Fit for Micro Profile?
Liberty: The Right Fit for Micro Profile?Liberty: The Right Fit for Micro Profile?
Liberty: The Right Fit for Micro Profile?
 
Enterprise Strength Mobile JavaScript
Enterprise Strength Mobile JavaScriptEnterprise Strength Mobile JavaScript
Enterprise Strength Mobile JavaScript
 
How to stuff a 900 pound gorilla into a smartphone
How to stuff a 900 pound gorilla into a smartphoneHow to stuff a 900 pound gorilla into a smartphone
How to stuff a 900 pound gorilla into a smartphone
 
Rationalize Android Development with StAnD - Clement Escoffier, akquinet
Rationalize Android Development with StAnD - Clement Escoffier, akquinetRationalize Android Development with StAnD - Clement Escoffier, akquinet
Rationalize Android Development with StAnD - Clement Escoffier, akquinet
 
Applying the Unix Philosophy to Django projects: a report from the real world
Applying the Unix Philosophy to Django projects: a report from the real worldApplying the Unix Philosophy to Django projects: a report from the real world
Applying the Unix Philosophy to Django projects: a report from the real world
 

Mais de Yusuke Ando

ダイナミック広告の改善と拡大
ダイナミック広告の改善と拡大ダイナミック広告の改善と拡大
ダイナミック広告の改善と拡大Yusuke Ando
 
DevOpsを実現するChef活用テクニック
DevOpsを実現するChef活用テクニックDevOpsを実現するChef活用テクニック
DevOpsを実現するChef活用テクニックYusuke Ando
 
DevOpsを実現する為のChef実践テクニック Chef12対応版
DevOpsを実現する為のChef実践テクニック Chef12対応版DevOpsを実現する為のChef実践テクニック Chef12対応版
DevOpsを実現する為のChef実践テクニック Chef12対応版Yusuke Ando
 
Testing your app with Selenium on Travis CI
Testing your app with Selenium on Travis CITesting your app with Selenium on Travis CI
Testing your app with Selenium on Travis CIYusuke Ando
 
Travis CIで実現するPHPアプリの自動テスト
Travis CIで実現するPHPアプリの自動テストTravis CIで実現するPHPアプリの自動テスト
Travis CIで実現するPHPアプリの自動テストYusuke Ando
 
Shimokita.Unity Detonatorで爆発
Shimokita.Unity Detonatorで爆発Shimokita.Unity Detonatorで爆発
Shimokita.Unity Detonatorで爆発Yusuke Ando
 
Shimokita.Unity RigidbodyとColliderで衝突
Shimokita.Unity RigidbodyとColliderで衝突Shimokita.Unity RigidbodyとColliderで衝突
Shimokita.Unity RigidbodyとColliderで衝突Yusuke Ando
 
Webプログラマの為のUnity入門
Webプログラマの為のUnity入門Webプログラマの為のUnity入門
Webプログラマの為のUnity入門Yusuke Ando
 
ゴールデンウィークに最適な学習コンテンツ
ゴールデンウィークに最適な学習コンテンツゴールデンウィークに最適な学習コンテンツ
ゴールデンウィークに最適な学習コンテンツYusuke Ando
 
Travis CIですぐに始める継続的インテグレーション
Travis CIですぐに始める継続的インテグレーションTravis CIですぐに始める継続的インテグレーション
Travis CIですぐに始める継続的インテグレーションYusuke Ando
 
ブログやサイトのJekyllへの移行
ブログやサイトのJekyllへの移行ブログやサイトのJekyllへの移行
ブログやサイトのJekyllへの移行Yusuke Ando
 
PHPとTravis CIでブラウザテスト
PHPとTravis CIでブラウザテストPHPとTravis CIでブラウザテスト
PHPとTravis CIでブラウザテストYusuke Ando
 
Shimokita.Unity パリの街をユニティちゃんが駆ける
Shimokita.Unity パリの街をユニティちゃんが駆けるShimokita.Unity パリの街をユニティちゃんが駆ける
Shimokita.Unity パリの街をユニティちゃんが駆けるYusuke Ando
 
Engine Yardで作る NetCommons3のクラウド環境
Engine Yardで作る NetCommons3のクラウド環境Engine Yardで作る NetCommons3のクラウド環境
Engine Yardで作る NetCommons3のクラウド環境Yusuke Ando
 
Engine Yard Cloud
Engine Yard CloudEngine Yard Cloud
Engine Yard CloudYusuke Ando
 
最近のCandyCane - PHP版Redmineでタスク管理を始めよう
最近のCandyCane - PHP版Redmineでタスク管理を始めよう最近のCandyCane - PHP版Redmineでタスク管理を始めよう
最近のCandyCane - PHP版Redmineでタスク管理を始めようYusuke Ando
 
PHPの教室「foreachを極める」
PHPの教室「foreachを極める」PHPの教室「foreachを極める」
PHPの教室「foreachを極める」Yusuke Ando
 

Mais de Yusuke Ando (20)

ダイナミック広告の改善と拡大
ダイナミック広告の改善と拡大ダイナミック広告の改善と拡大
ダイナミック広告の改善と拡大
 
DevOpsを実現するChef活用テクニック
DevOpsを実現するChef活用テクニックDevOpsを実現するChef活用テクニック
DevOpsを実現するChef活用テクニック
 
DevOpsを実現する為のChef実践テクニック Chef12対応版
DevOpsを実現する為のChef実践テクニック Chef12対応版DevOpsを実現する為のChef実践テクニック Chef12対応版
DevOpsを実現する為のChef実践テクニック Chef12対応版
 
Testing your app with Selenium on Travis CI
Testing your app with Selenium on Travis CITesting your app with Selenium on Travis CI
Testing your app with Selenium on Travis CI
 
Travis CIで実現するPHPアプリの自動テスト
Travis CIで実現するPHPアプリの自動テストTravis CIで実現するPHPアプリの自動テスト
Travis CIで実現するPHPアプリの自動テスト
 
Shimokita.Unity Detonatorで爆発
Shimokita.Unity Detonatorで爆発Shimokita.Unity Detonatorで爆発
Shimokita.Unity Detonatorで爆発
 
Shimokita.Unity RigidbodyとColliderで衝突
Shimokita.Unity RigidbodyとColliderで衝突Shimokita.Unity RigidbodyとColliderで衝突
Shimokita.Unity RigidbodyとColliderで衝突
 
Webプログラマの為のUnity入門
Webプログラマの為のUnity入門Webプログラマの為のUnity入門
Webプログラマの為のUnity入門
 
ゴールデンウィークに最適な学習コンテンツ
ゴールデンウィークに最適な学習コンテンツゴールデンウィークに最適な学習コンテンツ
ゴールデンウィークに最適な学習コンテンツ
 
Travis CIですぐに始める継続的インテグレーション
Travis CIですぐに始める継続的インテグレーションTravis CIですぐに始める継続的インテグレーション
Travis CIですぐに始める継続的インテグレーション
 
ブログやサイトのJekyllへの移行
ブログやサイトのJekyllへの移行ブログやサイトのJekyllへの移行
ブログやサイトのJekyllへの移行
 
PHPとTravis CIでブラウザテスト
PHPとTravis CIでブラウザテストPHPとTravis CIでブラウザテスト
PHPとTravis CIでブラウザテスト
 
Shimokita.Unity パリの街をユニティちゃんが駆ける
Shimokita.Unity パリの街をユニティちゃんが駆けるShimokita.Unity パリの街をユニティちゃんが駆ける
Shimokita.Unity パリの街をユニティちゃんが駆ける
 
Dev opschef
Dev opschefDev opschef
Dev opschef
 
Paa s and oss
Paa s and ossPaa s and oss
Paa s and oss
 
New relic
New relicNew relic
New relic
 
Engine Yardで作る NetCommons3のクラウド環境
Engine Yardで作る NetCommons3のクラウド環境Engine Yardで作る NetCommons3のクラウド環境
Engine Yardで作る NetCommons3のクラウド環境
 
Engine Yard Cloud
Engine Yard CloudEngine Yard Cloud
Engine Yard Cloud
 
最近のCandyCane - PHP版Redmineでタスク管理を始めよう
最近のCandyCane - PHP版Redmineでタスク管理を始めよう最近のCandyCane - PHP版Redmineでタスク管理を始めよう
最近のCandyCane - PHP版Redmineでタスク管理を始めよう
 
PHPの教室「foreachを極める」
PHPの教室「foreachを極める」PHPの教室「foreachを極める」
PHPの教室「foreachを極める」
 

Último

A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 
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
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
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
 
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
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
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
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Kaya Weers
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
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
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
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
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFMichael Gough
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 

Último (20)

A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 
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
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
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
 
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
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
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
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
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#
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
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)
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDF
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 

20110903 candycane

  • 1. CandyCane A Very Sweet Bug Tracking System for You. 2011/09/03 CakeFest 2011 2011 9 3
  • 2. Who am I ? $me = array( ‘name’ => ‘Yusuke Ando’, ‘from’ => array(‘Tokyo’,‘New York’), ‘twitter’ => ‘@yando’, ‘lang’ => array(‘PHP’, ‘Ruby’,‘JavaScript’), ‘job’ => array(‘RAKUTEN’,‘LinkShare’), ‘books’ => 3 ); 2011 9 3
  • 4. Agenda • Why do we need Bug Tracking System? • What is CandyCane? 2011 9 3
  • 5. Why do we need Bug Tracking System 2011 9 3
  • 7. What we do. • We write software. 2011 9 3
  • 8. What we do. • We write software. • Sometimes, we create bugs. 2011 9 3
  • 9. What we do. • We write software. • Sometimes, we create bugs. • We immediately fix them if we can. 2011 9 3
  • 10. What we do. • We write software. • Sometimes, we create bugs. • We immediately fix them if we can. • Sometimes, we leave them unfixed. 2011 9 3
  • 11. What we do. • We write software. • Sometimes, we create bugs. • We immediately fix them if we can. • Sometimes, we leave them unfixed. • What should we do ? 2011 9 3
  • 12. 2011 9 3
  • 13. “Keeping a database of bugs is one of the hallmarks of a good software team.” 2011 9 3
  • 14. “Keeping a database of bugs is one of the hallmarks of a good software team.” Joel Spolsky 2011 9 3
  • 15. BTS Will Save Us. 2011 9 3
  • 16. BTS Will Save Us. • BTS certainly remember bug. 2011 9 3
  • 17. BTS Will Save Us. • BTS certainly remember bug. • Nobody need to suffer with Excel crash. 2011 9 3
  • 18. BTS Will Save Us. • BTS certainly remember bug. • Nobody need to suffer with Excel crash. • We have to learn how to use BTS. 2011 9 3
  • 25. JIRA 2011 9 3
  • 26. BTS Trends • Richer User Interface. • Multiple projects support. • Customizability, and plugin support. • Agile development capability. • SaaS (but you may need subscription.) 2011 9 3
  • 27. is cute. • Built on Ruby on Rails. • GPL • Flexible dashboard for admins. • Easy to develop plugin. • Pretty popular in Japan. 2011 9 3
  • 28. Stats on Google Trends 2011 9 3
  • 31. 2011 9 3
  • 32. Registered Users reach 1,000 user account within 2 years. both developers and business people have access to Redmine. about 2 years 2011 9 3
  • 33. 2011 9 3
  • 34. Practices. • Turned off unnecessary high load features. (Repo viewer, Documents, Attachment) • Made custom plugin. • Be nice for Excel peoples. 2011 9 3
  • 35. Why Not Start Using Redmine Now? 2011 9 3
  • 36. Why Not Start Using Redmine Now? Because,You Can Use CandyCane! 2011 9 3
  • 39. CandyCane • A Bug Tracking System built on CakePHP. • GPL • Started in April 2009. • v0.8 • 2nd brother of Redmine on Ruby on Rails. 2011 9 3
  • 40. Redmine Family 0.8 1.1.1 1.2.1 2.2.0 0.8 2011 9 3
  • 41. Beginning • April, 2009. • Rewrite in CakePHP, line by line. • 8 good CakePHP developers. • Using git to maximize development speed. • Epic 100-hours of Hackathon. • Coding hell. 2011 9 3
  • 42. 2011 9 3
  • 43. 2011 9 3
  • 44. 2011 9 3
  • 45. 2011 9 3
  • 46. 2011 9 3
  • 47. Use every trick we know. • Component • Behavior • Helper • Routing • Unit Testing • Plugin, Theme 2011 9 3
  • 49. 2011 9 3
  • 50. 2011 9 3
  • 51. if($candycane == $redmine) { echo ‘Oh, It is very similar :)’; } 2011 9 3
  • 52. Advantage of CC • 2-minutes installation. • Practical Features. • Built on CakePHP. -Not require port and memory. - We know how to maintain, extend. 2011 9 3
  • 53. 2-minutes installation • Unpack the archive under your webroot. • Access the index with a browser. • Type in your existing database setting. • That’s it! • == WordPress • Demo 2011 9 3
  • 54. Practical! • 134 actions. • Up from 40 when we started. • Basic issue management are available. • Trimed verbose features. (Repo Viewer, Documenting, Forum) 2011 9 3
  • 55. Main Features • Installer • Roadmap • Accounts • Time Tracking • Multi Projects • Search • Permissions • Custom Query • i18n • News • Issues • Wiki 2011 9 3
  • 56. Installer • Implemented with plugin. • Originally from Croogo. • Should be reusable plugin. 2011 9 3
  • 57. 2011 9 3
  • 58. Project • Top level category in CandyCane. • Create project first. • Add users as member of project. • Configure wiki page, if you need. 2011 9 3
  • 59. 2011 9 3
  • 60. Tracker • 2nd level group. • Correspond workflow in your team. • Built in default are Bug, Feature, Support. • You can define different workflow for each tracker type. (i.e Bug must be verified by QA after developer fix it.) 2011 9 3
  • 61. 2011 9 3
  • 62. Issue • Basic element of CandyCane. • Have many input fields. • Store all history of changes. • Time tracking is optional. • You can setup costom value for each issue. 2011 9 3
  • 63. 2011 9 3
  • 64. 2011 9 3
  • 65. Version • Version correspond to release date. • Must be configured, if you want to see beautiful roadmap page. • Can be used as itearation or sprint in agile method. 2011 9 3
  • 66. 2011 9 3
  • 67. Best Practice • Think what will you want to see. • Leave out the fields you don’t need. • Create your plugin if you need. • Hand over exported data to Excel guys. 2011 9 3
  • 68. ToDo • Bug fix • Migrate to Cake1.3 or Cake2 • Refactoring! • Enhancement 2011 9 3
  • 69. Need Your Help https://github.com/yandod/candycane 2011 9 3