SlideShare ist ein Scribd-Unternehmen logo
1 von 17
Downloaden Sie, um offline zu lesen
TiConf NYC 2014:
Documenting Your Titanium
Applications
JAMIL HASSAN SPAIN,
@JAMILSPAIN
Little	
  Bit	
  About	
  me	
  
!   NC	
  based	
  Software	
  Engineer,	
  big	
  
linux	
  fan.	
  
!   Started	
  with	
  PHP	
  in	
  early	
  days	
  3.x	
  
or	
  PHP	
  F/I	
  
!   Started	
  with	
  AppC	
  in	
  2011	
  as	
  
Trainer	
  for	
  Certification	
  Programs	
  
!   Currently	
  Architect	
  with	
  Solutions	
  
Engineering	
  Group	
  
Little	
  History	
  on	
  This	
  Topic	
  
!   Built	
  my	
  first	
  large	
  scale	
  project	
  in	
  03/04.	
  Online	
  
Admissions	
  Web	
  Application	
  for	
  school.	
  	
  Really	
  became	
  a	
  
stickler	
  for	
  this	
  process.	
  
!   PHP	
  4/5,	
  LAMP	
  stack,	
  Fedora	
  Linux	
  as	
  base.	
  
!   Ran	
  into	
  2	
  different	
  schools	
  of	
  thought	
  
!   Code	
  should	
  be	
  written	
  to	
  be	
  readable	
  	
  
!   Document	
  regardless	
  to	
  explain	
  code	
  logic	
  
!   My	
  philosophy	
  merges	
  the	
  two,	
  PhpDocumentor	
  was	
  the	
  
cure	
  
Documentation	
  for	
  Titanium	
  Mobile	
  Applications	
  
!   No	
  standards	
  existed	
  for	
  documentation,	
  been	
  a	
  find	
  
your	
  own	
  flavor.	
  	
  
!   #appcelerator	
  uses	
  it	
  for	
  our	
  own	
  SDK	
  documentation.	
  
!   About	
  a	
  year	
  ago	
  internally,	
  after	
  discussion	
  with	
  Rick	
  
Blalock	
  mentioned	
  he	
  had	
  some	
  success	
  using	
  JSDuck.	
  	
  
After	
  playing	
  around	
  with	
  it,	
  we	
  agreed	
  this	
  could	
  be	
  a	
  
good	
  standard	
  to	
  recommend	
  	
  
!   I	
  began	
  the	
  R&D	
  on	
  the	
  best	
  way	
  to	
  implement	
  this	
  as	
  
easy	
  to	
  use	
  for	
  general	
  public	
  use.	
  
A	
  NPM	
  was	
  born	
  
!   Roughly	
  about	
  6	
  
months	
  ago.	
  
!   First	
  initial	
  versions	
  
are	
  out,	
  still	
  young	
  in	
  
usage.	
  Glad	
  to	
  be	
  here	
  
to	
  introduce	
  it	
  
officially	
  to	
  the	
  
community.	
  
One	
  requirement	
  is	
  JS	
  Duck	
  
!   JS	
  Doc	
  Generator	
  supported	
  by	
  Sencha	
  labs	
  
	
  
!   I	
  have	
  always	
  been	
  a	
  fan	
  from	
  Ext.JS	
  days	
  
!   Required	
  for	
  this	
  npm	
  package	
  to	
  work.	
  
!   gem	
  install	
  jsduck	
  
Features	
  for	
  Titanium-­‐JSDuck	
  
!   Installable	
  through	
  npm	
  install	
  	
  
!   CLI	
  options	
  to	
  automate	
  the	
  setup	
  in	
  your	
  mobile	
  
applications	
  
!   Injects	
  itself	
  on	
  every	
  compile	
  to	
  simulator/device	
  
(alloy.jmk	
  post:compile	
  )	
  
!   Options	
  to	
  generate	
  documentation	
  without	
  
compiling	
  
How	
  to	
  Install	
  	
  	
  
!   From	
  command,	
  do	
  a	
  global	
  install	
  for	
  the	
  titanium-­‐
