SlideShare a Scribd company logo
1 of 87
Turning Passion Into Words

                      Tips, Tools, Techniques for Aspiring
                                     Authors



twitter: bphogan
email: brianhogan at napcs.com
http://www.flickr.com/photos/jjpacres/3293117576/




why do we write?
http://www.flickr.com/photos/gemmacowan/303427032/




But do people even read books anymore?
Yes. Very yes.




        http://www.flickr.com/photos/30743345@N04/4694171907
"But people can get all that off of blogs!"
The reader wants your
experience, not your answers.
Let’s assume you have a topic.
Understand your audience
Define your target audience

     and decide who is outside
Create a reader profile
Tammy is a backend software developer She works
primarily with Java. She's great with VIm, knows how to
configure Tomcat with XML, and understands how tough it
can be to get requirements out of users, but when it
comes to picking colors, fonts, or layouts, she needs help.
She wants to be able to understand design concepts so
that her conversations with the UI team will go more
smoothly.
Connect with your reader
Dreyfus Model
            (of skill acquisition)

"The Dreyfus model describes how
and why our abilities, attitudes,
capabilities, and perspectives
change according to skill level."

                        -Andy Hunt
Novices

No previous experience, need
 recipes to solve problems.
10 years of experience

or one year of experience ten years
             in a row?
Advanced Beginners

  They can try tasks on their
own, but they still have difficulty
       troubleshooting.
  They want information fast.
Competent

Can develop conceptual models of
 the problem domain, troubleshoot
effectively, and implement their own
           novel solutions.
Proficient

 They need the big picture and want
to understand the framework around
             the skill.
The expert

Experts are the primary sources of
          knowledge and
     information in any field.
Experts are rare.

1-5% of the population
Experts work from intuition

 and they often cannot explain how
       they do what they do.
Which one of these are you?
The competent make the best
        teachers
Most people stop progressing
  at Advanced Beginner.
Learn about this model

and use it to move your reader from
      one stage to the next.
Define your thesis!

What are you talkin' about??
HTML5 and CSS3 are the future of web
development, but you don’t have to
wait to start using them. Even though
the specification is still in
development, many modern browsers
and mobile devices already support
HTML5 and CSS3. This book gets you
up to speed on the new HTML5
elements and CSS3 features you can
use right now, and backwards
compatible solutions ensure that you
don’t leave users of older browsers
behind.
Outline your writing
 1. HTML5 Forms
    1.New form fields
       1.Email, url, tel, number,
        range, date, color
       2.discuss fallbacks
          1.implement fallback
            with jquery-ui for
            calendars
          2.discuss modernizr
    3.Placeholder and Autofocus
       1.Placeholder
          1.Placeholder fallback
            with custom plugin
What do you want the reader
         to learn?
  Set goals at the start and see if you
        meet them at the end.
Research your market
• What books out there are similar to yours?
• Why would yours be different?
• What is your audience size?
• How many of them would buy a book on the
  topic?
• What other books would have similar sales
  numbers to yours?
Your first chapter

and don’t start with “Introduction!”
Write about what you are excited
 about first to gain momentum.
Writing about Code

The best books about code talk more about
the why than the how.

Don’t just explain the code. Explain why
the code you’re demonstrating is the best
solution.
AVOID APPEAL TO
   AUTHORITY
Be the expert Don’t use quotes from well-
known people to bolster your argument.
Use your experience!
Get into a pattern
http://750words.com/
Be consistent. Try to do a chapter
         in two weeks.
Voice

setting the tone.
Be yourself.

Don’t be funny if you’re not.
Beware of emulation

Don’t write like you think you should
 write or how you see others write.
Academic
Behavior driven development (or BDD) is an agile software
development technique that encourages collaboration between
developers, QA and non-technical or business participants in a
software project. It was originally named in 2003 by Dan North[1]
as a response to Test Driven Development, including Acceptance
Test or Customer Test Driven Development practices as found in
Extreme Programming. It has evolved over the last few years[2].
Less Academic
Behavior driven development is a software development
methodology created by Dan North in 2003 as a response
to traditional Test Driven Development. It includes
elements of Extreme Programming, such as acceptance
testing, and it encourages collaboration between technical
and non-technical members of a software development
team.
Say more with less
•   “Utilize” should be “Use”
•   “At this point in time” should be “Now”
•   “What x does is...” - just tell us already!
•   “really”, “very”, “quite”, “severely” don’t
    emphasize things as much as you think they
    do. Look for them, remove them, and see if
    you like how it looks.
Compare:
There are twenty-five students who have already expressed a desire to attend
the program next summer. It is they and their parents who stand to gain the
most by the government grant.

Twenty-five students have already expressed a desire to attend the
program next summer. They and their parents stand to gain the most
by the government grant.
So you have an idea,
a thesis, an outline, some content
    that we’ve written and self-
             edited...

       let’s get published.
Finding a publisher
vs Self Publishing
Benefits of Traditional
    Publishers
