Aquaculture software

NicoleC

New member
The job I have that actually pays is being a software developer. I was considering writing a program to track each batch of larvae, probably in an Access Runtime (doesn't require the Access software) or some other simple tool that is fast to program in. It should be fairly easy and quick to get the basic features in.

My purpose in writing it is to keep track of all the daily items for each batch, so I could then produce reports that compare each batch to help point out best practices to increasing hatch rates, survival rates, etc. Ideally, it should take less time than paper notes by eliminating redundant data entry; it should certainly increase the speed of referring to the notes.

As long as I am writing it... would other breeders be interested in such a program? If not, is it because you are already using another tool, and what? If so, what items would you like to see tracked, what features should the tool have, and what kind of reports would you like to produce?

A few necessities are below. A "<"or "^" symbol means one records to many, for example one breeding pair will have multiple spawns.

Species
^
Broodstock < Daily notecards (see notes below)
^
Spawns/Hatches < disposition of babies
^
Daily notecards (Will actually be timestamped so you can enter as many per day as desired). Daily notecards should include water parameters, feeding info, behavior, lighting, freeform notes, maintenance items, etc.
^
Photos

-------------------
Other proposed features:
*Quick Search and Advanced Search
*Side-by-side batch and broodstock comparison
*Customizable reports
*Calendar view of spawning and hatching events
*Customizable drop-down lists, but with default lists included so you don't have to set it up from scratch
 
That sounds cool. I wonder if you could program the clowns fill it out. Just kidding.

How about something that relates to rotifers and feeding regiment too.

When you fill out the info will you be entering a series of questions like Microsoft Access stuff?
 
Ah, no. The built in MS Access interface is only the barest beginning of what you can do with the software using Visual Basic for custom programming instead of default behavior. Few advanced users use 1% of it; few developers use more than 25%. It truly excels as a front end to a server database system like SQL Server or Oracle, but we won't be going there. :) As a front end tool, you don't have to define what a checkbox is and other mudania.

No extra software or hardware is required, and if released as a "runtime" version you don't even need the MS Access software. Won't work on Mac's, though.

I thought about culturing info, but to me it would be miserably tedious typing in notes for each rotifer culture. Or did you have something else in mind?
 
Nicole,

You are a genius. I would kill to have something like this. Both Vikki and I check back in the original posts to work out number of days for hatch etc..

Let me know if there is anything that I can help with.

Steve
 
Nicole,

Just thought of some other option that could get around the MAC issues. Perhaps a multi user db design that could be hosted with a web interface. As a future of course.;)

Steve
 
aquaculture software

aquaculture software

Nicole,

I am searched for software similar to what you are contemplating designing, to no avail. It seems like it would definitely save a lot of time in the long run and assist in tracking timing of spawns and gearing up for the next 'round'.
Not much of a computer programer, but I do work with some folks who are very database minded and would help if asked, just let me know if i can help at all.

Take care.

Jamison
 
I toyed with the web idea... for about 32 seconds.

Web software is what I am doing right now, but any web platform product requires a hosting provider, storage space and considerable maintenance by someone. (Three guesses whole that would end up being, with no time for her own fish?) Response time is slower, the programming cycle is longer and there would be fewer fearures. Plus, it raises privacy issues. All of which cost $$$, which means a subscription fee of some sort.

I'm not really concerned about the miniscule Mac market share. (Well, other than Frank, of course!) I'd translate it to Spanish before Macintosh; neither is likely to happen -- no comprende!
 
That would be cool! I use notebooks for all my records, but there is quite a bit of redundant data entry, and that sometimes makes me get sloppy...I have enough lab notebooks to keep up with already :rolleyes:

That calendar view idea under the proposed features would be great for keeping track of each batch of babies, and for tracking spawn/hatch dates and other notes for multiple pairs it would certainly be useful. Maybe even long-term calendars for acquisition dates and 1st spawn dates, etc?

A report for each nest would be interesting as well, with dates and # of days each food type was used, growth rates, time to metamorphosis, etc.

This also sounds like a great way to share information between breeders since all the information would be organized and it would be a little more standardized.

Great idea, I would certainly be interested. I don't know anything about programming, but that does sound like a lot of work!
 
I thought of another must-have feature -- fish need to be able to be re-paired (in case of death, etc), support broodstock groups (harems), you must be able to assign only a specific two fish from a group to a spawn, and you must be able to attach larval batch info to a fish in case s/he is graduated to broodstock.

Okay, now THAT made more work. Sounds like many features but it's really the same table structure. (A structure which suddenly makes my head hurt, but I've seen worse.)

