Why you should consider using asynchronous programming for your eDiscovery work
To most programmers in eDiscovery world, asynchronous programming might sound like something new. However, the concept has existed for decades, and there are many implementations in pretty much every mainstream languages. If you do not know it, you must have heard of multi-threading/multi-processing for concurrency. Async programming is a way of achieving concurrency by only using one thread! Because there is no need to start new thread or new process, there is no need for OS to participate. Everything is done within programming language itself. A simple analogy how asynchronous programming works Let's say you are working on 3 tasks. You can start each task immediately, and the tasks will go on by themselves without needing you to intervene till they finish. Let's assume task A takes 5 mins, task B takes 3 mins, and task C takes 2 mins. The traditional way of finishing them is doing them one by one. Order doesn't matter. You will need 10 mins to wait for them to all finish...