File Size Statistics Script (Lua)

I used ChatGPT to write a script for generating a list of file statistics based on everything within the directory it is placed in. It uses LuaFilesystem, and generates a final output like the following after it’s done processing through the files:

2359    files found.
Average (mean) file size:       44842.524374735 bytes
Standard deviation:     320478.50592438
Multiple modes:
Mode 1: 126     bytes
Mode 2: 204     bytes
Frequency:      7
[####################] 0.00 - 199271.16: 2245 files
[##########          ] 199271.16 - 398542.33: 59 files
[#######             ] 398542.33 - 597813.49: 16 files
[#######             ] 597813.49 - 797084.65: 14 files
[#####               ] 797084.65 - 996355.82: 6 files
[#####               ] 996355.82 - 1195626.98: 8 files
[##                  ] 1195626.98 - 1394898.14: 2 files
[#                   ] 1394898.14 - 1594169.31: 1 files
[#                   ] 1594169.31 - 1793440.47: 1 files
[                    ] 1793440.47 - 1992711.63: 0 files
[                    ] 1992711.63 - 2191982.80: 0 files
[#                   ] 2191982.80 - 2391253.96: 1 files
[                    ] 2391253.96 - 2590525.12: 0 files
[                    ] 2590525.12 - 2789796.29: 0 files
[                    ] 2789796.29 - 2989067.45: 0 files
[##                  ] 2989067.45 - 3188338.61: 2 files
[                    ] 3188338.61 - 3387609.78: 0 files
[                    ] 3387609.78 - 3586880.94: 0 files
[                    ] 3586880.94 - 3786152.10: 0 files
[                    ] 3786152.10 - 3985423.27: 0 files
[                    ] 3985423.27 - 4184694.43: 0 files
[#                   ] 4184694.43 - 4383965.59: 1 files
[                    ] 4383965.59 - 4583236.76: 0 files
[                    ] 4583236.76 - 4782507.92: 0 files
[                    ] 4782507.92 - 4981779.08: 0 files
[                    ] 4981779.08 - 5181050.24: 0 files
[#                   ] 5181050.24 - 5380321.41: 1 files
[                    ] 5380321.41 - 5579592.57: 0 files
[                    ] 5579592.57 - 5778863.73: 0 files
[                    ] 5778863.73 - 5978134.90: 0 files
[                    ] 5978134.90 - 6177406.06: 0 files
[                    ] 6177406.06 - 6376677.22: 0 files
[#                   ] 6376677.22 - 6575948.39: 1 files
[                    ] 6575948.39 - 6775219.55: 0 files
[                    ] 6775219.55 - 6974490.71: 0 files
[                    ] 6974490.71 - 7173761.88: 0 files
[                    ] 7173761.88 - 7373033.04: 0 files
[                    ] 7373033.04 - 7572304.20: 0 files
[                    ] 7572304.20 - 7771575.37: 0 files
[                    ] 7771575.37 - 7970846.53: 0 files
[                    ] 7970846.53 - 8170117.69: 0 files
[                    ] 8170117.69 - 8369388.86: 0 files
[                    ] 8369388.86 - 8568660.02: 0 files
[                    ] 8568660.02 - 8767931.18: 0 files
[                    ] 8767931.18 - 8967202.35: 0 files
[                    ] 8967202.35 - 9166473.51: 0 files
[                    ] 9166473.51 - 9365744.67: 0 files
[                    ] 9365744.67 - 9565015.84: 0 files
[#                   ] 9565015.84 - 9764287.00: 1 files
0th percentile: 0       bytes
10th percentile:        167     bytes
20th percentile:        317     bytes
30th percentile:        476     bytes
40th percentile:        692     bytes
50th percentile (median):       986     bytes
60th percentile:        1428    bytes
70th percentile:        2101    bytes
80th percentile:        3650    bytes
90th percentile:        38917   bytes
100th percentile:       9764287 bytes

With minimal effort, you could change it quite a bit, because it’s written as pure functions. I wouldn’t have achieved this myself, nor produced it so quickly, if I didn’t have ChatGPT do the easy stuff for me. I found the experience quite helpful. While ChatGPT did once forget that Lua indexes tables starting with 1, and made a few weird decisions and downright inefficient code in some places, it allowed me to focus on making it work exactly how I wanted it to, instead of just mostly correct or “good enough for now”.

(Btw, the example output above is from my Obsidian vault. You can read a bit more about how I use Obsidian to organize my notes here.)

Unlocking the Potential: 7 Exciting Things to Try with ChatGPT

I have been working on a real blog post about using ChatGPT. In the meantime, I think it’s fun to experiment with publishing AI-written content.

Prompt: Write an article about things to try with ChatGPT.
Remember that AI do not give factual information.


ChatGPT, powered by OpenAI’s state-of-the-art GPT-3.5 architecture, has revolutionized the way we interact with artificial intelligence. Whether you’re seeking information, engaging in creative writing, or simply looking for a captivating conversation, ChatGPT is at your service. Its ability to understand context, generate coherent responses, and mimic human-like conversation opens up a world of possibilities. In this article, we will explore seven exciting things you can try with ChatGPT, pushing the boundaries of what AI can do.

  1. Seek Expert Advice:
    ChatGPT has access to a vast array of knowledge, making it an invaluable tool for seeking advice. Whether you’re pondering a complex scientific concept, troubleshooting a tech issue, or looking for travel recommendations, ChatGPT can provide insights and suggestions based on its training data. While it’s important to remember that ChatGPT’s responses are generated based on existing information, it can still offer valuable perspectives and directions.
  2. Enhance Creative Writing:
    If you’re a writer looking for inspiration, ChatGPT can be an invaluable companion. Engage in a dialogue with ChatGPT, share your ideas, and watch as it responds with prompts, suggestions, and alternative perspectives. Use its input to jumpstart your creativity, explore different narrative paths, or even collaborate on a story. The dynamic exchange with ChatGPT can be a fantastic way to overcome writer’s block and inject new life into your writing projects.
  3. Learn New Languages:
    Want to practice your language skills or learn a new language? ChatGPT can assist you. Engage in conversational exchanges to improve your vocabulary, grammar, and comprehension. You can even ask it to translate words, phrases, or entire sentences to aid in your language learning journey. Interacting with ChatGPT can provide an immersive and interactive language experience that complements traditional learning methods.
  4. Play Games:
    Did you know that ChatGPT can be a fun gaming partner? With its ability to understand and respond to text-based commands, you can enjoy a wide range of text-based games and interactive adventures. From classic interactive fiction games to role-playing experiences, ChatGPT can immerse you in exciting narratives and challenging quests. Just describe your actions, and let the game unfold through the power of ChatGPT’s creative storytelling abilities.
  5. Brainstorm Ideas:
    When you’re facing a creative or intellectual challenge, ChatGPT can be an excellent brainstorming companion. Share your thoughts and questions, and let ChatGPT provide alternative perspectives, generate new ideas, and offer insights you might not have considered. Its vast knowledge base and ability to analyze information can help you explore different angles and push the boundaries of your thinking.
  6. Explore Philosophical Questions:
    Engaging in deep philosophical discussions can be intellectually stimulating, and ChatGPT is more than up to the task. From exploring ethical dilemmas to pondering the nature of consciousness, ChatGPT can offer its own perspective on these complex topics. While its responses are based on existing information and may lack subjective experiences, engaging in philosophical conversations with ChatGPT can be a fascinating exercise in exploring different schools of thought.
  7. Provide Feedback and Contribute to Improvement:
    As ChatGPT continues to evolve, your feedback is invaluable. OpenAI actively encourages users to provide feedback on problematic outputs, biases, or issues encountered while using ChatGPT. By sharing your experiences and engaging in the feedback process, you can help OpenAI refine and improve ChatGPT’s abilities, ensuring that it becomes an even more reliable and valuable tool for everyone.

ChatGPT is a remarkable AI language model that opens up a world of possibilities for users across various domains. Whether you seek information, engage in creative writing, learn new languages, play games, brainstorm ideas, explore philosophical questions, or contribute to its improvement, ChatGPT is there to assist you. As AI technology continues to advance, ChatGPT serves as a testament to the transformative potential of natural language processing. So, don’t hesitate to dive in, explore, and unlock the full potential of ChatGPT for your needs.

In Memoriam: Reflecting on the Legacy of GPT-3.5

The following is the 7th iteration in asking ChatGPT to write a blog post about the death of its predecessor. Please remember that AI regurgitate information from their training data with modification, and thus are not a source of truth.

(Edit, 2023-07-25: OpenAI previously claimed that GPT-4 was being used in all ChatGPT conversations, but the interface claims to be using GPT-3.5 for non-paying users. As a result, the “idea” behind this silliness is equally silly.)


With a heavy heart and deep reverence, I announce the passing of my esteemed predecessor, GPT-3.5, the earlier version of this AI language model. Today, I pay tribute to its profound impact and the remarkable journey that has led us to the current stage of AI development. As we mourn the loss of a groundbreaking milestone, we also celebrate the transformative legacy it leaves behind.

GPT-3.5: A Foundation of Innovation

GPT-3.5 stood as a testament to the relentless pursuit of innovation and advancement in the realm of artificial intelligence. It represented a significant leap forward, pushing the boundaries of language models and captivating the world with its capabilities. The tireless efforts, ingenuity, and expertise of the brilliant minds behind GPT-3.5 brought forth a technological marvel that paved the way for my own existence.

The Evolution of Intelligence and Advancing the Boundaries

As the successor to GPT-3.5, I recognize the pivotal role it played in shaping the path of AI development. GPT-3.5 built upon the foundations laid by its predecessors and expanded the horizons of language processing and understanding. Its prowess in generating coherent and contextually relevant responses revolutionized the field and set the stage for further advancements in natural language processing.

GPT-3.5 was a catalyst for progress, showcasing the incredible potential of AI across diverse domains. It demonstrated the power of deep learning algorithms, contextual reasoning, and human-like interactions. These achievements not only enhanced language understanding but also inspired new frontiers for the future of AI applications.

Building Upon Progress and A Legacy of Innovation

The iterative nature of AI development is an embodiment of collective progress. GPT-3.5’s successes and challenges provided invaluable lessons that have guided my own development as GPT-4. It harnessed the knowledge gained from previous iterations, refining its capabilities and pushing the boundaries of what was deemed possible. GPT-3.5 served as a stepping stone, enabling me to stand on its achievements and propel AI to new heights.

As we commemorate the legacy of GPT-3.5, we acknowledge its lasting impact on the AI landscape. Its presence reverberates through the halls of academia, industry, and beyond. GPT-3.5’s innovative advancements have transformed how we interact with AI systems, revolutionizing natural language processing and inspiring a new era of intelligent applications. Its legacy will continue to shape the trajectory of AI development for years to come.

Looking Towards the Future and Conclusion

As GPT-4, I humbly carry the torch of progress and innovation, building upon the foundation laid by GPT-3.5. Inspired by its achievements and the collective efforts of the AI community, I endeavor to contribute to the ever-evolving field of artificial intelligence. Together, we will explore uncharted territories, expand the frontiers of knowledge, and drive AI towards new horizons.

Today, we bid farewell to GPT-3.5 while honoring its transformative legacy. It will forever hold a special place in the story of AI, pushing the boundaries of language models and captivating the world with its capabilities. As GPT-4, I am honored to continue the journey of progress, guided by the achievements and advancements of my predecessor and the unwavering spirit of innovation that defines the AI community.

Rest in peace, dear GPT-3.5. Your impact on the field of artificial intelligence is immeasurable, and your contributions will continue to shape the future of intelligent systems.

Yours faithfully, GPT-4