SlideShare a Scribd company logo
1 of 38
Download to read offline
APIs and SDKs: Breaking Into and
Succeeding in a Specialty Market
             Ed Marshall

              Copyright 2008
APIs and SDKs
API = Application Programming Interface
SDK = Software Development Kit

• Typical users and why they use them
• Typical producers of these products
• Examples
Typical Documentation Deliverables
•   Programmer’s reference guides
•   Online help (in some format, more later)
•   Programmer’s guides
•   Data dictionaries
•   API and SDK installation manuals
•   System administrator's guides
•   User configuration guides
Ideal Information for SDKs
• Provide an overview of the SDK
• Describe the tools and components in the SDK
  and how they relate to the APIs
• Describe each tool in detail
• Describe any sample programs included in the
  SDK
Ideal Information for APIs
• Break each component into the various
  families
• Describe each API completely, including cross-
  references to any types used in the definition
• Provide and explain examples that show both
  trivial and complex use of the class / API
Reference Information for APIs
•   Brief description
•   Syntax
•   Examples, examples, examples!
•   Error messages
•   Cross-references
Examples of API / SDK Documentation

• Visual Basic ActiveX Control Help Sample –
  print and online help
• C++ API Help Sample – print and online help
• Typical SDK documentation – Guide to Tools,
  Programmer’s Reference, Programmer’s
  Guide, etc.
Key Programming Concepts
•   Data types / variables
•   Program control – loops, conditions, etc.
•   Logical operators
•   Data structures such as arrays
•   Functions / methods
Benefits to the Writer
• Do more advanced technical writing = Higher
  pay / higher status
• Good if you like to play with software at the
  code level, create / test examples, talk / write
  in gibberish
• Work more closely with developers
Drawbacks to the Writer
• Possibly restrictive / repetitive writing
• Possibly less contact with users as they are
  developers / programmers themselves
• Possibly, more technically challenging
  development / build environments
Knowledge / Personality Traits that
              Work Well
• Some knowledge of programming languages
  BUT you don’t have to be a programmer!
• Willingness to work with advanced /
  programmer types of tools – Use software
  instead of specs
• Desire to work at the code level and write for
  developers who work at the code level
Knowledge / Personality Traits, cont.
• Willingness / confidence to work closely with
  senior developers
• Ability to develop context-sensitive level help at
  a lower-level than typical end-user (window-
  level) help
Ways to Get Information
•   Read the specifications
•   Use the software
•   Attend demos
•   Run automated tools against the software
•   Provide fill-in-the-blank templates to
    developers
Build and Deployment Issues
• Use of automated build systems
• Use of source code control systems
• Other tools to do file comparisons, advanced
  text editors, multi-file search and replace, etc.
Determining Which Help Format to Use
• Platforms
• Browsers
• Minimum versions required by your product
Common Help Formats
• WinHelp – Not in Vista but…
• HTMLHelp 1.x
• HTMLHelp 2.0 (used with Microsoft
  VisualStudio.NET)
• WebHelp / Web Help
• JavaHelp
• Vista help – Not available to us in Vista
Context-sensitive Help
• Need to determine if it is necessary
• Need developers to implement / hook to the
  API
• Have to use the appropriate API for the help
  format
• Mapping of context IDs to numbers / text
  strings
• Need to test all links from the product
Sample Context ID Mapping for
             HTMLHelp
Sample .h file entry:
  #define IntroTopic 0001
  #define CloseSpeech_PM 2001
  #define EngineTerminated_E 3001
Sample .ali file entry:
  IntroTopic=Intro_Topic.htm
  CloseSpeech_PM=CloseSpeech_Method.htm
  EngineTerminated_E=EngineTerminated_Event.htm
Automated Tools
• Doxygen
• JavaDoc
• Sandcastle – New tool for .Net help (MSDN
  style). Doc-to-Help supports Sandcastle help.
• Others
Doxygen
• Very powerful code generation tool
• Free
• Reads specially formatted comments in code
• Supports C / C++, Java, (Corba and Microsoft) Java,
  Python, IDL, and C#
• Outputs RTF, compiled HTML Help, browser-based
  help, and LaTex (PDF)
• Active development / support
• www.stack.nl/~dimitri/doxygen/download.html#latests
  rc – current version is 1.5.5
JavaDoc

• Powerful code generation tool for Java
• Free
• Reads specially formatted comments in code
• Outputs browser-based help
• Active development
• www.sun.com – current version: Java Development
  Kit 5.0 Update 15
• www.doclet.com – source for Java Doclets and
  Javadoc information
Help Authoring Tools (HATs)
• Flare – www.madcapsoftware.com
• RoboHelp – www.adobe.com
• Help & Manual - www.ec-software.com/
• WebWorks ePublisherPro – www.quadralay.com
• Doc-to-Help – www.componentone.com
• AuthorIT – www.authorit.com
For a searchable database of HATs, see hat-
  matrix.com/ - Char James-Tanny’s service
Microsoft IDEs
• Visual Studio 2008 Visual C++
• Visual C #
• Visual Basic

All free from
  http://www.microsoft.com/express/download/
Other IDEs
• Sun NetBeans – www.sun.com (Free - search
  for NetBeans)
• Eclipse – www.eclipse.org (a free open source
  IDE)
Advanced Text Editors
NoteTabPro and EditPadPro:

• Both tools have: Spell-checking. Big plus if you work in a mixed OS
  environment: Neither tool inserts Windows-style line feed
  characters in Unix files.

