Sciencemadness Discussion Board

Chemical Inventory / MSDS Datastore / etc.

Baphomet - 24-9-2008 at 19:05

Hi guys, I'm thinking of writing some software and want to run it by you first.

How about a program that will allow the user to keep a database of all their stocks of chemicals? In addition each line can be clicked to get more information on the chemical, including a Wiki-style page and MSDS.

It would require some volunteers to gather the information and help put the database together. Or possibly a website where people can upload entries for chems that are not in there yet.

What do you think?

raiden - 25-9-2008 at 00:22

Sounds like a good idea. Send me a U2U, only too happy to help.

Baphomet - 25-9-2008 at 02:28

Thanks. I have had some U2Us from keen people too!

Do we want to do this as a ScienceMadness project? Could it even be hosted on this website?

Or maybe it would be better to make it a 'fat client' program rather than a web interface?

jokull - 25-9-2008 at 05:22

Great idea!

And it would be greater if you develop the software in a platform independent style.

I will be glad in helping.

Picric-A - 25-9-2008 at 06:17

Good idea! could be very usefull to!
I would be glad to help with it! just send me a U2U!

panziandi - 25-9-2008 at 09:25

Very good idea, I like the idea of keeping an inventory ( i keep a list of everything I have) but it would be great to be able to click on the item and have a MSDS and fact page come up.

This would be really very useful to everyone! I'm sure loads of people would be happy to donate information to you, I certainly wouldn't mind.

undead_alchemist - 25-9-2008 at 10:02

I sent a u2u with the idea of making it as a add on to the following program.
http://adempiere.com/wiki/index.php/ADempiere

[Edited on 25-9-2008 by undead_alchemist]

DJF90 - 25-9-2008 at 11:00

It would be good it it kept track of the amount of chemical you have too... so like you tell it how much you start with and then tell it how much you use each time you use some and then it tells you what you got left. This way you can keep track of your chemical stock without having to go through and weigh everything oftenly. And also it'll prevent the scenario where you plan to do an experiment and you find you havent got quite enough of a chemical to do it so you have to scale down... means time is wasted on re-doing calculations :(

panziandi - 25-9-2008 at 11:21

Indeed very good point DJF90. I sometimes stumble upon that. Also if it told you where you stored it, I stupidly couldn't find something once and ended up buying another bottle then I found my original one... That annoys me :p

Baphomet - 25-9-2008 at 16:07

Hi guys. What a great response! There is no choice then, we must proceed with the project :)

It will be open source of course. I really like VB.NET so if there are no objections...

As you mentioned there are good reasons to track inventory. Also there are safety benefits, as the system can tell you where the safest place to store something is.

Undead > Thanks for the pointer to ADempiere. What language is it written in? We need to decide if we want to use a platform like that or something more specialised.

Does anyone know of a source of free chem information that can be 'scraped' automatically? Or will we need to copy everything from Wikipedia by hand? Actually there are some copyright issues to consider as well..

ordenblitz - 25-9-2008 at 18:11

It would also be great if you could generate labels off the database for the chemicals as well. It could be based on common sizes of self adhesive label stock.

If one could print the name, synonyms, grade, net and gross wt, formula and maybe common physical properties on there based on user choice of how cluttered you want your labels. I like everything I can think of printed on there. saves a lot of time paging through references. Possibly it would add, if requested, the appropriate hazard placards and reactivity data as well? I have spent literally weeks making up labels for my stock and i am no where near done. It does add greatly to the look of professionalism in any given lab to have proper labeling.

I really love the idea of being able to put a location on the database. I spend way too much time digging through cabinets and shelves looking for things.

undead_alchemist - 25-9-2008 at 18:30

ADempiere is a client / server program, with the client using Java, so it works on most computers.
One part of the program that is nice, is that it is getting EDI so it can process orders with suppliers.

Baphomet - 25-9-2008 at 19:26

orden > cool, let's do it! how about a template screen, like a print merge where you can design the label and the data is filled in later?

undead > how does EDI work? your idea is intriguing but i'm allergic to java. what to do? is there an API for EDI that we can call remotely?

undead_alchemist - 25-9-2008 at 20:15

EDI info:
http://en.wikipedia.org/wiki/Electronic_Data_Interchange

I know Java is not the best to work with, but it's nice if you want to be able to connect to the backend database server from anyware,
with one interface.

I am working on getting ADempiere up and running at my company, and move our data over.
Our current software does not support database backend as a starter...

not_important - 25-9-2008 at 20:31

Quote:
Originally posted by Baphomet[/i

It will be open source of course. I really like VB.NET so if there are no objections...
That doesn't strike me as particularly open source, nor very platform independent. Can I run this on my old PowerPC Mac? On my various BSD boxes?

Baphomet - 26-9-2008 at 00:15

Open Source was not predicated on choice of language last time I checked.. and who said anything about platform independence? ;)

Though I'll take your points into consideration.

If you are a Linux fan then there is a program called Mono - from what I've heard it runs .NET apps fairly well. BSD probably has a version of this software that you would be able to use.

Version 1.0.0.0

Baphomet - 6-2-2009 at 06:48

It's taken a while but I've come up with something. Please try it out and let me know what you think!

Currently it has very simple functionality but many of the ideas you mentioned will be incorporated in future versions. (Don't despair, a chemical database & label printing facility are in the next release).

Enjoy ;)

Attachment: ChemShelf-1-0.zip (31kB)
This file has been downloaded 689 times


watson.fawkes - 6-2-2009 at 08:04

