Mailing List Archive


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [tlug] Continuous Integration



On 12 May 2016 at 19:03, Curt Sampson <cjs@example.com> wrote:
On 2016-05-12 11:57 +0200 (Thu), Josh Glover wrote:

> On 12 May 2016 at 10:52, Benjamin Kowarsch <trijezdci@example.com> wrote:
>
> > Imagine you are doing a major piece of work that will require several weeks
> > of effort before it is in a state where it can be tested. You still want to
> > be able to commit while you are doing this work, even if you cannot really
> > test it yet.
>
> That situation itself is serious architectural smell. If you cannot
> refactor by making small, local changes and propagating those
> outwards, you may have bigger problems that revision control.

No its not. First, some languages have separation of interface and implementation and designing a library that has several levels of abstraction often involves writing just the interfaces, test the ideas out by writing a bit of implementation to see if your function signatures make sense, possibly go back a few times altering the parameter lists. Furthermore you will spend a lot of time just modelling types without any code.

If the library has several layers of abstraction you will probably refactor it several times before you actually implement it. You might implement some of the functions to test out ideas and you may test those, but most of the library is still just skeleton and can't yet be tested other than in your head.

The way I work, I spent about 90% on design and only 10% on implementation. When  I have my designer hat on, I can go for weeks just sketching out ideas, refine them over time, retract, replace, repeat, none of that is testable other than by imagination.

Home | Main Index | Thread Index

Home Page Mailing List Linux and Japan TLUG Members Links