Computer systems are made up of computers which process algorithms in order to achieve a results. The legal system is made up of courts that intrepret laws in order to decide how to impose justice. Both are systems where a processer interprets rules and applies them to input to produce an output. For computer systems programmers write programs. For the legal system, laywers write laws.
Similar problems are experienced by both systems. For computer system once a program is shipped changing behaviour is very difficult because of backwards compatibility and user expectations. For the legal system, once a law is established change the law is difficult because expectations have already been set for standards of behaviour that might retroactively change an act from legal to illegal causing problem for society.
The legal system falls short of computer systems in a number of ways. For computer system the programmer can write the program and then test the program with expected input to see if the system behaves as expected. This is a very important part of the development cycle that helps ensure that the program works as expected. Without this kind of testing the program most likely will not work correctly. The legal system has no such process. This is a very big flaw. Based on experience with computer systems it should be expected that laws do not work as intended.
Programmer have access to debugged which can be used to see how programs process the input to produce the output. Not only do debuggers help make the program better they make the programmer better. Writing rules is a skill that is greatly enhanced by observation of the rules in action. Programmers that have never used a debugger would be very poor programmers. Lawyers in the legal system have no such ability to analyze the effect of their rules on real life cases. One would expect lawyers to be unskilled at writing rules compared to programmers that learned programming with debuggers.
The software development life cycle includes a workflow where customer can report problems with the expected behaviour of the computer programs. Bugs will be recorded and distributed to programmers so the algorithm can be updated to behave correctly. Without this feedback mechanism programs would over time become very difficult to use because of incorrect behaviour. The legal system has no such workflow to pass experience applying the legal system back to the lawyers designing it.
I wonder what the legal system would look like if it was designed and implemented like programs.
No comments:
Post a Comment