Barcode/QRcode scanning on phones

Apr 25, 2026 Last reply: 2 months ago 14 Replies

Ages ago (~15+ years?), I designed a "donation tracking system" for a nonprofit. It allowed donor, type of donation (almost always material goods), weight (how else do you account for "inventory" and "shrinkage" to your donors?), triage information, storage location, date/time, etc.



I did this by affixing barcode labels to everything -- scales, ID badges, shelving, identifying tags (labeled pieces of polycarbonate that could be tossed onto a pile of donated goods as it was tracked through the process), carts/conveyances, etc.



A staff member (volunteer, developmentally disabled occupational therapy, someone doing time for community service, etc. -- folks that you don't place a lot of reliance on) would scan labels and my software would bind the associated data accordingly.



E.g., scan their own badge and, hereafter, any activity associated with THIS barcode scanner would be tagged with their identity (in case they screwed up and needed more training; or, in case you wanted to ask them questions about a particular donation...). Scan the ID card from the donor (frequent/corporate donors only; everyone else, scan "Anonymous" barcode printed on poster by door)



Pile donated items onto a cart. Toss a labeled "tag" on top just to track THIS donation. Scan label on cart (so you can lookup its weight). Scan label on scale so you can figure out the gross weight of the "donation with cart".



Scan an image on a poster that categorizes the types of materials being donated (food, clothing, medical supplies, electronics, pet supplies, school supplies, cash, etc.). Scan label on shelf/bin where the donation is being held for triage/processing. Scan a display terminal to review he data associated with the donation. Scan receipt printer to generate a receipt for the donor. etc.



These activities don't happen in a strict sequential order. E.g., loaded carts may end up queuing at scales until someone has time to weigh them. Carts may queue in hallways waiting for disposition. etc. The schema is designed to allow for individual fields to be added/altered in records in a very tolerant manner so you aren't constrained to do this, then this, then that.



[Remember, quality of "staff" is dubious. And, they aren't employees so you can't/won't fire them -- you'll THANK them for their time...]

I received a letter from the new ED at one such place using this toolchain. She wants to port everything over to smartphones (!). "Wouldn't this be great??"



No, there are many reasons why not:



- how do you keep folks from walking off with the phones (even if they have "no service")?



- software has to be written to run IN the phones (are they android phones? iPhones??)



- wireless infrastructure so the phones can remain in contact with the rest of the system



- scanning a barcode is considerably easier and quicker (laser vibrating mirror) than "posing for a photograph" of a QR code



- the focus shifts from disjoint activities to "tracking A donation with A phone"



I've pushed aside paying customers for some time now (no desire to work on OTHER peoples' projects). But, have a soft spot for non-profits. And, realize that no one is likely to donate the hundreds of hours it would take for such efforts (it took me ~1200 hours to build the first system).



And, of course, this is actually "my" project. <frown>



But, I *really* don't want to take this on. So, would prefer refering her to "someone" who is skilled in "(phone) app design" and let her (and "them") sort out the issue -- fully expecting it to either cost too much, take too long, of not find a qualified developer.



I suspect there are barcode/QRcode apps that can be leveraged. But, no idea how much pain is associated with developing the rest of the mechanisms.



"It (already) works; why dick with it?"


Don Y snipped-for-privacy@foo.invalid wrote: |------------------------------------------------------------------| |"[. . .] | | | |I've pushed aside paying customers for some time now (no desire to| |work on OTHER peoples' projects). But, have a soft spot for | |non-profits. And, realize that no one is likely to donate the | |hundreds of hours it would take for such efforts (it took me | |~1200 hours to build the first system). | | | |[. . .]" | |------------------------------------------------------------------|

You are good.

|------------------------------------------------------------------| |""It (already) works; why [. . .] with it?"" | |------------------------------------------------------------------|

I agree exactly! (S.

formatting link
fuer Kontaktdaten!)

Nonprofits have a sort of entitlement (wrong word) mentality. They think nothing of asking for stuff (money, time, etc.). I suspect if you find it hard to make such "asks", you would be poorly suited for that environment as your existence RELIES on such "asks" (people rarely come up and say "I'm going to design such-and-such for you")

Additionally, she (in this case) hasn't actually thought out the consequences of her imagined approach. As it currently stands, the "process" of receiving a donation can be highly flexible. You aren't forced/coerced into doing A, then B, then C but, rather, can do things in any order that is most appropriate to the resources (and preferences) at hand.

E.g., when I would work "intake", I would triage donations before they even got into the building -- as soon as they came off/out of the donors vehicle. "This is a cherry, let me quickly get it to someone who can start looking at it before someone decides to SCRAP it!"

If the donor was on-hand and wanted a receipt, then I could perform the sub-tasks that would allow the system to issue a receipt -- without necessarily completing ALL of the tasks to finish processing the donation.

