maemo.org - Talk

maemo.org - Talk (https://talk.maemo.org/index.php)
-   Development (https://talk.maemo.org/forumdisplay.php?f=13)
-   -   [concept] MaeGym (https://talk.maemo.org/showthread.php?t=52204)

aspidites 2010-05-18 17:23

Re: [concept] MaeGym
 
4 Attachment(s)
[Update]
Converted the New Exercise Dialog to a wizard. It now reads target areas info from the database, which is a big step. Just need to wire a couple of other UI elements to the database then make the wizard insert a new exercise into the database. From there I just need to have exercises from the database listed in the exercises window and version 0.1.0 will be complete.

I'll update the roadmap shortly.

PS- If anyone is wondering why this is taking so long, the answer is that I only have the time to work on this for an hour or two every other day or so.

Screenshots of recent progress:

Haus3r 2010-05-19 16:34

Re: [concept] MaeGym
 
Wow, cant wait for this! Just restarted my routine, this will come in VERY handy!

aspidites 2010-05-21 08:58

Re: [concept] MaeGym
 
Ok, so it's now possible to add exercises to the database through the New Exercise Wizard. All that remains before a 0.1.0 release is to display these exercises in the exercises list.

Also, I've tweaked the roadmap a bit. Nothing has been removed, but some things have been deferred. Sorry :-P

PS- This won't be installable until PR1.2 unless you enable SDK repo to install the latest Qt (unless they've pushed this to devel already).

[edit]
Finally finished all of the roadmap items for a 0.1.0 release. I'm currently packaging it and this should be available in extras-devel in an hour or two. In an effort to reduce the amount of false bug reports, I have intentionally disabled all currently unimplemented features. Also, if anyone is wondering, I won't be promoting this to extras-testing until I consider it usable (can fully edit exercises and routines).

[edit 2]
First package is broken fixing right now. Silly typo in config. Testers, please install v.0.1.1 instead of v.0.1.0 v.0.1.1-3 instead of v.0.1.1-1 or v.0.1.1-2

Make that 0.1.1-4. Jeez programming is easier than packaging some times. Once this release is finalized, subsequent releases should go more smoothly.

PS - It is no longer neccessary to activate SDK repo just to install maegym -- devel works just fine.

[edit 3]
New version fixes bug that caused database not to be created properly. 0.1.2-1

Haus3r 2010-05-25 08:44

Re: [concept] MaeGym
 
Any chance of seeing an installable .deb soon? :) Cant wait for this!

aspidites 2010-05-25 18:47

Re: [concept] MaeGym
 
@Haus3r; It's been in extras-devel since the 21st...probably have to install it via apt-get in terminal.

I'm creating another package suitable for PR1.2 once I'm done flashing, so hopefully then it'll just show up in the app manager.

If not:
Code:

sudo gainroot
apt-get install maegym

[edit]
Package info with latest changelog info: http://maemo.org/packages/view/maegym/

Haus3r 2010-05-25 19:42

Re: [concept] MaeGym
 
cant install it?

maegym_0.2.1-1_all.deb > Unable to install, not compatible with current dependencies/packages? (NO idea what this error means :P)

And when I type in
Quote:

sudo gainroot
apt-get install maegym
It says "package maegym" not found...might this be because I haven't got extra-testing enabled (for good reasons?).

aspidites 2010-05-25 19:46

Re: [concept] MaeGym
 
It depends on packages from devel (Qt). If you don't have those it's not going to install.

Also, it won't be showing up in the app manager until it gets a proper icon, and I'm no artist.

Honestly, you're better off either:
  • waiting for it to hit extras (assuming I get that far), or..
  • enabling devel, installing it, then disable devel again

Lullen 2010-05-25 19:49

Re: [concept] MaeGym
 
how did you pack it? :)

Haus3r 2010-05-25 19:50

Re: [concept] MaeGym
 
Quote:

Originally Posted by aspidites (Post 676890)
It depends on packages from devel (Qt). If you don't have those it's not going to install.