jsduck	
  npm	
  module,	
  Version	
  1.2	
  is	
  the	
  latest	
  
!   URL	
  to	
  package	
  is:	
  
https://www.npmjs.org/package/titanium-­‐jsduck	
  
	
  
Verify	
  Installation	
  
!   Run	
  titanium-­‐jsduck	
  from	
  command	
  line,	
  will	
  return	
  
this	
  help	
  screen	
  
Activating	
  your	
  Mobile	
  Project	
  
!   Open	
  terminal	
  to	
  the	
  root	
  of	
  your	
  titanium	
  project	
  
!   Type	
  the	
  following	
  command:	
  
You’re	
  Done	
  
!   You’re	
  all	
  set	
  from	
  there!!!	
  Start	
  documenting.	
  
!   A	
  few	
  things	
  will	
  change	
  after	
  install	
  
!   If	
  alloy.jmk	
  does	
  not	
  exist,	
  we	
  create	
  it	
  
!   If	
  does,	
  we	
  back	
  it	
  up	
  (alloy.jmk.txt)	
  to	
  preserve	
  any	
  
existing	
  config	
  
!   Docs	
  folder	
  will	
  appear	
  (	
  source	
  for	
  JS	
  Duck	
  to	
  use	
  )	
  
Document	
  Your	
  Code	
  to	
  Integrate	
  
!   Please	
  view	
  Sencha	
  Labs	
  Documentation	
  for	
  
Convention	
  @	
  
https://github.com/senchalabs/jsduck/wiki	
  	
  	
  
! Jsduck	
  will	
  scan	
  your	
  /app	
  JS	
  files	
  for	
  doc	
  syntax	
  
!   Controller	
  files	
  
!   Lib	
  folder	
  contents	
  
How	
  do	
  I	
  View	
  the	
  Documentation	
  
!   3	
  options	
  exist	
  via	
  CLI	
  
!   Detects	
  to	
  see	
  if	
  Browsers	
  are	
  installed	
  in	
  
Applications	
  folder	
  
Typical	
  Dev	
  Workflow	
  
!   Create	
  Mobile	
  Project	
  &	
  Install	
  NPM	
  
!   titanium-­‐jsduck	
  install	
  
!   Code	
  &	
  Document	
  your	
  project	
  
!   docs	
  self	
  generate	
  on	
  compilation,	
  no	
  need	
  to	
  check	
  
into	
  source	
  control	
  
!   Open	
  Browser	
  to	
  View	
  Documentation	
  as	
  you	
  code	
  
!   titanium-­‐jsduck	
  open	
  (	
  first	
  time	
  )	
  
!   titanium-­‐jsduck	
  run	
  (	
  subsequent	
  +	
  refresh	
  browser	
  )	
  
Hello	
  World	
  Demo	
  
TITANIUM-­‐JSDUCK	
  NPM	
  MODULE	
  
Roadmap	
  
!   Additional	
  command	
  line	
  arguments	
  to	
  configure	
  
looks	
  and	
  feel	
  of	
  documentation	
  site	
  
!   Another	
  install	
  option	
  for	
  deluxe	
  documentation	
  to	
  
include	
  (	
  test	
  plans,	
  version	
  release	
  notes,	
  etc	
  )	
  
!   Testing	
  for	
  compatibility	
  with	
  Windows	
  8.1	
  
!   Compatibility	
  with	
  Platino	
  in	
  development	
  
!   Open	
  for	
  more	
  suggestions	
  on	
  more	
  improvements	
  
Thank	
  You	
  
JAMIL	
  HASSAN	
  SPAIN	
  
@jamilspain	
  

Weitere ähnliche Inhalte

Was ist angesagt?

Why continuous deployment keeps on giving
Why continuous deployment keeps on givingWhy continuous deployment keeps on giving
Why continuous deployment keeps on givingIntercom
 
Test Driven Development with OSGi - Balázs Zsoldos
Test Driven Development with OSGi - Balázs ZsoldosTest Driven Development with OSGi - Balázs Zsoldos
Test Driven Development with OSGi - Balázs Zsoldosmfrancis
 
