Live data from Hacker News

Building a website with C++ (CppCMS)

kukuruku.co

1–10 of 19 posts

Re: Building a website with C++ (CppCMS)

#3
Surely, in 2014 we can do better than CppCMS...

srv.applications_pool().mount(cppcms::applications_factory());

Not doing us any favours there, at all. C++ is crying out for a bit of 'hip' and there's really no reason, with C++11 now pretty ubiquitous, we can't have some Sinatra-inspired frameworks.

What is it that really holds C++ back from being a solid choice for web frameworks?

Re: Building a website with C++ (CppCMS)

#4
post #3

Surely, in 2014 we can do better than CppCMS... srv.applications_pool().mount(cppcms::applications_factory ()); Not doing us any favours there, at all. C++ is crying out for a bit of 'hip' and there's really no reason, with C++11 now pretty ubiquitous, we can't have some Sinatra-inspired frameworks. What is it that really holds C++ back from being a solid choice for web frameworks?

> C++ is crying out for a bit of 'hip'

It is?

> What is it that really holds C++ back from being a solid choice for web frameworks?

Language wise? Not much. It's more of a library and culture "problem". There's no inherent reason why C++ can't be used for web frameworks.

Re: Building a website with C++ (CppCMS)

#5
post #3

Surely, in 2014 we can do better than CppCMS... srv.applications_pool().mount(cppcms::applications_factory ()); Not doing us any favours there, at all. C++ is crying out for a bit of 'hip' and there's really no reason, with C++11 now pretty ubiquitous, we can't have some Sinatra-inspired frameworks. What is it that really holds C++ back from being a solid choice for web frameworks?

What is it that really holds C++ back from being a solid choice for web frameworks?

Its verbosity. I'll wager that it'll be a long time before a C++ web developer will be able to write faster code than an equally competent Python, Ruby, Haskell, or Clojure web developer.

Re: Building a website with C++ (CppCMS)

#7
It seems (to me) like if statically typed, compiled languages are your bag, and you want to create web applications, Go is the right choice.

I recently finished the MVP for a weekend side project in Go, and I had a lot of fun (coming from a Node.js/Ruby background). I finally understood the draw of static typing (the compiler saved me a ton of time), but I didn't feel limited by the type system, nor encumbered by the syntax. The performance boost was also quite nice (not even optimized, and it still made the equivalent Node implementation's performance look mediocre by comparison). It's hard to imagine needing even more performance, since the Node version still would have been "good enough", and needing it so badly that it'd be worth muddling through C++ to get it (especially given the stark contrast of managing concurrency in Go vs C++).

Re: Building a website with C++ (CppCMS)

#8
post #5
post #3

Surely, in 2014 we can do better than CppCMS... srv.applications_pool().mount(cppcms::applications_factory ()); Not doing us any favours there, at all. C++ is crying out for a bit of 'hip' and there's really no reason, with C++11 now pretty ubiquitous, we can't have some Sinatra-inspired frameworks. What is it that really holds C++ back from being a solid choice for web frameworks?

What is it that really holds C++ back from being a solid choice for web frameworks? Its verbosity. I'll wager that it'll be a long time before a C++ web developer will be able to write faster code than an equally competent Python, Ruby, Haskell, or Clojure web developer.

The CppCMS blog implementation, according to CLOC, is about 3,200 lines. It supports comments, markdown, multiple database backends, LaTeX formulae, CAPTCHAs, caching, RSS feeds, and has an admin interface. That's a pretty dense result for an MVC framework without any magic.

And how do you account for PHP? Oodles of documentation, fast iteration, and swaths of libraries out of the box seem to have trumped basically every other concern, including its absurd verbosity.

Backend languages don't and shouldn't matter, especially when most webdev backend is no more sophisticated than your average CLI and you're probably going to end up spending most of your time dicking with CSS and HTML anyway. You could probably count equivalent productivity lost in tens of thousands of lines of C++, just scanning the dizzying array of loonybin.js frameworks for frontend work.

I'd gleefully do any backend job in C++ if it meant someone else handing me the database schema and the frontend ready to go.

Re: Building a website with C++ (CppCMS)

#9

It seems (to me) like if statically typed, compiled languages are your bag, and you want to create web applications, Go is the right choice. I recently finished the MVP for a weekend side project in Go, and I had a lot of fun (coming from a Node.js/Ruby background). I finally understood the draw of static typing (the compiler saved me a ton of time), but I didn't feel limited by the type system, nor encumbered by the…

Why Go and not Haskell?

Re: Building a website with C++ (CppCMS)

#10
A friend of mine is recently writing C++ web framework similar to Python Flask.

It has many interesting features like compile-time routing URL parameter checking, easy and fast (probably fastest among C++ json libs) json implementation by taking full advantage of C++11. If interested, take look of following code and repository:

https://github.com/ipkn/crow/blob/master/example.cpp

Post reply on HN