<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-31006936</id><updated>2012-02-08T02:22:31.762+02:00</updated><category term='xml'/><category term='soap'/><category term='javascript'/><category term='java'/><category term='personal'/><category term='mysql'/><category term='php'/><category term='books'/><category term='graphics'/><category term='music'/><category term='games'/><category term='xslt'/><category term='regexp'/><category term='turbotask.me'/><category term='pdo'/><category term='jquery'/><category term='android'/><category term='economics'/><category term='css'/><category term='html'/><category term='optimization'/><category term='virus'/><category term='video'/><category term='windows'/><category term='oauth'/><category term='psp'/><title type='text'>... notes about computers ...</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>78</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-31006936.post-579777024459831114</id><published>2011-12-02T09:44:00.000+02:00</published><updated>2011-12-02T09:44:10.194+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='php'/><title type='text'>PHP dependency injection</title><content type='html'>&lt;a href="http://www.potstuck.com/2009/01/08/php-dependency-injection/" target="_blank"&gt;http://www.potstuck.com/2009/01/08/php-dependency-injection/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-579777024459831114?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/579777024459831114/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=579777024459831114' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/579777024459831114'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/579777024459831114'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2011/12/php-dependency-injection.html' title='PHP dependency injection'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-8807139601825558912</id><published>2011-10-04T09:16:00.002+03:00</published><updated>2011-10-04T09:16:48.818+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><title type='text'>MS Office 2007 Bulgarian Proofing Tools</title><content type='html'>&lt;a href="http://www.kaldata.com/forums/index.php?showtopic=44797"&gt;http://www.kaldata.com/forums/index.php?showtopic=44797&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-8807139601825558912?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/8807139601825558912/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=8807139601825558912' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/8807139601825558912'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/8807139601825558912'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2011/10/ms-office-2007-bulgarian-proofing-tools.html' title='MS Office 2007 Bulgarian Proofing Tools'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-7675663341626216691</id><published>2011-08-02T11:07:00.000+03:00</published><updated>2011-08-02T11:07:16.121+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='music'/><title type='text'>Itzhak Perlman plays Klezmer</title><content type='html'>&lt;iframe width="425" height="349" src="http://www.youtube.com/embed/DkmFgQ9fM94" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-7675663341626216691?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/7675663341626216691/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=7675663341626216691' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/7675663341626216691'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/7675663341626216691'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2011/08/itzhak-perlman-plays-klezmer.html' title='Itzhak Perlman plays Klezmer'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://img.youtube.com/vi/DkmFgQ9fM94/default.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-2851891559883356811</id><published>2011-07-21T14:12:00.002+03:00</published><updated>2011-07-28T10:25:38.635+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mysql'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><title type='text'>MySQL stored procedure examples</title><content type='html'>MySQL stored procedure, examle 1:&lt;br /&gt;- check for valid input parameter&lt;br /&gt;- declare handler for db error (1062 =&gt; duplicate key)&lt;br /&gt;- insert data&lt;br /&gt;- return status&lt;br /&gt;&lt;br /&gt;&lt;pre class="thecode"&gt;DROP PROCEDURE IF EXISTS test_proc;&lt;br /&gt;&lt;br /&gt;DELIMITER $$&lt;br /&gt;CREATE PROCEDURE test_proc (&lt;br /&gt;        IN p_test_id INT,&lt;br /&gt;        IN p_test_string VARCHAR(255)&lt;br /&gt;    )&lt;br /&gt;BEGIN&lt;br /&gt;  main: BEGIN&lt;br /&gt;&lt;br /&gt;    # declare handler when duplicate key db error is thrown&lt;br /&gt;    DECLARE EXIT HANDLER FOR 1062 BEGIN&lt;br /&gt;        SELECT 1 AS status_code, 'Duplicate entry for input key values' AS status_message;&lt;br /&gt;    END;&lt;br /&gt;&lt;br /&gt;    # check if input parameter is NULL&lt;br /&gt;    IF p_test_id IS NULL OR p_test_id &lt; 1 THEN&lt;br /&gt;        SELECT 2 AS status_code, 'Missing or invalid p_test_id parameter' AS status_message;&lt;br /&gt;        LEAVE main;&lt;br /&gt;    END IF;&lt;br /&gt;&lt;br /&gt;    INSERT INTO test_table&lt;br /&gt;    SET test_id = p_test_id,&lt;br /&gt;        test_string = p_test_string;    &lt;br /&gt;&lt;br /&gt;    SELECT 0 AS status_code, 'OK' AS status_message;&lt;br /&gt;  END main;&lt;br /&gt;END; &lt;br /&gt;$$&lt;br /&gt;DELIMITER ;&lt;br /&gt;&lt;br /&gt;# CALL test_proc(10, 'test string parameter');&lt;br /&gt;&lt;/pre&gt;MySQL stored procedure, example 2:&lt;br/&gt;- optional p_search_criteria parameter; not used if NULL, but used to search with %LIKE% if not NULL&lt;br/&gt;- pagination with prepared statement, because LIMIT cannot use input parameters directly&lt;br/&gt;- return result from query directly&lt;br/&gt;&lt;pre class="thecode"&gt;DROP PROCEDURE IF EXISTS test_proc_2;&lt;br /&gt;&lt;br /&gt;DELIMITER $$&lt;br /&gt;CREATE PROCEDURE test_proc_2 (&lt;br /&gt;        IN p_search_criteria VARCHAR(100),&lt;br /&gt;        IN p_page INT,&lt;br /&gt;        IN p_page_size INT&lt;br /&gt;    )&lt;br /&gt;BEGIN&lt;br /&gt;  main: BEGIN&lt;br /&gt;&lt;br /&gt;    IF p_page IS NULL OR p_page &lt; 1 THEN&lt;br /&gt;        SET p_page = 0;&lt;br /&gt;    ELSE&lt;br /&gt;        SET p_page = p_page - 1;&lt;br /&gt;    END IF;&lt;br /&gt;&lt;br /&gt;    IF p_page_size IS NULL OR p_page_size &lt; 1 THEN&lt;br /&gt;        SET p_page_size = 20;&lt;br /&gt;    END IF;&lt;br /&gt;&lt;br /&gt;    PREPARE STMT FROM 'SELECT * FROM test_table &lt;br /&gt;                       WHERE ? IS NULL OR test_column_1 LIKE ? OR test_column_2 LIKE ? &lt;br /&gt;                       LIMIT ?, ?';&lt;br /&gt;    SET @c1 = p_search_criteria;&lt;br /&gt;    SET @c2 = CONCAT('%', p_search_criteria, '%');&lt;br /&gt;    SET @start = p_page * p_page_size;&lt;br /&gt;    SET @size = p_page_size;&lt;br /&gt;&lt;br /&gt;    EXECUTE STMT USING @c1, @c2, @c2, @start, @size;&lt;br /&gt;    DEALLOCATE PREPARE STMT;&lt;br /&gt;  END main;&lt;br /&gt;END;&lt;br /&gt;$$&lt;br /&gt;DELIMITER ;&lt;br /&gt;&lt;br /&gt;# CALL test_proc_2('searched text', 1, 10);&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-2851891559883356811?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/2851891559883356811/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=2851891559883356811' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/2851891559883356811'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/2851891559883356811'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2011/07/mysql-stored-procedure-examples.html' title='MySQL stored procedure examples'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-8985324030129159443</id><published>2011-06-24T12:51:00.006+03:00</published><updated>2011-06-27T16:53:18.762+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mysql'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><category scheme='http://www.blogger.com/atom/ns#' term='pdo'/><title type='text'>PHP PDO with MySQL stored procedures - problem with selecting OUT parameter</title><content type='html'>One day &lt;i&gt;lost&lt;/i&gt; in discovering how to call and afterwards get stored procedure OUT parameters, finally resolved.&lt;br /&gt;&lt;br /&gt;Stored Procedure:&lt;br /&gt;&lt;pre class="thecode"&gt;DELIMITER $$&lt;br /&gt;&lt;br /&gt;DROP PROCEDURE IF EXISTS `mydb`.`proc_name` $$&lt;br /&gt;CREATE PROCEDURE `mydb`.`proc_name`(&lt;br /&gt;    IN i_myInput INT,&lt;br /&gt;    OUT o_statusCode INT,&lt;br /&gt;    OUT o_statusMsg VARCHAR(255))&lt;br /&gt;BEGIN&lt;br /&gt;    IF i_myInput IS NULL THEN&lt;br /&gt;        SET o_statusCode = 1;&lt;br /&gt;        SET o_statusMsg  = 'Error: input parameter is NULL';&lt;br /&gt;    ElSE&lt;br /&gt;        SET o_statusCode = 0;&lt;br /&gt;        SET o_statusMsg  = 'OK';&lt;br /&gt;    END IF;&lt;br /&gt;&lt;br /&gt;    SELECT NULL as `result`;&lt;br /&gt;END $$&lt;br /&gt;&lt;br /&gt;DELIMITER ;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;PHP Code:&lt;br /&gt;&lt;pre class="thecode"&gt;# create PDO DB object&lt;br /&gt;$mydb = new PDO("mysql:host=localhost;dbname=mydb", "user", "pass");&lt;br /&gt;&lt;br /&gt;$input = 5;&lt;br /&gt;$proc = $mydb-&gt;prepare("CALL proc_name($input, @o_code, @o_message)");&lt;br /&gt;$proc-&gt;execute();&lt;br /&gt;&lt;strong&gt;$proc-&gt;closeCursor();&lt;/strong&gt; # !!!!! the line that resolved the issue&lt;br /&gt;&lt;br /&gt;$output = $mydb-&gt;query("select @o_code, @o_message")-&gt;fetch(PDO::FETCH_ASSOC);&lt;br /&gt;var_dump($output); // array('@o_code'=&gt;'0', 'o_message'=&gt;'OK')&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-8985324030129159443?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/8985324030129159443/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=8985324030129159443' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/8985324030129159443'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/8985324030129159443'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2011/06/php-pdo-with-mysql-stored-procedures.html' title='PHP PDO with MySQL stored procedures - problem with selecting OUT parameter'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-2369340462515278898</id><published>2011-04-12T13:58:00.002+03:00</published><updated>2011-04-12T13:58:34.273+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='music'/><title type='text'>LESZEK MOŻDŻER / LARS DANIELSSON / ZOHAR FRESCO</title><content type='html'>&lt;iframe title="YouTube video player" width="640" height="390" src="http://www.youtube.com/embed/zzHdIU8pabQ" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-2369340462515278898?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/2369340462515278898/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=2369340462515278898' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/2369340462515278898'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/2369340462515278898'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2011/04/leszek-mozdzer-lars-danielsson-zohar.html' title='LESZEK MOŻDŻER / LARS DANIELSSON / ZOHAR FRESCO'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://img.youtube.com/vi/zzHdIU8pabQ/default.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-5198489041387348644</id><published>2011-04-02T23:52:00.000+03:00</published><updated>2011-04-02T23:52:13.934+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='virus'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><title type='text'>Windows Stability Center</title><content type='html'>This is a fake malware detection program, that forces the user to purchase a licence in order to clean and secure his computer via Windows Stability Center. Great article on how to remove it with &lt;a href="http://malwarebytes.org/" target="_blank"&gt;MalwareBytes&lt;/a&gt;:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.bleepingcomputer.com/virus-removal/remove-windows-stability-center" target="_blank"&gt;http://www.bleepingcomputer.com/virus-removal/remove-windows-stability-center&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-5198489041387348644?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/5198489041387348644/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=5198489041387348644' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/5198489041387348644'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/5198489041387348644'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2011/04/windows-stability-center.html' title='Windows Stability Center'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-3996164577154659468</id><published>2011-03-13T12:47:00.000+02:00</published><updated>2011-03-13T12:47:11.848+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Android simple game loop 2 - View Canvas and Handler</title><content type='html'>This is another way to make the gameloop, however it's not done with explicitly created thread by the View, but with a Handler. Instead of calling &lt;strong&gt;postInvalidate()&lt;/strong&gt; from another thread, here the Handler is calling &lt;strong&gt;invalidate()&lt;/strong&gt;.&lt;br /&gt;In terms of performance, my tests showed this way to be something like 10-15% slower (frames per second) than the &lt;a href="http://penkovski.blogspot.com/2011/03/android-simple-game-loop-1-j2me-style.html"&gt;previous loop&lt;/a&gt;, however the movement of the objects is more smooth and nice (it's more noticable when there are many objects). I guess this is because the real drawing of the screen is synchronous with objects movement update. &lt;br /&gt;In the case of Handler, first all objects' coords are updated and then all objects are drawn, because invalidate is called immediately after update.&lt;br /&gt;In the case of thread in the View and &lt;strong&gt;postInvalidate()&lt;/strong&gt;, all objects are updated as fast as the thread can run, and postInvalidate() is called on every cycle, but they are not synchronous operations. It seems that postInvalidate() has tiny random delays in regard to when the real drawing is done by the runtime, and causes the movement of the objects to appear a little bit sluggish (not so smooth).&lt;br /&gt;&lt;br /&gt;Activity:&lt;br /&gt;&lt;pre class="thecode"&gt;package com.test.drawhandler;&lt;br /&gt;&lt;br /&gt;import android.app.Activity;&lt;br /&gt;import android.os.Bundle;&lt;br /&gt;&lt;br /&gt;public class DrawHandler extends Activity &lt;br /&gt;{&lt;br /&gt;    private DrawView mDrawView = null;&lt;br /&gt;    &lt;br /&gt;    @Override&lt;br /&gt;    public void onCreate(Bundle savedInstanceState) {&lt;br /&gt;        super.onCreate(savedInstanceState);&lt;br /&gt;        mDrawView = new DrawView(this);&lt;br /&gt;        setContentView(mDrawView);&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    public void onResume()&lt;br /&gt;    {&lt;br /&gt;        super.onResume();&lt;br /&gt;        mDrawView.start();&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    public void onPause()&lt;br /&gt;    {&lt;br /&gt;        super.onPause();&lt;br /&gt;        mDrawView.stop();&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;View:&lt;br /&gt;&lt;pre class="thecode"&gt;package com.test.drawhandler;&lt;br /&gt;&lt;br /&gt;import android.content.Context;&lt;br /&gt;import android.graphics.Canvas;&lt;br /&gt;import android.graphics.drawable.Drawable;&lt;br /&gt;import android.os.Handler;&lt;br /&gt;import android.os.Message;&lt;br /&gt;import android.view.View;&lt;br /&gt;&lt;br /&gt;public class DrawView extends View &lt;br /&gt;{&lt;br /&gt;    private boolean isRunning = false;&lt;br /&gt;    private Context mContext = null;&lt;br /&gt;    private RefreshHandler mRefreshHandler = null;&lt;br /&gt;    private Drawable mIcon = null;&lt;br /&gt;    private int mIconX = 0;&lt;br /&gt;    private int mIconY = 0;&lt;br /&gt;    &lt;br /&gt;    public DrawView(Context context)&lt;br /&gt;    {&lt;br /&gt;        super(context);&lt;br /&gt;        mContext = context;&lt;br /&gt;        mIcon = context.getResources().getDrawable(R.drawable.icon);&lt;br /&gt;        mRefreshHandler = new RefreshHandler();&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    public void start()&lt;br /&gt;    {&lt;br /&gt;        isRunning = true;&lt;br /&gt;        update();&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    public void stop()&lt;br /&gt;    {&lt;br /&gt;        isRunning = false;&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    @Override&lt;br /&gt;    protected void onDraw(Canvas canvas)&lt;br /&gt;    {&lt;br /&gt;        mIcon.setBounds(mIconX, mIconY, mIconX+48, mIconY+48);&lt;br /&gt;        mIcon.draw(canvas);&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    private void update()&lt;br /&gt;    {&lt;br /&gt;        if(isRunning)&lt;br /&gt;        {&lt;br /&gt;            mIconX++;&lt;br /&gt;            mIconY++;&lt;br /&gt;            mRefreshHandler.sleep(20);&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    class RefreshHandler extends Handler&lt;br /&gt;    {&lt;br /&gt;        @Override&lt;br /&gt;        public void handleMessage(Message msg)&lt;br /&gt;        {&lt;br /&gt;            DrawView.this.update();&lt;br /&gt;            DrawView.this.invalidate();&lt;br /&gt;        }&lt;br /&gt;        &lt;br /&gt;        public void sleep(long delayMillis)&lt;br /&gt;        {&lt;br /&gt;            this.removeMessages(0);&lt;br /&gt;            sendMessageDelayed(obtainMessage(0), delayMillis);&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-3996164577154659468?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/3996164577154659468/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=3996164577154659468' title='2 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/3996164577154659468'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/3996164577154659468'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2011/03/android-simple-game-loop-2-view-canvas.html' title='Android simple game loop 2 - View Canvas and Handler'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-3212954465387737464</id><published>2011-03-12T18:21:00.002+02:00</published><updated>2011-03-13T11:23:49.122+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Android simple game loop 1 - j2me style</title><content type='html'>A simple (almost empty) game loop in Android, which is done the same way, as it is commonly done in &lt;a href="http://download.oracle.com/javame/" target="_blank"&gt;J2ME&lt;/a&gt; game programming. View (Canvas) implements runnable and starts a thread itself. The interesting thing here is, that I cannot call invalidate() method of the VIEW from another thread (the run() method, when moving objects is done) and instead I must call postInvalidate(), which is sending a message to the UI thread message queue. This means that the drawing is not performed immediately, but when the UI thread handles the message.&lt;br /&gt;&lt;br /&gt;Activity class:&lt;br /&gt;&lt;pre class="thecode"&gt;package com.test.drawcanvas;&lt;br /&gt;&lt;br /&gt;import android.app.Activity;&lt;br /&gt;import android.os.Bundle;&lt;br /&gt;&lt;br /&gt;public class DrawCanvas extends Activity&lt;br /&gt;{&lt;br /&gt;    private static DrawView mDrawView = null;&lt;br /&gt;&lt;br /&gt;    @Override&lt;br /&gt;    public void onCreate(Bundle savedInstanceState)&lt;br /&gt;    {&lt;br /&gt;        super.onCreate(savedInstanceState);        &lt;br /&gt;        mDrawView = new DrawView(this);&lt;br /&gt;        setContentView(mDrawView);&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    @Override&lt;br /&gt;    public void onResume()&lt;br /&gt;    {&lt;br /&gt;        super.onResume();&lt;br /&gt;        mDrawView.start();&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    @Override&lt;br /&gt;    public void onPause()&lt;br /&gt;    {&lt;br /&gt;        super.onPause();&lt;br /&gt;        mDrawView.stop();&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;View class:&lt;br /&gt;&lt;pre class="thecode"&gt;package com.test.drawcanvas;&lt;br /&gt;&lt;br /&gt;import android.content.Context;&lt;br /&gt;import android.graphics.Canvas;&lt;br /&gt;import android.graphics.drawable.Drawable;&lt;br /&gt;import android.view.View;&lt;br /&gt;&lt;br /&gt;public class DrawView extends View implements Runnable&lt;br /&gt;{&lt;br /&gt;    public boolean isRunning = false;&lt;br /&gt;    private Context mContext = null;    &lt;br /&gt;    private Thread drawThread = null;   &lt;br /&gt;    private Drawable mIcon = null;&lt;br /&gt;    private int mIconX = 0;&lt;br /&gt;    private int mIconY = 0;&lt;br /&gt;    &lt;br /&gt;    public DrawView(Context context)&lt;br /&gt;    {&lt;br /&gt;        super(context);&lt;br /&gt;        mContext = context;&lt;br /&gt;        mIcon = context.getResources().getDrawable(R.drawable.icon);&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    &lt;br /&gt;    @Override&lt;br /&gt;    protected void onDraw(Canvas canvas)&lt;br /&gt;    {&lt;br /&gt;        mIcon.setBounds(mIconX, m.IconY, mIconX+48, m.IconY+48);&lt;br /&gt;        mIcon.draw(canvas);         &lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    &lt;br /&gt;    public void start()&lt;br /&gt;    {&lt;br /&gt;        isRunning = true;&lt;br /&gt;        if(drawThread == null)&lt;br /&gt;            drawThread = new Thread(this);&lt;br /&gt;        drawThread.start();&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;        &lt;br /&gt;    public void stop()&lt;br /&gt;    {&lt;br /&gt;        isRunning = false;&lt;br /&gt;        drawThread = null;&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    &lt;br /&gt;    private void update()&lt;br /&gt;    {&lt;br /&gt;        mIconX++;&lt;br /&gt;        mIconY++;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;    public void run()&lt;br /&gt;    {&lt;br /&gt;        while(isRunning)&lt;br /&gt;        {&lt;br /&gt;            try&lt;br /&gt;            {&lt;br /&gt;                update();&lt;br /&gt;                postInvalidate();&lt;br /&gt;                drawThread.sleep(20);&lt;br /&gt;            }&lt;br /&gt;            catch(InterruptedException ie) {}&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-3212954465387737464?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/3212954465387737464/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=3212954465387737464' title='1 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/3212954465387737464'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/3212954465387737464'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2011/03/android-simple-game-loop-1-j2me-style.html' title='Android simple game loop 1 - j2me style'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-6093533723178428666</id><published>2011-02-08T21:30:00.001+02:00</published><updated>2011-02-08T21:30:48.273+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='personal'/><category scheme='http://www.blogger.com/atom/ns#' term='turbotask.me'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><title type='text'>turbotask.me</title><content type='html'>I just launched a small task manager application at &lt;a href="http://www.turbotask.me" target="_blank"&gt;www.turbotask.me&lt;/a&gt; built over &lt;a href="http://codeigniter.com" target="_blank"&gt;CodeIgniter&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The idea for it is to check and handle small everyday tasks that I usually used to write in a paperbook. It needs more testing and also I have some more features in mind that will eventually be implemented.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-6093533723178428666?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/6093533723178428666/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=6093533723178428666' title='3 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/6093533723178428666'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/6093533723178428666'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2011/02/turbotaskme.html' title='turbotask.me'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-5812055170743625099</id><published>2011-01-14T20:34:00.000+02:00</published><updated>2011-01-14T20:34:31.013+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='economics'/><title type='text'>Lessons for the young economist</title><content type='html'>&lt;br/&gt;&lt;a href="http://mises.org/resources/5706/Lessons-for-the-Young-Economist-Beta" target="_blank"&gt;http://mises.org/resources/5706/Lessons-for-the-Young-Economist-Beta&lt;/a&gt;&lt;br/&gt;&lt;br /&gt;&lt;object width="640" height="390"&gt;&lt;param name="movie" value="http://www.youtube.com/v/PjZwveXx0qs&amp;hl=en_US&amp;feature=player_embedded&amp;version=3"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowScriptAccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/PjZwveXx0qs&amp;hl=en_US&amp;feature=player_embedded&amp;version=3" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="always" width="640" height="390"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-5812055170743625099?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/5812055170743625099/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=5812055170743625099' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/5812055170743625099'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/5812055170743625099'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2011/01/lessons-for-young-economist.html' title='Lessons for the young economist'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-4501365266993632829</id><published>2011-01-03T00:16:00.000+02:00</published><updated>2011-01-03T00:16:12.997+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='games'/><category scheme='http://www.blogger.com/atom/ns#' term='psp'/><title type='text'>Подкарване на God of War:Ghost of Sparta na PSP 2004</title><content type='html'>&lt;strong&gt;Computer part&lt;/strong&gt;&lt;br /&gt;1. Download &lt;a href="http://dox.bg/files/dw?a=f6a171795b"&gt;ISO Tool&lt;/a&gt;&lt;br /&gt;2. Uncompress the ISO tool rar (if compressed) and copy the whole ISO Tool directory to the PSP directory: ms0:/PSP/GAME&lt;br /&gt;3. Copy the game that needs decryption and patch to PSP ISO folder: ms0:/ISO&lt;br/&gt;&lt;br /&gt;&lt;strong&gt;PSP part&lt;/strong&gt;&lt;br /&gt;4. Disconnect PSP from USB mode and go to memory stick programs&lt;br /&gt;5. Run ISO Tool program&lt;br /&gt;6. Find the ISO of the game&lt;br /&gt;7. Select EBOOT Decrypt and confirm the three questions positively.&lt;br /&gt;8. Select Patch -&gt; Patch Prometheus -&gt; ME631/ -&gt; Yes&lt;br /&gt;9. Exit ISO Tool and play.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-4501365266993632829?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/4501365266993632829/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=4501365266993632829' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/4501365266993632829'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/4501365266993632829'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2011/01/god-of-warghost-of-sparta-na-psp-2004.html' title='Подкарване на God of War:Ghost of Sparta na PSP 2004'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-6659589646672936821</id><published>2010-12-23T23:35:00.002+02:00</published><updated>2010-12-23T23:35:59.683+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='regexp'/><title type='text'>Javascript Regular Expressions</title><content type='html'>&lt;a href="http://lawrence.ecorp.net/inet/samples/regexp-parse.php"&gt;http://lawrence.ecorp.net/inet/samples/regexp-parse.php&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-6659589646672936821?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/6659589646672936821/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=6659589646672936821' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/6659589646672936821'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/6659589646672936821'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/12/javascript-regular-expressions.html' title='Javascript Regular Expressions'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-1138789790903804172</id><published>2010-12-05T19:13:00.008+02:00</published><updated>2010-12-05T19:39:31.877+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='optimization'/><title type='text'>Web Apps optimization tips</title><content type='html'>&lt;a href="http://stackoverflow.com/questions/72394/what-should-a-developer-know-before-building-a-public-web-site"&gt;http://stackoverflow.com/questions/72394/what-should-a-developer-know-before-building-a-public-web-site&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://highscalability.com/start-here/"&gt;http://highscalability.com/start-here/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.mnot.net/cache_docs/"&gt;http://www.mnot.net/cache_docs/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-1138789790903804172?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/1138789790903804172/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=1138789790903804172' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/1138789790903804172'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/1138789790903804172'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/12/web-apps-optimization-tips.html' title='Web Apps optimization tips'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-4363048114706536290</id><published>2010-10-23T18:10:00.007+03:00</published><updated>2010-11-02T16:57:45.361+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Android - simplest way to draw image on screen</title><content type='html'>Main Activity class -&gt; TestDraw.java&lt;br /&gt;&lt;pre class="thecode"&gt;package com.testdraw;&lt;br /&gt;&lt;br /&gt;import android.app.Activity;&lt;br /&gt;import android.os.Bundle;&lt;br /&gt;import android.content.Context;&lt;br /&gt;&lt;br /&gt;public class TestDraw extends Activity&lt;br /&gt;{&lt;br /&gt;  /** Called when the activity is first created. */&lt;br /&gt;  @Override&lt;br /&gt;  public void onCreate(Bundle savedInstanceState)&lt;br /&gt;  {&lt;br /&gt;    super.onCreate(savedInstanceState);&lt;br /&gt;    setContentView(new TestDrawView(this));&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;At least one View is needed to display something on the screen -&gt; TestDrawView.java&lt;br /&gt;&lt;pre class="thecode"&gt;package com.testdraw;&lt;br /&gt;&lt;br /&gt;import android.view.View;&lt;br /&gt;import android.content.Context;&lt;br /&gt;import android.content.res.Resources;&lt;br /&gt;import android.graphics.*;&lt;br /&gt;import android.graphics.drawable.*;&lt;br /&gt;&lt;br /&gt;class TestDrawView extends View&lt;br /&gt;{&lt;br /&gt;  private Context mContext = null;&lt;br /&gt; &lt;br /&gt;  public TestDrawView(Context context)&lt;br /&gt;  {&lt;br /&gt;    super(context);&lt;br /&gt;    mContext = context;&lt;br /&gt;  }&lt;br /&gt; &lt;br /&gt;  protected void onDraw(Canvas canvas)&lt;br /&gt;  {&lt;br /&gt;    Resources res = mContext.getResources();&lt;br /&gt;    Bitmap img = BitmapFactory.decodeResource(res, R.drawable.hooker);&lt;br /&gt;    canvas.drawBitmap(img, 0, 0, null);&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;The image that is drawn is a file taken from the res folder of the project: &lt;b&gt;/res/drawable/hooker.png&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-4363048114706536290?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/4363048114706536290/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=4363048114706536290' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/4363048114706536290'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/4363048114706536290'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/10/android-simplest-way-to-draw-image-on.html' title='Android - simplest way to draw image on screen'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-6922660415718744749</id><published>2010-10-23T13:25:00.001+03:00</published><updated>2010-10-23T15:19:07.317+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Android - build samples without Eclipse</title><content type='html'>Go to the SDK samples directory and to the project directory that should be built:&lt;br /&gt;&lt;pre class="thecode"&gt;cd %ANDROID_SDK%\samples\android-7&lt;br /&gt;cd LunarLander&lt;br /&gt;&lt;/pre&gt;The project initially doesn't have build.xml file, which is needed by ANT to make the .apk of the application. &lt;br /&gt;&lt;br /&gt;To create a build.xml file, the project should be updated so that it knows for which target it should be built (AVD) - android 1.5/1.6/2.0, etc.&lt;br /&gt;&lt;pre class="thecode"&gt;android update project --target 3 --path .&lt;br /&gt;&lt;/pre&gt;The command will update the project in the current path (.) to use libraries for Android 1.6 (Target 3) and this command will also create build.xml file.&lt;br /&gt;&lt;br /&gt;Next ANT can build the project and it can be installed on the emulator:&lt;br /&gt;&lt;pre class="thecode"&gt;ant debug&lt;br /&gt;adb install -r bin\ProjectName-debug.apk&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-6922660415718744749?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/6922660415718744749/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=6922660415718744749' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/6922660415718744749'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/6922660415718744749'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/10/android-build-samples-without-eclipse.html' title='Android - build samples without Eclipse'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-2014196050480295887</id><published>2010-10-21T11:31:00.002+03:00</published><updated>2010-10-21T11:31:45.320+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='personal'/><title type='text'>My travel map</title><content type='html'>&lt;div style="width:750px; position: relative;"&gt;&lt;object width="750" height="400" type="application/x-shockwave-flash" data="http://static.travbuddy.com/flash/countries_map.swf?id=4894457" height="400" width="750"&gt;&lt;param name="movie" value="http://static.travbuddy.com/flash/countries_map.swf?id=4894457" /&gt;&lt;param name="quality" value="high" /&gt;&lt;param name="bgcolor" value="#372060" /&gt;&lt;embed src="http://static.travbuddy.com/flash/countries_map.swf?id=4894457" quality="high" bgcolor="#372060" width="750" height="400" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;div style="background-color: #38235b; padding: 5px 0px 5px 0px; text-align: center; width: 749px; border-left: 1px solid #372060;"&gt;&lt;a href="http://www.travbuddy.com/travel-widgets"&gt;&lt;img src="http://static.travbuddy.com/images/widget_map_promote_v2.gif" border="0"&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.travbuddy.com/browse/users"&gt;&lt;img src="http://static.travbuddy.com/images/widget_map_promote_meet.gif" border="0"&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-2014196050480295887?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/2014196050480295887/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=2014196050480295887' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/2014196050480295887'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/2014196050480295887'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/10/my-travel-map.html' title='My travel map'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-1765110995013528297</id><published>2010-10-19T13:58:00.001+03:00</published><updated>2010-10-19T13:59:38.763+03:00</updated><title type='text'>Persistent Login Cookie Best Practice</title><content type='html'>&lt;a href="http://fishbowl.pastiche.org/2004/01/19/persistent_login_cookie_best_practice/"&gt;http://fishbowl.pastiche.org/2004/01/19/persistent_login_cookie_best_practice/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-1765110995013528297?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/1765110995013528297/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=1765110995013528297' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/1765110995013528297'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/1765110995013528297'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/10/persistent-login-cookie-best-practice.html' title='Persistent Login Cookie Best Practice'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-8147732889979833406</id><published>2010-10-03T11:19:00.002+03:00</published><updated>2010-10-03T15:24:26.667+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='economics'/><title type='text'>The crisis of credit</title><content type='html'>&lt;object width="400" height="225"&gt;&lt;param name="allowfullscreen" value="true" /&gt;&lt;param name="allowscriptaccess" value="always" /&gt;&lt;param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=3261363&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=1&amp;amp;color=&amp;amp;fullscreen=1&amp;amp;autoplay=0&amp;amp;loop=0" /&gt;&lt;embed src="http://vimeo.com/moogaloop.swf?clip_id=3261363&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=1&amp;amp;color=&amp;amp;fullscreen=1&amp;amp;autoplay=0&amp;amp;loop=0" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="225"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;p&gt;&lt;a href="http://vimeo.com/3261363"&gt;The Crisis of Credit Visualized&lt;/a&gt; from &lt;a href="http://vimeo.com/jonathanjarvis"&gt;Jonathan Jarvis&lt;/a&gt; on &lt;a href="http://vimeo.com"&gt;Vimeo&lt;/a&gt;.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-8147732889979833406?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/8147732889979833406/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=8147732889979833406' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/8147732889979833406'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/8147732889979833406'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/10/crisis-of-credit.html' title='The crisis of credit'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-274523606653411235</id><published>2010-09-07T15:46:00.003+03:00</published><updated>2010-09-07T18:48:47.109+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><title type='text'>Hip Hop compiler for PHP</title><content type='html'>&lt;object width="480" height="385"&gt;&lt;param name="movie" value="http://www.youtube.com/v/p5S1K60mhQU?fs=1&amp;amp;hl=en_US"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/p5S1K60mhQU?fs=1&amp;amp;hl=en_US" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-274523606653411235?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/274523606653411235/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=274523606653411235' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/274523606653411235'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/274523606653411235'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/09/hip-hop-compiler-for-php.html' title='Hip Hop compiler for PHP'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-3948752723766788172</id><published>2010-09-07T00:10:00.001+03:00</published><updated>2010-09-07T00:10:58.096+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='personal'/><title type='text'>QR code</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_gDN22F7c9gw/TIVYjhS9YTI/AAAAAAAABaE/846Zx1FToNU/s1600/qr-luben.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img style="border:0px !important;" border="0" height="400" src="http://3.bp.blogspot.com/_gDN22F7c9gw/TIVYjhS9YTI/AAAAAAAABaE/846Zx1FToNU/s400/qr-luben.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-3948752723766788172?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/3948752723766788172/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=3948752723766788172' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/3948752723766788172'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/3948752723766788172'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/09/qr-code.html' title='QR code'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_gDN22F7c9gw/TIVYjhS9YTI/AAAAAAAABaE/846Zx1FToNU/s72-c/qr-luben.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-6435260243583219187</id><published>2010-09-04T13:31:00.001+03:00</published><updated>2010-12-05T19:21:02.151+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='personal'/><category scheme='http://www.blogger.com/atom/ns#' term='graphics'/><title type='text'>Drawing in harmony - old man</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_gDN22F7c9gw/TIIYNsCCDdI/AAAAAAAABZ8/sRaVpGoAj5g/s1600/harmony-old-man.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_gDN22F7c9gw/TIIYNsCCDdI/AAAAAAAABZ8/sRaVpGoAj5g/s640/harmony-old-man.png" width="500" style="border:none !important"/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;a href="http://www.chromeexperiments.com/detail/harmony/"&gt;http://www.chromeexperiments.com/detail/harmony/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-6435260243583219187?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/6435260243583219187/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=6435260243583219187' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/6435260243583219187'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/6435260243583219187'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/09/drawing-in-harmony-old-man.html' title='Drawing in harmony - old man'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_gDN22F7c9gw/TIIYNsCCDdI/AAAAAAAABZ8/sRaVpGoAj5g/s72-c/harmony-old-man.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-7767069113480372463</id><published>2010-09-01T17:21:00.001+03:00</published><updated>2010-09-01T17:22:18.885+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='xml'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><title type='text'>SimpleXML parse elements with different namespace</title><content type='html'>Example XML file with two different namespaces (xmldata.xml):&lt;br /&gt;&lt;pre class="thecode"&gt;&amp;lt;!-- xmldata.xml --&amp;gt;&lt;br /&gt;&amp;lt;rootnode xmlns=&amp;quot;http://mydomain.com/2010&amp;quot;&amp;gt;&lt;br /&gt;    &amp;lt;node&amp;gt;&lt;br /&gt;        &amp;lt;title&amp;gt;This is the first Node&amp;lt;/title&amp;gt;&lt;br /&gt;        &amp;lt;meta&amp;gt;&lt;br /&gt;            &amp;lt;dc:language&amp;gt;en&amp;lt;/dc:language&amp;gt;&lt;br /&gt;        &amp;lt;/meta&amp;gt;&lt;br /&gt;    &amp;lt;/node&amp;gt;&lt;br /&gt;    &amp;lt;node&amp;gt;&lt;br /&gt;        &amp;lt;title&amp;gt;This is the second Node&amp;lt;/title&amp;gt;&lt;br /&gt;        &amp;lt;meta&amp;gt;&lt;br /&gt;            &amp;lt;dc:language&amp;gt;en&amp;lt;/dc:language&amp;gt;&lt;br /&gt;        &amp;lt;/meta&amp;gt;&lt;br /&gt;    &amp;lt;/node&amp;gt;&lt;br /&gt;&amp;lt;/rootnode&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;PHP script to get the data:&lt;br /&gt;&lt;pre class="thecode"&gt;$dc_namespace = 'http://purl.org/dc/elements/1.1/';&lt;br /&gt;&lt;br /&gt;$data = simplexml_load_file('xmldata.xml');&lt;br /&gt;foreach($data as $node)&lt;br /&gt;{&lt;br /&gt;    $title = $node-&gt;title;&lt;br /&gt;    $lang  = $node-&gt;meta-&gt;children($dc_namespace)-&gt;language;&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-7767069113480372463?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/7767069113480372463/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=7767069113480372463' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/7767069113480372463'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/7767069113480372463'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/09/simplexml-parse-elements-with-different.html' title='SimpleXML parse elements with different namespace'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-5794959275787043208</id><published>2010-08-31T15:50:00.001+03:00</published><updated>2010-08-31T16:51:59.806+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='xml'/><category scheme='http://www.blogger.com/atom/ns#' term='xslt'/><title type='text'>XSLT match elements with namespace (XPath)</title><content type='html'>Example XML file where all elements have (default) namespace:&lt;br /&gt;&lt;pre class="thecode"&gt;&amp;lt;rootnode xmlns=&amp;quot;http://www.mydomain.com/2010&amp;quot;&amp;gt;&lt;br /&gt; &amp;lt;myelement&amp;gt;&lt;br /&gt;  &amp;lt;title&amp;gt;title of element 1&amp;lt;/title&amp;gt;&lt;br /&gt;  &amp;lt;uri&amp;gt;http://example.com&amp;lt;/uri&amp;gt;&lt;br /&gt; &amp;lt;/myelement&amp;gt;&lt;br /&gt; &amp;lt;myelement&amp;gt;&lt;br /&gt;  &amp;lt;title&amp;gt;title of element 2&amp;lt;/title&amp;gt;&lt;br /&gt;  &amp;lt;uri&amp;gt;http://example.com&amp;lt;/uri&amp;gt;&lt;br /&gt; &amp;lt;/myelement&amp;gt;&lt;br /&gt;&amp;lt;/rootnode&amp;gt;&lt;br /&gt;&lt;/pre&gt;Example XSL file matching elements from the XML file above:&lt;br /&gt;&lt;pre class="thecode"&gt;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&lt;br /&gt;&amp;lt;xsl:transform version=&amp;quot;1.0&amp;quot; xmlns:xsl=&amp;quot;http://www.w3.org/1999/XSL/Transform&amp;quot; &lt;br /&gt;         &lt;strong&gt;xmlns:customNS=&amp;quot;http://mydomain.com/2010&amp;quot;&lt;/strong&gt;&amp;gt;&lt;br /&gt; &amp;lt;xsl:template match=&amp;quot;/&amp;quot;&amp;gt;&lt;br /&gt;  &amp;lt;xsl:for-each select=&amp;quot;customNS:rootnode/customNS:myelement&amp;quot;&amp;gt;&lt;br /&gt;  &amp;lt;entry&amp;gt;&lt;br /&gt;   &amp;lt;entrytitle&amp;gt;&amp;lt;xsl:value-of select=&amp;quot;customNS:title&amp;quot;/&amp;gt;&amp;lt;/entrytitle&amp;gt;&lt;br /&gt;   &amp;lt;entryurl&amp;gt;&amp;lt;xsl:value-of select=&amp;quot;customNS:uri&amp;quot;/&amp;gt;&amp;lt;/entryurl&amp;gt;&lt;br /&gt;  &amp;lt;/entry&amp;gt;&lt;br /&gt;  &amp;lt;/xsl:for-each&amp;gt;  &lt;br /&gt; &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;&amp;lt;/xsl:transform&amp;gt;&lt;br /&gt;&lt;/pre&gt;The namespace from the XML file should be declared in the XSL file and should be given a name (e.g. customNS), so its elements can be referenced from the XSL file.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-5794959275787043208?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/5794959275787043208/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=5794959275787043208' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/5794959275787043208'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/5794959275787043208'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/08/xslt-match-elements-with-namespace.html' title='XSLT match elements with namespace (XPath)'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-1373777286514809835</id><published>2010-08-24T18:52:00.003+03:00</published><updated>2010-11-02T10:48:16.582+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='php'/><category scheme='http://www.blogger.com/atom/ns#' term='oauth'/><title type='text'>Response delay problem with PHP OAuth PECL extension</title><content type='html'>In our situation we have configuration of Apache (httpd.conf) that takes advantage of Keep-Alive extension to HTTP (HTTP/1.1)&lt;br /&gt;&lt;br /&gt;When our OAuth consumer application is calling &lt;strong&gt;$consumer-&gt;getRequestToken()&lt;/strong&gt;, &lt;strong&gt;$consumer-&gt;getAccessToken()&lt;/strong&gt; or &lt;strong&gt;$consumer-&gt;fetch()&lt;/strong&gt;, the request goes to the OAuthProvider and the work done by the Provider is finished for little time (under a second), however response to the consumer is coming back after 5 seconds. This is exactly the value set for Keep-Alive in the Apache configuration.&lt;br /&gt;&lt;br /&gt;We read again the OAuth documentation and saw that when calling &lt;strong&gt;$consumer-&gt;fetch()&lt;/strong&gt;, the fourth parameter (optional) that can be passed to the function is array of HTTP headers. So we passed in &lt;strong&gt;"Connection:close"&lt;/strong&gt; header.&lt;br /&gt;&lt;pre class="thecode"&gt;$consumer-&gt;fetch('http://example.com/api/', null, OAUTH_HTTP_METHOD_POST, array('Connection'=&gt;'close'));&lt;br /&gt;&lt;/pre&gt;That solved the problem but only for the &lt;strong&gt;fetch&lt;/strong&gt; function, because the other functions do not provide a way to pass in HTTP headers.&lt;br /&gt;&lt;br /&gt;We looked in the oauth.c code (the extension is open-source) and saw this for getRequestToken function:&lt;br /&gt;&lt;pre class="thecode"&gt;/* {{{ proto array OAuth::getRequestToken(string request_token_url [, string callback_url ])&lt;br /&gt;   Get request token */&lt;br /&gt;SO_METHOD(getRequestToken)&lt;br /&gt;{&lt;br /&gt; ...&lt;br /&gt; ...&lt;br /&gt;&lt;br /&gt; retcode = oauth_fetch(soo, url, oauth_get_http_method(soo, OAUTH_HTTP_METHOD_GET TSRMLS_CC), NULL, NULL, args, 0 TSRMLS_CC);&lt;br /&gt;&lt;br /&gt; ...&lt;br /&gt; ...&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;Obviously the fourth parameter which is for HTTP headers is always NULL when getRequestToken is called and it's the same for getAccessToken. &lt;br /&gt;&lt;br /&gt;The solution that worked for us was to send this header always from the Provider side when returning result to the consumer:&lt;br /&gt;&lt;pre class="thecode"&gt;header('HTTP/1.1 200 OK');&lt;br /&gt;header('Content-Type: text/plain');&lt;br /&gt;&lt;strong&gt;header('Connection:close');&lt;/strong&gt;&lt;br /&gt;echo $result;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-1373777286514809835?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/1373777286514809835/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=1373777286514809835' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/1373777286514809835'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/1373777286514809835'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/08/connection-close-problem-with-php-oauth.html' title='Response delay problem with PHP OAuth PECL extension'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-6648344233398275131</id><published>2010-08-09T20:22:00.009+03:00</published><updated>2010-09-01T23:49:31.522+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='oauth'/><title type='text'>Open Authentication sequence diagram (OAuth) Dirty flow</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_gDN22F7c9gw/TGA4bemhKXI/AAAAAAAABZg/07VBTHtxNhc/s1600/oauth-sequence-diagram.jpg" imageanchor="1" style="border: 0px none ! important; clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="640" src="http://1.bp.blogspot.com/_gDN22F7c9gw/TGA4bemhKXI/AAAAAAAABZg/07VBTHtxNhc/s640/oauth-sequence-diagram.jpg" style="border: 0px none ! important;" width="450" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://oauth.net/"&gt;OAuth Official Site&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://tools.ietf.org/html/rfc5849"&gt;OAuth 1.0 RFC&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="https://sites.google.com/site/oauthgoog/Home"&gt;Google OAuth &amp;amp; Federated Login Research&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-6648344233398275131?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/6648344233398275131/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=6648344233398275131' title='1 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/6648344233398275131'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/6648344233398275131'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/08/open-authentication-sequence-diagram.html' title='Open Authentication sequence diagram (OAuth) Dirty flow'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_gDN22F7c9gw/TGA4bemhKXI/AAAAAAAABZg/07VBTHtxNhc/s72-c/oauth-sequence-diagram.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-7715749687270647896</id><published>2010-07-06T14:39:00.004+03:00</published><updated>2010-07-06T17:22:00.631+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='soap'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><title type='text'>Echo variable value from SOAP server to caller for debugging</title><content type='html'>A fast way to return a variable value for debugging without need to create objects to pass back to the caller.&lt;br /&gt;Somewhere in the SOAP server code:&lt;br /&gt;&lt;pre class="thecode"&gt;throw new SoapFault('My Server Error', var_export($variable_value_to_return, true));&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-7715749687270647896?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/7715749687270647896/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=7715749687270647896' title='2 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/7715749687270647896'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/7715749687270647896'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/07/echo-variable-value-from-soap-server-to.html' title='Echo variable value from SOAP server to caller for debugging'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-7627252098734597393</id><published>2010-07-05T19:25:00.001+03:00</published><updated>2010-07-05T19:26:20.527+03:00</updated><title type='text'>By Nedman</title><content type='html'>1. Спри всички звуци около себе си.&lt;br /&gt;&lt;br /&gt;2. Пусни си колонките&lt;br /&gt;&lt;br /&gt;3. Отвори &lt;a href="http://www.rainymood.com/" target="_blank"&gt;http://www.rainymood.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;4. В друг таб отвори &lt;a href="http://www.endlessyoutube.com/watch?v=HMnrl0tmd3k" target="_blank"&gt;http://www.endlessyoutube.com/watch?v=HMnrl0tmd3k&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;5. Облегни се назад.&lt;br /&gt;&lt;br /&gt;6. Отпусни се.&lt;br /&gt;&lt;br /&gt;7. Кефѝ се.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://nednet.us"&gt;nedman&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-7627252098734597393?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/7627252098734597393/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=7627252098734597393' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/7627252098734597393'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/7627252098734597393'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/07/by-nedman.html' title='By Nedman'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-1839733866602782232</id><published>2010-06-18T13:27:00.003+03:00</published><updated>2010-06-18T13:28:01.485+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='html'/><category scheme='http://www.blogger.com/atom/ns#' term='css'/><title type='text'>The Principles Of Cross-Browser CSS Coding</title><content type='html'>&lt;a href="http://www.smashingmagazine.com/2010/06/07/the-principles-of-cross-browser-css-coding/" target="_blank"&gt;The Principles Of Cross-Browser CSS Coding&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-1839733866602782232?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/1839733866602782232/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=1839733866602782232' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/1839733866602782232'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/1839733866602782232'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/06/principles-of-cross-browser-css-coding.html' title='The Principles Of Cross-Browser CSS Coding'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-5933129250976828673</id><published>2010-06-18T11:50:00.008+03:00</published><updated>2010-06-18T13:36:51.433+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jquery'/><title type='text'>How to create jQuery function</title><content type='html'>Example: Create function &lt;b&gt;setPosition(x,y)&lt;/b&gt; that will set &lt;i&gt;top &lt;/i&gt;and &lt;i&gt;left &lt;/i&gt;CSS properties of element:&lt;br /&gt;&lt;pre class="thecode"&gt;jQuery.fn.setPosition = function(x, y) {&lt;br /&gt;   this.css("position", "absolute");&lt;br /&gt;   this.css("top", y);&lt;br /&gt;   this.css("left", x);&lt;br /&gt;   return this;&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;After that the function can be used like this:&lt;br /&gt;&lt;pre class="thecode"&gt;$('#element').setPosition(100, 200);&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-5933129250976828673?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/5933129250976828673/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=5933129250976828673' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/5933129250976828673'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/5933129250976828673'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/06/how-to-create-jquery-function.html' title='How to create jQuery function'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-9067341257861084175</id><published>2010-06-18T11:33:00.004+03:00</published><updated>2010-06-18T11:35:14.799+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='graphics'/><title type='text'>Free web graphic sets by cool US guys</title><content type='html'>&lt;a href="http://www.dezinerfolio.com/downloads" target="_blank"&gt;http://www.dezinerfolio.com/downloads&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-9067341257861084175?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/9067341257861084175/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=9067341257861084175' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/9067341257861084175'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/9067341257861084175'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/06/free-web-graphics-sets-by-cool-us-guys.html' title='Free web graphic sets by cool US guys'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-4420784861644362064</id><published>2010-06-10T18:55:00.003+03:00</published><updated>2010-06-10T18:56:24.387+03:00</updated><title type='text'>Martin Fowler from "Who needs an architect?"</title><content type='html'>&lt;div class="thecode"&gt;Software is not limited by physics, like&lt;br /&gt;buildings are. It is limited by imagination,&lt;br /&gt;by design, by organization. In&lt;br /&gt;short, it is limited by properties of people,&lt;br /&gt;not by properties of the world. “We&lt;br /&gt;have met the enemy, and he is us.”&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://martinfowler.com/ieeeSoftware/whoNeedsArchitect.pdf" target="_blank"&gt;http://martinfowler.com/ieeeSoftware/whoNeedsArchitect.pdf&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-4420784861644362064?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/4420784861644362064/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=4420784861644362064' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/4420784861644362064'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/4420784861644362064'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/06/martin-fowler.html' title='Martin Fowler from &quot;Who needs an architect?&quot;'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-3630937148824263091</id><published>2010-06-10T16:15:00.002+03:00</published><updated>2010-06-10T16:17:07.371+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='html'/><category scheme='http://www.blogger.com/atom/ns#' term='css'/><title type='text'>CSS elements hack for IE browsers</title><content type='html'>If an element has to have a different CSS element value for IE 6 or IE 7 than other browsers like IE 8, Firefox, Opera, etc., the syntax is like this:&lt;br /&gt;&lt;br /&gt;&lt;div class="thecode"&gt;.myelement&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;margin:10px; /* this is normal styling for all browsers */&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;_margin:20px; /* this will overwrite the above style for IE 6 browser */&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;*margin:30px; /* this will overwrite the above styles for IE 7 browser */&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;That means that with underscore (_) you get a style that will be applied in IE 6 browser only and with asterisk (*) you get a style that will be applied in IE 7 browser.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-3630937148824263091?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/3630937148824263091/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=3630937148824263091' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/3630937148824263091'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/3630937148824263091'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/06/css-elements-hack-for-ie-browsers.html' title='CSS elements hack for IE browsers'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-6181996385234463241</id><published>2010-05-04T23:54:00.000+03:00</published><updated>2010-06-10T16:17:20.753+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='economics'/><category scheme='http://www.blogger.com/atom/ns#' term='personal'/><title type='text'>The online library of Liberty</title><content type='html'>2010 Edition (5th and Annivesary Edition)&lt;br /&gt;&lt;br /&gt;&lt;a href="http://oll.libertyfund.org/index.php?option=com_content&amp;task=view&amp;id=1543&amp;Itemid=352"&gt;http://oll.libertyfund.org/index.php?option=com_content&amp;task=view&amp;id=1543&amp;Itemid=352&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-6181996385234463241?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/6181996385234463241/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=6181996385234463241' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/6181996385234463241'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/6181996385234463241'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/05/online-library-of-liberty.html' title='The online library of Liberty'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-3320668249133329227</id><published>2010-04-29T15:16:00.002+03:00</published><updated>2010-08-11T12:23:19.264+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jquery'/><title type='text'>Learning JQuery</title><content type='html'>&lt;a href="http://www.learningjquery.com" target="_blank"&gt;http://www.learningjquery.com&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-3320668249133329227?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/3320668249133329227/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=3320668249133329227' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/3320668249133329227'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/3320668249133329227'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/04/learning-jquery.html' title='Learning JQuery'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-2060106366718027973</id><published>2010-04-16T18:57:00.001+03:00</published><updated>2010-06-10T16:17:36.191+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><title type='text'>Dan the Man</title><content type='html'>&lt;object width="480" height="385"&gt;&lt;param name="movie" value="http://www.youtube.com/v/SEVU-YLpM8A&amp;hl=en_US&amp;fs=1&amp;color1=0x006699&amp;color2=0x54abd6"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/SEVU-YLpM8A&amp;hl=en_US&amp;fs=1&amp;color1=0x006699&amp;color2=0x54abd6" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-2060106366718027973?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/2060106366718027973/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=2060106366718027973' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/2060106366718027973'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/2060106366718027973'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/04/dan-man.html' title='Dan the Man'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-4874887545458326130</id><published>2010-04-14T12:40:00.001+03:00</published><updated>2010-06-10T16:17:41.554+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='personal'/><title type='text'>Color IQ test</title><content type='html'>&lt;a href="http://www.xrite.com/ph_toolframe.aspx?action=coloriq"&gt;http://www.xrite.com/ph_toolframe.aspx?action=coloriq&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;table style="width:auto;"&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://picasaweb.google.com/lh/photo/bsSnqqIS3xFwzg8qcu1KDzwxh_TJMG2urYholxP3Xbs?feat=embedwebsite"&gt;&lt;img src="http://lh6.ggpht.com/_gDN22F7c9gw/S8WNgbMT5pI/AAAAAAAABYU/OGwi_g9MHU0/s400/iqtest1.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="font-family:arial,sans-serif; font-size:11px; text-align:right"&gt;From &lt;a href="http://picasaweb.google.com/penkovski/Blogger?authkey=Gv1sRgCOqWyu7a0-DSsAE&amp;feat=embedwebsite"&gt;Снимки в Blogger&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;table style="width:auto;"&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://picasaweb.google.com/lh/photo/21daSQjLYGZW2NjXSgUZmjwxh_TJMG2urYholxP3Xbs?feat=embedwebsite"&gt;&lt;img src="http://lh5.ggpht.com/_gDN22F7c9gw/S8WNgR-SdhI/AAAAAAAABYY/Dq_MikePcJE/s400/iqtest2.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="font-family:arial,sans-serif; font-size:11px; text-align:right"&gt;From &lt;a href="http://picasaweb.google.com/penkovski/Blogger?authkey=Gv1sRgCOqWyu7a0-DSsAE&amp;feat=embedwebsite"&gt;Снимки в Blogger&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-4874887545458326130?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/4874887545458326130/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=4874887545458326130' title='1 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/4874887545458326130'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/4874887545458326130'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/04/color-iq-test.html' title='Color IQ test'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_gDN22F7c9gw/S8WNgbMT5pI/AAAAAAAABYU/OGwi_g9MHU0/s72-c/iqtest1.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-62721074104728244</id><published>2010-04-12T14:18:00.002+03:00</published><updated>2010-04-12T14:18:34.494+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='books'/><title type='text'>Books</title><content type='html'>&lt;a href="http://www.knowing.net/index.php/2010/03/04/10-most-influential-software-development-books-of-the-past-10-years/" target="_blank"&gt;http://www.knowing.net/index.php/2010/03/04/10-most-influential-software-development-books-of-the-past-10-years/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-62721074104728244?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/62721074104728244/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=62721074104728244' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/62721074104728244'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/62721074104728244'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/04/books.html' title='Books'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-773009587732187480</id><published>2010-04-09T11:18:00.002+03:00</published><updated>2010-04-09T11:18:28.644+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='games'/><title type='text'>Pixels</title><content type='html'>&lt;object width="480" height="270"&gt;&lt;param name="movie" value="http://www.dailymotion.com/swf/video/xcv6dv"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowScriptAccess" value="always"&gt;&lt;/param&gt;&lt;embed type="application/x-shockwave-flash" src="http://www.dailymotion.com/swf/video/xcv6dv" width="480" height="270" allowfullscreen="true" allowscriptaccess="always"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;b&gt;&lt;a href="http://www.dailymotion.com/video/xcv6dv_pixels-by-patrick-jean_creation"&gt;PIXELS by PATRICK JEAN.&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;&lt;i&gt;Uploaded by &lt;a href="http://www.dailymotion.com/onemoreprod"&gt;onemoreprod&lt;/a&gt;. - &lt;a href="http://www.dailymotion.com/en/channel/creation"&gt;Arts and animation videos.&lt;/a&gt;&lt;/i&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-773009587732187480?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/773009587732187480/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=773009587732187480' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/773009587732187480'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/773009587732187480'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/04/pixels.html' title='Pixels'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-1582290114760016557</id><published>2010-04-08T21:23:00.002+03:00</published><updated>2010-06-10T16:17:51.570+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='personal'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><title type='text'>Cygwin problem with E editor</title><content type='html'>Extract from a &lt;a href="http://www.e-texteditor.com/forum/viewtopic.php?t=3535&amp;highlight=cygwin"&gt;forum&lt;/a&gt; on how to setup cygwin for E text editor:&lt;br /&gt;&lt;br /&gt;- Download the latest setup.exe from the Cygwin website. ??? not sure if this should be done, I made it only with the legacy file&lt;br /&gt;- Download setup-legacy.exe from &lt;a href="http://cygwin.com/setup-legacy.exe  "&gt;http://cygwin.com/setup-legacy.exe&lt;/a&gt;&lt;br /&gt;- Run setup-legacy.exe from its download location and install Cygwin. Install to C:\cygwin and save packages locally to C:\cygpkg&lt;br /&gt;- Open up E Text Editor. Go to Edit Menu -&gt; Settings. Go to the 'UNIX' tab. Click 'Initialize Now'. Click to 'Install from Local Directory' then select C:\cygpkg as your locally saved location.&lt;br /&gt;- Look at the error displayed. Setup should say there is an unregconized line in the setup.ini. Please check the line number. It should be 2571 as of the post but if Cygwin gets updated once again it MAY very well change. Remember this and open setup.ini in an editor that supports UNIX line breaks (E will work, Notepad will not). Find the following at line 2571 or what it said for you:&lt;br /&gt;&lt;br /&gt;&lt;div class="thecode"&gt;Code:&lt;br /&gt;&lt;br /&gt;message: new-cygwin-version "This is the first time you've installed Cygwin 1.7.1.&lt;br /&gt;Please be advised that this is a major release.&lt;br /&gt;If you have not done so already, please check out&lt;br /&gt;the documentation at ... to see how&lt;br /&gt;the upgrade could potentially affect any existing&lt;br /&gt;Cygwin installation.&lt;br /&gt;&lt;br /&gt;If this is the first time you've installed Cygwin on&lt;br /&gt;this system then you can ignore this message."&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;- Delete everything above! and save the file.&lt;br /&gt;- Once again, open up E Text Editor. Go to Edit Menu -&gt; Settings. Go to the 'UNIX' tab. Click 'Initialize Now'. Click to 'Install from Local Directory' then select C:\cygpkg as your locally saved location. This time it should go through and install properly with a few warnings. Afterwards, E should recognize that Cygwin is setup.&lt;br /&gt;&lt;br /&gt;Optional (if you want to use the officially supported Cygwin version for E, which I would recommend):&lt;br /&gt;- Delete C:\Cygwin and C:\Cygpkg&lt;br /&gt;- Download setup-legacy.exe&lt;br /&gt;- Run setup-legacy.exe from its download location.&lt;br /&gt;- Install exactly Cygwin to the place it was before. C:\cygwin and local packages at C:\cygpkg&lt;br /&gt;- You should not have to reinitialize Cygwin in E because it still thinks and knows it is there.&lt;br /&gt;&lt;br /&gt;Reason for installing non-legacy first is because it worked for me and cygwin-setup-p.exe doesnt seem to recognize setup-legacy.ini as the legacy setup runs. I did not try to rename it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-1582290114760016557?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/1582290114760016557/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=1582290114760016557' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/1582290114760016557'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/1582290114760016557'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/04/cygwin-problem-with-e-editor.html' title='Cygwin problem with E editor'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-2413948348051123398</id><published>2010-03-27T14:47:00.004+02:00</published><updated>2010-06-10T16:18:00.562+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='economics'/><category scheme='http://www.blogger.com/atom/ns#' term='personal'/><title type='text'>Из история на древен Рим</title><content type='html'>&lt;i&gt;"Нивите опустяха, никой не сее и не жънее вече, хората бягат при варварите или се крият в горите. Селата и градовете опустяват като при епидемия, а чиновниците и бирниците плъзнаха повече от занаятчиите и селяните, които обработват земята. А бяха по лоши от хуните и знаеха само - Дай, дай, дай!"&lt;/i&gt; - 451 година от новата ера; ръкопис от неизвестен автор, за последните години на Римската империя - "История на древен Рим" (издание 1981г.)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-2413948348051123398?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/2413948348051123398/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=2413948348051123398' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/2413948348051123398'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/2413948348051123398'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/03/blog-post.html' title='Из история на древен Рим'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-7364202951785312773</id><published>2010-02-22T17:26:00.001+02:00</published><updated>2010-02-22T17:27:33.733+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='php'/><title type='text'>SSL client certificates tutorial</title><content type='html'>&lt;a href="http://foaf.me/Enabling_SSL_Client_Certificates_on_Apache.php#s6" target="_blank"&gt;http://foaf.me/Enabling_SSL_Client_Certificates_on_Apache.php#s6&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-7364202951785312773?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/7364202951785312773/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=7364202951785312773' title='2 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/7364202951785312773'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/7364202951785312773'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/02/ssl-client-certificates-tutorial.html' title='SSL client certificates tutorial'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-3204501965726992910</id><published>2010-02-22T10:25:00.003+02:00</published><updated>2010-02-22T17:27:52.074+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='php'/><category scheme='http://www.blogger.com/atom/ns#' term='css'/><title type='text'>CSS Differences in Internet Explorer 6, 7 and 8</title><content type='html'>&lt;a href="http://www.smashingmagazine.com/2009/10/14/css-differences-in-internet-explorer-6-7-and-8/" target="_blank"&gt;CSS Differences in Internet Explorer 6, 7 and 8&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-3204501965726992910?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/3204501965726992910/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=3204501965726992910' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/3204501965726992910'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/3204501965726992910'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/02/css-differences-in-internet-explorer-6.html' title='CSS Differences in Internet Explorer 6, 7 and 8'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-8953786054209832827</id><published>2010-01-22T11:32:00.000+02:00</published><updated>2010-06-10T16:18:07.308+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><title type='text'>Best Google Videos</title><content type='html'>&lt;a href="http://hubpages.com/hub/The_Best_of_GoogleVideo" target="_blank"&gt;http://hubpages.com/hub/The_Best_of_GoogleVideo&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-8953786054209832827?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/8953786054209832827/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=8953786054209832827' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/8953786054209832827'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/8953786054209832827'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/01/best-google-videos.html' title='Best Google Videos'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-4760618280605620399</id><published>2010-01-20T00:31:00.002+02:00</published><updated>2010-06-10T16:18:12.691+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><title type='text'>How to download video from Google and Dailymotion</title><content type='html'>Here's a good explanation about the google video download method:&lt;br /&gt;&lt;a target="_blank" href="http://www.lifehack.org/articles/lifehack/how-to-download-google-video.html"&gt;http://www.lifehack.org/articles/lifehack/how-to-download-google-video.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Here's the way to do it with Dailymotion Flash Video:&lt;br /&gt;&lt;br /&gt;1. Open the video at the Dailymotion website. For example: &lt;a target="_blank"  href="http://www.dailymotion.com/video/xtbp7_milton-friedman-on-icelandic-state_news"&gt;http://www.dailymotion.com/video/xtbp7_milton-friedman-on-icelandic-state_news&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;2. View source of the page&lt;br /&gt;&lt;br /&gt;3. Look for the div id="content" tag&lt;br /&gt;&lt;br /&gt;4. 10-20 lines below it, there's a javascript with code adding some variables, the code looks something like this:&lt;br /&gt;&lt;br /&gt;&lt;div class="thecode"&gt;so1760468245.addVariable("external", "0");&lt;br /&gt;so1760468245.addVariable("disable_hq", "0");&lt;br /&gt;so1760468245.addVariable("video", "http%3A%2F%2Fwww.dailymotion.com%2Fcdn%2FFLV-320x240%2Fvideo%2Fxtbp7.flv%3Fauth%3D1264112701-22af514b58ef7db59132ad63bc82231e%40%40spark%7C%7Chttp%3A%2F%2Fwww.dailymotion.com%2Fcdn%2FFLV-80x60%2Fvideo%2Fxtbp7.flv%3Fauth%3D1264112701-d9164fb503c0cb196f2641f2bd876286%40%40spark-mini");&lt;br /&gt;so1760468245.addVariable("enableJsApi", "1");&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;5. Copy (Ctrl+C) in the clipboard the value of the variable video, with the double quotes around it. In the particular example this would be the string "http%3A%2F%2Fwww.dailymotion.com%2Fcdn%2FFLV-320x240%2Fvideo%2Fxtbp7.flv%3Fauth%3D1264112701-22af514b58ef7db59132ad63bc82231e%40%40spark%7C%7Chttp%3A%2F%2Fwww.dailymotion.com%2Fcdn%2FFLV-80x60%2Fvideo%2Fxtbp7.flv%3Fauth%3D1264112701-d9164fb503c0cb196f2641f2bd876286%40%40spark-mini"&lt;br /&gt;&lt;br /&gt;6. Write in the address bar of the browser the following line&lt;br /&gt;&lt;br /&gt;&lt;div class="thecode"&gt;javascript:unescape("http%3A%2F%2Fwww.dailymotion.com%2Fcdn%2FFLV-320x240%2Fvideo%2Fxtbp7.flv%3Fauth%3D1264112248-d4b4c70ca182efc5f1295194963d4988%40%40spark||http%3A%2F%2Fwww.dailymotion.com%2Fcdn%2FFLV-80x60%2Fvideo%2Fxtbp7.flv%3Fauth%3D1264112248-1dda40dda665b4ce919914bbce2be784%40%40spark-mini")&lt;br /&gt;&lt;/div&gt;and press enter. The unescaped URL will be displayed in the browser:&lt;br /&gt;&lt;div class="thecode"&gt;http://www.dailymotion.com/cdn/FLV-320x240/video/xtbp7.flv?auth=1264112248-d4b4c70ca182efc5f1295194963d4988@@spark||http://www.dailymotion.com/cdn/FLV-80x60/video/xtbp7.flv?auth=1264112248-1dda40dda665b4ce919914bbce2be784@@spark-mini&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Copy just the first part of the URL up to the first @ character. That would be&lt;br /&gt;&lt;div class="thecode"&gt;http://www.dailymotion.com/cdn/FLV-320x240/video/xtbp7.flv?auth=1264112248-d4b4c70ca182efc5f1295194963d4988&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Hit enter and SAVE AS dialog should appear. Name your file and download.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-4760618280605620399?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/4760618280605620399/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=4760618280605620399' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/4760618280605620399'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/4760618280605620399'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/01/how-to-download-video-from-google-and.html' title='How to download video from Google and Dailymotion'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-3956468133057029764</id><published>2010-01-13T12:50:00.001+02:00</published><updated>2010-04-03T15:20:33.065+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='economics'/><title type='text'>How to stay free</title><content type='html'>&lt;br/&gt;&lt;embed id=VideoPlayback src=http://video.google.com/googleplayer.swf?docid=-7531507980205759677&amp;hl=bg&amp;fs=true style=width:400px;height:326px allowFullScreen=true allowScriptAccess=always type=application/x-shockwave-flash&gt; &lt;/embed&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-3956468133057029764?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/3956468133057029764/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=3956468133057029764' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/3956468133057029764'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/3956468133057029764'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2010/01/how-to-stay-free.html' title='How to stay free'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-8598213612758664372</id><published>2009-12-11T16:48:00.003+02:00</published><updated>2010-04-03T15:20:33.065+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='economics'/><title type='text'>Milton Friedman on Donahue 1979</title><content type='html'>&lt;br/&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/E1lWk4TCe4U&amp;hl=en_US&amp;fs=1&amp;"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/E1lWk4TCe4U&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br/&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/5Lp2kGJASGY&amp;hl=en_US&amp;fs=1&amp;"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/5Lp2kGJASGY&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br/&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/GapXLpLoZBs&amp;hl=en_US&amp;fs=1&amp;"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/GapXLpLoZBs&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br/&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/I0Ocv8aMBjk&amp;hl=en_US&amp;fs=1&amp;"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/I0Ocv8aMBjk&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br/&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/brBvdjoNC6Y&amp;hl=en_US&amp;fs=1&amp;"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/brBvdjoNC6Y&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-8598213612758664372?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/8598213612758664372/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=8598213612758664372' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/8598213612758664372'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/8598213612758664372'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2009/12/milton-friedman-on-donahue-1979.html' title='Milton Friedman on Donahue 1979'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-4599323072441890256</id><published>2009-11-05T16:43:00.001+02:00</published><updated>2010-04-03T15:21:39.650+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='soap'/><title type='text'>Tips and Tricks: 10 Tests of a Web Service Login you should always do</title><content type='html'>&lt;br/&gt;&lt;a href="http://www.soapui.org/userguide/scenarios/loginhacking.html" target="_blank"&gt;Tips and Tricks: 10 Tests of a Web Service Login you should always do&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-4599323072441890256?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/4599323072441890256/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=4599323072441890256' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/4599323072441890256'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/4599323072441890256'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2009/11/tips-and-tricks-10-tests-of-web-service.html' title='Tips and Tricks: 10 Tests of a Web Service Login you should always do'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-6286502690580173228</id><published>2009-11-05T16:17:00.003+02:00</published><updated>2009-11-05T16:23:12.260+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='html'/><category scheme='http://www.blogger.com/atom/ns#' term='css'/><title type='text'>Browser bug with links</title><content type='html'>От Жорката:&lt;br /&gt;&lt;br /&gt;Ако се използва линк е възможно да се получи странен бъг ( Някой от стиловете да не се заредят )&lt;br /&gt;&lt;br /&gt;&lt;div class="thecode"&gt;1.&amp;lt;link title="T1" href="main.css" rel="StyleSheet" type="text/css" /&amp;gt;&lt;br /&gt;2.&amp;lt;link title="T122" href="main2.css" rel="StyleSheet" type="text/css" /&amp;gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Втория стил няма да се зареди&lt;br /&gt;&lt;br /&gt;Това се дължи на разликите в свойството title. &lt;strong&gt;Важи за всички браузъри.&lt;/strong&gt;&lt;br /&gt;Най-лесния вариант за корекция е да се премахне свойството.&lt;br /&gt;Бъга се проевява само ако линковете имат свойство title и то е различно.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-6286502690580173228?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/6286502690580173228/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=6286502690580173228' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/6286502690580173228'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/6286502690580173228'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2009/11/browser-bug-with-links.html' title='Browser bug with links'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-8055560679065825293</id><published>2009-10-20T18:49:00.005+03:00</published><updated>2011-04-12T14:15:14.323+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='music'/><title type='text'>Take a walk on the wild side</title><content type='html'>&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/WZ88oTITMoM&amp;hl=en&amp;fs=1&amp;"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/WZ88oTITMoM&amp;hl=en&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-8055560679065825293?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/8055560679065825293/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=8055560679065825293' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/8055560679065825293'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/8055560679065825293'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2009/10/take-walk-on-wild-side.html' title='Take a walk on the wild side'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-2012171826313220214</id><published>2009-09-17T11:34:00.002+03:00</published><updated>2010-04-03T15:22:12.936+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='soap'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><title type='text'>PHP Web Services</title><content type='html'>&lt;br/&gt;&lt;a href="http://phpwebservices.blogspot.com/2008/01/sopa-versions-with-soapclient-and.html" target="_blank"&gt;PHP Web Services blog&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-2012171826313220214?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/2012171826313220214/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=2012171826313220214' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/2012171826313220214'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/2012171826313220214'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2009/09/php-web-services.html' title='PHP Web Services'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-7330330890683896557</id><published>2009-09-04T11:58:00.003+03:00</published><updated>2009-09-04T12:02:22.296+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='html'/><category scheme='http://www.blogger.com/atom/ns#' term='css'/><title type='text'>PSD-2-HTML</title><content type='html'>&lt;br/&gt;Convert PSD design to HTML with different browser support&lt;br /&gt;&lt;a href="http://www.psd2html.com/" target="_blank"&gt;http://www.psd2html.com/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-7330330890683896557?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/7330330890683896557/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=7330330890683896557' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/7330330890683896557'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/7330330890683896557'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2009/09/psd-2-html.html' title='PSD-2-HTML'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-6734107953224623744</id><published>2009-08-26T09:38:00.001+03:00</published><updated>2009-08-26T09:40:25.510+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='economics'/><title type='text'>Free Markets or Government Subsidies?</title><content type='html'>&lt;br/&gt;Dr. Rodgers' Testimony: High Technology Innovation: Free Markets or Government Subsidies?&lt;br /&gt;&lt;br /&gt;&lt;a href="http://app.cypress.com/portal/server.pt?CommunityID=201&amp;DirectoryID=204370&amp;PageID=344&amp;control=SetCommunity&amp;space=CommunityPage" target="_blank"&gt;http://app.cypress.com/portal/server.pt?CommunityID=201&amp;DirectoryID=204370&amp;PageID=344&amp;control=SetCommunity&amp;space=CommunityPage&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-6734107953224623744?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/6734107953224623744/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=6734107953224623744' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/6734107953224623744'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/6734107953224623744'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2009/08/free-markets-or-government-subsidies.html' title='Free Markets or Government Subsidies?'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-8961203457603597903</id><published>2009-08-12T16:34:00.005+03:00</published><updated>2009-09-30T10:55:50.045+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='personal'/><title type='text'>Права закони институции</title><content type='html'>&lt;br/&gt;Закон за защита на потребителите - &lt;a href="http://www.bcnl.org/doc.php?DID=61" target="_blank"&gt;http://www.bcnl.org/doc.php?DID=61&lt;/a&gt;&lt;br /&gt;Кодекс на труда - &lt;a href="http://www.az.government.bg/Legislation/KT.html" target="_blank"&gt;http://www.az.government.bg/Legislation/KT.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Подаване на сигнали за корупция - &lt;a href="http://anticorruption.government.bg/report/content.aspx?p=12" target="_blank"&gt;http://anticorruption.government.bg/report/content.aspx?p=12&lt;/a&gt;&lt;br /&gt;Комисия за защита на потребителите - &lt;a href="http://www.kzp.bg/" target="_blank"&gt;http://www.kzp.bg/&lt;/a&gt;&lt;br /&gt;Сдружение за защита на потребителите (подаване на жалби) - &lt;a href="http://potrebitel.bg/" target="_blank"&gt;http://potrebitel.bg/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Главна Дирекция "ГРАО" (промяна на настоящ адрес) - &lt;a href="http://grao.government.bg/" target="_blank"&gt;http://grao.government.bg/&lt;/a&gt;&lt;br /&gt;Национален статистически институт (подаване на годишни отчети) - &lt;a href="http://www.nsi.bg/" target="_blank"&gt;http://www.nsi.bg/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Национална агенция за приходите - &lt;a href="http://www.nap.bg/" target="_blank"&gt;http://www.nap.bg/&lt;/a&gt;&lt;br /&gt;Комисия за финансов надзор - &lt;a href="http://www.fsc.bg/" target="_blank"&gt;http://www.fsc.bg/&lt;/a&gt;&lt;br /&gt;Министерство на финансите - &lt;a href="http://www.minfin.bg/" target="_blank"&gt;http://www.minfin.bg/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Министерство на образованието и науката - &lt;a href="http://www.minedu.government.bg/" target="_blank"&gt;http://www.minedu.government.bg/&lt;/a&gt;&lt;br /&gt;Изпълнителна агенция "АВТОМОБИЛНА АДМИНИСТРАЦИЯ" - &lt;a href="http://www.rta.government.bg/n.html" target="_blank"&gt;http://www.rta.government.bg/n.html&lt;/a&gt;&lt;br /&gt;Агенция по обществени поръчки - &lt;a href="http://www.aop.bg/" target="_blank"&gt;http://www.aop.bg/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;ЗАКОН ЗА ГРАЖДАНСКАТА РЕГИСТРАЦИЯ (смяна на постоянен адрес) - &lt;a href="http://lex.bg/laws/ldoc/2134673409" target="_blank"&gt;http://lex.bg/laws/ldoc/2134673409&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Жалби срещу груби реклами - &lt;a href="http://www.dnevnik.bg/pazari/2009/09/29/791954_vashata_jalba_sreshtu_reklama_veche_shte_bude_chuta/?ref=rss" target="_blank"&gt;http://www.dnevnik.bg/pazari/2009/09/29/791954_vashata_jalba_sreshtu_reklama_veche_shte_bude_chuta/?ref=rss&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-8961203457603597903?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/8961203457603597903/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=8961203457603597903' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/8961203457603597903'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/8961203457603597903'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2009/08/blog-post.html' title='Права закони институции'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-5053629424320878283</id><published>2009-08-11T20:08:00.002+03:00</published><updated>2010-06-10T16:18:21.691+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='games'/><title type='text'>Great magazine about games</title><content type='html'>&lt;br/&gt;Great magazine from the 80's for computer programming of games and music. Super valuable read.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.cyberroach.com/analog/" target="_blank"&gt;http://www.cyberroach.com/analog/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-5053629424320878283?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/5053629424320878283/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=5053629424320878283' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/5053629424320878283'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/5053629424320878283'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2009/08/great-magazine-about-games.html' title='Great magazine about games'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-2922771003147326370</id><published>2009-08-03T08:45:00.009+03:00</published><updated>2009-08-03T09:12:30.034+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Setting different JDK in ms win console</title><content type='html'>&lt;u&gt;Problem:&lt;/u&gt; a couple of Java Development Kits installed on Windows machine, but in console environment, the default is not the needed one.&lt;br /&gt;&lt;br /&gt;To check which is default start console and type:&lt;br /&gt;&lt;div class="thecode"&gt;java -version&lt;/div&gt;&lt;br /&gt;If it's not the desired one, right-click mouse button on My Computer-&gt;Properties-&gt;Advanced-&gt;Environment variables&lt;br /&gt;&lt;br /&gt;Add system variable JAVA_HOME with the path of the desired JDK, e.g. JAVA_HOME = C:\Program Files\Java\jdk1.5.0_14&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_gDN22F7c9gw/SnZ8TF0UvZI/AAAAAAAABPg/Jt8-sJ61F8M/s1600-h/javahome.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; clear:both; cursor: pointer; width: 350px; height: 400px;" src="http://1.bp.blogspot.com/_gDN22F7c9gw/SnZ8TF0UvZI/AAAAAAAABPg/Jt8-sJ61F8M/s400/javahome.jpg" alt="" id="BLOGGER_PHOTO_ID_5365612673479523730" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Add the path of the desired java\bin folder to the System Variable PATH, before any other java (jdk, jre) path declarations:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_gDN22F7c9gw/SnZ9RJv5YRI/AAAAAAAABPo/apv6kMHlnPg/s1600-h/javapath.jpg"&gt;&lt;img style="clear:both; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 351px; height: 400px;" src="http://2.bp.blogspot.com/_gDN22F7c9gw/SnZ9RJv5YRI/AAAAAAAABPo/apv6kMHlnPg/s400/javapath.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5365613739686584594" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;If android.bat throws exception with text: &lt;span style="font-style:italic;"&gt;Unsupported major.minor version 49.0&lt;/span&gt;, most probably the default JDK set in console environment is not satisfying the android SDK requirements.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-2922771003147326370?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/2922771003147326370/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=2922771003147326370' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/2922771003147326370'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/2922771003147326370'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2009/08/setting-different-jdk-in-ms-win-console.html' title='Setting different JDK in ms win console'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_gDN22F7c9gw/SnZ8TF0UvZI/AAAAAAAABPg/Jt8-sJ61F8M/s72-c/javahome.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-4225409720001913970</id><published>2009-07-22T17:37:00.004+03:00</published><updated>2010-06-10T16:18:31.887+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='personal'/><title type='text'>Motivation</title><content type='html'>&lt;br/&gt;&lt;div class="thecode" style="font-size:65% important!;"&gt;Motivation = Expectation of Work will lead to Performance * Expectation Performance will lead to Reward * Value of Reward&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-4225409720001913970?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/4225409720001913970/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=4225409720001913970' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/4225409720001913970'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/4225409720001913970'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2009/07/motivation.html' title='Motivation'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-7878577063447871268</id><published>2009-07-09T12:47:00.006+03:00</published><updated>2009-07-09T12:50:39.699+03:00</updated><title type='text'>Brain</title><content type='html'>&lt;br/&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_gDN22F7c9gw/SlW9WfXEopI/AAAAAAAABO8/y9pX7B3xxB4/s1600-h/brain.gif"&gt;&lt;img style="float:left; border:1px solid #ccc; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 203px; height: 226px;" src="http://1.bp.blogspot.com/_gDN22F7c9gw/SlW9WfXEopI/AAAAAAAABO8/y9pX7B3xxB4/s400/brain.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5356395525900116626" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-7878577063447871268?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/7878577063447871268/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=7878577063447871268' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/7878577063447871268'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/7878577063447871268'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2009/07/brain.html' title='Brain'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_gDN22F7c9gw/SlW9WfXEopI/AAAAAAAABO8/y9pX7B3xxB4/s72-c/brain.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-2464363697937429702</id><published>2009-06-23T15:56:00.017+03:00</published><updated>2010-04-03T15:22:12.937+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='soap'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><title type='text'>PHP, Web services and Subclassed types in the WSDL</title><content type='html'>&lt;br/&gt;&lt;strong&gt;&lt;u&gt;Problem:&lt;/u&gt;&lt;/strong&gt; Use web service from PHP 5+ with SoapClient with the following specific case of WSDL: some types in the WSDL are abstract base types for other types that inherit them. The Web Service function itself accept base type parameter (and it can accept all objects that inherit from the base type), but a CONCRETE (extends the base) type should be specified when passing the request to the web service.&lt;br /&gt;&lt;br /&gt;Example WSDL:&lt;br /&gt;&lt;div class="thecode"&gt;&lt;br /&gt;&amp;lt;?xml version="1.0" encoding="utf-8"?&amp;gt;&lt;br /&gt;&amp;lt;wsdl:definitions name="mywsdl"&amp;gt;&lt;br /&gt;  &amp;lt;!------------------ types -------------------&amp;gt;&lt;br /&gt; &amp;lt;wsdl:types&amp;gt;&lt;br /&gt;  &amp;lt;xs:schema targetNamespace = "http://www.mydomain.com"&lt;br /&gt;      xmlns = "http://schemas.xmlsoap.org/wsdl/"&lt;br /&gt;      xmlns:apachesoap = "http://xml.apache.org/xml-soap"&lt;br /&gt;      xmlns:soapenc = "http://schemas.xmlsoap.org/soap/encoding/"&lt;br /&gt;      xmlns:wsdl = "http://schemas.xmlsoap.org/wsdl/"&lt;br /&gt;      xmlns:wsdlsoap = "http://schemas.xmlsoap.org/wsdl/soap/"&lt;br /&gt;      xmlns:tMyType = "http://www.mydomain.com"&lt;br /&gt;      elementFormDefault = "qualified"&lt;br /&gt;   attributeFormDefault = "unqualified"&amp;gt;&lt;br /&gt;&lt;br /&gt;   &amp;lt;xs:complexType name="MachineType" abstract="true"&amp;gt;&lt;br /&gt;    &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;      &amp;lt;xs:element name="name" type="xsi:string" minOccurs="1"/&amp;gt;&lt;br /&gt;          &amp;lt;xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded" /&amp;gt;&lt;br /&gt;    &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;   &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;&lt;br /&gt;   &amp;lt;xs:complexType name="ComputerType"&amp;gt;&lt;br /&gt;    &amp;lt;xs:complexContent&amp;gt;&lt;br /&gt;      &amp;lt;xs:extension base="MachineType"&amp;gt;&lt;br /&gt;            &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;          &amp;lt;xs:element name="architecture" type="xsi:string" minOccurs="1"/&amp;gt;      &lt;br /&gt;              &amp;lt;xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded" /&amp;gt;&lt;br /&gt;            &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;      &amp;lt;/xs:extension&amp;gt;&lt;br /&gt;    &amp;lt;/xs:complexContent&amp;gt;&lt;br /&gt;   &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;&lt;br /&gt;   &amp;lt;xs:complexType name="CarType"&amp;gt;&lt;br /&gt;    &amp;lt;xs:complexContent&amp;gt;&lt;br /&gt;      &amp;lt;xs:extension base="MachineType"&amp;gt;&lt;br /&gt;            &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;          &amp;lt;xs:element name="engineType" type="xsi:string" minOccurs="1"/&amp;gt;      &lt;br /&gt;              &amp;lt;xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded" /&amp;gt;&lt;br /&gt;            &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;      &amp;lt;/xs:extension&amp;gt;&lt;br /&gt;    &amp;lt;/xs:complexContent&amp;gt;&lt;br /&gt;   &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;&lt;br /&gt;      &amp;lt;xs:element name="myMethodNameRequest" type="tMyType:MyMethodNameRequest"/&amp;gt;&lt;br /&gt;      &amp;lt;!------------------ the function accept base type object! -------------------&amp;gt;&lt;br /&gt;      &amp;lt;xs:complexType name="MyMethodNameRequest"&amp;gt;&lt;br /&gt;        &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;          &amp;lt;xs:element name="machine" type="tMyType:MachineType"/&amp;gt;&lt;br /&gt;          &amp;lt;xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded" /&amp;gt;&lt;br /&gt;        &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;      &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;&lt;br /&gt;  &amp;lt;/xs:schema&amp;gt;&lt;br /&gt; &amp;lt;/wsdl:types&amp;gt;&lt;br /&gt;  &amp;lt;!-------------- end of types ---------------&amp;gt;&lt;br /&gt;&lt;br /&gt;  &amp;lt;!----------------- messages ----------------&amp;gt;&lt;br /&gt;  &amp;lt;wsdl:message name="myMethodNameRequest"&amp;gt;&lt;br /&gt;    &amp;lt;wsdl:part name="parameters" element="tMyType:myMethodNameRequest"/&amp;gt;&lt;br /&gt;  &amp;lt;/wsdl:message&amp;gt;&lt;br /&gt;&lt;br /&gt;  &amp;lt;!----------------- port ----------------&amp;gt;&lt;br /&gt;  &amp;lt;wsdl:portType name="myPortType"&amp;gt;&lt;br /&gt;    &amp;lt;wsdl:operation name="myMethodName"&amp;gt;&lt;br /&gt;      &amp;lt;wsdl:input name="myMethodNameRequest" message="tMyType:myMethodNameRequest"/&amp;gt;&lt;br /&gt;      &amp;lt;wsdl:output/&amp;gt;&lt;br /&gt;    &amp;lt;/wsdl:operation&amp;gt;&lt;br /&gt;  &amp;lt;/wsdl:portType&amp;gt;&lt;br /&gt;&lt;br /&gt;  &amp;lt;!----------------- binding ----------------&amp;gt;&lt;br /&gt;  &amp;lt;wsdl:binding name="mySOAPhttpBinding" type="tMyType:myPortType"&amp;gt;&lt;br /&gt;    &amp;lt;wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/&amp;gt;&lt;br /&gt;    &amp;lt;!-- start operations --&amp;gt;&lt;br /&gt;    &amp;lt;wsdl:operation name="myMethodName"&amp;gt;&lt;br /&gt;      &amp;lt;wsdlsoap:operation soapAction="myMethodName"/&amp;gt;&lt;br /&gt;      &amp;lt;wsdl:input name="myMethodNameRequest"&amp;gt;&lt;br /&gt;        &amp;lt;wsdlsoap:body use="literal"/&amp;gt;&lt;br /&gt;      &amp;lt;/wsdl:input&amp;gt;&lt;br /&gt;      &amp;lt;wsdl:output/&amp;gt;&lt;br /&gt;    &amp;lt;/wsdl:operation&amp;gt;&lt;br /&gt;  &amp;lt;/wsdl:binding&amp;gt;&lt;br /&gt;&lt;br /&gt;  &amp;lt;!----------------- service ----------------&amp;gt;&lt;br /&gt;  &amp;lt;wsdl:service name="myserv"&amp;gt;&lt;br /&gt;    &amp;lt;wsdl:port name="myPort" binding="tMyType:mySOAPhttpBinding"&amp;gt;&lt;br /&gt;      &amp;lt;wsdlsoap:address location="http://mydomain.com/wsdl/"/&amp;gt;&lt;br /&gt;    &amp;lt;/wsdl:port&amp;gt;&lt;br /&gt;  &amp;lt;/wsdl:service&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/wsdl:definitions&amp;gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Request object is created as usual. The difference is that before calling the service method, the request object should be encoded with the appropriate concrete type. If there are nested (sub) objects in the request object "tree", which also inherit from different types and you need to pass the objects as different concrete types, they should also be encoded separately:&lt;br /&gt;&lt;br /&gt;&lt;div class="thecode"&gt;&lt;br /&gt;define(WSDL_URL, "http://www.mydomain.com/webservicepath?wsdl");&lt;br /&gt;&lt;br /&gt;# create request parameters&lt;br /&gt;$params = new stdClass();&lt;br /&gt;$params-&gt;machine-&gt;name = "My computer";&lt;br /&gt;&lt;span style="font-style:italic;"&gt;$params-&gt;machine-&gt;architecture = "Intel x86";&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;$params-&gt;machine = new SoapVar($params-&gt;machine, SOAP_ENC_OBJECT, "ComputerType", "http://www.mydomain.com");&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;# create soap client object&lt;br /&gt;$soap_client = new SoapClient(WSDL_URL, array("connection_timeout"=&gt;5, 'trace'=&gt;1));&lt;br /&gt;&lt;br /&gt;try&lt;br /&gt;{&lt;br /&gt;  # call the method of the service&lt;br /&gt;  $result = $soap_client-&gt;myMethodName(params);&lt;br /&gt;}&lt;br /&gt;catch(SoapFault $exception)&lt;br /&gt;{&lt;br /&gt;  echo $exception;&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;If the object is not encoded properly, the line in &lt;span style="font-style:italic;"&gt;italic&lt;/span&gt; above will be removed from the request ($params), because the method generally accept "MachineType" object which doesn't have element "architecture". This encoding process can be compared to &lt;a href="http://en.wikipedia.org/wiki/Type_conversion" target="_blank"&gt;Casting/Type Conversion&lt;/a&gt; in other programming languages.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-2464363697937429702?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/2464363697937429702/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=2464363697937429702' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/2464363697937429702'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/2464363697937429702'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2009/06/php-web-services-and-subclassed-types.html' title='PHP, Web services and Subclassed types in the WSDL'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-3101153993618106615</id><published>2009-06-14T14:11:00.009+03:00</published><updated>2009-06-14T15:27:03.025+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Android Traceview starting problems</title><content type='html'>&lt;br/&gt;Things to consider when using traceview.bat:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Create a trace file&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;1. Create AVD with SD card (and there's no problem with trace file generation)&lt;br /&gt;&lt;br /&gt;&lt;div class="thecode"&gt;android.bat create avd -n avd_name -t 1 -c C:\the-path-chosen-for-sd-card\my-sdcard-file&lt;/div&gt;&lt;br /&gt;If there's no SD card binded with the Virtual Device, the call to&lt;br /&gt;&lt;div class="thecode"&gt;Debug.startMethodTracing();&lt;/div&gt;will throw RuntimeException and the dalvik vm will print in the LogCat: Unable to open trace file '/sdcard/myapp.trace' : Permission denied&lt;br /&gt;&lt;br /&gt;2. If AVD is created without SD card &lt;br /&gt;&lt;br /&gt;- a command-line option can be set in the the Eclipse launch configuration (Run/Debug) "Target" tab, to tell the emulator to which SD card it should be binded to - e.g. this can be in case an SD card is created manually with the mksdcard.exe command (I couldn't use that, because my Eclipse has a bug and I couldn't see the edit box for command-line parameters in the target tab)&lt;br /&gt;&lt;br /&gt;&lt;div class="thecode"&gt;-sdcard /the-path-to-sd-card-file/my-sdcard-file&lt;/div&gt;&lt;br /&gt;- another option is both things to be done from command-line -&gt; create the card and start the emulator manually:&lt;br /&gt;&lt;div class="thecode"&gt;mksdcard 128M c:\mypath\my-sd-card-file&lt;br /&gt;emulator -sdcard c:\mypath\my-sd-card-file&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;If everything is ok, this dialog shouldn't appear when the application makes a call to &lt;div class="thecode"&gt;Debug.startMethodTracing();&lt;/div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_gDN22F7c9gw/SjTmbg6J33I/AAAAAAAABF0/EoEQhUGYO5Y/s1600-h/android_error.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 303px; height: 229px;" src="http://2.bp.blogspot.com/_gDN22F7c9gw/SjTmbg6J33I/AAAAAAAABF0/EoEQhUGYO5Y/s400/android_error.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5347152017960329074" /&gt;&lt;/a&gt;If it does, then most probably, the emulator (AVD) is not started with SD card.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;After trace file is created&lt;/strong&gt;&lt;br /&gt;The trace file should be downloaded from the emulator (or real device) to the computer that shall run traceview:&lt;br /&gt;&lt;br /&gt;In Eclipse there's a small button in the right upper corner of the DDMS view (File Explorer) to pull files from the emulator (or real device) file system to the development computer.&lt;br /&gt;&lt;br /&gt;From command-line:&lt;br /&gt;&lt;div class="thecode"&gt;adb pull /sdcard/myapp.trace c:\path-where-file-will-be-stored&lt;/div&gt;&lt;br /&gt;Finally, to open the file with traceview, the whole path to the file should be specified, as the traceview.bat file changes the working path for itself to work properly and the file cannot be found:&lt;br /&gt;&lt;br /&gt;Even if you are in the right directory with the trace file, this will not work: &lt;br /&gt;&lt;div class="thecode"&gt;traceview myapp.trace&lt;/div&gt;&lt;br /&gt;Should be:&lt;br /&gt;&lt;div class="thecode"&gt;traceview c:\thepath\myapp.trace&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-3101153993618106615?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/3101153993618106615/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=3101153993618106615' title='1 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/3101153993618106615'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/3101153993618106615'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2009/06/android-traceview-starting-problems.html' title='Android Traceview starting problems'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_gDN22F7c9gw/SjTmbg6J33I/AAAAAAAABF0/EoEQhUGYO5Y/s72-c/android_error.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-2449614616334152345</id><published>2009-06-11T00:25:00.002+03:00</published><updated>2009-06-11T00:27:12.039+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><title type='text'>Dance</title><content type='html'>&lt;br/&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/GA8z7f7a2Pk&amp;hl=en&amp;fs=1&amp;"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/GA8z7f7a2Pk&amp;hl=en&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-2449614616334152345?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/2449614616334152345/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=2449614616334152345' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/2449614616334152345'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/2449614616334152345'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2009/06/dance.html' title='Dance'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-6930847255594812442</id><published>2009-06-04T17:39:00.001+03:00</published><updated>2009-06-04T17:39:37.785+03:00</updated><title type='text'>Obama speech in Cairo</title><content type='html'>&lt;br/&gt;&lt;a href="http://video.town9.com/obama-speech-in-cairo"&gt;Obama speech in Cairo&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-6930847255594812442?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/6930847255594812442/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=6930847255594812442' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/6930847255594812442'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/6930847255594812442'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2009/06/obama-speech-in-cairo.html' title='Obama speech in Cairo'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-3677945723792572728</id><published>2009-06-04T12:24:00.002+03:00</published><updated>2010-08-16T11:47:55.933+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='personal'/><title type='text'>excercises for tendonitis and carpal tunnel</title><content type='html'>&lt;object width="480" height="385"&gt;&lt;param name="movie" value="http://www.youtube.com/v/hUyMNyrOHJQ?fs=1&amp;amp;hl=en_US"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/hUyMNyrOHJQ?fs=1&amp;amp;hl=en_US" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-3677945723792572728?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/3677945723792572728/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=3677945723792572728' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/3677945723792572728'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/3677945723792572728'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2009/06/excercises.html' title='excercises for tendonitis and carpal tunnel'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-2139666208976995833</id><published>2009-06-03T18:18:00.003+03:00</published><updated>2009-06-04T12:16:42.582+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><title type='text'>Code improve</title><content type='html'>&lt;br/&gt;&lt;a href="http://www.infoq.com/presentations/10-Ways-to-Better-Code-Neal-Ford" target="_blank"&gt;10 points to improve your code&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-2139666208976995833?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/2139666208976995833/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=2139666208976995833' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/2139666208976995833'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/2139666208976995833'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2009/06/code-improve.html' title='Code improve'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-8858705838508686541</id><published>2009-05-30T13:04:00.015+03:00</published><updated>2010-05-10T12:30:45.084+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='soap'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><title type='text'>PHP, Web services and authentication header</title><content type='html'>&lt;strong&gt;&lt;u&gt;Problem:&lt;/strong&gt;&lt;/u&gt; Use Web Service which requires authentication header with PHP 5+ and SoapClient object.&lt;br /&gt;&lt;br /&gt;Soap Xml request:&lt;br /&gt;&lt;div class="thecode"&gt;&lt;br /&gt;&amp;lt;SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;SOAP-ENV:Header&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;m:SOAPAuthenticationHeader xmlns:m="http://www.mydomain.com"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;m:username&amp;gt;myusername&amp;lt;/m:username&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;m:password&amp;gt;mypassword&amp;lt;/m:password&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/m:SOAPAuthenticationHeader&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;/SOAP-ENV:Header&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;SOAP-ENV:Body&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;m:WebServiceMethodName xmlns:m="http://www.mydomain.com"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;m:param1&amp;gt;some value&amp;lt;/m:param1&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;m:param2&amp;gt;some value&amp;lt;/m:param2&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;m:param3&amp;gt;some value&amp;lt;/m:param3&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/m:WebServiceMethodName&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;/SOAP-ENV:Body&amp;gt;&lt;br /&gt;&amp;lt;/SOAP-ENV:Envelope&amp;gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;In case you have to use authentication headers when calling a Web Service, you cannot use the intuitive way like below, because all of these go inside the body part of the envelope (SOAP-ENV Body):&lt;br /&gt;&lt;br /&gt;&lt;div class="thecode"&gt;&lt;br /&gt;$params = new StdClass();&lt;br /&gt;$params-&gt;Header-&gt;username = "myusername";&lt;br /&gt;$params-&gt;Header-&gt;password = "mypassword";&lt;br /&gt;&lt;br /&gt;$params-&gt;Body-&gt;param1 = "some value";&lt;br /&gt;$params-&gt;Body-&gt;param2 = "some value";&lt;br /&gt;$params-&gt;Body-&gt;param3 = "some value";&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;The above object does not transform into SOAP request with header envelope part and body envelope part - it is simply transformed as body envelope part with child elements header and body. So, access to the Web Service is forbidden as there is no authentication header envelope.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Solution:&lt;/u&gt;&lt;/strong&gt; Create separate object for authentication header envelope and separate object for body envelope.&lt;br /&gt;&lt;br /&gt;&lt;div class="thecode"&gt;&lt;br /&gt;define(WSDL_URL, "http://www.mydomain.com/webservicepath?wsdl");&lt;br /&gt;&lt;br /&gt;# create authentication headers (SOAP Header envelope)&lt;br /&gt;$params_header = new stdClass();&lt;br /&gt;$params_header-&gt;username = "myusername";&lt;br /&gt;$params_header-&gt;password = "mypassword";&lt;br /&gt;&lt;br /&gt;# create request parameters (SOAP Body envelope)&lt;br /&gt;$params = new stdClass();&lt;br /&gt;$params-&gt;param1 = "some value";&lt;br /&gt;$params-&gt;param2 = "some value";&lt;br /&gt;$params-&gt;param3 = "some value";&lt;br /&gt;&lt;br /&gt;# create soap client object&lt;br /&gt;$soap_client = new SoapClient(WSDL_URL, array("connection_timeout"=&gt;5, 'trace'=&gt;1));&lt;br /&gt;&lt;br /&gt;# create soap header object&lt;br /&gt;$soap_header = new SoapHeader("http://www.mydomain.com", "SOAPAuthenticationHeader", $params_header);&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;$soap_client-&gt;__setSoapHeaders(array($soap_header));&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;try&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;# call the method of the service&lt;br /&gt;&amp;nbsp;&amp;nbsp;$result = $soap_client-&gt;WebServiceMethodName(params);&lt;br /&gt;}&lt;br /&gt;catch(SoapFault $exception)&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;echo $exception;&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-8858705838508686541?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/8858705838508686541/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=8858705838508686541' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/8858705838508686541'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/8858705838508686541'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2009/05/blog-post_30.html' title='PHP, Web services and authentication header'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-685152987936120872</id><published>2009-05-14T12:00:00.001+03:00</published><updated>2009-05-14T12:11:20.248+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='games'/><title type='text'>Какви игри правят хората, не е истина</title><content type='html'>&lt;br/&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/7h8FkBAMO74&amp;hl=en&amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/7h8FkBAMO74&amp;hl=en&amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br/&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/gLlURPGVDsg&amp;hl=en&amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/gLlURPGVDsg&amp;hl=en&amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br/&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/oCdL4bNUpTM&amp;hl=en&amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/oCdL4bNUpTM&amp;hl=en&amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-685152987936120872?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/685152987936120872/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=685152987936120872' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/685152987936120872'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/685152987936120872'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2009/05/blog-post.html' title='Какви игри правят хората, не е истина'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-6193592343893654699</id><published>2009-04-08T16:55:00.011+03:00</published><updated>2009-04-09T15:37:36.341+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='php'/><title type='text'>PHP + Oracle</title><content type='html'>&lt;br/&gt;Example extract from &lt;a href="http://www.orafaq.com/wiki/Tnsnames.ora" target="_blank"&gt;TNSNAMES.ORA&lt;/a&gt;:&lt;br /&gt;&lt;br /&gt;&lt;div class="thecode"&gt;MYSERVICE =&lt;br /&gt;  (DESCRIPTION =&lt;br /&gt;    (ADDRESS = (PROTOCOL = tcp)(HOST = database_hostname_or_ip.com)(PORT = 1521))&lt;br /&gt;    (CONNECT_DATA =&lt;br /&gt;      (SERVICE_NAME=myservice)))&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;PHP script:&lt;br /&gt;&lt;div class="thecode"&gt;&lt;br /&gt;$oracledb["host"] = "MYSERVICE"; # service name in the tnsnames.ora file&lt;br /&gt;$oracledb["user"] = "myuser";    # username&lt;br /&gt;$oracledb["pass"] = "mypass";    # password&lt;br /&gt;$oracledb["library"] = "OCI";&lt;br /&gt;&lt;br /&gt;$connect_id = ocilogon($oracledb["user"], $oracledb["pass"], $oracledb["host"]);&lt;br /&gt;&lt;br /&gt;$query = "SELECT * FROM table";&lt;br /&gt;$statement = ociparse($connect_id, $query);&lt;br /&gt;ociexecute($statement);&lt;br /&gt;&lt;br /&gt;$result = array();&lt;br /&gt;while(ocifetchinto($statement, $tmp, OCI_ASSOC + OCI_RETURN_NULLS + OCI_RETURN_LOBS))&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;array_push($result, $tmp);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;ocifreestatement($statement);&lt;br /&gt;&lt;br /&gt;var_dump($result); # result is here&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-6193592343893654699?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/6193592343893654699/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=6193592343893654699' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/6193592343893654699'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/6193592343893654699'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2009/04/php-oracle.html' title='PHP + Oracle'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-5025399131422708499</id><published>2009-02-13T13:20:00.002+02:00</published><updated>2009-04-09T15:39:00.547+03:00</updated><title type='text'></title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_gDN22F7c9gw/SZVYHv6cEAI/AAAAAAAABAU/sFbg8nSQdAk/s1600-h/Jimi_Hendrix_by_fredesign.gif"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 320px; height: 320px;" src="http://2.bp.blogspot.com/_gDN22F7c9gw/SZVYHv6cEAI/AAAAAAAABAU/sFbg8nSQdAk/s320/Jimi_Hendrix_by_fredesign.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5302241026442530818" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-5025399131422708499?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/5025399131422708499/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=5025399131422708499' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/5025399131422708499'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/5025399131422708499'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2009/02/blog-post.html' title=''/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_gDN22F7c9gw/SZVYHv6cEAI/AAAAAAAABAU/sFbg8nSQdAk/s72-c/Jimi_Hendrix_by_fredesign.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-4146373251205714407</id><published>2008-11-03T21:41:00.011+02:00</published><updated>2009-05-14T12:11:38.846+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='games'/><title type='text'>Computer Space 2008</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_gDN22F7c9gw/SRIUVege-AI/AAAAAAAAA-0/KLb5zFqsKv4/s1600-h/cs2008.png"&gt;&lt;img style="float:center; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 220px; height: 86px;" src="http://4.bp.blogspot.com/_gDN22F7c9gw/SRIUVege-AI/AAAAAAAAA-0/KLb5zFqsKv4/s320/cs2008.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5265293273548650498" /&gt;&lt;/a&gt;&lt;br /&gt;This weekend in Sofia was held the annual &lt;a href="http://www.computerspace.org" target="_blank"&gt;Computer Space conference&lt;/a&gt; about computer art, games, animation, music and web design. Strangely though, there was total absence of the local game development teams and community, and the only game participating in the forum was from a bulgarian hobby game programmer Jordan Tuzsuzov - &lt;a href="http://biniax.com/" target="_blank"&gt;Biniax 2&lt;/a&gt;. Anyway the event was very inspiring and helpful as the level of the lecturers was very high.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_gDN22F7c9gw/SRIVjGAOYmI/AAAAAAAAA-8/xjwNAzg2ID0/s1600-h/picture+003.jpg"&gt;&lt;img style="clear:both; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://3.bp.blogspot.com/_gDN22F7c9gw/SRIVjGAOYmI/AAAAAAAAA-8/xjwNAzg2ID0/s320/picture+003.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5265294607000691298" /&gt;&lt;/a&gt;&lt;br /&gt;The first presentation was by Rene Bauer and Beat Suter from the University of Arts in Zurich, and was called "Uncanny space – the unconscious becomes playable reality". What I remember most about their research is that if something surprising is shown on the screen while playing a game, even if the thing is unpleasant for the gamer, this stimulates feelings and on subconsious level the player is intrigued and engaged more with the game. One example with which they made some tests was a tetris like game, where the background of the board is loaded with random image files from the hard disk of the player, and sometimes there are images that you'd rather not see in that moment. Another game was on Nintend DS, the game detects Wi-Fi spots in the area, there were 6 spots in the hall, and position them on the display according to the position of these spots. These spots make the enemies which shoot at you (in the center of the screen) and the strength of the signal defines the power of the bullets coming to the gamer. Your goal is to defend from these bullets as you kill them with the stick. Another idea was to generate random music tones for background of the game from the spots' names, as the tones are also letters e.g. "e,c,f,a" ... very cool and simple ideas indeed :)&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_gDN22F7c9gw/SRIWpR6oAnI/AAAAAAAAA_E/lB6EyJJBPhI/s1600-h/picture+006.jpg"&gt;&lt;img style="clear:both; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://2.bp.blogspot.com/_gDN22F7c9gw/SRIWpR6oAnI/AAAAAAAAA_E/lB6EyJJBPhI/s320/picture+006.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5265295812789273202" /&gt;&lt;/a&gt;&lt;br /&gt;Mary Flanagan from NY talked next about "Whose Computer Space? Human Values and the Design of Computational Worlds" and was a beautiful and engaging talker. She uncovered another world of thinking about games as an agency that can be used for social change. And it is a very powerful tool indeed as the number of people playing games nowadays is enormous and steadily increasing. But the interesting thing is that she and her team at &lt;a href="http://tiltfactor.org/" target="_blank"&gt;Tiltfactor lab&lt;/a&gt; have engaged with the discovery of methods and exploit that power to bring experience that is related with learning and embedding human values on conscious and subconscious level in the players. Some examples of her prototypes and already made games are a game for teaching young girls progrmming while playing a dance game. Another game is showing social and political problems of farmers and genetically modified seeds in America. Another exapmple is a game that can make the players feel the problems in poor undeveloped coutries while playing.&lt;br /&gt;&lt;br /&gt;Interesting thing she mentioned was one of the ways they make brainstorming with different people, not necessery related to the game industry. The idea is to develop some clear and simple ways to think and brainstorm ideas. So here is in short the method:&lt;br /&gt;A gathering of 100 people (or 2 or 10, does not matter). Different decks of cards. One deck is with cards with some human values or ideals written on the side of the card, e.g. justice, honesty, empathy, leadership, privacy and etc. &lt;br /&gt;The other deck is with cards with challenges written on their side like pollution, totalitarianism, addictions and whatever you think social issues and problems. &lt;br /&gt;The other deck is with cards with a game name written on it like Pacman, WoW, The SIMS, Quake, Super Mario, whatever game you want. &lt;br /&gt;There can also be additional deck of cards with more constraints but its noted that the more decks you have, the longer brainstorm session.&lt;br /&gt;&lt;br /&gt;And each team of a few people draws one card by each deck and tries to create idea with the info from these cards or to modify the idea and design of the game card. There can also be *wildcards that are blank cards to stimulate development of new values and mechanics. A session like that can be wathced &lt;a href="http://vimeo.com/1346738" target="_blank"&gt;here&lt;/a&gt; and learn more about these ideas at the links below.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://tiltfactor.org" target="_blank"&gt;http://tiltfactor.org&lt;/a&gt;&lt;br /&gt;&lt;a href="http://valuesatplay.org" target="_blank"&gt;http://valuesatplay.org&lt;/a&gt;&lt;br /&gt;&lt;a href="http://maryflanagan.com" target="_blank"&gt;http://maryflanagan.com&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Thanks to all for the great event and hoping next year will be so good again!&lt;br/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-4146373251205714407?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/4146373251205714407/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=4146373251205714407' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/4146373251205714407'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/4146373251205714407'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2008/11/this-weekend-in-sofia-was-held-annual.html' title='Computer Space 2008'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_gDN22F7c9gw/SRIUVege-AI/AAAAAAAAA-0/KLb5zFqsKv4/s72-c/cs2008.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-2031512396960822143</id><published>2007-10-04T18:05:00.001+03:00</published><updated>2009-05-14T12:11:38.846+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='games'/><title type='text'>Innovation in game design talk</title><content type='html'>Opinions on innovation in games from Jenova Chen and other young indie developers:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://interactive.usc.edu/members/jchen/archives/008250.html" target="_blank"&gt;GDC 2007 Indie talks&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-2031512396960822143?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/2031512396960822143/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=2031512396960822143' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/2031512396960822143'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/2031512396960822143'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2007/10/innovation-in-game-design-and-game.html' title='Innovation in game design talk'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-431616169849715591</id><published>2007-08-15T10:25:00.000+03:00</published><updated>2007-08-15T10:26:34.571+03:00</updated><title type='text'>ИТ Йерархия</title><content type='html'>&lt;a href="http://www.ms-dynamics.ru/images/stories/blogs/stairs.jpg"&gt;IT Рангове&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-431616169849715591?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/431616169849715591/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=431616169849715591' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/431616169849715591'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/431616169849715591'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2007/08/blog-post.html' title='ИТ Йерархия'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-116576434305623819</id><published>2006-12-10T17:00:00.000+02:00</published><updated>2009-05-30T13:54:08.160+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='books'/><title type='text'>Томас Ман</title><content type='html'>"Защото красотата, Федър, запомни добре, само красотата е божествена и в същото време зрима, ето защо тя е пътят на чувственото, малки Федър, пътят на артиста към духа. Но вярваш ли, драги, че би могъл да добие някой ден мъдрост и истинско мъжко достойнство онзи, за когото пътят към духовното води през сетивата? Или по-скоро вярваш (свободен си да вземеш каквото искаш решение), че този път е опасно приятен, наистина погрешен и греховен път, който неизбежно ще заблуди човека? Защото трябва да знаеш, че ние, поетите, не можем да вървим по пътя на красотата, ако Ерос не стане наш спътник и дори водач. Дори ако сме герои по свой начин и дисциплинирани воини, ние пак сме като жените, защото се възвисяваме чрез страстта и нашия копнеж трябва да остане любов - тя е наша наслада и наш позор. Виждаш ли сега, че ние, поетите, не можем да бъдем нито мъдри, нито достойни? Че неизбежно ще се заблудим, неизбежно ще останем порочни и авантюристи в чувството? Майсторството на нашия стил е лъжа и шутовщина, нашата слава и почетно звание - фарс, доверието на множеството в нас - крайно смешно, възпитанието на народа и на младежта посредством изкуството - рисковано начинание, което трябва да се забрани. Та мигар е годен за възпитател онзи, комуто е вродено непоправимо и естествено влечение към бездната? Нам се иска да я отречем и добием достойнство, ала каквото и да правим, както и да въртим, тя ни привлича. Тогава да се отречем от разлагащото познание, защото познанието Федър, не обладава достойнство и строгост; то знае, разбира, прощава, няма твърдост и форма; то храни симпатия към бездната, то самото е бездна. Значи да отхвърлим решително познанието и занапред да насочваме всичките си усилия единствено към красотата, сиреч към простотата, величието и новата строгост, към новата непринуденост и формата. Ала формата и непринудеността, Федър, водят към опиянения и похот, може би ще отведат благородния човек към страхотно чувствено престъпление, отхвърлено от неговата собствена прекрасна строгост като мерзко, водят към бездната, към бездната и те. Нас, поетите, казвам, те ще отведат там, защото ние не сме в състояние да полетим нагоре, ние сме в състояние само да се отклоним от правия път. Сега аз ще си отида, Федър, ти остани тук; чак когато ме загубиш от очи, тръгни и ти."&lt;br /&gt;&lt;br /&gt;Откъс от "Смърт във Венеция"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-116576434305623819?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/116576434305623819/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=116576434305623819' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/116576434305623819'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/116576434305623819'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2006/12/blog-post_10.html' title='Томас Ман'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-116531251480568076</id><published>2006-12-05T11:53:00.000+02:00</published><updated>2006-12-05T11:59:24.426+02:00</updated><title type='text'>Open Source Santa</title><content type='html'>"Dear Open Source Santa,&lt;br /&gt;&lt;br /&gt;Now that you have Java in your open source toy bag, can I have Duck Typing please ? It shouldn’t be too hard to do, since the elves in Ruby-Wonder-Land have been making toys with Duck Typing for years. I’ve been a good boy all year and promise to play nicely with the .Net kids next door.&lt;br /&gt;&lt;br /&gt;You don’t know what Duck Typing is? Sorry, I forgot that you’re more than 1000 years old. Little Jamie next door got Ruby last year and he says that ‘if it looks like a duck, and walks like a duck , then it is a duck’. He says making the computer do more work makes it a lot easier to write programs.&lt;br /&gt;&lt;br /&gt;My Teacher says not to be greedy, and that you’re very busy making Toy Trains. She says just ask for getters and setters. You know, the boring code like ‘getSomeValue()’ and setSomeValue(). She says the Apache imps have been very good with Dynaforms but that writing a Java web application is still just too slow.&lt;br /&gt;&lt;br /&gt;Rudolph will tell you that writing get(”someValue”) is about as cool as having a bright red nose. He would also want to put ’someValue’ in one place only (the web page). Having to write config files and javabeans feels too much like homework.&lt;br /&gt;&lt;br /&gt;Santa, I know there are other children that need changes to the core Java code more than I do, so maybe you know of an open source project that already has this.&lt;br /&gt;&lt;br /&gt;Paul , Technology in Plain English&lt;br /&gt;&lt;br /&gt;P.S. :I still want to keep compile time type checking to make sure I don’t make any mistakes."&lt;br /&gt;&lt;br /&gt;взето от &lt;a href="http://www.oreillynet.com/onjava/blog/2006/12/dear_open_source_santa.html?CMP=OTC-FP2116136014&amp;ATT=Dear+Open+Source+Santa"&gt;тук&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-116531251480568076?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/116531251480568076/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=116531251480568076' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/116531251480568076'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/116531251480568076'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2006/12/open-source-santa.html' title='Open Source Santa'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-116482492392196049</id><published>2006-11-29T20:27:00.000+02:00</published><updated>2006-11-29T20:28:43.933+02:00</updated><title type='text'>Алгоритъм</title><content type='html'>Чудна работа ... откъде произлиза думата algorithm? &lt;br /&gt;&lt;br /&gt;До 1957 думата не присъства в Webster's New World Dictionary. Там обаче отдавна се намира древната дума algorism, която означава да извършваш аритметика с арабски числа. Много ми стана смешно едно от предположенията за произхода на тази дума: комбинацията от algiros (painful, болезнен) и arithmos (number, число). Накрая, математическите историци намират истинския произход на думата: идва от името на известен арабски автор Abu Ja'far Mohammed ibn Musa al-Khowarizmi, на английски "Father of Ja'far, Mohammed, son of Moses, native of Khowarizm".&lt;br /&gt;&lt;br /&gt;Al-Khowarizmi е автор на книгата Kitab al jabr w'al-muqabala - "Rules of restoration and reduction" от името на която прозлиза думата "алгебра". &lt;br /&gt;&lt;br /&gt;Та се чудя, арабите са били доста грамотни хора (да не си помисли човек даже гениални) около 9-10 век след новата ера - какво се е случило с тях след това?&lt;br /&gt;&lt;br /&gt;Много съм зле с историята, но някой ден ми се ще да разбера.&lt;br /&gt;&lt;br /&gt;Тези неща ги намерих в "The art of computer programming" на Donald Knuth.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-116482492392196049?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/116482492392196049/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=116482492392196049' title='3 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/116482492392196049'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/116482492392196049'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2006/11/blog-post_29.html' title='Алгоритъм'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-116306378619130548</id><published>2006-11-09T10:45:00.001+02:00</published><updated>2006-11-18T09:43:50.773+02:00</updated><title type='text'>Книга</title><content type='html'>След около близо година бавно напредване тази сутрин прочетох "Вълшебната планина" на Томас Ман. Това е най-трудната и най-невероятна книга, която съм чел приживе. Беше трудно, отказвах се на няколко пъти поради естеството на голяма част от материите засегнати в нея - трудно ми беше да разбирам какво иска да каже автора, но някакво чувство ме караше бавно да продължавам да си чета, пък каквото хвана-хвана. Може би и коментари на хора които са я почвали - "О, тоя ли бе, мани го тоя ..." - ядът им срещу трудната материя (труден за сравнително малко исторически грамотен човек като мен или като тях) и даването на такива мнения без да са прочели книгата също провокира в мен да видя какво има в главата на този човек...&lt;br /&gt;&lt;br /&gt;И видях :) Гениалност, от калибър какъвто не съм виждал досега. Това е едно малко откъсче, колкото да се докосне човек до един от стиловете на изразяване на автора.&lt;br /&gt;&lt;br /&gt;&lt;em&gt;"Ето го нашия познат, ето го Ханс Касторп! Още съвсем отдалече го познахме по брадичката, която си бе пуснал на &lt;&lt;лошата руска маса&gt;&gt;. Той пламти и е вир-вода - както всички. Тича с натежали от калта нозе, увисналият му пестник стиска пушката с натъкнатия нож. Вижте, той стъпва върху ръката на изостанал другар - затъпква с подкования си ботуш тази ръка в размекнатата, покрита с изпочупени клонки почва. И все пак - това е той. Какво става, ами че той пее! Както си тананика, без да се усеща и без да мисли човек, изпаднал във вцепеняваща възбуда, тъй насилва той своето накъсано дишане, за да си пее полугласно: &lt;br /&gt;&lt;br /&gt;Изрязвах му в кората &lt;br /&gt;любимите слова... &lt;br /&gt;&lt;br /&gt;Той падна. Не, залегнал е, защото насреща му е завил някакъв пъклен пес, един голям бризантен снаряд, отвратителен подарък от преизподнята. Той лежи с лице в хладната кал, с разперени нозе и извърнати ходила - токовете му са прилепнали о земята. На тридесетина крачки косо пред него продуктът на една подивяла наука се забива дълбоко в почвата и там вътре сякаш сам дяволът изригва със страхотна, неизмерима мощ; бликва огромен фонтан от земя, огън, желязо, олово и разпокъсани човешки меса. Защото там бяха залегнали двамина - приятели бяха, сгушили се бяха един до друг в бедата: сега са размесени и изчезнали."&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;До днес с огромно нетърпение исках да я свърша, а днес ми се иска никога да не бе свършила.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-116306378619130548?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/116306378619130548/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=116306378619130548' title='2 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/116306378619130548'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/116306378619130548'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2006/11/blog-post_09.html' title='Книга'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-116194926810616167</id><published>2006-10-27T14:38:00.000+03:00</published><updated>2006-10-27T14:41:08.116+03:00</updated><title type='text'>Attitude Matters Too</title><content type='html'>Откъс от "The Art of Unix Programming", автор Eric Steven Raymond&lt;br /&gt;&lt;br /&gt;&lt;em&gt;"When you see the right thing, do it — this may look like more work in the short term, but it's the path of least effort in the long run. If you don't know what the right thing is, do the minimum necessary to get the job done, at least until you figure out what the right thing is. To do the Unix philosophy right, you have to be loyal to excellence. You have to believe that software design is a craft worth all the intelligence, creativity, and passion you can muster. Otherwise you won't look past the easy, stereotyped ways of approaching design and implementation; you'll rush into coding when you should be thinking. You'll carelessly complicate when you should be relentlessly simplifying — and then you'll wonder why your code bloats and debugging is so hard. To do the Unix philosophy right, you have to value your own time enough never to waste it. If someone has already solved a problem once, don't let pride or politics suck you into solving it a second time rather than re-using. And never work harder than you have to; work smarter instead, and save the extra effort for when you need it. Lean on your tools and automate everything you can.&lt;br /&gt;&lt;br /&gt;Software design and implementation should be a joyous art, a kind of high-level play. If this attitude seems preposterous or vaguely embarrassing to you, stop and think; ask yourself what you've forgotten. Why do you design software instead of doing something else to make money or pass the time? You must have thought software was worthy of your passion once.... To do the Unix philosophy right, you need to have (or recover) that attitude. You need to care. You need to play. You need to be willing to explore."&lt;/em&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-116194926810616167?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/116194926810616167/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=116194926810616167' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/116194926810616167'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/116194926810616167'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2006/10/attitude-matters-too.html' title='Attitude Matters Too'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-116161796600180990</id><published>2006-10-23T18:32:00.001+03:00</published><updated>2009-05-30T13:54:08.160+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='books'/><title type='text'>Великото Затъпяване</title><content type='html'>Откъс от "&lt;strong&gt;Вълшебната планина&lt;/strong&gt;" на Томас Ман&lt;br /&gt;&lt;br /&gt;&lt;em&gt;    Може повече да се каже. Не само той, Ханс Касторп се виждаше стигнал до тази точка, но му се струваше, че и светът, всичко около него е изпаднало в същото положение или по-скоро той смяташе, че е трудно да се различи тук особеното от общото. След ексцентричния край на неговата връзка с една личност, след многообразното вълнение, което този край предизвика в санаториума; след новото самоотлъчване на Клавдия Шоша от обществото на тия тук горе, след прощаването, което - засенчено от трагиката на великата капитулация - бе минало между нея и преживелия побратим на господаря й в духа на почтително съобразяване; след този поврат на младия човек се стори, че светът и животът не са съвсем в ред; сякаш по някакъв особен начин те бяха почнали все повече и повече да се изкривяват, да вдъхват страх; сякаш някакъв демон бе заграбил властта, демон озлобен и обезумял, който наистина отдавна вече бе упражнявал значително влияние, но сега бе обявил своето господство тъй открито разюздано, че вдъхваше тайнствен ужас и помисли за бягство - тоя демон, чието име бе Затъпяване.&lt;br /&gt;    Ще отсъдите, че разказвачът много романтично шаржира, като поставя затъпяването във връзка с демоничното и му приписва всяването на мистичен ужас. И все пак ние не съчиняваме, а се придържаме строго о личното преживяване на нашия простичък герой; опознали сме това преживяване по начин, който, разбира се, не се поддава на изследване, и то чисто и просто доказва, че при известни обстоятелства затъпяването може да добие такъв характер и да вдъхне такива чувства. Ханс Касторп се оглеждаше... Той виждаше само страшни, злокобни неща и знаеше какво вижда: живота без време, безгрижния и безнадежния живот, живота като подтискаща и дейна разпуснатост, мъртвия живот.&lt;/em&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-116161796600180990?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/116161796600180990/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=116161796600180990' title='0 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/116161796600180990'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/116161796600180990'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2006/10/blog-post_23.html' title='Великото Затъпяване'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31006936.post-116007335118219653</id><published>2006-10-05T21:34:00.000+03:00</published><updated>2009-05-30T13:54:08.161+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='books'/><title type='text'>У. Шекспир</title><content type='html'>&lt;em&gt;Това си ти за жадния ми взор:&lt;br /&gt;прохладен дъжд през много жарко лято.&lt;br /&gt;И с тебе аз съм вечно във раздор -&lt;br /&gt;като лихвар със скритото си злато.&lt;br /&gt;Ту аз ликувам, ту слухтя едвам,&lt;br /&gt;ту вечно дебна, пълен със злорадства.&lt;br /&gt;Ту бих желал да бъда с тебе сам&lt;br /&gt;и ту да блесна с моите богатства.&lt;br /&gt;Понякога като след празник сит&lt;br /&gt;и жадущ след това до утомление.&lt;br /&gt;Без своя радост, само с теб честит,&lt;br /&gt;надежда моя, щастие, мъчение.&lt;br /&gt;&lt;br /&gt;И ден след ден така се мъча тайно,&lt;br /&gt;безкрайно беден и богат безкрайно.&lt;br /&gt;&lt;br /&gt;Похвалите и всички празнодумства&lt;br /&gt;за твойта чест и хубост са кощунства.&lt;br /&gt;Безмълвната ми муза няма глас.&lt;br /&gt;А ето други, не така свенливи,&lt;br /&gt;те съчиняват химни час по час,&lt;br /&gt;хвалебстват със пера велеречиви.&lt;br /&gt;Аз нямам думи, аз съм много тих.&lt;br /&gt;И като някой псалт малограмотен&lt;br /&gt;повтарям все "амин" след всеки стих,&lt;br /&gt;блестящо и грижливо изработен.&lt;br /&gt;Аз казвам само: "вярно","да","така".&lt;br /&gt;Езикът друго няма да измисли!&lt;br /&gt;Не мога нищо да те нарека,&lt;br /&gt;но колко нежност крият мойте мисли.&lt;br /&gt;&lt;br /&gt;Намирай в другия вещия творец,&lt;br /&gt;но в мен цени безмълвния певец.&lt;br /&gt;&lt;br /&gt;Прости, ти струваш скъпо. Аз умея&lt;br /&gt;да те ценя, но не да плащам в срок.&lt;br /&gt;Да те задържам повече не смея,&lt;br /&gt;вземи обратно своя скъп залог.&lt;br /&gt;За мен ти беше някакво дарение.&lt;br /&gt;Не ти платих с един достоен акт.&lt;br /&gt;И, значи, можем по споразумение&lt;br /&gt;да заличиме нашия контракт.&lt;br /&gt;Ти своя дар не знаеше самата,&lt;br /&gt;не знаеше и нищичко за мен.&lt;br /&gt;Аз не по право задържах цената&lt;br /&gt;на твоя дар до този днешен ден.&lt;br /&gt;&lt;br /&gt;Бях цар насън. В среднощното ми бдение&lt;br /&gt;ти беше бегло, плахо привидение.&lt;br /&gt;&lt;br /&gt;Когато ме намразиш, друже мой,&lt;br /&gt;и ме отпратиш с присмех и презрение,&lt;br /&gt;със мен самия аз ще вляза в бой,&lt;br /&gt;но пак ще ти намеря извинение.&lt;br /&gt;Познавам се добре и някой ден&lt;br /&gt;аз ще разкажа за една такава&lt;br /&gt;порочна страст и скрити язви в мен,&lt;br /&gt;че губейки ме, ще добиеш слава.&lt;br /&gt;И няма в нищо да те обвиня.&lt;br /&gt;За тебе жертвам всичко най-достойно,&lt;br /&gt;но себе си така като петня,&lt;br /&gt;печелиш ти. С това печеля двойно.&lt;br /&gt;&lt;br /&gt;Обичам те. Поемам всичко зло,&lt;br /&gt;за да вървиш с изправено чело.&lt;/em&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31006936-116007335118219653?l=penkovski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penkovski.blogspot.com/feeds/116007335118219653/comments/default' title='Коментари за публикацията'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31006936&amp;postID=116007335118219653' title='2 коментара'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/116007335118219653'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31006936/posts/default/116007335118219653'/><link rel='alternate' type='text/html' href='http://penkovski.blogspot.com/2006/10/blog-post.html' title='У. Шекспир'/><author><name>Lyuben Penkovski</name><uri>http://www.blogger.com/profile/15949196668260102869</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_gDN22F7c9gw/S19z8sEiR3I/AAAAAAAABTc/4qjeq4iqEXg/S220/small5.jpg'/></author><thr:total>2</thr:total></entry></feed>
