Sciencemadness Discussion Board

Looking for a good programer

plante1999 - 13-4-2013 at 07:11

I'm looking for a good programmer for a project. The project is for the sciencemandess community. I would need one that do not charge anything. I got some (very basic) knowledge in programming. The project is to make a inventory/database/managing software for chemistry.

I will try to be easy to understand.

The application consist mainly in 4 parts:

The inventory, where one select the chemical from the database he have, the amount of it and purity.

The database, the database is synchronized by all computer with this software, one can add a new compound in the database, with propreties etc... and the database will be enlarged with the new chemical.

The softward would need to be intuitive, and if possible, recconise by itself that AgNO3 contain Ag+ and NO3-

The third part is a database of chemical reaction which is also synchronized. each chemical equation have a page with explanation about the reaction.

A search bar, where one can search, for example N2H4
The database would answer you if you have derivatives of hydrazine, such as phenylhydrazine or salts such as hydrazine dihydrochloride

It would also results synthesis for the compound. Example of the said database results:

Query; N2H4
Results:
Name: Hydrazine
Inventory: semicarbazide
: hydrazine dinitrate
Synthesis:
Raschig process;Inventory: Need ammonia
2NH3 + NaOCl → N2H4 + H2O + NaCl
Semicarbazine process;Inventory: All reagents needed in inventory
(H2N)2C=O + NaOCl + 2 NaOH → N2H4 + H2O + NaCl + Na2CO3

.....................................................

Hopefully it was easy to understand.

If one is ready to help, he can contact me via hclo3@hotmail.com or
Plante1999 on skype

If someone can help me to make this post more clear, he is welcomed.

Thanks!

Finnnicus - 13-4-2013 at 07:29

Very cool, I know how this would be done, but my skills are not up to par. Would it recognize ions or elements?

plante1999 - 13-4-2013 at 08:37

If possible, both.

Here some other ideas:

In the compound database, there could be a template to make a label for the compound. When one would oppen there inventory, they could click on box for some chemical and click on "print label" then he could choose the size of the label and the design, and print all the label for his chem easily. No more hasle to make your labels.

A database for books, references, etc

One could in his inventory, click on some chemical, and put them for sale. When would do a search in the software, on the bottom of the search results, the desired chemical, if one sell it, would be affiched for sale.

Other random ideas:

Each user could have there own pages for there experiments etc, sort of website. Each user could make a "contact" list with other user, sort of messaging system.

[Edited on 13-4-2013 by plante1999]

Steve_hi - 13-4-2013 at 09:41

I think microsoft access which is a relational database could be used for this project. no?

maxpayne - 13-4-2013 at 10:14

Too bad I do not have time to spare for this project, since I'm somewhat skilled in VB, c#, delphi, even asm and many other, including server side prog. languages.

Recently, I was also thinking about application for chemistry, but with main focus being on research intuitive and cross-data gathering. I found that OneNote is almost perfect for my needs.

I suggest that before entering in such a project one should know exact needs that app should solve, since many thing do not require prog. languages; some wiki or db system could be enough for the task.

Adas - 13-4-2013 at 10:24

I used to be a programmer, I still remember many things. I tried just PAWN language, but I could possibly help you with functions (for example functions that divide text into parts or checks if the given formula is possibly correct)

elementcollector1 - 13-4-2013 at 10:34

I remember wanting to do something like this a while ago, but the task is a daunting one. A start would be to list some common compounds and how to synthesize them.
In fact, I used to keep a running document about how to synthesize around 80 of the elements, until I abandoned it. Think that would be useful?

plante1999 - 13-4-2013 at 10:42

I will take it, thank! but I still need a programmer. My first experimentation was on filemaker pro advanced, but I readily found out I was not good enough, and the software was not able to give me what I wanted.

maxpayne - 13-4-2013 at 11:02

Quote:

In fact, I used to keep a running document about how to synthesize around 80 of the elements, until I abandoned it. Think that would be useful?


Generally, it's a great idea.

If I understood correctly, plante1999 is talking about collaboration between users who would have installed this software. Then by actions of this users, database would grow and maybe someday become one of the great places to check and help you with chemistry work.

It is not hard to control, again with the collaboration, who is applying wrong and unconfirmed data, but this would require some kind of registration and set of rules.