They have a brand.
They have people to help you

     •   Developmental editors
     •   Copy editors
     •   Professional indexers
     •   Production managers
     •   Marketers
     •   Artists
     •   Professional Typesetters
     •   Foreign Rights brokers
They are also more
experienced than you
You get a lot of help...
but it comes at a cost.
The Advance

Not always a good deal.
$10,000 advance, 10%
      royalties
If your book doesn't sell, you did a
  years' worth of work for $10,000
Buybacks

 Publishers have to buy back your
books from Amazon if they don't sell.
Self publishing

   Go it alone?
Can you

1. write a concise book that meets the needs of your reader,
   reasonably free of errors?
2. get an unbiased opinion of your work?
3. deliver your book in print form to those that want it?
4. deliver your book in PDF, ePub, or Kindle format in a way
   that actually looks good across multiple platforms and
   devices?
5. be willing to promote the hell out of your book through web
   sites, user groups, communities, trade shows, etc?
Of course you can.

But do you have the time?
Finding a publisher

• Start with a publisher you respect.
• Each publisher has a different process, but
  most publishers have acquisitions editors
  that work to find authors for topics.
  – http://pragprog.com/write-for-us/
  –
Developmental Editors

       Your pair.
A good DE can

• Be a sounding board for your ideas and help you find your
  target audience
• Give you feedback as an outsider on your content
• Help you keep your tone consistent
• Help you stay on track
Copy Editor




You'll want one.
Tools to get stuff done
Version control
Treat your book just like code. It's
            valuable.
A writing tool
X
Avoid MS Word.
Markdown
   plain text to HTML
Extending Ruby
============

Instead of using monkeypatching, we can
include our code
as a *module*.

   module NinjaBehavior
     def attack
       puts "You've been silently killed"
     end
   end

We can then bring this behavior into our
clasess. This
technique is often called a *mixin*.
You can convert Markdown to
 HTML and PDF with relative
           ease.
Markdown does not convey
       meaning.
Docbook
  the revenge of XML
XML is only evil
when you use it wrong.
Docbook features
• Descriptive markup
• Automatic chapter and section numbering
• Automatic cross-referencing
• Table of Contents generation
• Support for indexing
• Extendable
• Complete separation between content and
  presentation
• Export to HTML, PDF, ePub, etc
Docbook example
<chapter xmlns="http://docbook.org/ns/docbook" xml:id="models.association.ext">
<title>Using Association Extensions to group records</title>

  <para>
    Association extensions let us apply methods to our
    ActiveRecord associations so we can quickly get access to your collected data.
  </para>

  <para>
    Our registration system needs a report of all currently enrolled
    students in a given workshop. We can do that fairly quickly by defining our
    own <methodname>currently_enrolled</methodname> method on the
    <classname>Workshop</classname> class like this:.
  </para>

  <programlisting language=”ruby”>
    <![CDATA[
      class Workshop < ActiveRecord::Base
        has_many :enrollments
        has_many :students, :through => :enrollments
        def currently_enrolled
          enrollments.find_all_by_enrolled(true)
        end
      end
    ]]>
  </programlisting>
Structural markup
• chapter
  – sect1
     • sect2
        – sect3
  – para
  – orderedlist
     • listitem
        – para
  – unorderedlist
     • listitem
        – para
Verbatim markup
• programlisting
  – CDATA
     • code
• screen
  – CDATA
     • plain text
Admonishment markup
•   sidebar
•   warning
•   tip
•   note
•   caution
semantic markup
•   application   •   database        •   mousebutton
•   methodname    •   email           •   option
•   varname       •   errorname       •   keycombo
•   classname     •   errortext       •   quote
•   abbrev        •   foreignphrase   •   task
•   acronym       •   funcparams      •   term
•   action        •   funcdev         •   uri
•   arg           •   interface       •   ...more
By using this markup, we can
    create a style guide.
XSLT transformations
• HTML
• Formatting objects (XSL-FO)
  – PDF
  – mobi
• ePub
Docbook demo?
https://github.com/napcs/docbook
Feedback
Promotion
You have to promote your book
•   Twitter
•   Facebook
•   Your blog
•   Your reviewers
•   Amazon reviews
What if I can’t do it all?
Divide up the work
         get a co-author
Beware though....
• You want a unified voice
• You need to deal with your disagreements
• You need to work as a partnership
Not writing a book?
   Everything here still applies.
Other questions?

More Related Content

Similar to Turning Passion Into Words

Career Hacks for Developers
Career Hacks for DevelopersCareer Hacks for Developers
Career Hacks for DevelopersBarElin
 
Design Process | Tool 02: Scenario - Tool 03: Wireframe
Design Process | Tool 02: Scenario - Tool 03: WireframeDesign Process | Tool 02: Scenario - Tool 03: Wireframe
Design Process | Tool 02: Scenario - Tool 03: WireframeGessica Puri
 
Publishing 102 11 18
Publishing 102  11 18Publishing 102  11 18
Publishing 102 11 18Karen Brooks
 
