status: in progress


“Anything that can go wrong will go wrong”.


  • Create folders for input and output
  • Create virtual environments when required
  • Give meaningful names to your scripts
    • Reserve the first 10 lines of your script to write a readme- Answer these questions 1. What does this script do? 2. What is the input of this script and the output? 3. What modifications must the reader do to execute their version of this script?
  • Write a list of imports and add comments to imports that are unique to your script.
  • Writing good scripts
    • After writing a good readme, begin every script with the main() function. That gives the reader a good idea of the flow of the code.
      • Every function written after main() should have a brief description of what the purpose of that function is.
        • Use docstrings to do them
      • Names Name classes in camelCase Variables,function names in lowercase; separate long names by underscore Constants in CAPITALS
  • Pickle your data after pre-processing
  • Seed your script for reproducability
  • Save your model

  • Save your predictions
  • Log your metrics
  • Error Analysis
  • Write Deployment-ready code