<?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>Web Development 2.0: Web Design, CakePHP, Javascript &#187; Linux</title>
	<atom:link href="http://www.webdevelopment2.com/category/linux/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.webdevelopment2.com</link>
	<description>Quick and Dirty Web Development for Web 2.0: CakePHP, Prototype, JQuery, and lots more.</description>
	<lastBuildDate>Sat, 23 Apr 2011 15:21:02 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Gitting Started with Git &#8211; Quick and Dirty</title>
		<link>http://www.webdevelopment2.com/gitting-started-git/</link>
		<comments>http://www.webdevelopment2.com/gitting-started-git/#comments</comments>
		<pubDate>Sat, 09 May 2009 09:12:27 +0000</pubDate>
		<dc:creator>Kevin Lloyd</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://www.webdevelopment2.com/?p=473</guid>
		<description><![CDATA[I&#8217;m sure you guys have heard about Git. It&#8217;s been making a lot of waves lately. It seems that I&#8217;m always the last to jump on the bandwagon when it comes to things like that, but I&#8217;m finally here. Introduction There are tons of Version Control Systems (VCS) out there: Source Safe (Microsoft&#8217;s Baby, which [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.webdevelopment2.com/wp-content/uploads/git-trunk.jpg" alt="Git Trunk" title="git-trunk" width="400" height="332" class="size-full wp-image-481" /><br />
I&#8217;m sure you guys have heard about <a href="http://en.wikipedia.org/wiki/Git_(software)">Git</a>. It&#8217;s been making a lot of waves lately. It seems that I&#8217;m always the last to jump on the bandwagon when it comes to things like that, but I&#8217;m finally here.</p>
<h2>Introduction</h2>
<p>There are tons of Version Control Systems (VCS) out there: Source Safe (Microsoft&#8217;s Baby, which sucks by the way), CVS, and SVN. Git is different from those in one major way: It&#8217;s a distributed system as opposed to a centralized one. That means, there is no central repository that users check out revisions from. There <em>can be</em> a central one, but it&#8217;s not a requirement. Every use has a complete copy of the entire repository on his system at any one time.</p>
<p>I&#8217;m only (intimately) familiar with SVN. So you can read more on the differences between <a href="http://git.or.cz/gitwiki/GitSvnComparsion">Git and SVN</a>. They range from faster processing, due to the fact that everything is local; to reduced disk space usage by Git.</p>
<p>Personally, Git is a great choice for my type of work. Sometimes, I just want to have Version Control in one directory for one project. I don&#8217;t want to get messy with all the central repositories and servers and everything like that. Also, if you travel, you just slap that entire folder on a USB drive and take it to any other computer and continue working. If that computer has Git installed, you can perform your commits or you can wait to commit when you reach home.</p>
<h2>Let&#8217;s Get Started &#8211; Installation and Setup</h2>
<p>First off, let me apologize to the Linux users. I found one simple <a href="https://wiki.ubuntu.com/KernelTeam/KernelGitGuide">git tutorial for Ubuntu</a>. Everything else pointed to building from source. I guess that&#8217;s not that hard.</p>
<p>Windows and OS X users are in luck. There are prepackaged installers for both systems.</p>
<p>For Windows, download the <a href="http://code.google.com/p/msysgit/">msysgit package</a> and you&#8217;re ready to go. If you think you need more of a UI you can get <a href="http://code.google.com/p/tortoisegit/">TortoiseGit</a>, which is a shell extension for Windows Explorer. One plus I&#8217;ve noticed with this tool is that it has a great diff viewer. Be advised: I&#8217;ve been warned that git is slower on a Windows system, so you might want to avoid Windows for those huge projects.</p>
<p>OS X users also have a great option: <a href="http://code.google.com/p/git-osx-installer/">OS X Git Installer</a>. Or you can build from source like the other Linux users.</p>
<p>There&#8217;s not much to set up after that. Most of the Git usage is from the command line, so there&#8217;s no <em>need</em> for any other fancy tools.</p>
<p>Now, there are a ton of <a href="http://github.com/guides/git-cheat-sheet">tutorials</a> out there on how to get started, so I&#8217;m not going to bore you with that, but I will highlight some of the things I&#8217;ve found.</p>
<h2>Hosting Remote Repositories</h2>
<p>One of the great advantages I&#8217;ve found with Git is that it doesn&#8217;t need a central or remote repository. That&#8217;s great if you don&#8217;t need to work offline. However, that&#8217;s not to say it <em>can&#8217;t</em> have one.</p>
<p>I&#8217;m sure everyone has heard of <a href="http://github.com">GitHub</a>. This is, by far, the major Git hosting service. But, there are limitations (of course). Their free plan doesn&#8217;t allow private projects and it&#8217;s limited to 300 MB in size. There are some other places where you can host Git projects, however if you already pay for a web hosting service you may have all you need.</p>
<p>The only requirement is that the service allows SSH shell access. After that, you&#8217;re good to go. There&#8217;s a lovely tutorial on how to <a href="http://project-tigershark.com/people/rob/blog/2009/04/08/git-on-a-shared-host-10-minute-install-guide/">install git on a shared host</a>. Even if you don&#8217;t want to read the tutorial, you can just copy and paste the commands.</p>
<p>Currently, I&#8217;m on <a href="http://www.webdevelopment2.com/go/hostmonster/"  class="alinks_links" onclick="return alinks_click(this);" title="Hostmonster"  style="padding-right: 13px; background: url(http://www.webdevelopment2.com/wp-content/plugins/alinks/images/external.png) center right no-repeat;" rel="external">HostMonster</a>&#8216;s hosting service for $8/month. So tacking Git onto that already existing host just made sense.</p>
<h2>Git Work Flow (And Modification) I&#8217;ve Adopted</h2>
<p>Some time ago, I stumbled across this article on <a href="http://joemaller.com/2008/11/25/a-web-focused-git-workflow/">web based work flow for Git</a>.</p>
<blockquote><p>
The key idea in this system is that the web site exists on the server as a pair of repositories; a bare repository alongside a conventional repository containing the live site. Two simple Git hooks link the pair, automatically pushing and pulling changes between them. </p></blockquote>
<p>It&#8217;s actually a great idea. You have one central repository or hub and one &#8220;live&#8221; site. The hub has is a <em>bare</em> repository; it has no workspace and you can&#8217;t checkout any files. The prime, however, has it&#8217;s own work space, which hosts your live site.</p>
<p>When you push into the hub the hooks (set article for setup) automatically push those changes over to the prime or live repository. Likewise, the prime has hooks that function when a commit is done: they push changes back to the hub. So ideally, all your major development would be pushed to the hub which, in turn, pushes those changes to the live site. Now if you make a one off change to the live site (who says that never happens) you can hit commit and it will push those changes back to your hub.</p>
<p>I don&#8217;t need that level of automation for what I&#8217;m doing. So, I do have a central repository, however, I push to my live site directly. I have a branch in my project called <em>live</em> when I merge or rebase stuff from <em>master</em> into. I think push this branch to the live site. My live site has a hook that does a simple <code>git reset --HARD</code> in the working directory to update everything.</p>
<p>That&#8217;s all I got for now.</p>
Similar Posts:<ul><li><a href="http://www.webdevelopment2.com/installing-a-lamp-web-server-system-with-fedora-core-6/" rel="bookmark" title="October 31, 2006">Installing A LAMP Web Server System With Fedora Core 6</a></li>

<li><a href="http://www.webdevelopment2.com/automate-database-backup-webcron-cron-jobs-problem/" rel="bookmark" title="October 13, 2007">Automate MySQL Database Backup With WebCron &#8211; No Cron Jobs? No Problem &#8211; Part 1</a></li>

<li><a href="http://www.webdevelopment2.com/should-a-business-use-free-web-hosting/" rel="bookmark" title="November 3, 2006">Should A Business Use Free Web Hosting?</a></li>

<li><a href="http://www.webdevelopment2.com/insanegb-review-free-web-server-5gb-disk-space-20gb-bandwidth/" rel="bookmark" title="January 2, 2008">InsaneGB Review &#8211; Free Web Server 5GB Disk Space, 20GB Bandwidth</a></li>

<li><a href="http://www.webdevelopment2.com/finally-moved-dreamhost-quality-web-hosting/" rel="bookmark" title="October 4, 2007">Finally We&#8217;ve Moved To DreamHost &#8211; Quality Web Hosting</a></li>
</ul><!-- Similar Posts took 4.835 ms -->]]></content:encoded>
			<wfw:commentRss>http://www.webdevelopment2.com/gitting-started-git/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>A Bit On Open Source And Some Baz Background</title>
		<link>http://www.webdevelopment2.com/bit-open-source-baz-background/</link>
		<comments>http://www.webdevelopment2.com/bit-open-source-baz-background/#comments</comments>
		<pubDate>Wed, 12 Nov 2008 13:03:17 +0000</pubDate>
		<dc:creator>Kevin Lloyd</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[free]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[MySQL]]></category>

		<guid isPermaLink="false">http://www.webdevelopment2.com/?p=356</guid>
		<description><![CDATA[This has always been a touchy subject, especially in larger computer firms. But first, let me tell you how I got into Open Source. I started coding in Turbo Pascal 7.0, in about 1996 when I was in Grammar School. I took Turbo Pascal more as an introduction to Programming, instead of a product to [...]]]></description>
			<content:encoded><![CDATA[<p>This has always been a touchy subject, especially in larger computer firms. But first, let me tell you how I got into <a href="http://en.wikipedia.org/wiki/Open_source">Open Source</a>. I started coding in Turbo Pascal 7.0, in about 1996 when I was in Grammar School. I took Turbo Pascal more as an introduction to Programming, instead of a product to do something constructive in.</p>
<p>After Pascal, I was looking into something visual. Hence, I fell into Visual Basic 5.0. Yeah, I know, I&#8217;m sorry.</p>
<h3>Legal Issues</h3>
<p>Now this was my first step towards the open source community. I must admit, that I downloaded a pirated copy and ran with it for a while. Now, that was all well and good when I was sitting home playing around with stuff. But when it came to actually, to producing something for a market, you can&#8217;t (or should I say, shouldn&#8217;t) do that with pirated software.</p>
<p>After that, I got into web development. For this, there was a plethora of free tools available, for use. So I did that for a while. When I got back to college, I got into C++ (using Visual Studio, but still essentially free). That was a step in the right direction. However, as the semesters went on, we got more into using the .NET library. However, for my web development I never got into ASP.</p>
<h3>The First Real Plunge into Open Source &#8211; Enter PHP</h3>
<p>Bit by bit, web development gave way to web programming. This is where PHP came in. I got more familiar with PHP when I started working on different projects for clients. I chose PHP for a few main reasons:</p>
<ol>
<li><strong>Free Documentation:</strong> I could learn almost everything I needed through online documentation.</li>
<li><strong>Cost:</strong> My first problem was hosting. ASP hosts used to be almost twice as expensive as their Linux counterparts.</li>
</ol>
<h3>The Open Source Misconception</h3>
<p>One of the problems that people have with Open Source is that they think that it&#8217;s unsupported. People seem to think that open source software is written by a bunch of kids in basements or something. This is not the case, by any means.  For example, a lot of the Linux distributions are totally free and totally supported.  Wake up people; free doesn&#8217;t mean unsupported. The whole <em>&#8220;You get what you pay for&#8221;</em> isn&#8217;t always true.</p>
<h4>Why I Use Open Source Software</h4>
<p>For my personal web development, I run a very small team and we do work part time. This is no time to shell out $6,000 for a standard license of SQL Server 2005. MySQL server 5.0 is a very robust database server. It should be able to handle itself in a lot of the situations that people think they need to throw SQL Server at. Where, MySQL fails to deliver, PostgreSQL should be more than sufficient.</p>
<p>Open source software and products just make life easier. Take examples like, <a href="http://jquery.com/">jQuery</a> and <a href="http://www.cakephp.org/">CakePHP</a>. Would it be possible for an in-house team to come up with the same thing? Yes, sure? But why? Especially when a team (not just one guy) has put years into one special product. The price of the software does not dictate it&#8217;s quality.</p>
<h3>What Not To Do</h3>
<p>Now, one word of wisdom: All open source software isn&#8217;t the same. You need to do your research before diving into open source. Look up research about the product&#8217;s history, community support, and most importantly the support. If you run a very small shop, then almost anything will work for you; especially since you&#8217;re main goal would be to keep costs down.</p>
<p>However, a large company should not thumb their nose at open source software either. Unless you have a team dedicated to doing one task, and doing it well, why not utilise a tried and true method? Why do we always feel the need to reinvent the wheel? Seriously, your team may be extremely skilled, but can you guys really crank out a better Javascript Framework than <a href="http://www.JQuery.com"  class="alinks_links" onclick="return alinks_click(this);" title=""  style="padding-right: 13px; background: url(http://www.webdevelopment2.com/wp-content/plugins/alinks/images/external.png) center right no-repeat;" rel="external">jQuery</a>? I doubt it.</p>
<p>Take a hint from one of the largest; Microsoft has recenlty started <a href="http://weblogs.asp.net/scottgu/archive/2008/09/28/jquery-and-microsoft.aspx">shipping jQuery</a> with their .NET 3.5 framework. They even have intellisense support for it in Visual Studio. Open source is the way of the future, as long as we learn to use it correctly.</p>
Similar Posts:<ul><li><a href="http://www.webdevelopment2.com/give-15-minutes-jquery-expert/" rel="bookmark" title="September 18, 2007">Give Me 15 Minutes and I&#8217;ll Make You A jQuery Expert</a></li>

<li><a href="http://www.webdevelopment2.com/nail-in-the-coffin-mamboservercom-hacked/" rel="bookmark" title="November 22, 2005">Nail in The Coffin &#8211; Mamboserver.com Hacked</a></li>

<li><a href="http://www.webdevelopment2.com/qa-with-joomla-development-leader/" rel="bookmark" title="November 1, 2005">Q&#038;A With Joomla Development Leader</a></li>

<li><a href="http://www.webdevelopment2.com/cakephp-ruby-rails-bias/" rel="bookmark" title="November 5, 2007">CakePHP vs. Ruby On Rails &#8211; A Very Bias Look at Why I Choose CakePHP</a></li>

<li><a href="http://www.webdevelopment2.com/new-domain-webdevelopment2com-new-focus-frameworks-cakephp-javascript-web-20/" rel="bookmark" title="August 22, 2007">New Domain: WebDevelopment2.com, New Focus: Frameworks, CakePHP, Javascript, Web 2.0</a></li>
</ul><!-- Similar Posts took 4.092 ms -->]]></content:encoded>
			<wfw:commentRss>http://www.webdevelopment2.com/bit-open-source-baz-background/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installing A LAMP Web Server System With Fedora Core 6</title>
		<link>http://www.webdevelopment2.com/installing-a-lamp-web-server-system-with-fedora-core-6/</link>
		<comments>http://www.webdevelopment2.com/installing-a-lamp-web-server-system-with-fedora-core-6/#comments</comments>
		<pubDate>Tue, 31 Oct 2006 18:59:23 +0000</pubDate>
		<dc:creator>Kevin Lloyd</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.webdevelopment2.com/2006/10/31/installing-a-lamp-web-server-system-with-fedora-core-6.htm</guid>
		<description><![CDATA[LAMP &#8211; Linux, Apache, MySQL, and PHP. These are the elements you will need to start a very robust and reliable web server from the ground up. HowToForge has a brilliant tutorial on how to start everything. Now take note, this is a VERY detailed tutorial. You can&#8217;t really go wrong with this tutorial. We [...]]]></description>
			<content:encoded><![CDATA[<p>LAMP &#8211; Linux, Apache, MySQL, and PHP. These are the elements you will need to start a very robust and reliable web server from the ground up.  <a href="http://www.howtoforge.com/installing_a_lamp_system_with_fedora_core_6">HowToForge</a> has a brilliant tutorial on how to start everything. Now take note, this is a VERY detailed <a href="http://www.howtoforge.com/installing_a_lamp_system_with_fedora_core_6">tutorial</a>. You can&#8217;t really go wrong with this tutorial. We got step by step instructions, we go screen shots, we got it all.</p>
<p>The Linux platform used is Fedora Core 6. Some may claim that other distributions are better, they are more user friendly, etc. etc. And they would be right, however, In my opinion, as a production environment, you can&#8217;t beat Fedora Core 6. It is very stable and reliable and perfect for a stand alone web server. There are even instructions at the end to install a free web hosting control panel if you decide to resell hosting services.</p>
<p>They start out with downloading Fedora:</p>
<blockquote><p>To install such a system you will need the following:</p>
<ul>
<li>Download the Fedora Core 6 DVD iso image or the 5 CD iso images from a mirror near you (the list of mirrors can be found here: <a target="_blank" href="http://fedora.redhat.com/download/mirrors.html">http://fedora.redhat.com/download/mirrors.html</a>), e.g. <a target="_blank" href="ftp://ftp.tu-chemnitz.de/pub/linux/fedora-core/6/i386/iso/FC-6-i386-DVD.iso">ftp://ftp.tu-chemnitz.de/pub/linux/fedora-core/6/i386/iso/FC-6-i386-DVD.iso</a></li>
<li>an internet connection&#8230;</li>
</ul>
</blockquote>
<p>Then the installation process complete with a LOT of screen shots and detailed instructions of even how to set up IP addresses, firewalls, hosts, etc.</p>
<p>Then we install the components, MySQL 5.0, Postfix With SMTP-AUTH And TLS,  Maildir, Apache2 With PHP5, ProFTPd, Webalizer, Perl Module, etc.</p>
<p>Whoa. You still with me? OK. In between all these installations there are details on the best configuration most of these components if they are not configured properly out of the box.</p>
<p>I ran through it (minus the Fedora Installation &#8211; which takes a while, trust me) and it took about an hour and a half.</p>
<p>This tutorial is incredible. I&#8217;ve never seen anyone go into such detail, except of course when we look up these instructions as seperate entities. The tutorial is detailed and easy to follow.</p>
<p>The good thing about this system is that you won&#8217;t need to touch it except to updates, which are just as easy as Windows updates. If you&#8217;re going to have a dedicated web server, I highly recommend taking a good hard look at this <a href="http://www.howtoforge.com/installing_a_lamp_system_with_fedora_core_6">tutorial</a>.</p>
Similar Posts:<ul><li><a href="http://www.webdevelopment2.com/fast-cgi-installation/" rel="bookmark" title="November 18, 2005">Fast CGI Installation</a></li>

<li><a href="http://www.webdevelopment2.com/gitting-started-git/" rel="bookmark" title="May 9, 2009">Gitting Started with Git &#8211; Quick and Dirty</a></li>

<li><a href="http://www.webdevelopment2.com/ajax-client-engine-ace-problems/" rel="bookmark" title="December 12, 2005">AJAX Client Engine (ACE) &#8211; Problems</a></li>

<li><a href="http://www.webdevelopment2.com/give-15-minutes-jquery-expert/" rel="bookmark" title="September 18, 2007">Give Me 15 Minutes and I&#8217;ll Make You A jQuery Expert</a></li>

<li><a href="http://www.webdevelopment2.com/start-the-year-off-right-developing-web-applications-with-ajax/" rel="bookmark" title="January 1, 2007">Start The Year Off Right &#8211; Developing Web Applications with AJAX</a></li>
</ul><!-- Similar Posts took 4.113 ms -->]]></content:encoded>
			<wfw:commentRss>http://www.webdevelopment2.com/installing-a-lamp-web-server-system-with-fedora-core-6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

