Difference between revisions of "User:Bhinesley"

From BRL-CAD
(Log: Tuesday, yesterday, today, plan tomorrow)
(Log: last few days, today, plan tomorrow+)
Line 13: Line 13:
  
 
=== Log ===
 
=== Log ===
*06/17/11
+
*06/24/11
 +
**Plan
 +
***The next step for the translate command is to perform the actual translations.
 +
*06/17/23
 +
*06/17/11, 06/20/11, 06/22/11
 +
**Got behind on this log. I took the day off on Saturday, Sunday, and Tuesday.
 +
**I've become more familiar with how the .g database is used internally, and also cleared up some misunderstandings of how the MGED oed operations work.
 +
**Implemented fairly robust argument handling for translate command.
 +
**Wrote a ged_ispath function to determine if db_full_path structs contain valid paths (this will be used by the translate command, at least)
 
**Plan
 
**Plan
 
***Continue working on 'translate'. The first target is a working command with defaults only.
 
***Continue working on 'translate'. The first target is a working command with defaults only.

Revision as of 23:35, 23 June 2011

Who I am

My name is Brandon Hinesley. I am a 26 year old, unemployed, full-time student finishing up my sophomore year of a Bachelor of Science in Computer Science. I live in California. My preferred coding environment is in any *nix operating system, while using vi and screen.

Contact

Experience

I have 5 years of experience designing commercial plumbing systems in 3d, using AutoCAD. My experience is minimal with C/C++, Java, and Python, but I have coded dozens of VBA programs for several companies I have worked for. I was a Linux systems administrator for a small business network, as well, for about 3 years.

GSoC 2011 Project

I'm migrating MGED commands to Archer, and cleaning up existing commands.

Log

  • 06/24/11
    • Plan
      • The next step for the translate command is to perform the actual translations.
  • 06/17/23
  • 06/17/11, 06/20/11, 06/22/11
    • Got behind on this log. I took the day off on Saturday, Sunday, and Tuesday.
    • I've become more familiar with how the .g database is used internally, and also cleared up some misunderstandings of how the MGED oed operations work.
    • Implemented fairly robust argument handling for translate command.
    • Wrote a ged_ispath function to determine if db_full_path structs contain valid paths (this will be used by the translate command, at least)
    • Plan
      • Continue working on 'translate'. The first target is a working command with defaults only.
  • 06/16/11
    • Started setting up the translate command (temporarily translate2 for mged)
  • 06/15/11
    • Reading code and messing around with MGED/Archer to get a handle on how oed works
    • Replaced 'erase_all' command with 'erase -r'
  • 06/14/11
    • Reading code; I couldn't really get anything accomplished today, so perhaps we'll call this my day off.
    • Plan
      • Start work on migrating next set of commands
  • 06/13/11
    • Tried to fix a bug in Archer's ls command, where any arguments are echoed, regardless of whether they are objects. Identifying the problem was the easy part... it would be complex to fix it properly.
    • Tracked down a commit that revealed a bug, which prevented ray-tracing.
  • 06/12/11
    • Fixed a bug in Archer/MGED man command handling
    • Fixed a bug in ManBrowser
    • Fully documented and cleaned up ManBrowser
  • 06/11/11
  • 06/10/11
    • Did a manual inspection of all 58 lsort calls, and ensured that any lsearch's that immediately followed them used the -sorted switch to force binary rather than linear searching.
    • Plan
      • Patch bugs, clean up Archer commands, etc.
      • Continue reading code to figure out how a libged registry might work.
  • 06/09/11
    • Spent about 1/2 the day trying to build with cmake (I've been using automake up until now). Ended doing a fresh checkout and building outside the source directory, as recommended by ``Eric.
    • Committed all of the patches that I had submitted before I was given commit access.
    • Reading code to gain an understanding of how a libged registry might be constructed.
  • 06/08/11
    • Made ManBrowser fully operational as a replacement for existing faculties.
    • Added -disabledPages and -enabledPages options to ManBrowser, to allow for fine-tuning of available pages.
    • Modified Archer/MGED to use ManBrowser, and removed obsoleted faculties.
  • 06/07/11
    • Changed ManBrowser to inherit from iwidgits::dialog. It now creates the window properly, activates, loads the table of contents and Introduction.html. Selection binding of the ToC is not working yet. Still some cleanup to do.r
    • Plan: I'd really like to have ManBrowser done within a day or two, so that I still have about a week before my first milestone. We'll see.
  • 06/06/11
    • Tried to figure out how to reliably center the Manual Page Browser without manually determining the center, etc. Could not get it working correctly if my life depended on it.
    • Read a chapter on Itcl, and made some changes to ManBrowser because of it.
    • I received commit access today, so I cleaned things up so that I could start committing regularly. I submitted my working changes to the man command, and my nonworking progress on the ManBrowser mega-widget.
  • 06/05/11
  • 06/04/11
    • Reading documentation today.
  • 06/03/11
    • Since the man command was made functional yesterday, today I started work on moving it into it's own file/class in tclscripts/man_browser.tcl. The class is now partially functional, and Archer.tcl has been mostly modified to work with it. I'm having problems with some Itcl/Itk stuff, so it's back to the books tomorrow.
  • 06/02/11
    • I was still having problems today, but I knew that I really just need to read some more, so that's what I did. A couple hours later I figured out what I was doing wrong and made some progress.
    • The man command only accepts commands that in fact have man pages as an argument, launches the man page browser, but I'm not sure how to load the page for a particular command yet. and loads the man page from the args. It appears to be fully working, plus improvements. There is still some refactoring/cleanup to do, though.
    • Note: It would be nice if the man page browser TOC would jump to commands based on keyboard input, or if it had a filter. I've proposed it in #brlcad; I'll look into this once I have a better handle on things I'm done migrating it.
  • 06/01/11
    • Reading documentation. Resuming migration of man command tomorrow.
  • 05/31/11
    • Started logging progress to this wiki.
    • Submitted patch 3309910. This modifies Archer's opendb command, so that when no arguments are passed it behaves similarly to MGED. There is a small bug that I'm not sure how to fix yet.
    • Taking (probably) the rest of the day to read Tcl/Tk and Itcl documentation.
  • 05/30/11
    • Mostly done adding the man command to Archer; running into a wall with my Tcl/Tk and Itcl knowledge.
  • 05/29/11
    • Submitted patch 3309107. The Archer closedb command is an explicit part of my project.
    • Submitted patch 3309109. Changed MGED's new file input box to a dialog.

General plan

My development timeline is rear-loaded. My plan is to migrate the 2 commands in each of the first two milestones quickly. I can then focus on cleaning up Archer commands in order to become proficient with the relevant code. The remaining commands will be more challenging, so this will help later on.

Development timeline (from proposal)

  • June 14th
    • Milestone 1
      • A minimum of 2 commands will have been migrated to Archer by this date.
  • July 5th
    • Milestone 2
      • A minimum of 4 commands will have been migrated to Archer by this date.
  • July 5th to 11th
    • Prepare for mid-term evaluation: cleanup, review, handle of unanticipated issues
  • July11th – July 15th
    • Mid-term evaluations due
  • August 2nd
    • Milestone 3
      • A minimum of 7 commands will have been migrated to Archer by this date.
  • August 16th
    • Suggested 'pencils down' date
    • Milestone 4
      • A minimum of 10 commands will have been migrated to Archer by this date.
  • August 16th - 22nd
    • Prepare for firm 'pencils down' date: cleanup, review, handle unanticipated issues
  • August 22nd
    • Firm 'pencils down' date