Labdabeta 182 Posting Pro in Training Featured Poster


I am working on a moderately large web development system and have been charged with developing the server-side application for the web site. As a primarily local developer I have by far the most experience in C/C++. My favourite language is Ada, just to give you a sense of how much I value static compile-time error checking.

Thanks to this, I decided to start developing the web server using Wt. After discussing this with my group (this is a 2-year university project) I was met largely with disbelief. I am aware that most web servers are made in interpreted languages such as PHP, Python or Javascript (with Node.js), but I don't see an obvious reason why C++ would be a bad language for web development.

I am familiar with Python and Javascript. I use Python on a semi-regular basis to test my code and javascript regularly to make client-side web applications. Whenever I use these languages I find myself desperately missing the compile-time checking available in compiled languages. This is especially true when it comes to understanding functions. Having a type signature is very helpful when determining what a function does. Essentially it comes down to the fact that I can find a bug in C code in under 30 minutes no matter what, whereas a Python bug can sometimes elude python experts (I have a friend who does everything in python [he was my partner for a VHDL lab in first year and found a Python->VHDL compiler, just to give you a sense of his personality]) for hours.

However, I do not want to let my team down, and have been told repeatedly that I am insane for trying to use C++ for web server development. What do you recommend? Is C++ really the wrong tool for web development (like Python is the wrong tool for chip development)? If it is, what framework would you recommend for a compiler junkie like myself (from a cursory search, Node.JS seems like a decent choice)?

For some small background on the project: we're essentially creating a system to link people together based on two separate (though not exclusive) categories of users to work together on a common goal. We have a UI fully mocked-up and partially implemented in javascript and are only missing the server-side.

Any help is appreciated.