Wish New users - Code folders suggestion

Peter Simpson

Expert
Licensed User
Longtime User
Hello Anywhere Software,
May I make a quick suggestion for all the B4X IDEs for when the first ever installed B4X product is started for the very first time.

Setting up the B4X tools even with the carefully written instruction on the products download pages can be a bit brain taxing. I personally think that when the first ever B4X product is ran for the first time, it should automatically create the products folder structure in the current user document folder. I know that you can search the forum for the folder structure and probably also the B4X manuals, its' not too difficult to find that information on the forum. But just like Visual Studio, I personally believe that the IDE should make this step just a little bit easier for new users and create the folder structure for them in their documents automatically.

I've attached an example.

I'm not sure if the suite of tool already do this or not, but if not I would seriously consider doing it.

Just my 2 cents.
 

Attachments

  • B4X.zip
    2.4 KB · Views: 48

stevel05

Expert
Licensed User
Longtime User
Hi Peter, I understand where you are coming from, and agree it would probably avoid some setup problems for new users, but I think that the user should be given a choice of where to put their 'B4X Folder'. (Sorry for making something simple more complicated) but I don't store any working data on my C drive, that is reserved for programs and static data. It's a throwback from using Cubase where the system performs better with data and programs on separate drives, but that is how I structure everything where possible.
 

mcqueccu

Well-Known Member
Licensed User
Longtime User
I support Peters' suggestion. The IDE for the first time should prompt to choose a workspace, and the user have the liberty to choose any location he/she likes. Preferably location easily accessible without any elevated privileges.

And when you select, example Drive C, then all these folders get created, and the IDE already knows where the Additional Libraries and Shared Folders will be
 

Peter Simpson

Expert
Licensed User
Longtime User
Hiya Steve,
but I think that the user should be given a choice of where to put their 'B4X Folder'.
That's an excellent idea, I only said default documents folder simply because when users setup backup solutions, thier documents folder is always back up by default. But to tell you the truth, any drive\folder will work (even a network drive\folder) as long as the basic B4X folder structure can be created on it in full.

Cubase hey, someone is into their music big time 👍

New users probably don't realise that they need multiple external library folders and also a specific folder structure for them all, it's just easier if it done for them automatically. Another good thing is that once B4A/B4J/B4i or B4R automatically creates the folder structure, the paths in the .ini file can be populated automatically by the IDE thus helping new users even more.

I support Peters' suggestion.
Thank you

and the user have the liberty to choose any location he/she likes. Preferably location easily accessible without any elevated privileges.
I agree, my documents by default, or any external devices or network drives.

and the IDE already knows where the Additional Libraries and Shared Folders will be
Yes, I believe that the IDEs are mature enough now and should create the folder structure and populate the .ini file automatically once the folder structure has been created by the IDE.
 

aeric

Expert
Licensed User
Longtime User
First, it is good if the IDE can automate some steps by default.

But let's ask ourselves why we need this folder structure in the first place?

For seasoned users, I can understand as we already know the way we organize our folders.
There is also a thread for handling cross platform additional libraries.

If you say for beginners convenience, I believe they will just pick up an IDE or platform to start with.
They won't create all the platform specific folders at this point.
Most probably, the first app they are creating only make use of the core libraries.

Thanks for the suggestions of the folder structures to make the projects to be more organized.
First I would say the shared modules are actually no longer being used in B4J or optional in most platforms so these folders are not required.

The intention of files organization is good but I afraid this can mislead new users to think that this could be a requirement of B4X IDE or a mandatory framework to follow.

B4X is extremely simple tool unlike Visual Studio, Android Studio, XCode or Arduino IDE which are so complicated, heavy and bloated.

One thing I can suggest is to have a Welcome screen or onboarding wizard.
It can request the user to configure the necessary path when first booting up the software.
However this feature can sometimes become quite annoying like a nag screen.
Just make it can also be skipped.
 

Peter Simpson

Expert
Licensed User
Longtime User
First, it is good if the IDE can automate some steps by default.
Yes I completely agree, and that is all you had to put in your post. But now I have to respond to you whilst sitting in the park with my partner and my dog just watching the world go by lol :)

But let's ask ourselves why we need this folder structure in the first place?
You're missing the point completely, this doesn't matter to know users straight away, they just want to get up and running as fast as possible.

For seasoned users, I can understand as we already know the way we organize our folders.
There is also a thread for handling cross platform additional libraries.
You're missing the point again, this isn't about seasoned users, it's about making it easier for new users to get started.

If you say for beginners convenience, I believe they will just pick up an IDE or platform to start with.
They won't create all the platform specific folders at this point.
Most probably, the first app they are creating only make use of the core libraries.
I completely agree, but still still, once they start they need the correct folder structure. VS does it automatically with ease, I do the same with one of my clients apps. It's simple enough to do for Anywhere Software and it would help new to B4X developers.

Thanks for the suggestions of the folder structures to make the projects to be more organized.
First I would say the shared modules are actually no longer being used in B4J or optional in most platforms so these folders are not required.
Anywhere Software can create whatever folder structure they seem necessary. The attached zip file was just an example because I can ;)

