PHP Developers Network

A community of PHP developers offering assistance, advice, discussion, and friendship.
 
Loading
It is currently Thu Oct 01, 2020 10:40 am

All times are UTC - 5 hours




Post new topic Reply to topic  [ 55 posts ]  Go to page Previous  1, 2, 3, 4  Next

What forum software do you think devnetwork.net should use?
Stay with phpBB 36%  36%  [ 5 ]
Change to MyBB 7%  7%  [ 1 ]
Change to SMF 0%  0%  [ 0 ]
Change to VBulletin 7%  7%  [ 1 ]
Change to some other forum software... (specify in a post maybe?) 0%  0%  [ 0 ]
We should all pool in and build our own!! 50%  50%  [ 7 ]
Total votes : 14
Author Message
PostPosted: Wed Aug 19, 2009 2:40 pm 
Offline
DevNet Master
User avatar

Joined: Fri Jan 18, 2008 1:36 am
Posts: 3549
Location: Israel, ME
right, the problem is getting traction with serious developers willing to invest some of their time ;)


Top
 Profile  
 
PostPosted: Wed Aug 19, 2009 2:56 pm 
Offline
DevNet Resident
User avatar

Joined: Thu Jan 13, 2005 7:44 pm
Posts: 2341
Location: Sarasota Florida
We need clientside goals (both code and design) first to start work on designing a database.

What features are critical?

Forum Index
Thread Index
Thread Page
New Thread Page
Reply Page
Edit Page
Private Messaging
Administrative Options
Moderator Options

Design, what standards will we work with? In example my forums are set to work with XHTML 1.1 as application/xhtml+xml and the XHTML code is designed in such a way that it's easy to implement options with CSS such as having each post "meta" data such as user, post count, post title, etc be either on the left or right side. One of the nice things about the validator I'm working on (and you helped me out with pytrin) is that there are no break line elements, so the only change needed to be made between XHTML and HTML would be to remove the trailing slash on meta elements and swap out the doctype declaration and remove or add back the XML declaration. No need for a "mass" editing or filtering of code, it just works! :)

I think a major obstacle is file structure of the back end too, it's always a total mess and alienates most people from getting involved. I know a lot of developers would disagree with me but if you look at my site's back end I guarantee you wouldn't even have to make a first guess where to implement a change it's so well organized. :wink:

What other goals would we want in regards to design and development?


Top
 Profile  
 
PostPosted: Wed Aug 19, 2009 3:22 pm 
Offline
DevNet Master
User avatar

Joined: Fri Jan 18, 2008 1:36 am
Posts: 3549
Location: Israel, ME


Top
 Profile  
 
PostPosted: Wed Aug 19, 2009 6:10 pm 
Offline
DevNet Resident
User avatar

Joined: Thu Jan 13, 2005 7:44 pm
Posts: 2341
Location: Sarasota Florida


Top
 Profile  
 
PostPosted: Wed Aug 19, 2009 6:21 pm 
Offline
DevNet Master
User avatar

Joined: Fri Jan 18, 2008 1:36 am
Posts: 3549
Location: Israel, ME


Top
 Profile  
 
PostPosted: Wed Aug 19, 2009 6:50 pm 
Offline
DevNet Resident
User avatar

Joined: Thu Jan 13, 2005 7:44 pm
Posts: 2341
Location: Sarasota Florida
I think we're clearly approaching this from different contexts.

I'm just going to have to ask this, but really what is the shortcoming of phpBB as forum software for DevNetwork? It would be a waste of time to simply rewrite existing functionality just for the sake of having better back-end code. I'm not trying to discourage you, just trying to get answers out of critical questions with the small goal of making your goals better understood.

Besides the issues I had with sending you and Jack a PM last night the forum is pretty much functional. Granted I'm programming my own with extra features...but they're design oriented to empower the user to be more productive. If you're not comfortable with an environment because it doesn't adapt then it becomes difficult to use. User adaptation is an important design principle, hence with Vista failed and why 7 is going to actually make Vista look good. I like your vague idea of forums that outlast their creators but far is the insight of those possibly willing to get involved to know whether one particular function will be deprecated in PHP 7 or MySQL 7 in example? Software will always have to be maintained to a certain extent naturally...but I'm left wondering what else you want to achieve with the forums? When you build a project it's not only about what you already have, it's also what you're planning to do with it. If you don't like my site's design then simply apply the concept used at Zen Garden, add a WYSIWYG editor and the ability to create a theme without even registering and the concept of theming evolves and the entry barriers begin to disappear. That's one of my grips with how file and directories are structured with projects, you are welcomed to disagree it's not an issue. Please take my analogy with Zen Garden and theming on my site with what you want to do with this proposed project...how would it evolve in to something better then phpBB besides better back end code? If that's your only goal then please clarify why the back end needs to be rewritten...is it really inefficient, are things difficult to change, is it weeded altogether so when you change one thing intentinally you unintentionally change something else?


