Changes between Version 33 and Version 34 of DevProjects


Ignore:
Timestamp:
Nov 26, 2007, 3:02:36 PM (16 years ago)
Author:
Nicolas
Comment:

m

Legend:

Unmodified
Added
Removed
Modified
  • DevProjects

    v33 v34  
    1919Easy:
    2020 * Convert PHP code to use [PhpDb the new database abstraction layer].
    21  * Combine user page and profile
     21 * Combine user page and profile.
    2222 * Change the ops/ web pages to require login by a user with admin privileges.
    23  * Change default Q&A page to refer BOINC-specific questions to BOINC web site
    24  * Convert team name HTML and team description to BBcode
    25  * Use rich-text editing widget (e.g. Yahoo) wherever we allow BBcode
     23 * Change default Q&A page to refer BOINC-specific questions to BOINC web site.
     24 * Convert team name HTML and team description to BBcode.
     25 * Use rich-text editing widget (e.g. Yahoo) wherever we allow BBcode.
    2626
    2727Medium:
     
    2929  * The arrival of a private message, or a new post in a subscribed thread, maybe moderation events (and maybe other things we haven't thought of yet) produce "notification events".
    3030  * Notification events are shown on the Your Account (and maybe on any page that requires login).
    31   * Notification events are exported as an RSS feed, so you can see them in an RSS reader
     31  * Notification events are exported as an RSS feed, so you can see them in an RSS reader.
    3232  * The BOINC manager will (optionally) poll this RSS feed and show new items as alerts.
    3333  * You can optionally ask for email notifications, either one email per event or a daily digest. This will be separate from the "accept email newsletters from project", which is currently overloaded with PM notification.
     
    3737Difficult/Complex:
    3838          * Propagate profiles between projects. When create or edit profile, if attached to other projects, show ‘propagate changes’ page, with checkboxes for other projects (must have same password on other projects). Add web RPCs for updating profile (args: user ID, profile, password hash). Implement this so that page doesn't block waiting for replies from RPCs.  NOTE: this may not be a good idea — spammers could exploit it.
    39           * Same for forum preferences
     39          * Same for forum preferences.
    4040          * Add new profile features:
    41                 * ‘Buddy lists’
    42                 * list of recent posts and threads this person created, on this and other projects
     41                * ‘Buddy lists’.
     42                * list of recent posts and threads this person created, on this and other projects.
    4343                * other features from social networking sites?
    4444          * Add ‘referral’ mechanism: new user creates account, enters email of ‘referrer’ (or goes to URL that has it embedded). Give referrer a fraction of credit (or a 1-time bonus). List referrals on user page (show only those still active). Add new referral table to DB.
     
    4848== Applications ==
    4949Easy:
    50           * Create Makefiles and project files to build the sample applications using MinGW and DevC++.
     50          * Create Makefiles and project files to build the sample applications using MinGW and Dev-C++.
    5151Medium:
    52           * Write example FORTRAN application and Makefiles/ project files 
     52          * Write example FORTRAN application and Makefiles/ project files.
    5353Difficult/Complex:
    5454          * Write an example compound application (and suggest API revisions to make this easier).
     
    6060== Core client ==
    6161(Requires advanced C++ system programming experience)
     62
    6263Medium:
    6364          * Add a preferences for total download and upload in a month (many Australian ISPs have monthly limits), or per X hours of processing time (see email from Kevin Reed).
     
    6667Hard:
    6768          * Have the core client sense CPU temperature and throttle CPU if it goes too high. [http://www.lm-sensors.org/ Open-source software for collecting sensor data (on Linux)] is available.
    68           * Windows: get proxy config info directly from the OS
     69          * Windows: get proxy config info directly from the OS.
    6970          * After an applications exits or is killed (for whatever reason) make sure (after a few second delay) that its subprocesses are gone too. Don't restart the job until this happens. Unix: use process groups and killpg().
    7071          * More generally: make a better state machine for shutting down apps: tell them to checkpoint, wait a little, tell them to quit, clean up straggler processes.
     
    7879          * Vista: if get 'about to shut down' msg from OS, stop apps immediately (don't tell them to checkpoint). Investigate.
    7980          * XML stats: add lat/long to user record?
     81
    8082==  BOINC Manager ==
    8183(Requires experience with !WxWidgets GUI toolkit)
    8284
    8385Easy:
    84  * If using an AMS, put link to AMS (or user page) in sys tray popup, elsewhere
     86 * If using an AMS, put link to AMS (or user page) in sys tray popup, elsewhere.
    8587Hard:
    86  * Properties pages for projects, jobs
    87  * Turn off alerts (Rom's working on this)
     88 * Properties pages for projects, jobs.
     89 * Turn off alerts (Rom Walton is working on this).
    8890 * Have the Manager do RPCs in a separate thread.
    89 ==  Server/Back End ==
     91
     92== Server/Back End ==
    9093
    9194(Requires advanced C++/Unix system programming experience)
     
    9497          * When using HR, if the scheduler has sent one result of a WU using a particular app version, it should use the same app version for other results from that WU.
    9598Hard:
    96           * Implement a mechanism so that server software detects incompatible database format
     99          * Implement a mechanism so that server software detects incompatible database format.
    97100          * Scheduler: implement mechanisms so that server:
    98101                * Attempts to send results from the same WU to hosts with similar turnaround time, so that a fast host doesn't have to wait weeks to get credit.
    99           * Implement a ‘benchmark result’ mechanism: every host runs a benchmark result per app version, and the CPU time determines credit/CPU for future results 
     102          * Implement a ‘benchmark result’ mechanism: every host runs a benchmark result per app version, and the CPU time determines credit/CPU for future results.
    100103
    101104Please check with [ProjectPeople area owner or David Anderson] before undertaking any of these.