Documentation project for PureBasic?

Everything else that doesn't fall into one of the other PB categories.

Should we create a documentation project based on a Wiki?

Yes
57
92%
No
5
8%
 
Total votes: 62

Blade
Enthusiast
Enthusiast
Posts: 362
Joined: Wed Aug 06, 2003 2:49 pm
Location: Venice - Italy, Japan when possible.
Contact:

Post by Blade »

It would be great to start with already available contents.
Until now, many guys have already wrote their own documents. After permissions, we could glue/edit the varius sources together.
(a credits page will take note of those contributors and give them glory and fame)

This will be a great starting point.
What is great with wiki is that THEN, we all can add something, for example a proper "ten lines" example should be provided for each possible command, and I'll will be happy to add snippets each time I have something useful (or still missing)
Just see this PHP manual page about arrays ( http://it2.php.net/manual/en/ref.array.php ) to have an idea on how useful could be users contributions.
A place for commonly requested features like the code from the thread "FTP for all PB OS's" will be extremely useful too.

This wiki will contain references to the varius userlibraries too, and a section dedicated to external tools would be nice.

All we need is an "almost blank" already structured canvas.
mlwhitt
User
User
Posts: 67
Joined: Sat Jun 11, 2005 3:38 am
Location: Western Kentucky
Contact:

Post by mlwhitt »

I can't wait to see what the Wiki will look like. Sounds like you guys are really on track. I think this will be a HUGE benefit to the community.
PB and PureVision XP Registered.
www.michaelwhitt.com
User avatar
Droopy
Enthusiast
Enthusiast
Posts: 658
Joined: Thu Sep 16, 2004 9:50 pm
Location: France
Contact:

Post by Droopy »

very promising :D
Klonk
Enthusiast
Enthusiast
Posts: 173
Joined: Tue Jul 13, 2004 2:17 pm

Post by Klonk »

So as I see now most of you are highly interested.

Let's first of all clarify the following topics (sorted on importance):
1. Where should this Wiki be hosted? (I offer my personal webspace or is there some better alternative?)
2. What Wiki system should be used?
3. How should the layout look like?
4. What logo should be used for this project (but this could be decided later on)
5. Which License to use?

Generally speaking: The layout of the wiki could always be changed in future, but the data will remain.

My suggestions:
- Lets use PmWiki.
- Each topic should have its own page.
- For each chapter there should be an overview page as well as an overall overview page (=TOC).
- Comments should be entered at the end of each topic page.
- The layout should use tabs for easy editing or page history.
- The layout should be clear and not contain fancy graphics thus having faster loading and better editing and of course better readability It might look something like http://www.pmwiki.org/wiki/Cookbook/MonobookSkin or http://www.pmwiki.org/wiki/Cookbook/DropDownSkin (currelty I use the latter one). As soon we decided where to host this project an which wiki to use I could provide a possible layout quite soon (for PmWiki), as i plan to change it on my homepage anyway.

@Dräc:
Sounds good. I think this TOC might be also a good starting point. Of course we can extend it during writing the documentation, when necessary.
Bye Karl
Num3
PureBasic Expert
PureBasic Expert
Posts: 2812
Joined: Fri Apr 25, 2003 4:51 pm
Location: Portugal, Lisbon
Contact:

Post by Num3 »

Well for wiki's i always use the example from http://en.wikipedia.org/
It's clear, direct, and easy reading.
Anyway the style is just CSS which can be quickly altered...

There's a TV sketch here in Portugal that is pretty popular:
"They talk, and talk and talk... And i don't see them doing anything"

So, let's get this show moving:

1. Who can offer webspace ? And in which terms ?

2. I vote for pmWiki, with Monobook skin, but the search box should be on top!

3. Don't worry about the TOC / layouts now, this will have to be done has we go along, or we wont even start!

4. All "articles" / code has to be free to anyone, no copyright should be asked or infringed.

5. There are 1700 registered users in this forum, if 17 (1%) participates on a regular basis on the wiki, this project can really take off!
Blade
Enthusiast
Enthusiast
Posts: 362
Joined: Wed Aug 06, 2003 2:49 pm
Location: Venice - Italy, Japan when possible.
Contact:

Post by Blade »

Totally second Num3.
I'm worried about hosting, we haven't much luck with this forum hosting, don't want to risk to get the wiki db corrupted... :?
Dräc
Enthusiast
Enthusiast
Posts: 150
Joined: Sat Oct 09, 2004 12:10 am
Location: Toulouse (France)
Contact:

Post by Dräc »

Klonk
Let's first of all clarify the following topics (sorted on importance):
1. Where should this Wiki be hosted? (I offer my personal webspace or is there some better alternative?)
2. What Wiki system should be used?
3. How should the layout look like?
4. What logo should be used for this project (but this could be decided later on)
5. Which License to use?
Num3
1. Who can offer webspace ? And in which terms ?

2. I vote for pmWiki, with Monobook skin, but the search box should be on top!

3. Don't worry about the TOC / layouts now, this will have to be done has we go along, or we wont even start!

4. All "articles" / code has to be free to anyone, no copyright should be asked or infringed.

5. There are 1700 registered users in this forum, if 17 (1%) participates on a regular basis on the wiki, this project can really take off!
Right!
Those questions are the first true ones.
Nothing can start without having an answer for each point…

Personally, I let web technical question to more expert then me ;)