Managing Jenkins with Jenkins (Jenkins User Conference Palo Alto, 2013)
Managing Jenkins with Jenkins (Jenkins User Conference Palo Alto, 2013)Managing Jenkins with Jenkins (Jenkins User Conference Palo Alto, 2013)
Managing Jenkins with Jenkins (Jenkins User Conference Palo Alto, 2013)Gareth Bowles
 
The Butler and the Snake - Continuous Integration for Python
The Butler and the Snake - Continuous Integration for PythonThe Butler and the Snake - Continuous Integration for Python
The Butler and the Snake - Continuous Integration for PythonTimo Stollenwerk
 
Continuous delivery of embedded systems embedded meetup
Continuous delivery of embedded systems   embedded meetupContinuous delivery of embedded systems   embedded meetup
Continuous delivery of embedded systems embedded meetupMike Long
 
Steve Sfartz - How to embed Messaging and Video in your apps - Codemotion Mil...
Steve Sfartz - How to embed Messaging and Video in your apps - Codemotion Mil...Steve Sfartz - How to embed Messaging and Video in your apps - Codemotion Mil...
Steve Sfartz - How to embed Messaging and Video in your apps - Codemotion Mil...Codemotion
 
Android developer's toolbox
Android developer's toolboxAndroid developer's toolbox
Android developer's toolboxAlex Verdyan
 
Porque Odeio Branches
Porque Odeio BranchesPorque Odeio Branches
Porque Odeio BranchesRafael Petry
 
Android Study Jam - Info Session
Android Study Jam - Info SessionAndroid Study Jam - Info Session
Android Study Jam - Info SessionDSCVSSUT
 
Magento Continuous Integration & Continuous Delivery @MM17HR
Magento Continuous Integration & Continuous Delivery @MM17HRMagento Continuous Integration & Continuous Delivery @MM17HR
Magento Continuous Integration & Continuous Delivery @MM17HRDenis Ristic
 
2013 10-28 php ug presentation - ci using phing and hudson
2013 10-28 php ug presentation - ci using phing and hudson2013 10-28 php ug presentation - ci using phing and hudson
2013 10-28 php ug presentation - ci using phing and hudsonShreeniwas Iyer
 
TDD on OSGi, in practice.
TDD on OSGi, in practice.TDD on OSGi, in practice.
TDD on OSGi, in practice.Elian, I.
 
Continuous Integration @ MeetMagento Germany 2015
Continuous Integration @ MeetMagento Germany 2015Continuous Integration @ MeetMagento Germany 2015
Continuous Integration @ MeetMagento Germany 2015Aleksey Razbakov
 
Continuous Integration and PHP
Continuous Integration and PHPContinuous Integration and PHP
Continuous Integration and PHPArno Schneider
 
The Butler and the Snake - JCICPH
The Butler and the Snake - JCICPHThe Butler and the Snake - JCICPH
The Butler and the Snake - JCICPHTimo Stollenwerk
 
Continuous Integration, the minimum viable product
Continuous Integration, the minimum viable productContinuous Integration, the minimum viable product
Continuous Integration, the minimum viable productJulian Simpson
 
10/29 Austin Ansible MeetUp - AnsibleFest Talk & Extending Ansible
10/29 Austin Ansible MeetUp - AnsibleFest Talk & Extending Ansible10/29 Austin Ansible MeetUp - AnsibleFest Talk & Extending Ansible
10/29 Austin Ansible MeetUp - AnsibleFest Talk & Extending Ansibletylerturk
 
Contributing To The Mozilla Codebase
Contributing To The Mozilla CodebaseContributing To The Mozilla Codebase
Contributing To The Mozilla CodebaseSouradeep De
 
Plog2014 doc the-new_deal
Plog2014 doc the-new_dealPlog2014 doc the-new_deal
Plog2014 doc the-new_dealPaul Roeland
 

Was ist angesagt? (20)

