Page 3 of 4

Re: The Forum!!! (for want of a better subject...)

Posted: Wed Aug 19, 2009 2:40 pm
by Eran
right, the problem is getting traction with serious developers willing to invest some of their time ;)

Re: The Forum!!! (for want of a better subject...)

Posted: Wed Aug 19, 2009 2:56 pm
by JAB Creations
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?

Re: The Forum!!! (for want of a better subject...)

Posted: Wed Aug 19, 2009 3:22 pm
by Eran
I think a major obstacle is file structure of the back end too, it's always a total mess
obviously, that doesn't have to be the case.
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
somehow I get the feeling you are correct on your assumption regarding those developers, and that most people would have issues with your code. That's why a commonly agreed good and established coding standards are a must. Also using an established framework can do much to alleviate this and reduce the amount of work considerably, as I've iterated before.

Frankly, I wouldn't work on a project where each programmer just "did his own thing" and developed in the wild. That just won't work. I'm getting the feeling that's that where you are shooting for.

We could start discussing features and so forth, but it's important to first agree on standards and the development process. I'll start a separate thread on this.

Re: The Forum!!! (for want of a better subject...)

Posted: Wed Aug 19, 2009 6:10 pm
by JAB Creations
pytrin wrote:...most people would have issues with your code.
...and most people don't comprehend the principles of design. Nothing I say is going to change anything here and in general the same mistakes will be made by disregarding design. I'm working on my own implementation of things because there aren't any solid design principles built in to any existing modules that I've looked at...and even in my third alpha a couple of months ago everything from my new blog, chat room, forums, private messaging, polls, etc was and still is working beautifully and gracefully together delivered at the highest standards and working in IE6 even as I made substantial changes almost every day. How many other people can say they've built an entire suite with no more help beyond replies on a single forum? Though then again design must not matter if most people would have issues with my code. Progress means change and you can either adapt to a better designed work flow or emulate the established good enough implementations. I wouldn't expect most people to understand what I'm saying since they can't see my latest work though I never received a reply from you after I sent you a PM with a link to a live/private build of my work. I'll admit I don't know everything, I'm a designer learning development, though I don't see very many developers learning design. Show me one existing suite with all those features well implemented and integrated together or more served at the highest standards with a visual WYSIWYG editor with as many developers in whatever group is working collectively on that given project and I'll admit I don't understand design and or development. If you can't find a single project then just wait a few months and you'll see mine live or you could just visit the link I sent you and see it right now for yourself. A project is only capable of achieving their goals as the people involved will allow them.

Re: The Forum!!! (for want of a better subject...)

Posted: Wed Aug 19, 2009 6:21 pm
by Eran
there aren't any solid design principles
Yes, there are. And very smart people have organized them into design patterns - http://en.wikipedia.org/wiki/Design_pat ... science%29
Show me one existing suite with all those features well implemented and integrated together or more served at the highest standards
I've been to your site, and frankly it was quite confusing to navigate and use. In user interface design, often less is more and usability is about making flows clear to the user not showing him as many options as possible. Are all those features required / important? I've not seen much demand for it in forums, and I've been around a few. And regardless, it says nothing about the quality of code that runs it. After all, up-front phpBB does the job, it's the backend that is pretty horrible and outdated.

If you are interested in an evolved forum systems that does add significant value (and even has some of the features you mention), take a look at stack overflow - http://stackoverflow.com/
A project is only capable of achieving their goals as the people involved will allow them
we might have different opinions on what those goals are. I am looking forward to creating a forum system that can outlive it's developers and be used by others. I care less if it comes built in with WYSIWYG (which I'm not sure is even appropriate for forums) or AJAX for adding / editing posts. Those are minor concerns in my opinion, yet you seem to place much weight on them.

Re: The Forum!!! (for want of a better subject...)

Posted: Wed Aug 19, 2009 6:50 pm
by JAB Creations
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?

Re: The Forum!!! (for want of a better subject...)

