Michael Pyrcz, PhD, P.Eng (daytum Founding Advisor)
1. Transparency: No Compiler Accepts Hand Waving!
Coding forces your logic to be clear for any other scientist or engineer to review
2. Reproducibility: Run it, Get an Answer, Hand it Over, Run it, and Get the Same Answer
This is a main principle of the scientific method
3. Quantification as a Source of Perspective
Programs need numbers. Feed the program and discover new ways to look at the world
4. Open-Source – Leverage a World of [Free] Brilliance
Check out packages, snippets, and be amazed with what great minds have freely shared
5. Break Down Barriers: Don’t Throw it Over the Fence
Sit at the table with the developers and share more of your subject matter expertise
6. Deployment: Share it With Others and Multiply the Impact
Performance metrics or altruism, your good work benefits many others
7. Efficiency: Automate the Boring Stuff
Build a suite of scripts for automation of common tasks and spend more time doing science
8. Improved Time Management: How Many Times Did You Only Do it Once?
It often takes 2-4x as long to script and automate a workflow that you do (Hint.. It’s usually worth it)
9. Be Like Us and Continuously Improve: It Will Change You
Users feel limited, while coders are able to truly harness the power of software and hardware
Note: Any type of coding, scripting, workflow automation matched to your working environment is great. We don’t all need to be C++ experts. In addition, we respect the experience component of geoscience and engineering expertise, which is beyond coding and is essential to workflow logic development, best use of data, and application of data analytics and science. Finally, some expert judgement will remain subjective and not completely reproducible (i.e. humans need to be involved!)
When Michael is not building python packages or mentoring students, he’s either running, out on his Jeep, or kayaking around Lake Austin. You can find him on Twitter here, and his YouTube channel here.