BIOF-309, Spring 2020 Rubric
The emphasis of the course is on learning and mastering the skills covered. The grade for the course will be divided into 3 components:
BIOF-309, Spring 2020 Rubric
The emphasis of the course is on learning and mastering the skills covered. The grade for the course will be divided into 3 components:
- Online course work, AKA homework. Completion of the suggested courses on Datacamp (described below) will provide up to 15% of the grade
- A "mini project" during the course, submitted using github will provide up to 10% of the grade
- The remaining 75% of the grade is based on the final project submitted via github
If some of the material appears unclear, please ask for clarification.
Homework
By April 23rd, you must complete 45 hours of a career track on Datacamp. The python programmer track is recommended as it covers the content taught during the course, provides exercises to practice the newly learned skills, and covers additional material that we do not have time to cover in class.
Note that to complete this career track for your own benefit there are a further 11 hours of courses that you are not required to complete for this class.
Please use the schedule below as a guide for what you should have covered in this career track and by when:
-
2020-02-13
- Introduction to shell (prioritize sections 1-4)
-
2020-02-20
-
2020-02-27
- Conda essentials (prioritize sections 1 and 3)
-
2020-03-05
- Introduction to python
-
2020-03-12
- Intermediate python
-
2020-03-19
- Python data science toolbox (1)
-
2020-03-26
- Python data science toolbox (2)
-
2020-04-02
- Cleaning data in python
-
2020-04-09
- Pandas foundations
-
2020-04-16
- Manipulating dataframes with pandas
-
2020-04-23
- Merging dataframes with pandas
- Hard deadline for datacamp material. All material by this time will count towards that component of the class grade.
Mini-project
- A rough outline of what you are planning on doing for your final project must be submitted as a pull request on github by Feb 27th.
Final-project
Some details regarding the final project:
- Pick a project that is interesting to you. You’ll find it easier to work on if you think it is fun or solves a problem that you have encountered in your daily work. Regarding content the sky is the limit.
- The project should be setup as a fork of (and pull request to) the project template
- Record your plans on github as you go
- Pay attention to what your minimally viable product is so that if you only achieve that you will at least have something to show for your efforts.
- Pay attention to the rubric listed below
- Not creating a formal python package is acceptable but must be justified.
- Joint projects are looked upon favorably.
- Breadth of python skills will be noted.
- Having commits from instructors is fine (though you don't get points for such beautiful code).
- Try to show weekly improvement (on github) during the final weeks
Grading the final project will be done using the following rubric (Note that the marks sum to 100. This is the percentage points of the marks available for the final project):
Project description / Specification
- Goals for the project are discussed and placed in the context of pre-existing work. This could take the form of other python projects or indeed software in any language. Not reinventing the wheel is an important result of good planning (0-5)
Documentation
- Comments are embedded in the code or Objects/functions have docstrings (0-5)
- Comments and docstrings are used (6-10)
- Documentation is thorough both in the readme and in the code itself aiding interpretation of the project (11-15)
Readability and reusability
- The code is poorly organized and difficult to interpret. Marks are lost for excessive duplication in the code or output in notebooks that harms attempts to understand the flow of processing. (1-10)
- Basic organization and modularity of the code is present (11-20)
- Careful organization of the code (commented, well-named variables in well-named functions in well-named modules, in a package if appropriate), coupled with attention to style guides for python. (21-30)
Testing
Marks will not necessarily be lost for failing tests.
- Tests should cover a significant fraction of the python code used. (0-5)
- Tests have aided development and have helped discover bugs in the code (6-10)
Gradual progress
- Little evidence of work on the project until the last week or two of term (0-5)
- Progress has been persistent indicating planning and continuous effort (6-10):
- Evidence of gradual work following the mini-project exists
- 2 weeks from the deadline there are passing tests, a working package, and a skeleton of code
- 1 week before the deadline a working product exists in the codebase.
"The product"
- The code technically works but does not show evidence of engagement (1-5)
- The project checks the boxes in the rubric effectively and is nicely implemented (6-10)
- The code attempts to solve a real-life problem, shows great progress both inside and outside class over the weeks of the project (11-20)
- The project is a roaring success. It's amazing to see what you can now do with python! You have earned the title of pythonista (21-30)
Related Documents
Design Document: BharatSeva AI
BharatSeva AI is a multi-agent orchestration system built on AWS using Amazon Bedrock Agents with Claude 3.5 Sonnet as the foundation model. The system deploys 10 AI agents (1 Master Orchestrator + 9 Specialist Agents) to assist India's informal sector workers in navigating government schemes across three domains: PM Vishwakarma (artisan credit), PMFBY (crop insurance), and BOCW (construction worker welfare).
OpenClaw Enterprise Transformation Plan
Transform OpenClaw from a single-user personal AI assistant into a **dual-mode platform** that is simultaneously:
Qwen Image and Edit: Open-sourcing and Local GGUF Generations with Lightning
Daniel Sandner, for article on https://sandner.art/
Qwen3-TTS — Model Reference
Models: `Qwen/Qwen3-TTS-12Hz-0.6B-CustomVoice` and `Qwen/Qwen3-TTS-12Hz-1.7B-CustomVoice`