Why continuous deployment keeps on giving
Why continuous deployment keeps on givingWhy continuous deployment keeps on giving
Why continuous deployment keeps on giving
 
Test Driven Development with OSGi - Balázs Zsoldos
Test Driven Development with OSGi - Balázs ZsoldosTest Driven Development with OSGi - Balázs Zsoldos
Test Driven Development with OSGi - Balázs Zsoldos
 
Managing Jenkins with Jenkins (Jenkins User Conference Palo Alto, 2013)
Managing Jenkins with Jenkins (Jenkins User Conference Palo Alto, 2013)Managing Jenkins with Jenkins (Jenkins User Conference Palo Alto, 2013)
Managing Jenkins with Jenkins (Jenkins User Conference Palo Alto, 2013)
 
The Butler and the Snake - Continuous Integration for Python
The Butler and the Snake - Continuous Integration for PythonThe Butler and the Snake - Continuous Integration for Python
The Butler and the Snake - Continuous Integration for Python
 
Continuous delivery of embedded systems embedded meetup
Continuous delivery of embedded systems   embedded meetupContinuous delivery of embedded systems   embedded meetup
Continuous delivery of embedded systems embedded meetup
 
Steve Sfartz - How to embed Messaging and Video in your apps - Codemotion Mil...
Steve Sfartz - How to embed Messaging and Video in your apps - Codemotion Mil...Steve Sfartz - How to embed Messaging and Video in your apps - Codemotion Mil...
Steve Sfartz - How to embed Messaging and Video in your apps - Codemotion Mil...
 
Android developer's toolbox
Android developer's toolboxAndroid developer's toolbox
Android developer's toolbox
 
Porque Odeio Branches
Porque Odeio BranchesPorque Odeio Branches
Porque Odeio Branches
 
Android Study Jam - Info Session
Android Study Jam - Info SessionAndroid Study Jam - Info Session
Android Study Jam - Info Session
 
Magento Continuous Integration & Continuous Delivery @MM17HR
Magento Continuous Integration & Continuous Delivery @MM17HRMagento Continuous Integration & Continuous Delivery @MM17HR
Magento Continuous Integration & Continuous Delivery @MM17HR
 
2013 10-28 php ug presentation - ci using phing and hudson
2013 10-28 php ug presentation - ci using phing and hudson2013 10-28 php ug presentation - ci using phing and hudson
2013 10-28 php ug presentation - ci using phing and hudson
 
TDD on OSGi, in practice.
TDD on OSGi, in practice.TDD on OSGi, in practice.
TDD on OSGi, in practice.
 
Continuous Integration @ MeetMagento Germany 2015
Continuous Integration @ MeetMagento Germany 2015Continuous Integration @ MeetMagento Germany 2015
Continuous Integration @ MeetMagento Germany 2015
 
Continuous Integration and PHP
Continuous Integration and PHPContinuous Integration and PHP
Continuous Integration and PHP
 
The Butler and the Snake - JCICPH
The Butler and the Snake - JCICPHThe Butler and the Snake - JCICPH
The Butler and the Snake - JCICPH
 
Continuous Integration, the minimum viable product
Continuous Integration, the minimum viable productContinuous Integration, the minimum viable product
Continuous Integration, the minimum viable product
 
10/29 Austin Ansible MeetUp - AnsibleFest Talk & Extending Ansible
10/29 Austin Ansible MeetUp - AnsibleFest Talk & Extending Ansible10/29 Austin Ansible MeetUp - AnsibleFest Talk & Extending Ansible
10/29 Austin Ansible MeetUp - AnsibleFest Talk & Extending Ansible
 
Intro to Github
Intro to GithubIntro to Github
Intro to Github
 
Contributing To The Mozilla Codebase
Contributing To The Mozilla CodebaseContributing To The Mozilla Codebase
Contributing To The Mozilla Codebase
 
Plog2014 doc the-new_deal
Plog2014 doc the-new_dealPlog2014 doc the-new_deal
Plog2014 doc the-new_deal
 

Andere mochten auch

Animal Farm History
Animal Farm HistoryAnimal Farm History
Animal Farm Historyphilnichols
 