The only tough feature so far is the calendaring. I don't think I've ever done a calendar in Access. It might need to be a report formatted as a calendar instead of a real-time object you can use for data entry.
 
:wildone:

I stick my tounge out at you software developers :D :D :D

see I can do that now as I am at work and while my c# app is compiling i can see my reflection :D

Im actually more interested in the web idea, and have considered it alot, I to have the knowledge I also have a solution to the hosting issue, and for a privacy issue well ive kinda got that covered also. im missing a few things, ive even got some extra time (no fish breeding clears up a LOT of time in ones schedule)

the way I had it planned was that a re-paring was a "new Pair" with the note pointing to the origional fish for the collection info record.

building the calendar is not the biggest of concerns either :D (if you need access help lmk)
 
(Non geeks please cover your eyes to prevent blindness.)

Tinkering with DB structure, I think a recursive design will work best. More like a genealogy program. You have a livestock table, and that livestock might be a spawn, a pair/group, or a specific fish. Each record specifies the type as a foreign key.

Then you have a Link table that specifies the parentID, childID and relationship type, and whether that relationshp is active.

So, a particular fish can be a member of a spawn, a member of a pair at adulthood, and detached from a pair due to death or attached to a different pair due to the other fish's death. And all of the above at once. It also solves the problem of managing a trio of cardinals but wanting to keep track of which male a particular spawn belongs to.

It's overkill and the vast majority of situations won't require it. But if it's not the structure to begin with, you'll never shoehorn it back in.

You C# programmers and your semi-colons. I like capital letters; I'll stick with VB.NET. I thought you did credit card terminals?

The Access stuff will come back; it's just been a while.
 
Nicole,

I too have started (and subsequently stopped) working on a simular app. My DBA at work took a keen interest in my tank (before the breeding) and she started developing a simple scheduling and parameter tracking DB for tank maintenance. We had a nice report that gave you a ToDo list, and warnings that would let you know if you are past do for a partial water change and what not.

THEN....my clowns started breeding, and we started trying to add many of the features you listed above...it just got too complex for a "wouldn't it be cool" app. Now I have 3 server upgrades (SQL, UNIX, and Win2003) all scheduled to launch Feb. 1 in unison...with no downtime of course :) So we just kinda ditched the idea.

I know what you mean about the web app thing too, but how about making it where each user could zip up their data and send it to you, then you could pull it in to one master table, and use Crystal or something to give "best practices" by species or something.

One thing I've always wanted was a way to track success rates! How about a value for # lost on each day, and then another for # through meta, then you could add it all up and know pretty close to the actual number hatched, and easily calculate the success rate. To be able to look at the differences between an 80% and a 20% would be invaluable.

Have you looked at the "questionaire" type DB they have started on the Anenome's & Clownfish forum? Some pretty good ideas in there too.

Geez I'm long winded tonight, I'll shut up now.

Jason
 
< geek talk>
xcept
by seperating it by fish instead of temp family unit

you allow more fluid temporary pairing by building the pair and attaching it to time (calendar) at the same time and by using a lookup on the source you can allow for things like (my mom is my dad & husband :rolleyes: and ive got 5,000,000 children) and (inland aquatics[no advert intended but buy from them they are cool :D ])

and by seperating by tanks you allow for things like (well a 10g worked but a 50g worked SOO much better) also tied to time

vb.net works for me, I can do that too :D

though asp wud be more fun :D

I work in whatever language suits the mood;
and i do whatever the bosses tell me to :D though business apps generally are what pays :D

< /geek talk>
 
<a href=showthread.php?s=&postid=6480324#post6480324 target=_blank>Originally posted</a> by NicoleC
(Non geeks please cover your eyes to prevent blindness.)


:cool: Ok, done!

<a href=showthread.php?s=&postid=6480463#post6480463 target=_blank>Originally posted</a> by jnowell

One thing I've always wanted was a way to track success rates! How about a value for # lost on each day, and then another for # through meta, then you could add it all up and know pretty close to the actual number hatched, and easily calculate the success rate. To be able to look at the differences between an 80% and a 20% would be invaluable.


I think this would be very good when the numbers were available, but I know that I can't/don't always make frequent counts. Maybe I would do more if I knew that the information would be easy to organize though.

Has anyone taken a look at Frank Hoff's book on aquaculture of clownfish (well, I know many have, but with respect to this discussion)? He has some interesting data entry sheets and other ways of keeping track of information. Part of what impressed me here was that someone actually counted and checked all of these things. Maybe this would be a good place to check for ideas on information and organization that you would want to include?
 

xcept
by seperating it by fish instead of temp family unit