Similarly, someone donating a 20 year old "beige box" would be heartfelt thanks and the box quickly moved off to the "scrap" pile -- so no one wasted any more time on it beyond tearing it down to recyclable components.

With a phone app -- in her mind -- you followed a donation through the entire process. (What if there is no place to STORE the donation, at this time? Do you need the ability to recall a previous, partially completed donation??)

Don Y snipped-for-privacy@foo.invalid wrote: |--------------------------------------------------------------| |"Nonprofits have a sort of entitlement (wrong word) mentality.| |They think nothing of asking for stuff (money, time, etc.). | |[. . .]" | |--------------------------------------------------------------|

They are not all so. I live near shops of charities. Their outsides have posters DEMANDING THE PUBLIC TO NOT deposit donations when these shops are closed. Such a shop even warns that it uses CCTV in an unsuccessful attempt to scare donors to not donate when it is closed.

I imagine that these charities fear that a bad prosecutor would classify such dontaions as litter and so prosecute these charities.

(A court in the same county convicted a soldier of assault shortly after he volunteered in Ukraine against Russia.)

|--------------------------------------------------------------| |"Additionally, she (in this case) hasn't actually thought | |out the consequences of her imagined approach. [. . .]" | |--------------------------------------------------------------|

Mister Hugh Chetwynd reported that failures to think out consequences of choices are common:

formatting link

(S.

formatting link
fuer Kontaktdaten!)

That's a different issue. When they are OPEN, do they discourage donations?

Their whole business model is based on getting people to GIVE to them -- their time, money, etc. And, *waiting* for people to decide to do those things risks them NOT doing them! So, they unabashedly ASK for whatever they want/need -- often relying on the good will of those asked to not turn down a direct request.

Technology relies on specifics. You can't HOPE that something will work the way you want unless you SPECIFY it to work in that way (and design to that specification).

My "donation tracker" design was the result of observing and participating in that process ("out front" and "behind the scenes") so I knew every aspect of it.