SOFLUX Meetup - Landing on your dream job
SOFLUX Meetup - Landing on your dream jobSOFLUX Meetup - Landing on your dream job
SOFLUX Meetup - Landing on your dream jobMarta Guerra
 
The 360 Developer
The 360 DeveloperThe 360 Developer
The 360 Developerenteritos
 
Biggest Mistake of Broke Web Designers
Biggest Mistake of Broke Web Designers Biggest Mistake of Broke Web Designers
Biggest Mistake of Broke Web Designers New Tricks
 
Tools and Resources for Transition from Libraries to Wider Community Use Cent...
Tools and Resources for Transition from Libraries to Wider Community Use Cent...Tools and Resources for Transition from Libraries to Wider Community Use Cent...
Tools and Resources for Transition from Libraries to Wider Community Use Cent...CILIP
 
Designing Your Career @ amUX Atlanta
Designing Your Career @ amUX AtlantaDesigning Your Career @ amUX Atlanta
Designing Your Career @ amUX AtlantaIan Swinson
 
How to Build your Career.pptx
How to Build your Career.pptxHow to Build your Career.pptx
How to Build your Career.pptxvaideheekore
 
NLJUG speaker academy 2023 - session 1
NLJUG speaker academy 2023 - session 1NLJUG speaker academy 2023 - session 1
NLJUG speaker academy 2023 - session 1Bert Jan Schrijver
 
Technical Writing Overview: WTD Nigeria
Technical Writing Overview: WTD NigeriaTechnical Writing Overview: WTD Nigeria
Technical Writing Overview: WTD NigeriaMargaret Fero
 
The passionate programmer
The passionate programmerThe passionate programmer
The passionate programmerMahmoud Tolba
 
Designers are from Venus - Presentationas Given to CD2
Designers are from Venus - Presentationas Given to CD2Designers are from Venus - Presentationas Given to CD2
Designers are from Venus - Presentationas Given to CD2Chad Udell
 
Copywriting for UX
Copywriting for UXCopywriting for UX
Copywriting for UXTalisa Chang
 
Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software DevelopmentAhmet Bulut
 
Android Developer Training
Android Developer TrainingAndroid Developer Training
Android Developer Trainingfaizrashid1995
 
“If they would just listen to us...”: Turning Internal Client Relationships i...
“If they would just listen to us...”: Turning Internal Client Relationships i...“If they would just listen to us...”: Turning Internal Client Relationships i...
“If they would just listen to us...”: Turning Internal Client Relationships i...Michael Powers
 
DevRel Salon - Writing Decent Documentation, a learning journey with plenty o...
DevRel Salon - Writing Decent Documentation, a learning journey with plenty o...DevRel Salon - Writing Decent Documentation, a learning journey with plenty o...
DevRel Salon - Writing Decent Documentation, a learning journey with plenty o...Abdelhalim DADOUCHE
 
Concept to Launch: The Ultimate Confluence Guide for Software Teams
Concept to Launch: The Ultimate Confluence Guide for Software TeamsConcept to Launch: The Ultimate Confluence Guide for Software Teams
Concept to Launch: The Ultimate Confluence Guide for Software TeamsAtlassian
 

Similar to Turning Passion Into Words (20)

Career Hacks for Developers
Career Hacks for DevelopersCareer Hacks for Developers
Career Hacks for Developers
 
Design Process | Tool 02: Scenario - Tool 03: Wireframe
Design Process | Tool 02: Scenario - Tool 03: WireframeDesign Process | Tool 02: Scenario - Tool 03: Wireframe
Design Process | Tool 02: Scenario - Tool 03: Wireframe
 
Publishing 102 11 18
Publishing 102  11 18Publishing 102  11 18
Publishing 102 11 18
 
SOFLUX Meetup - Landing on your dream job
SOFLUX Meetup - Landing on your dream jobSOFLUX Meetup - Landing on your dream job
SOFLUX Meetup - Landing on your dream job
 
The 360 Developer
The 360 DeveloperThe 360 Developer
The 360 Developer
 
Biggest Mistake of Broke Web Designers
Biggest Mistake of Broke Web Designers Biggest Mistake of Broke Web Designers
Biggest Mistake of Broke Web Designers
 
Job Seeking in a Web Based World
Job Seeking in a Web Based World Job Seeking in a Web Based World
Job Seeking in a Web Based World
 
Tools and Resources for Transition from Libraries to Wider Community Use Cent...
Tools and Resources for Transition from Libraries to Wider Community Use Cent...Tools and Resources for Transition from Libraries to Wider Community Use Cent...
Tools and Resources for Transition from Libraries to Wider Community Use Cent...
 
Designing Your Career @ amUX Atlanta
Designing Your Career @ amUX AtlantaDesigning Your Career @ amUX Atlanta
Designing Your Career @ amUX Atlanta
 
How to Build your Career.pptx
How to Build your Career.pptxHow to Build your Career.pptx
How to Build your Career.pptx
 
