<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Dobrisa Curkovic</title>
	<atom:link href="http://dobrisa.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://dobrisa.com</link>
	<description></description>
	<lastBuildDate>Sun, 04 Mar 2012 03:07:54 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>Simple PHP code for Scraping Google &#8211; 2012</title>
		<link>http://dobrisa.com/blog/seo/simple-php-code-for-scraping-google-2012/</link>
		<comments>http://dobrisa.com/blog/seo/simple-php-code-for-scraping-google-2012/#comments</comments>
		<pubDate>Mon, 13 Feb 2012 08:40:01 +0000</pubDate>
		<dc:creator>Dobrisa Curkovic</dc:creator>
				<category><![CDATA[SEO]]></category>

		<guid isPermaLink="false">http://dobrisa.com/?p=330</guid>
		<description><![CDATA[Recently Google changed  HTML output of the SERP pages, so the Google scrapers that worked up to couple of days ago will not work any more. This is my first version of the SERP Scraper that works (in this point) with a new HTML structure of the SERP pages. It is a decent solution if you need to monitor your ...]]></description>
				<content:encoded><![CDATA[<p>Recently Google changed  HTML output of the SERP pages, so the Google scrapers that worked up to couple of days ago will not work any more. This is my first version of the SERP Scraper that works (in this point) with a new HTML structure of the SERP pages. It is a decent solution if you need to monitor your google placement for give keywords, and a placement of your competitors. With little bit of work  results can be stored in database on daily bases, and with simple reporting you can have your own, ranking monitor, one of the most important SEO tools.<br />
Note: Google don&#8217;t like scrappers and when they detect you you will get penalize first temporary, your IP will be blocked for short period of time, and if you continue to scrape, your IP will be blocked for longer period of time or permanently.</p>
<p></p><pre class="crayon-plain-tag">&lt;?PHP

if ($_GET['url']) { $url = $_GET['url']; }
else $url = &quot;aromawebdesign.com&quot;;

if ($_GET['keywords']) { $keywords = $_GET['keywords']; }
else $keywords = &quot;vancouver web design&quot;;

if ($_GET['limit']) { $limit = $_GET['limit']; }
else $limit = &quot;200&quot;;

google_rank($url, $keywords, $limit);

function get_content($url)
{
$ch = curl_init();

curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_HEADER, 0);

ob_start();

curl_exec ($ch);
curl_close ($ch);
$string = ob_get_contents();

ob_end_clean();

return $string;
}

function google_rank($url,$keywords,$limit)
{
$keywstring = str_replace(&quot; &quot;, &quot;+&quot;, $keywords);
$pages = ceil($limit/100);
$content = &quot;&quot;;

for($n=1;$n{
if($n) $start=$n*100-100;

$gurl=&quot;http://www.google.ca/search?as_q=$keywstring&amp;amp;hl=en&amp;amp;client=firefox-a&amp;amp;channel=s&amp;amp;rls=org.mozilla%3Aen-US%3Aofficial&amp;amp;num=100&amp;amp;start=$start&amp;amp;btnG=Google+Search&amp;amp;as_epq=&amp;amp;as_oq=&amp;amp;as_eq=&amp;amp;lr=&amp;amp;as_ft=i&amp;amp;as_filetype=&amp;amp;as_qdr=all&amp;amp;as_occt=any&amp;amp;as_dt=i&amp;amp;as_sitesearch=&amp;amp;as_rights=&amp;amp;safe=images&quot;;

$content .= get_content ($gurl);
}

$titre = preg_match_all(&quot;/&lt;cite&gt;(.*?)/&quot;,$content,$res);
$replace = array(&quot;&lt;strong&gt;&quot;,&quot;&lt;/strong&gt;&quot;,&quot;www.&quot;);
$n = 0;
$pos = 0;&lt;/cite&gt;

$res[1] = array_slice($res[1],3); //remove google adds

ob_start();

foreach ($res[1] as $result)
{
$n++;

$result = str_replace($replace,&quot;&quot;,$result);
if (substr($result, -1, 1)==&quot;/&quot;) $result = substr($result, 0, strlen($result)-1);

if ($result==$url)
{
$result = &quot;&lt;strong&gt;&quot;.$result.&quot;&lt;/strong&gt;\n&quot;;
$pos = $n;
}

echo $n.' '.$result.&quot;&quot;;
$out = ob_get_contents();

if ($n==$limit) break;
}

ob_end_clean();

echo &quot;I found &lt;strong&gt;$url&lt;/strong&gt; on position &lt;strong&gt;$pos&lt;/strong&gt; for keyword(s): &lt;strong&gt;$keywords.&lt;/strong&gt; in first &lt;strong&gt;$limit&lt;/strong&gt; results:

&quot;;
echo $out;

}
?&gt;</pre><p></p>
<p>About the Author:<br />
This article is written by Dobrisa Curkovic, Senior Web Developer in <a href="http://aromawebdesign.com">Aroma Web Design</a>, a <a href="http://aromawebdesign.com">Web Design</a> Company from Vancouver, BC.</p>
]]></content:encoded>
			<wfw:commentRss>http://dobrisa.com/blog/seo/simple-php-code-for-scraping-google-2012/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Web Development: Freelancer vs Company</title>
		<link>http://dobrisa.com/blog/web-development/web-development-freelancer-vs-company/</link>
		<comments>http://dobrisa.com/blog/web-development/web-development-freelancer-vs-company/#comments</comments>
		<pubDate>Tue, 17 Jan 2012 03:07:15 +0000</pubDate>
		<dc:creator>Dobrisa Curkovic</dc:creator>
				<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://dobrisa.com/?p=192</guid>
		<description><![CDATA[Web Development is very generalized term for work that covers everything from writing couple of lines of HTML to building large scale web applications. This mean that hiring a web developer could be a risky business. If you hire the wrong person, it’s the same as hiring someone who can build a bird house, to build your new home for ...]]></description>
				<content:encoded><![CDATA[<p>Web Development is very generalized term for work that covers everything from writing couple of lines of HTML to building large scale web applications. This mean that hiring a web developer could be a risky business. If you hire the wrong person, it’s the same as hiring someone who can build a bird house, to build your new home for instance. So how do you figure out the difference, and how do you hire the web developer that is right for the job? The short answer is: not that easily! The first step would be decide if you want to hire a company or a freelance web developer.</p>
<p>Here’s a few differences in the process:</p>
<p><strong>The Quotation Process</strong></p>
<p>If you go with a company, the first person you will talk to will be a sales person. In my personal experience sales people have some basic concepts what their web developer can or can not do, for everything else they will have to get back to you. The reason you’ll start by talking to a salesperson rather than a developer, is because companies filter out “unsuitable” or “unqualified” inquiries by talking to a team member with a lower wage. As you answer questions and the company sees that your goals and budget are in line, and your technical requirements match what they can provide, you will make your way up to the web developer. This can be a time consuming process that protects the highest paid people in the company from wasting their time on projects that are not a good fit. If you’re well prepared and eager to talk about your new project, this process can be frustrating.</p>
<p>On the other hand, you might find dealing with a freelancer more satisfactory; you’ll talk to the person who would actually build your system, delivering instant gratification.</p>
<p><strong>The Development Team</strong></p>
<p>Lets say that you found good Web Development company, and you are happy with their sales pitch, you will, from the first call to the signed contract, talk to probably 3 to 5 different people, sometimes even with couple of people in the same time, and guess what, all those billable hours will be collected from your contract. So larger company means higher hourly rate, because they have to pay more people. As you can imagine, the bigger the company it is, bigger their development team is. They are not self delegated individuals, they have Lead Developers and Project Managers to do that for them. The Lead Developer is the one who knows whole project inside out, he is the one who will figure out how to solve certain technical issues, if there is one to solve, and he also delegates work to other developers, according to his or hers evaluation of other developers skill-set. The Lead Developer is best paid member of the team, and if development team is big enough, often he or she does not write code at all.<br />
The Project Manager in the other hand, makes sure that project is on the time that clients questions are answered, acting in that meter as a interface between world and web developers.</p>
<p><strong>Administrative Overhead</strong></p>
<p>It is not only hourly rate that is responsible for higher costs, it is number of hours itself. In average we’re talking about 30% or more in overhead. Take communication among various members of the team for instance, Project Manager will want to talk to you, maybe even get back to you, than he or she will have to talk to Lead Web Developer and maybe even Web Designer, and than they will have to coordinate their work and get back to you with additional questions Web Developer might have. All of that doesn&#8217;t sounds that bad, but 15 minutes chat with you, will easily become an hour or more of communication time on your invoice. Long story short, the smaller company it is, less overhead you have to pay and less time you have to wait to get your answer.</p>
<p><strong>Freelance vs Company Delivery Time &amp; Billable Time</strong></p>
<p>Lets go back to look at a Freelancer doing the same job. He or she will be doing the entire job himself or herself, so although a freelancer with exactly the same skill as the company development team, may bill less hours on your invoice, they will not finish your job faster in calendar days, as there’s only one person doing everything. Man hours is estimation of the total amount of uninterrupted labor required to perform a task. So with larger company you will probably get the man hours of your project wrapped up faster as there’s more people to do the work, but it will be more expensive as there’s more overhead to running the project in a team.</p>
<p>How much faster could the company be? Well, this depends of the size of the project, and the size of web development team. For smaller projects under $5000 for instance, a larger team could for instance perform the work more slowly than a freelancer, by the time work is delegated checked out by Lead Developer and tested out by someone else, and then delegated back for debugging, all that communication will give billable time overhead to the project. It’s in larger projects that a company with a big team can usually deliver faster than a freelancer.</p>
<p><strong>So Where’s the Efficiency Border?</strong></p>
<p>Now days with new rapid development tools and various frameworks that will do a lot of the “grunt work” for the developer, an experienced freelancer can comfortably deal with $30,000 projects in about month and half to two months. In theory, a medium to large web development company with a dedicated well organized team of 3 web developers, could finish same project, about 2x times faster.</p>
<p><strong>The Delivery Curve</strong></p>
<p>In the real life, the larger the development company is, the more client they have, and more overlapping between projects they have, and since it is in client’s nature to add to the project scope at the end, tweaking stuff and squeezing ever last bit of energy they can from their developers, and changing their mind back and forth between choices on any final details. As a result, the last 10% of the project can be long as any previous 30% of the same project. The chances are that developers in larger company would work on more than one project in the same time, which may in the end result lengthen the development time, using up some of the time advantage gained previously over the freelancer.</p>
<p><strong>So in the end, which one is actually faster and cheaper?</strong></p>
<p>The conclusion is, that if you working on a limited budget, and you also happen to prefer a one to one relationship instead a one to many relationship, you will be better off with a experienced freelance web developer for a custom development project up to $30,000, quoted by larger company. On the other hand, if you prefer minimum involvement, you want a one stop solutions for all you website needs including design and marketing and your budget can handle it, you will be better off with a web development company.</p>
<p>Still have questions? Email me&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://dobrisa.com/blog/web-development/web-development-freelancer-vs-company/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>6 Steps of Web Application Development</title>
		<link>http://dobrisa.com/blog/web-development/6-steps-of-web-application-development/</link>
		<comments>http://dobrisa.com/blog/web-development/6-steps-of-web-application-development/#comments</comments>
		<pubDate>Thu, 10 Mar 2011 22:27:24 +0000</pubDate>
		<dc:creator>Dobrisa Curkovic</dc:creator>
				<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://dobrisa.com/?p=236</guid>
		<description><![CDATA[No mater how unique your project is, Web Development process going through well define set of steps and writing the code of your new project is only one of them. First step: Analysis This step starts the moment you start talking to your Web Developer about your new project. In the end of first step both you and your Web ...]]></description>
				<content:encoded><![CDATA[<p>No mater how unique your project is, Web Development  process going through well define set of steps and writing the code of your  new project is only one of them.</p>
<ul>
<li><strong>First step: </strong><strong> Analysis</strong><br />
This  step starts the moment you start talking to your Web Developer about your  new project. In the  end of first step both you and your Web Developer will know you web application requirements, goals, and is ti possible to do it with available resources.<br />
You will  have an idea how much web application development will cost you and how much time  will take to  build your new web application.<br />
Document that will summarize everything discussed in this step is called <strong>Project Charter</strong>.<br />
<strong>Note:</strong> During next two steps; Planing and Development estimated price  and time  to finish your project could change if you change scope or  parameters of the original project analysis. In that case Project Charter will be updated accordingly, and you will be ask to sign off on changes.</li>
<li><strong>Second step:  Planing</strong><br />
Next step would be to figure out how you web application will be build. Ideally during this step, developer will make wire-frame representation of  each screen of your web application with description what each screen or view should  do, we call that storyboard. Often to save money on the smaller projects storyboard is skipped, and project documentation will have only textual descriptions without wire-frame screen mock ups.<br />
In the end of this step you will be provided with <strong>Project Documentation</strong>, that will describe, in reasonable amount of details, how your new web application will work, what will do and what will not do. It will talk about database design, code design, and, as I mentioned before, about front-end design with wire-frame screen mock ups.<br />
<strong>Note:</strong> The better your Project Documentation is the better is chance that project will be finished successfully. So saving money on documentation is risky business.</li>
<li><strong>Third step : Development<br />
</strong>This is the step where Web Developer  finally code your web application. Ideally, During Development  Web Developer writes technical documentation in the form of separate document that will be usable guidelines for developer who would be new to the project. More and more technical documentation is replaced by writing code comets inside code itself to decrease overall costs of the development.<br />
During development Web Developer could call you to ask you additional questions regarding your project. It is impossible for Developer to predict every possible situation in during Analysis and Planing, also good developer knows that project is made to please client not him self or herself.<br />
On the end of this step we should have first version of the you web application up and running on the development server.<br />
Newly written web application  will probably have bugs and errors.</li>
<li><strong>Forth Step: Debugging and Testing </strong><br />
After the coding is done, we have to be sure that code actually works as we would expect to, or in other words we have to make sure that it complies with project documentation. Very often Web Developers provide you with some form of debugging and/or testing report. Depends of complexity and size of your web application debugging and testing can take up to 10% of overall development time.</li>
<li><strong>Fifth Step: Deployment<br />
</strong>After we are sure that code works and it is ready for end users, Web Developer uploads the code to the production server and test it one more time to make sure that production server running code on the same way as development server did, without bugs. In this point your web application is ready for first users.</li>
<li><strong>Six Step: Maintenance<br />
</strong> This step includes everything after the web application is deployed. So everything from staff training, minor changes, content management to security updates and diagnostics in the case of problem. This is also the longest step in web development process, since it is last as long as your web application is running on production server.</li>
</ul>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://dobrisa.com/blog/web-development/6-steps-of-web-application-development/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Content Management System</title>
		<link>http://dobrisa.com/blog/content-management/content-managment-system/</link>
		<comments>http://dobrisa.com/blog/content-management/content-managment-system/#comments</comments>
		<pubDate>Sat, 29 Jan 2011 02:33:46 +0000</pubDate>
		<dc:creator>Dobrisa Curkovic</dc:creator>
				<category><![CDATA[Content Management]]></category>

		<guid isPermaLink="false">http://dobrisa.com/?p=94</guid>
		<description><![CDATA[Expresso CMS is a professional Content Management System made for business owners who need quick and simple means to update their website on a regular basis. After many years been in content management business, we have learned that proper work-flow is key to a successful product, offering users a means to do what they need to to manage their content. ...]]></description>
				<content:encoded><![CDATA[<p>Expresso CMS is a professional Content Management System made for business owners who need quick and simple means to update their website on a regular basis. After many years been in content management business, we have learned that proper work-flow is key to a successful product, offering users a means to do what they need to to manage their content.</p>
<p>Many products with overwhelming amount of features will  tempt you to  do work that you have already paid a designer or web developer to do.  In our experience clients tend to get very unhappy with their websites in those cases when they trying to do something outside of the scope of their specialty.</p>
<p>Many open source products such as Joomla! or Drupal, with large amount of  features right out of the box, make even simple work complicated with a complex work flow, and are often intimidating for the people who just want to manage their website content.</p>
<p>You are probably asking yourself, if open source projects such as Drupal or Joomla cannot offer me simple and stress-free interface, what is the right solution?  From hundreds of open source, main stream, content management systems there must be product that would fit my needs.</p>
<p>At this point you have to face the fact that  open source is not out there just to offer you free stuff, it is a business model as any other. Unfortunately since they trying to appeal to as many groups of users as they can, simple and stress-free becomes crippling in the eyes of  web developers, who need quick and easy way to build complex website, without spending years building their own product from bottom up.</p>
<p>That is reason why, for instance, Drupal are promoting themselves as a Framework as well as content management system. Don&#8217;t get me wrong, I am not saying that Drupal, Joomla! and such are not good products, they are and they do their job very well, just that their purpose is targeted at web developers looking for a shortcut to do development, which means that the interface is not meant to be easy for end users, rather it is complex with tons of options, to give web developers lots of tools to use in their work, leaving you with compromised work flow.</p>
<p>If you find yourself struggling with a complicated content management system, or have a website without any content management system at all, we can help you.  Expresso CMS will allow you to update your website quickly and easily, without the stress of dealing with technical decisions that require a development background to handle well.</p>
<p>To find out more about Expresso CMS, give us a call at 778-999-1401, or <a title="Contact Vancouver Web Developer" href="http://dobrisa.com/contact-me" target="_self">contact us by email</a>.</p>
<p>We look forward to helping you!</p>
]]></content:encoded>
			<wfw:commentRss>http://dobrisa.com/blog/content-management/content-managment-system/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
