From Python to Lua: Why We Switched
I&#x27;m the founder at Distelli and I just want to add a quick bit of background around the original python decision (2.6 vs 2.4) as well as the decision to &quot;rewrite in Lua&quot;.<p>1. I started the company as a single founder and wrote the first version of the agent. See this HN post that gave me the encouragement to keep going (thanks HN!) - <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=6059481" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=6059481</a>.<p>2. I wrote the original agent in python 2.6. It was great because I could use things like python-requests (which was awesome!). However my first encounter with an  enterprise customer showed me that was not feasible because they were running only python 2.4 and would not be upgrading for another 2 years.<p>3. I had the choice of either not getting the customer or back porting the code to Python 2.4. I chose to back port the code to python 2.4 and get the customer. This was a lot of work but worth it because I was able to then raise a round with a16z. - <a href="https:&#x2F;&#x2F;www.distelli.com&#x2F;blog&#x2F;distelli-series-a-funding" rel="nofollow">https:&#x2F;&#x2F;www.distelli.com&#x2F;blog&#x2F;distelli-series-a-funding</a><p>4. When Brian joined Distelli, he actually worked on the Python code for many months and made many improvements and added many features. When it was time to add the streaming logs feature he built the prototype in Lua just to prove that the idea would work and then we talked extensively to figure the direction we should go in.<p>5. We decided to move to Lua because Brian was very familiar with it and it was a lightweight language and we could ship a single download with zero dependencies. We also looked at using Go. At the end of the day the decision was Brian&#x27;s to make and own as the senior engineer on the project. The passage of time has convinced me that was the right decision.<p>I&#x27;m sure we could have stayed with Python with all the suggestions on this page, but we decided to go with Lua. It was a good fit for what we needed and honestly I felt that my original code was not in great shape and would need a lot of work to refactor and a rewrite felt like the right decision at the time. Looking back I still think it was the right decision and I&#x27;m very happy with the end result.<p>edit: grammar