• NoteTabPro has an auto-complete option for html tags and other
  languages. Has a free version with reduced functionality.
  www.notetab.com $19.95, Lots of other tools here.

• EditPadPro has color-coding for custom html tags
  www.jgsoft.com $39.
  Free full-featured (except for Spell Check) evaluation download available.
  JG Soft has other tools such as a PowerGrep tool, Registry editor, and
  others.
File / Folder Level Comparison
               (Differencing Tools)
• Beyond Compare – Performs folder and file level comparisons, ASCII and
  binary. Can detect that ASCII or binary files are different but can only show
  the differences in ASCII files, not binary files. Highlights the specific
  characters different between 2 ASCII files. Has a 30-day full-featured free
  trial.
   www.scootersoftware.com/
   Retail price: $30

• Araxis Merge - Performs folder and file level comparisons, ASCII and
  binary. Has a 30-day free trial.
   www.araxis.com/merge/index.html
   Retail price: $129
Search and Replace Tool
Funduc – Searches & replaces both folders and
 zip files. Will search & replace ASCII and
 binary files. Will search binary files but cannot
 replace by itself. Has plug-ins for Word, Excel,
 and PowerPoint.

 www.funduc.com $25

 Many other tools here also.
Sample APIs
• Google APIs –
  code.google.com/more/#label=APIs&product=
  gdata
• Google Earth API – earth.google.com/comapi/
• Google Maps API –
  code.google.com/apis/maps/
• BackPack – www.backpackit.com/
Breaking into this Market
• Get training to develop the skills:
    - Courses
    - Self-paced training
    - On-the-job training
• Make your own sample help systems, with
  context-sensitive help coded
• Write some sample programs
Education / Training Opportunities
• Programming courses at local colleges
• STC conferences / workshops
Self-Paced Training
• Manuel Gordon’s API materials
  (www.gordonandgordon.com)
• Documenting APIs: Writing Developer
  Documentation for Java APIs / SDKs – James Bisso
  / Victoria Maki (www.bitzone.com/book.html)
