School Project Help

scott7975

New Member
I am a computer science student and I will be doing a project for one of my classes. The primary project is for a windows application. However, I also plan to port this to an android application. I may even try to port it to iOS down the road. Since I have to come up with my own project, I thought I might do one for tank maintenance. The problem is that I am new to the hobby. I know what I would generally want in an application, but I want to go deeper then that.

What I am asking is if you could list some of the things you would want to see in the application. For example:

What type of data would you like to be able to input?
Would you want the application to perform any calculations for you, and if so what would you want it to calculate?
What information would you want the application to display?
What reminders would you want it to keep you informed of? ie.. waterchanges, testing, etc...
Would you want the program to be deep enough to keep track of your expenses and live stock?
Anything else you would want to see that I have not thought of?

Please keep in mind these things... this project wont be ready for a month or two. It wont have pretty graphics that you might find in a commercial product. However, it will have a very clean and functional UI. It will be able to store anything you guys tell me you want it to. Also, it will be able to calculate and display anything you guys tell me you want it to.

I appreciate any and all the help you can provide. For anyone that does feel like helping, I will also need help testing it. I will get you a copy of the application for Windows and or Android. If you are willing to, I would appreciate you using the application and providing me feedback. If you like it then please tell me and I will also make sure you get the final versions that you can use all you want to. There will be no viruses or anything like that. The application will also be relatively small and simple. I will make sure it wont crash your systems or anything like that before I distribute it for testing.

Again, this wont be for another month or two.


Thank you all.
 

DSP

Member
Awesome man! Good luck with it!
I think it would be great if you could have it calculate the amount of calcium, magnesium and alkalinity that needs to be added to raise and lower the parameters, That's one thing all the other apps that Iv tried are missing. Also information about coral pest and how to get rid of them would be great imo.

Sent from my SAMSUNG-SGH-I337 using Tapatalk
 

kyle4201

Active Member
WOW!! There are so many people on here more qualified than me to help you (most of them have taught me what I know now) and there are some basic things ill mention just to start off.

1, Reminders,, most reefers dont need reminders on an app, I bought 4 temp gauges with 5 reminders on each and I HATE THEM!!! we know when we changed the water and when we dosed or fed ect. Not a bad thing to have as long as there is a setting to turn off the reminders if you want (im sure some people like them or they wouldn't make them)

2, calculations, that is a HUGE subject. you would need every trace element calculated parts per million per gallons of water and the dosage plus or minus for the perams the individual would prefer. (im not trying to deter you,, I would love it, but wow,, )

3, tracking expenses,, every 1 knows how much they spend,, and NO ! wants to be reminded, lollol (the bank statements we hide from our wives are enough, :)

4, I think some kind of graph we could plug in our readings into would be awesome,, like to keep track of everything from temp and ammonia to traits and trites,, mag and calcium and ph and salinity,, like a line graph with the calendar incorporated.

5, I would LOVE to have a feture to keep track of salt consumption.

5a, test your water and its spot on salinity,, test it 3 days later and plug that # in, 3 days later, plug that number in. so you can see how much salt you are loosing and to make sure its a flat constant number... I had a seal go bad on my UV sterilizer and didnt know, salinity went low and low and low,, salt creep behind my fuge was insane.

5b, A chart to keep track of gallons of water per amount of salt... I buy a box of salt that makes 200g,, but I think Im only getting 160 out of it. Would be nice to keep track with out penciling it down.


Just trying to help, will be following this post closely. Here is the part where the experts chime in. :)
 

scott7975

New Member
Awesome man! Good luck with it!
I think it would be great if you could have it calculate the amount of calcium, magnesium and alkalinity that needs to be added to raise and lower the parameters, That's one thing all the other apps that Iv tried are missing. Also information about coral pest and how to get rid of them would be great imo.

Sent from my SAMSUNG-SGH-I337 using Tapatalk

That may be difficult. I don't know the formulas for that. If I knew the formula, it would be a piece of cake. I would imagine that no formula is completely precise for something like that though.