Also, plante1999 is talking about desktop application (which is great in my opinion), but he do not specifically explains where the database should be stored. In my opinion, the best thing is to store database on each client and synchronize it with each other by connecting to the gathering point on some server (this even could be hidden somewhere on the net and very easy to manage, without ever compromising privacy) to collect IP's of the users for sync job.

To not make this post too long and boring for reading to someone, I will stop here although there are literally hundreds of ideas currently available in my head. All I want to say that idea is superb and it could work very well if it will be realized.


elementcollector1 - 13-4-2013 at 11:37

Alright, here it is. Keep in mind this hasn't been updated in a while, so some stuff might be outdated, silly, or just plain wrong.

Attachment: Getting the Elements (2).docx (92kB)
This file has been downloaded 866 times


plante1999 - 13-4-2013 at 13:04

Thanks.

I found this, which is interesting:

http://www.meta-synthesis.com/Products/chemthes.html

Hopefully we will be able to make something better than this!

Max truly understood my idea! I had the idea that data would be stored on the user computer, but when connected on the internet, a sync would happen.

I had the idea, that each users could be rated, for there publication and there modification in the database. More ranked people would generally mean more knowledgeable in chemistry, and as such, could prove that they won't mess everything, as such there modification in the database would be more important than lower rank users.

As for the registration, for sure one would need some. I don't know which data we want, but for sure we want an username and email.

Each member could manage there inventory, there "user post template"(much like website, but not website). There rank would NOT be based on the number, but on the quality.

The database should contain minerals, in these days, mineral are a very good precursor.

Each reaction could have 10ths of procedure, the poster ranking would affect the disposition of the procedures.

The reaction database could have a reproductability option. For example, if one try the semicarbazide process he could choose the third process affiched made by user XYZ. If everything work well, he could click on reproducible box button.


elementcollector1 - 13-4-2013 at 13:17

What about a setup of 2 drop-down or type-in bars, where you could type 2 compounds in and get a reaction?
Ex: (CO2) + (C) -> 2 CO (energy input in joules, exothermic/endothermic)
(W) + (C) -> WC (energy input in joules, exothermic/endothermic)

Lambda-Eyde - 13-4-2013 at 13:47

I think this is partly a good idea. However:

Quote: Originally posted by plante1999  

The third part is a database of chemical reaction which is also synchronized. each chemical equation have a page with explanation about the reaction.


I don't think this part is doable. There are several reasons:

The first is that this is a huge undertaking. There are millions of chemical reactions and a database would need several thousand of them indexed to be any use at all. Why would you search a database with only 20-30 reactions? Or even 200-300?

Secondly, the problem of reliable sources. How would you ensure that all the reactions actually do happen? This is IMO not a task for amateurs/hobbyists. Protip: obscure chemical "dictionaries" from the 1800s that some people on this forum often cite are not reliable sources. They are absolute rubbish.

My third objection is that databases such as these already exist, SciFinder and Reaxys are among the most popular. I don't see how any programming project done by amateurs can compete with these.


I do however think that the other functions are splendid ideas and I would definitely be interested in trying it out. Let's hope someone will pick up the torch. :)

plante1999 - 13-4-2013 at 14:23

The objective is not to be competitive. It is to be adapted, we want something free(working on donations) and designed for us, amateur.

At first the database will be small, but with each data adition to it, it will grow, and eventually be of very good use.

As for ensuring reaction all actually work, the poster ranking would help, but more importantly the reproductability by other member. If 10 people out of 11 confirm it work by there own experimentation, then we can assume it work. No?

Hopefully someone will pick-up the torch!

barley81 - 13-4-2013 at 18:22

I agree with Steve_hi. Microsoft Access would work fine. In fact, we're learning it in school. However, I don't currently have enough time to work on such a project.

Good luck!

Gearhead_Shem_Tov - 13-4-2013 at 20:37

Sounds to me like a wiki or perhaps a slashdot engine of some description might be a better point of departure. I'd lean toward the /. model, myself, in that reputation tracking is in-built, so the inevitable trolls and clueless cooks and kewls would be modded down. You wouldn't have to look at their nonsense (unless you wanted to look).