Also, it won't be showing up in the app manager until it gets a proper icon, and I'm no artist.

Honestly, you're better off either:
  • waiting for it to hit extras (assuming I get that far), or..
  • enabling devel, installing it, then disable devel again

Thanks for your help. Ill make you an icon, how bout that? :)

Quick work:

http://imgur.com/T8FSu.png

aspidites 2010-05-25 22:06

Re: [concept] MaeGym
 
@lullen: py2deb. there is also a packaging article in the wiki.

shaf 2010-05-25 22:12

Re: [concept] MaeGym
 
Looks awesome, cant wait to download, started working out again today and its a pain having to use notes to write down whats been worked.

aspidites 2010-05-26 05:32

Re: [concept] MaeGym
 
@Haus3r: any chance of making it 48x48. As per standards, app manager icons should be that size. Thanks.

I'll probably include it in version 0.3.0 if you do thatt (along with credit of course).

Haus3r 2010-05-26 10:42

Re: [concept] MaeGym
 
All in 48x48

1
http://imgur.com/OSHhx.png
2
http://imgur.com/BQj4G.png
3
http://imgur.com/7Gf9u.png
4
http://imgur.com/4XDpg.png
5
http://imgur.com/qmd0G.png
6
http://imgur.com/qZXEx.png
7
http://imgur.com/ExoRU.png
8
http://imgur.com/fr6mW.png
9 [NO BOX]
http://imgur.com/y4vh1.png

All have transparent backgrounds, either with a white box or a blue box. Do we want to keep the "MaeGym" in there or shall we make something without the words?

aspidites 2010-05-26 16:16

Re: [concept] MaeGym
 
A bit of a staus update, since the roadmap doesn't give much insight into what I'm working on.

It is now possible to view an exercise when you click on it in the exercises window. It's not fully functional yet, but once complete, the workflow should be as follows:
  • if you're in exercises
  1. select an exercise
  2. you are presented with a view of that exercise including its duration, frequency, and intensity types, as well as the equipment neccessary to perform the exercise
  3. change the values of these types: if weight is selected as an intensity, this would be changed
  4. select menu and add the exercise to a routine
  5. alternatively, you can select edit from the menu which will allow you to change the type (eg. percentage instead of weight for intensity)
  • if you're in routines
  1. select a routine
  2. record actual completed values (eg, the exercise says 3 sets, but you only complete 2)
  • if you're in target areas
  1. select a target area
  2. list of exercises in that area are presented
  3. follow steps as if you were in all exercises
The workflow isn't final, so if you have any suggestions on how to make it better (after reviewing how the rest of the program works), I'm open to suggestions.

Keep in mind that screen space is limited, which is why I've moved some items to the menu, etc.

The example media player not only accepts images of most formats, but also video (local and from URL). Clicking on it will play the video in fullscreen, clicking again will stop the video and exit fullscreen.

Haus3r 2010-06-02 09:25

Re: [concept] MaeGym
 
Any progress? :)

aspidites 2010-06-03 05:46

Re: [concept] MaeGym
 
Yeah. Internet down at home so I havent been able to do much. one more hurdle to jump across and 0.3 will be done.

[edit] (fixed punctuation now that I'm not having to type this on my N900's Edge connnection, and a bit more detailed update)

I couldn't quite remember how to do something in Qt and didn't have the documentation installed on my computer to reference (silly me). As such, my only means of looking up the documentation was via internet, which until about 10 minutes ago was down. EDGE is too slow for me to bear, so I've been putting off all development until now.

What remains before a 0.3 release is finishing up the Exercise Detail window, which I'm contemplating converting to a dialog anyways. While I have a widget that allows media to play, it seems a bit slow, so I might defer using it to a later version so that I can get this one out the door and usable.

I'd have updated you guys sooner, but it didn't seem as though there was much interest, so I was silently updating the changelog as not to cause any unneccessary commotion.

TheMathMan 2010-06-03 18:59