Kyle4201... good feedback. I hope to hear more from more people. If there is no interest, I will just build an app with the info I have and it will be relatively simple. Otherwise, I will game plan a different application altogether.
 

foxsavage

Member
Reminders for things that only happen a couple times a year like bulb changes and CA reactor media change.
A graph with all the maintenance tasks so they can be checked off as they are done.
A power consumption calculator.
A calendar for QT of fish and corals.
A function that can keep track of tank consumption of salt, food, gfo, carbon, ect.
A function that can keep track of what fish and corals are in the tank and the date they were added to the system.
A graph for inputting test numbers that would show them visually in a linear fashion.

I believe this type of calculator would be useful only for new tanks but BRS has some calculators on their site you could use to get an idea of how they should be done, http://www.bulkreefsupply.com/reef-calculator. A calculator that can show a weekly amount of kalk to add to a reactor based on water consumption would be more useful for maintenance purposes.
 

DaveK

Well-Known Member
Let me play devil's advocate here and let me ask this question.

What is your application going to do that can't be done with a spreadsheet application?

In other words, other than as a learning experience for yourself, what is the application going to address that hasn't been addressed before?

I would also suggest that it's better to have a good, basic, simple application that works. Don't try to do everything at once. Pick some common features you need, and maybe add one or two features that you feel do not have a decent application for them. Also, look at existing applications. Pay special attention to the user interface. Personally, I find the user interface on most applications to be in the fair to poor range.
 

scott7975

New Member
Let me play devil's advocate here and let me ask this question.

What is your application going to do that can't be done with a spreadsheet application?

In other words, other than as a learning experience for yourself, what is the application going to address that hasn't been addressed before?

I would also suggest that it's better to have a good, basic, simple application that works. Don't try to do everything at once. Pick some common features you need, and maybe add one or two features that you feel do not have a decent application for them. Also, look at existing applications. Pay special attention to the user interface. Personally, I find the user interface on most applications to be in the fair to poor range.

I will try to answer these questions.

1. Spreadsheets are nice but not everyone wants to set up a spreadsheet. I mean you can generally do anything with a spreadsheet, so to not write an app based on that... there wouldn't be many non-game apps. That and the plan is to port it to Android as well. I have 3 programming classes this semester. Android is far more convenient and portable then loading up a spreadsheet =)

2. This is basically what it is. A learning experience for me and a project for a grade. I do not intend to market this project. If I were to do so, it would be for free. I have no intention of trying to make this to sell. Saying that... it doesn't need to be anything new or hasn't been addressed before. It just needs a clear purpose and to function accordingly.

I do plan to make it pretty basic. I like the advice from people so far. If something seems too cumbersome then it wont be added. As for the UI... could you give me some examples. I mean, I am not a graphics person so my UI will be fairly simple. It will be clean, easy to use, easy to read, and easy to input data. That is my goal. It may not look commercially pretty with fancy icons on toolbars and such.

Too add to this... my biggest problem with doing calculators is knowing the actual formula to make the conversions. Doing the actual calculator is a piece of cake. Knowing the formula without experience is not. I plan to check around and see if I can find them. The reality is a calculator is just a few lines of code, so its not overly difficult to implement. I am completely new to this hobby and it is in part why I chose to do an app like this. I could make 1000 different cheesy apps, but I thought this type of app would be beneficial to me and others as well. Anything I do now can always be expanded on later and forever.

Thank you for your post. I appreciate everyone's feedback.
 

Mr.Reeefer

Member
Hi there Scott,

In my opinion I would make an app for the beginners of reefing, most of the comments you get on here are from very experienced and knowledgeable reefers that would have you create something quite complex, as on here we dive into detail with just about everything.

in keeping it basic And something that we can all still use:

* if I was at my LFS I think it would be great that I could open your app and quickly find the fish or coral I was going to buy and it give me a description about it, without me having to google it, so that way it can avoid a spontaneous buy that will be a waste of money as they are too hard to care for and will probably die, or maybe my system isn't able to sustain this species.