I don't know what sort of critical mass a /. system of distributed modding needs, though, since it does depend on semi-randomly-selected members being given mod points to use; since cranks and kooks would occasionally get to mod, you need a large enough pool of modders to ensure they get cancelled out.

-Bobby

violet sin - 14-4-2013 at 00:34

if something like this was started, of course it will be practically infantile in the beginning. but feeding it info from our community alone would be useful here, no? seems like many people follow in the footsteps of others (hopefully avoiding previous issues). and regardless of how well you could get the reactions part down, the inventory and trade/sale aspects are promising to say the least. a lot of us here have unique in's on diff substances or equipment. be it local production, larger cities or online businesses. I am fairly certain nearly any one a part of this forum would like to be able to make a few bucks to further their scientific goals by selling some available resources. or be able to find a trust worthy supplier that isn't trying to ask for your soul in return for a few grams or ml of ______. I think it is a great idea.

managing all the reactions that would be input sounds maddening. how many would we end up with that were just nike adds or gucci bags I wonder.. keeping pesky spammers out could be lame. good luck on the mission,

Finnnicus - 14-4-2013 at 01:01

OK, is this actually going to happen? Because one must decide on a language and the architecture ect.

plante1999 - 14-4-2013 at 05:39

Well, I guess it will be the programmer job to find a programming language that work, and that he like.

I don'T think we will have much adds, since it will be a software, and not a forum on the internet.

Glucose Oxidase - 14-4-2013 at 11:38

How about a group of programmers rather than one?
anyway my only objection is , do you have any idea how fast that database can grow ? you will have hundreds of gigabytes in days you cant store it on users machines:o

Anyway Plante please start a poll on who is in

Random - 14-4-2013 at 11:40

You mean like chemsink?

http://www.chemsink.com/


I could do it, like a mysql database of reactions for sciencemadness members coded in php, along with compound info...etc. But it would require time, which I don't have plenty nowadays. If I'll find some, I'll try to make something. Doesn't sound too complicated but still requires some work.

Text data usually doesn't take too much space in databases. Everything can be online.

[Edited on 14-4-2013 by Random]

[Edited on 14-4-2013 by Random]

plante1999 - 14-4-2013 at 12:34

I would still prefer a software that can sync.

It could be a team of programmer, but it is already enough hard to find one programmer, imagine a team!

Well, I have quite a lot of PDF about chemistry, 16Gb+ of them, so it can take place, but probably not 200Gb. Everyone with 100Gb of hard drive should have well enough place! I got the computer I use now 3 years ago, it had an 500Gb hard drive. From the first six month, up to now I had about 350Gb of free space on it. I do not play games taught.

plante1999 - 16-4-2013 at 08:54

Still nobody? Hmm if the moterator permit me, I will bump this thread time to time.


plante1999 - 22-4-2013 at 08:40

If there is anybody interested, he can send me a U2U.

Hopefully someone will take this in charge!

woelen - 22-4-2013 at 11:46

The problem with such a project is the large amount of effort required to obtain even only a mediocre result. I myself am a software engineer and over the years I have built many software systems, sometimes alone, sometimes in a team-effort. Building good and robust software can be a daunting task. Building the 'all goes right' (a.k.a. the 'good weather scenario') is not that difficult, but making things robust (handling all kinds of erroneous input, non-convergence of iterative procedures, dealing with non-ideal networks, which can have lost connections, loss of packets and so on and so on) takes 80% of the effort and is the most tedious part of the job. I have seen many many promising projects dying quietly and being forgotten in a few months or years.

If you really want a nice product, be prepared to spend months on it!

I write this post, not to put you back, but to manage your expectations. I hope it will not disappoint you.

[Edited on 22-4-13 by woelen]

Finnnicus - 22-4-2013 at 17:49

Then it data could be accesed by other progams. Oh, I wish somebody had the skill and determination to make this!

Random - 30-4-2013 at 05:42

Quote: Originally posted by woelen  
The problem with such a project is the large amount of effort required to obtain even only a mediocre result. I myself am a software engineer and over the years I have built many software systems, sometimes alone, sometimes in a team-effort. Building good and robust software can be a daunting task. Building the 'all goes right' (a.k.a. the 'good weather scenario') is not that difficult, but making things robust (handling all kinds of erroneous input, non-convergence of iterative procedures, dealing with non-ideal networks, which can have lost connections, loss of packets and so on and so on) takes 80% of the effort and is the most tedious part of the job. I have seen many many promising projects dying quietly and being forgotten in a few months or years.