NLJUG speaker academy 2023 - session 1
NLJUG speaker academy 2023 - session 1NLJUG speaker academy 2023 - session 1
NLJUG speaker academy 2023 - session 1
 
Technical Writing Overview: WTD Nigeria
Technical Writing Overview: WTD NigeriaTechnical Writing Overview: WTD Nigeria
Technical Writing Overview: WTD Nigeria
 
The passionate programmer
The passionate programmerThe passionate programmer
The passionate programmer
 
Designers are from Venus - Presentationas Given to CD2
Designers are from Venus - Presentationas Given to CD2Designers are from Venus - Presentationas Given to CD2
Designers are from Venus - Presentationas Given to CD2
 
Copywriting for UX
Copywriting for UXCopywriting for UX
Copywriting for UX
 
Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software Development
 
Android Developer Training
Android Developer TrainingAndroid Developer Training
Android Developer Training
 
“If they would just listen to us...”: Turning Internal Client Relationships i...
“If they would just listen to us...”: Turning Internal Client Relationships i...“If they would just listen to us...”: Turning Internal Client Relationships i...
“If they would just listen to us...”: Turning Internal Client Relationships i...
 
DevRel Salon - Writing Decent Documentation, a learning journey with plenty o...
DevRel Salon - Writing Decent Documentation, a learning journey with plenty o...DevRel Salon - Writing Decent Documentation, a learning journey with plenty o...
DevRel Salon - Writing Decent Documentation, a learning journey with plenty o...
 
Concept to Launch: The Ultimate Confluence Guide for Software Teams
Concept to Launch: The Ultimate Confluence Guide for Software TeamsConcept to Launch: The Ultimate Confluence Guide for Software Teams
Concept to Launch: The Ultimate Confluence Guide for Software Teams
 

More from Brian Hogan

Creating and Deploying Static Sites with Hugo
Creating and Deploying Static Sites with HugoCreating and Deploying Static Sites with Hugo
Creating and Deploying Static Sites with HugoBrian Hogan
 
Automating the Cloud with Terraform, and Ansible
Automating the Cloud with Terraform, and AnsibleAutomating the Cloud with Terraform, and Ansible
Automating the Cloud with Terraform, and AnsibleBrian Hogan
 
Create Development and Production Environments with Vagrant
Create Development and Production Environments with VagrantCreate Development and Production Environments with Vagrant
Create Development and Production Environments with VagrantBrian Hogan
 
Getting Started Contributing To Open Source
Getting Started Contributing To Open SourceGetting Started Contributing To Open Source
Getting Started Contributing To Open SourceBrian Hogan
 
Rethink Frontend Development With Elm
Rethink Frontend Development With ElmRethink Frontend Development With Elm
Rethink Frontend Development With ElmBrian Hogan
 
Testing Client-side Code with Jasmine and CoffeeScript
Testing Client-side Code with Jasmine and CoffeeScriptTesting Client-side Code with Jasmine and CoffeeScript
Testing Client-side Code with Jasmine and CoffeeScriptBrian Hogan
 
FUD-Free Accessibility for Web Developers - Also, Cake.
FUD-Free Accessibility for Web Developers - Also, Cake.FUD-Free Accessibility for Web Developers - Also, Cake.
FUD-Free Accessibility for Web Developers - Also, Cake.Brian Hogan
 
Responsive Web Design
Responsive Web DesignResponsive Web Design
Responsive Web DesignBrian Hogan
 
Web Development with CoffeeScript and Sass
Web Development with CoffeeScript and SassWeb Development with CoffeeScript and Sass
Web Development with CoffeeScript and SassBrian Hogan
 
Building A Gem From Scratch
Building A Gem From ScratchBuilding A Gem From Scratch
Building A Gem From ScratchBrian Hogan
 
Intro To Advanced Ruby
Intro To Advanced RubyIntro To Advanced Ruby
Intro To Advanced RubyBrian Hogan
 
HTML5 and CSS3 Today
HTML5 and CSS3 TodayHTML5 and CSS3 Today
HTML5 and CSS3 TodayBrian Hogan
 
Web Development With Ruby - From Simple To Complex
Web Development With Ruby - From Simple To ComplexWeb Development With Ruby - From Simple To Complex
Web Development With Ruby - From Simple To ComplexBrian Hogan
 
Stop Reinventing The Wheel - The Ruby Standard Library
Stop Reinventing The Wheel - The Ruby Standard LibraryStop Reinventing The Wheel - The Ruby Standard Library
Stop Reinventing The Wheel - The Ruby Standard LibraryBrian Hogan
 
Make GUI Apps with Shoes
Make GUI Apps with ShoesMake GUI Apps with Shoes
Make GUI Apps with ShoesBrian Hogan
 
Story-driven Testing
Story-driven TestingStory-driven Testing
Story-driven TestingBrian Hogan
 
Learning To Walk In Shoes
Learning To Walk In ShoesLearning To Walk In Shoes
Learning To Walk In ShoesBrian Hogan
 
