Wt : Couner punch of native technology toward Web tech?

Well… actually it can’t be called “counter punch” because it’s not about to replace AJAX/Web App technology which has boomed for years.

Wt is very interesting C++ framework/library to develop web apps using C++.
Well, C/C++ is very powerful and the most important language among computer languages.
With C/C++ there is nothing you can’t make.

However, this Wt framework is very unique, because the pattern of writing HTML/AJAX code is like to create another native application. if you have seen code for Qt and other widget libraries, you will see its similarity very easily. Instead of adding, inserting and removing element in DOM structure, the style is very similar to declare a button, etc.

Well, AJAX framework like Objective-J/Cappuccino is to wrap Javascript to make it possible to use Javascript like native languages, in this case Objective-C and its framework Cocoa.

You can understand this Wt as an opposite. This Wt uses C++ to make web apps by taking the styles and patterns for how to create elements from native application programming paradigm.
Well..the both resembles because Obj-J/Cappuccino is also about bringing native coding style to web programming. Howevver, in the case of Obj-J/Cappuccino, it is based on JavaScript/AJAX and mimic native programming. Wt is native programming framework, uses C++ and take the programming style of native programming but makes Web apps. =>The more I read about Wt, the less I get to be sure of this. Even their document is not clear about this. Their introduction looks to be written by some non-S/W engineers. What is it? is it native framework and use C++ ( not a JavaScript wrapper to make it look like C++ ?) but generates JavaScript/CSS/HTML in the end? Before building it for myself, I’m not sure of that.

You may take it for granted.. but it feels like to me that it lies between something easily imaginable and something can’t be easily imaginable.

I just saw some sample code and tutorial. I didn’t read the whole part. But does it generate AJAX code/HTML files/CSS files in the end?

Anyway it is very interesting trial.

http://www.webtoolkit.eu/wt/

NOTE : http://www.webtoolkit.eu/widgets/layout/grouping-widgets
By looking at the sample code, it’s highly probable that the programmers are ex- or current Qt programmers. The style and code pattern etc are very similar to that of Qt programming.

ADDED :

Here is very good introduction.
http://www.webtoolkit.eu/wt/doc/tutorial/wt.html

So, you use C++ and Wt framework to make a native program. It’s liked with libwhttp or something.
It’s a built-in web server in your native Wt app. Then once it runs, it somehow makes JavaScript/HTML code on the fly and ingest it to its built-in web server to serve as an web app.

This is very interesting approach. if apps are created this way, every single apps are basically a web server.
Until now, there is one web server and multiple hosted web apps/services. But now, it’s like that one small web server is embedded in an app. Sounds like that someone can make some monster out of that.
Think about it..  an entity.. with logic.. a web server by itself.
What can we make with that? Viruses?

It looks to me that the authors of Wt wanted to bring native programming paradigm to web app development just like Obj-J/Cappuccino folks, but differently. However, unlike their original intention, it looks to me that they created a monster.
I’m not sure at this moment what kind of monsters we can make with Wt, but I’m pretty sure that some bright guys will come someday and make really something with Wt. ( if Wt can’t survive, probably its paradigm can still survive. Think about it. RSS and AJAX. That was the “failed” brain child of Netscape and Microsoft. They didn’t expect RSS and AJAX were grown up like this way.

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: