Hey Vincent! I really appreciate your long email and found it very enlightening. I will work through it and make a few comments. But let me say up front how helpful it was for you to document your initial experiences. We don't get this kind of input too often, and you post was particularly detailed and insightful. Thank you!
On Fri, May 22, 2009 at 3:36 AM, 葉旺奇 <[email protected]> wrote: > Dear Dan, > > I am very pleased to see a developer willing to respond to a very beginner's > output (input to you, output from me :-P ). It is highly appreciated. In > return to you msg, I'll write down my experiences with BoltWire below. Thanks again. Much appreciate your comments! > Before that, however, I do have one question: is it true that a > non-programmer (some one who is not willing to dig into the lines of codes) > should not run a website using BoltWire? If your answer is yes, then you may > just skip the rest of this msg and I won't be bothering you any more. Yet if > you have the other answer, maybe you can take into consideration some of my > suggestions that follows. Here it goes. Our goal from the beginning was explicitly to give non-programmers access to the kind of power programmers have without having to learn a complete programming language. So while it may be more complicated than some systems, it can enable you to do things you simply could not do in most other systems without hacking the code. In fact, you can completely change how almost every facet of the system works from right within your browser. So it's not strictly about ease of use, but more about (relatively easy) accessibility to power. I didn't start out as a programmer, but an individual who had ambitious plans for an interactive website that required very sophisticated capabilities. Nothing, I tried could do it without a lot of custom programming. Particularly Drupal and Moodle. PmWiki was close, and opened up a whole new world of possibility. Thanks to Pm's help and mentoring I began writting a few simple PHP plugins for it's few limitations. In time I stumbled on to a way to dramatically open up the capabilities of even that software through action pages. That and along with several other innovations I developed a new core. For me at least, the goal was to give BoltWire the maximum amount of power to the user without having to know programming. My guess is, if you are like me, you will enjoy Drupal, for awhile (It's an excellent system). But then you will gradually begin bumping into limitations. The more complex your needs, the greater those limitations. Then you'll need to hack into it (which is a nightmare), or hire a programmer to assist you, and upgrades are terrible. I had to hire someone to help me get my database tables through a rocky upgrade. I never could get what I wanted out of it. PmWiki was another story. It was extremely easy to set up and use. And very easy to extend, etc. I could have gotten everything I wanted with it, using some advanced plugins. But it was designed pretty much as a wiki, and had some (intentional) design limitations as a result. I developed BoltWire with the conviction you could get faster and more robust results by changing some of those design principles. I'm very pleased with the outcome, and have never looked back. (Other than with gratitude to Pm and his team). Does this mean BoltWire is easy to learn? No. It may help to think of it as a scripting language all of it's own. The syntax gets more complex the more complicated your goal. But virtually anything you want can be done within the system. If you need to add a bit of functionality, it is usually extremely easy and minimal to get working. You may not appreciate this power until start working with action pages. But as far as I know there's nothing else like it out there. You do have to learn the syntax. And it's easier than learning PHP. But once you get the basics, the sky is the limit. The short of it: if you have simple needs and want an easy drag and drop, click and go kind of system, BoltWire is probably not your answer. If you want wild power without having to learn a programming language, then BoltWire may well be your solution. I guess that's the bottom line. BoltWire is all about power for the non programmer. > A week ago I found this software by chance and decided to give it a try. In > just about 5 minutes I got it up and running, including change of language. > A big shock! I am sure there are people who can do the job in 5 seconds, but > for a non-programmer and a beginner to this kind of software that was a > record high. Before this one I tried the very popular WordPress, Moodle and > Drupal, none of them gave me such a good experience in setting it up. For > this all of you developers deserve a BIG APPLAUSE. Great. I could never imagine going back to a database system. That's one of the secret to BoltWire's ease of setups. Another big think you will like is upgrades. You can do them in seconds. An upgrade on a database system can be very risky. I won't tell you some of my stories with Drupal... > In the next one hour or so I was quite happy for being able to change the > content of the main page (without understanding all of it, of course), > changing the side menu and the top zone, installing some eazy plugins. > Great! Then I started to try more things like stying, coloring, customizing > actions and so on. Pretty soon I realized that I needed to go through some > documents before I could go any further. This then led to a three day > nightmare... Uh oh. Here comes the hard part... > The first thing that confused me a lot was the markups. I know you are all > familiar with the wiki things, but I am sure there are way more people out > there who are just not. There is a nice table in the document for sure, but > new users, especially non-programmers, just don't remember so many things in > one time. Did you know you can just put &help to the address bar (&help=help if an admin) and you can get your markup table to show up on any page? I wonder if we need a popup box in the core so you can popup it up at any time. I did this on my site (www.fast.st). Just click the little help link down at the bottom. It would be easy to add this to the core... > Every time I saw something like {page::var} or [[link|label]], In > would be like: "wait a minute, I remember seeing this somewhere...", and > ended up spending more than a few minutes just to find it again, then lost > the focus of where I was. No good. Now I realize they are not so difficult > after reading them for some days, but a week ago they were really like > Klingon to me. I think it is a good idea that a document helps the readers, > less experienced users in particular, stay focused on the subject and not be > distracted by things they are not yet familiar with. After all these people > are the target of documentation, aren't they? One way to accomplish this is > to offer a chance to remind the reader of the meaning of special terms or > patterns every time they appear, without leaving the page he or she is > reading. I am not sure how to do so, I am just suggesting what to do in a > non-programmer's point of view. Not sure how to do it also. Tooltips might be nice. But of course someone has to go through and type all those in. I'm open to suggestions. Specific ones especially. But it may be there's no way around a few days of learning the basic syntax. There's a lot in BoltWire. It just takes some time, to really learn the basics... > The second frustration came from finding inside the box the new pages just > created. It took me almost half an hour to find them listed in the > non-system pages. In the "About BoltWire" page it says There is a system page called site.pages. It should list all the pages you have created. Is that what you were looking for? Maybe an FAQ question in the start pages section. Or perhaps a pages item in the action bar? Or both? >> ...BoltWire allows you to not only customize content within a site, but >> also the engine itself--from right within your browser! > > I am sure you did the nice work, but you forgot to tell "other people" how > to do that. I had to spend half an hour blind clicking to find the newly > created pages. Maybe the word "site" says it to you, but to a non-native > speaker like me it just doesn't do. I know this software is still not yet as > mature as others like Drupal or WordPress, and no one should ever blame a > high school student for not able to work out calculus problems. Still I do > recommend reducing such kind of barriers at the beginning, not the end. This is done through the action pages. It's one of BoltWire's more advanced topics. But I think there is at least some documentation on the subject. Or are you still talking about how to find simple pages you have created... > Putting some examples in the documentation is a good idea. But better yet, I > suggest to have an action or some thing alike BY DEFAULT (not that "you can > modify the code" or "you can install this plugin" thing) to allow easy > access to content pages. I am sure EASE OF USE is one of the main > philosophies behind BoltWire, isn't it? I'm still having a bit of trouble with this. Are you just saying you had trouble remembering the page names you created? What kind of action or examples did you have in mind? Other than putting a "pages" link in the action bar perhaps.... > The next thing is the authorization system. I got the idea that BoltWire > allows sophisticated, page by page authorization, you have explained it > well. However, I never got how to do it. I just couldn't find in one place > examples and clear explanations on the syntax of the text in the > authorization files like these > >> *: @member >> action*: @editor >> code*: @editor >> group*: @editor >> group.admin: @admin >> login*: @editor,@key_register > > That's right one should've grabbed the idea in a few seconds, I know. But > what does it mean by key_register? What is key_wikiblog? What is authkey? > When to use them? And how? I simply found no easy answers. It would've been > nice if there were some examples coming with the explanations on the syntax. > Even more, I'd like to suggest you build an user interface with a list or a > group of checkboxes for clicking without typing. It increases the chances of > user erros if one has to type in the text manually, for the spelling must be > correct. You might think its no big deal but for me if I don't understand > the meaning I would never remember how to type it right. I remember reading > "...cuts down on user errors..." in the "Pange Names" section of the page > titled "Creating Pages". If cutting down user errors is one of the concerns, > this extra suggestion should make some sense. You are correct. BoltWire's authorization is pretty flexible. And also relatively arcane. :) I'm surprized if there's no discussion in the docs on how to set up these pages. If not, it definitely needs to get added. I'll try and work on adding some more info to the most appropriate page. That's a real glitch. Even learning some basics, like what the * means will go a long way... As for a gui for this, it's possible but not easy. My guess is it would be difficult, if not impossible to get a gui that was simple and easy to use that gave you all the options you want. Not impossible, perhaps, but I think a user is better off learning the syntax (which is pretty easy--assuming good docs!). Then it's just one glance and everything is at your finger tips > And there is the file naming thing. Seriously I do not find it a good idea > to leave the users to name their content pages. What users concern most are > the title and content, not the file name of their pages. Especitally when I > read about the nice hierarchical system with the naming convention, I was > even more certain that you should not leave the users to name their page > files. Why not? You've said that: "... cuts down on user errors...". It's another issue of what kind of interface would you develop to give you the kind of power available by simply entering a page name. Hierarchies can be very powerful when used well. I have used all kinds of schemes for page names for blogs, newsletters, classrooms, forums, etc... Some quite complex. I want too be able to do whatever I want. If I want to simplify something for a user that takes care of all that, I just create a new action. I think part of the problem is grasping the flexibility of BoltWire. Because it can go in so many different directions, you can't just create easy interfaces. You are tapping into the raw power of it. Maybe you could give an example of how you would want the interface to work. It's probably easily doable. But then the next person might want a different system. That's the issue. > Another point in the naming convention: it seems to me not so consistent? I > remember seeing names like code.xxx.skin as well as xxx.skin. It seems some > times users should put their own 'xxx' some where between the default page > levels while other times just higher (or lower?). Maybe I simply didn't > spend enough time to grab the whole idea, but at that time I was just fed up > with confusion and couldn't do anymore. I couldn't find some examples to > show here because I found myself lost again going back to the documents. I > do not suggest you to clarify this in your documentation. Instead, I suggest > you not to leave the users to name their page files. Keep file naming > consistent within BoltWire and cut donw on user errors. Normally you can name a page whatever you want. In a few special cases like skins and styles, and templates, actions, the page name has special meaning. We had a lengthy discussion about the recently and came up with a very complex, but I think consistent approach. It seems that discussion never made it into the docs. Perhaps we can retrieve that email and post the content somewhere. Good point. > Back to the documentation thing. A little suggestion to the use of terms in > it.I know you are so familiar with the variables since you play with them > everyday, but useres don't need to know the name of the variables. BOLTadmin > and admin are simply not the same thing for non-experienced users. When I > read "login as a BOLTadmin" I really got confused whether to type "admin" or > "BOLTadmin" to login as an administrator. Of course it took me no time to > figure out but I imagine there could be quite some people get stuck by such > things. Again if you think a fool like me should not even bother to run a > website, I can tell you that I am using Drupal and it's now taking off. The > setting up stage was a bit pain to me but after that, it was a lot easier to > get things work AS UNDERSTOOD. I am not saying Drupal is a perfect solution, > but for now I got way more farther in three days with Drupal than with > BoltWire. I think there are two main reasons, one of which being that there > is no such confusion in their documentation. Even though reading your > documentation was a joy for the fluently written English, terms like that > alwasy got me stuck. My suggestion on this is to remove all the unnecessary > BOLT- prefix in the documentation, to keep it easier to beginners. Well not sure what to say about this. There is a difference between a BOLTadmin and a normal admin, and users need to be able to understand that. I'm hearing that we need to "dumb down" the documentation. Not sure I agree. If BoltWire is all about power then I'd have to say knowledge is power. The problem we have is not enough information. It's easy enough to add a note somewhere on the difference between a BOLTadmin and an admin. But I'm not sure what more we could do here. (I'm jotting down all these specific suggestions and will get around to working on them asap.) > I said two main reasons above but only mentioned one, what's the other? It > is that I could change settings mostly with a GUI, no need to edit the > files. We all know why modern operating systems spread out so widely. It's a > fact. If BoltWire is aiming at something more than a concept-proof, building > some easy-to-use GUI's is a must. There is a gui plugin, but again the issue is GUI's limit you in the long run (my opinion). If you can learn the syntax you have full control, and can do anything. If you have a gui, you are limited to the options that gui can handle for you. We've tried to keep our syntax extremely simple and intuitive, compared with most other wikis, but I don't think wysiwyg is the future for us. Maybe for simple comment boxes or the like. But not for site design. I've looked at wikiwyg.org (I think) but their software is not quite up to speed, and it's not easy to integrate. It would be a plugin if we could get it working. But that's for the future. Still, I don't think I would use it myself. Just to keep the core light, I think anything along this line (which can be very involved) will have to be for plugins. Maybe it should be, but BoltWire is a bit more of an under the hood kind of system. Get your hands dirty... Get it exactly how you want. That means interacting directly with the syntax... > Other minor things below: > > I couldn't find an easy way to assign a member to a group (an action or > button or something that requires just clicking/typing but no file > editting). There is an action.join. Something more customized can be done in a snap. That's the power of BoltWire. If you can give me the specs of what you want, I'll write up the syntax. Just to show how easy it is. > I couldn't logout by just one click. Same here. Should just be a simple bit of markup... > Couldn't get to the page > http://www.boltwire.com/index.php?p=resources.solutions.gui to download the > gui buttons for editor. Wrong url. It should be in the solutions section somwhere. That's an old link. Which page was it on so we can update it? > Well, I'd better stop here or I won't have time to get my own work done. > Thank you very much if you have come through all this. I'd like to mention > again that I am not a programmer and a very beginner to this kind of > software. Maybe some of my points are just too naive and wortheless, but I > think that pretty much reflects a beginner's feelings. Read every word and found it helpful. Thanks for sharing. We'd love to have you a part of the BoltWire team, but if you go with Drupal or something else that's fine. It is probably a better solution for some needs. Though, having used both, I think in the long run you would be happy going with BoltWire. Perhaps you could even help contribute to the docs a bit, eh? > And once again, I'd like to say that I do see a hope in BoltWire and looking > forward to seeing it fly high. Thanks for the best wishes... Cheers, Dan P.S. I'm firing this off quick with taking time to proof read it carefully. Too long. Please overlook any typos of glitches... --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "BoltWire" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/boltwire?hl=en -~----------~----~----~----~------~----~------~--~---