TOLL Cursus Opdracht Module 5-6 Carla Maeyens-Catherine Testelin-Anita Fauco...
TOLL Cursus Opdracht Module  5-6 Carla Maeyens-Catherine Testelin-Anita Fauco...TOLL Cursus Opdracht Module  5-6 Carla Maeyens-Catherine Testelin-Anita Fauco...
TOLL Cursus Opdracht Module 5-6 Carla Maeyens-Catherine Testelin-Anita Fauco...Godot
 
Documenting apps ti confnyc
Documenting apps   ti confnycDocumenting apps   ti confnyc
Documenting apps ti confnycJamil Spain
 
Judge a bookbyitscover
Judge a bookbyitscoverJudge a bookbyitscover
Judge a bookbyitscoverphilnichols
 
Global and china titanium dioxide industry report, 2016 2020
Global and china titanium dioxide industry report, 2016 2020Global and china titanium dioxide industry report, 2016 2020
Global and china titanium dioxide industry report, 2016 2020ResearchInChina
 
Application of titanium alloy
Application of titanium alloyApplication of titanium alloy
Application of titanium alloyCandice Li
 
Titanium and its alloys
Titanium and its alloysTitanium and its alloys
Titanium and its alloysKedir Beyene
 
Titanium and its alloys ppt show
Titanium and its alloys ppt showTitanium and its alloys ppt show
Titanium and its alloys ppt showaamitchak
 
Structured Approach to Solution Architecture
Structured Approach to Solution ArchitectureStructured Approach to Solution Architecture
Structured Approach to Solution ArchitectureAlan McSweeney
 

Andere mochten auch (14)

SOCIAL MEDIA
SOCIAL MEDIASOCIAL MEDIA
SOCIAL MEDIA
 
Social NetWORKS!
Social NetWORKS!Social NetWORKS!
Social NetWORKS!
 
Animal Farm History
Animal Farm HistoryAnimal Farm History
Animal Farm History
 
TOLL Cursus Opdracht Module 5-6 Carla Maeyens-Catherine Testelin-Anita Fauco...
TOLL Cursus Opdracht Module  5-6 Carla Maeyens-Catherine Testelin-Anita Fauco...TOLL Cursus Opdracht Module  5-6 Carla Maeyens-Catherine Testelin-Anita Fauco...
TOLL Cursus Opdracht Module 5-6 Carla Maeyens-Catherine Testelin-Anita Fauco...
 
Documenting apps ti confnyc
Documenting apps   ti confnycDocumenting apps   ti confnyc
Documenting apps ti confnyc
 
Judge a bookbyitscover
Judge a bookbyitscoverJudge a bookbyitscover
Judge a bookbyitscover
 
Global and china titanium dioxide industry report, 2016 2020
Global and china titanium dioxide industry report, 2016 2020Global and china titanium dioxide industry report, 2016 2020
Global and china titanium dioxide industry report, 2016 2020
 
Application of titanium alloy
Application of titanium alloyApplication of titanium alloy
Application of titanium alloy
 
Titanium
TitaniumTitanium
Titanium
 
Titanium ,
Titanium , Titanium ,
Titanium ,
 
Titanium and its alloys
Titanium and its alloysTitanium and its alloys
Titanium and its alloys
 
Titanium ppt
Titanium pptTitanium ppt
Titanium ppt
 
Titanium and its alloys ppt show
Titanium and its alloys ppt showTitanium and its alloys ppt show
Titanium and its alloys ppt show
 
Structured Approach to Solution Architecture
Structured Approach to Solution ArchitectureStructured Approach to Solution Architecture
Structured Approach to Solution Architecture
 

Ähnlich wie TiConf NYC - Documenting Your Titanium Applications

The Development History of PVS-Studio for Linux
The Development History of PVS-Studio for LinuxThe Development History of PVS-Studio for Linux
The Development History of PVS-Studio for LinuxPVS-Studio
 