Posted: Wed Aug 19, 2009 6:53 pm
by Christopher
JAB Creations wrote:...and most people don't comprehend the principles of design. Nothing I say is going to change anything here and in general the same mistakes will be made by disregarding design. I'm working on my own implementation of things because there aren't any solid design principles built in to any existing modules that I've looked at...and even in my third alpha a couple of months ago everything from my new blog, chat room, forums, private messaging, polls, etc was and still is working beautifully and gracefully together delivered at the highest standards and working in IE6 even as I made substantial changes almost every day. How many other people can say they've built an entire suite with no more help beyond replies on a single forum? Though then again design must not matter if most people would have issues with my code. Progress means change and you can either adapt to a better designed work flow or emulate the established good enough implementations. I wouldn't expect most people to understand what I'm saying since they can't see my latest work though I never received a reply from you after I sent you a PM with a link to a live/private build of my work. I'll admit I don't know everything, I'm a designer learning development, though I don't see very many developers learning design. Show me one existing suite with all those features well implemented and integrated together or more served at the highest standards with a visual WYSIWYG editor with as many developers in whatever group is working collectively on that given project and I'll admit I don't understand design and or development. If you can't find a single project then just wait a few months and you'll see mine live or you could just visit the link I sent you and see it right now for yourself. A project is only capable of achieving their goals as the people involved will allow them.
My first reaction was YIKES! So I skimmed it again and my second reaction was YIKES! ;)

First I am confused what you mean by "module" and "suite"? You say "there aren't any solid design principles built in to any existing modules that I've looked at" and later ask to see "one existing suite with all those features well implemented and integrated together". Is a module a library or framework? Is a suite a framework or application?

Second, I don't understand how meeting browser standards has much to do with the PHP code for the site? It seem like that has to do with attention to detail when making templates and generating HTML ... not the application code or design.

Re: The Forum!!! (for want of a better subject...)

Posted: Wed Aug 19, 2009 7:10 pm
by Eran
what is the shortcoming of phpBB
If you take the time to go over the source for phpBB, you would see that is a hack fest and a rather unmaintainable piece of code. For most purposes, trying to extend or build on phpBB is a major exercise in futility. It does not have to be like this.

Most of the problems the forums have been having during my time here I think can be traced back to the phpBB source. With a maintainable source code, I'm very certain the moderators here would have no problem resolving all those problems much easier.
It would be a waste of time to simply rewrite existing functionality just for the sake of having better back-end code.
Well, if I considered it a waste of time I wouldn't have proposed it. The fact is that when people are confronted with choosing an open-source forum system, the choices are pretty bad. I would like to have alternatives.
I'm not trying to discourage you
Not discouraged at all, I assure you.
those possibly willing to get involved to know whether one particular function will be deprecated in PHP 7 or MySQL 7 in example
This is irrelevant. Maintainable systems outlive the attention span of their creators since they are better suited to adapted to changing environments. One or several deprecated functions should not bring down a well designed system.
User adaptation is an important design principle
Not sure what you mean by user adaption. If you mean customization, then it's useful mainly to power users and in power programs (such as photoshop for example). An important interface principle is the "minimal set of features", which is having just what is necessary to allow a user to complete his flow. Many features that seem useful in theory are little used or unneeded in practice. User feedback should always be the driving force for adding additional features beyond what is necessary. So far I have not seen any particular demand to the features you promote.
how would it evolve in to something better then phpBB besides better back end code
If you still don't think having a better back-end code would make it a better system for developers, then really I don't see what else I can say.
Second, I don't understand how meeting browser standards has much to do with the PHP code for the site? It seem like that has to do with attention to detail when making templates and generating HTML ... not the application code or design.
Second that.

Re: The Forum!!! (for want of a better subject...)

Posted: Wed Aug 19, 2009 7:29 pm
by Weirdan
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?
JAB, functionality-wise PHPBB is a good software. Even more, it's ok performance-wise (after all, the biggest forum of the entire Internet, gaiaonline.com is running on PHPBB). It's exactly the backend code that sucks in PHPBB.

Also, do not confuse software design with UI design. Even though the word (design) is the same, it's the context that matter. When arborint, or pytrin, or I say 'design' - most probably we mean software design (unless stated otherwise). It has very little to do with UI.

Re: The Forum!!! (for want of a better subject...)

Posted: Wed Aug 19, 2009 7:49 pm
by JAB Creations
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.

Re: The Forum!!! (for want of a better subject...)

Posted: Wed Aug 19, 2009 8:11 pm
by Eran
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.

Re: The Forum!!! (for want of a better subject...)

Posted: Wed Aug 19, 2009 8:53 pm
by JAB Creations
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.

Re: The Forum!!! (for want of a better subject...)

Posted: Wed Aug 19, 2009 8:56 pm
by Eran
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.

Re: The Forum!!! (for want of a better subject...)

Posted: Sun Aug 23, 2009 5:10 pm
by JAB Creations
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

Re: The Forum!!! (for want of a better subject...)

Posted: Sun Aug 23, 2009 5:13 pm
by John Cartwright
JAB Creations wrote: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
The posts referenced have been moved to our "dump". That's why you cannot access them.