<?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-7265960447928148132</id><updated>2011-08-02T09:28:45.837-07:00</updated><category term='flash'/><category term='cli'/><category term='finance'/><category term='multitasking'/><category term='explanation'/><category term='as3'/><category term='soa'/><category term='quote'/><category term='github'/><category term='social'/><category term='projects'/><category term='command'/><category term='application'/><category term='inspiration'/><category term='general'/><category term='presentation'/><category term='frameworks'/><category term='fiat'/><category term='credit'/><category term='amf'/><category term='productivity'/><category term='unity3d'/><category term='car'/><category term='linux'/><category term='facebook'/><category term='stage'/><category term='visualization'/><category term='presentattion'/><category term='movieclip'/><category term='snippet'/><category term='AUBG'/><category term='personal'/><category term='keynote'/><category term='scope'/><category term='django'/><category term='flex'/><category term='tip'/><category term='cool'/><category term='game design'/><category term='economics'/><category term='photo'/><category term='groovy'/><category term='OOP'/><category term='soapui'/><category term='cal_henderson'/><category term='testing'/><category term='JavaScript'/><category term='crisis'/><category term='nyc'/><category term='data'/><category term='fingerboarding'/><category term='university'/><title type='text'>Preslav Rachev</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>33</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-4970030525653044160</id><published>2011-05-26T14:51:00.000-07:00</published><updated>2011-05-26T14:56:39.940-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JavaScript'/><category scheme='http://www.blogger.com/atom/ns#' term='scope'/><title type='text'>JavaScript Variable/Function Scope - a Mystery: Part2</title><content type='html'>All this time I've lived with the impression that "public" methods (declared in a prototype) cannot access "private" members of constructor functions. Turns out that this is possible, as long as the "private" member is declared without &lt;i&gt;var &lt;/i&gt;standing in front.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;script src="https://gist.github.com/994165.js?file=gistfile1.js"&gt;&lt;/script&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Compare it with this one:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;script src="https://gist.github.com/994165.js?file=gistfile2.js"&gt;&lt;/script&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-4970030525653044160?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/4970030525653044160/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=4970030525653044160' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/4970030525653044160'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/4970030525653044160'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2011/05/javascript-variablefunction-scope.html' title='JavaScript Variable/Function Scope - a Mystery: Part2'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-773522154683598696</id><published>2011-05-26T02:41:00.000-07:00</published><updated>2011-05-26T05:37:19.636-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='amf'/><category scheme='http://www.blogger.com/atom/ns#' term='testing'/><category scheme='http://www.blogger.com/atom/ns#' term='soapui'/><category scheme='http://www.blogger.com/atom/ns#' term='groovy'/><category scheme='http://www.blogger.com/atom/ns#' term='soa'/><title type='text'>Using Groovy Code in SoapUI Requests</title><content type='html'>&lt;a href="http://2.bp.blogspot.com/-TQc5_Lwp_KI/Td47jR9YpLI/AAAAAAAAAYg/k9lotyLTdHQ/s1600/Clipboard01.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 400px; height: 375px;" src="http://2.bp.blogspot.com/-TQc5_Lwp_KI/Td47jR9YpLI/AAAAAAAAAYg/k9lotyLTdHQ/s400/Clipboard01.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5610987663052547250" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.soapui.org/"&gt;SoapUI &lt;/a&gt;is simply amazing. It's really a pity that I found out about it so soon. I could have used in so many projects before. Just listing its incredible features is a topic for a new post ...&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Anyway, this particular post will deal with one specific feature of SoapUI, namely, the enhancement of the request being sent to the server. I was very fascinated to find out that SoapUI can manage the entire request/response cycle even when it comes to AMF. That was great ... for most cases. There were some exceptional use cases where I could not simply put data as a simple input parameter. One of those cases was when I wanted to use file upload on one of my projects.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The way I had implemented this file upload involved sending a byte array with the file's bitmap data from the client to the server. At the beginning I thought that it was not possible to send anything more complex than strings and numbers through SoapUI. The only other option was to test it through the application itself which involved a lot of complications.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Then, out of a sudden, I found out that arguments sent via a SoapUI request could be augmented, or event completely overriden by using short Groovy scripts directly within the request interface&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;As you can see it on the shot, it is very easy to jump in, and "hack" the request, before it is sent to the server. You can even log whatever you need at runtime, (please don't try to log the contents of the &lt;i&gt;bytes &lt;/i&gt;array, as I did, because you'll be prompted with an immensely huge and difficult to close popup window :))) &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;script src="https://gist.github.com/992978.js?file=gistfile1.groovy"&gt;&lt;/script&gt;&lt;br /&gt;&lt;/div&gt;The code is not my most beautiful creation, but it works anyway.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-773522154683598696?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/773522154683598696/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=773522154683598696' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/773522154683598696'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/773522154683598696'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2011/05/soapui-is-simply-amazing.html' title='Using Groovy Code in SoapUI Requests'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-TQc5_Lwp_KI/Td47jR9YpLI/AAAAAAAAAYg/k9lotyLTdHQ/s72-c/Clipboard01.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-2884612338838004907</id><published>2011-02-10T05:46:00.000-08:00</published><updated>2011-02-10T05:50:42.845-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JavaScript'/><category scheme='http://www.blogger.com/atom/ns#' term='tip'/><title type='text'>Tip of the day: self-executing anonymous functions</title><content type='html'>As you start digging into some serious JavaScript source code like jQuery, for instance, or when you begin writing a complex JavaScript application or a framework, you will no doubt get to see the following piece of code quite often.&lt;br /&gt;&lt;br /&gt;&lt;script src="https://gist.github.com/811369.js?file=gistfile1.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;So what is it exactly? As the title suggests, it is called a self-executing anonymous function. What it does is call itself immediately when the script that contains it gets loaded. In other words, if you need something that should execute automatically when the page gets loaded, this is the way - just wrap the instructions in such a function, and you will be sure that they will get executed.&lt;br /&gt;&lt;br /&gt;Another common use case for that pattern is protecting your scripts from being interfered by other JavaScript code. Also, one can never be sure that the code that he or she writes is always using the proper instances, or whether some other JavaScript code has not messed up with the global scope variables. JavaScript can be very permissible on many occasions, and even stuff like "undefined = true" gets allowed. You can estimate yourself its impact on your code, unless you have declared what "undefined" is at the very beginning.&lt;br /&gt;&lt;br /&gt;John Resig's &lt;a href="http://books.google.co.uk/books?id=GgJN2CC_2s4C&amp;amp;pg=PA29&amp;amp;lpg=PA29&amp;amp;dq=John+resig+self+executing+anonymous+function&amp;amp;source=web&amp;amp;ots=7w-ceWchMH&amp;amp;sig=oLWUghev2PlbhBU0DXyw2i8fzM8&amp;amp;hl=en&amp;amp;sa=X&amp;amp;oi=book_result&amp;amp;resnum=1&amp;amp;ct=result#v=onepage&amp;amp;q&amp;amp;f=false"&gt;description &lt;/a&gt;of self-executing anonymous funcions&lt;br /&gt;&lt;br /&gt;In such cases, a self-executing anonymous function, instantiated with the proper instances of "window", "document", and "undefined" can be very valuable, although they are not mandatory&lt;br /&gt;&lt;br /&gt;Again, simply wrap your entire script in such a function, and you can be sure that no external code is messing around with it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-2884612338838004907?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/2884612338838004907/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=2884612338838004907' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/2884612338838004907'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/2884612338838004907'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2011/02/tip-of-day-self-executing-anonymous.html' title='Tip of the day: self-executing anonymous functions'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-1759296478684395027</id><published>2011-01-19T00:55:00.000-08:00</published><updated>2011-01-19T01:01:00.337-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='quote'/><category scheme='http://www.blogger.com/atom/ns#' term='OOP'/><title type='text'></title><content type='html'>&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 14px; color: rgb(102, 102, 102); letter-spacing: 1px; line-height: 22px; "&gt;&lt;blockquote style="margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 20px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; quotes: none; border-left-style: none; line-height: 26px; font-style: italic; font-family: Georgia, 'Times New Roman'; color: rgb(153, 153, 153); border-top-style: none; border-right-style: none; border-bottom-style: none; border-width: initial; border-color: initial; "&gt;Advocating "object-oriented programming" is like advocating "pants-oriented clothing"; it elevates one architectural model to an overimportant position.&lt;/blockquote&gt;&lt;cite style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 10px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 12px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; float: left; clear: both; width: 600px; font-style: italic; "&gt;– &lt;a href="http://steve-yegge.blogspot.com/2006/03/execution-in-kingdom-of-nouns.html"&gt;Steve Yegge&lt;/a&gt;&lt;/cite&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-1759296478684395027?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/1759296478684395027/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=1759296478684395027' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/1759296478684395027'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/1759296478684395027'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2011/01/advocating-object-oriented-programming.html' title=''/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-4103662087116130072</id><published>2011-01-17T14:44:00.000-08:00</published><updated>2011-02-10T05:43:21.829-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tip'/><category scheme='http://www.blogger.com/atom/ns#' term='unity3d'/><title type='text'>Unity3D Tip: Fixing Skybox Textures</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://unity3d.com/support/documentation/Images/manual/HOWTO-UseSkybox-0.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 288px; height: 715px;" src="http://unity3d.com/support/documentation/Images/manual/HOWTO-UseSkybox-0.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;span style="font-style:italic;"&gt;A skybox/skydome is a method of creating backgrounds to make computer and video games level look bigger than they really are. When a skybox is used, the level is enclosed in a cube/sphere, and the sky, distant mountains, distant buildings, and other unreachable objects are projected onto the cube's/sphere's surface. &lt;/span&gt; &lt;a href="http://en.wikipedia.org/wiki/Skybox_(video_games)"&gt;Wikipedia&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I was recently working on creating a skybox for a demo level in Unity3D. I had all the textures (Front,Back,Left,Right,etc...) properly cut out and everything, but every single time I ran the level, the skybox looked patched, as if there was a seam between any two texture tiles. I think that it is a pretty common problem with newbies, and the solution is pretty simple. When all the textures that are going to be on the skybox are referenced in the project, one has to manually go through each one, and change its "&lt;span style="font-weight:bold;"&gt;wrap"&lt;/span&gt; property to "C&lt;span style="font-weight:bold;"&gt;lamp"&lt;/span&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The general info on how to deal with skyboxes, can be found in the &lt;a href="http://unity3d.com/support/documentation/Manual/HOWTO-UseSkybox.html"&gt;Unity3D FAQ&lt;/a&gt;, where I found the answer.&lt;br /&gt;&lt;br /&gt;That's it. Pretty simple, yet bugging.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-4103662087116130072?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/4103662087116130072/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=4103662087116130072' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/4103662087116130072'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/4103662087116130072'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2011/01/unity3d-tip-fixing-skybox-textures.html' title='Unity3D Tip: Fixing Skybox Textures'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-4421527445796848848</id><published>2010-07-15T01:22:00.000-07:00</published><updated>2011-02-12T01:32:49.902-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='snippet'/><category scheme='http://www.blogger.com/atom/ns#' term='tip'/><category scheme='http://www.blogger.com/atom/ns#' term='github'/><title type='text'>Add Code Snippets with Github's Gist</title><content type='html'>&lt;blockquote&gt;&lt;/blockquote&gt;I’ve been looking for a simple way to add formatted code snippets to my blog. I know that Wordpress has a few neat plugins that do the job, but because this is a Blogspot-based blog, I had to find an outside solution (or maybe there’s a way to it here, but I just don’t have the time and efforts to delve into that right now)&lt;br /&gt;&lt;br /&gt;Well, I should say I found it. Plus, it’s not a miserable, banner-full service, but good old Github. Interestingly enought, the guys offer a nice way to make, share, fork, and embed code snippets in proper format, at the expense of adding a reference to a small js wherever the code should appear …. like that&lt;br /&gt;&lt;blockquote&gt;&lt;i&gt;&amp;lt;script src="”https://gist.github.com/765326.js?file=Test.cs”"&gt;&lt;/i&gt;&lt;br /&gt;&lt;/blockquote&gt;I think that the end result is good enough for sharing code snippets around.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;script src="https://gist.github.com/765326.js?file=Test.cs"&gt;&lt;/script&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&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/7265960447928148132-4421527445796848848?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/4421527445796848848/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=4421527445796848848' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/4421527445796848848'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/4421527445796848848'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2010/07/add-code-snippets-with-githubs-gist.html' title='Add Code Snippets with Github&apos;s Gist'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-8500922020254169813</id><published>2010-05-17T15:17:00.000-07:00</published><updated>2011-01-17T15:19:37.401-08:00</updated><title type='text'></title><content type='html'>&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; color: rgb(102, 102, 102); font-size: 14px; letter-spacing: 1px; line-height: 22px; "&gt;&lt;blockquote style="margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 3px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 20px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; quotes: none; border-left-style: none; line-height: 26px; font-style: italic; font-family: Georgia, 'Times New Roman'; color: rgb(153, 153, 153); border-top-style: none; border-right-style: none; border-bottom-style: none; border-width: initial; border-color: initial; background-position: initial initial; background-repeat: initial initial; "&gt;There are a number of people, myself included, who have been observing for a while now that the current web stack feels like Flash did in 1996. Look at the canvas demos, for example. The canvas demos we’re seeing now are totally reminiscent of the Flash demos we used to see in the ‘96 era, where it was like: “Hey, look! I have three circles and you can grab one with a mouse and flick it. And then it bounces around the box and there’s physics and collision and animation and they’re blobby and woo hoo.&lt;/blockquote&gt;&lt;cite style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 10px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 12px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; float: left; clear: both; width: 600px; font-style: italic; background-position: initial initial; background-repeat: initial initial; "&gt;– &lt;a href="http://radar.oreilly.com/2010/03/why-html5-is-worth-your-time.html" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 12px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; color: rgb(153, 153, 153); background-position: initial initial; background-repeat: initial initial; "&gt;Eric Meyer&lt;/a&gt;&lt;/cite&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-8500922020254169813?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/8500922020254169813/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=8500922020254169813' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/8500922020254169813'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/8500922020254169813'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2010/05/there-are-number-of-people-myself.html' title=''/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-5896342050146161085</id><published>2010-05-16T19:17:00.000-07:00</published><updated>2011-01-22T10:35:18.338-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='AUBG'/><title type='text'>I did it</title><content type='html'>I did it. I graduated. Probably the best years of my life so far, are going to an end. I will never forget any single moment of those four years; the friends, the parties, the lessons learned ... wherever I go, I will always remember my Bachelor days. &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Congratulations to the Class of 2010 !!!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_ebLZE94-6kY/TTsieHHM-mI/AAAAAAAAAYE/Ky9YUyTUjCE/s1600/photo.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 266px;" src="http://2.bp.blogspot.com/_ebLZE94-6kY/TTsieHHM-mI/AAAAAAAAAYE/Ky9YUyTUjCE/s400/photo.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5565079665247058530" /&gt;&lt;/a&gt;&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/7265960447928148132-5896342050146161085?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/5896342050146161085/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=5896342050146161085' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/5896342050146161085'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/5896342050146161085'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2010/05/i-did-it.html' title='I did it'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_ebLZE94-6kY/TTsieHHM-mI/AAAAAAAAAYE/Ky9YUyTUjCE/s72-c/photo.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-6094853874430697260</id><published>2010-02-12T01:44:00.000-08:00</published><updated>2011-02-12T02:25:22.074-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='as3'/><category scheme='http://www.blogger.com/atom/ns#' term='tip'/><category scheme='http://www.blogger.com/atom/ns#' term='flash'/><title type='text'>Newbie tip: Declaring and Managing Linked MovieClip Instances in Parent Classes</title><content type='html'>Suppose that we have two MovieClip-based classes called MegaNode and SimpleNode. We have created both of them by drawing two vector shapes on the scene and converting them to those Movieclip-based classes. For some reason, we want to call the instance of the shape that's inside - mainShape, therefore we convert it to a MovieClip, and call the instance mainShape.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Now, since on many occasions the MovieClip class is too general for our purposes, we define a SuperNode class, which extends MC, and servers as the parent for both M&lt;/div&gt;&lt;div&gt;egaNode and SimpleNode. We need to be able to manipulate the mainShape instance, so we instantiate it in the SuperNode class:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New'; font-size: 14px; "&gt;&lt;pre class="actionscript3" style="margin-top: 10px; margin-right: 10px; margin-bottom: 10px; margin-left: 10px; font-family: monospace; font-size: 12pt; font-weight: normal; "&gt;&lt;span style="font-family: 'Courier New'; font-size: 12pt; color: rgb(0, 51, 255); font-weight: bold; "&gt;public&lt;/span&gt; &lt;span style="font-family: 'Courier New'; font-size: 12pt; color: rgb(102, 153, 204); font-weight: bold; "&gt;var&lt;/span&gt; mainShape&lt;span style="font-family: 'Courier New'; font-size: 12pt; color: rgb(0, 0, 0); font-weight: bold; "&gt;:&lt;/span&gt;&lt;a href="http://www.google.com/search?q=movieclip%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:movieclip.html&amp;amp;filter=0&amp;amp;num=100&amp;amp;btnI=lucky"&gt;&lt;span style="font-family: 'Courier New'; font-size: 12pt; font-weight: normal; color: rgb(0, 73, 147); "&gt;MovieClip&lt;/span&gt;&lt;/a&gt;;&lt;/pre&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;img src="http://1.bp.blogspot.com/-0kFvK0MwibE/TVZeqgvm_ZI/AAAAAAAAAYY/97sIpcqAoNU/s400/Clipboard01.png" style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 294px; height: 91px;" border="0" alt="" id="BLOGGER_PHOTO_ID_5572745673354706322" /&gt;&lt;/div&gt;&lt;div&gt;if we simply do that, the compiler will throw the following error: "&lt;i&gt;1152: A conflict exists with inherited definition SuperNode.mainShape in namespace public.&lt;/i&gt;" &lt;/div&gt;&lt;div&gt;The reason for that is that by default, all instances of linked MovieClips, such as mainShape, are automatically declared by default at runtime. In order to make sure that we don't get into that error again, we need to go to the ActionScript s&lt;/div&gt;&lt;div&gt;ettings, and uncheck the "Automatically declare stage instances" checkbox. With that done, the above mentioned code will work, and we'll be able to manipulate the mainShape instance from the SuperNode class&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;NOTE: Make sure that instances like mainShape  are always declared as &lt;i&gt;public&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span class="o" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.4em; font-weight: bold; font-family: 'Bitstream Vera Sans Mono', Courier, monospace; font-size: 12px; white-space: pre; "&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-6094853874430697260?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/6094853874430697260/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=6094853874430697260' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/6094853874430697260'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/6094853874430697260'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2010/02/newbie-tip-declaring-and-managing.html' title='Newbie tip: Declaring and Managing Linked MovieClip Instances in Parent Classes'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-0kFvK0MwibE/TVZeqgvm_ZI/AAAAAAAAAYY/97sIpcqAoNU/s72-c/Clipboard01.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-8461846017943730531</id><published>2010-02-10T07:54:00.000-08:00</published><updated>2011-02-14T10:26:48.263-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='stage'/><category scheme='http://www.blogger.com/atom/ns#' term='as3'/><category scheme='http://www.blogger.com/atom/ns#' term='flash'/><title type='text'>stage.width, stage.stageWidth, and loaderInfo.width</title><content type='html'>For any new Flasher comes the time of dealing with the &lt;b&gt;stage &lt;/b&gt;and its properties. It is probably confusing for newcomers to distinguish between stage.width and stage.stageWidth, therefore this post. (the same logic follows for stage.height and stage.stageHeight)&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;stage.width&lt;/b&gt; is defined by the distance between the smallest and the largest x coordinate that its children reach at any certain point in time. If we imagine the stage as a balloon, the further we inflate it, the bigger the distance between its walls gets. Therefore, if you have tried to determine the width/height of the stage using the stage.width/stage.height properties, before anything has been put on the stage, the output must have always been 0.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;stage.stageWidth&lt;/b&gt;, on the other hand, defines the width of the entire Flash window.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;NOTE: Normally, one would assume that if the stage's scale mode is set to &lt;b&gt;StageScaleMode.NO_SCALE&lt;/b&gt;, the &lt;b&gt;stage.stageWidth&lt;/b&gt; will remain constant, no matter how much we resize the Flash window. Well, no .... &lt;b&gt;stage.stageWidth&lt;/b&gt; changes all the time, regardless of what the documentation says. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If you want to get the value of the stage width, as defined in the project settings, or the SWF metadata, you should use &lt;b&gt;loaderInfo.width&lt;/b&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-8461846017943730531?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/8461846017943730531/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=8461846017943730531' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/8461846017943730531'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/8461846017943730531'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2010/02/stagewidth-stagestagewidth-and.html' title='stage.width, stage.stageWidth, and loaderInfo.width'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-8041793434880865942</id><published>2009-08-13T01:07:00.000-07:00</published><updated>2009-08-13T02:43:55.905-07:00</updated><title type='text'></title><content type='html'>Man, if I continue writing like that, my next post will be in October 2015. I certainly hope that blogs will still be around at that time. Anyway ...&lt;br /&gt;&lt;br /&gt;What came to my mind these days, could turn out to be a promising idea. I was been working on an alpha prototype for my Rapid Prototyping in Game Development course, when I thought how much better it would be if we could create game prototypes using markup code - just like we create Flex or WPF apps. Imagine how much cleaner and comprehensible it would be for not-so-much-in-dev guys: designers, creative people, etc.&lt;br /&gt;&lt;br /&gt;Instead of writing tons of declarations on the C# (or whatever language is used) side, one could declare a scene using xml structures.The code will have all the advantages of MXML/XAML such as event bubbling, code nesting, binding, etc.&lt;br /&gt;&lt;br /&gt;Two possible solutions come to mind:&lt;br /&gt;1. Integrating XNA with WPF&lt;br /&gt;2. Integrating Papervision3D with FLEX&lt;br /&gt;&lt;br /&gt;I guess that integrating PV3D with FLEX will be much easier to integarte.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-8041793434880865942?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/8041793434880865942/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=8041793434880865942' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/8041793434880865942'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/8041793434880865942'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2009/08/man-if-i-continue-writing-like-that-my.html' title=''/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-8587809804596122679</id><published>2009-06-29T14:04:00.000-07:00</published><updated>2009-06-29T14:05:10.984-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='movieclip'/><category scheme='http://www.blogger.com/atom/ns#' term='flash'/><title type='text'>Pretty Good Impressions from Flash : Movie Clips</title><content type='html'>I've just recently started using Flash IDE as a development environment. Having a programming backgroung, I've always considered the Flash IDE too "out of the box" for development work. Plus, the built-in ActionScript editor, which I still do not like and try to avoid using always put out my efforts to deal with it. That's why my first experiments with ActionScript turned out to be using Flex. Flex is great, there is no doubt in that, but every tool has its particular purpose. When one wants to setup a WIMP web or desktop app, Flex is really the right one. For rapid prototyping and game development, though, it is not providing results fast enough. This is where Flash comes in. &lt;br /&gt;&lt;br /&gt;I've always had difficulties figuring out what the movie clip was and how it worked. Well, most Flash books tend to explain it in the wrong way. Pretty much, a movie clip is the graphical representation of a class. In Flash, a movie clip is what a class is in programming - an abstract description. Just like in programming, a movie clip can be instantialized and changes to the class apply to all instances. Movie clips can be composed of instances of other movie clips, and every movie clip has its own timeline - every movie clip could have its own states and animations. I am coming to the greatest part for every developer - every movie clip can be linked to an ActionScript class. The only requirement for the class is to extend the MovieClip class. Isn't that great? As an experiment, I setup a simple project  in which I created a  gameCharacter class with simple logic that my game character should implement (methods like jump(), and accelerate()). Then I linked it to a Charater movie clip, and it worked like magic. Simply great.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-8587809804596122679?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/8587809804596122679/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=8587809804596122679' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/8587809804596122679'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/8587809804596122679'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2009/06/pretty-good-impressions-from-flash.html' title='Pretty Good Impressions from Flash : Movie Clips'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-3234830852088232379</id><published>2009-06-21T03:32:00.000-07:00</published><updated>2009-06-21T03:55:32.307-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='game design'/><title type='text'>Seamless Interaction With the Player: A Good Example</title><content type='html'>In one of the latest sessions of my "Rapid Prototyping in Game Development" course, we spoke about interaction, and how important it is for a game to interact with the user, so that he/she could feel totally immersed in the action. Moreover, a good game must do that seamlessly. Recently, I saw a very good idea in this direction. &lt;br /&gt;&lt;br /&gt;First, some background. Everyone who's played strategy games, be that RTS, or turn-based, knows that before being able to build a complex construction, or produce an advanced unit, the player has to produce several essential buildings or units, or has to fulfill a quest. Before doing that, the player can see all the buildings, units, or whatever, but cannot select them. &lt;br /&gt;&lt;br /&gt;I saw a bit different, and personally, a better idea recently.  &lt;a href="http://"&gt;Sprouts Adventure &lt;/a&gt; is a small casual game that turns the player into a deity who controls the lives and activities of a bunch of small unit creatures. The idea is to care for them so that they are always motivated, lively, and fed. As a result, usually, one of them says "I have an idea", a small bulb-like icon appears above its head, and when the player clicks on it, the unit starts turning the idea into a building or a construction (a bridge or something else). In this way the hierarchical development is completely hidden from the player.  &lt;br /&gt;&lt;br /&gt;This gives a bunch of ideas in the same direction...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-3234830852088232379?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/3234830852088232379/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=3234830852088232379' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/3234830852088232379'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/3234830852088232379'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2009/06/seamless-interaction-with-player-good.html' title='Seamless Interaction With the Player: A Good Example'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-6851792271824168967</id><published>2009-06-05T13:29:00.001-07:00</published><updated>2009-06-05T13:55:48.663-07:00</updated><title type='text'>Random Thoughts 1</title><content type='html'>So many things in my head. Random ideas, memories, impressions everything. I guess I should start writing them down at some point. With time,they will probably turn into a proper flow of information. Might be very disorganized at the beginning, though. &lt;br /&gt;&lt;br /&gt;Anyway, I've been in Germany for a little more than a couple of months already. My general impressions are that the country offers a lot of opportunities for young and ambitious persons, however, the good knowledge of the German language is almost always a MUST. I don't know whether it is specific for the place I'm living in (Magdeburg) or it's common for the entire country, but I've had hard times communicating with Germans in English. Apart from professors and student colleagues, very few people speak English, or at least try by all means to avoid using it. &lt;br /&gt;&lt;br /&gt;At the beginning, this was a bit of a shock for me, because I somehow had overestimated the universality of the English language. Anyway, I've always wanted to learn German, so this has been a perfect opportunity to do so. I studied it in high school, but as it happens with anything done in high school, one has to start it from scratch afterwards. That's what I did. For quite a lot of time I didn't see any signs of improvement, but this week I might say, I am definitely feeling my German better. I guess, it is true that patience and consistent practice might make miracles happen.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-6851792271824168967?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/6851792271824168967/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=6851792271824168967' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/6851792271824168967'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/6851792271824168967'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2009/06/random-thoughts-1.html' title='Random Thoughts 1'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-105822868861541201</id><published>2009-06-04T03:56:00.000-07:00</published><updated>2009-06-04T04:10:02.085-07:00</updated><title type='text'>Lost Track of This Blog</title><content type='html'>I so much wanted to be a proactive blogger, and many times I make myself just sit down and start writing, but nothing comes out. Somehow, I make myself believe that there is nothing about me and my world that is worth writing about. So, what I do in many cases is dump my blogging activity and turn to some other kind of info sharing like the so called re-blogging, known from Twitter and Tumblr. There is nothing wrong with that, and I think that this is a great way to share a message with the world. However, one could do so much more than just reblog. One thing reblogging cannot do is spur creativity. That's what blogging's about. There is nothing wrong in watching someone else's work and appreciating it, but one could could contribute so much more by sharing his/her personal opinion on things. &lt;br /&gt;&lt;br /&gt;The point of this pointless post is: Make myself writing.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-105822868861541201?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/105822868861541201/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=105822868861541201' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/105822868861541201'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/105822868861541201'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2009/06/lost-track-of-this-blog.html' title='Lost Track of This Blog'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-4681109811949619024</id><published>2009-03-20T13:24:00.000-07:00</published><updated>2009-03-20T13:26:19.239-07:00</updated><title type='text'>Jason Fried's Talk at the Business of Software Conference</title><content type='html'>&lt;embed src="http://blip.tv/play/AdOYJZCcZQ" type="application/x-shockwave-flash" width="600" height="480" allowscriptaccess="always" allowfullscreen="true"&gt;&lt;/embed&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-4681109811949619024?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/4681109811949619024/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=4681109811949619024' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/4681109811949619024'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/4681109811949619024'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2009/03/jason-frieds-talk-at-business-of.html' title='Jason Fried&apos;s Talk at the Business of Software Conference'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-8411746080413246294</id><published>2009-03-17T11:32:00.000-07:00</published><updated>2009-03-17T11:35:49.617-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='credit'/><category scheme='http://www.blogger.com/atom/ns#' term='crisis'/><category scheme='http://www.blogger.com/atom/ns#' term='finance'/><category scheme='http://www.blogger.com/atom/ns#' term='presentation'/><title type='text'>Another Simple Crisis Explanation</title><content type='html'>&lt;span class="Apple-style-span" style="font-style: italic;"&gt;Marketplace &lt;/span&gt;Senior Editor Paddy Hirsch uses a only a whiteboard to explain and visualize how CDO's (Collateralized Debt Obligations) became the cornerstone of the credit crisis&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/eb_R1-PqRrw&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=ja&amp;amp;feature=player_embedded&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/eb_R1-PqRrw&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=ja&amp;amp;feature=player_embedded&amp;amp;fs=1" type="application/x-shockwave-flash" 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/7265960447928148132-8411746080413246294?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/8411746080413246294/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=8411746080413246294' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/8411746080413246294'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/8411746080413246294'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2009/03/another-simple-crisis-explanation.html' title='Another Simple Crisis Explanation'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-183474734955845032</id><published>2009-03-14T15:18:00.000-07:00</published><updated>2009-03-14T15:35:39.803-07:00</updated><title type='text'>Samsung NC10</title><content type='html'>For quite some time I've been looking at ultra-portable notebooks (so called netbooks) as an alternative to my current 14'1 inch notebook. I completely understand the fact that the display is (much) smaller, and it will be harder to write code (at least at the beginning), but on the other hand, lower weight and smaller overal dimensions are quite an issue. Mobility is becoming more and more a factor I can't underestimate. Of course, I am not considering the smallest netbooks, like the original EEE PC, not because they're not good, but because they're  just not suitable for my work. Lately, I found out about the Samsung NC10 model. It has a 10-something inch screen, which is pretty much enough for my needs. I will need to find out if any developers have used it an dwhat their impressions are, but so far, I like it. &lt;br /&gt;&lt;br /&gt;This is a short video review of the machine:&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/AsqHdLS_oSE&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/AsqHdLS_oSE&amp;amp;hl=en&amp;amp;fs=1" 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/7265960447928148132-183474734955845032?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/183474734955845032/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=183474734955845032' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/183474734955845032'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/183474734955845032'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2009/03/samsung-nc10.html' title='Samsung NC10'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-2667693635112413139</id><published>2009-03-13T13:23:00.001-07:00</published><updated>2009-03-13T13:25:46.267-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='photo'/><category scheme='http://www.blogger.com/atom/ns#' term='car'/><category scheme='http://www.blogger.com/atom/ns#' term='inspiration'/><category scheme='http://www.blogger.com/atom/ns#' term='fiat'/><title type='text'>Inspirational Photo of the Day (2)</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://farm3.static.flickr.com/2269/2052823997_6eacf77195.jpg?v=0"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 500px; height: 498px;" src="http://farm3.static.flickr.com/2269/2052823997_6eacf77195.jpg?v=0" alt="" border="0" /&gt;&lt;/a&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;courtesy of &lt;a href="http://www.flickr.com/photos/esmuz/"&gt;esmuz&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-2667693635112413139?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/2667693635112413139/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=2667693635112413139' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/2667693635112413139'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/2667693635112413139'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2009/03/inspirational-photo-of-day-2.html' title='Inspirational Photo of the Day (2)'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-245387216064772492</id><published>2009-03-12T23:50:00.000-07:00</published><updated>2009-03-12T23:53:40.433-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='photo'/><category scheme='http://www.blogger.com/atom/ns#' term='nyc'/><category scheme='http://www.blogger.com/atom/ns#' term='inspiration'/><title type='text'>Inspirational Photo of the Day</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.media.tumblr.com/jEdKdPFJ7kwwkt53HZYxeOrao1_500.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 500px; height: 303px;" src="http://1.media.tumblr.com/jEdKdPFJ7kwwkt53HZYxeOrao1_500.jpg" alt="" border="0" /&gt;&lt;/a&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;5 P.M. New York City  - courtesy of &lt;a href="http://www.flickr.com/photos/tonyshi/"&gt;Tony Shi&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-245387216064772492?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/245387216064772492/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=245387216064772492' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/245387216064772492'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/245387216064772492'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2009/03/inspirational-photo-of-day_12.html' title='Inspirational Photo of the Day'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-857601615670431111</id><published>2009-03-12T08:17:00.000-07:00</published><updated>2009-03-12T08:48:12.140-07:00</updated><title type='text'>Issues with event bubbling in Flex</title><content type='html'>These days, I came up with a pretty obscure situation, which took me two hours of useless browsing, and an icq session with a colleague of mine to solve. The solution (at least, its implementation) was far simpler than I expected. So, here is the situation:&lt;br /&gt;&lt;br /&gt;In the main application's MXML markup, I declared a &lt;span style="font-style: italic;"&gt;FormComponent &lt;/span&gt;(a custom component that extends &lt;span style="font-style: italic;"&gt;Form&lt;/span&gt;). The &lt;span style="font-style: italic;"&gt;FormComponent &lt;/span&gt;declares a &lt;span style="font-style: italic;"&gt;FormController&lt;/span&gt;, which is an AS 3 class that deals with the data management, and some other features of the form. At some point, the &lt;span style="font-style: italic;"&gt;FormController &lt;/span&gt;dispatches a custom event that is supposed to be caught by the &lt;span style="font-style: italic;"&gt;FormComponent &lt;/span&gt;. In this way, when I declare the &lt;span style="font-style: italic;"&gt;FormComponent &lt;/span&gt;in the main application, I could assign a handler for this event without even knowing who dispatched it. This happens because of the principle of event bubbling, i.e when an event is dispatched, it goes up the object tree (the MXML hierarchy, respectively) until it is caught by a listener.&lt;br /&gt;&lt;br /&gt;Unfortunately, in this case, event bubbling would not happen (i.e, nothing will really work) unless some changes were done to the AS 3 class.  The reason for this is that event bubbling pretty much happens when we use visual objects (trees, comboboxes, lists, etc). In order to make my &lt;span style="font-style: italic;"&gt;FormController &lt;/span&gt;class applicable I had to make it implement an interface called &lt;span style="font-style: italic;"&gt;IMXMLObject&lt;/span&gt;. This interface requres only one method to be implamented - &lt;span style="font-style: italic;"&gt;initialized&lt;/span&gt;. This method would work instead of a class constructor (we don't have to provide a constructor - anything has to be declared in the &lt;span style="font-style: italic;"&gt;initialized &lt;/span&gt;method. The syntax of the initialized method is as follows:&lt;br /&gt;&lt;br /&gt;&lt;div class="summarySignature"&gt; &lt;a class="signatureLink" href="http://livedocs.adobe.com/flex/2/langref/mx/core/IMXMLObject.html#initialized%28%29"&gt;initialized&lt;/a&gt;(document:&lt;a href="http://livedocs.adobe.com/flex/2/langref/Object.html"&gt;Object&lt;/a&gt;, id:&lt;a href="http://livedocs.adobe.com/flex/2/langref/String.html"&gt;String&lt;/a&gt;):&lt;a href="http://livedocs.adobe.com/flex/2/langref/specialTypes.html#void"&gt;void&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;In simpler words, when my FormController is initialized,  it would be provided with these two  arguments. the &lt;span style="font-style: italic;"&gt;id &lt;/span&gt;is clear enough, any MXML object has an id, regardless of whether we declare it or not. What is more interesting is the &lt;span style="font-style: italic;"&gt;document&lt;/span&gt;. I haven't had the time to go deeper in that, but it turns out that the &lt;span style="font-style: italic;"&gt;document&lt;/span&gt; provides a reference to the MXML document that created the object. what I had to do in this &lt;span style="font-style: italic;"&gt;initialized &lt;/span&gt;method is simply to assign a reference to the &lt;span style="font-style: italic;"&gt;document&lt;/span&gt; parameter in a local variable -&lt;span style="font-style: italic;"&gt; _document&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;now, when I needed an event to be dispatched, rather than doing this:&lt;br /&gt;&lt;span style="font-style: italic;"&gt;this.dispatchEvent(....)&lt;/span&gt;&lt;br /&gt;I had to do it this way :&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_doucment.dispatchEvent(...)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;... and it worked perfectly&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/7265960447928148132-857601615670431111?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/857601615670431111/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=857601615670431111' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/857601615670431111'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/857601615670431111'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2009/03/issues-with-event-bubbling-in-flex.html' title='Issues with event bubbling in Flex'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-6875287842239847685</id><published>2009-03-10T14:42:00.001-07:00</published><updated>2009-03-10T14:43:13.599-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cool'/><category scheme='http://www.blogger.com/atom/ns#' term='photo'/><category scheme='http://www.blogger.com/atom/ns#' term='fingerboarding'/><title type='text'>Inspirational Photo of the Day</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://fc55.deviantart.com/fs21/f/2007/255/1/d/Fingerboard_by_Shy_Freak_q.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 756px; height: 450px;" src="http://fc55.deviantart.com/fs21/f/2007/255/1/d/Fingerboard_by_Shy_Freak_q.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-6875287842239847685?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/6875287842239847685/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=6875287842239847685' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/6875287842239847685'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/6875287842239847685'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2009/03/inspirational-photo-of-day.html' title='Inspirational Photo of the Day'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-5496273170454953965</id><published>2009-03-10T13:37:00.000-07:00</published><updated>2009-03-10T13:47:04.612-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='multitasking'/><category scheme='http://www.blogger.com/atom/ns#' term='productivity'/><title type='text'>Multitasking is not for me</title><content type='html'>Everyone wants to be like Napoleon and do various tings at the same time. For quite some time, I have tried to live with multitasking in mind, but the more I am trying to apply it, the more counterproductive it gets. Of course, very few are those who are supposed to work on one thing only. Mostly, we switch between two or three things at once. This is rather normal. No one says that we must start doing one thing only; what we need to do is pick a limited amount of tasks that we could easily handle instead of dozens of things that we can't even remember. &lt;br /&gt;&lt;br /&gt;The truth about counter-productiveness comes from the task switching itself, Since our brains are programmed to fully concentrate on one thing, every time we switch tasks, there is a static period of adjustment that is impossible to eliminate. In fact, according to a &lt;a href="http://www.psychologymatters.org/multitask0306.html"&gt;study&lt;/a&gt;, it could take up to 40% of our working time. So, be sure to think about it the next time you write three papers, speak on the phone, and check your facebook at once :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-5496273170454953965?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/5496273170454953965/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=5496273170454953965' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/5496273170454953965'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/5496273170454953965'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2009/03/multitasking-is-not-for-me.html' title='Multitasking is not for me'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-314504499974442283</id><published>2009-03-09T01:06:00.000-07:00</published><updated>2009-03-09T01:18:09.871-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='data'/><category scheme='http://www.blogger.com/atom/ns#' term='application'/><category scheme='http://www.blogger.com/atom/ns#' term='social'/><category scheme='http://www.blogger.com/atom/ns#' term='facebook'/><title type='text'>Facebook App of the Day: Nexus</title><content type='html'>The &lt;a href="http://nexus.ludios.net/"&gt;Nexus&lt;/a&gt; application is the ultimate tool for all to-be social researchers, data miners, marketers, or simply fans of complicated graphs. What it does is extracts your fried data and presents it as a complex graph of nodes and connections, where the nodes in the center of the graph are the ones that you have the most identical friend connections with. Other than that, when you click a node (i.e. one of your Facebook friends, the application pops out other similarity information about that person, such as the groups you share, similarities in interests and so on.&lt;br /&gt;&lt;br /&gt;This is how my network of friends looked like this morning:&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ebLZE94-6kY/SbTQbWu5ndI/AAAAAAAAALU/Z1xy7jNxMx4/s1600-h/49bbad3e362d23c6779455ec7e29f957.dark.simple.382.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 262px;" src="http://1.bp.blogspot.com/_ebLZE94-6kY/SbTQbWu5ndI/AAAAAAAAALU/Z1xy7jNxMx4/s320/49bbad3e362d23c6779455ec7e29f957.dark.simple.382.png" alt="" id="BLOGGER_PHOTO_ID_5311099028953996754" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-314504499974442283?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/314504499974442283/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=314504499974442283' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/314504499974442283'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/314504499974442283'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2009/03/facebook-app-of-day-nexus.html' title='Facebook App of the Day: Nexus'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_ebLZE94-6kY/SbTQbWu5ndI/AAAAAAAAALU/Z1xy7jNxMx4/s72-c/49bbad3e362d23c6779455ec7e29f957.dark.simple.382.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-5250248105370084851</id><published>2009-03-08T08:29:00.000-07:00</published><updated>2009-03-08T08:43:02.687-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='explanation'/><category scheme='http://www.blogger.com/atom/ns#' term='economics'/><category scheme='http://www.blogger.com/atom/ns#' term='credit'/><category scheme='http://www.blogger.com/atom/ns#' term='visualization'/><category scheme='http://www.blogger.com/atom/ns#' term='crisis'/><category scheme='http://www.blogger.com/atom/ns#' term='finance'/><title type='text'>Incredibly simple explanations of the crisis and what led to it</title><content type='html'>With everybody speaking about the economic crisis all day long, I began feeling more and more confused. Despite having taken corporate finance at the University, I moved away from the scientific explanations of the situation and rather preferred a single, truly lame explanation that would fill all the voids. I actually found found two of those, and I am posting them here. I'd be happy if my finance teachers could see this post and use the way of explaining as a lesson.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The Crisis of Credit Visualized&lt;br /&gt;&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=0&amp;amp;color=&amp;amp;fullscreen=1"&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=0&amp;amp;color=&amp;amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="225"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This American Life: The Financial Crisis in 59 Minutes&lt;br /&gt;&lt;embed src= "http://www.odeo.com/flash/audio_player_standard_gray.swf" quality="high" width="300" height="52" allowScriptAccess="always" wmode="transparent"  type="application/x-shockwave-flash" flashvars= "valid_sample_rate=true&amp;external_url=http://podcast.thisamericanlife.org/podcast/375.mp3" pluginspage="http://www.macromedia.com/go/getflashplayer"&gt; &lt;/embed&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-5250248105370084851?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/5250248105370084851/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=5250248105370084851' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/5250248105370084851'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/5250248105370084851'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2009/03/incredibly-simple-explanations-of.html' title='Incredibly simple explanations of the crisis and what led to it'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-3980032446131621435</id><published>2009-01-18T08:19:00.000-08:00</published><updated>2009-01-18T08:24:55.625-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='flex'/><category scheme='http://www.blogger.com/atom/ns#' term='presentattion'/><title type='text'>Alistair Mcleod's Presentation about Cairngorm @ MAX Milan 2008</title><content type='html'>One of the creators of the Cairngorm Flex microarchitecture spoke about the framework and explained some best practices in the field at MAX Milan 2008. These are the slides of his presentation:&lt;br /&gt;&lt;br /&gt;&lt;object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,115,0" width="365" height="500"&gt; &lt;param name="movie" value="https://share.acrobat.com/adc/flex/mpt.swf" /&gt; &lt;param name="quality" value="high" /&gt; &lt;param name="wmode" value="transparent"/&gt; &lt;param name="allowFullScreen" value="true"/&gt; &lt;param name="flashvars"  value="ext=pdf&amp;docId=bc5b2ad3-e2c4-4891-a6df-74ce010e9821&amp;lang=en_US"/&gt; &lt;embed src="https://share.acrobat.com/adc/flex/mpt.swf"  quality="high"  pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash"  type="application/x-shockwave-flash" width="365" height="500" wmode="transparent" allowFullScreen="true" flashvars="ext=pdf&amp;docId=bc5b2ad3-e2c4-4891-a6df-74ce010e9821&amp;lang=en_US"&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/7265960447928148132-3980032446131621435?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/3980032446131621435/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=3980032446131621435' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/3980032446131621435'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/3980032446131621435'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2009/01/alistair-mcleods-presentation-about.html' title='Alistair Mcleod&apos;s Presentation about Cairngorm @ MAX Milan 2008'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-6347725663039006406</id><published>2009-01-16T00:37:00.000-08:00</published><updated>2009-01-16T00:45:16.632-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='frameworks'/><category scheme='http://www.blogger.com/atom/ns#' term='presentattion'/><category scheme='http://www.blogger.com/atom/ns#' term='django'/><category scheme='http://www.blogger.com/atom/ns#' term='cal_henderson'/><category scheme='http://www.blogger.com/atom/ns#' term='keynote'/><title type='text'>Cal Henderson's Keynote on DjangoCon 2008</title><content type='html'>&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/i6Fr65PFqfk&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/i6Fr65PFqfk&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;This video is a bit humorous but fairly interesting talk from Cal Henderson, a software architect at Flickr. Cal speaks a lot about Django and frameworks in general. Maybe the most interesting part of the talk was his answer of the question: "Why use fraeworks?"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-6347725663039006406?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/6347725663039006406/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=6347725663039006406' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/6347725663039006406'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/6347725663039006406'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2009/01/cal-hendersons-keynote-on-djangocon.html' title='Cal Henderson&apos;s Keynote on DjangoCon 2008'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-4171046288897317521</id><published>2008-12-21T04:06:00.000-08:00</published><updated>2011-01-19T00:54:44.382-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='projects'/><category scheme='http://www.blogger.com/atom/ns#' term='university'/><category scheme='http://www.blogger.com/atom/ns#' term='personal'/><title type='text'>Monthly Updates</title><content type='html'>Definitely, I had no time to write blog posts last month (and a half). I was preoccupied with so many things that I almost (poor me) forgot about my hobby. I tried to twitter about my status as much I could, but still my blog deserves a good and relatively long post. Here it is:&lt;br /&gt;&lt;br /&gt;First, I am done with the finals for the semester, and luckily, back at home for the hoildays. It seems that final exams are getting harder every semester, despite the efforts and sleepless nights I spend.&lt;br /&gt;&lt;br /&gt;I am happy enough to say that I got admitted as a visiting student at the Otto-von-Guericke University in Magdeburg, Germany. The university offers an outstanding Computer Science curriculum, and I will be able to take courses, such as Advanced Databases Models, Systems Engineering and Advanced Data Analysis - ones that I would never be able to take at AUBG. I hope that it will be quite an experience, and I will FINALLY start using my German abilities. The semester starts on March 30, which will give me some time to concentrate on some of my projects and eventually find a short internship/training program. People are usually skeptical about internships during the winter months, but I am taking it as a challenge. One never knows about potential opportunities.&lt;br /&gt;&lt;br /&gt;Last semester was a period of lost expectations as well. Despite the hard work, tons of coffee, and few hours of sleep, the Trinity project did not manage to win the start-up competition, that our team participated at. This is the time and place to explain what Trinity is. Trinity is a software as a service business solution that will allow small and mid-sized companies in Bulgaria and the region to optimizie their business operations at the cost of a monthly subscription. Despite the 3-rd place we got on the final, I am still eager to continue with the project and realize it at full scale. What struck me most, which was our teams' main concern towards our potential clients, was that the jury, partly consisting of Bulgarian business representatives, did not get it clear what we offer. Despite recent development, Bulgarian business still has a long way to go to get out of the "Paper Age". Luckily, I see this as an opportunity rather than a problem.&lt;br /&gt;&lt;br /&gt;In general, last semester was one of hard work, lots of projects (equally related to Business Administration and Computer Science), lots of ideas waiting to be realized (starting NOW), and lots of coding (I really mean it). My first book will probably be called "Dreaming in C# with C++ nightmares".&lt;br /&gt;&lt;br /&gt;I guess that my blog will be happy now. I gave it a brand new (pretty long, too) blog post. Now that I have more time, i will give my best to write more frequently.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-4171046288897317521?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/4171046288897317521/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=4171046288897317521' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/4171046288897317521'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/4171046288897317521'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2008/12/monthly-updates.html' title='Monthly Updates'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-4524218033385807311</id><published>2008-10-22T10:08:00.000-07:00</published><updated>2008-10-23T02:34:24.109-07:00</updated><title type='text'>Attended the AUBG Microsoft Day</title><content type='html'>The AUBG Microsoft Day is an initiative by Microsoft Bulgaria, which is organized every year for the students of the American University in Bulgaria. This time, instead of the usual emphasis on purely Computer Science topics, two seminars were given particularly for Business Administration students. The seminars dealt primarily with the implementations of CRM and ERP software in the business process, and Microsoft Dynamics CRM and Dynamcs NAV were shown as examples. A Microsoft Bulgaria initiative was announced that would allow AUBG students (at least, those that are particularly interested in Business) to have an access to licensed versions of Dynamics NAV and CRM, and (probably) obtain a copy for academic purposes.&lt;br /&gt;&lt;br /&gt;I expected to see some implementations of Microsoft's on-demand business tools, but alas, they are still sold exclusively in the States. &lt;br /&gt;&lt;br /&gt;Luckily, I managed to win a Silverlight 2.0 book at the seminar. I stil haven't got a chance to take a look at it, though.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-4524218033385807311?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/4524218033385807311/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=4524218033385807311' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/4524218033385807311'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/4524218033385807311'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2008/10/attended-aubg-microsoft-day.html' title='Attended the AUBG Microsoft Day'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-6446335204688846214</id><published>2008-10-13T22:35:00.000-07:00</published><updated>2008-10-14T13:57:22.155-07:00</updated><title type='text'>Attended DevReach 2008</title><content type='html'>Last night, I came back from Sofia where I had spent the day participating in one of the largest developer conferences on the Balkans - DevReach 2008. Unfortunately, university issues made me stay only a few hours, and the leave for Blagoevgrad again. The sessions I attended were good, though. I got introduced to the functionality of the Windows Workflow Foundation (or WF). At the beginning, the idea seemed to me quite inapplicable to the daily routines of anything but a large company, yet an idea just popped into my mind that might prove this wrong. &lt;br /&gt;&lt;br /&gt;The Workflow concept is intended to allow people with business logic and developers to collaborate in a way that each one does what he/she is best at. The process analyst constructs a business process using a diagramatic tool included in Visual Studio 2008. Despite presented visually in front of the eyes of the analyst, every diagram is actually XAML code. Every step in the process presents a hook where XAML code binds with the core C# or VB code written by the developer.&lt;br /&gt;&lt;br /&gt;Anyaway, the most interesting lecture I attended was preseneted by &lt;a href="http://www.linkedin.com/in/linotadros"&gt;Lino Tadros&lt;/a&gt;, CEO of Falafel Software, Inc. He talked about many of the misconceptions about using AJAX in ASP.NET applications, and how if improperly done, an application using AJAX might actually run slower than one that uses pure ASP.NET. Mr. Tadros showed many examples of proper uses of AJAX and numerous times emphasized on the phrase "proper optimization". A truly amazing lecture.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-6446335204688846214?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/6446335204688846214/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=6446335204688846214' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/6446335204688846214'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/6446335204688846214'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2008/10/attended-devreach-2008.html' title='Attended DevReach 2008'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-6806021370270765344</id><published>2008-09-28T11:00:00.000-07:00</published><updated>2008-09-29T16:52:21.296-07:00</updated><title type='text'>A good Flex tutorial to start with</title><content type='html'>Even though I am hevily concentrated in using Flex as a development platform , I am still relatively new to all the opportunities that Flex could provide to a developer, or as in my case a lazy information architect. Moreover, I am always willing to share a good beginner's tutorial, and thus attract the attention of more enthusiasts That's why, I was curious when I approached a &lt;a href="http://www.theflexgroup.org/downloads/Your%20First%20Flex%20Application.ppt"&gt;presentation &lt;/a&gt;done by the Michigan Flex User's Group, called unambiguosly "Your first Flex Application". The tutorial, even though targeted at Flex 2, describes nothing that you cannot do in Flex 3. Basically, I might say that it gives an example of the 20% of Flex related stuff, that a developer will deal with 80% of the time (&lt;a href="http://en.wikipedia.org/wiki/80-20_rule"&gt;the 80-20 rule&lt;/a&gt;), namely:  &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. Flex Builder (perfect for project management/ has integrated code completion/ based on Eclipse)&lt;/div&gt;&lt;div&gt;2. MXML &lt;/div&gt;&lt;div&gt;3. including ActionScript 3 code into MXML &lt;/div&gt;&lt;div&gt;4. Data-binding in MXML&lt;/div&gt;&lt;div&gt;4. using MXML and ActionScript 3 to connect to a remote web service (Cold Fusion in this case), and extracting data based on specific requests.&lt;/div&gt;&lt;div&gt;5. using data-driven Flex components such as Tree and GridView to display the extracted data in an understandable format. &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-6806021370270765344?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/6806021370270765344/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=6806021370270765344' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/6806021370270765344'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/6806021370270765344'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2008/09/good-flex-tutorial-to-start-with.html' title='A good Flex tutorial to start with'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-6131939862998660844</id><published>2008-09-26T02:38:00.000-07:00</published><updated>2011-06-04T02:48:43.188-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='cli'/><category scheme='http://www.blogger.com/atom/ns#' term='tip'/><category scheme='http://www.blogger.com/atom/ns#' term='command'/><title type='text'>Linux Newbie Tip: Starting GUI apps from the command line</title><content type='html'>Under the Linux command line shell,  I want to be able to start GUI applications, without keeping the console window dependent on the application. If I simply type the application name, and press Enter, the application will run, but the console window will be unusable until I close the app. Moreover, if I close the console window, the GUI app dies with it.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The solution is to start the application as a &lt;a href="http://en.wikipedia.org/wiki/Background_process"&gt;background process&lt;/a&gt;. This is simply done by putting an ampersand ("&amp;amp;") after the command name like that:&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;blockquote&gt;&lt;/blockquote&gt;nautilus &amp;amp; &lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;emacs &amp;amp; &lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;xmms &amp;amp; &lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;/i&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7265960447928148132-6131939862998660844?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/6131939862998660844/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=6131939862998660844' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/6131939862998660844'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/6131939862998660844'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2008/09/linux-newbie-tip-starting-gui-apps-from.html' title='Linux Newbie Tip: Starting GUI apps from the command line'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7265960447928148132.post-6495982538933308075</id><published>2008-09-24T08:10:00.000-07:00</published><updated>2008-10-14T14:01:50.677-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='general'/><title type='text'>Welcome back...</title><content type='html'>That's it. This is officially my new home. After trying different blogging systems, I came to the conclusion that Blogger is the best place to store my rambling thoughts. So, here I am, ready to write about anything that deserves to be written about. After I quit writing in my old blog, I fell in love with Adobe Flex and .NET, so in this one I am mostly planning to explain development topics in an easier to grasp (lame, if you like) way. Of course, I will not confine my rambling thoughts only about Flex, .NET, or even about software development, in general. What I will not do in this blog is fill it with photos, quotes, or links that out of nothing happen to be interesting to me. For that purpose, I have my Tumblr log ( http://preslav.tumblr.com ), and everything that is not worth writing a whole post about will be put there. So, check it out, too.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&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/7265960447928148132-6495982538933308075?l=preslavrachev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://preslavrachev.blogspot.com/feeds/6495982538933308075/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7265960447928148132&amp;postID=6495982538933308075' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/6495982538933308075'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7265960447928148132/posts/default/6495982538933308075'/><link rel='alternate' type='text/html' href='http://preslavrachev.blogspot.com/2008/09/welcome-back.html' title='Welcome back...'/><author><name>RachevP</name><uri>http://www.blogger.com/profile/00743903819917476308</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry></feed>