E.g., it would be folly to track individual items at the rate donations arrive -- too much "data entry" ("Computer, i5, 3GHz,

8GB, 250G SSD", etc.). Any data entry that is required has to be pre-canned: "This is clothing", "This is electronics", "This is pet food", etc. so a click of the scanner trigger can enter that data (from a preprinted poster).

And, storing things in locations based on what they are is a silly approach as it means you are forever rearranging what has already been stored to make room for something ELSE when space for it does not already exist with its peers. There's no reason to put all of the medical supplies on shelf X; the only thing you need to know is where you've put EACH medical supply so you can later retrieve them.

[Go into a "warehouse club" and notice that they don't insist that the overflow stock for Product X be located exactly where Product X is on display. Go into a *real* warehouse and note that stuff is stored wherever it is convenient, not organized by product, color, etc. A machine remembers where the warehouse worker (forklift operator) PUT the item so that same machine can tell the warehouse worker where to FIND that item at a later date.]

The ED in question has likely only looked at reports FROM the existing system and hasn't actually "worked intake" to see the actual flow, bottlenecks, problems that arise, etc.

Don Y snipped-for-privacy@foo.invalid wrote: |------------------------------------| |"[. . .] When they are OPEN, do they| |discourage donations?" | |------------------------------------|

I do not know. I suppose that they do not so discourage.

A different nearby charity is named after Saint Vincent de Paul. I donated books to it. Unless I am mistaken, it refuses to accept e.g. electronics as donations (when opened or closed). TV informed me during a recent week that a charity named after Saint Vincent de Paul exists in the United States of America. (S.

formatting link
fuer Kontaktdaten!)

If they are a charity, they have to get their funds from someplace.

Some charities just move money -- taking a cut off the top to pay themselves "for their effort". Others move goods, relying on cash donations to fund their activities.

There are many "second hand/thrift" stores, here, that operate on the basis of taking in goods "donated" and reselling them. They act as glorified trash bins for the items that you can't (CRTs) or don't want to (other items that you think have value -- even if they don't!) discard as "trash".

Sadly, donors often overrate the value of their donations; a 10 year old PC has no value --to ANYONE! Clothes that are torn and tattered are similarly just "rags". Yet, you smile and thank the donor for his "generous donation"... waiting until his vehicle has pulled away before tossing the items in the trash. <frown>

Yes.

Non-profits are plentiful. We joke that its a great way for someone who can't get/keep a job to sustain themselves -- get folks to GIVE you stuff (including cash) for some "worthy cause".

There are more than 4000 nonprofits in my town, alone. An area with a population of ~500,000. Sheesh!

Maybe the idea would be that volunteers would also volunteer their own phones. They would "just" install your app.

:-D

I did not know that, but it makes sense.

This is actually a service to the donor. To the donor something useless may have sentimental value, so he can not garbage it. He gives it to you even guessing you will garbage it when he is not looking, but it is comforting that he tried to give the thing a second life.

Similarly as having a friend or relative come to your house to clear out things when you are moving.

That's even worse! Now you have to ensure your app works on EVERY phone!

When I built the first system, I hunted around to see what sort of devices we had "in stock" (prior donations). Then, settled on a particular make/model handheld barcode reader (with charging cradle), X terminal (for the display stations), electronic scale interfaces (to capture the weights of the donations), etc. So, no monies had to be spent to create the system.

I then had to procure specific information on JUST those devices that I would be using.

Had someone insisted that it run on ANY barcode reader, scale interface, display station, etc. it would have made the project more difficult. Likewise, if I had to RESEARCH all possible offerings to *purchase* the ideal set of hardware...

Some years later, I was in a furniture warehouse. The "inventory" (sofas, chairs, tables, lamps, nightstands, etc.) was stored on large racks that were stacked to ~30 feet above the floor. The racks being spaced about 4 ft apart -- just enough for a forklift with telescoping arm to slip in and rotate it's arm off to the side to capture an item located there (people are not allowed on that portion of the forklift for safety reasons)

You couldn't *see* what was on the upper "shelves". A camera on the "fork"/arm let the operator position it to capture the item.

"How do you know where the item you want is located?" He then showed me the "pick ticket" that the computer had printed for him -- row R, column C, level L "80inch grey sofa".

"How did the machine know where to find that?" Cuz he logged the receipt of the item and told the machine where he was putting it, at that time. (as long as no one violates this protocol, everything should remain where it was placed!)

If the item was later returned to storage (maybe it was on the display floor for a while), he would find some place that was "available" to re-store it.

There's no need to put things in a specific ARTIFICIAL order because access is always machine directed. It's not like going to a library and trying to find a specific book -- which MUST be located where its classification number (Dewey or otherwise) indicates.

Where is "Personal Tax Forms, 2019" located on your computer?

Donors simply don't realize the reuse value of their donated items.

They should, first, ask themselves: "Why am *I* disposing of this? Does it really have any useful life to *me*? What sort of user am I -- how demanding am I of the items that I own?"

A guy bringing in a 3 year old Alienware gaming computer knows it still has lots of life as a high end machine -- but, may not be what he wants/needs TODAY for his "habit".

The old guy who brings in a beige box 486 running Windows 95 that he's had stored in the garage for years WANTS to think that he is doing something "good" -- "Maybe some youngster could find use in this?" (yeah, as a paperweight!) You smile and tell them "we'll give it a thorough evaluation and see what we can reuse. Thank you for your donation!"

And toss it in the scrap pile where the volunteers will disassemble it down to screws and PCBs -- it's value literally pennies per pound.

But, a lot of the cruft in most homes is stuff you KNOW you should have discarded but just didn't. I have no sentimental attachment to the 1500VA UPS, 24 inch TV, two 1U servers, BluRay DVD player, stereo soundbar and the four bay Synology NAS that I'll be recycling this week. I've noted their operational status, wiped all the disk drives (cuz I don't trust others to do a thorough job) and will let them decide what use to make of each of the items.

If they *all* end up in the tip, <shrug> If *any* find new life -- even as components in something else, then so be it. At least they don't become part of the local landfill.

If I opt to dispose of something that I recognize is beyond the capabilities of the folks (usually developmentally disabled) who would disassemble the items, then I will partially disassemble these things to make it easier for them to complete the job (e.g., I discarded a blade server a few years back; much more mechanically complicated than a "PC")

I would issue a query looking for "tax" (not "taxes"!) and "2019" in the *pathname* (not necessarily FILEname). And, get results like:

Bullwinkle/Disk02/Business/2019/Filed Forms/Taxes/Transaction Privilege Tax Bullwinkle/Disk02/Business/2019/Filed Forms/Taxes/Federal Income Taxes Bullwinkle/Disk02/Business/2019/Filed Forms/Taxes/State Income Tax Barney/Disk1/Images/Fred/C.VMDK/Work/Taxes/2019/Federal Barney/Disk4/Fred/C/Work/Taxes/2019/Federal/Instructions ...

because how I name files changes periodically as I rethink how to organize them.

I would then look at metadata associated with each result and determine which is the likely document that I seek.

But, they wouldn't have to be *organized* in any consistent way to reflect 50 years of history; I would let the machine (RDBMS) keep track of all this stuff for me so I can focus on more interesting issues. I.e., 2020 may reside in:

Bullwinkle/Disk02/Business/Filings/2020/Taxes/TPT Bullwinkle/Disk02/Business/Filings/2020/Taxes/IRS ...

It *certainly* isn't worth going through and resorting the file hierarchy to impose some sense of *order* to it (like putting all of the sofas on the same shelf in the warehouse).

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required