If you really want a nice product, be prepared to spend months on it!

I write this post, not to put you back, but to manage your expectations. I hope it will not disappoint you.

[Edited on 22-4-13 by woelen]


I agree, dealing with these little problems actually takes more time than actual work on the application project.



But if plante said he would like to share PDFs, can't we just open a sciencemadness torrent tracker and seed them? There is a php&mysql based TBDev torrent site interface which works on private trackers, there is also ratio of upload and download which encourages people to seed.

[Edited on 30-4-2013 by Random]

plante1999 - 15-5-2013 at 14:15

Bump.


Bezaleel - 16-5-2013 at 02:32

OKey, so I read through this thread, and, plante, if you want to start this, I think you will need to make some decisions.

1. define what should be in the first release and what not
2. select software and languages you want to use - liaise with potential programmers
3. limit yourself in your initial ambitions

My 2 cents: I would not opt for MS Access as a database. I'm working with it on my job, and prefer to avoid it as it grows inacceptably slow on huge tables. In addition, it had all kinds of quirks an oddities we'd rather do without. Moreover, Access has many versions that are not completely compatible with one another. MySQL was suggested, which would be my suggestion too.

You speak of synchronisation, implying that users would have a local database that would need synchronising with the sciencemadness server. Is this what you had in mind?

There's one suggestion I'd like to highlight:
Quote: Originally posted by Gearhead_Shem_Tov  
Sounds to me like a wiki or perhaps a slashdot engine of some description might be a better point of departure. I'd lean toward the /. model, myself, in that reputation tracking is in-built, so the inevitable trolls and clueless cooks and kewls would be modded down. You wouldn't have to look at their nonsense (unless you wanted to look).

I don't know what sort of critical mass a /. system of distributed modding needs, though, since it does depend on semi-randomly-selected members being given mod points to use; since cranks and kooks would occasionally get to mod, you need a large enough pool of modders to ensure they get cancelled out.

-Bobby

I'm not familiar with this /., but it sounds as something we'd gladly use.

----------

If I were to set up something like this, I'd start very simply by creating a compound table with basic entries like CAS number (primary key), formula, reference to reactions table, user who contributed this, date contributed.
Next I'd add a reactions table that contains a primary key (sequence number), the reaction in formulae, and a few fields of text type that could contain descriptions in words of reaction conditions, yield, side reactions, personal experience performing it, etc. Finally I'd consider an attachments table for photographs, drawings, and the like.

That's the database part.