Rails and Legacy Databases - RailsConf 2009
Rails and Legacy Databases - RailsConf 2009Rails and Legacy Databases - RailsConf 2009
Rails and Legacy Databases - RailsConf 2009Brian Hogan
 

More from Brian Hogan (20)

Creating and Deploying Static Sites with Hugo
Creating and Deploying Static Sites with HugoCreating and Deploying Static Sites with Hugo
Creating and Deploying Static Sites with Hugo
 
Automating the Cloud with Terraform, and Ansible
Automating the Cloud with Terraform, and AnsibleAutomating the Cloud with Terraform, and Ansible
Automating the Cloud with Terraform, and Ansible
 
Create Development and Production Environments with Vagrant
Create Development and Production Environments with VagrantCreate Development and Production Environments with Vagrant
Create Development and Production Environments with Vagrant
 
Docker
DockerDocker
Docker
 
Getting Started Contributing To Open Source
Getting Started Contributing To Open SourceGetting Started Contributing To Open Source
Getting Started Contributing To Open Source
 
Rethink Frontend Development With Elm
Rethink Frontend Development With ElmRethink Frontend Development With Elm
Rethink Frontend Development With Elm
 
Testing Client-side Code with Jasmine and CoffeeScript
Testing Client-side Code with Jasmine and CoffeeScriptTesting Client-side Code with Jasmine and CoffeeScript
Testing Client-side Code with Jasmine and CoffeeScript
 
FUD-Free Accessibility for Web Developers - Also, Cake.
FUD-Free Accessibility for Web Developers - Also, Cake.FUD-Free Accessibility for Web Developers - Also, Cake.
FUD-Free Accessibility for Web Developers - Also, Cake.
 
Responsive Web Design
Responsive Web DesignResponsive Web Design
Responsive Web Design
 
Web Development with CoffeeScript and Sass
Web Development with CoffeeScript and SassWeb Development with CoffeeScript and Sass
Web Development with CoffeeScript and Sass
 
Building A Gem From Scratch
Building A Gem From ScratchBuilding A Gem From Scratch
Building A Gem From Scratch
 
Intro To Advanced Ruby
Intro To Advanced RubyIntro To Advanced Ruby
Intro To Advanced Ruby
 
HTML5 and CSS3 Today
HTML5 and CSS3 TodayHTML5 and CSS3 Today
HTML5 and CSS3 Today
 
Web Development With Ruby - From Simple To Complex
Web Development With Ruby - From Simple To ComplexWeb Development With Ruby - From Simple To Complex
Web Development With Ruby - From Simple To Complex
 
Stop Reinventing The Wheel - The Ruby Standard Library
Stop Reinventing The Wheel - The Ruby Standard LibraryStop Reinventing The Wheel - The Ruby Standard Library
Stop Reinventing The Wheel - The Ruby Standard Library
 
Make GUI Apps with Shoes
Make GUI Apps with ShoesMake GUI Apps with Shoes
Make GUI Apps with Shoes
 
The Why Of Ruby
The Why Of RubyThe Why Of Ruby
The Why Of Ruby
 
Story-driven Testing
Story-driven TestingStory-driven Testing
Story-driven Testing
 
Learning To Walk In Shoes
Learning To Walk In ShoesLearning To Walk In Shoes
Learning To Walk In Shoes
 
Rails and Legacy Databases - RailsConf 2009
Rails and Legacy Databases - RailsConf 2009Rails and Legacy Databases - RailsConf 2009
Rails and Legacy Databases - RailsConf 2009
 

Recently uploaded

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
 
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
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
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
 
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
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
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
 
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
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
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
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
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
 
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
 
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
 

Recently uploaded (20)

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
 
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
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
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
 
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
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
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...
 
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
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
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
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
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
 
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!
 
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...
 