* For the beginners maybe a troubleshooting part. What do I do if my nitrates are high? What do I do if my phosphates are high? What do I do if calcium is low? What should my ammonia be? What should my nitrates be? What causes high nitrates? What causes high ammonia? What causes high nitrite? Etc etc.

* Maybe some form of fish compatibility chart, or maybe you could integrate that into a function, where the user can enter their current stock (fish and maybe corals) and then I could enter a potential new fish, and the program would alert for good or bad compatibility, if not a simple chart would suffice.

* A aquascape section, where it gives people different examples and idea of aquascaping and possible techniques that could be used to obtain the look the user desires

* A hitchhiker ID section, for people to identify hitchhikers that come with LR, maybe you could show the good and bad, and maybe provide some ideas on how to "trap" the bad

* if it could be done I think a "find your local LFS" function would be great, so wherever people are they can locate a local LFS

* A maintenance section, where people can find out about what they need to do to keep there tank healthy, water changes, filtration changes and equipment maintenance.

Algae ID, so people can ID their algae and the app can tell the user what has caused the issue and how to solve the problem.

I'll stop there, the list could go on and on, I hope some of this is useful for you.

Regards
 

scott7975

New Member
Hi there Scott,

In my opinion I would make an app for the beginners of reefing, most of the comments you get on here are from very experienced and knowledgeable reefers that would have you create something quite complex, as on here we dive into detail with just about everything.

in keeping it basic And something that we can all still use:

* if I was at my LFS I think it would be great that I could open your app and quickly find the fish or coral I was going to buy and it give me a description about it, without me having to google it, so that way it can avoid a spontaneous buy that will be a waste of money as they are too hard to care for and will probably die, or maybe my system isn't able to sustain this species.

* For the beginners maybe a troubleshooting part. What do I do if my nitrates are high? What do I do if my phosphates are high? What do I do if calcium is low? What should my ammonia be? What should my nitrates be? What causes high nitrates? What causes high ammonia? What causes high nitrite? Etc etc.

* Maybe some form of fish compatibility chart, or maybe you could integrate that into a function, where the user can enter their current stock (fish and maybe corals) and then I could enter a potential new fish, and the program would alert for good or bad compatibility, if not a simple chart would suffice.

* A aquascape section, where it gives people different examples and idea of aquascaping and possible techniques that could be used to obtain the look the user desires

* A hitchhiker ID section, for people to identify hitchhikers that come with LR, maybe you could show the good and bad, and maybe provide some ideas on how to "trap" the bad

* if it could be done I think a "find your local LFS" function would be great, so wherever people are they can locate a local LFS

* A maintenance section, where people can find out about what they need to do to keep there tank healthy, water changes, filtration changes and equipment maintenance.

Algae ID, so people can ID their algae and the app can tell the user what has caused the issue and how to solve the problem.

I'll stop there, the list could go on and on, I hope some of this is useful for you.

Regards


Some good ideas there Mr.Reefer. Thank you very much for your feedback. Some of that would be outside of my current skill level... like finding a local fish store, but others are great ideas that I may implement ...like compatibility chart with functions to plug in new fish to see if its compatible with what you have already.
 

DaveK

Well-Known Member
...
Too add to this... my biggest problem with doing calculators is knowing the actual formula to make the conversions. Doing the actual calculator is a piece of cake. Knowing the formula without experience is not. I plan to check around and see if I can find them. The reality is a calculator is just a few lines of code, so its not overly difficult to implement. I am completely new to this hobby and it is in part why I chose to do an app like this. I could make 1000 different cheesy apps, but I thought this type of app would be beneficial to me and others as well. Anything I do now can always be expanded on later and forever.
...

Ah! You have touched upon a major problem that has been in programming forever. Code being written without any understanding of what is trying to be done. Yes, knowledge of the formulas and how they apply are critical. Your lucky in a way, because most of the formulas that reef keepers would be interested in are closer to a hard science. Contrast that with an accounting application where there can be several way to calculate depreciation.
 