Shipping NodeJS with Docker and CoreOS
Shipping NodeJS with Docker and CoreOSShipping NodeJS with Docker and CoreOS
Shipping NodeJS with Docker and CoreOSRoss Kukulinski
 
OSCONF Jaipur - A Hitchhiker's Tour to Containerizing a Java application
OSCONF Jaipur - A Hitchhiker's Tour to Containerizing a Java applicationOSCONF Jaipur - A Hitchhiker's Tour to Containerizing a Java application
OSCONF Jaipur - A Hitchhiker's Tour to Containerizing a Java applicationNicolas Fränkel
 
Django Article V0
Django Article V0Django Article V0
Django Article V0Udi Bauman
 
Cross-platform Desktop Apps development using HTML, CSS, JS with Electron
Cross-platform Desktop Apps development using HTML, CSS, JS with ElectronCross-platform Desktop Apps development using HTML, CSS, JS with Electron
Cross-platform Desktop Apps development using HTML, CSS, JS with ElectronEsinniobiwa Quareeb
 
Building Commercial Applications with Oracle Applications Express by Scott Sp...
Building Commercial Applications with Oracle Applications Express by Scott Sp...Building Commercial Applications with Oracle Applications Express by Scott Sp...
Building Commercial Applications with Oracle Applications Express by Scott Sp...Enkitec
 
Hybrid Apps in a Snap
Hybrid Apps in a SnapHybrid Apps in a Snap
Hybrid Apps in a SnapPaulina Gallo
 
Building an Open Source iOS app: lessons learned
Building an Open Source iOS app: lessons learnedBuilding an Open Source iOS app: lessons learned
Building an Open Source iOS app: lessons learnedWojciech Koszek
 
System design for Web Application
System design for Web ApplicationSystem design for Web Application
System design for Web ApplicationMichael Choi
 
Django simplified : by weever mbakaya
Django simplified : by weever mbakayaDjango simplified : by weever mbakaya
Django simplified : by weever mbakayaMbakaya Kwatukha
 
From hello world to goodbye code
From hello world to goodbye codeFrom hello world to goodbye code
From hello world to goodbye codeKim Moir
 
How create react app help in creating a new react applications
How create react app help in creating a new react applications How create react app help in creating a new react applications
How create react app help in creating a new react applications Concetto Labs
 
ChrisSchilling_SideProjects
ChrisSchilling_SideProjectsChrisSchilling_SideProjects
ChrisSchilling_SideProjectsChris Schilling
 
Front-end development introduction (JavaScript). Part 2
Front-end development introduction (JavaScript). Part 2Front-end development introduction (JavaScript). Part 2
Front-end development introduction (JavaScript). Part 2Oleksii Prohonnyi
 
iOS development best practices
iOS development best practicesiOS development best practices
iOS development best practicesMichal Juhas
 
Introduction of deno 1
Introduction of deno 1Introduction of deno 1
Introduction of deno 1Vishal Sharma
 
DevOps Fest 2020. immutable infrastructure as code. True story.
DevOps Fest 2020. immutable infrastructure as code. True story.DevOps Fest 2020. immutable infrastructure as code. True story.
DevOps Fest 2020. immutable infrastructure as code. True story.Vlad Fedosov
 
Native Mobile Application Using Open Source
Native Mobile Application Using Open SourceNative Mobile Application Using Open Source
Native Mobile Application Using Open SourceAxway Appcelerator
 
OSCON Titanium Tutorial
OSCON Titanium TutorialOSCON Titanium Tutorial
OSCON Titanium TutorialKevin Whinnery
 

Ähnlich wie TiConf NYC - Documenting Your Titanium Applications (20)

The Development History of PVS-Studio for Linux
The Development History of PVS-Studio for LinuxThe Development History of PVS-Studio for Linux
The Development History of PVS-Studio for Linux
 
Shipping NodeJS with Docker and CoreOS
Shipping NodeJS with Docker and CoreOSShipping NodeJS with Docker and CoreOS
Shipping NodeJS with Docker and CoreOS
 
