Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v2.0 should be accompanied by a book #1045

Closed
ghost opened this issue Feb 9, 2016 · 17 comments
Closed

v2.0 should be accompanied by a book #1045

ghost opened this issue Feb 9, 2016 · 17 comments

Comments

@ghost
Copy link

ghost commented Feb 9, 2016

Modern VBA: Best Practices, Rubberduck Team, Addison-Wesley, ISBN 978-0061964282

Some ideas:

  • How to OOP
  • Architecture / Design
  • What VBA is (from a language designer's point of view)
  • How to use Rubberduck v2.0 (of course)
  • Exception Handling / Logging(?)

Can either be made with or without a publisher. Tools exist to make this (somewhat) easy: http://asciidoctor.org/. Translated into multiple languages, link on Rubberduck's website, may be free or cost something.

Cover:

image
(imagine a ninja duck)
The fun is over

Probably a stupid idea but I thought I'd just throw it out there. Altough I did find a ticket on Github with ckuhn203 mentioning he wanted to write a book some day...

@retailcoder
Copy link
Member

might not be as crazy as it seems... but let's not make 2.0 dependent on this 😄

@Zomis
Copy link
Contributor

Zomis commented Feb 9, 2016

I'm not a big fan of this particular cover, but I like the idea :) I'd probably buy it, even though I don't do any VBA

@Hosch250
Copy link
Member

Hosch250 commented Feb 9, 2016

That cover reminds me of Jafar in Aladdin at his creepiest moments.

@ghost
Copy link
Author

ghost commented Feb 9, 2016

Haha that cover was just the first cool image I found. I'm up for anything!

See @retailcoder, we already found someone willing to buy the book :P

@rubberduck203
Copy link
Member

I won't lie. I've considered writing this book on more than one occasion. Probably not for the 2.0 release, but.... you've given me some motivation to actually write the damn thing.

I was personally thinking "Object Oriented VBA and Test Driven Development".

@retailcoder
Copy link
Member

@ckuhn203 you know we'll end up co-writing that book, right? ;-)

@rubberduck203
Copy link
Member

I wouldn't want to do it alone @retailcoder.

@ThunderFrame
Copy link
Member

Take the Dragon Book and make it a Ducky Book!

@PeterMTaylor
Copy link

I second this idea for a book myself in a do it yourself fashion however need to put forward some concerns.

Firstly, this topic being rubberduck is going to evolve over time, per version release.
Does re-printing or additional footnotes matter if a bug is found in the release and how could the user read it need to find patches?

Might be practical in the long run to have an ability to just print the "updated" wiki like what Wikipedia offers as a functionality for printing to create a complete PDF file on the fly, not sure if this could be e tended for kindle mobile ePub files, worth a moment to explore it.

If the wiki is structured to become an integrated chapters of the book then that is a good raw data is available for any publishing material could read and format.

Lastly, by invitation I was asked to review for Packt Publishing for VBA Excel programming. https://www.packtpub.com/application-development/excel-programming-vba-starter
I brought this up to suggest another angle by way of audiences that people from different professions coukd want to describe rubberduck in context.

Keep this conversation going it's getting interesting...

Peter

@Hosch250
Copy link
Member

@PeterMTaylor I think we would need to limit it to being an e-book, and I agree that there would need to be a section on known bugs. However, I do not think we need to track which features are in which release as the users can just download the latest version.

@PeterMTaylor
Copy link

@Hosch250 Sounds good for users to seek and find when required. I'm glad the book boundaries is being defined at this point in time and the preferred format.

@ghost
Copy link
Author

ghost commented Feb 11, 2016

I was thinking it could be a community effort, every e.g. contributor could write a chapter. One or two could be in charge of the entire book and make sure the writing is consistent and that the entire book is coherent.

Rubberduck wouldn't have to be the main focus of the book but could rather be a means to an end, i.e. how to achieve a maintainable code base. We could provide a lot of in depth information about how to write VBA and the language itself that can't be found anywhere else since there are probably only few people outside of Microsoft who deal with VBA as thoroughly as the people do on the rubberduck team.

Hosch250, rubberduck and retailcoder could be the people making sure the book is readable (just a thought).

Possible table of contents (very rough, merely meant as a way to start discussions):

  1. Table of Contents
  2. About the Authors(?)
  3. Foreword
  4. Acknowledgements
  5. Introduction
  6. What VBA is
  7. VBA OOP
  8. Structuring VBA applications (architecture level)
  9. Structuring VBA GUIs (MVP etc.)
  10. Testing
  11. Source Control
  12. Refactoring
  13. Appendix A: How to install Rubberduck
  14. Appendix B: How to Contribute to Rubberduck
  15. Bibliography
  16. Index

@PeterMTaylor
Copy link

@autoboosh Sounds good if RD wants to set the sails this way.

Hmm, to add maybe two thoughts of mine into this mix. :)

Firstly, Ash Maurya the author of Running Lean mentioned on his personal blog which I found it an interesting read of what he thought about writing a book was like writing new software. http://leanstack.com/meta-principles-i-learned-from-running-lean/

Perhaps a structured and collaborative approach for Rubberduck documentation no matter how automated (per version) be needed?

Secondly, perhaps using RD can be understood more as a product with some practical examples of VBA projects on the fly so readers could see how features work in context. Contributions would be an indication in this field.

@Vogel612
Copy link
Member

"a structured and collaborative approach for Rubberduck documentation [...]"

sounds like a job for the Github Wiki? I'm not really sold on the idea of a book, personally....

@rubberduck203
Copy link
Member

I don't think Rubberduck itself needs a book either. I think the wiki is a great place for the documentation, and anyone can create documentation there, not just team members.

Documentation is documentation.
When I say I'm interested in writing a book, it's outside the scope of this project and won't necessarily involve this software at all. (Beyond maybe a chapter about TDD.)

@Hosch250
Copy link
Member

Bernard Vukas is handling some of this very nicely: http://www.bernardvukas.com/blog/

@Hosch250
Copy link
Member

I'm not real hot on the idea of this, but I'll do my part if it gets going. This is an old issue, though--do we still want to do this, or should the issue be closed?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants