After getting the launcher and daemon to communicate with each other, it's time to refactor the system until its design fits our current understanding of the best possible design. Right now it's possible to see that some message passing infrastructure is clearly needed, so that shall be the primary focus of improvement.
2011-06-30
2011-06-29
2011-06-28
2011-06-27
Let's Code Jumi #13: Running Zero Tests (Part 1)
Creating a walking skeleton to get the project started. We will start with an end-to-end test of running an empty test suite, which will drive the design for communicating with the daemon process.
2011-06-24
2011-06-23
2011-06-22
2011-06-21
2011-06-19
2011-06-17
2011-06-16
2011-06-15
Let's Code Dimdwarf #58: Session IDs
Once we have timestamps, generating session IDs is trivial (but anyways worth writing a test for). Then the real thing is mapping those IDs to sessions, which is far from trivial.
2011-06-13
2011-06-12
2011-06-11
2011-06-10
Let's Code Jumi #1: Project Setup (Part 1)
Jumi is my latest side project and it will be a test runner for the JVM. Its short-term goals are to run tests faster (via parallelism, class loader caching, heuristics and stuff), provide a better user experience than existing test runners, and to overcome limitations of JUnit's test runner which cause an impedance mismatch with for example most of Scala's testing frameworks. Jumi's long-term goal is to be supported by every build tool and IDE, and to surpass JUnit as the de facto test runner on the JVM.
I'll be documenting the development of this app as screencasts also for the purpose of being some research material (I know some researchers at the University of Helsinki who are interested in it). The resolution is higher (1920x1200 vs. 1440x1080) and font smaller (14 vs. 16) than in my previous videos, to make it more practical for me to do programming. Also I will try to optimize my release process so that I can release episodes faster with less effort. For example I will minimize post-production, and write a new name and description only for each theme instead of each episode.
Here is the first episode. Enjoy!
Project Setup (Part 1)
Creating a multi-module Maven project structure and using end-to-end tests to test-drive the build configuration, especially some unusual build requirements (i.e. putting a JAR in a JAR and hiding external dependencies).
2011-06-09
Let's Code Dimdwarf #57: Thread-Safe Clock
The factory for generating unique timestamps must be thread-safe. So I will write a test for thread-safeness and start using an AtomicReference.