@Num3
Don't worry about the TOC / layouts now, this will have to be done has we go along, or we wont even start!
Ok it is less urgent than web technical questions, then sorry to deal with this now,
but I not agree with you because even if wiki technology allows easy changes, it is important to well think the layout at the beginning.
This for three reasons:
- It is the fist guaranty of an homogeneous structure and of the spirit of the whole document…
- It is the guaranty of the user needs
- Any cosmetic change (skin, syles…) can be performed quickly without text and semantic losses

On my opinion, it’s important to have the following points (nothing new):

- An synthetic overview: for each instruction a quick vision of the how to use

- The definition: the most exact, simple and clear definition

- The explanations: it’s just followed the definition to explicit each instruction input and output…

- Basic example(s ?): This represents the primary form of how to use the instruction.
It’s made of a short simple program example (minimum of lines) following by displaying the result of the program and comments
At the difference with the next point (additional examples), this point is not exhaustive.

- Additional examples: that includes any additional examples, more and more complex. If a lot of examples can be expected, some precaution should be needed to make them compact, by using folding approach for example ?

- Important precisions: The limitation/precaution in using the instruction

- Remarks: Any complementary precisions

- “See also”: very important to link family instruction together and facilitate the search

What are your reactions?


For the skin, I’m adept of the more clear (not too sober) one but with some easy to understand pictograms.
Between the two wiki page examples from Klonk, I prefer the second, because it is less coarse.

An another important point to my eyes in the layout purpose:

Having a 10 thousand kilometer of lines on one page is not interesting: not clear and boring. In the other hand having multiple level of link it’s not better.
Then some rigors is required to have the maximum of information in a minimum of lines
Some features as folding lines, will be useful to perform this, I think.
It is clear that a beginner want to find just the minimum of information for starting, but an experimented person want to find more precise informations...
User avatar
Andre
PureBasic Team
PureBasic Team
Posts: 2137
Joined: Fri Apr 25, 2003 6:14 pm
Location: Germany (Saxony, Deutscheinsiedel)
Contact:

Post by Andre »

I've already created a PureWiki site some months ago, but don't wanted show it to the public until it gets filled some more. My lack of free time avoided this until now... :cry:

I searched the internet for weeks to find a proper Wiki distribution and decided to use MediaWiki. And about the hosting - www.PureArea.net is well-known and a good place for your project... :D

To avoid doing things twice, here are the links:

http://www.purearea.net/pb/german/purew ... Hauptseite (german, already started including the UserGuide)

http://www.purearea.net/pb/english/pure ... /Main_Page (english version, a blank install of MediaWiki)

If you are interested to use this wiki installation, simply drop my an email to andre -at- purebasic.com
(because I'm not on the forum during the week)
Bye,
...André
(PureBasicTeam::Docs & Support - PureArea.net | Order:: PureBasic | PureVisionXP)
Klonk
Enthusiast
Enthusiast
Posts: 173
Joined: Tue Jul 13, 2004 2:17 pm

Post by Klonk »

Ok we have one definite result till now. The layout should be clean and easy like the Monobook skin (used also be Mediawiki).

@Andre: Thanks for offering your webspace. This would be surely a good idea and an already known place. I don't know MediaWiki to much in detail, so cannot say too much about it. A first look showed quite a lot similarities between MediaWiki and PmWiki. The main differences are the use of a MySQL database (MediaWiki) vs. Flat File database (Personally I prefer the latter, easier to setup a Wiki on a stick IMHO).

But hey, as it should be a community project, the community should decide which system to use.
But first of all a decision should be made where to host it...
Bye Karl
Num3
PureBasic Expert
PureBasic Expert
Posts: 2812
Joined: Fri Apr 25, 2003 4:51 pm
Location: Portugal, Lisbon
Contact:

Post by Num3 »

Andre has hosted PureArea for quite some time now, so i think we should take is offer to host the wiki!

Both wiki's look alike, personaly i think having a mysql database is safer than a flat file, of course it needs maintaning...

Since Andre has already setup a wiki, i think we should take that into consideration and start working with it!
User avatar
Comtois
Addict
Addict
Posts: 1431
Joined: Tue Aug 19, 2003 11:36 am
Location: Doubs - France

Post by Comtois »

Num3 wrote:Andre has hosted PureArea for quite some time now, so i think we should take is offer to host the wiki!

Both wiki's look alike, personaly i think having a mysql database is safer than a flat file, of course it needs maintaning...

Since Andre has already setup a wiki, i think we should take that into consideration and start working with it!
Agree :)