Turning Passion Into Words

  • 1. Turning Passion Into Words Tips, Tools, Techniques for Aspiring Authors twitter: bphogan email: brianhogan at napcs.com
  • 4. Yes. Very yes. http://www.flickr.com/photos/30743345@N04/4694171907
  • 5. "But people can get all that off of blogs!"
  • 6. The reader wants your experience, not your answers.
  • 7. Let’s assume you have a topic.
  • 9. Define your target audience and decide who is outside
  • 10. Create a reader profile Tammy is a backend software developer She works primarily with Java. She's great with VIm, knows how to configure Tomcat with XML, and understands how tough it can be to get requirements out of users, but when it comes to picking colors, fonts, or layouts, she needs help. She wants to be able to understand design concepts so that her conversations with the UI team will go more smoothly.
  • 12. Dreyfus Model (of skill acquisition) "The Dreyfus model describes how and why our abilities, attitudes, capabilities, and perspectives change according to skill level." -Andy Hunt
  • 13. Novices No previous experience, need recipes to solve problems.
  • 14. 10 years of experience or one year of experience ten years in a row?
  • 15. Advanced Beginners They can try tasks on their own, but they still have difficulty troubleshooting. They want information fast.
  • 16. Competent Can develop conceptual models of the problem domain, troubleshoot effectively, and implement their own novel solutions.
  • 17. Proficient They need the big picture and want to understand the framework around the skill.
  • 18. The expert Experts are the primary sources of knowledge and information in any field.
  • 19. Experts are rare. 1-5% of the population
  • 20. Experts work from intuition and they often cannot explain how they do what they do.
  • 21. Which one of these are you?
  • 22. The competent make the best teachers
  • 23. Most people stop progressing at Advanced Beginner.
  • 24. Learn about this model and use it to move your reader from one stage to the next.
  • 25. Define your thesis! What are you talkin' about??
  • 26. HTML5 and CSS3 are the future of web development, but you don’t have to wait to start using them. Even though the specification is still in development, many modern browsers and mobile devices already support HTML5 and CSS3. This book gets you up to speed on the new HTML5 elements and CSS3 features you can use right now, and backwards compatible solutions ensure that you don’t leave users of older browsers behind.
  • 27. Outline your writing 1. HTML5 Forms 1.New form fields 1.Email, url, tel, number, range, date, color 2.discuss fallbacks 1.implement fallback with jquery-ui for calendars 2.discuss modernizr 3.Placeholder and Autofocus 1.Placeholder 1.Placeholder fallback with custom plugin
  • 28. What do you want the reader to learn? Set goals at the start and see if you meet them at the end.
  • 29. Research your market • What books out there are similar to yours? • Why would yours be different? • What is your audience size? • How many of them would buy a book on the topic? • What other books would have similar sales numbers to yours?
  • 30. Your first chapter and don’t start with “Introduction!”
  • 31. Write about what you are excited about first to gain momentum.
  • 32. Writing about Code The best books about code talk more about the why than the how. Don’t just explain the code. Explain why the code you’re demonstrating is the best solution.
  • 33. AVOID APPEAL TO AUTHORITY Be the expert Don’t use quotes from well- known people to bolster your argument. Use your experience!
  • 34. Get into a pattern
  • 36. Be consistent. Try to do a chapter in two weeks.
  • 38. Be yourself. Don’t be funny if you’re not.
  • 39. Beware of emulation Don’t write like you think you should write or how you see others write.
  • 40. Academic Behavior driven development (or BDD) is an agile software development technique that encourages collaboration between developers, QA and non-technical or business participants in a software project. It was originally named in 2003 by Dan North[1] as a response to Test Driven Development, including Acceptance Test or Customer Test Driven Development practices as found in Extreme Programming. It has evolved over the last few years[2].
  • 41. Less Academic Behavior driven development is a software development methodology created by Dan North in 2003 as a response to traditional Test Driven Development. It includes elements of Extreme Programming, such as acceptance testing, and it encourages collaboration between technical and non-technical members of a software development team.
  • 42. Say more with less • “Utilize” should be “Use” • “At this point in time” should be “Now” • “What x does is...” - just tell us already! • “really”, “very”, “quite”, “severely” don’t emphasize things as much as you think they do. Look for them, remove them, and see if you like how it looks.
  • 43. Compare: There are twenty-five students who have already expressed a desire to attend the program next summer. It is they and their parents who stand to gain the most by the government grant. Twenty-five students have already expressed a desire to attend the program next summer. They and their parents stand to gain the most by the government grant.
  • 44. So you have an idea, a thesis, an outline, some content that we’ve written and self- edited... let’s get published.
  • 45. Finding a publisher vs Self Publishing
  • 47. They have a brand.
  • 48. They have people to help you • Developmental editors • Copy editors • Professional indexers • Production managers • Marketers • Artists • Professional Typesetters • Foreign Rights brokers
  • 49. They are also more experienced than you
  • 50. You get a lot of help... but it comes at a cost.
  • 51. The Advance Not always a good deal.
  • 52. $10,000 advance, 10% royalties If your book doesn't sell, you did a years' worth of work for $10,000
  • 53. Buybacks Publishers have to buy back your books from Amazon if they don't sell.
  • 54. Self publishing Go it alone?
  • 55. Can you 1. write a concise book that meets the needs of your reader, reasonably free of errors? 2. get an unbiased opinion of your work? 3. deliver your book in print form to those that want it? 4. deliver your book in PDF, ePub, or Kindle format in a way that actually looks good across multiple platforms and devices? 5. be willing to promote the hell out of your book through web sites, user groups, communities, trade shows, etc?
  • 56. Of course you can. But do you have the time?
  • 57. Finding a publisher • Start with a publisher you respect. • Each publisher has a different process, but most publishers have acquisitions editors that work to find authors for topics. – http://pragprog.com/write-for-us/ –
  • 58. Developmental Editors Your pair.
  • 59. A good DE can • Be a sounding board for your ideas and help you find your target audience • Give you feedback as an outsider on your content • Help you keep your tone consistent • Help you stay on track
  • 61. Tools to get stuff done
  • 62. Version control Treat your book just like code. It's valuable.
  • 65. Markdown plain text to HTML
  • 66. Extending Ruby ============ Instead of using monkeypatching, we can include our code as a *module*. module NinjaBehavior def attack puts "You've been silently killed" end end We can then bring this behavior into our clasess. This technique is often called a *mixin*.
  • 67. You can convert Markdown to HTML and PDF with relative ease.
  • 68. Markdown does not convey meaning.
  • 69. Docbook the revenge of XML
  • 70. XML is only evil when you use it wrong.
  • 71. Docbook features • Descriptive markup • Automatic chapter and section numbering • Automatic cross-referencing • Table of Contents generation • Support for indexing • Extendable • Complete separation between content and presentation • Export to HTML, PDF, ePub, etc
  • 72. Docbook example <chapter xmlns="http://docbook.org/ns/docbook" xml:id="models.association.ext"> <title>Using Association Extensions to group records</title> <para> Association extensions let us apply methods to our ActiveRecord associations so we can quickly get access to your collected data. </para> <para> Our registration system needs a report of all currently enrolled students in a given workshop. We can do that fairly quickly by defining our own <methodname>currently_enrolled</methodname> method on the <classname>Workshop</classname> class like this:. </para> <programlisting language=”ruby”> <![CDATA[ class Workshop < ActiveRecord::Base has_many :enrollments has_many :students, :through => :enrollments def currently_enrolled enrollments.find_all_by_enrolled(true) end end ]]> </programlisting>
  • 73. Structural markup • chapter – sect1 • sect2 – sect3 – para – orderedlist • listitem – para – unorderedlist • listitem – para
  • 74. Verbatim markup • programlisting – CDATA • code • screen – CDATA • plain text
  • 75. Admonishment markup • sidebar • warning • tip • note • caution
  • 76. semantic markup • application • database • mousebutton • methodname • email • option • varname • errorname • keycombo • classname • errortext • quote • abbrev • foreignphrase • task • acronym • funcparams • term • action • funcdev • uri • arg • interface • ...more
  • 77. By using this markup, we can create a style guide.
  • 78. XSLT transformations • HTML • Formatting objects (XSL-FO) – PDF – mobi • ePub
  • 82. You have to promote your book • Twitter • Facebook • Your blog • Your reviewers • Amazon reviews
  • 83. What if I can’t do it all?
  • 84. Divide up the work get a co-author
  • 85. Beware though.... • You want a unified voice • You need to deal with your disagreements • You need to work as a partnership
  • 86. Not writing a book? Everything here still applies.

