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.