you allow more fluid temporary pairing by building the pair and attaching it to time (calendar) at the same time and by using a lookup on the source you can allow for things like (my mom is my dad & husband :rolleyes: and ive got 5,000,000 children) and (inland aquatics[no advert intended but buy from them they are cool :D ])

Oh, sure. attachedDate and detachedDate (or similar) will build a relationship history for each livestock entity. Say, Fred fish is the son of Ricky & Lucy from batch #14, but now Fred is paired with Ethel (who was from batch #19) and they just had batch #32. Bingo, fish history; saved in a few rows in a Link table.

Meanwhile, exactly the same features/history are available for pairs/group and batches of larvae.

and by seperating by tanks you allow for things like (well a 10g worked but a 50g worked SOO much better) also tied to time

Yes, I was thinking to allow the users to set up a list of tanks -- either they could do just two records that say "10g, 50% full" and "20g, 50% full" (or whatever), or they could name and set up specific tanks. (Tank #1, #2, #3...)

Any livestock entity could be assigned to a tank, but is there any call for creating a tank history? I guess larvae could get moved to growout tanks... just not sure if this is worth tracking. I was thinking more along the lines of just keeping track of the size/type of tank as a static record.

Unless you were thinking of scheduling and forecasting tank space? Sounds like a feature for version 2.0, and honestly not something I suspect a small size breeder would need.

vb.net works for me, I can do that too :D

though asp wud be more fun :D

.aspx, of course!
 
Nicole,
a simple scheduling and parameter tracking DB for tank maintenance. We had a nice report that gave you a ToDo list, and warnings that would let you know if you are past do for a partial water change and what not.

Different animal, I think. There are maintenance software packages available.


I know what you mean about the web app thing too, but how about making it where each user could zip up their data and send it to you, then you could pull it in to one master table, and use Crystal or something to give "best practices" by species or something.

Well, YOU are welcome to tackle an ongoing project like that. ;)

One thing I've always wanted was a way to track success rates! How about a value for # lost on each day, and then another for # through meta, then you could add it all up and know pretty close to the actual number hatched, and easily calculate the success rate. To be able to look at the differences between an 80% and a 20% would be invaluable.
You count your fish every day? Yikes! Speaking of going blind...
 
Unless you were thinking of scheduling and forecasting tank space? Sounds like a feature for version 2.0, and honestly not something I suspect a small size breeder would need. maybe V3 :D

i kinda see it as a time line with things attached

tanks
breeding fish
growing fish

and with each a number of values attached to that,(from filters, to fish) that way larva and growout fish dont need specific numbers but breeding fish and tanks do, you could move fish from growing to breeding and move fish from tank to tank (but lets not turn a fish into a tank :D ) also solves problems with fish with potentially multiple mothers or fathers, allowing one to say these females and this male were in the tank, and these babbies were the result. also for those that combine fish at certain points it allows one to say these babbies came from either tank X with fish 1 and 4 or tank Y with fish 2 and 7, but when you pull a fish out of that to mate with another fish, or because .... whatever reason you like, then you put it into a fish field.

as people like me combined batches fairly often to reduce space required, something that was a major premium, something I flat out ran out of.

.aspx, of course! or perl, php, c--, ..... one of these days im going to learn something about compoopters :D
 
Folks,

"but how about making it where each user could zip up their data and send it to you, then you could pull it in to one master table, and use Crystal or something to give "best practices" by species or something"

Just as a suggestion, if you cater for an location id in the records in the beginning then you allow individual users to import another person (locationid) data them selves and then it does not have to go to a central place.

Just a thought.

Steve
 
Are you planning on keeping the runtime and the datastore seperate? If you do go with a seperate .mdb at the begining it would make it cleaner and more scalable for the later creation of web front end if you, or someone else, goes that route. (Say I wanted to use your runtime for data entry but wanted to port the mdb to sql for efficiancy and create web reporting for sharing data with others... for instance!) It would also make it more scaleable (and I could more easily use Windows CE devices with the web front end).

That being said, these questions are coming from someone with out of date vba/vb/sql skills but who knows didly about vb.net so... perhaps the architecture has changed in such a way as to make these questions pointless. =)

I currently use a tank identifier with room*section*row*tanknumber like "aba8" - room a, section b, row a, tank 8.

I use this mostly for 'to dos' when I'm out of town and the pet sitter is taking care of the tanks. I don't track which fish are in which tank coming from which parents etc... as I mix batches and grade by size. I 'should' be tracking a minimum of clutch size versus babies hatched, when they were laid and hatched and morphed, etc... but I guess I'm just too lazy to do that!
 
Back
Top