21 October 2019

#036 - SQL, Node.js & JavaScript #100DaysOfCode

I am currently diving with multiple web technologies, mostly JavaScript, Node.js and SQL. I hope to learn how to secure databases and prevent SQL injection.

Well, that is part of my underlying intention, as I dip my twinkle toes on yet another ambitious side project. This time, I wish to recreate a fantasy football league. I'm not talking about the New England Patriots vs the Seattle Seahawks, but a traditional fantasy football (aka soccer) league.

You see, I grew up playing Championship Manager as a kid. The video game series was developed by Sports Interactive and I was captivated by the game logic that grew complex at every iteration in times with the ever-evolving game of football. After the split between Sports Interactive and former publisher, Eidos Interactive - Sports Interactive teamed up with SEGA and retained the database, engine and source code (which is a win-win for any games studio). The British games developer then rebranded the game to Football Manager, which in my opinion is more marketable than Championship Manager.

I am obviously not competing with the lads at Sports Interactive, but I am keen to expand my technical skills and explore database design and how to integrate a fully-fledged database in the form of a web application.

Security will be a personal issue for me, as I swivel my cybersecurity hat like a classic baseball cap.

However, I am keen to learn the ramifications of a dynamic dataset with multiple query calls. I will likely leave the UI design to the end (again) and focus more on the game logic. I will use Microsoft Excel to build my database and export it as a CSV to build my SQL database.

I have already coded an objectified framework of various classes using JavaScript. I am not sure whether to develop everything in JavaScript and (eventually) look to JavaScript frameworks to build certain components for rapid prototyping. Or should I use both JavaScript and PHP to build the web pages and screens?

My gut tells me to use JavaScript exclusively and leave behind extra programming language overheads. Provided that I configure the web server and database correctly and securely, whilst develop the game logic to restrict user input, then I should be golden.