Yet another app completed for a client thanks to B4X and the great community

Peter Simpson

Expert
Licensed User
Longtime User
Hello all,
I'm just at a new clients warehouse production facility 112 miles away from my home, I've been installing a new Android based product mixing app that I created using B4A, as per usual the storage solution is an MySQL database. I also supplied the client with a nice new Dell PowerEdge T330 server just to run the database which I set up as RAID 1, everything is running grrrrrrrrrreat.

I keep remembering a post in chit chat a few years ago about how B4A can't really be use for professional work for real paying clients and that people want us developers to use Eclipse cough cough cough. I remember saying back then that B4A can obviously be used for professional Android solutions especially as this community has fabulous support and most things (excluding 3D games) can easily be developed and should be developed in B4A if a developer is more comfortable using B4A over Eclipse or Android Studio.

Anyway back to the subject an hand. This particular solution is breaking my own installation record, this solution will be installed on at least 42 10" tablets, a boring job that I have to do, luckily somebody else is installing my Windows software solution onto their PC's and laptops which also share the same MySQL database.

Below is a photo of my laptop, my external monitor and B4A running tests onsite at the clients location. Once the app was passed and accepted by the director and the team of chemists, I uploaded it to Dropbox and install the app onto all 42 tablets.

I would just like to say thanks to all the library wrappers (and not yo yo yo rappers y'all), to the whole community at large for helping everybody on here with answering questions in their hours of need.

Luckily I don't really ask too many questions on here anymore, the most commonly asked questions have basically all been answered and can be found with just a quick search and a few clicks of my left mouse button. I've developed a number of different bespoke apps for clients, most of which are either driven by MySQL or SQLite synchronised to MySQL for on the move mobile solutions.

This post is just to say to all the developers on here that have said in the past that you can't really use B4A for professional development for paying clients and MUST use Eclipse or Android Studio, I say "tell that to my extremely happy clients".

Anyway thanks to B4A and this community, I ALWAYS DELIVER what my clients are looking for on time and on budget (on budget depends on app changes during development). Thanks to B4A I turn my clients Android app dreams into reality for business use.

B4A.jpg


Enjoy...
 
Last edited:

LucaMs

Expert
Licensed User
Longtime User
This post is just to say to all the developers on here that have said in the past that you can't really use B4A for professional development for paying clients
We know that it would be possible (and preferable ;)) to use B4X professionally; the problem is that clients do not know it!




most of which are either driven by MySQL or SQLite synchronised to MySQL for on the move mobile solutions.
Which "solution" did you choose?
 
Last edited:

lemonisdead

Well-Known Member
Licensed User
Longtime User
the problem is that clients do not know
As said years ago : not all clients want to be provided the sources. It's only related to confidence they have in the provided solution. If a B4X user is hesitating about proposing his/her solution to a client just only because it is done with B4X than I would say that he/she is too shy.
 

Peter Simpson

Expert
Licensed User
Longtime User
As said years ago : not all clients want to be provided the sources. It's only related to confidence they have in the provided solution. If a B4X user is hesitating about proposing his/her solution to a client just only because it is done with B4X than I would say that he/she is too shy.

I ALWAYS tell all potential new clients that I DON'T USE an industry standard development package like Eclipse or Android Studio, but I do use an absolutely fabulous set of RAD tools. Sometimes clients ask me about RAD thinking that I'm using street slang for the word radical when in fact I'm not, I then proceed to explain to them what I use and the development advantages of the B4X suite of tools. My clients don't appear to care about the development platforms that I use (B4X and VS not Eclipse or Android Studio) or about languages or databases either, actually they don't care about any of that stuff, but clients do care about 4 things in general.
  1. Development costs (Keeping costs in budget)
  2. The lead time (Will the app be delivered and deployed on time)
  3. The design and quality of the completed app (The entire end solution)
  4. Long term technical support
All 4 points above are extremely important to potentially new clients and to my current clients too.

I'm not going for job interviews for companies that only uses Android Studio et el, so as I'm self employed the only thing that really matters is that my clients are happy with the end products that I produce, and they always are happy...
 
Last edited:

William Hunter

Active Member
Licensed User
Longtime User
@Peter Simpson - I'm thinking of having my minions prepare a cease and desist order against you. You're giving me an inferiority complex. :rolleyes: That's great work. Thanks for sharing. Anyone who has used B4A and doesn't recognize it for the great product it is, hasn't been paying attention.

Regards
 

Johan Hormaza

Well-Known Member
Licensed User
Longtime User
[QUOTE = "William Hunter, post: 575575, member: 18207"] Cualquiera que haya usado B4A y no lo reconozca por el gran producto que es, no ha estado prestando atención. [/ QUOTE]
Asi es:)
 

jnjft

Member
Licensed User
Longtime User
@Peter Simps - are there apps written by you available on Android Play Store, or are you only developing on demand?
 

Peter Simpson

Expert
Licensed User
Longtime User
Which "solution" did you choose?

Firstly as about 90% of my bespoke Android solutions for my clients use MySQL, I will only use @DonManfred MySQL libraries as there's no messing about with loading extra drivers onto Windows servers and making sure that the version numbers are correct blah blah blah, oh yes and Manfreds MySQL libraries work 100% perfect with every single version of MySQL that I've come across, Manfreds MySQL libraries are lightning fast too. MySQL servers already have a driver on them called erm erm erm 'MySQL driver', so why on this planet would I install yet another driver on an MySQL database server to connect to an MySQL database. That speech was for anybody who wishes to attamp to tell me to use another solution, no thank you.

Anyway LucaMs, I have written my own synchronisation solution where I first check for the dB (decibel) signal strength of the WiFi and also the 3G/4G phone signal strength. I do this before deciding which database to directly save the data too, onboard SQLite or online MySQL. If both the WiFi signal (if there is one) or the 3G/4G signal (if there is one) are both not strong enough, the service module will let the app know to save the data to the onboard SQLite database, otherwise the app will automatically save the data to the online MySQL database instead.

When the SQLite database needs synchronising to the MySQL database which it does automatically, it first checks to see if the signals are strong enough, if one or both of the signals are strong enough the app then checks for the synchronisation keys. If the keys are set to false it read the necessary data from the SQLite database and inserts the data into the MySQL database from the SQLite database, the app then sets the synchronisation keys to true (thus it will not synchonise that particular data again), and that's it really. I do this for all bespoke invoicing, stock control, warehouses, mobile solutions etc etc etc that I create for my clients.

1. I don't use CloudKVS because I don't need to. My solutions don't need a B4J program running on the server just to perform such a simple task. As I only create Android apps, my solutions work perfectly fine for my clients needs. CloudKVS is an excellent solution though, but it's just not for me.

2. I don't store usernames, passwords, database locations or the database names in the app itself, all that information is encrypted and stored using KeyValueStore 2. All my apps are bespoke for clients, so before anybody starts talking about hackers getting into apps for the database login information, you need to realise a few things first. If a hacker really wants my clients database details from their apps, they would have to physically walk into or forcibly break into the buildings or offices where the devices are located and actually steal a device (which a hacker would first have to find), or for mobile devices they would have to physically follow a client with a device like the taxi firm or the delivery company that I have created apps for and actually physpically steal a device directly from the user which would never ever happen.

Why did I mention about usernames and passwords etc?
As my apps are not on the play store hackers can't get to them very easily, and some clever clog on here will probably mention about hackers and security blah blah blah. We all know that hackers are actually all soft pussies and that not one of them would ever actually jump on a plane or into a car to go to a building or follow a person just to steal an Android device. So please nobody bring up hackers and security, hackers can't physically get to my clients devices without stealing one, so that's the end of that particular conversation.

Anyway, I hope my long answer didn't bore you too much Luca ;)
 
Last edited:

Peter Simpson

Expert
Licensed User
Longtime User
@Peter Simps - are there apps written by you available on Android Play Store, or are you only developing on demand?

My apps are all bespoke for paying clients, they are not available on the play store for the general public.

I actually removed my bespoke Android applications website a couple of months ago, but I'll be putting a new website up again shortly with a new domain name.
 
Last edited:
Top