How Many Posts are Theoretically Possible? Part 2: Electric Boogaloo

Last month I wrote a post about trying to mathematically determine how many posts are theoretically possible. This is the sequel to that post trying to estimate the amount of energy it would take to generate every post theoretically possible. A third part to this post will try to answer whether or not there would be enough time in the life of the Universe to generate every post.

For this thought experiment we first need to establish the type of system that would be used. When it comes to Twitter there are already several Arduino projects available for interacting with that centralized microblogging platform. As I learn more about programming I hope to create similar projects for and Hive.

The closest I can find that currently exists is the steemduino. It is an Arduino library for the steem blockchain created and open sourced by @bitcalm. It's great that steemduino is open sourced since it appears that @bitcalm abandoned his steemit account around the end of 2018 and hasn't been on the Hive platform since it hardforked from Steem. I presume that with some code modification steemduino can become hiveduino.

Image Source: @bitcalm

The steemduino as it currently exists seems rather passive with its blockchain functionality. Displaying upvoter usernames isn't the same as posting a randomly generated 280 character message to #hive-193084. Also, the @bitcalm post warns that memory allocation is an issue for steemduino. Perhaps the Arduino Mega 2560 board should also be connected to a Raspberry Pi to give this thought experiment the brute force of a CPU that a microcontroller simply can't perform.

Without the code I imagine the physical layout for this thought experiment to randomly generate and post messages looks like an Arduino Mega 2560 board, Raspberry Pi 4 Model B board, Arduino Ethernet Shield, Arduino SD card module, real-time clock module and one or two other miscellaneous I am probably overlooking. Things like a hardware random number generator to overcome the issue of pseudo random numbers generated by the Arduino board which affects the likelihood that more duplicate posts would be generated.

I would guesstimate that the entire system probably would consume at most 15 watts in its most greedy situation. Every five minutes it would send out a randomly generated post. When it's not posting it can randomly generate the next post and store the text during the time window. It could also probably perform some other busy work like checking the account balance or staking any rewards for last week's upvoted randomly generated posts.

Perhaps the hardware should be something more suited for the task. An alternative to the Mega 2560 board would be blockduino. Blockduino claims to be the "Arduino for the blockchain". Although open sourced I can't find any reliable specifications for blockduino but there is a block diagram on the project's github. From that I can see the blockduino is designed around SAMA5D27 SOM1 which with a typical current consumption of 120mA to 160mA and a 3.3 volt power supply blockduino appears to use slightly less power than the Atemga2560.

Whether steemduino or blockduino is used in tandem with a Raspberry Pi I believe that 15 watts is a good estimation of what the power consumption of a real world system would be. I am also confident for the purpose of Fermi estimation that 15 watts is in the same order of magnitude of what the actual power consumption would be.

15 watts is 15 Joules per second. 1 Wh = 3,600 Joules

One post every 5 minutes uses: 15 J x 300 s = 4.5KJ

It might also be helpful if during the time between posts our thought experiment project can check to make sure that the randomly generated post isn't a duplicate of a previous post on If it is a duplicate it could be deleted and a new post could be generated. After all that the question is: Are we calculating energy used to generate all theoretically possible posts or just the posts that might have some discernable meaning?

Since I did both theoretical number of possible posts we'll calculate energy for both.

  • 4.5x10^4 Joules x 10^1120 = 4.5x10^1124 Joules used to generate all possible posts

  • 4.5x10^4 Joules x 10^1106 = 4.5x10^1110 Joules used to generate posts which might have some discernable meaning

What does this mean? For perspective according to an estimate by 120 gigawatts per second was used by the bitcoin network in 2020. 120 GW in one second is 1.2x10^11 Joules. A one megaton atomic bomb would release 4.18 x 10^15 Joules of kinetic energy according to Imagine the Earth's sun. According to the University of Texas McDonald Observatory if the entire mass of the Sun was converted into energy through E=MC^2 it would be 1.8x10^47 Joules.

Clearly generating all possible posts randomly takes a huge amount of energy. Keep in mind that this is really a small amount of energy being consumed over a huge amount of time. If our thought experiment was built and turned on today it would start around 13.7 billion years after the Universe began. In the third part of this post series I'll examine if there's enough time to generate every possible post.