DaveK

Well-Known Member
Hi there Scott,

In my opinion I would make an app for the beginners of reefing, most of the comments you get on here are from very experienced and knowledgeable reefers that would have you create something quite complex, as on here we dive into detail with just about everything.

in keeping it basic And something that we can all still use:

* if I was at my LFS I think it would be great that I could open your app and quickly find the fish or coral I was going to buy and it give me a description about it, without me having to google it, so that way it can avoid a spontaneous buy that will be a waste of money as they are too hard to care for and will probably die, or maybe my system isn't able to sustain this species.

* For the beginners maybe a troubleshooting part. What do I do if my nitrates are high? What do I do if my phosphates are high? What do I do if calcium is low? What should my ammonia be? What should my nitrates be? What causes high nitrates? What causes high ammonia? What causes high nitrite? Etc etc.

* Maybe some form of fish compatibility chart, or maybe you could integrate that into a function, where the user can enter their current stock (fish and maybe corals) and then I could enter a potential new fish, and the program would alert for good or bad compatibility, if not a simple chart would suffice.

* A aquascape section, where it gives people different examples and idea of aquascaping and possible techniques that could be used to obtain the look the user desires

* A hitchhiker ID section, for people to identify hitchhikers that come with LR, maybe you could show the good and bad, and maybe provide some ideas on how to "trap" the bad

* if it could be done I think a "find your local LFS" function would be great, so wherever people are they can locate a local LFS

* A maintenance section, where people can find out about what they need to do to keep there tank healthy, water changes, filtration changes and equipment maintenance.

Algae ID, so people can ID their algae and the app can tell the user what has caused the issue and how to solve the problem.

I'll stop there, the list could go on and on, I hope some of this is useful for you.

Regards

Some good ideas there Mr.Reefer. Thank you very much for your feedback. Some of that would be outside of my current skill level... like finding a local fish store, but others are great ideas that I may implement ...like compatibility chart with functions to plug in new fish to see if its compatible with what you have already.

I've got to disagree here. While the ideas suggested would be nice there are several problems with the implementation with most of them.

Almost all the ideas would require access to a "database" of some sort. You'd need to implement that one way or another. You'd have to get that data from some place, and it's got to be stored some place. Make sure the source of you information is public domain or otherwise available to use in any application. Also, you'd spend a lot of time just getting the database access working for some of the ideas.

Areas such as troubleshooting, livestock compatibility, and maintenance are very subjective. If you doubt me, look at some of the responses people get to questions asked in these areas. These are very hard things to pin down in a computer program. Just one example, look at this recent thread - http://www.reefsanctuary.com/forums...iscussion/90007-corals-suddenly-stressed.html Plenty of possible answers.

Just my two cents.
 

scott7975

New Member
I've got to disagree here. While the ideas suggested would be nice there are several problems with the implementation with most of them.

Almost all the ideas would require access to a "database" of some sort. You'd need to implement that one way or another. You'd have to get that data from some place, and it's got to be stored some place. Make sure the source of you information is public domain or otherwise available to use in any application. Also, you'd spend a lot of time just getting the database access working for some of the ideas.

Areas such as troubleshooting, livestock compatibility, and maintenance are very subjective. If you doubt me, look at some of the responses people get to questions asked in these areas. These are very hard things to pin down in a computer program. Just one example, look at this recent thread - http://www.reefsanctuary.com/forums...iscussion/90007-corals-suddenly-stressed.html Plenty of possible answers.

Just my two cents.

Excellent point. However, I wouldn't mind having my own compatibility checker. It might be worth the tedious work, but that might be something for down the road during my bored time... of which I have a lot of lol. You could say I have not much of a life so I enjoy things like this.

Judging by your last couple posts, you are in, or were in the field in some fashion. Does that mean I can bounce some stuff off of you if I need to? =)
 
Top