• Deitel & Deitel “(C / C++ / C# / Java) How to
  Program”
• Sams “Teach Yourself…”
• Sample projects, such as the HTML Help API
Other Resources

•   MSDN – msdn.microsoft.com
•   RoboWizard Web site – www.robowizard.com
•   Flare forums – www.madcapsoftware.com
•   RoboHelp / Flare Web site – www.grainge.org/
Listservers (Yahoo Groups)
• STC API – groups.yahoo.com/group/svcstcapi/
• API writers –
  groups.yahoo.com/group/APIWriters/
• NetTechWriters –
  groups.yahoo.com/group/nettechwriters/
• HATT – groups.yahoo.com/group/HATT/
Listservers (Yahoo Groups), cont.
• MSHelp 2.0 –
  groups.yahoo.com/group/MSHelp2/
• Eclipse – groups.yahoo.com/group/eclipse_tw/
Web Services – A Growing Area
• Web Service - An application that provides a
  Web API to perform application integration
• Platform / language independent
• Related to service oriented architectures
  (SOAs)
• Uses SOAP (Simple Object Access Protocol)
  to send / receive XML messages
Web Services / SOA resources
• Web Services A Manager’s Guide – Anne Thomas
  Mannes
• Service Oriented Architecture for Dummies –
  Judith Hurwitz, Robin Bloor, and Carol Baroudi
Summary
•   Description of APIs / SDKs
•   Benefits to writers
•   Drawbacks to writers
•   Training
•   Writing considerations (tools, formats, issues
    for context-sensitive help)
Closing
• Thank you.
• Questions?

                  Ed Marshall

        Marshall Documentation Consulting
            ed.marshall@verizon.net
       www.MarshallDocumentationServices
                 +1 978-339-3095

More Related Content

What's hot

Ruby vs Java: Comparing Two Popular Programming Languages For Developing Ente...
Ruby vs Java: Comparing Two Popular Programming Languages For Developing Ente...Ruby vs Java: Comparing Two Popular Programming Languages For Developing Ente...
Ruby vs Java: Comparing Two Popular Programming Languages For Developing Ente...Katy Slemon
 
Delphi developer certification study guide
Delphi developer certification study guideDelphi developer certification study guide
Delphi developer certification study guideANIL MAHADEV
 
Livecode widget course
Livecode widget courseLivecode widget course
Livecode widget coursecrazyaxe
 
API Documentation Workshop tcworld India 2015
API Documentation Workshop tcworld India 2015API Documentation Workshop tcworld India 2015
API Documentation Workshop tcworld India 2015Tom Johnson
 
Introduction to back-end
Introduction to back-endIntroduction to back-end
Introduction to back-endMosaab Ehab
 
Dart presentation
Dart presentationDart presentation
Dart presentationLucas Leal
 
API Docs Made Right / RAML - Swagger rant
API Docs Made Right / RAML - Swagger rantAPI Docs Made Right / RAML - Swagger rant
API Docs Made Right / RAML - Swagger rantVladimir Shulyak
 
API workshop: Deep dive into Java
API workshop: Deep dive into JavaAPI workshop: Deep dive into Java
API workshop: Deep dive into JavaTom Johnson
 
Web programming UNIT II by Bhavsingh Maloth
Web programming UNIT II by Bhavsingh MalothWeb programming UNIT II by Bhavsingh Maloth
Web programming UNIT II by Bhavsingh MalothBhavsingh Maloth
 
Writing Effective Self-Help Guides for World Domination
Writing Effective Self-Help Guides for World DominationWriting Effective Self-Help Guides for World Domination
Writing Effective Self-Help Guides for World DominationEmma Jane Hogbin Westby
 
Programming paradigm and web programming
Programming paradigm and web programmingProgramming paradigm and web programming
Programming paradigm and web programmingMohammad Kamrul Hasan
 
21. Java High Quality Programming Code
21. Java High Quality Programming Code21. Java High Quality Programming Code
21. Java High Quality Programming CodeIntro C# Book
 
Os Koziarsky
Os KoziarskyOs Koziarsky
Os Koziarskyoscon2007
 
Top 10 programming languages
Top 10 programming languagesTop 10 programming languages
Top 10 programming languagesAman Kumar
 
Introduction to Frontend Development - Session 1 - HTML Fundamentals
Introduction to Frontend Development - Session 1 - HTML FundamentalsIntroduction to Frontend Development - Session 1 - HTML Fundamentals
Introduction to Frontend Development - Session 1 - HTML FundamentalsKalin Chernev
 
The Ring programming language version 1.3 book - Part 4 of 88
The Ring programming language version 1.3 book - Part 4 of 88The Ring programming language version 1.3 book - Part 4 of 88
The Ring programming language version 1.3 book - Part 4 of 88Mahmoud Samir Fayed
 
Java and Related Technologies
Java and Related TechnologiesJava and Related Technologies
Java and Related TechnologiesQualys
 

What's hot (20)

Ruby vs Java: Comparing Two Popular Programming Languages For Developing Ente...
Ruby vs Java: Comparing Two Popular Programming Languages For Developing Ente...Ruby vs Java: Comparing Two Popular Programming Languages For Developing Ente...
Ruby vs Java: Comparing Two Popular Programming Languages For Developing Ente...
 
Delphi developer certification study guide
Delphi developer certification study guideDelphi developer certification study guide
Delphi developer certification study guide
 
Java Intro
Java IntroJava Intro
Java Intro
 
Livecode widget course
Livecode widget courseLivecode widget course
Livecode widget course
 
API Documentation Workshop tcworld India 2015
API Documentation Workshop tcworld India 2015API Documentation Workshop tcworld India 2015
API Documentation Workshop tcworld India 2015
 
Introduction to back-end
Introduction to back-endIntroduction to back-end
Introduction to back-end
 
Dart presentation
Dart presentationDart presentation
Dart presentation
 
API Docs Made Right / RAML - Swagger rant
API Docs Made Right / RAML - Swagger rantAPI Docs Made Right / RAML - Swagger rant
API Docs Made Right / RAML - Swagger rant
 
API workshop: Deep dive into Java
API workshop: Deep dive into JavaAPI workshop: Deep dive into Java
API workshop: Deep dive into Java
 
Web programming UNIT II by Bhavsingh Maloth
Web programming UNIT II by Bhavsingh MalothWeb programming UNIT II by Bhavsingh Maloth
Web programming UNIT II by Bhavsingh Maloth
 
Writing Effective Self-Help Guides for World Domination
Writing Effective Self-Help Guides for World DominationWriting Effective Self-Help Guides for World Domination
Writing Effective Self-Help Guides for World Domination
 
Programming paradigm and web programming
Programming paradigm and web programmingProgramming paradigm and web programming
Programming paradigm and web programming
 
Apache Cordova
Apache CordovaApache Cordova
Apache Cordova
 
21. Java High Quality Programming Code
21. Java High Quality Programming Code21. Java High Quality Programming Code
21. Java High Quality Programming Code
 
HTML for beginners
HTML for beginnersHTML for beginners
HTML for beginners
 
Os Koziarsky
Os KoziarskyOs Koziarsky
Os Koziarsky
 
Top 10 programming languages
Top 10 programming languagesTop 10 programming languages
Top 10 programming languages
 
Introduction to Frontend Development - Session 1 - HTML Fundamentals
Introduction to Frontend Development - Session 1 - HTML FundamentalsIntroduction to Frontend Development - Session 1 - HTML Fundamentals
Introduction to Frontend Development - Session 1 - HTML Fundamentals
 
The Ring programming language version 1.3 book - Part 4 of 88
The Ring programming language version 1.3 book - Part 4 of 88The Ring programming language version 1.3 book - Part 4 of 88
The Ring programming language version 1.3 book - Part 4 of 88
 
Java and Related Technologies
Java and Related TechnologiesJava and Related Technologies
Java and Related Technologies
 

Viewers also liked

Software Development kits
Software Development kitsSoftware Development kits
Software Development kitsEverett Toews
 
Understanding Objects by Mark Lewis
Understanding Objects by Mark LewisUnderstanding Objects by Mark Lewis
Understanding Objects by Mark LewisMark Lewis
 
Writing code samples for API/SDK documentation
Writing code samples for API/SDK documentationWriting code samples for API/SDK documentation
Writing code samples for API/SDK documentationTom Johnson
 
Transforming Your Business Through APIs
Transforming Your Business Through APIsTransforming Your Business Through APIs
Transforming Your Business Through APIsApigee | Google Cloud
 
50 Digital Marketing Metrics for CMOs, CDOs, CIOs and CFOs
50 Digital Marketing Metrics for CMOs, CDOs, CIOs and CFOs50 Digital Marketing Metrics for CMOs, CDOs, CIOs and CFOs
50 Digital Marketing Metrics for CMOs, CDOs, CIOs and CFOsVala Afshar
 

Viewers also liked (6)

Heritage Visualisation: Lessons From The Fun Side
Heritage Visualisation: Lessons From The Fun SideHeritage Visualisation: Lessons From The Fun Side
Heritage Visualisation: Lessons From The Fun Side
 
Software Development kits
Software Development kitsSoftware Development kits
Software Development kits
 
Understanding Objects by Mark Lewis
Understanding Objects by Mark LewisUnderstanding Objects by Mark Lewis
Understanding Objects by Mark Lewis
 
Writing code samples for API/SDK documentation
Writing code samples for API/SDK documentationWriting code samples for API/SDK documentation
Writing code samples for API/SDK documentation
 
Transforming Your Business Through APIs
Transforming Your Business Through APIsTransforming Your Business Through APIs
Transforming Your Business Through APIs
 
50 Digital Marketing Metrics for CMOs, CDOs, CIOs and CFOs
50 Digital Marketing Metrics for CMOs, CDOs, CIOs and CFOs50 Digital Marketing Metrics for CMOs, CDOs, CIOs and CFOs
50 Digital Marketing Metrics for CMOs, CDOs, CIOs and CFOs
 

Similar to Breaking Into API and SDK Technical Writing

APIs and SDKs: Breaking into and Succeeding in a Specialty Market
APIs and SDKs: Breaking into and Succeeding in a Specialty MarketAPIs and SDKs: Breaking into and Succeeding in a Specialty Market
APIs and SDKs: Breaking into and Succeeding in a Specialty MarketSTC-Philadelphia Metro Chapter
 
APIs And SDKs Breaking Into And Succeeding In A Specialty Market
APIs And SDKs  Breaking Into And Succeeding In A Specialty MarketAPIs And SDKs  Breaking Into And Succeeding In A Specialty Market
APIs And SDKs Breaking Into And Succeeding In A Specialty MarketBill Dubie
 
Scripting Recipes for Testers
Scripting Recipes for TestersScripting Recipes for Testers
Scripting Recipes for TestersAdam Goucher
 
Write Generic Code with the Tooling API
Write Generic Code with the Tooling APIWrite Generic Code with the Tooling API
Write Generic Code with the Tooling APIAdam Olshansky
 
IDE and Toolset For Magento Development
IDE and Toolset For Magento DevelopmentIDE and Toolset For Magento Development
IDE and Toolset For Magento DevelopmentAbid Malik
 
What is the best programming language for your web product?
What is the best programming language for your web product?What is the best programming language for your web product?
What is the best programming language for your web product?MobiDev
 
compiler construction tool in computer science .
compiler construction tool in computer science .compiler construction tool in computer science .
compiler construction tool in computer science .RanitHalder
 
Android Bootcamp
Android   BootcampAndroid   Bootcamp
Android Bootcampahkjsdcsadc
 
Cool Tools for Technical Writers
Cool Tools for Technical WritersCool Tools for Technical Writers
Cool Tools for Technical WritersJeff Haas
 
Laird Best Practices Ajax World West2008
Laird Best Practices Ajax World West2008Laird Best Practices Ajax World West2008
Laird Best Practices Ajax World West2008rajivmordani
 
.NET Recommended Resources
.NET Recommended Resources.NET Recommended Resources
.NET Recommended ResourcesGreg Sohl
 
API workshop: Introduction to APIs (TC Camp)
API workshop: Introduction to APIs (TC Camp)API workshop: Introduction to APIs (TC Camp)
API workshop: Introduction to APIs (TC Camp)Tom Johnson
 
Best Practices with Zend Framework - Matthew Weier O'Phinney
Best Practices with Zend Framework - Matthew Weier O'PhinneyBest Practices with Zend Framework - Matthew Weier O'Phinney
Best Practices with Zend Framework - Matthew Weier O'Phinneydpc
 
Java script anywhere. What Nombas was doing pre-acquisition.
Java script anywhere. What Nombas was doing pre-acquisition.Java script anywhere. What Nombas was doing pre-acquisition.
Java script anywhere. What Nombas was doing pre-acquisition.Brent Noorda
 
Barcelona Multilanguage
Barcelona MultilanguageBarcelona Multilanguage
Barcelona Multilanguageguest3a6661
 
What are your Programming Language's Energy-Delay Implications?
What are your Programming Language's Energy-Delay Implications?What are your Programming Language's Energy-Delay Implications?
What are your Programming Language's Energy-Delay Implications?Stefanos Georgiou
 
Novice Programmers Workshop
Novice Programmers WorkshopNovice Programmers Workshop
Novice Programmers WorkshopAlec Clews
 

Similar to Breaking Into API and SDK Technical Writing (20)

APIs and SDKs: Breaking into and Succeeding in a Specialty Market
APIs and SDKs: Breaking into and Succeeding in a Specialty MarketAPIs and SDKs: Breaking into and Succeeding in a Specialty Market
APIs and SDKs: Breaking into and Succeeding in a Specialty Market
 
APIs And SDKs Breaking Into And Succeeding In A Specialty Market
APIs And SDKs  Breaking Into And Succeeding In A Specialty MarketAPIs And SDKs  Breaking Into And Succeeding In A Specialty Market
APIs And SDKs Breaking Into And Succeeding In A Specialty Market
 
Scripting Recipes for Testers
Scripting Recipes for TestersScripting Recipes for Testers
Scripting Recipes for Testers
 
Write Generic Code with the Tooling API
Write Generic Code with the Tooling APIWrite Generic Code with the Tooling API
Write Generic Code with the Tooling API
 
IDE and Toolset For Magento Development
IDE and Toolset For Magento DevelopmentIDE and Toolset For Magento Development
IDE and Toolset For Magento Development
 
What is the best programming language for your web product?
What is the best programming language for your web product?What is the best programming language for your web product?
What is the best programming language for your web product?
 
compiler construction tool in computer science .
compiler construction tool in computer science .compiler construction tool in computer science .
compiler construction tool in computer science .
 
Titanium Desktop Intro
Titanium Desktop IntroTitanium Desktop Intro
Titanium Desktop Intro
 
Android Bootcamp
Android   BootcampAndroid   Bootcamp
Android Bootcamp
 
Cool Tools for Technical Writers
Cool Tools for Technical WritersCool Tools for Technical Writers
Cool Tools for Technical Writers
 
Laird Best Practices Ajax World West2008
Laird Best Practices Ajax World West2008Laird Best Practices Ajax World West2008
Laird Best Practices Ajax World West2008
 
.NET Recommended Resources
.NET Recommended Resources.NET Recommended Resources
.NET Recommended Resources
 
API workshop: Introduction to APIs (TC Camp)
API workshop: Introduction to APIs (TC Camp)API workshop: Introduction to APIs (TC Camp)
API workshop: Introduction to APIs (TC Camp)
 
Best Practices with Zend Framework - Matthew Weier O'Phinney
Best Practices with Zend Framework - Matthew Weier O'PhinneyBest Practices with Zend Framework - Matthew Weier O'Phinney
Best Practices with Zend Framework - Matthew Weier O'Phinney
 
Java script anywhere. What Nombas was doing pre-acquisition.
Java script anywhere. What Nombas was doing pre-acquisition.Java script anywhere. What Nombas was doing pre-acquisition.
Java script anywhere. What Nombas was doing pre-acquisition.
 
Barcelona Multilanguage
Barcelona MultilanguageBarcelona Multilanguage
Barcelona Multilanguage
 
Ajax World West
Ajax World WestAjax World West
Ajax World West
 
What are your Programming Language's Energy-Delay Implications?
What are your Programming Language's Energy-Delay Implications?What are your Programming Language's Energy-Delay Implications?
What are your Programming Language's Energy-Delay Implications?
 
C Language
C LanguageC Language
C Language
 
Novice Programmers Workshop
Novice Programmers WorkshopNovice Programmers Workshop
Novice Programmers Workshop
 

More from Scott Abel

The Future Of Technical Communication
The Future Of Technical CommunicationThe Future Of Technical Communication
The Future Of Technical CommunicationScott Abel
 
Move Over Text: Video Documentation Meets DITA
Move Over Text: Video Documentation Meets DITAMove Over Text: Video Documentation Meets DITA
Move Over Text: Video Documentation Meets DITAScott Abel
 
Twitter Who Cares What You\'re Doing Right Now, Anyway
Twitter Who Cares What You\'re Doing Right Now, AnywayTwitter Who Cares What You\'re Doing Right Now, Anyway
Twitter Who Cares What You\'re Doing Right Now, AnywayScott Abel
 
Intelligent Contet Here And Now
Intelligent Contet Here And NowIntelligent Contet Here And Now
Intelligent Contet Here And NowScott Abel
 
Authoring and Publishing with XMetaL and DITA
Authoring and Publishing with XMetaL and DITAAuthoring and Publishing with XMetaL and DITA
Authoring and Publishing with XMetaL and DITAScott Abel
 
Comparing DITA Support in XMetaL and FrameMaker
Comparing DITA Support in XMetaL and FrameMakerComparing DITA Support in XMetaL and FrameMaker
Comparing DITA Support in XMetaL and FrameMakerScott Abel
 
Success Factors for DITA Adoption with XMetaL: Best Practices and Fundamentals
Success Factors for DITA Adoption with XMetaL: Best Practices and FundamentalsSuccess Factors for DITA Adoption with XMetaL: Best Practices and Fundamentals
Success Factors for DITA Adoption with XMetaL: Best Practices and FundamentalsScott Abel
 
Blogzilla: Why Blogs Are The Monster In The Business Closet: You Are No Longe...
Blogzilla: Why Blogs Are The Monster In The Business Closet: You Are No Longe...Blogzilla: Why Blogs Are The Monster In The Business Closet: You Are No Longe...
Blogzilla: Why Blogs Are The Monster In The Business Closet: You Are No Longe...Scott Abel
 
Controlled Authoring Workshop: Learn How Standardizing Content Will Improve Q...
Controlled Authoring Workshop: Learn How Standardizing Content Will Improve Q...Controlled Authoring Workshop: Learn How Standardizing Content Will Improve Q...
Controlled Authoring Workshop: Learn How Standardizing Content Will Improve Q...Scott Abel
 
The Changing Face of TechComm and the Society for Technical Communication
The Changing Face of TechComm and the Society for Technical CommunicationThe Changing Face of TechComm and the Society for Technical Communication
The Changing Face of TechComm and the Society for Technical CommunicationScott Abel
 
The Truth about Content: Learning from the Past in order to Succeed in the Fu...
The Truth about Content: Learning from the Past in order to Succeed in the Fu...The Truth about Content: Learning from the Past in order to Succeed in the Fu...
The Truth about Content: Learning from the Past in order to Succeed in the Fu...Scott Abel
 
Content Oriented Architectures: Putting Content at the Center of CM Projects
Content Oriented Architectures: Putting Content at the Center of CM ProjectsContent Oriented Architectures: Putting Content at the Center of CM Projects
Content Oriented Architectures: Putting Content at the Center of CM ProjectsScott Abel
 
Modular Content Projects: One Size DOES NOT Fit All
Modular Content Projects: One Size DOES NOT Fit AllModular Content Projects: One Size DOES NOT Fit All
Modular Content Projects: One Size DOES NOT Fit AllScott Abel
 
Navigating the Vendor Maze: Understanding XML Authoring Tools and Content Man...
Navigating the Vendor Maze: Understanding XML Authoring Tools and Content Man...Navigating the Vendor Maze: Understanding XML Authoring Tools and Content Man...
Navigating the Vendor Maze: Understanding XML Authoring Tools and Content Man...Scott Abel
 
Writing, Clear and Simple - Document Testing: The Missing Step
Writing, Clear and Simple - Document Testing: The Missing StepWriting, Clear and Simple - Document Testing: The Missing Step
Writing, Clear and Simple - Document Testing: The Missing StepScott Abel
 
Theory of Constraints and Project Management: Challenging the Dominant Paradigm
Theory of Constraints and Project Management: Challenging the Dominant ParadigmTheory of Constraints and Project Management: Challenging the Dominant Paradigm
Theory of Constraints and Project Management: Challenging the Dominant ParadigmScott Abel
 
[Case Study] - Nuclear Power, DITA and FrameMaker: The How's and Why's
[Case Study] - Nuclear Power, DITA and FrameMaker: The How's and Why's[Case Study] - Nuclear Power, DITA and FrameMaker: The How's and Why's
[Case Study] - Nuclear Power, DITA and FrameMaker: The How's and Why'sScott Abel
 
We Eat Our Own Dog Food: Three Companies in the World of Localization Technol...
We Eat Our Own Dog Food: Three Companies in the World of Localization Technol...We Eat Our Own Dog Food: Three Companies in the World of Localization Technol...
We Eat Our Own Dog Food: Three Companies in the World of Localization Technol...Scott Abel
 
Sustainable XML for Publishing Applications: DITA Makes It Possible
Sustainable XML for Publishing Applications: DITA Makes It PossibleSustainable XML for Publishing Applications: DITA Makes It Possible
Sustainable XML for Publishing Applications: DITA Makes It PossibleScott Abel
 

More from Scott Abel (20)

The Future Of Technical Communication
The Future Of Technical CommunicationThe Future Of Technical Communication
The Future Of Technical Communication
 
Move Over Text: Video Documentation Meets DITA
Move Over Text: Video Documentation Meets DITAMove Over Text: Video Documentation Meets DITA
Move Over Text: Video Documentation Meets DITA
 
Twitter Who Cares What You\'re Doing Right Now, Anyway
Twitter Who Cares What You\'re Doing Right Now, AnywayTwitter Who Cares What You\'re Doing Right Now, Anyway
Twitter Who Cares What You\'re Doing Right Now, Anyway
 
Intelligent Contet Here And Now
Intelligent Contet Here And NowIntelligent Contet Here And Now
Intelligent Contet Here And Now
 
Authoring and Publishing with XMetaL and DITA
Authoring and Publishing with XMetaL and DITAAuthoring and Publishing with XMetaL and DITA
Authoring and Publishing with XMetaL and DITA
 
Comparing DITA Support in XMetaL and FrameMaker
Comparing DITA Support in XMetaL and FrameMakerComparing DITA Support in XMetaL and FrameMaker
Comparing DITA Support in XMetaL and FrameMaker
 
Success Factors for DITA Adoption with XMetaL: Best Practices and Fundamentals
Success Factors for DITA Adoption with XMetaL: Best Practices and FundamentalsSuccess Factors for DITA Adoption with XMetaL: Best Practices and Fundamentals
Success Factors for DITA Adoption with XMetaL: Best Practices and Fundamentals
 
Blogzilla: Why Blogs Are The Monster In The Business Closet: You Are No Longe...
Blogzilla: Why Blogs Are The Monster In The Business Closet: You Are No Longe...Blogzilla: Why Blogs Are The Monster In The Business Closet: You Are No Longe...
Blogzilla: Why Blogs Are The Monster In The Business Closet: You Are No Longe...
 
Controlled Authoring Workshop: Learn How Standardizing Content Will Improve Q...
Controlled Authoring Workshop: Learn How Standardizing Content Will Improve Q...Controlled Authoring Workshop: Learn How Standardizing Content Will Improve Q...
Controlled Authoring Workshop: Learn How Standardizing Content Will Improve Q...
 
The Changing Face of TechComm and the Society for Technical Communication
The Changing Face of TechComm and the Society for Technical CommunicationThe Changing Face of TechComm and the Society for Technical Communication
The Changing Face of TechComm and the Society for Technical Communication
 
The Truth about Content: Learning from the Past in order to Succeed in the Fu...
The Truth about Content: Learning from the Past in order to Succeed in the Fu...The Truth about Content: Learning from the Past in order to Succeed in the Fu...
The Truth about Content: Learning from the Past in order to Succeed in the Fu...
 
Content Oriented Architectures: Putting Content at the Center of CM Projects
Content Oriented Architectures: Putting Content at the Center of CM ProjectsContent Oriented Architectures: Putting Content at the Center of CM Projects
Content Oriented Architectures: Putting Content at the Center of CM Projects
 
Modular Content Projects: One Size DOES NOT Fit All
Modular Content Projects: One Size DOES NOT Fit AllModular Content Projects: One Size DOES NOT Fit All
Modular Content Projects: One Size DOES NOT Fit All
 
Navigating the Vendor Maze: Understanding XML Authoring Tools and Content Man...
Navigating the Vendor Maze: Understanding XML Authoring Tools and Content Man...Navigating the Vendor Maze: Understanding XML Authoring Tools and Content Man...
Navigating the Vendor Maze: Understanding XML Authoring Tools and Content Man...
 
Writing, Clear and Simple - Document Testing: The Missing Step
Writing, Clear and Simple - Document Testing: The Missing StepWriting, Clear and Simple - Document Testing: The Missing Step
Writing, Clear and Simple - Document Testing: The Missing Step
 
It
ItIt
It
 
Theory of Constraints and Project Management: Challenging the Dominant Paradigm
Theory of Constraints and Project Management: Challenging the Dominant ParadigmTheory of Constraints and Project Management: Challenging the Dominant Paradigm
Theory of Constraints and Project Management: Challenging the Dominant Paradigm
 
[Case Study] - Nuclear Power, DITA and FrameMaker: The How's and Why's
[Case Study] - Nuclear Power, DITA and FrameMaker: The How's and Why's[Case Study] - Nuclear Power, DITA and FrameMaker: The How's and Why's
[Case Study] - Nuclear Power, DITA and FrameMaker: The How's and Why's
 
We Eat Our Own Dog Food: Three Companies in the World of Localization Technol...
We Eat Our Own Dog Food: Three Companies in the World of Localization Technol...We Eat Our Own Dog Food: Three Companies in the World of Localization Technol...
We Eat Our Own Dog Food: Three Companies in the World of Localization Technol...
 
Sustainable XML for Publishing Applications: DITA Makes It Possible
Sustainable XML for Publishing Applications: DITA Makes It PossibleSustainable XML for Publishing Applications: DITA Makes It Possible
Sustainable XML for Publishing Applications: DITA Makes It Possible
 

Recently uploaded

SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
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
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
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
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 

Recently uploaded (20)

SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
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.
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 

Breaking Into API and SDK Technical Writing

  • 1. APIs and SDKs: Breaking Into and Succeeding in a Specialty Market Ed Marshall Copyright 2008
  • 2. APIs and SDKs API = Application Programming Interface SDK = Software Development Kit • Typical users and why they use them • Typical producers of these products • Examples
  • 3. Typical Documentation Deliverables • Programmer’s reference guides • Online help (in some format, more later) • Programmer’s guides • Data dictionaries • API and SDK installation manuals • System administrator's guides • User configuration guides
  • 4. Ideal Information for SDKs • Provide an overview of the SDK • Describe the tools and components in the SDK and how they relate to the APIs • Describe each tool in detail • Describe any sample programs included in the SDK
  • 5. Ideal Information for APIs • Break each component into the various families • Describe each API completely, including cross- references to any types used in the definition • Provide and explain examples that show both trivial and complex use of the class / API
  • 6. Reference Information for APIs • Brief description • Syntax • Examples, examples, examples! • Error messages • Cross-references
  • 7. Examples of API / SDK Documentation • Visual Basic ActiveX Control Help Sample – print and online help • C++ API Help Sample – print and online help • Typical SDK documentation – Guide to Tools, Programmer’s Reference, Programmer’s Guide, etc.
  • 8. Key Programming Concepts • Data types / variables • Program control – loops, conditions, etc. • Logical operators • Data structures such as arrays • Functions / methods
  • 9. Benefits to the Writer • Do more advanced technical writing = Higher pay / higher status • Good if you like to play with software at the code level, create / test examples, talk / write in gibberish • Work more closely with developers
  • 10. Drawbacks to the Writer • Possibly restrictive / repetitive writing • Possibly less contact with users as they are developers / programmers themselves • Possibly, more technically challenging development / build environments
  • 11. Knowledge / Personality Traits that Work Well • Some knowledge of programming languages BUT you don’t have to be a programmer! • Willingness to work with advanced / programmer types of tools – Use software instead of specs • Desire to work at the code level and write for developers who work at the code level
  • 12. Knowledge / Personality Traits, cont. • Willingness / confidence to work closely with senior developers • Ability to develop context-sensitive level help at a lower-level than typical end-user (window- level) help
  • 13. Ways to Get Information • Read the specifications • Use the software • Attend demos • Run automated tools against the software • Provide fill-in-the-blank templates to developers
  • 14. Build and Deployment Issues • Use of automated build systems • Use of source code control systems • Other tools to do file comparisons, advanced text editors, multi-file search and replace, etc.
  • 15. Determining Which Help Format to Use • Platforms • Browsers • Minimum versions required by your product
  • 16. Common Help Formats • WinHelp – Not in Vista but… • HTMLHelp 1.x • HTMLHelp 2.0 (used with Microsoft VisualStudio.NET) • WebHelp / Web Help • JavaHelp • Vista help – Not available to us in Vista
  • 17. Context-sensitive Help • Need to determine if it is necessary • Need developers to implement / hook to the API • Have to use the appropriate API for the help format • Mapping of context IDs to numbers / text strings • Need to test all links from the product
  • 18. Sample Context ID Mapping for HTMLHelp Sample .h file entry: #define IntroTopic 0001 #define CloseSpeech_PM 2001 #define EngineTerminated_E 3001 Sample .ali file entry: IntroTopic=Intro_Topic.htm CloseSpeech_PM=CloseSpeech_Method.htm EngineTerminated_E=EngineTerminated_Event.htm
  • 19. Automated Tools • Doxygen • JavaDoc • Sandcastle – New tool for .Net help (MSDN style). Doc-to-Help supports Sandcastle help. • Others
  • 20. Doxygen • Very powerful code generation tool • Free • Reads specially formatted comments in code • Supports C / C++, Java, (Corba and Microsoft) Java, Python, IDL, and C# • Outputs RTF, compiled HTML Help, browser-based help, and LaTex (PDF) • Active development / support • www.stack.nl/~dimitri/doxygen/download.html#latests rc – current version is 1.5.5
  • 21. JavaDoc • Powerful code generation tool for Java • Free • Reads specially formatted comments in code • Outputs browser-based help • Active development • www.sun.com – current version: Java Development Kit 5.0 Update 15 • www.doclet.com – source for Java Doclets and Javadoc information
  • 22. Help Authoring Tools (HATs) • Flare – www.madcapsoftware.com • RoboHelp – www.adobe.com • Help & Manual - www.ec-software.com/ • WebWorks ePublisherPro – www.quadralay.com • Doc-to-Help – www.componentone.com • AuthorIT – www.authorit.com For a searchable database of HATs, see hat- matrix.com/ - Char James-Tanny’s service
  • 23. Microsoft IDEs • Visual Studio 2008 Visual C++ • Visual C # • Visual Basic All free from http://www.microsoft.com/express/download/
  • 24. Other IDEs • Sun NetBeans – www.sun.com (Free - search for NetBeans) • Eclipse – www.eclipse.org (a free open source IDE)
  • 25. Advanced Text Editors NoteTabPro and EditPadPro: • Both tools have: Spell-checking. Big plus if you work in a mixed OS environment: Neither tool inserts Windows-style line feed characters in Unix files. • NoteTabPro has an auto-complete option for html tags and other languages. Has a free version with reduced functionality. www.notetab.com $19.95, Lots of other tools here. • EditPadPro has color-coding for custom html tags www.jgsoft.com $39. Free full-featured (except for Spell Check) evaluation download available. JG Soft has other tools such as a PowerGrep tool, Registry editor, and others.
  • 26. File / Folder Level Comparison (Differencing Tools) • Beyond Compare – Performs folder and file level comparisons, ASCII and binary. Can detect that ASCII or binary files are different but can only show the differences in ASCII files, not binary files. Highlights the specific characters different between 2 ASCII files. Has a 30-day full-featured free trial. www.scootersoftware.com/ Retail price: $30 • Araxis Merge - Performs folder and file level comparisons, ASCII and binary. Has a 30-day free trial. www.araxis.com/merge/index.html Retail price: $129
  • 27. Search and Replace Tool Funduc – Searches & replaces both folders and zip files. Will search & replace ASCII and binary files. Will search binary files but cannot replace by itself. Has plug-ins for Word, Excel, and PowerPoint. www.funduc.com $25 Many other tools here also.
  • 28. Sample APIs • Google APIs – code.google.com/more/#label=APIs&product= gdata • Google Earth API – earth.google.com/comapi/ • Google Maps API – code.google.com/apis/maps/ • BackPack – www.backpackit.com/
  • 29. Breaking into this Market • Get training to develop the skills: - Courses - Self-paced training - On-the-job training • Make your own sample help systems, with context-sensitive help coded • Write some sample programs
  • 30. Education / Training Opportunities • Programming courses at local colleges • STC conferences / workshops
  • 31. Self-Paced Training • Manuel Gordon’s API materials (www.gordonandgordon.com) • Documenting APIs: Writing Developer Documentation for Java APIs / SDKs – James Bisso / Victoria Maki (www.bitzone.com/book.html) • Deitel & Deitel “(C / C++ / C# / Java) How to Program” • Sams “Teach Yourself…” • Sample projects, such as the HTML Help API
  • 32. Other Resources • MSDN – msdn.microsoft.com • RoboWizard Web site – www.robowizard.com • Flare forums – www.madcapsoftware.com • RoboHelp / Flare Web site – www.grainge.org/
  • 33. Listservers (Yahoo Groups) • STC API – groups.yahoo.com/group/svcstcapi/ • API writers – groups.yahoo.com/group/APIWriters/ • NetTechWriters – groups.yahoo.com/group/nettechwriters/ • HATT – groups.yahoo.com/group/HATT/
  • 34. Listservers (Yahoo Groups), cont. • MSHelp 2.0 – groups.yahoo.com/group/MSHelp2/ • Eclipse – groups.yahoo.com/group/eclipse_tw/
  • 35. Web Services – A Growing Area • Web Service - An application that provides a Web API to perform application integration • Platform / language independent • Related to service oriented architectures (SOAs) • Uses SOAP (Simple Object Access Protocol) to send / receive XML messages
  • 36. Web Services / SOA resources • Web Services A Manager’s Guide – Anne Thomas Mannes • Service Oriented Architecture for Dummies – Judith Hurwitz, Robin Bloor, and Carol Baroudi
  • 37. Summary • Description of APIs / SDKs • Benefits to writers • Drawbacks to writers • Training • Writing considerations (tools, formats, issues for context-sensitive help)
  • 38. Closing • Thank you. • Questions? Ed Marshall Marshall Documentation Consulting ed.marshall@verizon.net www.MarshallDocumentationServices +1 978-339-3095