![]() |
[concept] MaeGym
4 Attachment(s)
MaeGym (pronounced 'My Jim') will be a tool to help you organize your workout routines. It was inspired by this thread.
The reason for posting this in development and not applications is that I literally just started working on it 10 minutes ago. Plus, I want some community feedback on where this should go. Feel free to make suggestions, but please make sure to read the known issues and road map sections below first. Code is available @ gitorious and from extras-devel. Once it is actually useful, I'll promote it to extras-testing. Known Issues
If an 'x' is mentioned in the version name, the feature is planned for inclusion, but has yet to be slated for a release. Bold items are things that have been changed since this post's last edit.'Please remember that features listed are tentative. That is, I may at any time change my mind and not implement them at all. [not started]: planned, but no code exists [incomplete]: code exists, but not finished [in progress]: what I'm currently focusing on [complete]: erm...done coding
Screenshots (as of 6/6/2010) |
Re: [concept] MaeGym
Woah, this is what I've been waiting for! Cool ****, hope it works out nicely!
|
Re: [concept] MaeGym
Thx a lot for this app mate, cant wait till its done.
Some suggestions: Add a diet section in which you can track your diet, as well as protein and calories intake. Something like this for an example: http://www.youtube.com/watch?v=1YRfdWb1zZI Keep up the good work :). |
Re: [concept] MaeGym
Before I can continue development, I need a come up with a database schema. So far, I'm sure I at least need two tables as follows:
I don't work out nearly as much as I ought to, so I know I'm missing something. Any feedback on this (or better naming for certain things) would be greatly appreciated. |
Re: [concept] MaeGym
Quote:
For example: Monday: Triceps...Excersizes for triceps Chest...Excersizes for chest ABS...Excersizes for ABS |
Re: [concept] MaeGym
Quote:
Your tables have all the basic requirements, maybe for the workout table you can include time - as in duration of work out session, either as a whole or as in 'started work out at... & finished work out at...'. Also dont forget to include in the work out, the option to label that particular work out as in day 1, day 1 chest and legs, etc. Once this is up and running and all the bugs sorted out, maybe later versions could include the options to browse previous work out programs and or to show progression - similar to http://bodyspace.bodybuilding.com/ (half way down the page) Also the inclusion of basic calculators for 1 rep, 5 rep, etc would be worthwhile as well as Body Mass indicator calculators, i have some links if you need to look at examples. Thanks once again, and if there is anyway i can help, please let me know. |
Re: [concept] MaeGym
2 Attachment(s)
I think the hardest part of any project is starting. While I've technically started, I'm not sure quite where to go. Specifically, I'm trying to think about what work flow would be the most effecient.
For example, in the above screenshots, you would do the following before you had a workout finished:
In an attempt to make this less tedious, I've reworked the GUI below, which behaves as follows:
However, with all of hte menu-clicking, I'm starting to think it's not all that much of an improvement. I'm wondering if centering the GUI around goals would be a good idea? **head back to drawing board and thinking chair** BTW, it would be nice to have icons like the default media player or app manager. Then I wouldn't even have to mess with figuring out how to get correct size hints for the buttons. |
Re: [concept] MaeGym
I'd be pretty much happy with both of your design propositions for the first version. I think a basic but usable thing is more important than adding all the features at once (like diet, cardio (which is covered by ecoach, isnt it?) or icons).
Generally, although I like the idea of centering around goals, I think this does not have to be incorporated in the app. I think just a basic workout tracking app that can be used quickly when in the gym is the way to go. At least for now. What would be great though is a possibility to export to a spreadsheet format that can be read by excel. Is that tricky? |
Re: [concept] MaeGym
Quote:
|
Re: [concept] MaeGym
I was thinking about an exercise app but getting time to develop it is very difficult.
As schemas go I was thinking along the lines of: 1) User Personal info. Height, age, id 2) Measurements time/date, weight, bicep measurement, forearm measurement and so on.. (linked to user id) 3) Exercise Name, description, id 4) Workout id, exercise id, sets, reps, description 5) Workout_performed workout id, user_id, performed id, description, time/date performed 6) Performed workout id, user id, target set, actual set, target rep, actual reps, heart rate, calories burned Actually "(6) Performed" is actually two separate tables. A User can have many measurements. Exercises and Workouts are system-wide (not tied to specific user). Workouts can contain many exercises. A user selects a workout by populating workout_performed (linked by the user id and workout id) Then each exercise is completed by populating the performed table (linked by user id and workout id) I think this makes sense. |
Re: [concept] MaeGym
1 Attachment(s)
@aspidites
This type of program/app is going to be pretty much 'click' intensive. There is a lot of data to be entered and options to be accessed. I would suggest functionality before 'prettiness' and then once the product is completed it can be made all shiny :D I have tried to include an attachment to this post for you to look at for some examples. |
Re: [concept] MaeGym
What language are you writing it in and are you going to use sqlite?
|
Re: [concept] MaeGym
@johnel: python + pyqt, and yes I will be usign sqlite; specifically the sqlite3 module. Thanks for the schema. Not going to use it exactly, but definately useful info (especially the measurements table)
@cryox92: Nutrition is on the todo list, but is low priority for now. @comments about look: Yeah, but it would be nice if I could have the default look behaving correctly, lol. @drug: there will be goals, but it won't be the main focus. I decided that some people don't really know what they want until after they have started to see some results. I'll probably think more about goals about the same time I incorporate nutrition. Actually, I figured out how I want the interface -- Kind of just "clicked" (no pun intended). I'm going to take a break from coding for about an hour or so (I've been working on aptly, ultimate-smash-friends, maegym, and vertsms off and on all day). |
Re: [concept] MaeGym
I'm really excited about this app.
Keep everyone here updated aspidites. |
Re: [concept] MaeGym
4 Attachment(s)
[status update]
Extending the media player analogy further, exercises are songs, target areas (triceps, heart rate, etc) are genres, and workouts are playlists. Hope that makes sense. As for what they actually look at, I took a page from the contacts page, with one exception: the add button is static. (I always hated that I had to scroll all the way to the top just to create a new SMS) |
Re: [concept] MaeGym
Fun to see another doing a gym program! I am also working on a program :)
|
Re: [concept] MaeGym
this is going to be a great and very helpful application . .
thanks |
Re: [concept] MaeGym
great start. i was waiting for this app.
i would like to see calendar view showing workout days. clicking on particular day should show details of workout like duration, excerices done, rep etc. thanx |
Re: [concept] MaeGym
Quote:
|
Re: [concept] MaeGym
Awesome Idea!
Possible menu Structure: 1. Fitness + WORKOUTS * Create Workout (possibility to have a list of exercises and add them to a workout you can then name, eg "Workout1", "Abs1", etc. Also, here you can say how many reps/sets/weight you are wanting to do. NOT IN EXERCISE BELOW, because these 3 values will always differ) * Load Workout (One big list to load pre-saved workouts) * Edit Workout (Edit pre-saved workouts) [EDIT: Load+Edit can be merged into "VIEW WORKOUT, then you long click on them to > Load OR Edit OR view] + EXERCISE * New Exercises (Create new Exercises [takes name, muscle target area, type (cardio, weight lifting), what tools needed, pictures, descriptive text, tips&tricks]) * Edit Exercises (Edit pre-saved Exercises) * import Exercises (not sure what format to take, .html, .xml ?) * View all (Could be merged with 'Edit Exercises', just on big list? + TARGET AREAS * New Target Area * Edit Target Areas * View all Target areas (With the possibility to open a sub-category and view all exercises within that target area) (Can be merged with "View all Exercises, see above ?) 2. Nutrition + ? * + ? * 3. Progress + View Progress * Weights (What you can and did lift) * Cardio * Nutrition (Calories consumed, Calories allowed, etc) * Bodyweight (kgs, etc) + ? * What do you guys reckon? I think we should start a proper flow-chart before diving into anything? --------------------------------------- EDIT: A widget to show todays activities would be awesome. But, for the moment we should focus on getting the app to a decent level first! We can make use of the calendar to save some time, it would be enough if the app communicates with the calendar so it inserts named workouts and shows them on the widget. (Eg June, 25th 2010, Workout "ABS 1") |
Re: [concept] MaeGym
@haus3r
Yes, I agree, and I think that basic functionality should be a priority and thereafter the app can be refined or developed further. @jitusj similar to the bodyspace work out template on www.bodybuilding.com? That is quite nifty to have. @aspidites you have a lot of support on this one :D |
Re: [concept] MaeGym
Quote:
Quote:
Totally forgot about "equipment needed" so thanks for mentioning it. Quote:
Quote:
Quote:
Quote:
|
Re: [concept] MaeGym
Yeh no problems :) I was just trying to compile a list of features to include, to get an overview of the whole thing! I guess we keep adding features as we go along, that would be your course of action I assume?
If you need any help, let me know. Studying Graphic Design atm, so logo design etc, no problemo! Just hit me up. |
Re: [concept] MaeGym
Quote:
|
Re: [concept] MaeGym
I'm really excited about this app! Thanks so much, I can't wait for the release :)
|
Re: [concept] MaeGym
Since you are using Python and QT maybe you can write it as a cross-platform application?
How handy would it be to plug the n900 into your PC then run the PC version of your app. You could take advantage of the extra screen space? Probably not a priority feature even if you could design your app with this in mind. Just the ramblings of a burnt-out programmer... |
Re: [concept] MaeGym
Quote:
|
Re: [concept] MaeGym
@johnel: Seems interesting, but certaintly not a priority. I expect that it would come after a v1.0 release. Reason being two-fold:
This version leverages some Maemo5 specific things which aren't available on desktops. This version is touch-screen optimized. While both of these issues individually are easy enough to address, together they mean I would have to develop a seperate interface (I've got a pretty good idea of how a desktop version would look). I'll update the roadmap to reflect my stance on this as not to forget about it though. Actually, I'm going to reread the thread and add my stance on all features there. @Haus3r: Thanks. No rush though, so take your time. I'm sure your crappiest icons will be infinitely better than anything I'd consider my best :-) Quote:
|
Re: [concept] MaeGym
@ aspidites
Sorry about that... http://workout.bodybuilding.com/Test-Maemo/admin/ this is a test account which i set up for you to look through. |
Re: [concept] MaeGym
@gryedouge; and what are my login credentials?
|
Re: [concept] MaeGym
Haha good to see the roadmap aspidites, I feel much better now :P First screenshots look absolutely kick *** - just started my routine again today, can't wait to take this with me to le gym!!
|
Re: [concept] MaeGym
I've had a look at the workout-logs at bodybuilding.com.
Although all the information is there and each screen is pretty logical I do find it a bit "clicky". A bit too many mouse clicks for my liking. E.g. Select start time, select workout, select exercise, select rep, select "edit" button, enter value. What might be better is to try and make it more "immediate" - E.g. select workout (automatically start time = current time), "point" to exercise from list (shows sets), "point" to set then enter reps. When user completes set user points to next set and prevous entry is committed. I think this post makes sense? |
Re: [concept] MaeGym
Quote:
Having to click that many times would honestly make me say **** it and do everything on my own. Might be cool to have a bit of an adhoc mode -- you just record what you've done, and if you like it, save it to a workout later. |
Re: [concept] MaeGym
Ok, so I've finished the prelimenary database schema. Just a couple more things to implement before the initial release.
BTW, when I do release this, PLEASE don't give feedback about things that are already on the road map. For example, don't complain that v.0.1.0 doesn't allow you to create workouts or delete exercises, because this is already slated for later versions. Feature requests are fine as long as they aren't mentioned in the original post. |
Re: [concept] MaeGym
Here is a feature request for v 1.x:
If it is a timed or distance type of exercise maybe have an integrated stopwatch, lap counter and possibly distance measuerment? E.g. You select your workout, then select the exercise - "cycling", it would display "Cycling: Duration: 10 minutes <start>". Press <start> button and then stopwatch would start (maybe beep every minute). When duration is reached it will signal the end of the duration and optionally you can continue cycling or you can stop. Results are recorded automatically maybe record your mileage too? BTW: Have you solved "#TODO: find a clear relationship between laps, miles, set,reps, etc." yet? E.g. Sets become Laps, Reps can either by distance or time. |
Re: [concept] MaeGym
I would love to test it. where can i download it. I would love to mail you my trainig sheet for reference. I basucly need to enter how many set (2 or 3) and how many repetitions per set i was able to do. sometime I can not do the same numbers within an execise. and the weight of course.
Markus |
Re: [concept] MaeGym
@johnel:
Actually I know what I wanted to name everything: frequencies, durations, and intensities.pstrike] It wasn't until recently that I knew how best to apply this toward various exercises. I'm usiing this as reference. [/strike] Bleh, nevermind. I'll just ask: Does it make more sense that a rep is a duration (how long to do an exercise) and a set is a frequency (how often to do an exercise), or the other way around? Obviously the weight being lifted could be categorized as an intensity. What about for running? For 30/60s it makes sense, but what about just running a flat distance? I'm thinking duration would be x miles, frequency would be x times a week and intensity would be x% speed? Will think over your request and add it to the road map as I see appropriate. If I can add it to the program (say at the bottom of a window during a workout) without it looking crowded I may considering. However, keep in mind that I'm a linux guy, and as such, I tend to prefer the one task per app philosophy versus the Windows "shove a bunch of **** in one program" methodology-- then again, there was always Konqueror... @marktold: read the OP, please. Thanks. |
Re: [concept] MaeGym
Quote:
What might be better is to have a seperate "timing" app maybe with an option to link to your database? Hmmmm.... |
Re: [concept] MaeGym
Quote:
Random ramblings: You could have a "Units" table: u_id, name. u_id | name ------------------- 1, kilometres 2, miles 3, sets 4, reps (Actually I'm not sure the above table makes sense to me?) "Duration" table(Duration as a very loose definition). 1, Set 2, Lap The "Exercise" table could have a "duration id". If it is a Set then linking it to a "rep" table fairly simple? If it is a Lap then linking it to a "Timings" table (e.g. distance, time)? It's confusing! |
Re: [concept] MaeGym
So I finally found the time today to work on MaeGym. I've started implementing the New Exercise Dialog.
The blank area is a widget that will be able to hold the exercise's demonstration image or video. The text box holds a description of the exercise (perhaps I should add a label?). The only button that will hold an actual value is the Target Area Button. The other three buttons (frequency, intensity, and duration) hold their relative unites of measurement. For example, for Frequency, you could select Sets, Days, Weeks, etc. For Duration you could select Time, Reps, Cycles, etc. It wouldn't be until you started working out that you would be able to set values. A couple of things I want to point out are that the widgets are laid out dynamically. As such, the media widget that holds the pic/video may seem to be extremely small, but that's because its backend hasn't been programmed, and as such it occupies as little space as possible. Also, I've used default settings for all the widgets, so I am already well aware that the buttons might be too small for the landscape version. |
All times are GMT. The time now is 19:08. |
vBulletin® Version 3.8.8