Re: [concept] MaeGym
 
Going to try this app out over the next few weeks.

Hopefully it'll be a promising little one.

andyph666 2010-06-04 02:48

Re: [concept] MaeGym
 
Same here, just the kind of program I've been looking for. Thanks!

x61 2010-06-04 03:04

Re: [concept] MaeGym
 
This is a great program. I have to try it.

Haus3r 2010-06-05 17:50

Re: [concept] MaeGym
 
Could you please provide a downloadable .deb file I can install via Terminal? :) Thanks!

andrew_85 2010-06-05 17:52

Re: [concept] MaeGym
 
i need it too!!

TheMathMan 2010-06-05 19:07

Re: [concept] MaeGym
 
Go to terminal as root:

apt-get install maegym

Thats how I got it

aspidites 2010-06-05 19:53

Re: [concept] MaeGym
 
Quote:

Originally Posted by Haus3r (Post 701339)
Could you please provide a downloadable .deb file I can install via Terminal? :) Thanks!

No. For numerous reasons as follows:
  1. I've already told you in a previous post where the deb for ANY program in extras[-testing/devel] can be located.
  2. Downloading a deb and installing via dpkg is generally a bad idea because (unless you're using something like aptly or do apt-get install -f*, which is silly) then it doesn't take care of dependencies)
  3. It's already installable via command line as was mentioned by TheMathMan. (apt-get install maegym)
  4. The fact that my latest work isn't pushed to extras-devel should be a good indication that it isn't ready yet. If you are that eager to get the most bleeding edge version, visit the gitorious page as indicated in the first post

aspidites 2010-06-05 23:03

Re: [concept] MaeGym
 
I did some research, and it turns out the reason MaeGym isn't showing up in app manager has nothing to do with the icon, but rather the section I put it in. It previously resided in 'other', but I have moved it to 'user/education' for the sake of making it more easily installable. Suggestions for a better section are welcome.

I'd push a package release, but I'm so close to finishing 0.3.0 that it wouldn't be worth it.

[edit]
Version 0.3.0 is finished, and if all goes as planned will be the first version to be installable through the app manager.

Copied from the changelog:
Quote:

0.3.0-1 Feature Release
- ability to remove exercises
- ability to edit exercises
- ability to add target areas
- ability to remove target areas
- ability to edit target areas
- example media can be loaded from web url or
local file.
- icon, courtesy of 'Haus3r', thanks!
In case anyone is wondering, i'm expecting this to be useful around version 0.5.0 or so, which is when I'll finall push to testing. As always, check the first post for known issues and already planned features before commenting, please.

DonPIZI 2010-06-09 08:14

Re: [concept] MaeGym
 
Iīve installed maegym 0.3.0-3 an I canīt create workouts. I only can click on "fitness" and create exercises and taget areas.

aspidites 2010-06-09 18:30

Re: [concept] MaeGym
 
Quote:

Originally Posted by DonPIZI (Post 706755)
Iīve installed maegym 0.3.0-3 an I canīt create workouts. I only can click on "fitness" and create exercises and taget areas.

** sigh** I knew this day would come. Did you even bother to read the first post?

Quote:

Originally Posted by aspidites (Post 649863)
...

Feel free to make suggestions, but please make sure to read the known issues and road map sections below first.


...
Road Map
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.http://talk.maemo.org/
[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

...
  • v.0.4.0
    • tweak exercises list slightly (show exerpt from description and or target area) [not started]
    • allow deleting of multiple exercises from menu [not started]
    • allow deleting of multiple target areas from menu [not started]
    • rename workouts to routines [complete]
    • allow creation of new routines [incomplete]
...

I've bolded the points you should have paid attention to.

Also notice how in my last post I stated I don't consider this "usable" until 0.5.

DonPIZI 2010-06-09 18:35

Re: [concept] MaeGym
 
ooops ;) ok

aspidites 2010-06-16 17:52

Re: [concept] MaeGym
 
[edit]
I've marked the items on this list that have been implemented, though most of them are slated for 0.5.x release.

Update

Routines
I just thought I'd let those waiting know that I haven't run into any blockers or anything. I've just been busy with work and a couple of other projects. I'll try and release the next version by Sunday morning, or give an explanation of why it isn't finished as well as how close it is to being finished.

I recently modified the database schema to allow for worked exercises and am thinking through the work flow from creating a routine to actually performing the routine. For now, I'm thinking it will go like this:
  • tap on routine's name
    • window pops up with a list of that routine's exercises, a "Start Routine" button. [done]
      • Will open a wizard that includes all of the exercises in it, allowing you to record progress
      • you will be able to 'pause' a routine or 'quit' it at any time.
    • New exercises can be added by clicking "Add Exercises" from the menu.* [done]
    • Clicking on an exercises will give you an dialog that allows you to record progress on an individual basis, or modify progress already recorded by the wizard above
  • long-press on a routine's name
    • context menu to edit a routine's name or description or delete the routine all together [done].
  • menu option to delete multiple routines. [done]
* The reason for putting this in a menu instead of as a button is that it just seems out of place otherwise. "Start Routine" next to "Add Exercises" just seems weird to me. Also, I was thinking it should be possible to add exercises to a routine by long-pressing them in the exercises window (this is in addition to the menu option in the routines window, not instead of).


Exercises
Exercises are largely finished, but I just need to tweak a few things:
  • Make the exercises display more informative
  • Allow preview images if the example media is a video instead of an image
  • Show exercise details when an exercise name is tapped.
The only of these options that will (now) influence the next release is the exercise details bullet point, and the data integrety. The other two are cosmetic changes that don't severely impact the user experience and shouldn't hold up a release. In fact, I'll probably release those as a bugfix release (0.4.x) instead of a feature release.

Changelog
I've updated the changelog to include mapped bugfix/enhancement releases. This will allow me to push packages more frequently not only because there will be less work to be done for each major feature release, but because more packages will be created (eg 0.4.0, 0.4.1, 0.4.2, etc). Consequently, you all get to play with new stuff faster, and I get feedback faster, which in turn means potential bugs get fixed faster.

Haus3r 2010-06-17 12:50

Re: [concept] MaeGym
 
Quote:

Originally Posted by aspidites (Post 717895)
Update

Routines
I just thought I'd let those waiting know that I haven't run into any blockers or anything. I've just been busy with work and a couple of other projects. I'll try and release the next version by Sunday morning, or give an explanation of why it isn't finished as well as how close it is to being finished.

I recently modified the database schema to allow for worked exercises and am thinking through the work flow from creating a routine to actually performing the routine. For now, I'm thinking it will go like this:
  • tap on routine's name
    • window pops up with a list of that routine's exercises, a "Start Routine" button.
      • Will open a wizard that includes all of the exercises in it, allowing you to record progress
      • you will be able to 'pause' a routine or 'quit' it at any time.
    • New exercises can be added by clicking "Add Exercises" from the menu.*
    • Clicking on an exercises will give you an dialog that allows you to record progress on an individual basis, or modify progress already recorded by the wizard above
  • long-press on a routine's name
    • context menu to edit a routine's name or description or delete the routine all together.
  • menu option to delete multiple routines.
* The reason for putting this in a menu instead of as a button is that it just seems out of place otherwise. "Start Routine" next to "Add Exercises" just seems weird to me. Also, I was thinking it should be possible to add exercises to a routine by long-pressing them in the exercises window (this is in addition to the menu option in the routines window, not instead of).


Exercises
Exercises are largely finished, but I just need to tweak a few things:
  • Make the exercises display more informative
  • Allow preview images if the example media is a video instead of an image
  • Show exercise details when an exercise name is complete.
The only of these options that will (now) influence the next release is the exercise details bullet point, and the data integrety. The other two are cosmetic changes that don't severely impact the user experience and shouldn't hold up a release. In fact, I'll probably release those as a bugfix release (0.4.x) instead of a feature release.

Changelog
I've updated the changelog to include mapped bugfix/enhancement releases. This will allow me to push packages more frequently not only because there will be less work to be done for each major feature release, but because more packages will be created (eg 0.4.0, 0.4.1, 0.4.2, etc). Consequently, you all get to play with new stuff faster, and I get feedback faster, which in turn means potential bugs get fixed faster.

Wow that sounds fantastic! Can't wait for this version :)

x61 2010-06-17 16:16

Re: [concept] MaeGym
 
Sounds good .

aspidites 2010-06-20 19:30

Re: [concept] MaeGym
 
It's Sunday and I'm not quite done. I've gotten it so that you can select "Add Exercise", but haven't quite programmed the logic to add an exercise to routine exercises. Once I get off work (00:00 CST) I'll finish this up and push a release.

Actually, I have adding exercises pretty much working, but it seems like developing the routine window has introduced some bugs that break the following some how:
  • auto rotation broken
  • once entering 'routines' the program doesn't exit correctly
  • every once and a while program freezes on 'add exercises' from routines
I won't be releasing anything until these are figured out. The most up-to-date (and buggy) code can, however, be downloaded from git (see first post). Sorry guys.

[edit]
I've fixed everything except for autorotation which should be easy enough to correct that I'm not delaying this release further.

aspidites 2010-06-25 16:51

Re: [concept] MaeGym
 
Alright, so I finally found time to work on this again and have finished version 0.4.0. I'm uploading the package to extras-devel, but I've changed a few things in my packaging script, so there is the possibility of i failing. Otherwise, it should be there within the hour.

The reason for changing the packaging script is to allow changelog information to show up in App manager instead of only on the project page.

As to prevent a bunch of false reports, here are some non-issues that I'm aware of that will show up in the bug fix releases (assuming you aren't paying attention to the OP):
  • it isn't possible to edit or delete a routine exercise - available in v.0.4.2 (editing doesn't make sense so not programmed)
  • it isn't possible to start a routine - slated for 0.5.0 release
  • it isn't possible to see exercise detail - in progress
  • auto rotation doesn't work properly for routines - available in v.0.4.1

So why release at all? Release early, release often. Besides, its not like these issues are marked as 'WONTFIX' *cough, cough*

[edit]
I thought I should mention that it's already been possible to select a video as the example for an exercise and to play that video, with the option of going fullscreen. I just have yet to put that portion of the gui anywhere "officially". If you check the git logs, you might see hints of it ;-). It will be part of the details view for a specific exercise, though.

Haus3r 2010-07-05 12:13

Re: [concept] MaeGym
 
Been using this for a few days now, great tool! Keep it up!

optimaxxx 2010-07-06 15:58

Re: [concept] MaeGym
 
looks good, though i'm caught between this and qexercise, ever considered merging with the other app?

2x the dev
1/2 the work
2x userbase
and means a better product for us consumers?

:D either way, impressive work!!

aspidites 2010-07-06 16:49

Re: [concept] MaeGym
 
Quote:

Originally Posted by optimaxxx (Post 742652)
looks good, though i'm caught between this and qexercise, ever considered merging with the other app?

2x the dev
1/2 the work
2x userbase
and means a better product for us consumers?

:D either way, impressive work!!

Not quite, for the following reasons:

  • qexercise was written in C++, MaeGym in Python
  • Design goals are quite different.
    • Navigating the interfaces is quite different
    • qexercise uses multiple XML files whereas MaeGym uses 1 ini formatted config file and 1 sqlite database
  • Not quite sure how to say this without being offensive, but it seems as though the developer of qexercise is focused on features, whereas I am focused on stability. That is, qexercise is more functional, but is riddled with numerous bugs.
Plus, these are both open source products (not sure of qexercise's license, though), so it's not like any money is lost choosing one over the other. In fact, you can evaluate both at the same time :-)

Lullen 2010-07-06 20:25

Re: [concept] MaeGym
 