And what about a french page ?
Please correct my english
http://purebasic.developpez.com/
dagcrack
Addict
Addict
Posts: 1868
Joined: Sun Mar 07, 2004 8:47 am
Location: Argentina
Contact:

Post by dagcrack »

Havent read the whole thread but... Will this come to somewhere? I mean.. many people can agree with something and be exited for a short time.. and then just drop it. It happens all the time.
! Black holes are where God divided by zero !
My little blog!
(Not for the faint hearted!)
Blade
Enthusiast
Enthusiast
Posts: 362
Joined: Wed Aug 06, 2003 2:49 pm
Location: Venice - Italy, Japan when possible.
Contact:

Post by Blade »

Yes dagcrack, and post like you don't help too much. ;) (I said something like you time ago too... wops!)


Ok, I trust Andre, I like the skin and a MySql DB is surely faster than a Flat File database...

Let's GO! :)

About the other languages, instead of installing many wikis, can't we just use the same?
Num3
PureBasic Expert
PureBasic Expert
Posts: 2812
Joined: Fri Apr 25, 2003 4:51 pm
Location: Portugal, Lisbon
Contact:

Post by Num3 »

Hey everyone, start registering!

I already created an account!

In my opinion documentation should be english (or bablenglish) so everyone can read it!
Dräc
Enthusiast
Enthusiast
Posts: 150
Joined: Sat Oct 09, 2004 12:10 am
Location: Toulouse (France)
Contact:

Post by Dräc »

Register too!

Now that the first questions have find answer,

I propose to you the following explicit table of contents (based on the previous one) which can be change/completed in the future of course (see the end of the post).

Because of the wiki concept, the better it is not that one person start to write most of the pages first.
Then, if someone has already write something matching with one or several points of the contents table and want to share it, tell us.

I’m supposed that the way of working should be this one:
- for any blank article, there is a unique person that write the first issue.
- after the fist publication of the article, everyone can propose changes

Then, it is important to have a precise updated list of the ongoing task of who do what for the fist article issue.
That can be done in a page of the wiki site for example.

Personally, I am ready to write the fist issue of part 2 dealing with constants and variables, only because of a little subtlety beside I want to propose to you…

But, before starting something, it will be interesting to write and display 2 test pages to be ok about the layout.
Part 1: Introduction to the PureBasic Language
1.1 The PureBasic language
1.2 General view: a PureBasic program
1.3 General view: Function, Instructions and Expressions
1.4 Compilation and Execution
1.5 The Pre-processor

Part 2: Operand
2.1 General view
2.2 Constants
2.3 Data types
2.4 Constants and data type
2.5 Variables
2.6 Variables: Definition et Initialisation
2.7 Variables: Multiple definition
2.8 Symbolic constants
2.9 Symbolic constants: Multiple definition

Part 3 : Operators and expressions
3.1 General view
3.2 Assignation operator
3.3 Arithmetic Operators
3.4 Relational Operators
3.5 Logical Operators
3.6 Binaries Operators
3.7 Simplify assignation Expression

Part 4 : Instructions
4.1 General view
4.2 Connections
4.2.1 Connections: If/EndIf
4.2.2 Connections: Select/EndSelect
4.3 Loops
4.3.1 Loops: While/Wend
4.3.2 Loops: For/Next
4.3.3 Loops: Repeat/Until
4.3.4 Instructions : Break and Continue
4.4 Unconditional connection: Goto
4.5 Unconditional connection: Gosub
4.6 Insrtuction: Data

Part 5: Tables
5.1 Introduction
5.2 Multi-dimension table

Part 6: Structures
6.1 Introduction
6.2 Structure members’ access
6.3 Structure initialization
6.4 SizeOf() and OffsetOf() instructions
6.5 Tables inside structures
6.6 Tables of structures
6.7 Structures of structures
6.8 Structure Union

Part 7: Procedures
7.1 Introduction
7.2 Procedure arguments
7.3.1 Call by value
7.3.2 Call by reference
7.4 Return value from a procedure
7.5 Visibility of variables
7.6 Global, Protected, Shared and Static variables


Part 8: Pointers
8.1 General view
8.2 Pointer initialization
8.3 Frequent mistakes on pointers


Part 9: Pointers - Advanced notions
9.1 Dynamic memory allocation
9.2 Arithmetic operation on pointers
9.3 Pointer and structures
9.4 Pointer and tables
9.5 Pointer and strings
9.6 Pointer inside structures
9.7 Linked List
9.8 Pointer and procedure
9.9 Pointer of procedures

Part 10: The Pre-processor
10.1 General view
10.2 Source file inclusion
10.3 Macro (v4)
10.4 Compiler Directives

Part 11: Standard Libraries
11.1 General view
11.2 Library n°1
11.3 Library n°2 …

Part 12: Users Libraries
12.1 General view
12.2 Building a DLL
Post Reply