Quote:
Originally posted by Baphomet
It's taken a while but I've come up with something. Please try it out and let me know what you think!
Now, you're using VB.Net. I advocate switching now, while it's still easy. Regardless of the existence of Mono, basing new open source software on a Microsoft development environment is just crazy. I know that I just wouldn't contribute to such a project, purely out of spite at M$. For the style of application this is (a business-like application that is a rich interface to a database), I can recommend Java. It's cross-platform, strongly-enough typed, and has mature development tools. I'm not purist about Sun's "ownership" of Java. They've done a good job of providing a public benefit with Java, completely unlike M$.

You had some interest in a web version. I'd advise against it on privacy concerns. In the US, such a site would just be a target for national security letters. Just say no to storing sensitive data on public servers.

Baphomet - 6-2-2009 at 14:30

Thanks for your feedback! I'll address each of your points.

Version should be 0.1.0.0, at most.
OK

I'm getting an unhandled exception displaying some items, apparently not consistently.
If you could forward details it'd be much appreciated. I was not able to replicate during my tests.

Source code not included. If you want it to be open source, start early.
I have a very strong preference for VB.NET. The source code will be released but only if others want to work in VB.NET and only if I'm recognised as supreme master. :D

A bar code for the "Laboratory" seems odd. Does it go on the door?
Quite :P

You definitely need polymorphic items. "Amount" for a Vigreux column, for example, isn't meaningful.
Yes this occurred to me after adding the glassware during testing. Initially I had only thought of chemicals and containers. If you can think of other classes of items I could add those too.

The icons for "container" and "item" are hardly distinct, visually.
Yes. The 'item' logo will be replaced.

There's a conflation between "substance" and "container of substance". This is important if you want to track the use-history of sensitive chemical, where, say, the clock starts ticking when you open the bottle.
I had considered this. However it will be covered using the 'expiry date' field and possibly a history tracker attached to the 'amount' field.

Integrating pictures of items would be useful. Pictures plural for each item singular.
Could you elaborate on how this could be implemented?

You have a location-based view. You'll later also want a different view, one that groups by chemical, no matter where stored.
Sure. It is do-able but probably a couple of releases away.

I would recommend a blog-per-item, general purpose, for tracking history, purchases, repackaging, synthesis, etc.
Like an audit trail? I like that idea.

Be sure to enable zero of something. This makes it possible to query on thresholds for reordering material and equipment.
Zero amount? It already allows such an entry.

Now, you're using VB.Net. I advocate switching now, while it's still easy.
Sorry but this one is not negotiable. You'll find I'm flexible on most other things though! :P

You had some interest in a web version. I'd advise against it on privacy concerns. In the US, such a site would just be a target for national security letters. Just say no to storing sensitive data on public servers.
Exactly. This is why I made it a fat client instead.

chemrox - 6-2-2009 at 21:55

@Baphomet: I'm looking forward to your product. I'll test betas happily.. how are you going to make this quick and easy to use? I think that is the biggest challenge; making software that is easy to use, so easy that one uses it rather than simple stuffing the msds sheets in a binder to be organized someday.

Baphomet - 6-2-2009 at 22:17

Thanks chemrox. Completely agree - the aim is for people to find the software useful. Please try 1.0, don't expect too much but hopefully it can give you some ideas for features you'd like to see.

Here is a wishlist from the items already discussed:

- search functionality
- bulk barcode functionality
- add magnification to barcode (e.g. single printout results in 8pt, 9pt, 12pt, 20pt, 36pt on one sheet)
- automated warning for low stock
- automated warning for expiry
- label printing facility (name, synonyms, grade, net and gross wt, formula, hazard verbs)
- MSDS generation / printing facility
- link to relevant Wikipedia page
- definitely need polymorphic items. "Amount" for a Vigreux column, for example, isn't meaningful.
- The icons for "container" and "item" are hardly distinct, visually.
- You have a location-based view. You'll later also want a different view, one that groups by chemical, no matter where stored.
- Automatic sorting of chemicals into categories (e.g. organic, acid, base, metal salt..)
- Automatic sorting of chemicals into safe storage groups (e.g. acids with acids, etc.)
- blog-per-item, general purpose, for tracking history, purchases, repackaging, synthesis, etc.

Version 1.1.0.0

Baphomet - 7-2-2009 at 05:10

This release includes:

- automatic barcoding for all items (easier to use)
- different icons and forms for chemical / apparatus
- MSDS and Wiki links
- measurement of 'amount remaining'
- automatic warning when stock is low OR expiry date approaching

Attachment: ChemShelf-1-1.zip (34kB)
This file has been downloaded 664 times


joeflsts - 7-2-2009 at 05:22

Quote:
Originally posted by Baphomet
This release includes:

- automatic barcoding for all items (easier to use)
- different icons and forms for chemical / apparatus
- MSDS and Wiki links
- measurement of 'amount remaining'
- automatic warning when stock is low OR expiry date approaching


The zip file appears to be corrupt.

Joe

Baphomet - 7-2-2009 at 14:35

Try this one

Attachment: ChemShelf-1-1.zip (34kB)
This file has been downloaded 641 times


Baphomet - 7-2-2009 at 14:36

Interesting, any file uploaded becomes corrupt. The file attached should contain 'This is a test'

[Edited on 8-2-2009 by Baphomet]

Attachment: test.txt (14B)
This file has been downloaded 1027 times


GoatRider - 8-2-2009 at 10:43

Quote:
Originally posted by Baphomet
Interesting, any file uploaded becomes corrupt. The file attached should contain 'This is a test'

[Edited on 8-2-2009 by Baphomet]

Interesting- it says it's 14 bytes, which is the length of "this is a test" plus a null. So perhaps it's getting corrupted on the download.