Recently I had a little freak out about the direction I was going with Walled City. I have been teaching myself to code for awhile now using PHP. I've come to a point where I feel I can have an opinion on it. Which is that there is something uneasy with PHP.
PHP was cobbled together with great haste as it grew from a simple formatting script to a programming language proper. I see great inconsistencies in naming schemes, argument order, shoving everything in the public namespace. I had even refactored the entire codebase to use an MVC patter with a single entry point, yet something still felt off. Mostly though I feel something in my gut. A feeling like my shiny new toy might be counterfeit. Something isn't quite right.
So I had a freak out and questioned whether I should scrap everything I've coded so far and start from scratch. I was going to do it all in Python. I was going to start over. I would scrap a year and a half of self taught coding and application architecture.
The vocal majority say to never rewrite. That to do so would be devastating. In my state of mind I gave it some thought, and I decided it wouldn't be that bad. I don't have revenue yet, users, or that much functionality. My hope was that I could replace what I had in a shorter time than it took to make it in the first place.
But I came to my senses. I have decided to stay the course and continue using PHP as the Walled City development language. There is nothing perfect in this world. Every programming language has it's drawbacks. The fact of the matter is that PHP is working as it should doing the job it should. My uneasiness with the language will be overcome by doing the best damn job I can do with it. The time lost to a rewrite, the functionality lost, isn't worth the benefits at this point.