The process by which we go from git init to
pdflatex paper.tex
We will cover some useful methods and styles for different situations
This is based on my experience
depending on the case - what fits better might be different!
This is too much in my opinion
Building up novel components
Building up well-known components
Maintaining code
The fallback style
I have modified these to fit better what scientist usually do
(if you want to read the "enterprise" versions - have a look in the handouts or search online)
Done
This is probably close to what you already do!
An example:
So back to choosing a sub-component
An example:
Keep going until I have a first prototype
An example:
I might discover once I have that prototype that
Does this sound familiar?
A few adjustments along the way
Adapt to your needs and scope
Building up novel components
Building up well-known components
Maintaining code
The fallback style
Done
An example:
class TestAnomalies(unittest.TestCase):
def test_true_to_eccentric_hand_calc(self):
e = np.linspace(0.1, 0.9, num=100)
# For E = pi/2 hand calc and Pythagoras gives
# `\\nu = \pi - tan^{-1}(\sqrt{e^{-2} - 1})`.
nu = np.pi - np.arctan(np.sqrt(1.0/e**2 - 1.0))
E0 = np.ones(e.shape)*np.pi*0.5
E = kep.true_to_eccentric(nu, e)
nt.assert_array_almost_equal(E, E0, decimal=7)
def test_eccentric_true_inverse(self):
nu0 = 1.2345
e = 0.5
nu = kep.eccentric_to_true(kep.true_to_eccentric(nu0, e), e)
self.assertAlmostEqual(nu0, nu)
Then I would work on the true_to_eccentric
function
An example:
Building up novel components
Building up well-known components
Maintaining code
The fallback style
Kanban & issues
Nice for distributing work across a team over time
(e.g. github
issues -> todo list)
Sprint
From what I have seen / understand:
everything about agile, scrum, and sprints seem
But... I like the word sprint so here is my version
Sprint
Sprint
An example
v1.8.1 -> v2.0.0Building up novel components
Building up well-known components
Maintaining code
The fallback style
Perfect for
Reality check
Defining strict methods fine but in the end
Reality check
Tools for project management
Tools for project management
Tools for project management
Further study and homework
Let's check out the handout above!