The work is concentrated in making a user interface to this DB (database). Here you will need the expertise of those that are familiar with multiple users accessing the DB through a local interface. There should be some intelligence here to prevent spammers, too many entries of one user, repeated entries, rights management (you shouldn't be allowed to change/delete ohter contributers' entries, unless you're a superuser) etc.

I see a great advantage in something like this on the forum, as it is specifically dedicated to the work we can do in our home labs und conditions that are feasible there. There's only a very limited number of compounds and syntheses that mad scientists undertake. My estimate is that our discussions don't mention over 10,000 different compounds.

plante1999 - 16-5-2013 at 04:11

I would answer all the 3 questions if I had a programmer to talk with, the project goes with the programmer and vice versa.

We simply need someone taking the project in charge.

About the reactions table, it could be interesting to introduce a little background, for example, my preparation of mercury from cinnabar without solutions and distillation. I would call myself the "inventor of the procedure".

APO - 23-5-2013 at 02:52

I have a suspicion that Java may work well, or Actionscript.

ElizabethGreene - 3-6-2013 at 13:39

Brainstorming questions: What information would you want on the label?
Chemical formula, Name, Source, Melting/Boiling point, Purity, Flash Point, Cas number, and Fire diamond?

Follow-on question: What would you like in the database

More information on synthesis? MSDS? Pictures? Cost?

Thanks in advance,

Ellie

plante1999 - 11-7-2013 at 19:53

bump.

I still think it is a great idea, it should be sticked, so more programmer could see it.

kch - 4-8-2013 at 19:34

I have a good knowledge of programming, and I do have experience with something of this nature. I don't think I can do bulk of the programming because of time, but I can definitely create a basic framework that would allow others to program as well

plante1999 - 4-8-2013 at 19:38

Would be interesting, but I have a conflict of interest due the cook related thread.

bfesser - 5-8-2013 at 06:59

Quote: Originally posted by plante1999  
I have a conflict of interest due the cook related thread.
<strong>plante1999</strong>, drop it.

plante1999 - 5-8-2013 at 18:53

Dropped a while back, but try to be polite...

plante1999 - 8-10-2013 at 08:30

Here is a resume of what have been said, if I missed something, please say so I can update.

(bump)

Attachment: The database project.docx (14kB)
This file has been downloaded 417 times


bfesser - 8-10-2013 at 08:40

Why couldn't you just post this instead of making an attachment?
Quote:
The database project
<hr width="80%" />
Objective :
Make a database for chemistry related work, reactions or compound with society like aspect with automated functions.

Ideas :
  • A database for chemical reactions and compounds which is made by the users
  • A mean to make accounts, of which rank is atributed by the users of the database
  • The database is a software which is synchronised by some agency.
  • The database is funded by the users, if they want to donate
  • Each input is ranked by the users, lower rated imput are down in some sort of list, and eventually deleted or archived
  • The rank of an user is given by the rank of his post, a comite of admin will choose the moderators, but it could be automated too.
  • Each users could have there own page much like a website or blog, to put content. A way to send message between users would be great too.
  • Lastly, if possible, a chatroom might be nice.
  • Addon, like printabe label for the chems would be interesting, altough it is not necessery.
  • If things go well, the programmer could take profit from the donations if people are ok with it.

    Original release :
    In the original release, only the account part, and the database could be done, and eventually updated on further release.

  • plante1999 - 8-10-2013 at 08:46

    Sorry, I was just taking notes in word while looking through the thread, then I uploaded the edited document.

    Mailinmypocket - 8-10-2013 at 10:10

    A good inventory program is Chemshelf. It is freeware, the only problem is I am having trouble finding the download for it online (still looking though)

    It only does inventory, print labels with barcodes and has links to MSDS pages. It does not have the other features you are looking for though like a reaction database, chemical information pages and social networking etc etc. That would be more of a mix between the Merck Index software package with an integrated Sciencemadness. I imagine it could be a headache to make it perfect :S

    Anyways, this is Chemshelf, for those interested. If I can find the installer I will post a link or upload it here.


    bfesser - 8-10-2013 at 10:57

    <strong><a href="viewthread.php?tid=11235#pid146439">Version 1.1.0.0</a></strong>

    Mailinmypocket - 8-10-2013 at 11:01

    Well I'll be damned... Thanks bfesser!

    bfesser - 8-10-2013 at 11:11

    No problem. Let me know if it works&mdash;I'm on Linux.

    bahamuth - 8-10-2013 at 11:54

    It appears to work for me, on win 7.

    Great find, perhaps now I'll bother to catalog my stuff...

    plante1999 - 9-10-2013 at 08:24

    I may have found someone to do the programing IRL, I will keep you all updated.

    Shortly (in a few week) I should have the first demo.

    bfesser - 9-10-2013 at 08:47

    <strong>plante1999</strong>, I mean no offense by this, but your idea seems to be overly ambitious yet poorly defined. I doubt that you'll find a programmer willing to deal with such a project. Regardless, I wish you luck.

    plante1999 - 9-10-2013 at 08:54

    I take no offence, and be sure that even if people find this overly ambitious and poorly defined, they will all benefit from the effors I put into this project.

    watson.fawkes - 9-10-2013 at 12:37

    Quote: Originally posted by plante1999  
    benefit from the effors I put into this project.
    I've remained silent this whole time, since there was no point in putting down a stillborn foal. I take exception both to words "effort" and "project" in referring to this. What you've proposed is at the bar-napkin stage of maturity as a design. Doing even reasonable conceptual design, if it were budgeted as a commercial product, would be already into the five figures. That's actual effort. Doing the software development for something that would pass as an initial release would have a budget of seven or eight figures. That's an actual project.

    Please don't bump this again. You'll just continue to embarrass yourself.

    plante1999 - 9-10-2013 at 15:13

    I won't be sure, but I will do my best to make it happen, with or without members help.