OSCONF Jaipur - A Hitchhiker's Tour to Containerizing a Java application
OSCONF Jaipur - A Hitchhiker's Tour to Containerizing a Java applicationOSCONF Jaipur - A Hitchhiker's Tour to Containerizing a Java application
OSCONF Jaipur - A Hitchhiker's Tour to Containerizing a Java application
 
Django Article V0
Django Article V0Django Article V0
Django Article V0
 
Cross-platform Desktop Apps development using HTML, CSS, JS with Electron
Cross-platform Desktop Apps development using HTML, CSS, JS with ElectronCross-platform Desktop Apps development using HTML, CSS, JS with Electron
Cross-platform Desktop Apps development using HTML, CSS, JS with Electron
 
Building Commercial Applications with Oracle Applications Express by Scott Sp...
Building Commercial Applications with Oracle Applications Express by Scott Sp...Building Commercial Applications with Oracle Applications Express by Scott Sp...
Building Commercial Applications with Oracle Applications Express by Scott Sp...
 
Build a chatroom!
Build a chatroom!Build a chatroom!
Build a chatroom!
 
Hybrid Apps in a Snap
Hybrid Apps in a SnapHybrid Apps in a Snap
Hybrid Apps in a Snap
 
Building an Open Source iOS app: lessons learned
Building an Open Source iOS app: lessons learnedBuilding an Open Source iOS app: lessons learned
Building an Open Source iOS app: lessons learned
 
System design for Web Application
System design for Web ApplicationSystem design for Web Application
System design for Web Application
 
Django simplified : by weever mbakaya
Django simplified : by weever mbakayaDjango simplified : by weever mbakaya
Django simplified : by weever mbakaya
 
From hello world to goodbye code
From hello world to goodbye codeFrom hello world to goodbye code
From hello world to goodbye code
 
How create react app help in creating a new react applications
How create react app help in creating a new react applications How create react app help in creating a new react applications
How create react app help in creating a new react applications
 
ChrisSchilling_SideProjects
ChrisSchilling_SideProjectsChrisSchilling_SideProjects
ChrisSchilling_SideProjects
 
Front-end development introduction (JavaScript). Part 2
Front-end development introduction (JavaScript). Part 2Front-end development introduction (JavaScript). Part 2
Front-end development introduction (JavaScript). Part 2
 
iOS development best practices
iOS development best practicesiOS development best practices
iOS development best practices
 
Introduction of deno 1
Introduction of deno 1Introduction of deno 1
Introduction of deno 1
 
DevOps Fest 2020. immutable infrastructure as code. True story.
DevOps Fest 2020. immutable infrastructure as code. True story.DevOps Fest 2020. immutable infrastructure as code. True story.
DevOps Fest 2020. immutable infrastructure as code. True story.
 
Native Mobile Application Using Open Source
Native Mobile Application Using Open SourceNative Mobile Application Using Open Source
Native Mobile Application Using Open Source
 
OSCON Titanium Tutorial
OSCON Titanium TutorialOSCON Titanium Tutorial
OSCON Titanium Tutorial
 

Kürzlich hochgeladen

Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Scott Andery
 
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
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
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
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
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
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
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
 
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
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
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
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 

Kürzlich hochgeladen (20)

Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
 
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
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
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
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
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
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
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
 
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
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
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...
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 

