I started programming because I was a hardware guy who was bored, I thought that the problems solved on the software side were much more interesting than the hardware ones. At that time, most of the electric buses that I worked on were serial, some moving data reached 1.5 megabits!;)
Over the years, they turned into parallel buses in order to speed up the data exchange, in the end, the transmission of 8/16/32/64, regardless of the fact that the bit simultaneously speeds up the transfer. Well, our ability to create and detect state changes became faster and faster, to such an extent that we could output data so quickly that interference between parallel paths or cable wires made signal cleaning too costly, and we still get reasonable performance from serial interfaces, hell, some graphical interfaces even happen via USB for a while.
I think that now I see that I have such a tendency in software, our processors have become faster and faster, so we managed to create "serial" software. Now we are faced with speed in processor speed, so we add kernels or "traces" to the mix and spend a lot of time and effort on how to use them correctly. But I also see what, in my opinion, is advancing in such things as optical switching and even quantum computing, which can lead us much faster, and I expected again that "serial programming" would make the most sense.
What are your thoughts?
mezmo source
share