Building a system from scratch

So I have been wanting to try and build a system from scratch after deleting all built in rules, actions, states , accounts etc. I officially started on this system and so far it is a lot of fun. Its a great practice and it is getting me even more familiar with how Samba functions.

The only thing I have kept is just the basic sample menu and products as there is really no reason to build this from scratch for simple testing.

Some of you may be wondering why I would spend time on this when I havnt even finished some of my other projects. Well this is helping me with those projects… Some of them I have kind of been in a indecisive state with how I want them to proceed and this is helping me with a more clear vision.

1 Like

Well its been a long time since I started this project and I am happy to say I finished it. I am somewhat disappointed though that after looking at it… it really was no different than the default setup. Yes I had some differences and it was fun playing with the various things but I learned in the end the most from the exercise is the need for more detail in tutorials especially my own.

Its really hard to track down various key information for setups and uses etc. I know what we should do but I also know how big of a task it would be and the community is just not ready for it yet as evident with the lack of actual contribution to something like this.

Actually what exactly were you referring to? Do you mean about creating a new default setup that has more built in features or rearranging how that worked?

Documentation primarily as well as more Tutorials from other members. Or simply more involvement in improving tutorials thats constructive and not just complaining if they work or not.

I actually deleted every rule, action, state, etc and built a system from scratch. I was expecting to maybe get more ideas for ways to improve features and really all it did was make me realize more and more how bad we need people to get involved with helping improve basic documentation.

For example I have a VAST wealth of knowledge from my time in the forum but often its VERY hard for me to pinpoint the thread. I know its there and I know it can help but I just cant find it.

1 Like

Ah, a bit more involved than I thought then :slight_smile:

Definitely more documentation is very much needed. Many people don’t search forum and post duplicate new questions. And like you say, tutorials sometimes become 100+ posts about things someone missed from not following the tutorial. I think as a community we are engaged in helping others and when possible making new things for ourselves and sharing for the greater good, however might be something can be considered to have more involvement / delegation from some to build up the documentation, even copy paste from tutorials as there is a lot on forum already. Some people like a link with all documentation there and might actually stop “meaningless” topics in the long run. Maybe this is a discussion for the Lounge though.

I am very willing to help build documentation and Emre has provided me and Q some admin privileges to help delegate some of this as well. Anyone reading this if you have idea that could improve documentation or tutorials even if its forum structure or categories etc please share. Who knows we may even grant you some abilities in the forum to contribute.


Anyway Let me explain more about my journey with building a system from scratch.

My first major hurdle was resisting the urge to cheat and by cheat I mean look at the default database for comparison reasons. I set some internal rules for myself because I wanted to learn from this. I had to pick specific times to work on it and they couldn’t be when I was helping with forum because typically I swap between databases a lot during this time.

My first major hurdle was deciding the basic rule flow for just creating tickets and closing them.
For example I was thinking more along the lines of quick-sale restaurant. I had a working system that used more Ticket Closed events than it should have and although it worked I realized just how limited it can be if you think linear and do not look at the total plan. I realized just how important it is to take it in small chunks that work together as a whole.

My second hurdle was States of course and coming up with the best flow for them. I really did not have much trouble with this hurdle because states are easy for me but I did find some difficulties with my rule flow teaching me what can pass values and what cant etc.

I will try and finish my story more later but bottom line is I learned a lot personally and I recommend anyone with free time (which is nobody lol) to try this it really teaches you a lot.

1 Like

Yeah I have to say I am struggling with that more now as well. I spend a LOT of time reading the forum, even just understanding other peoples problems and how they are resolved. The forum is good and search is fast and ok, but biggest problem I find is the terms some people might have used in a post might not match exactly what you think, so you end up missing that thread. Especially more when you have a worldwide community with different language and English abilities and even different cultures and countries call the same thing something different. So I think with documentation we can resolve better categorisation structure for this type of thing.

Also I really sometimes wonder how you and @QMcKay (plus others) have time, you run your restaurants and contribute so much here. I am running my business too with reselling / supporting SambaPOS and ecommerce and probably end up spending more time on the same thing over and over than being able to concentrate on making one feature / tutorial much better.

One of the major forms of documenation I find missing is in action parameters, Some of them I have no idea what they do, and just do experiments until I figure it out, could we possibly have a post where each action is considered with the information neccesary?

1 Like

Great idea but I think you missed the point. I am not asking what you would like to see. I am saying we have a lack of participation from community all they want is to ask for documentation but very little help providing it. I personally do not have the time nor desire to list every possible parameter and what it does for every action.

Some things are best left for experimenting with but some things we absolutely need some better form of documentation. I did not mean to create a post outlining the downfalls of lack of documentation I really was just sharing my experience with building a system from scratch.

My experience with this practice lead me to a conclusion that surprised me. I fully expected to get more ideas for improvement of core functions like states, rules, etc and I did get a few and I will share it in appropriate channels but what I saw the most was difficulty finding a few key things for some of the more advanced options. I do not mean basics like what actions do its really not hard to experiment and figure these things out.

Its far fetched but a way to generate smarter searches for forum content would be a start.

Yep, I feel if we have more documentation to get started with more people will be more willing to create tutoirals.

LOL i really dont think it works that way. Its nice to say that but in reality it really has not shown to be true. We added more documentation and 1 person contributed. Most people just wanted more.

Where did you add more documentation? to the website?

It started as a forum category then we moved it to a wiki.

Please dont confuse what I am trying to say though. Most parts of SambaPOS simply can not be documented due to the custom nature of it. I specificaly am talking about my experience with taking on what most people wouldnt even consider and what I learned from it. I certainly didnt need to know what every action did…but maybe I needed some specifics for how some rules might allow Mark Ticket Closed and some wont… PS thats just an example not real world.

This thread has really gotten off onto something I did not mean for it too so I would like to ask you to refrain from asking for features in this thread including documentation. however if you want to discuss ways the community can contribute then be my guest.

When did I ask for features in documentation? i was giving an idea of a way of the community could furthuer contribute if their was adequate documentation. Like I would love to contribute but I found it very hard as I got stuck on data export, not understanding the formating.

So after the exercise was over I took some time to compare my setup to the default basic setup and really I noticed very few real meaningful differences. The main difference I did notice was how focused I became on specific flow when i should have broken it up in smaller chunks.

@emre one thing I did notice that I think we could use is the fact that we have a LOT of actions now vs last 2 years and while we can type the first word in the actions name to bring up the list of actions matching, sometimes I find myself not able to remember the exact name of the action but I can remember part of it…

Example Refresh Widgets action I couldnt remember the actual name so I thought I will try just Widget expecting it to pull up any action with word Widget in it and it doesnt work that way. It would be very nice if it could match any word or sequence of letters not just the first word in the name.

I mean when creating a new action.

For example the above screenshot It would be nice if typing Widget would return any action with word widget in it.


Something else I noticed that would be nice is the ability to categorize Account Transaction Types similar to how we can categorize Automation Commands with the Category option.

@emre I know this may be too late atm with these requests considering what you have shared with me and Q but perhaps it can give some ideas for future things. These are small requests but man they would be nice to have.