Who fancies a community effort to write a book?
Moderator: General Moderators
I started writing out a template of what a book i would write (as if) would be broken down into, but I re-read the forum and you guys hit every point i was going to hit and more.
However, I have a couple additional ideas.
#1: Newbies would like to see it in action. I think rather than lots of reading you should bang out a script at the beginning of a chapter and then break it down. Explaining... going into detail.
#2: Have periodic "challenges" for the readers to try on their own. Perhaps with an answer in the back of the book. (trial and error is good learning).
However, I have a couple additional ideas.
#1: Newbies would like to see it in action. I think rather than lots of reading you should bang out a script at the beginning of a chapter and then break it down. Explaining... going into detail.
#2: Have periodic "challenges" for the readers to try on their own. Perhaps with an answer in the back of the book. (trial and error is good learning).
Set Search Time - A google chrome extension. When you search only results from the past year (or set time period) are displayed. Helps tremendously when using new technologies to avoid outdated results.
- Maugrim_The_Reaper
- DevNet Master
- Posts: 2704
- Joined: Tue Nov 02, 2004 5:43 am
- Location: Ireland
Great list, more like it and we can start figuring out exact order, content and start merging notesEverah wrote:-- How does it compare (briefly vs ASP, CF, Ruby, Python etc)
On a side note, we should stress an objective text for this particular section. In trying to expose the reader to why they should use PHP it can become too easy to fall into the black pit of criticising other languages. I may be talking to the converted here but we've all seen the "VS" character between two language names too often...
The thing here (and I did neglect to mention functions!) is that your titles integrate two different things. A function in procedural is very similar to one in classes, but they are not identical. There definitely should be a chapter on Functions just prior to Objects and Classes, and it should note function use in classes (referring readers to next chapter). I would also dispute calling the following Chapter Advanced PHP - it's too generic for starters, and the label shifts the focus to thinking of this as a Chapter a beginner may avoid. Advanced in this case is in a far different context.aborint wrote:Following that thinking, I would rename Magrim's chapter "Introduction to PHP Objects and Classes" to "Introduction to PHP Functions and Classes". Likewise I would rename "Advanced PHP Objects and Classes" to simply "Advanced PHP" and it could also include things like using variables as function names, variable parameter lists, etc.
I totally agree. My opinion just differs to how far we go to attain that neutralityaborint wrote:My idea is to not present functions and classes as competing things, but to simply present them as different language constructs like you might present if() and switch(). I would like the attitude to be neutral like this:
Design Concepts is largely where the Advanced O&C chapter would take off. The basics done, bumping up to a more advanced level becomes very difficult until the whole point of Objects gets explained. Maybe a briefer explanation, followed by your suggested Design Concepts as a separate chapter?aborint wrote:I would maybe add a "Design Concepts" chapter to discuss key concepts (orthogonality, encapsulation, polymorphism, etc.) and design patterns. And also add a "Methodologies" section to talk about debugging, unit testing, refactoring, etc.
Just to clarify, is there a thought of contents organised by Section, then Chapter?
I think that's almost next to impossible. Once you mention OOP, you start reaching design practices which are OOP specific. While procedural has a place, OOP for the moment has huge advantages. This does not make procedural defunct - it just makes it a tool not suitable for every job (whatever interpretation of that individual programmers may have).aborint wrote:If there are opinions in the book, they should be about good design practices that apply when using both functions and classes.
scottayy - forum on the way to get all these topics separated
This sounds like a great idea, and you've included some topics that were vital to my journey through learning PHP but are sometimes missing from books - in particular PEAR/PECL and the php.ini file topics.
I'd be happy to help out wherever I can, I can certainly test code examples and proofread if needed - especially if anyone is not feeling confident about their English. I'd like to contribute but I suspect others are probably better qualified than myself so I'll fit in wherever.
I'd be happy to help out wherever I can, I can certainly test code examples and proofread if needed - especially if anyone is not feeling confident about their English. I'd like to contribute but I suspect others are probably better qualified than myself so I'll fit in wherever.
- Ambush Commander
- DevNet Master
- Posts: 3698
- Joined: Mon Oct 25, 2004 9:29 pm
- Location: New Jersey, US
-
Charles256
- DevNet Resident
- Posts: 1375
- Joined: Fri Sep 16, 2005 9:06 pm
You guys need a noob
Hello everyone,
You're lucky, i'm a real Php Noob and will definitely love to see that project running.
Although i lack knowledge and practice on Php, i do get a good idea on how i see a practical book for it.
First, after reading the pages here and the structures proprosed, i may submit that a technical book does not need to be linear.
You certainly need to empaphize that you need more skill @ the end of the book than @ the beginning, tho, it may be splitted in
whatever sections you really need to focus on.
Installation and technical tricks shouldn t be the first step i think, you really need to go straight to the point and go deeper if needed.
Also, you may work on a case study all along the book, giving a real sample and a working app @ the end.
Most of the readers will want that book to give them a good approach of Php programming, meaning how to get my php project from A to Z.
So, here comes my suggestion plan :
Hope that helps.
You're lucky, i'm a real Php Noob and will definitely love to see that project running.
Although i lack knowledge and practice on Php, i do get a good idea on how i see a practical book for it.
First, after reading the pages here and the structures proprosed, i may submit that a technical book does not need to be linear.
You certainly need to empaphize that you need more skill @ the end of the book than @ the beginning, tho, it may be splitted in
whatever sections you really need to focus on.
Installation and technical tricks shouldn t be the first step i think, you really need to go straight to the point and go deeper if needed.
Also, you may work on a case study all along the book, giving a real sample and a working app @ the end.
Most of the readers will want that book to give them a good approach of Php programming, meaning how to get my php project from A to Z.
So, here comes my suggestion plan :
Code: Select all
A - Preface
A.n -- ...
A.(n+1)-- Purpose of the book.* !important
1 - Introduction
1.1 --Step In (Everything generic, not specific to PHP)
1.1.1 --- General programming Introduction !important
What is a program ?
1.1.2 --- Variables, constants and operators
1.1.3 --- Types
1.1.4 --- Programming Technology, overview (procedural, OOP...)
1.2 --PHP
1.2.1 --- History, background of PHP !optional
1.2.2 --- Why Php ...? How does it compare to ASP &.... !optional
1.2.3 --- php Scope (or what can php do for you ?) !important
1.2.4 --- the Manual, where to find it, how to use it.
1.2.5 --- Inside reference. Explain how to use the reference in Appendix(A)
2 - Building a project !In theory this works for any language.
2.1 --- Brainstorm, fix your ideas and goals.
2.2 --- Paperwork, comments, cvs, versioning, split large project in small modules.
2.3 --- Decisions : tools, database, etc...
2.4 --- Shake it, theorical case studies.
2.5 --- Project Cycles, goto 2.2
2.6 --- Setup process, "build often", i don't know if it applies.
2.7 --- Good coding, writing conventions, reusability, factorisation.
2.8 --- Debugging, testing.goto 2.8
2.9 --- Deployment.
(@ that point we do have a project for our book : let's say an agenda)
3 - Web Developpement Overview!Important
3.1 -- What's so different ?
3.1.1 --- Displaying Informations.(HTML,XHTML,CSS, XML, XSLT)
3.1.2 --- Client side kick (JS)
3.1.3 --- Mixing tech (AJAX)
3.1.4 --- Intranet, Internet
4 - Desktop/Console Developpement Overview
4.1 -- (i really have no idea here, i don't have any example of Desktop app using PHP)
5 - Getting started
5.1 -- Check Appendix(B), then Configure PHP
Select your webserver, install it and set it up
5.1.1 --- PHP Quicksetup
5.1.2 --- Hello World!
5.1.3 --- How come ?
6 - PHP Fundamentals
6.1 -- variables and references...
6.2
6.N -- unicode ?
7 - PHP Statements
8 - Procedural Coding
9 - OOP Introduction
10 - Strings
11 - Arrays
12 - Deeper into the web (here comes web dev PHP specifics)
12.1 HTTP Input
12.N Cross server applications
14 - Advanced PHP Object and Classes
15 - Security
16 - Test/Debug
17 - Deploiement
APPENDIX A - PHP REFERENCES
APPENDIX B - (X)HTML QUICK REF
APPENDIX C - XML QUICK REF
APPENDIX D - JS QUICK REF
APPENDIX E - CSS/XSLT QUICK REF
APPENDIX F - WEBSERVERS - where what, compare, install etc..
APPENDIX G - DATABASES - As in MySQL install/setup etc...
APPENDIX H - SQL Woohoo- Ambush Commander
- DevNet Master
- Posts: 3698
- Joined: Mon Oct 25, 2004 9:29 pm
- Location: New Jersey, US
- Chris Corbyn
- Breakbeat Nuttzer
- Posts: 13098
- Joined: Wed Mar 24, 2004 7:57 am
- Location: Melbourne, Australia
I'm going away for a week without internet.
If no forum has appeared in our list by the end of today would somebody be so kind as to enquire further with one of the mods/admins?
If all else fails we should just a get a wiki online quickly.
It looks like you guys are steaming off along quite happily so hopefully when I come back there'll be plenty to catch up on
/Slopes off to get ready for a week in the sun
If no forum has appeared in our list by the end of today would somebody be so kind as to enquire further with one of the mods/admins?
If all else fails we should just a get a wiki online quickly.
It looks like you guys are steaming off along quite happily so hopefully when I come back there'll be plenty to catch up on
/Slopes off to get ready for a week in the sun
- Maugrim_The_Reaper
- DevNet Master
- Posts: 2704
- Joined: Tue Nov 02, 2004 5:43 am
- Location: Ireland
I copied a wiki setup to my own server - at some stage we should have a domain and someone willing to host it and the project's web presence. I think Everah offered originally...
http://phpbook.quantum-star.com/
I'm adding a redrafted chapter list I did last night in a short while.

http://phpbook.quantum-star.com/
I'm adding a redrafted chapter list I did last night in a short while.
Have fun! You have tons to catch up on when you get back...I'm going away for a week without internet.
- Ambush Commander
- DevNet Master
- Posts: 3698
- Joined: Mon Oct 25, 2004 9:29 pm
- Location: New Jersey, US
Book Title
Php Strikes Back ?
Return of the Php ?
php me
MyPhp ?
Learn or let die ?
Once upon a time on the web ?
Please Help People ?
ok... nuts.
Return of the Php ?
php me
MyPhp ?
Learn or let die ?
Once upon a time on the web ?
Please Help People ?
ok... nuts.
- Ambush Commander
- DevNet Master
- Posts: 3698
- Joined: Mon Oct 25, 2004 9:29 pm
- Location: New Jersey, US
- Ambush Commander
- DevNet Master
- Posts: 3698
- Joined: Mon Oct 25, 2004 9:29 pm
- Location: New Jersey, US
Hmm... I really don't think we should worry about such things right now. There's nothing mission critical hosted on servers other than phpDN. However, I would like to bring something to the table:
When Maugrim created the wiki, he proposed the idea of many people maintaining seperate content lists, and then putting them together at the end. I disagree. Unless a person's idea is radically different, we should practice continuous integration: people put in what they feel is right, and discuss issues in the contents. That is the wiki way.
When Maugrim created the wiki, he proposed the idea of many people maintaining seperate content lists, and then putting them together at the end. I disagree. Unless a person's idea is radically different, we should practice continuous integration: people put in what they feel is right, and discuss issues in the contents. That is the wiki way.