thunderbots-at-home / athomesoftware

Thunderbots@Home software repository
0 stars 0 forks source link

Future Developments Past The 16th #79

Open UltronDestroyer opened 10 years ago

UltronDestroyer commented 10 years ago
  1. Find personnel to ramp up/improve the simulator side of Talos
  2. Find test developers to write unit tests for our code
  3. Find developers to blackbox test our code
  4. Developers to maintain a production server/patch system.
  5. Update code to fit ROS naming conventions
  6. Review design of code base and plan for the future
UltronDestroyer commented 10 years ago

Couple of ideas @toxicseaweed.

Personnel to ramp up things:

Newbie Trainer Software Engineer ->Train noobs on how the software works/how it looks/how the architecture is ->Train noobs on improving their C++/Python/Scripting/Hacking skills ->Answer questions noobies might have ->Train noobs on ROS, catkin, building, and testing

Simulator Software Engineer Duties: ->Keep URDF up to date ->Assure the model works/runs smoothly in RViz and Gazebo ->Write transmissions/actuations in the URDF ->Test the new code written for the robot and assure the simulation doesn't break (and if it does, work with others to fix it) ->Make videos of simulation demonstrating robots capabilities

Software Test Engineer: Duties: ->Write tests for code being written ->Document the test code ->Fix bugs that arise from testing ->Test code for the existing code

Code Standards and Specifications Enforcer Duties: ->Enforce specs of the code that is written and re-write it if not up to spec e.g. for protocols on communicating with hardware, how emergency stops should be executed, how communications with drivers works. ->Document specifications, give feedback on specs ->Work with other engineers to assure their products meet the specs

Software/Hardware Driver maintenance engineer Duties: ->Write tests to assure hardware operates properly ->Tests to assure the interface for software is working ->Runtime checking that everything is going to plan ->Find better solutions/optimize driver code for current software ->Write driver code for new software/new hardware

Website Admin ->Keeping the website up to @Home standards and specs ->Updating the website for new team members ->Updating the info on the website for research/project completions and time lines

Social Media Publisher ->Keep the facebook/twitter/website page up to date with development updates ->Stay in touch with editors/UBC news paper/reporters and keep them informed about progress ->Post pictures/take pictures of the project and events/make it seem exciting

michaelmoritsugu commented 10 years ago

I really like some of those ideas. I'd see people taking on a couple roles at a time - such is life - but I like having stuff specified and it'd help give new members direction on what to work on. I think finding a way to direct new software members will be important and this is a great step in that direction.

Even though a QA like position does make sense it's important that people writing new components don't skip smoke testing.