The intention of files organization is good but I afraid this can mislead new users to think that this could be a requirement of B4X IDE or a mandatory framework to follow.
And that's why it should be automatically created, plus at some point in time they will most probably use either IDE specific or B4XLib libraries and they will need it.

B4X is extremely simple tool unlike Visual Studio, Android Studio, XCode or Arduino IDE which are so complicated, heavy and bloated.
Once again, you've missed the point and this is the exact same reason why I do not post on here too much these days. This post is NOT about the IDE, but just setting up some simple recommended folder structures automatically the first time any of the IDEs are fired up. If you have ever used VS, then you know that it automatically created project folders, web project folders etc automatically where users projects etc are saves, I'm just suggesting that B4X does the same for project folders and the recommended libraries folder structure.

My post has absolutely NOTHING to do with the IDE itself, there's absolutely nothing wrong with the B4X IDEs. This post is only about making setting up and using the B4X suite of development tools slightly easier for potentially new B4X developers. One less step hey, one less step to follow (or to find out about) 🙄

One thing I can suggest is to have a Welcome screen or onboarding wizard.
Hmm, I personally don't know about that. In that regard, I would leave things as they currently are. But saying that, I do see what and why you're thinking what you're thinking, to make things easier for the end user. Anyway, it would most probably only be a one time popup screen.

It can request the user to configure the necessary path when first booting up the software.
Hmm, maybe, I can see your thinking here as the user would then know there's some extra steps that need to be completed first. But B4X gives a warning message about paths already, I'm sure of it, but I could be wrong.

However this feature can sometimes become quite annoying like a nag screen.
Exactly, so why add it in the first place.

Just make it can also be skipped.
Or just don't add it at all, as I'm sure B4X already has some sort of warning message about missing paths to the java file.

I'll stick to my original suggestion, you've just complicated things when there were no need to so do o_O

The IDE could just automatically create recommend folder structure in either the default location like VS does (the users documents folder), or where the developer wants it (an external drive or network drive). It really is that simple Aeric ;)

A excellent new video was just released yesterday by @mcqueccu showing how to download, install and setup the latest and greatest B4A, Android SDF with resources, OpenJDK and how to setup the paths.

But still, I think that B4X should setup the folder structure for new to B4X developers.

It would be nice if B4X IDE could download these files for you automatically and place them in a folder on the C drive. I use a package called BullZip PDF printer, that download all sorts for you, I also use dbeaver, and I believe (but I could be incorrect) that too download extra files but I could be wrong.

Maybe Erel does not do it because of licensing issues, I don't really know though.
 

aeric

Expert
Licensed User
Longtime User
Hi Peter, I wish you take another time to read again what I wrote.
I know life is tough, so do I.
Or maybe, really, it is me who actually missed your point.
 

Peter Simpson

Expert
Licensed User
Longtime User
👍 Hello @aeric
Or maybe, really, it is me who actually missed your point.
You missed my original point Aeric, no worries 😉

I'm currently with my partner and my dog in Sutton Park and relaxing in the sun (yes, we have got a bowl and cold water for our dog).

Life is currently great with me at the moment, work is busy, we got back from a break away 4 weeks ago and we are going away on Monday for another short break away.

Nah, all is good here, I'm busy and enjoying life, plus I'm taking the next few days off from working. I will keep my business phone on me though, I'm just not coding until I get back from my next break away :cool:

Anyway, you should be leaving nice screenshots of all your B4J developed programs on the new Fb group page ;)
 

Daestrum

Expert
Licensed User
Longtime User
Maybe an extra input box in Tool > Configure Paths for base source folder. You have to set up java etc, so simply add the folder for sources.
 

aeric

Expert
Licensed User
Longtime User
It's good if someone can point out to me what I have missed.

I can point out a contradiction point but I decide not to argue further.

Have a nice day Peter.
I am having dinner at roadside too.
 

Peter Simpson

Expert
Licensed User
Longtime User
Hello Aeric,
I can point out a contradiction point but I decide not to argue further.
Argue, who's arguing, not me. I'm just stating a fact, you missed my original point by a country mile ;)

Have a nice day Peter.
I certainly will do that. The sun is out and we're having a good time walking around the park.

I am having dinner at roadside too.
Where's my food, keep it warm for me 👍

I'm actually cooking a BBQ later, everything has been marinading over night, including the jerk chicken and fish.

And don't forgot post screenshots of your work on the new Fb group 😉. You've developed some nice looking solution that can and should be shown off on the group page 👏


Catcha l8r...
 

Lucas Siqueira

Active Member
Licensed User
Longtime User
Wishes:

1) Automatically create a folder structure for additional libraries:
b4x
---->b4a, b4i, b4j, b4x

2) Java download

3) Android download + additional package

4) Update libraries by clicking on them to update (currently we have to access the forum through the library link, download it, and manually place it in the folder)

Downloads could be like SDKManager
 
Top