<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
	<title>CppCMS Blog::comments </title>
	<link>http://art-blog.no-ip.info/cppcms/blog</link>
	<description>A blog on CppCMS - C++ Web Development Framework</description>
	<atom:link 
		href="http://art-blog.no-ip.info/cppcms/blog/rss/comments" 
		rel="self" type="application/rss+xml" />
	
		
		<item>
			<title>artyom</title>
			<link>http://art-blog.no-ip.info/cppcms/blog/post/26#comment_84</link>
			<guid>http://art-blog.no-ip.info/cppcms/blog/post/26/84</guid>
			<description>
			&lt;div style=&quot;direction:ltr&quot;&gt;
			&lt;p&gt;Ok, I took a look&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;No documentaion&lt;/li&gt;
&lt;li&gt;CGI mode does not work&lt;/li&gt;
&lt;li&gt;The template engine itself too primitive&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;I had written something like that at the beginning and dropped
it.&lt;/p&gt;

&lt;p&gt;Sorry, but ctemplate is not the code I'm going to use &amp;mdash; because it does not do the job.&lt;/p&gt;

			&lt;/div&gt;
			</description>
		</item>
		
		<item>
			<title>artyom</title>
			<link>http://art-blog.no-ip.info/cppcms/blog/post/26#comment_83</link>
			<guid>http://art-blog.no-ip.info/cppcms/blog/post/26/83</guid>
			<description>
			&lt;div style=&quot;direction:ltr&quot;&gt;
			&lt;p&gt;Ok, I think I need to check it out more deeply.&lt;/p&gt;

&lt;p&gt;Once more, thanks!&lt;/p&gt;

			&lt;/div&gt;
			</description>
		</item>
		
		<item>
			<title>Alex</title>
			<link>http://art-blog.no-ip.info/cppcms/blog/post/26#comment_82</link>
			<guid>http://art-blog.no-ip.info/cppcms/blog/post/26/82</guid>
			<description>
			&lt;div style=&quot;direction:ltr&quot;&gt;
			&lt;p&gt;Hi Artyom,
Actually it is not integrated with apache at all, apache is simple default output mode. Currently ctemplate has 3 options to generate output: apache, CGI and one proprietary server we use internally. I can add a new driver for worker_thread&amp;rsquo;s &quot;out+=&quot; or any other cppcms core interface you prefer.&lt;/p&gt;

			&lt;/div&gt;
			</description>
		</item>
		
		<item>
			<title>artyom</title>
			<link>http://art-blog.no-ip.info/cppcms/blog/post/26#comment_81</link>
			<guid>http://art-blog.no-ip.info/cppcms/blog/post/26/81</guid>
			<description>
			&lt;div style=&quot;direction:ltr&quot;&gt;
			&lt;p&gt;Hi Alex,&lt;/p&gt;

&lt;p&gt;Now I become more and more convinced in using second approach.&lt;/p&gt;

&lt;p&gt;BTW: thanks for link to ctemplate, however, for me, it is too
much integrated with Apache &amp;ndash; I use server independent API: FastCGI, SCGI or CGI. I think to create some kind of &lt;code&gt;apache_mod_shared_object_cgi&lt;/code&gt; however there is still some way to go.&lt;/p&gt;

			&lt;/div&gt;
			</description>
		</item>
		
		<item>
			<title>Alex</title>
			<link>http://art-blog.no-ip.info/cppcms/blog/post/26#comment_80</link>
			<guid>http://art-blog.no-ip.info/cppcms/blog/post/26/80</guid>
			<description>
			&lt;div style=&quot;direction:ltr&quot;&gt;
			&lt;p&gt;I like the second approach.
The disadvantages you are talking about actually are not really important considering that anyway you should compile the controller source code so you certainly have compiler available. Dynamic template compilation is actually helpful for development only, I would love to see compiled templates statically linked to the controller in a production environment.
Please take a look at &lt;a href=&quot;http://ctemplate.sourceforge.net&quot;&gt;ctemplate&lt;/a&gt;. It is a statically compiled templates for C (without ++) primarily intended to use with apache. The only part missing is dynamic compilation.&lt;/p&gt;

			&lt;/div&gt;
			</description>
		</item>
		
		<item>
			<title>artyom</title>
			<link>http://art-blog.no-ip.info/cppcms/blog/post/22#comment_79</link>
			<guid>http://art-blog.no-ip.info/cppcms/blog/post/22/79</guid>
			<description>
			&lt;div style=&quot;direction:ltr&quot;&gt;
			&lt;blockquote&gt;&lt;p&gt;Also, I hope this page isn’t built on top of your CMS, becuase its the slowest page I have been on since I used dialup 10 years ago..&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;It is &lt;code&gt;:-)&lt;/code&gt;, but the actual problem is that it running from home PC on home quite limited connection. BTW it is still much
