<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" version="2.0">

<channel>
	<title>kovshenin.com</title>
	
	<link>http://kovshenin.com</link>
	<description>Thinking about WordPress, PHP, MySQL, jQuery, Web 2.0, PR and Social Media</description>
	<lastBuildDate>Wed, 01 Sep 2010 06:30:59 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/kovshenin_com" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="kovshenin_com" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Dave Winer’s Commenting Proposal</title>
		<link>http://kovshenin.com/archives/dave-winer-commenting-proposal/</link>
		<comments>http://kovshenin.com/archives/dave-winer-commenting-proposal/#comments</comments>
		<pubDate>Wed, 01 Sep 2010 06:30:59 +0000</pubDate>
		<dc:creator>kovshenin</dc:creator>
				<category><![CDATA[blogging]]></category>
		<category><![CDATA[social media]]></category>

		<guid isPermaLink="false">http://kovshenin.com/?p=2487</guid>
		<description><![CDATA[Based on a recent post by Dave Winer (RSS pioneer) called Proposal: A new kind of blog comment system. And a follow up has been posted here: Why I like comments. Briefly, the idea behind the new commenting system it is the following: Disable commenting on posts older than 24 hours Comments are invisible to [...]


Related posts:<ol><li><a href='http://kovshenin.com/archives/threaded-comments-wordpress-27/' rel='bookmark' title='Permanent Link: Threaded Comments in WordPress 2.7'>Threaded Comments in WordPress 2.7</a></li>
<li><a href='http://kovshenin.com/archives/removing-comments-author-links/' rel='bookmark' title='Permanent Link: Removing Comments Author Links'>Removing Comments Author Links</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Based on a recent post by Dave Winer (RSS pioneer) called <a href="http://scripting.com/stories/2010/08/22/proposalANewKindOfBlogComm.html">Proposal: A new kind of blog comment system</a>. And a follow up has been posted here: <a href="http://scripting.com/stories/2010/08/24/whyILikeComments.html">Why I like comments</a>. Briefly, the idea behind the new commenting system it is the following:</p>
<ol>
<li>Disable commenting on posts older than 24 hours</li>
<li>Comments are invisible to other commenters until the 24 hour period expires</li>
<li>Commenters can edit their comments during the period</li>
<li>Length limit of 1000 characters</li>
</ol>
<p>So jumping back to my mail inbox and the comments folder with over a 100 unread and unresponded (and spam) messages, I decided to give it a go, starting from point one. I fully agree with Dave about the reasoning behind all the points, but personally think that 24 hours is too harsh, so I started off with 7 days, keeping in mind that this has to be decreased. </p>
<p>This means that when a post is published, you (my readers) have 7 days to comment. Don&#8217;t worry, commenting on support pages for my <a href="http://kovshenin.com/wordpress/plugins/">WordPress plugins</a> has not been switched off.</p>
<p>I&#8217;ll hopefully be implementing the rest of the features throughout September, and will keep you posted on Twitter (@kovshenin). Cheers!</p>


<p>Related posts:<ol><li><a href='http://kovshenin.com/archives/threaded-comments-wordpress-27/' rel='bookmark' title='Permanent Link: Threaded Comments in WordPress 2.7'>Threaded Comments in WordPress 2.7</a></li>
<li><a href='http://kovshenin.com/archives/removing-comments-author-links/' rel='bookmark' title='Permanent Link: Removing Comments Author Links'>Removing Comments Author Links</a></li>
</ol></p>
<p><a href="http://feedads.g.doubleclick.net/~a/IQI8RPxstb11VAEam1r1YDu8vNk/0/da"><img src="http://feedads.g.doubleclick.net/~a/IQI8RPxstb11VAEam1r1YDu8vNk/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/IQI8RPxstb11VAEam1r1YDu8vNk/1/da"><img src="http://feedads.g.doubleclick.net/~a/IQI8RPxstb11VAEam1r1YDu8vNk/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://kovshenin.com/archives/dave-winer-commenting-proposal/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress and Magic Quotes</title>
		<link>http://kovshenin.com/archives/wordpress-and-magic-quotes/</link>
		<comments>http://kovshenin.com/archives/wordpress-and-magic-quotes/#comments</comments>
		<pubDate>Mon, 30 Aug 2010 05:57:09 +0000</pubDate>
		<dc:creator>kovshenin</dc:creator>
				<category><![CDATA[facebook]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[facebook api]]></category>
		<category><![CDATA[graph api]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://kovshenin.com/?p=2429</guid>
		<description><![CDATA[This is crazy, and based on a post called WordPress and PHP magic quotes: you want to run me crazy! by Stefano Lissa. I&#8217;m writing a plugin prototype for WordPress that uses the new Facebook Graph API to post stuff to my wall on Facebook (upcoming blog post). The original Facebook PHP SDK comes in [...]


Related posts:<ol><li><a href='http://kovshenin.com/archives/counting-facebook-fans-in-php-the-graph-api-way/' rel='bookmark' title='Permanent Link: Counting Facebook Fans in PHP: The Graph API Way'>Counting Facebook Fans in PHP: The Graph API Way</a></li>
<li><a href='http://kovshenin.com/archives/jquery-in-wordpress-wp_enqueue_script/' rel='bookmark' title='Permanent Link: jQuery in WordPress: wp_enqueue_script'>jQuery in WordPress: wp_enqueue_script</a></li>
<li><a href='http://kovshenin.com/archives/recent-comments-by-category-slug/' rel='bookmark' title='Permanent Link: WordPress: Recent Comments by Category'>WordPress: Recent Comments by Category</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>This is crazy, and based on a post called <a href="http://www.satollo.net/wordpress-and-php-magic-quotes-you-want-run-me-crazy">WordPress and PHP magic quotes: you want to run me crazy!</a> by Stefano Lissa. I&#8217;m writing a plugin prototype for WordPress that uses the new Facebook Graph API to post stuff to my wall on Facebook (upcoming blog post). The original <a href="http://github.com/facebook/php-sdk">Facebook PHP SDK</a> comes in very handy when working with the Facebook API, and I had quite some fun using it, but..</p>
<div class="kimage"><h2>How to Kill the get_magic_quotes_gpc Function</h2><img src="http://kovshenin.com/core/wp-content/uploads/2009/12/wordpress.png" alt="How to Kill the get_magic_quotes_gpc Function" /></div><div class="clear"></div>
<p>I&#8217;ve been trying to figure this out for hours! I had code working outside WordPress and once I pumped it into a plugin it suddenly stopped authorizing me. I had to dig through the facebook.php code to figure out what&#8217;s happening, and here it is. The getSession() method uses the <a href="http://php.net/manual/en/function.get-magic-quotes-gpc.php">get_magic_quotes_gpc</a> function and strips the slashes from the $_COOKIE superglobal if it&#8217;s switched on. Of course, that&#8217;s the correct logic supporting both php 5 and php 6, but not WordPress.</p>
<p>I looked through the latest (3.0.1) WordPress core code and was quite surprised to see a function called wp_magic_quotes(). Oh my god, thought I! Commented as:</p>
<blockquote><p>
Add magic quotes and set up $_REQUEST ( $_GET + $_POST )
</p></blockquote>
<p>What the hell is that? Okay, let&#8217;s see:</p>
<pre class="brush: php;">
$_GET = add_magic_quotes($_GET);
$_POST = add_magic_quotes($_POST);
$_COOKIE = add_magic_quotes($_COOKIE);
$_SERVER = add_magic_quotes($_SERVER);
</pre>
<p>How does that sound? So all my apps, plugins, external libraries working with server variables (like Facebook does with cookies) are not allowed to use the magic quotes function? This means that working with WordPress, we must initially assume that all these are quoted, no matter what the php settings are. I don&#8217;t even know what question to ask here, perhaps: Is this the way things are done? Why?</p>
<p>To be honest this is getting me a little frustrated. Not by the fact that they&#8217;re slashing the whole input (although I don&#8217;t see a reason to) but, heh, I&#8217;ve been coding based on WordPress for over two years now, and never came across anything like this. Did I miss something in the Getting Started guide? ;) Anyways, the easiest way to get this working is to replace your get_matic_quotes_gpc function with 1, which says it is always switched on.</p>
<p>Eh, Monday morning disappointment ;) Cheers, and thanks for <a href="http://twitter.com/?status=WordPress+and+Magic+Quotes+http%3A%2F%2Fkovshenin.com%2F%3Fp%3D2429" class="retweet-anywhere" title="Retweet This Post" rev="" rel="2429">retweeting</a> the post!</p>


<p>Related posts:<ol><li><a href='http://kovshenin.com/archives/counting-facebook-fans-in-php-the-graph-api-way/' rel='bookmark' title='Permanent Link: Counting Facebook Fans in PHP: The Graph API Way'>Counting Facebook Fans in PHP: The Graph API Way</a></li>
<li><a href='http://kovshenin.com/archives/jquery-in-wordpress-wp_enqueue_script/' rel='bookmark' title='Permanent Link: jQuery in WordPress: wp_enqueue_script'>jQuery in WordPress: wp_enqueue_script</a></li>
<li><a href='http://kovshenin.com/archives/recent-comments-by-category-slug/' rel='bookmark' title='Permanent Link: WordPress: Recent Comments by Category'>WordPress: Recent Comments by Category</a></li>
</ol></p>
<p><a href="http://feedads.g.doubleclick.net/~a/ODKgl1CxHoU6FsjYZ9DrlMCkoTs/0/da"><img src="http://feedads.g.doubleclick.net/~a/ODKgl1CxHoU6FsjYZ9DrlMCkoTs/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/ODKgl1CxHoU6FsjYZ9DrlMCkoTs/1/da"><img src="http://feedads.g.doubleclick.net/~a/ODKgl1CxHoU6FsjYZ9DrlMCkoTs/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://kovshenin.com/archives/wordpress-and-magic-quotes/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Trends: WordPress vs Drupal vs Joomla</title>
		<link>http://kovshenin.com/archives/trends-wordpress-vs-drupal-vs-joomla/</link>
		<comments>http://kovshenin.com/archives/trends-wordpress-vs-drupal-vs-joomla/#comments</comments>
		<pubDate>Thu, 26 Aug 2010 05:43:37 +0000</pubDate>
		<dc:creator>kovshenin</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[asp]]></category>
		<category><![CDATA[drupal]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[joomla]]></category>
		<category><![CDATA[trends]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://kovshenin.com/?p=2460</guid>
		<description><![CDATA[The battle&#8217;s been going on since 2004-2005, the three open platforms (WordPress, Drupal and Joomla) have been competing for ages. Which is the most popular? Of course you could search for reviews, votes, researches. I even came across a commercial research document about content management systems, their pros, cons and popularity. It still is difficult [...]


Related posts:<ol><li><a href='http://kovshenin.com/archives/squarespace-thesis-and-back-to-wordpress/' rel='bookmark' title='Permanent Link: SquareSpace, Thesis and Back to WordPress'>SquareSpace, Thesis and Back to WordPress</a></li>
<li><a href='http://kovshenin.com/archives/plugin-development-technical-support-for-wordpress/' rel='bookmark' title='Permanent Link: Plugin Development: Technical Support for WordPress'>Plugin Development: Technical Support for WordPress</a></li>
<li><a href='http://kovshenin.com/archives/interview-the-woo-is-a-mix-of-w00t-wordpress/' rel='bookmark' title='Permanent Link: Interview: The Woo is a Mix of w00t &#038; WordPress'>Interview: The Woo is a Mix of w00t &#038; WordPress</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>The battle&#8217;s been going on since 2004-2005, the three open platforms (<a href="http://wordpress.org">WordPress</a>, <a href="http://drupal.org">Drupal</a> and <a href="http://joomla.org">Joomla</a>) have been competing for ages. Which is the most popular? Of course you could search for reviews, votes, researches. I even came across a commercial research document about content management systems, their pros, cons and popularity. It still is difficult to convince clients (especially the bigger ones) to use open platforms for their websites. Tonnes of questions are asked about security, performance, etc.</p>
<p>This article will not review any of the platforms mentioned above, nor will it give pros and cons to certain properties of such platforms. We&#8217;ve seen enough reviews, tests, benchmarks and even competitions to figure out which the best platform is. In my opinion, there&#8217;s no best platform, each is good, and which ever to use is a decision the developer should make.</p>
<p>Anyways, I had my coffee this morning and decided to check out what Google is up to, so I browsed to the <a href="http://www.googlelabs.com/">Labs</a>. The list is quite big but suddenly I spotted <a href="http://www.google.com/trends">Google Trends</a>, which has been around since 2006. Haven&#8217;t used that for a while ;) Sticking in &#8220;wordpress, drupal, joomla&#8221; into the trend search, I came up with the following results:</p>
<p><img src="http://kovshenin.com/core/wp-content/uploads/2010/08/trends-wordpress-joomla-drupal.png" alt="Trends: WordPress vs Drupal vs Joomla" title="Trends: WordPress vs Drupal vs Joomla" width="614" height="348" class="aligncenter size-full wp-image-2461" /></p>
<p>Quite interesting isn&#8217;t it? Joomla (orange) was in a leading position from 2006 to late 2008, and in late 2009 WordPress (blue) took the lead. Drupal (red) heh, wha? There&#8217;s also a ranks by regions, cities and languages which give even more interesting results. For instance, Joomla still leads in Russian, Italian and German languages, and Drupal is very popular in India.</p>
<p>These stats are good when comparing the open platforms, they also show that open platforms are growing overall. But does this convince our clients to pick an open source platform for their website? I recall or three latest clients who calimed that they&#8217;d love .NET websites and an ASP (seriously) website. Let&#8217;s see:</p>
<p><img src="http://kovshenin.com/core/wp-content/uploads/2010/08/trends-wordpress-net-asp.png" alt="WordPress vs .NET vs ASP" title="WordPress vs .NET vs ASP" width="614" height="348" class="aligncenter size-full wp-image-2462" /></p>
<p>So Microsoft&#8217;s technologies are not as popular as they were in 2004, at least based on Google searches. There&#8217;s much more fun stuff you can do with Google Trends, but the question remains. Is this information useful when speaking with clients? Does the global trend mean that pictures in regions will change over time? And why is .NET losing popularity? Just thinking out loud ;) Cheers, and don&#8217;t forget to <a href="http://twitter.com/?status=Trends%3A+WordPress+vs+Drupal+vs+Joomla+http%3A%2F%2Fkovshenin.com%2F%3Fp%3D2460" class="retweet-anywhere" title="Retweet This Post" rev="" rel="2460">tweet this post</a> if you like it.</p>


<p>Related posts:<ol><li><a href='http://kovshenin.com/archives/squarespace-thesis-and-back-to-wordpress/' rel='bookmark' title='Permanent Link: SquareSpace, Thesis and Back to WordPress'>SquareSpace, Thesis and Back to WordPress</a></li>
<li><a href='http://kovshenin.com/archives/plugin-development-technical-support-for-wordpress/' rel='bookmark' title='Permanent Link: Plugin Development: Technical Support for WordPress'>Plugin Development: Technical Support for WordPress</a></li>
<li><a href='http://kovshenin.com/archives/interview-the-woo-is-a-mix-of-w00t-wordpress/' rel='bookmark' title='Permanent Link: Interview: The Woo is a Mix of w00t &#038; WordPress'>Interview: The Woo is a Mix of w00t &#038; WordPress</a></li>
</ol></p>
<p><a href="http://feedads.g.doubleclick.net/~a/xo2EgTdQkuu7OtJ5Cq6JV8gKACs/0/da"><img src="http://feedads.g.doubleclick.net/~a/xo2EgTdQkuu7OtJ5Cq6JV8gKACs/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/xo2EgTdQkuu7OtJ5Cq6JV8gKACs/1/da"><img src="http://feedads.g.doubleclick.net/~a/xo2EgTdQkuu7OtJ5Cq6JV8gKACs/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://kovshenin.com/archives/trends-wordpress-vs-drupal-vs-joomla/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Counting Facebook Fans in PHP: The Graph API Way</title>
		<link>http://kovshenin.com/archives/counting-facebook-fans-in-php-the-graph-api-way/</link>
		<comments>http://kovshenin.com/archives/counting-facebook-fans-in-php-the-graph-api-way/#comments</comments>
		<pubDate>Tue, 24 Aug 2010 05:53:19 +0000</pubDate>
		<dc:creator>kovshenin</dc:creator>
				<category><![CDATA[facebook]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[facebook api]]></category>
		<category><![CDATA[graph api]]></category>
		<category><![CDATA[snippets]]></category>

		<guid isPermaLink="false">http://kovshenin.com/?p=2446</guid>
		<description><![CDATA[In a previous blog post called How to Count Facebook Fans in PHP I&#8217;ve shown a code snippet of how to count the number of fans on a fan page using PHP. Times have changed, the Graph API has been introduced, and due to some responses I introduce here the new way of retrieving your [...]


Related posts:<ol><li><a href='http://kovshenin.com/archives/how-to-count-facebook-fans-in-php/' rel='bookmark' title='Permanent Link: How to Count Facebook Fans in PHP'>How to Count Facebook Fans in PHP</a></li>
<li><a href='http://kovshenin.com/archives/facebook-platform-building-a-custom-fan-page/' rel='bookmark' title='Permanent Link: The Facebook Platform: Building a Custom Fan Page'>The Facebook Platform: Building a Custom Fan Page</a></li>
<li><a href='http://kovshenin.com/archives/facebook-api-experiments-twitter-tags/' rel='bookmark' title='Permanent Link: Facebook API Experiments: Twitter Tags'>Facebook API Experiments: Twitter Tags</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>In a previous blog post called <a href="http://kovshenin.com/archives/how-to-count-facebook-fans-in-php/">How to Count Facebook Fans in PHP</a> I&#8217;ve shown a code snippet of how to count the number of fans on a fan page using PHP. Times have changed, the Graph API has been introduced, and due to some responses I introduce here the new way of retrieving your fans count using the new Graph API and php.</p>
<div class="kimage"><h2>Graph API: Literally Two Lines of Code!</h2><img src="http://kovshenin.com/core/wp-content/uploads/2009/11/facebookapi.png" alt="Graph API: Literally Two Lines of Code!" /></div><div class="clear"></div>
<p>Before you copy and paste, flush my comments with &#8216;my code is not working&#8217; posts, I&#8217;d like to get your attention to versioning of the Facebook PHP SDK which we&#8217;ve been using all this time. The SDK has changed and of course the old method doesn&#8217;t work with the new SDK which is mostly tuned to Graph API, therefore, my previous code still works on a dozen on websites, because I have the old SDK installed back there. So please, be careful to what you download and use, read release notes and change logs, it will save you hours of googling.</p>
<p>The following snippet is based on the <a href="http://github.com/facebook/php-sdk/">Facebook PHP SDK</a> version 2.1.1 (use the Switch Tags option on github to browse through different tags). So get a fresh copy of facebook.php and have it somewhere nearby.</p>
<p>Unlike the old FBQL way, the new Graph API is much easier to work with, and retrieving the fans count is literally two lines of code (initialization doesn&#8217;t count). Here&#8217;s the snippet to retrieve the fans count for <a href="http://facebook.com/mashable">Mashable</a> (don&#8217;t forget to replace your application ID and API secret):</p>
<pre class="brush: php;">
require('facebook.php');

$facebook = new Facebook(array(
	'appId' =&gt; 'your-app-id',
	'secret' =&gt; 'your-api-secret',
));

$mashable = $facebook-&gt;api('/mashable');
echo 'Mashable has ' . $mashable['fan_count'] . ' fans';
</pre>
<p>Easy as that! I was also surprised to see that the Graph API is doing so well. Yeah, the documentation is not very rich, but whenever you need to retrieve something from Facebook, you can always print_r the results, which gives you the full picture. Sending data into Facebook is a little trickier and I&#8217;ll show you how in a later blog post.</p>
<p>Cheers! Thanks for your attention and don&#8217;t hasitate to <a href="http://twitter.com/?status=Counting+Facebook+Fans+in+PHP%3A+The+Graph+API+Way+http%3A%2F%2Fkovshenin.com%2F%3Fp%3D2446" class="retweet-anywhere" title="Retweet This Post" rev="" rel="2446">retweet this post</a> ;)</p>


<p>Related posts:<ol><li><a href='http://kovshenin.com/archives/how-to-count-facebook-fans-in-php/' rel='bookmark' title='Permanent Link: How to Count Facebook Fans in PHP'>How to Count Facebook Fans in PHP</a></li>
<li><a href='http://kovshenin.com/archives/facebook-platform-building-a-custom-fan-page/' rel='bookmark' title='Permanent Link: The Facebook Platform: Building a Custom Fan Page'>The Facebook Platform: Building a Custom Fan Page</a></li>
<li><a href='http://kovshenin.com/archives/facebook-api-experiments-twitter-tags/' rel='bookmark' title='Permanent Link: Facebook API Experiments: Twitter Tags'>Facebook API Experiments: Twitter Tags</a></li>
</ol></p>
<p><a href="http://feedads.g.doubleclick.net/~a/Ff9Cg2ulv6tqPSeEjVOj0fbugN8/0/da"><img src="http://feedads.g.doubleclick.net/~a/Ff9Cg2ulv6tqPSeEjVOj0fbugN8/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/Ff9Cg2ulv6tqPSeEjVOj0fbugN8/1/da"><img src="http://feedads.g.doubleclick.net/~a/Ff9Cg2ulv6tqPSeEjVOj0fbugN8/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://kovshenin.com/archives/counting-facebook-fans-in-php-the-graph-api-way/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>How to Generate Quality Data for MySQL</title>
		<link>http://kovshenin.com/archives/generate-quality-data-for-mysql/</link>
		<comments>http://kovshenin.com/archives/generate-quality-data-for-mysql/#comments</comments>
		<pubDate>Thu, 19 Aug 2010 10:35:04 +0000</pubDate>
		<dc:creator>kovshenin</dc:creator>
				<category><![CDATA[apps]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[sql]]></category>

		<guid isPermaLink="false">http://kovshenin.com/?p=2423</guid>
		<description><![CDATA[We all had fun with the World Database, Sakila and the others when learning MySQL (see Example Databases), but it sometimes isn&#8217;t enough to run certain experiments, benchmarks within your own schema. Of course you could write a script that would generate junk data based on your column types and populate your database with a [...]


Related posts:<ol><li><a href='http://kovshenin.com/archives/backing-up-mysql-on-amazon-ec2-to-s3/' rel='bookmark' title='Permanent Link: Cloud Tips: Backing Up MySQL on Amazon EC2 to S3'>Cloud Tips: Backing Up MySQL on Amazon EC2 to S3</a></li>
<li><a href='http://kovshenin.com/archives/from-mysql-gui-tools-to-mysql-workbench/' rel='bookmark' title='Permanent Link: From MySQL GUI Tools to MySQL Workbench'>From MySQL GUI Tools to MySQL Workbench</a></li>
<li><a href='http://kovshenin.com/archives/mysql-charset/' rel='bookmark' title='Permanent Link: MySQL Charset Issues'>MySQL Charset Issues</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>We all had fun with the World Database, Sakila and the others when learning MySQL (see <a href="http://dev.mysql.com/doc/index-other.html">Example Databases</a>), but it sometimes isn&#8217;t enough to run certain experiments, benchmarks within your own schema. Of course you could write a script that would generate junk data based on your column types and populate your database with a few thousand entries, but as it turns out, Benjamin Keen already did.</p>
<p>Meet <a href="http://www.generatedata.com/">Generate Data</a> &#8211; a free and open source script written in php, generates quality data for your databases. Works with MySQL and, well, pretty much with any SQL compliant database I guess. What I liked about Generate Data is that you get to pick your columns, their types, and the sample data like names, last names, integer between two values, lorem ipsum (my favorite) and a bunch of others. This is why I said &#8220;quality data&#8221;. </p>
<p>There are a few issues I encountered, like trying to get 5000 rows gave me only 200, but such issues could easily be solved by downloading the source code and launching it locally with a few fixing (I wonder why Benjamin did such a bad job at documenting the whole thing). It took me a few minutes to fill up 30,000 rows of sample data, so who needs the World database anyway?</p>
<p>The script is being updated from time to time and new features are being added, not too fast, but they are. Let&#8217;s see where Benjamin takes this by the end of this year ;)</p>


<p>Related posts:<ol><li><a href='http://kovshenin.com/archives/backing-up-mysql-on-amazon-ec2-to-s3/' rel='bookmark' title='Permanent Link: Cloud Tips: Backing Up MySQL on Amazon EC2 to S3'>Cloud Tips: Backing Up MySQL on Amazon EC2 to S3</a></li>
<li><a href='http://kovshenin.com/archives/from-mysql-gui-tools-to-mysql-workbench/' rel='bookmark' title='Permanent Link: From MySQL GUI Tools to MySQL Workbench'>From MySQL GUI Tools to MySQL Workbench</a></li>
<li><a href='http://kovshenin.com/archives/mysql-charset/' rel='bookmark' title='Permanent Link: MySQL Charset Issues'>MySQL Charset Issues</a></li>
</ol></p>
<p><a href="http://feedads.g.doubleclick.net/~a/q6MAKiCXwx9mjQ0JpSoPDcmMmyU/0/da"><img src="http://feedads.g.doubleclick.net/~a/q6MAKiCXwx9mjQ0JpSoPDcmMmyU/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/q6MAKiCXwx9mjQ0JpSoPDcmMmyU/1/da"><img src="http://feedads.g.doubleclick.net/~a/q6MAKiCXwx9mjQ0JpSoPDcmMmyU/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://kovshenin.com/archives/generate-quality-data-for-mysql/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>WordPress: Oh Those Actions and Filters!</title>
		<link>http://kovshenin.com/archives/wordpress-actions-and-filters/</link>
		<comments>http://kovshenin.com/archives/wordpress-actions-and-filters/#comments</comments>
		<pubDate>Wed, 18 Aug 2010 07:09:33 +0000</pubDate>
		<dc:creator>kovshenin</dc:creator>
				<category><![CDATA[wordpress]]></category>
		<category><![CDATA[debug]]></category>
		<category><![CDATA[snippets]]></category>

		<guid isPermaLink="false">http://kovshenin.com/?p=2413</guid>
		<description><![CDATA[Reading Joost de Valk&#8217;s quick post about Simple WordPress Debugging with a query variable made me think for a while. Really, how often do you come accross a white screen with no clue of what&#8217;s happening? Very effective indeed, and good note about the security issue, but anyways, what came into my mind is a [...]


Related posts:<ol><li><a href='http://kovshenin.com/archives/adding-mod_rewrite-rules-to-htaccess-in-wordpress/' rel='bookmark' title='Permanent Link: Adding mod_rewrite Rules to .htaccess in WordPress'>Adding mod_rewrite Rules to .htaccess in WordPress</a></li>
<li><a href='http://kovshenin.com/archives/custom-post-types-in-wordpress-3-0/' rel='bookmark' title='Permanent Link: Custom Post Types in WordPress 3.0'>Custom Post Types in WordPress 3.0</a></li>
<li><a href='http://kovshenin.com/archives/extending-custom-post-types-in-wordpress-3-0/' rel='bookmark' title='Permanent Link: Extending Custom Post Types in WordPress 3.0'>Extending Custom Post Types in WordPress 3.0</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Reading Joost de Valk&#8217;s quick post about <a href="http://yoast.com/wordpress-debug/">Simple WordPress Debugging</a> with a query variable made me think for a while. Really, how often do you come accross a white screen with no clue of what&#8217;s happening? Very effective indeed, and good note about the security issue, but anyways, what came into my mind is a life-saver for all WordPress themes and plugins developers. </p>
<p>I came accross this following snippet quite some time ago on IRC I believe, but never shared it for no specific reason. Perhaps I thought that everybody is aware of it, but looking at how more and more people struggle with debugging WordPress actions and filters, ugh. Here&#8217;s your life-saver:</p>
<pre class="brush: php;">
add_action('all', create_function('', 'var_dump(current_filter());'));
</pre>
<p>This should be used in functions.php or some plugin, and at first sight you&#8217;ll notice a huge bunch of text on the output. Fire up the source view of the page you&#8217;re looking at (works for admin panels too) and look through the code. You&#8217;ll notice that all actions and filters are printed on screen whenever they&#8217;re fired. </p>
<p>How could that be used? It clearly shows the order of each action and filter and it clearly shows the names (which tend to be forgotten sometimes). Maybe there are a few more pros I can&#8217;t think of right now. Downsides? It doesn&#8217;t actually tell you whether it&#8217;s an action or a filter, but anyways &#8211; short, useful, could be added up to Joost&#8217;s snippet.</p>


<p>Related posts:<ol><li><a href='http://kovshenin.com/archives/adding-mod_rewrite-rules-to-htaccess-in-wordpress/' rel='bookmark' title='Permanent Link: Adding mod_rewrite Rules to .htaccess in WordPress'>Adding mod_rewrite Rules to .htaccess in WordPress</a></li>
<li><a href='http://kovshenin.com/archives/custom-post-types-in-wordpress-3-0/' rel='bookmark' title='Permanent Link: Custom Post Types in WordPress 3.0'>Custom Post Types in WordPress 3.0</a></li>
<li><a href='http://kovshenin.com/archives/extending-custom-post-types-in-wordpress-3-0/' rel='bookmark' title='Permanent Link: Extending Custom Post Types in WordPress 3.0'>Extending Custom Post Types in WordPress 3.0</a></li>
</ol></p>
<p><a href="http://feedads.g.doubleclick.net/~a/W14hMTz9USQpbbCtJizR0y0hd6w/0/da"><img src="http://feedads.g.doubleclick.net/~a/W14hMTz9USQpbbCtJizR0y0hd6w/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/W14hMTz9USQpbbCtJizR0y0hd6w/1/da"><img src="http://feedads.g.doubleclick.net/~a/W14hMTz9USQpbbCtJizR0y0hd6w/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://kovshenin.com/archives/wordpress-actions-and-filters/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Mockingbird Launch: Goodbye Beta Users</title>
		<link>http://kovshenin.com/archives/mockingbird-launch/</link>
		<comments>http://kovshenin.com/archives/mockingbird-launch/#comments</comments>
		<pubDate>Thu, 05 Aug 2010 08:24:23 +0000</pubDate>
		<dc:creator>kovshenin</dc:creator>
				<category><![CDATA[apps]]></category>
		<category><![CDATA[mockingbird]]></category>
		<category><![CDATA[mockups]]></category>
		<category><![CDATA[tools]]></category>

		<guid isPermaLink="false">http://kovshenin.com/?p=2399</guid>
		<description><![CDATA[I received an e-mail a few days ago from Mockingbird, the wireframing online software which I constantly used for my project: Mockingbird will launch on August 15th, 2010 Hurray? No. According to their blog post about the launch and a few posts on Twitter, most users seem quite disappointed and they do have a point. [...]


Related posts:<ol><li><a href='http://kovshenin.com/archives/new-twitter-startup-beta-testers-wanted/' rel='bookmark' title='Permanent Link: New Twitter Startup! Beta Testers Wanted!'>New Twitter Startup! Beta Testers Wanted!</a></li>
<li><a href='http://kovshenin.com/archives/creating-mockups-with-mockingbird/' rel='bookmark' title='Permanent Link: Creating Mockups with Mockingbird'>Creating Mockups with Mockingbird</a></li>
<li><a href='http://kovshenin.com/archives/follerme-ready-to-launch/' rel='bookmark' title='Permanent Link: Foller.me is Ready to Launch. We&#8217;re going LIVE!'>Foller.me is Ready to Launch. We&#8217;re going LIVE!</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>I received an e-mail a few days ago from Mockingbird, the wireframing online software which I constantly used for my project:</p>
<blockquote><p>
Mockingbird will launch on August 15th, 2010
</p></blockquote>
<p>Hurray? No. According to their <a href="http://blog.gomockingbird.com/mockingbird-launch-and-other-exciting-updates">blog post</a> about the launch and a few posts on Twitter, most users seem quite disappointed and they do have a point. Some say the pay-per-month model doesn&#8217;t work for them, as they prefer to pay per project. Others say that pricing is quite weird and the active/archived projects doesn&#8217;t make any sense. Some argue about the number of pages limiting for free users.</p>
<p>After some feedback the guys at Mockingbird posted two updates to the post about new plans, the beta plan and the transition from beta to an upgraded account.</p>
<p>I say that Mockingbird simply ditched all their beta users. I&#8217;m very disappointed as I loved their service so much, that I constantly mocked up anything that came into my mind &#8211; from websites to apps, mobile apps, mind maps, graphs and charts and much much more. Now that they&#8217;re shutting the whole thing down I&#8217;m moving back to my good old Axure RP and Photoshop. Too bad.</p>
<p>I do think that at some point any startup has to go commercial and make some cash, but restricting access is definitely not the way. Add some new cool features and make Pro accounts with these features. Add new exclusive components and sell access to them. But restricting access to what you&#8217;re already working with, what the hell? Imagine Twitter says that in order to post more than three tweets per day you have to get a $10/mo subscription, huh? Or Gmail says that in order to read more than 10 e-mails per day you need a $5/mo subscription.. Rediculous..</p>


<p>Related posts:<ol><li><a href='http://kovshenin.com/archives/new-twitter-startup-beta-testers-wanted/' rel='bookmark' title='Permanent Link: New Twitter Startup! Beta Testers Wanted!'>New Twitter Startup! Beta Testers Wanted!</a></li>
<li><a href='http://kovshenin.com/archives/creating-mockups-with-mockingbird/' rel='bookmark' title='Permanent Link: Creating Mockups with Mockingbird'>Creating Mockups with Mockingbird</a></li>
<li><a href='http://kovshenin.com/archives/follerme-ready-to-launch/' rel='bookmark' title='Permanent Link: Foller.me is Ready to Launch. We&#8217;re going LIVE!'>Foller.me is Ready to Launch. We&#8217;re going LIVE!</a></li>
</ol></p>
<p><a href="http://feedads.g.doubleclick.net/~a/hVNR6T_KNERuIRVKGUTeXPioE40/0/da"><img src="http://feedads.g.doubleclick.net/~a/hVNR6T_KNERuIRVKGUTeXPioE40/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/hVNR6T_KNERuIRVKGUTeXPioE40/1/da"><img src="http://feedads.g.doubleclick.net/~a/hVNR6T_KNERuIRVKGUTeXPioE40/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://kovshenin.com/archives/mockingbird-launch/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>TeamLab vs Basecamp: A Project Management Duel</title>
		<link>http://kovshenin.com/archives/teamlab-vs-basecamp-project-management-duel/</link>
		<comments>http://kovshenin.com/archives/teamlab-vs-basecamp-project-management-duel/#comments</comments>
		<pubDate>Tue, 03 Aug 2010 06:04:37 +0000</pubDate>
		<dc:creator>kovshenin</dc:creator>
				<category><![CDATA[project management]]></category>
		<category><![CDATA[basecamp]]></category>
		<category><![CDATA[teamlab]]></category>

		<guid isPermaLink="false">http://kovshenin.com/?p=2365</guid>
		<description><![CDATA[Team. Team, team, team.. How good is your team if you can&#8217;t manage it? This reminds me of an IT Crowd episode: Well if you can&#8217;t work as a team you&#8217;re all fired! .. Hello security? Everyone on floor 4 is fired. As some of you already know, I run a little web development startup [...]


Related posts:<ol><li><a href='http://kovshenin.com/archives/5-really-useful-trac-reports/' rel='bookmark' title='Permanent Link: 5 Really Useful Trac Reports'>5 Really Useful Trac Reports</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Team. Team, team, team.. How good is your team if you can&#8217;t manage it? This reminds me of an <a href="http://www.youtube.com/watch?v=pGFGD5pj03M">IT Crowd episode</a>:</p>
<blockquote><p>Well if you can&#8217;t work as a team you&#8217;re all fired! .. Hello security? Everyone on floor 4 is fired.</p></blockquote>
<p>As some of you already know, I run a little web development startup here in Moscow called <a href="http://frumatic.com">Frumatic</a> and during the past few months we&#8217;ve been struggling to get our project management and collaboration right. I don&#8217;t think there&#8217;s a reason for me to write about how important project management is and that no good business today could live without a good <acronym title="Customer Relationship Management">CRM</acronym>, <acronym title="Project Management">PM</acronym>, <acronym title="Source Code Management">SCM</acronym> and the rest.</p>
<div class="kimage"><h2>If you can't work as a team you're all fired!</h2><img src="http://kovshenin.com/core/wp-content/uploads/2010/07/basecam-teamlab.png" alt="If you can't work as a team you're all fired!" /></div><div class="clear"></div>
<p>Today we&#8217;ll speak about two awesome project management systems &#8211; <a href="http://basecamphq.com/">Basecamp</a> and <a href="http://teamlab.com/">TeamLab</a>. Both services are quite cool and look alike in some sense. I&#8217;ll try to outline the pros and cons of each app, then give a short tip on how to make your choice between the two. Let&#8217;s start off with Basecamp.</p>
<h2>Basecamp by 37signals</h2>
<p><a href="http://basecamphq.com/">Basecamp</a> has been developed and launched by <a href="http://37signals.com/">37signals</a> back in 2004. Since then it&#8217;s been evolving, new very nice features have been developed, and today, Basecamp is a very powerful project management and collaboration tool, offered as a service (SaaS). Basecamp wouldn&#8217;t be complete without it&#8217;s sisters <a href="http://www.highrisehq.com/">Highrise</a> (CRM), <a href="http://www.backpackit.com/">Backpack</a> (business organizer) and perhaps <a href="http://www.campfirenow.com/">Campfire</a> (chat) and of course the <a href="http://basecamphq.com/extras">Basecamp Extras</a> and the <a href="http://developer.37signals.com/basecamp/">Basecamp API</a> which gives developers the power to mash their software with Basecamp.</p>
<h3>Basecamp Pros</h3>
<p>Let&#8217;s start with a short list of Basecamp pros. I&#8217;m sure there are tonnes of others:</p>
<ul>
<li>Web-based and easy to use</li>
<li>Fast and secure, powered by Amazon S3</li>
<li>Maintaned and supported very well</li>
<li>On-going development, enhancements</li>
<li>Offers tonnes of extras and a public API</li>
<li>Offers time tracking</li>
</ul>
<h3>Basecamp Cons</h3>
<p>And here&#8217;s a list of Basecamp cons. I found some of these quite annoying, but despite that, I still love Basecamp ;)</p>
<ul>
<li>Quite expensive (good plans start from ~$50/mo)</li>
<li>Not very customizable, all you can change is the logo and color scheme</li>
<li>Does not offer self-hosted version</li>
<li>Does not allow to use your own Amazon S3 account to host your data</li>
<li>Quite poor CRM and Business Organizer</li>
<li>Basecamp Extras are poor, some of them are even commercial</li>
</ul>
<p>Yeah, paying for software is not a crime, but in my opinion, Basecamp is slightly overpriced, plus you&#8217;ll have to pay extra if you&#8217;d like to get Backpack or Highrise (which is quite a poor CRM actually, I found SugarCRM CE, which is open-source, much better than Highrise). Now let&#8217;s see what TeamLab is all about.</p>
<p><a href="http://dilbert.com/strips/comic/2009-12-08/" title="Dilbert.com"><img class="aligncenter" src="http://dilbert.com/dyn/str_strip/000000000/00000000/0000000/000000/70000/5000/900/75989/75989.strip.gif" border="0" alt="Dilbert.com" /></a></p>
<h2>TeamLab by Ascensio System</h2>
<p>I came across <a href="http://teamlab.com/">TeamLab</a> a few weeks ago and I found it to be quite terrific! TeamLab was launched this summer, somewhere in the beginning of July I guess. It&#8217;s based in Latvia, where Russian is quite a popular language by the way ;) TeamLab is written in Microsoft ASP .NET (C#) which makes it quite easy to understand. As it is a startup they haven&#8217;t yet implemented their monetization plan, so TeamLab is offered free of charge as SaaS or open source for download. You can deploy TeamLab in the Amazon EC2 cloud and use S3 for file hosting, which is quite wikid!</p>
<h3>TeamLab Pros</h3>
<p>Below is a list of pros I found for TeamLab. These may change in the future ;)</p>
<ul>
<li>Free and open source, released under GPL</li>
<li>Compatible with Amazon EC2 and S3</li>
<li>Web-based, easy to use</li>
<li>Offers a full-featured Company Intranet and a Wiki</li>
<li>Quite active on Twitter</li>
<li>Offers import and export</li>
</ul>
<h3>TeamLab Cons</h3>
<p>The cons of TeamLab from a php developer&#8217;s perspective (ASP .NET is good, but .. well ;)</p>
<ul>
<li>Written in ASP .NET</li>
<li>Does not offer time tracking</li>
<li>Has some bugs, like any other startup ;)</li>
<li>Does not offer extras, mobile or API (maybe it&#8217;s only a matter of time)</li>
<li>Will not remain free of charge forever (I guess)</li>
</ul>
<p>The last point may or may not be true. Like any other startup, TeamLab will go commercial at some point. I spoke to the representatives of TeamLab on Twitter and e-mail, and I&#8217;ve been told that all the functionality included in TeamLab now will remain free of charge in the SaaS and the open source downloadable package, but new features will require you to pump their back accounts with money. This is very optimistic indeed, as we&#8217;ve already seen such trouble with Sugar CRM Community Edition and Mockingbird, which is planned to go commercial on August 15th.</p>
<h2>Making the right choice</h2>
<p>Personally, I&#8217;m using Basecamp, but TeamLab made quite a good impression, and I do have thoughts about switching. What would make switching much easier is .. Import! An Import from Basecamp feature would be awesome, besides they offer all the tools (API) and documentation to do that. </p>
<p>TeamLab does though offer import and export, but from their own system and that&#8217;s good to go, especially since you can have your own self-hosted TeamLab, which would be preferred by large companies, as they do not usually trust third-party services.</p>
<p>So, if you&#8217;re worried about security, need time tracking and CRM integration, then yes, Basecamp is definitely your choice. But if you&#8217;re willing to play around and build solutions on top of, then go with TeamLab, as you will always be able to have your own extras running inside TeamLab Open Source. This will also save you some cash ;) Thanks for reading and don&#8217;t forget to <a href="http://twitter.com/?status=TeamLab+vs+Basecamp%3A+A+Project+Management+Duel+http%3A%2F%2Fkovshenin.com%2F%3Fp%3D2365" class="retweet-anywhere" title="Retweet This Post" rev="" rel="2365">retweet</a> this post!</p>


<p>Related posts:<ol><li><a href='http://kovshenin.com/archives/5-really-useful-trac-reports/' rel='bookmark' title='Permanent Link: 5 Really Useful Trac Reports'>5 Really Useful Trac Reports</a></li>
</ol></p>
<p><a href="http://feedads.g.doubleclick.net/~a/w547zGg3h5C7xuEk51gAbktNmQY/0/da"><img src="http://feedads.g.doubleclick.net/~a/w547zGg3h5C7xuEk51gAbktNmQY/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/w547zGg3h5C7xuEk51gAbktNmQY/1/da"><img src="http://feedads.g.doubleclick.net/~a/w547zGg3h5C7xuEk51gAbktNmQY/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://kovshenin.com/archives/teamlab-vs-basecamp-project-management-duel/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Highcharts: Pure Javascript Charts API</title>
		<link>http://kovshenin.com/archives/highcharts-javascript-charts-api/</link>
		<comments>http://kovshenin.com/archives/highcharts-javascript-charts-api/#comments</comments>
		<pubDate>Fri, 30 Jul 2010 18:51:45 +0000</pubDate>
		<dc:creator>kovshenin</dc:creator>
				<category><![CDATA[javascript]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[charts]]></category>
		<category><![CDATA[tools]]></category>

		<guid isPermaLink="false">http://kovshenin.com/?p=2368</guid>
		<description><![CDATA[I was working on a project lately that involved charts and graphs which had to be interactive, lightweight and somewhat complicated. I looked through quite a lot of different chart APIs, and for some time thought that I&#8217;d have to go with Open Flash Chart which is good and simple, but it was Flash. There&#8217;s [...]


Related posts:<ol><li><a href='http://kovshenin.com/archives/inspired-javascript-jquery-love/' rel='bookmark' title='Permanent Link: Inspired: Javascript &#038; jQuery Love'>Inspired: Javascript &#038; jQuery Love</a></li>
<li><a href='http://kovshenin.com/archives/javascript-wordpress-functions/' rel='bookmark' title='Permanent Link: Javascript in WordPress: 2 Functions 2 Save Your Day'>Javascript in WordPress: 2 Functions 2 Save Your Day</a></li>
<li><a href='http://kovshenin.com/archives/javascript-element-suicide/' rel='bookmark' title='Permanent Link: Javascript: Element Suicide'>Javascript: Element Suicide</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>I was working on a project lately that involved charts and graphs which had to be interactive, lightweight and somewhat complicated. I looked through quite a lot of different chart APIs, and for some time thought that I&#8217;d have to go with <a href="http://teethgrinder.co.uk/open-flash-chart-2/">Open Flash Chart</a> which is good and simple, but it was Flash. There&#8217;s nothing wrong with Flash, but Flash is what makes it more complicated to modify and extend. The standard <abbr title="Open Flash Chart">OFC</abbr> functionality seemed to work fine for me, but soon I came across <a href="http://www.highcharts.com/">Highcharts</a>.</p>
<p><img src="http://kovshenin.com/core/wp-content/uploads/2010/07/highcharts.png" alt="Highcharts: Pure Javascript Charts API" title="Highcharts: Pure Javascript Charts API" width="680" height="368" class="aligncenter size-full wp-image-2369" /></p>
<p><a href="http://www.highcharts.com/">Highcharts</a> is purely written in javascript and uses some advanced <abbr title="Scalable Vector Graphics">SVG</abbr> to render the content. It&#8217;s quite impressive and very well documented. Chart control is all done via javascript, and all the options available make it very flexible and extensible. Since everything&#8217;s done in javascript it fits well with PHP without having to write tonnes of code or use some third-party library. The <a href="http://php.net/manual/en/function.json-encode.php">json_encode</a> function comes in very handy when passing options from PHP to Highcharts.</p>
<p>Highcharts is free for personal use, commercial licenses start from $80, which is quite okay. Check out the <a href="http://www.highcharts.com/demo/">Highcharts Demo</a> page for some terrific usage examples. Happy charting and thanks for <a href="http://twitter.com/?status=Highcharts%3A+Pure+Javascript+Charts+API+http%3A%2F%2Fkovshenin.com%2F%3Fp%3D2368" class="retweet-anywhere" title="Retweet This Post" rev="" rel="2368">retweeting</a>!</p>


<p>Related posts:<ol><li><a href='http://kovshenin.com/archives/inspired-javascript-jquery-love/' rel='bookmark' title='Permanent Link: Inspired: Javascript &#038; jQuery Love'>Inspired: Javascript &#038; jQuery Love</a></li>
<li><a href='http://kovshenin.com/archives/javascript-wordpress-functions/' rel='bookmark' title='Permanent Link: Javascript in WordPress: 2 Functions 2 Save Your Day'>Javascript in WordPress: 2 Functions 2 Save Your Day</a></li>
<li><a href='http://kovshenin.com/archives/javascript-element-suicide/' rel='bookmark' title='Permanent Link: Javascript: Element Suicide'>Javascript: Element Suicide</a></li>
</ol></p>
<p><a href="http://feedads.g.doubleclick.net/~a/GoiQsOSrp2xzVPRFDAdTFSo0KR8/0/da"><img src="http://feedads.g.doubleclick.net/~a/GoiQsOSrp2xzVPRFDAdTFSo0KR8/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/GoiQsOSrp2xzVPRFDAdTFSo0KR8/1/da"><img src="http://feedads.g.doubleclick.net/~a/GoiQsOSrp2xzVPRFDAdTFSo0KR8/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://kovshenin.com/archives/highcharts-javascript-charts-api/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>5 Awesome Links for Web Designers &amp; Developers</title>
		<link>http://kovshenin.com/archives/5-awesome-links-for-web-designers-developers/</link>
		<comments>http://kovshenin.com/archives/5-awesome-links-for-web-designers-developers/#comments</comments>
		<pubDate>Sat, 17 Jul 2010 11:45:13 +0000</pubDate>
		<dc:creator>kovshenin</dc:creator>
				<category><![CDATA[php]]></category>
		<category><![CDATA[web design]]></category>

		<guid isPermaLink="false">http://kovshenin.com/?p=2354</guid>
		<description><![CDATA[It&#8217;s July and it&#8217;s so damn hot back here! I think all the possible new records have been set last week in Moscow. Thank god we had those new air conditioners install in the office before the heat wave, otherwise it would&#8217;ve been impossible to work. Anyways, haven&#8217;t tweeted much this week, but I did [...]


Related posts:<ol><li><a href='http://kovshenin.com/archives/awesome-wordpress-blogs-to-follow/' rel='bookmark' title='Permanent Link: A List of Awesome WordPress Blogs to Follow'>A List of Awesome WordPress Blogs to Follow</a></li>
<li><a href='http://kovshenin.com/archives/twitter-friendly-links-alphanumeric/' rel='bookmark' title='Permanent Link: Twitter Friendly Links: Now In Alphanumeric Mode'>Twitter Friendly Links: Now In Alphanumeric Mode</a></li>
<li><a href='http://kovshenin.com/archives/wordpress-plugin-twitter-friendly-links/' rel='bookmark' title='Permanent Link: New WordPress Plugin: Twitter Friendly Links'>New WordPress Plugin: Twitter Friendly Links</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s July and it&#8217;s so damn hot back here! I think all the possible new records have been set last week in Moscow. Thank god we had those new air conditioners install in the office before the heat wave, otherwise it would&#8217;ve been impossible to work. Anyways, haven&#8217;t tweeted much this week, but I did go through my RSS feeds, and here are some interesting links for web design and development fans:</p>
<ul>
<li><a href="http://www.browsercover.me/">Browser Cover me</a> &#8211; before you present your designs to your clients, make sure you give them a cool border with this online app. There are several different systems and browsers you can pick from, which makes it even more awesome!</li>
<li><a href="http://code.google.com/p/phpquery/">phpQuery</a> &#8211; how many times did you have to screenscrape a web page and dig something out of it? Yes, XPath is cool, but it doesn&#8217;t work with HTML people write these days ;) phpQuery gives you the power of jQuery selectors and functions in php!</li>
<li><a href="http://webdesignledger.com/freebies/15-must-have-minimalist-icon-sets/">15 Must-Have Minimalist Icon Sets</a> &#8211; an awesome freebie set for your new web designs. It&#8217;s quite important to keep using the fresh stuff, so posts like these are quite handy</li>
<li><a href="http://www.smashingmagazine.com/2010/07/01/10-useful-wordpress-security-tweaks/">10 Useful WordPress Security Tweaks</a> &#8211; a very nice article on Smashing Magazine about WordPress security. Very informative and awesome!</li>
<li><a href="http://tumblr.kovshenin.com/">Konstantin&#8217;s Notes</a> &#8211; okay okay, this is my Tumblr page which I use to post stuff on the fly, sometimes quite interesting ;) which makes it awesome too!</li>
</ul>
<p>This was the short list for today. Stay tuned and thanks for <a href="http://twitter.com/?status=5+Awesome+Links+for+Web+Designers+%26+Developers+http%3A%2F%2Fkovshenin.com%2F%3Fp%3D2354" class="retweet-anywhere" title="Retweet This Post" rev="" rel="2354">retweeting</a>!</p>


<p>Related posts:<ol><li><a href='http://kovshenin.com/archives/awesome-wordpress-blogs-to-follow/' rel='bookmark' title='Permanent Link: A List of Awesome WordPress Blogs to Follow'>A List of Awesome WordPress Blogs to Follow</a></li>
<li><a href='http://kovshenin.com/archives/twitter-friendly-links-alphanumeric/' rel='bookmark' title='Permanent Link: Twitter Friendly Links: Now In Alphanumeric Mode'>Twitter Friendly Links: Now In Alphanumeric Mode</a></li>
<li><a href='http://kovshenin.com/archives/wordpress-plugin-twitter-friendly-links/' rel='bookmark' title='Permanent Link: New WordPress Plugin: Twitter Friendly Links'>New WordPress Plugin: Twitter Friendly Links</a></li>
</ol></p>
<p><a href="http://feedads.g.doubleclick.net/~a/t7mvVwD-Ncx2HixDsw-RAEyZaxg/0/da"><img src="http://feedads.g.doubleclick.net/~a/t7mvVwD-Ncx2HixDsw-RAEyZaxg/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/t7mvVwD-Ncx2HixDsw-RAEyZaxg/1/da"><img src="http://feedads.g.doubleclick.net/~a/t7mvVwD-Ncx2HixDsw-RAEyZaxg/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://kovshenin.com/archives/5-awesome-links-for-web-designers-developers/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
	</channel>
</rss>