Editor's Notes

  1. \n
  2. We write to teach. We write because sometimes we have something we want to tell people about. Sometimes it&apos;s because we are excited about a topic, and sometimes we write because we think people need to know about something.\n
  3. So the first question I get from people when they find out i write books is &quot;Do people \n
  4. \n
  5. They sure can. But they have to look through the blogs, they have to vet the writer and the writer&apos;s experience. If you&apos;ve searched Google for the answers to problems, sometimes you have to do a lot of sifting.\n
  6. You come to the table with answers backed by experience. Out of the 20 ways to solve that JS problem, you know the one that works in a particular given situation. You&apos;ve been there. \n
  7. You&amp;#x2019;ve got something you want to talk about, so now let&amp;#x2019;s see if there&amp;#x2019;s interest.\n
  8. When you&apos;re writing, you want to share what you know, but you have to be sure you know who you&apos;re talking to. \n\nAre they experts? Are they beginners? \n
  9. You want to decide early on who your target audience is. But also think about who is out of scope. If you&apos;re teaching beginner topics, you may not go very deep into anything.&amp;#xA0;\n&amp;#xA0;\nIf you&apos;re teaching an expert topic, don&apos;t be afraid to skip some of the beginner stuff. \n
  10. This is our reader profile It&apos;s a persona. You may develop more than one of these, but you want to think of this person as the person you&apos;re working with as you write your book.\n
  11. Understand their problems, their mindset, and their goals.You want to be their guide. \n
  12. There&amp;#x2019;s more to skill levels than just being better, smarter, or faster.\n\nExpert staff members working in the trenches aren&amp;#x2019;t alwaysrecognized as experts or paid accordingly\n&amp;#xA0;\nNot everyone regarded as an expert actually has the abilities we think they do.\n&amp;#xA0;\n&amp;#xA0;\n
  13. Novices are very concerned about their ability to succeed; with littleexperience to guide them,\n
  14. \n
  15. They don&apos;t really want theory, they just want to get stuff done. They know the basics. People who run to the API first are typical Advanced Beginners.\n
  16. They can also seek out the advice of experts and synthesize it.\n
  17. When you call tech support about your computer, you get irritated because they give you the runaround.\n
  18. \n
  19. Experts are not perfect, and experts may disagree with each other.\n
  20. Experts may disagree with eachother an the appropriate approaches.\n
  21. In your field, how many of you are novices?\n\nHow many are advanced beginners?\n\nHow many are competent?\n\nHow many are proficient?\n\nNow how many experts do we have?\n
  22. They&apos;re still close to the novice, they are still learning themselves, and they&apos;ve not gotten too far into something to forget what it&apos;s like. \n
  23. Because they move on to something else. It takes a very long time to become great at something, and we don&apos;t really have a field that lets us do that.\n
  24. Start with a novice, and make them an advanced beginner.&amp;#xA0;\n\nStart with an advanced beginner and make them competent.\n
  25. What is your main topic? What problem are you trying to solve? What are you trying to teach?\n
  26. Think about how this thesis will tie into your reader profile. What goals are you setting for them?\n
  27. The more detail you can add to your outline, the better off you&apos;ll be as you go into each chapter.\n
  28. It always comes back to this.\n
  29. Assuming you can get these questions answered, and you&amp;#x2019;re optimistic enough to think you can move on, then....\n
  30. So now that you have an outline, a thesis, and a reader profile, start writing your first chapter\n
  31. \n
  32. \n
  33. Saying &amp;#x201C;The HTML5 Boilerplate, written by Paul Irish of Google, is the best option.&amp;#x201D; Explain why you use it.\n
  34. Write every day. \n
  35. 750words is a great way to track your writing. The idea is to write 750 words a day. There&amp;#x2019;s a scorecard. You get 1 point for writing something, 2 points for 750 words, and 3 points or more for writing even more. \n
  36. \n
  37. \n
  38. We often rely on humor to make tech books more interesting, but if you do it too much you&amp;#x2019;re just going to come off annoying and grating. A good editor or technical reviewers will help that process greatly. \n\n
  39. We have a tendancy to write very academically. We tend to use bigger words than we need to because we see it all the time in other writing.\n\n
  40. \n
  41. We don&amp;#x2019;t need to focus on things that the reader doesn&amp;#x2019;t care about.\n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. Having your book published under the banner of a publisher that&apos;s respected in your firled can carry a lot of weight.\n
  48. \n
  49. They know about other books coming along, they have access to technical reviewers that you might not have. They can turn out great looking copies of your book for the iPad and the Kindle.\n
  50. \n
  51. Some publishers offer an advance. That means they pay you up front for the work, but y ou don&apos;t receive any royalties until you accrue the amount of the advance.\n
  52. \n
  53. This comes out of future royalty payments.\n
  54. So, to many of us, with the technology available, why not self-publish?\n
  55. \n
  56. How many of you do your own taxes, or accounting work, or your own legal forms?\n\nWe pay experts to do this.\n
  57. \n
  58. Nothing helped me more as a writer than having a couple of excellent developmental edtiros after having a couple of very mediocre ones. \n
  59. If you are going to self-publish, hire a developmental editor either on a royalty basis or a flat fee. Don&apos;t go it alone.\n
  60. You&apos;ll want someone with a keen eye for grammar and spelling, especially if you&apos;re not that great at it.\n
  61. \n
  62. \n
  63. You also need a writing tool.\n\nPen and paper is good, and it&apos;s important to use whatever works best for you in order to get the words out of your head and in some organzed format.\n
  64. Microsoft Word may be an easy place for some people to start writing, but I promise you that path leads nowhere good.\n
  65. Markdown was created by John Gruber and Aaron Swartz and it&amp;#x2019;s a simple way to write up content. You don&amp;#x2019;t use tags, you just use some conventions.\n\n
  66. We use equals signs underneath the main header to convert that to a header. We indent our code four spaces. We can italicize words by putting asterisks around them.\n
  67. \n
  68. You can&amp;#x2019;t express the meaning of things with Markdown. It&amp;#x2019;s great for the attention deficit, and while it may be a nice way to throw some slides together, when you&amp;#x2019;re writing a book you need something more.\n
  69. Docbook. It&amp;#x2019;s an XML markup language for writing books.\n\n
  70. There&amp;#x2019;s a hatred for XML because iwe&amp;#x2019;ve seen it used for configuration files in big programming frameworks. But XML is a markup language and is really quite nice to work with when writing books.\n
  71. \n
  72. \n
  73. \n
  74. \n
  75. \n
  76. \n
  77. \n
  78. \n
  79. \n
  80. Don&amp;#x2019;t write in the dark. Get feedback, and get it from lots of people. Get it from strangers, experts, newbies, etc.\n
  81. \n
  82. Get people to promote your book for you. Give copies away to people early on. Have them review it.\n
  83. \n
  84. Find someone you can work with.\n
  85. The reader needs to feel as it&amp;#x2019;s one author writing the book. And you need to be able to reconcile your differences of opinions. You also need to be able to pick up the slack. Writing is hard stuff. Sometimes you can&amp;#x2019;t do it. So your buddy needs to take that on with you.\n
  86. Planning, writing, editing, tech reviewing, promotion, all of that stuff still applies to written communication.\n
  87. \n