faster then any WordPress or other system.&lt;/p&gt;

&lt;p&gt;BTW: What is the country you are working from &amp;mdash; maybe the
round trip is mater &amp;mdash; for me it works &lt;em&gt;very&lt;/em&gt; fast.&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;So C++ may not fit the the definition of a &quot;low level language&quot;, but its lower on the food chain than C# / VB.&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;Yes, C++ is low and high language as well. That gives an
ability to write productively high performance/low resources application&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;You could have a crappy application in c++ and is probably going to run much better than a well written PHP/C# application. Don’t boast about how how much better you application performs than a PHP or Asp.NET language.&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;That is the point of this project &amp;mdash; create a good and &lt;em&gt;productive&lt;/em&gt; environment to write web applications in C++.&lt;/p&gt;

&lt;p&gt;I do not expect from developer to open sockets&amp;hellip; even it can.&lt;/p&gt;

&lt;p&gt;BTW: this is not CMS it is C++ Web development framework &amp;mdash; more like Django or ASP.Net.&lt;/p&gt;

			&lt;/div&gt;
			</description>
		</item>
		
		<item>
			<title>Alexander Higgins</title>
			<link>http://art-blog.no-ip.info/cppcms/blog/post/22#comment_76</link>
			<guid>http://art-blog.no-ip.info/cppcms/blog/post/22/76</guid>
			<description>
			&lt;div style=&quot;direction:ltr&quot;&gt;
			&lt;p&gt;You can write assembler inline code, C++ compiles directly into native code that can can run on just about any hardware with out the need to rely on a slew of dll&amp;rsquo;s.  That makes it low level to me, even if it doesn&amp;rsquo;t fit the standard definition of low level.&lt;/p&gt;

&lt;p&gt;VB.NET/PHP/C# are high level becuase the get compiled and require an interpreter to handle their functions. PHP relies on Perl. VB.Net and C# are first compiled into MSIL then into machine code and there is c++ involved in the process. &lt;/p&gt;

&lt;p&gt;VB.NET/PHP/C# really don&amp;rsquo;t have their own data types. The DataTypes are marshalled wrappers of their lower level language(Perl or C++)&lt;/p&gt;

&lt;p&gt;So C++ may not fit the the definition of a &quot;low level language&quot;, but its lower on the food chain than C# / VB.  Perl is lower on the food chain than PHP.  I am Asp.Net programming so from my context/perspective they C++ is a low level language to me.&lt;/p&gt;

&lt;p&gt;There is more to the differences between C++ and the PHP/C# than just JIT and GC, (btw both of which reduce performance)  C++ like C allows you access the method calls of the operating system directly, and as I said write inline Assembly code.  For Example, every call to open a socket in C# has the overhead of A) the managed code of the frameworks its built on and B) the martially of that call to the original Operating System&amp;rsquo;s native Method. In C/C++ you can access those methods directory(at your own risk).&lt;/p&gt;

&lt;p&gt;Why don&amp;rsquo;t you write a program in PHP and C++ that simply makes a connection to a remote message and sends the phase &quot;hello&quot;.  You'll probably see the the C++ application out performs a PHP or C# Application in ration similar to Cpp CMS compared to Word Press.  Why, because you have no overhead. Any knowledgeable programmer know that.&lt;/p&gt;

&lt;p&gt;Further, how many third party extensions are you running in you application.  Probably ZERO.  WordPress and BlogEngine.Net have &quot;Wild&quot; code in the form of third party Plugins on top of their nature over head.  Also, why doesn&amp;rsquo;t your benchmark include calls to a &quot;control&quot; like a static page.  I would also like to see the results of a PHP page and ASP.NET doing a simply echo of the all of the server variables and your CppCMS doing the same.  This would at least help to reinforce the argument that its your &quot;application&quot; that is superior and not the language that it&amp;rsquo;s built on.&lt;/p&gt;

&lt;p&gt;And my point is, you should be comparing you application to similar Perl or Python applications.  You could have a crappy application in c++ and is probably going to run much better than a well written PHP/C# application.  Don&amp;rsquo;t boast about how how much better you application performs than a PHP or Asp.NET language. &lt;/p&gt;

&lt;p&gt;Also, I hope this page isn&amp;rsquo;t built on top of your CMS, becuase its the slowest page I have been on since I used dialup 10 years ago..&lt;/p&gt;

			&lt;/div&gt;
			</description>
		</item>
		
		<item>
			<title>artyom</title>
			<link>http://art-blog.no-ip.info/cppcms/blog/post/22#comment_75</link>
			<guid>http://art-blog.no-ip.info/cppcms/blog/post/22/75</guid>
			<description>
			&lt;div style=&quot;direction:ltr&quot;&gt;
			&lt;blockquote&gt;&lt;p&gt;You are running a high-level programming language against a low level programming language&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;First of all, C++ &lt;strong&gt;is&lt;/strong&gt; high level language. It is not dynamic typed like PHP/Perl/Python and does not have GC but it is very sophisticated and powerful.&lt;/p&gt;

&lt;p&gt;It is not as safe as C#/VB/Java it requires better programming
skills but, once you know it, the development speed will not
be much lower than any &quot;higher&quot; level languages.&lt;/p&gt;

&lt;p&gt;The major difference between C++ and Java/C# is actually
JIT and GC, in all other terms modern C++ is very similar to it.&lt;/p&gt;

&lt;p&gt;As and additional point of this project, I do sacrifice some
&quot;easiness&quot; of development in order to get better performance.&lt;/p&gt;

&lt;p&gt;So as you can see, there is a difference and huge. However I 
still want to do a comparison to JIT powered language.&lt;/p&gt;

			&lt;/div&gt;
			</description>
		</item>
		
		<item>
			<title>Alexander Higgins</title>
			<link>http://art-blog.no-ip.info/cppcms/blog/post/22#comment_74</link>
			<guid>http://art-blog.no-ip.info/cppcms/blog/post/22/74</guid>
			<description>
			&lt;div style=&quot;direction:ltr&quot;&gt;
			&lt;p&gt;You are running a high-level programming language against a low level programming language.  Honestly I don&amp;rsquo;t think there is going to be any comparison in performance.  It&amp;rsquo;s like comparing Visual Basic to C++ or PHP to Perl.  The higher level languages are really just a more user friendly wrapper or technology specific implementation of the lower level language.   Do you really think there is going to be any comparison in performance??&lt;br/&gt;
&lt;/p&gt;

			&lt;/div&gt;
			</description>
		</item>
		
		<item>
			<title>artyom</title>
			<link>http://art-blog.no-ip.info/cppcms/blog/post/25#comment_73</link>
			<guid>http://art-blog.no-ip.info/cppcms/blog/post/25/73</guid>
			<description>
			&lt;div style=&quot;direction:ltr&quot;&gt;
			&lt;blockquote&gt;&lt;p&gt;create models for the database layout.&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;I must admit, that in comparison to major frameworks like RoR, Django; At this point CppCMS missing ORM layer, however I still not convinced that it is mandatory feature.&lt;/p&gt;

&lt;p&gt;Thanks for the link to sqlrelay. I must admit I missed it.&lt;/p&gt;

&lt;p&gt;As I noticed in remarks on dbixx, it is yet another sql layer that
can be used but it is not mandatory. IMHO it is useful due to
nice syntax sugar. At some point I used
&lt;a href=&quot;http://soci.sf.net&quot;&gt;SOCI&lt;/a&gt;, however I found libdbi more mature.&lt;/p&gt;

&lt;p&gt;Anyway I can suggest you looking to the code of this blog
(cms project in svn) that can give you some ideas what this framework can do. Meanwhile I'll continue writing reference documentation
and tutorials. There are still many topics like: caching, framework API and so on.&lt;/p&gt;

&lt;p&gt;I'll be glad for any feedback negative or positive you give.&lt;/p&gt;

&lt;p&gt;Thanks.&lt;/p&gt;

			&lt;/div&gt;
			</description>
		</item>
		
	
</channel>
</rss>