TiConf NYC - Documenting Your Titanium Applications

  • 1. TiConf NYC 2014: Documenting Your Titanium Applications JAMIL HASSAN SPAIN, @JAMILSPAIN
  • 2. Little  Bit  About  me   !   NC  based  Software  Engineer,  big   linux  fan.   !   Started  with  PHP  in  early  days  3.x   or  PHP  F/I   !   Started  with  AppC  in  2011  as   Trainer  for  Certification  Programs   !   Currently  Architect  with  Solutions   Engineering  Group  
  • 3. Little  History  on  This  Topic   !   Built  my  first  large  scale  project  in  03/04.  Online   Admissions  Web  Application  for  school.    Really  became  a   stickler  for  this  process.   !   PHP  4/5,  LAMP  stack,  Fedora  Linux  as  base.   !   Ran  into  2  different  schools  of  thought   !   Code  should  be  written  to  be  readable     !   Document  regardless  to  explain  code  logic   !   My  philosophy  merges  the  two,  PhpDocumentor  was  the   cure  
  • 4. Documentation  for  Titanium  Mobile  Applications   !   No  standards  existed  for  documentation,  been  a  find   your  own  flavor.     !   #appcelerator  uses  it  for  our  own  SDK  documentation.   !   About  a  year  ago  internally,  after  discussion  with  Rick   Blalock  mentioned  he  had  some  success  using  JSDuck.     After  playing  around  with  it,  we  agreed  this  could  be  a   good  standard  to  recommend     !   I  began  the  R&D  on  the  best  way  to  implement  this  as   easy  to  use  for  general  public  use.  
  • 5. A  NPM  was  born   !   Roughly  about  6   months  ago.   !   First  initial  versions   are  out,  still  young  in   usage.  Glad  to  be  here   to  introduce  it   officially  to  the   community.  
  • 6. One  requirement  is  JS  Duck   !   JS  Doc  Generator  supported  by  Sencha  labs     !   I  have  always  been  a  fan  from  Ext.JS  days   !   Required  for  this  npm  package  to  work.   !   gem  install  jsduck  
  • 7. Features  for  Titanium-­‐JSDuck   !   Installable  through  npm  install     !   CLI  options  to  automate  the  setup  in  your  mobile   applications   !   Injects  itself  on  every  compile  to  simulator/device   (alloy.jmk  post:compile  )   !   Options  to  generate  documentation  without   compiling  
  • 8. How  to  Install       !   From  command,  do  a  global  install  for  the  titanium-­‐ jsduck  npm  module,  Version  1.2  is  the  latest   !   URL  to  package  is:   https://www.npmjs.org/package/titanium-­‐jsduck    
  • 9. Verify  Installation   !   Run  titanium-­‐jsduck  from  command  line,  will  return   this  help  screen  
  • 10. Activating  your  Mobile  Project   !   Open  terminal  to  the  root  of  your  titanium  project   !   Type  the  following  command:  
  • 11. You’re  Done   !   You’re  all  set  from  there!!!  Start  documenting.   !   A  few  things  will  change  after  install   !   If  alloy.jmk  does  not  exist,  we  create  it   !   If  does,  we  back  it  up  (alloy.jmk.txt)  to  preserve  any   existing  config   !   Docs  folder  will  appear  (  source  for  JS  Duck  to  use  )  
  • 12. Document  Your  Code  to  Integrate   !   Please  view  Sencha  Labs  Documentation  for   Convention  @   https://github.com/senchalabs/jsduck/wiki       ! Jsduck  will  scan  your  /app  JS  files  for  doc  syntax   !   Controller  files   !   Lib  folder  contents  
  • 13. How  do  I  View  the  Documentation   !   3  options  exist  via  CLI   !   Detects  to  see  if  Browsers  are  installed  in   Applications  folder  
  • 14. Typical  Dev  Workflow   !   Create  Mobile  Project  &  Install  NPM   !   titanium-­‐jsduck  install   !   Code  &  Document  your  project   !   docs  self  generate  on  compilation,  no  need  to  check   into  source  control   !   Open  Browser  to  View  Documentation  as  you  code   !   titanium-­‐jsduck  open  (  first  time  )   !   titanium-­‐jsduck  run  (  subsequent  +  refresh  browser  )  
  • 15. Hello  World  Demo   TITANIUM-­‐JSDUCK  NPM  MODULE  
  • 16. Roadmap   !   Additional  command  line  arguments  to  configure   looks  and  feel  of  documentation  site   !   Another  install  option  for  deluxe  documentation  to   include  (  test  plans,  version  release  notes,  etc  )   !   Testing  for  compatibility  with  Windows  8.1   !   Compatibility  with  Platino  in  development   !   Open  for  more  suggestions  on  more  improvements  
  • 17. Thank  You   JAMIL  HASSAN  SPAIN   @jamilspain