This has a very non-SEO article name, as I need to fit it into a caption in github.

What opensource

I was talking with a not-colleague about one of their clients current system. I noticed what I say I do (in terms of architecture and process); and what my open source list show contradict each other. That I can install wordpress, and write an article on how to install wordpress is not worth doing. This is a list of why I invested my spare time:

  • my web-renderer (accessible as my boring site);
    • I needed PHP5 experience; but my CTO didn't want the risk of upgrading operational platforms
    • First version was about 10days work between contracts.
    • started 2009, platform version 2 was 2013, the source in github is build 3 from 2016, and much better managed, build 4 was skin only, and 2018
  • A minimal customer-managed CMS (was accessible as TBBS website);
    • I needed experience in Agile development, and YAGNI approach.
    • 2011 delivered in 2 months, end to end; work only at weekends
  • punit,
    • I wanted my phpunit skelgen tooling in Perl
    • ? 2015 ?
  • phpunit-skelgen,
    • I did maintenance on a older project that the owner had shelved to make it PHP7 and make the result unit-tests suit me better
    • ? 2016 ?
  • sums + mocha demo in JS
    • I wanted to have a reference demo for setting up Mocha.
    • The Mocha bit was a few evenings. It took ages to get my trees to balance properly, so operator precedence worked correct. I think 2018
  • My current shopping app.
    • I wanted more Typescript experience.
    • The entire vue3 + typescript build failure wasn't on the roadmap, and didn't occur until 4weeks in
    • Accessible demo of cypress tests
      • Done in 2022

Why testing

On my personal github repo, there are 15 projects (one of which is an aggregate); and source for three test frameworks in three different languages and four test templates/ libraries; on my website there are loads of articles for test technologies. Why all this attention on testing?

Reasons

  • I mostly work in startups, there isn't enough daytime budget to do “nice to have” items; have to MoveFastAndBreakStuff (not affiliate link);
  • I do use tools built by someone else where possible, as its cheaper; these are the ones I can't find (or last version isn't maintained);
  • Most people do not think test tech as being a trade secret or high value IP; so they see no conflict of interest with it slopping around between projects;
  • Being abit dyslexic, there are times when I make ridiculous typo-style errors, tests avoid these going anywhere;
  • Test infra/automation is mostly immune to fashion; so if I make a tool now, it will still be useful in 5Y time;
  • I like being able to deliver a fairly high level of test coverage at a low cost. Managing the toolchain is required, and writing it helps a large margin (referencing the tweaks to phpunit-skelgen).
  • Some of my test solutions are really creative, er, solutions.

Some similar articles in worklog