Quote:

Originally Posted by aspidites (Post 742708)
Not quite, for the following reasons:

  • qexercise was written in C++, MaeGym in Python
  • Design goals are quite different.
    • Navigating the interfaces is quite different
    • qexercise uses multiple XML files whereas MaeGym uses 1 ini formatted config file and 1 sqlite database
  • Not quite sure how to say this without being offensive, but it seems as though the developer of qexercise is focused on features, whereas I am focused on stability. That is, qexercise is more functional, but is riddled with numerous bugs.
Plus, these are both open source products (not sure of qexercise's license, though), so it's not like any money is lost choosing one over the other. In fact, you can evaluate both at the same time :-)

Yeah they are quite different. I do not take it offensive but first of I do not own a N900 more so right now I can only see if it compiles wich makes it a lot harder to find the bugs. But really it is in devel and I do not see any need for stability in this phase, stability is comes in when I devote it to testing(wich is sometime in this month) and second if I test things a lot myself it will take time. If I let the community test the program I could take that time I save to create new features, wich in the end will favour the users that use the program, once the program is for the end-users wich extras-devel is not :)

But I think it is great that qexercise is not the only gym program as I think that competition is very sound for everyone!

I have no idea of what this licenses means but if someone wants to look at the code just tell me and I can mail it over. The reason why I have not these "git stuff" is that I never used it and do not want to spend time learning it as I guess no one wants to look at the code anyway. What license is that? :D

PS. qexercise is my first c++ too :)

aspidites 2010-07-18 07:54

Re: [concept] MaeGym
 
Well, I've been extremely busy with work, school, and my girlfriend, but I managed to push out yet another bug fix release. I am off on Monday, which means I should be able to push out another release or too. Maybe even finally start working on v.0.5.x series.

BTW, I was in the gym and was thinking that I should expand the database schema. I was thinking that routines should be renamed to sessions, and it should be possible to add sessions to a routine. The logic behind that is that I feel a session is something that happens during one day at a gym, where as a routine is composed of multiple sessions, most of the time occupying a few weeks.

This change will break old workouts, so I apologize about that ahead of time. While I don't plan to do so myself, it shoudl theoretically be possible to create a short script that converts the old schema to the new one, since it is just a sqlite database.

I was also thinking that there should be a profile table so that multiple people can use the same app (I was working out with a buddy when I thought of this).

The only other thing I was thinking was trimming the application down so that it focuses on Fitness only instead of worrying about nutrition. The reason for this is that as a hobbiest programmer I don't have much time to work on the fitness aspect of this program let alone nutrition as well. Further more, if memory serves me correctly, I seem to remember seeing an application dedicated to dieting, which, if I dropped nutrition, would be more in keeping with the unix philosophy of doing one thing and doing it well.

aspidites 2010-07-23 17:43

Re: [concept] MaeGym
 
2 Attachment(s)
Another bug release. Loading of video still kind of slow so I'll either be adding a visual indicator so the user doesn't think the program is broken as well as investigating other ways of playing media that don't require me to use python-gstreamer directly. Also, exiting fullscreen goes to the task switcher, so it would be nice to find a way to give MaeGym focus back. These fixes will come after v.0.5.0, as not to hold up development on that version any longer.

For those using videos as example media, note that flv videos and gif animations don't work. To play the video, simply tap on it, which will also make it go fullscreen. I've added screenshots, but keep in mind that the first is inaccurate because a preview of the media IS available.

jackattack 2010-10-20 12:10

Re: [concept] MaeGym
 
This looks like it will be amazing when complete. I hope you keep up development! I only have an N810 - will it be possible to run on there? I've literally just bought it and am completely new to all this so don't really know what the differences are between the OSes on each platform, etc.

Cheers

Jack

Aranel 2010-12-04 22:13

Re: [concept] MaeGym
 
Last release was 2 months ago. Another dead project, I guess :|


All times are GMT. The time now is 13:31.

vBulletin® Version 3.8.8