Top
 Profile  
 
PostPosted: Wed Aug 19, 2009 6:53 pm 
Offline
Site Administrator
User avatar

Joined: Wed Aug 25, 2004 7:54 pm
Posts: 13592
Location: New York, NY, US

_________________
(#10850)


Top
 Profile  
 
PostPosted: Wed Aug 19, 2009 7:10 pm 
Offline
DevNet Master
User avatar

Joined: Fri Jan 18, 2008 1:36 am
Posts: 3549
Location: Israel, ME


Top
 Profile  
 
PostPosted: Wed Aug 19, 2009 7:29 pm 
Offline
Moderator
User avatar

Joined: Mon Nov 03, 2003 7:13 pm
Posts: 5978
Location: Odessa, Ukraine


Top
 Profile  
 
PostPosted: Wed Aug 19, 2009 7:49 pm 
Offline
DevNet Resident
User avatar

Joined: Thu Jan 13, 2005 7:44 pm
Posts: 2341
Location: Sarasota Florida
Clarification of context, there are three, clientside code, serverside code, and file structure. By module I mean things like blog, chat room, forum, polls, private messaging, etc. By suite I mean an integration of multiple modules, the context I use is intentional integration...not two independent projects in a suite that use different code base and thus are difficult to integrate together. Don't get me wrong, I'm not debating computer science design patterns...I am criticizing how projects are disorganized because they do not take file and client design in to serious consideration. What does the client want to achieve? Why do we have to load three pages to achieve a single page goal (my answer, reply and edit AJAX feature). Working on a project? Why do I have to go digging through dozens of folders on something like WordPress? Granted there is a lot of functionality though even a blog module can only be broken down so much itself.

I don't doubt that phpBB is a mess, we're approaching the project some two different perspectives, developer/serverside and designer/clientside for the most part. From what I understand what you want to do is have the ability to easily implement new features with ease in the future with a community built solution versus trying to deal with phpBB's shortcomings. I can understand that in the way that since I finally learned databases I'm been working to replace things like WordPress with my own solution. So I agree with you it would be nice though what I'm trying to say is that the system should be organized so it's structure can be understood simply by looking at the software files and limited number of directories which I've never been able to do with anything other then my own code. Programming design principles are not what I'm debating here...if you need/want to do X, Y, and Z go ahead, I'm just trying to say construct the project so if someone feels compelled to add or change something they don't have to play guessing games to simply figure out where to start.


Top
 Profile  
 
PostPosted: Wed Aug 19, 2009 8:11 pm 
Offline
DevNet Master
User avatar

Joined: Fri Jan 18, 2008 1:36 am
Posts: 3549
Location: Israel, ME
The emphasis is on server-side code here, since in a properly designed system, the client side be easily customized. There is no point in deciding on client side features, since those could be easily be added by developers if the architecture allows it. We're not talking about adding features to the server-side code either, for the same reason - if it's easy to add it, let developers decide what they need.

Make no mistake, I think the templating system of the forum should be given very careful attention. Specific UI features though, are not relevant discussion at this point since they can be easily added later if the project is a success.


Top
 Profile  
 
PostPosted: Wed Aug 19, 2009 8:53 pm 
Offline
DevNet Resident
User avatar

Joined: Thu Jan 13, 2005 7:44 pm
Posts: 2341
Location: Sarasota Florida
the only thing I've been talking against is this...

Image

How would you refer to this as, file system structure?

Let's say two modules, forums and private messaging. You'd also need a simple clientside UI and a scripts folder, that's really about it.

public_html/forums/
public_html/messages/
public_html/scripts/
public_html/themes/
public_html/themes/blue_theme (style.css and all css related images)

Forum specific functions would belong in one or a limited number of files inside the forums directory...if they turned out to be too numerous a sub-directory.

Shared functions would go in to the themes directory since the clientside theme should be site wide. I generally refer to this as a CMS though the context of how I explain it like that is never really understood.

The forum index.php would handle all the $_GET, $_POST actions and call functions. If it's a $_GET request then it would include the header and footer template files from the themes folder. So in simplest of terms if you want to edit something all you have to do is figure out...is it the clientside theme or a major module? Forum module...look at the index.php file and the requested URL...that will quickly lead you towards the related page template and functions you may need to edit.

As far as the themes directory is concerned the file names are important here as they should represent the flow of execution.

_0_header_
_0_header_02_mysql
_0_header_03_sessions
_0_header_04_classes
_0_header_05_cookie
_1_functions_ajax_01_chat
_1_functions_ajax_02_poll
_1_functions_bb
_2_includes_01_xml.php
_2_includes_02_dtd.php
_2_includes_03_head.php
_2_includes_04_title.php
_2_includes_05_meta_00.php
_2_includes_05_meta_01_description.php
_2_includes_05_meta_02_keywords.php
_2_includes_05_meta_03_language.php
_2_includes_05_meta_04_robots.php
_2_includes_05_meta_05_redirect.php
_2_includes_06_base.php
_2_includes_07_css.php
_2_includes_08_js.php
_2_includes_09_body.php
_2_includes_10_overflow.php
_2_includes_11_liquid.php
_2_includes_12_content_00.php
_2_includes_12_content_01_permissions_00.php
_2_includes_12_content_01_permissions_01.php
_2_includes_12_content_01_permissions_02.php (etc...)
_2_includes_13_liquid-end.php
_2_includes_14_sidebar-00.php
_2_includes_14_sidebar-01-search.php (etc sidebar items...)
_2_includes_15_overflow-end.php
_2_includes_16_prompt-00.php
_2_includes_18_noscript.php
_2_includes_19_head-00.php
_2_includes_20_location.php
_2_includes_21_menu.php
_2_includes_22_head-end.php
_2_includes_23_footer.php
_2_includes_24_top.php
_2_includes_25_body-end.php
_3_template_00-index-1.php
_3_template_00-index-2.php
_3_template_02-redirect-1.php
_3_template_02-redirect-2.php
_3_template_02-redirect-3.php
_3_template_03_frame-1.php
_3_template_03_frame-2.php
_4_patch-tab-0.php
_4_patch-tab-1.php

It looks excessive though I dare anyone to name a feature to change that is non-module related (module being forum or private messaging in example) and not know where to look. It's so well organized you don't have to think about the approach, you just reference where your intended implementation takes place. That greatly eases the ability to contribute to a project if you have a respectable enough understanding of how a valid (X)HTML page is constructed if you need to change XHTML code or want to adjust something like a class. The website's main functionality (such as headers) are completely separate from the modules (forum, PM, etc) while yet being very well integrated. You can disagree you want with the design but you can't suggest there is any sort of difficulty in tracking down where to implement something or any confusion as the relation between what you're working on and the order of which it is called. You can very easily figure out without me listing it what the exact name of the sidebar's poll feature file on my is named. Granted I've really broken it down and have a lot of features on my site then most do but it's still easier then with small sites with numerous unnecessary directories and on the spot file names. You're welcome to say _0_header_04_classes and _0_header_05_cookie should be _0_header_04_cookie and _0_header_05_classes...I'm not arguing with the exact flow of execution...all I'm suggesting is to present the project in a way that also presents it's flow of execution.


Top
 Profile  
 
PostPosted: Wed Aug 19, 2009 8:56 pm 
Offline
DevNet Master
User avatar

Joined: Fri Jan 18, 2008 1:36 am
Posts: 3549
Location: Israel, ME
What you are talking about is a part of the coding standards - which I opened a separate thread about. I suggest you go and visit the links I provided there, and read on how they treat folder and file structure (though it relates more to OOP). Also, any decent framework will give you a good base for folder/file structure.


Top
 Profile  
 
PostPosted: Sun Aug 23, 2009 5:10 pm 
Offline
DevNet Resident
User avatar

Joined: Thu Jan 13, 2005 7:44 pm
Posts: 2341
Location: Sarasota Florida
Got an email notification...must have been a spam message since I don't see anything new...though I was denied permission to view anything at this link emailed to me...
viewtopic.php?f=7&t=104474&p=561999&e=561999


Top
 Profile  
 
PostPosted: Sun Aug 23, 2009 5:13 pm 
Offline
Site Admin
User avatar

Joined: Tue Dec 23, 2003 3:10 am
Posts: 11470
Location: Toronto


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 55 posts ]  Go to page Previous  1, 2, 3, 4  Next

All times are UTC - 5 hours


Who is online

Users browsing this forum: No registered users and 5 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Jump to:  
Powered by phpBB® Forum Software © phpBB Group