<?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/"
	
	xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Tim Steeves - Software, Web, Business, Life &#187; Software Development</title>
	<atom:link href="http://timsteeves.com/category/software-development/feed" rel="self" type="application/rss+xml" />
	<link>http://timsteeves.com</link>
	<description>Software, Web, Business, Life</description>
	<lastBuildDate>Tue, 18 Oct 2011 08:53:46 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Top 11 Open Source Project Managment Tools</title>
		<link>http://timsteeves.com/2010/10/19/top-11-open-source-project-managment-tools</link>
		<comments>http://timsteeves.com/2010/10/19/top-11-open-source-project-managment-tools#comments</comments>
		<pubDate>Wed, 20 Oct 2010 02:43:13 +0000</pubDate>
		<dc:creator>tim</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[Web Application Development]]></category>
		<category><![CDATA[business software]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[project management]]></category>

		<guid isPermaLink="false">http://timsteeves.com/?p=274</guid>
		<description><![CDATA[1: Open Workbench
Open Workbench is an open source desktop application that provides robust project scheduling and management functionality. Already the scheduling standard for more than 100,000 project managers worldwide, Open Workbench is a free and powerful alternative to Microsoft Project.

Download Open Workbench


2: Redmine
Redmine is a flexible project management web application. Written using Ruby on Rails [...]]]></description>
			<content:encoded><![CDATA[<h2><a href="http://timsteeves.com/wp-content/uploads/2010/10/project_management.jpg"><img class="size-thumbnail wp-image-276 alignright" title="project management" src="http://timsteeves.com/wp-content/uploads/2010/10/project_management-150x150.jpg" alt="Open Source Project Managment Software" width="150" height="150" /></a>1: Open Workbench</h2>
<p>Open Workbench is an open source desktop application that provides robust project scheduling and management functionality. Already the scheduling standard for more than 100,000 project managers worldwide, Open Workbench is a free and powerful alternative to Microsoft Project.</p>
<ul style="margin: 0px 0px 1.571em 1.571em; padding: 0px; list-style-type: square; color: #111111; font-family: Arial,'Helvetica Neue',Helvetica,sans-serif; font-size: 14px; line-height: 22px;">
<li style="margin: 0px; padding: 0px;"><a style="margin: 0px; padding: 0px; text-decoration: underline; color: #2361a1;" href="http://www.openworkbench.org/index.php?option=com_docman&amp;Itemid=55" target="_blank">Download Open Workbench<br />
</a></li>
</ul>
<h2>2: Redmine</h2>
<p style="margin: 0px 0px 1.571em; padding: 0px; color: #111111; font-family: Arial,'Helvetica Neue',Helvetica,sans-serif; font-size: 14px; line-height: 22px;">Redmine is a flexible project management web application. Written using Ruby on Rails framework, it is cross-platform and cross-database. It includes calendar and gantt charts to aid visual representation of projects and their deadlines.</p>
<ul style="margin: 0px 0px 1.571em 1.571em; padding: 0px; list-style-type: square; color: #111111; font-family: Arial,'Helvetica Neue',Helvetica,sans-serif; font-size: 14px; line-height: 22px;">
<li style="margin: 0px; padding: 0px;"><a style="margin: 0px; padding: 0px; text-decoration: underline; color: #2361a1;" href="http://www.redmine.org/" target="_blank">Download redmine</a></li>
</ul>
<h2>3: ProjectPier</h2>
<p style="margin: 0px 0px 1.571em; padding: 0px; color: #111111; font-family: Arial,'Helvetica Neue',Helvetica,sans-serif; font-size: 14px; line-height: 22px;">ProjectPier is a Free, Open-Source, self-hosted <a rel="index.php?view=simplylink&amp;catid=5&amp;id=34&amp;option=com_simplylinks" href="http://help.soft30.com/manual/php/index.html">PHP</a> application for managing tasks, projects and teams through an intuitive web interface. ProjectPier will help your organization communicate, collaborate and get things done Its function is similar to commercial groupware/project management products, but allows the freedom and scalability of self-hosting.</p>
<ul style="margin: 0px 0px 1.571em 1.571em; padding: 0px; list-style-type: square; color: #111111; font-family: Arial,'Helvetica Neue',Helvetica,sans-serif; font-size: 14px; line-height: 22px;">
<li style="margin: 0px; padding: 0px;"><a style="margin: 0px; padding: 0px; text-decoration: underline; color: #2361a1;" href="http://www.projectpier.org/" target="_blank">Download ProjectPier</a></li>
</ul>
<h2>4: Codendi</h2>
<p style="margin: 0px 0px 1.571em; padding: 0px; color: #111111; font-family: Arial,'Helvetica Neue',Helvetica,sans-serif; font-size: 14px; line-height: 22px;">Codendi is an open-source collaborative development platform offered by Xerox. From only one interface, it gathers, all the needed tools for software development teams: management and versioning of code, bugs, requirements, documents, reporting, tests etc. It is mainly used for managing software project processes.<a style="margin: 0px; padding: 0px; text-decoration: underline; color: #2361a1;" href="http://www.codendi.com/index_en.php" target="_blank"></a></p>
<p style="margin: 0px 0px 1.571em; padding: 0px; color: #111111; font-family: Arial,'Helvetica Neue',Helvetica,sans-serif; font-size: 14px; line-height: 22px;"><a style="margin: 0px; padding: 0px; text-decoration: underline; color: #2361a1;" href="http://www.codendi.com/index_en.php" target="_blank">Download Codendi</a></p>
<h2>5: Trac</h2>
<p style="margin: 0px 0px 1.571em; padding: 0px; color: #111111; font-family: Arial,'Helvetica Neue',Helvetica,sans-serif; font-size: 14px; line-height: 22px;">Trac is an open source, web-based project management and bug-tracking tool. Trac allows hyperlinking information between a computer bug database, revision control and wiki content. It also serves as a web interface to a version control system like Subversion, Git, Mercurial, Bazaar and Darcs.</p>
<ul style="margin: 0px 0px 1.571em 1.571em; padding: 0px; list-style-type: square; color: #111111; font-family: Arial,'Helvetica Neue',Helvetica,sans-serif; font-size: 14px; line-height: 22px;">
<li style="margin: 0px; padding: 0px;"><a style="margin: 0px; padding: 0px; text-decoration: underline; color: #2361a1;" href="http://trac.edgewall.org/" target="_blank">Download Trac</a></li>
</ul>
<h2>6: Project HQ</h2>
<p style="margin: 0px 0px 1.571em; padding: 0px; color: #111111; font-family: Arial,'Helvetica Neue',Helvetica,sans-serif; font-size: 14px; line-height: 22px;">Project HQ is a collaborative open source project management tool, similar to Basecamp and activeCollab. Project HQ is built on open source technologies like Python, Pylons and SQLAlchemy and is fully database independent. Project HQ uses a structured workflow to assist you in managing your projects.</p>
<ul style="margin: 0px 0px 1.571em 1.571em; padding: 0px; list-style-type: square; color: #111111; font-family: Arial,'Helvetica Neue',Helvetica,sans-serif; font-size: 14px; line-height: 22px;">
<li style="margin: 0px; padding: 0px;"><a style="margin: 0px; padding: 0px; text-decoration: underline; color: #2361a1;" href="http://projecthq.org/" target="_blank">Download Project HQ</a></li>
</ul>
<h2>7: Collabtive</h2>
<p style="margin: 0px 0px 1.571em; padding: 0px; color: #111111; font-family: Arial,'Helvetica Neue',Helvetica,sans-serif; font-size: 14px; line-height: 22px;">Collabtive is a web-based project management software that is being published as Open Source software. The project was started in November 2007. It strives to provide an Open Source alternative to proprietary tools like Basecamp or ActiveCollab.</p>
<ul style="margin: 0px 0px 1.571em 1.571em; padding: 0px; list-style-type: square; color: #111111; font-family: Arial,'Helvetica Neue',Helvetica,sans-serif; font-size: 14px; line-height: 22px;">
<li style="margin: 0px; padding: 0px;"><a style="margin: 0px; padding: 0px; text-decoration: underline; color: #2361a1;" href="http://collabtive.o-dyn.de/" target="_blank">Download Collabtive</a></li>
</ul>
<h2>8: eGroupWare</h2>
<p style="margin: 0px 0px 1.571em; padding: 0px; color: #111111; font-family: Arial,'Helvetica Neue',Helvetica,sans-serif; font-size: 14px; line-height: 22px;">eGroupWare is a free open source groupware software intended for businesses from small to enterprises. Its primary functions allow users to manage contacts, appointments, projects and to-do lists.</p>
<p style="margin: 0px 0px 1.571em; padding: 0px; color: #111111; font-family: Arial,'Helvetica Neue',Helvetica,sans-serif; font-size: 14px; line-height: 22px;">It is used either via its native web-interface, making access platform-independent, or by using different supported groupware clients, such as Kontact, Novell Evolution, or Microsoft Outlook. It can also be used by mobile phone or PDA via SyncML.</p>
<ul style="margin: 0px 0px 1.571em 1.571em; padding: 0px; list-style-type: square; color: #111111; font-family: Arial,'Helvetica Neue',Helvetica,sans-serif; font-size: 14px; line-height: 22px;">
<li style="margin: 0px; padding: 0px;"><a style="margin: 0px; padding: 0px; text-decoration: underline; color: #2361a1;" href="http://www.egroupware.org/Home" target="_blank">Download eGroupWare</a></li>
</ul>
<h2>9: KForge</h2>
<p style="margin: 0px 0px 1.571em; padding: 0px; color: #111111; font-family: Arial,'Helvetica Neue',Helvetica,sans-serif; font-size: 14px; line-height: 22px;">KForge is an open-source (GPL) system for managing software and knowledge projects. It re-uses existing best-of-breed tools such as a versioned storage (subversion), a tracker (trac), and wiki (trac or moinmoin), integrating them with the system’s own facilities (projects, users, permissions etc). KForge also provides a complete web interface for project administration as well a fully-developed plugin system so that new services and features can be easily added.</p>
<ul style="margin: 0px 0px 1.571em 1.571em; padding: 0px; list-style-type: square; color: #111111; font-family: Arial,'Helvetica Neue',Helvetica,sans-serif; font-size: 14px; line-height: 22px;">
<li style="margin: 0px; padding: 0px;"><a style="margin: 0px; padding: 0px; text-decoration: underline; color: #2361a1;" href="http://www.kforgeproject.com/" target="_blank">Download KForge</a></li>
</ul>
<h2>10: OpenGoo</h2>
<p style="margin: 0px 0px 1.571em; padding: 0px; color: #111111; font-family: Arial,'Helvetica Neue',Helvetica,sans-serif; font-size: 14px; line-height: 22px;">It is a complete online solution focused on improving productivity, collaboration, communication and management of your teams. OpenGoo main features include document management, contact management, e-mail, project management, and time management. Text documents and presentations can be created and edited online. Files can be uploaded, organized and shared, independent of file formats.</p>
<ul style="margin: 0px 0px 1.571em 1.571em; padding: 0px; list-style-type: square; color: #111111; font-family: Arial,'Helvetica Neue',Helvetica,sans-serif; font-size: 14px; line-height: 22px;">
<li style="margin: 0px; padding: 0px;"><a style="margin: 0px; padding: 0px; text-decoration: underline; color: #2361a1;" href="http://www.opengoo.org/" target="_blank">Download OpenGoo</a></li>
</ul>
<h2>11: ClockingIT</h2>
<p style="margin: 0px 0px 1.571em; padding: 0px; color: #111111; font-family: Arial,'Helvetica Neue',Helvetica,sans-serif; font-size: 14px; line-height: 22px;">ClockingIT is a free Project Management solution, which helps your team stay focused and on top of things.</p>
<ul style="margin: 0px 0px 1.571em 1.571em; padding: 0px; list-style-type: square; color: #111111; font-family: Arial,'Helvetica Neue',Helvetica,sans-serif; font-size: 14px; line-height: 22px;">
<li style="margin: 0px; padding: 0px;"><a style="margin: 0px; padding: 0px; text-decoration: underline; color: #2361a1;" href="http://wiki.clockingit.com/" target="_blank">Download ClockingIT</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://timsteeves.com/2010/10/19/top-11-open-source-project-managment-tools/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:thumbnail url="http://timsteeves.com/wp-content/uploads/2010/10/project_management-150x150.jpg" />
		<media:content url="http://timsteeves.com/wp-content/uploads/2010/10/project_management.jpg" medium="image">
			<media:title type="html">project management</media:title>
			<media:description type="html">Open Source Project Managment Software</media:description>
			<media:thumbnail url="http://timsteeves.com/wp-content/uploads/2010/10/project_management-150x150.jpg" />
		</media:content>
	</item>
		<item>
		<title>Top 10: Open Source ERP Software</title>
		<link>http://timsteeves.com/2009/12/22/top-10-open-source-erp-software</link>
		<comments>http://timsteeves.com/2009/12/22/top-10-open-source-erp-software#comments</comments>
		<pubDate>Wed, 23 Dec 2009 01:16:27 +0000</pubDate>
		<dc:creator>tim</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[crm]]></category>
		<category><![CDATA[enterprise resource planning]]></category>
		<category><![CDATA[erp]]></category>
		<category><![CDATA[j2EE]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[project management]]></category>

		<guid isPermaLink="false">http://timsteeves.com/?p=195</guid>
		<description><![CDATA[Implementation of ERP solution involves a hefty budget with long time and conscientious efforts for customization. With the recession taking a notch out of many budgets and a often several years of development under their belt,  open source ERP solutions have started to emerge as feasible alternative to the big names with big bank accounts. [...]]]></description>
			<content:encoded><![CDATA[<p>Implementation of ERP solution involves a hefty budget with long time and conscientious efforts for customization. With the recession taking a notch out of many budgets and a often several years of development under their belt,  <strong><strong>open source</strong> ERP</strong> solutions have started to emerge as feasible alternative to the big names with big bank accounts. The key reasons for the diversion includes lower cost, flexibility, large group of users and independence from solution providers. Additionally, companies can easily download the open source ERP solutions and the utilize their budgets to customize them to fit the needs of the company instead of for an off-the-shelf license.</p>
<h2>1. WebERP</h2>
<p><a href="http://www.weberp.org/WeberpFeatures"><img title="weberplogo" src="http://timsteeves.com/wp-content/uploads/2009/12/weberplogo.gif" alt="weberplogo" width="200" height="51" /></a></p>
<p>It is a web based <strong><strong>ERP</strong> system</strong> for small and mid sized Enterprise. The LAMP application has a stable code base and is packed with features suited for distributed businesses in wholesale and distribution. The features sales order, accounts receivable, user defined sales analysis, purchase orders, accounts payable, inventory management, general ledger, manufacturing, multi-language, multi-currency, complex tax system support. It also has multiple inventory locations with serial number and lot tracking facilities as well as full double entry accounting. In addition, it offers sales orders support for assemblies and kit-sets.</p>
<p><span id="more-16199"> </span></p>
<h2>2. Openbravo</h2>
<p><a href="http://www.openbravo.com/product/erp/key-features/"><img class="alignnone size-full wp-image-203" title="openbravo-logo" src="http://timsteeves.com/wp-content/uploads/2009/12/openbravo-logo.gif" alt="openbravo-logo" width="220" height="54" /></a><br />
It&#8217;s one of the best open source ERP software for SMBs. Openbravo is a web-based program that was based on Compiere ERP program. It provides the entire status of a company that includes production information, inventory, customer information, order tracking and workflow information.</p>
<p>Openbravo accompanies wide ranging features that makes it easier to handle for end users. Some of its key features include dimensional reporting, alerts, email, keyboard navigation. It is easily configurable and tailors the existing functionality and business rules and is capable in adding many new functionality without any programming.</p>
<p>The <strong>ERP software</strong> offers better compatibility and sharing, allowing export of single file or a collection of files to Excel, CSV, or PDF directly from the application. Users can easily create third-party modules or plugins or even browser the directory and choose the shared functionality created by other users to install. It allows high scalability enabling deployment in single server or on a cluster of them, serving up to thousands of users. Any record in the system can be easily audited and traced to user who created it.</p>
<h2>3. Compiere</h2>
<p><a href="http://www.compiere.com/"><img title="compiere" src="http://timsteeves.com/wp-content/uploads/2009/12/compiere.png" alt="compiere" width="225" height="47" /></a><br />
Compiere is organized uniquely to avoid the duplication of information and the need for synchronization. With an innovative design Compiere allows easy customization of the application. Modules included in the ERP solution include <span id="IL_AD7">Customer relationship management</span>, Quote to <span id="IL_AD10">Cash</span>, Requisition-to-Pay, Partner Relations Management, Warehouse, <span id="IL_AD1">Supply Chain Management</span>, Performance Analysis, Double-entry Book-keeping, Work-flow-Management and Web Store.</p>
<h2>4. xTuple</h2>
<p><a href="http://www.xtuple.com/postbooks"><img title="xtuple_logo" src="http://timsteeves.com/wp-content/uploads/2009/12/xtuple_logo.jpg" alt="xtuple_logo" width="183" height="61" /></a><br />
The xTuple PostBooks is an integrated ERP, <strong>CRM</strong> and <span id="IL_AD6">accounting</span> system, based on the xTuple ERP Suite.</p>
<p>Modules for <strong>ERP</strong> xTuple</p>
<ul>
<li>Accounting: general ledger, accounts receivable and payable, <span id="IL_AD11">bank</span> reconciliation, financial reporting</li>
<li>Sales: quotes, order entry, sales reporting, shipping</li>
<li>Product Definition: items, infinite-level bills of material (BOM)</li>
<li>CRM: universal address book, incident management, opportunity management, to-do lists, <strong>project management</strong></li>
<li>OpenRPT: open source report writer</li>
<li>Inventory: multiple locations, other advanced warehouse features</li>
<li> Light Manufacturing: work orders, strong support for make to order</li>
<li>Purchasing: purchase orders, receiving, vendor reporting</li>
</ul>
<p>PostBooks is a cross platform application that runs equally well on Windows, Linux and Mac. It is fully internationalized with support for multiple tax structures, multi-currency, multilingual translation packs maintained by xTuple’s global community.</p>
<h2>5.  OpenERP</h2>
<p><a href="http://www.openerp.com/"><img title="openlogo" src="http://timsteeves.com/wp-content/uploads/2009/12/openlogo.jpg" alt="openlogo" width="202" height="61" /></a><br />
This is a complete open source ERP software, designed to address the enterprise needs and processes. OpenERP integrates accounting, hr, sales, crm, purchase, stock, production, services management, <strong>project management</strong>, marketing campaign. It offers separate client and server components and XML-RPC interfaces. Open ERP is complete and modular system with 350 modules. The ERP software has a strong MVC architecture with an object database, a dynamic GUI, distributed server, flexible workflows, and customizable reports. The database is PostgreSQL and the server part is written in Python.</p>
<p>The key features of OpenERP include management accounting, financial accounting, inventory management, sales and purchase management, tasks automation, <span id="IL_AD5">Human Resource Management</span>, marketing campaigns, help desk, and <span id="IL_AD4">point of sale</span>.</p>
<p>Apart Linux, Windows and Mac interfaces, OpenERP has an web interface eTiny that is also available for the Turbogears web framework. OpenERP is widely  used by customers looking to automate their sales processes effectively.</p>
<p><a href="http://www.openerp.com/" target="_blank"><br />
</a></p>
<h2>6. Apache OFBiz</h2>
<p><a href="http://ofbiz.apache.org/"><img title="ofbiz" src="http://timsteeves.com/wp-content/uploads/2009/12/ofbiz.gif" alt="ofbiz" width="409" height="42" /></a><br />
It is an Open Source <strong>Enterprise Resource Planning</strong> (ERP) system that provides a suite of enterprise applications that integrates and automates several business process of an enterprise. The  framework offers a common data model and sophisticated business processes. There is a common architecture for all applications build around data, logic and process components. Apache OFBiz  is built on open source technologies and standards like <strong>Java</strong>,  <strong>Java</strong> Enterprise Edition (JEE), XML and SOAP.</p>
<p>Apache OFBiz comes with a wide range of functionalities  that include</p>
<ul>
<li>Accounting (agreements, invoicing, <span id="IL_AD9">vendor management</span>, general ledger)</li>
<li><span id="IL_AD8">Asset Maintenance</span></li>
<li>Catalogue and Product Management</li>
<li>Facility and Warehouse Management</li>
<li>Manufacturing</li>
<li>Order Processing</li>
<li>Inventory Management, automated stock replenishment etc.</li>
<li>Content Management System (CMS)</li>
<li> People and Group Management</li>
<li><strong>Project Management</strong></li>
<li><span id="IL_AD12">Sales Force Automation</span></li>
<li>Work Effort Management</li>
<li>Electronic Point Of Sale (ePOS)</li>
<li>eCommerce</li>
<li>Human resources (HR)</li>
</ul>
<p>OFBiz introduces the concept of screens where each page typically represents a screen.  It&#8217;s architecture allows rapid customization of the application to a business needs without any new coding.</p>
<h2>7. JFire</h2>
<p><a href="https://www.jfire.org/modules/content/"><img title="jfire" src="http://timsteeves.com/wp-content/uploads/2009/12/jfire.gif" alt="jfire" width="171" height="64" /></a><br />
It is a comprehensive and flexible ERP solution for businesses of all size. The system offers enterprise processes with powerful analysis, reporting, and customization options. It has been designed to be highly customizable. JFire is a highly scalable system that can support small companies as well as giant companies with extensive user base, multi-currency &amp; multi-language requirements. JFire is developed with the latest technologies such as <strong>J2EE</strong> 1.4, JDO 2.0, Eclipse RCP 3.3.</p>
<p>Key modules in JFire include</p>
<ul>
<li>Accounting</li>
<li>Flexible Price Configurations</li>
<li>Store Management</li>
<li>Reporting</li>
<li>Integration with external payment and delivery interfaces</li>
<li>CRM</li>
</ul>
<h2>8. ERP5</h2>
<p><a href="http://www.erp5.com/"><img title="erp5" src="http://timsteeves.com/wp-content/uploads/2009/12/erp5.png" alt="erp5" width="266" height="87" /></a><br />
This is a strong community that offers powerful ERP solution for small businesses. ERP5 is fully packed with features that includecustomer relationship management ( <strong>CRM</strong>), production management (MRP), supply chain management (SCM), product design management (PDM), accounting, human resources and e-commerce. For the small businesses, ERP5 has an Express edition which integrates ERP, CRM and KM funtionalities.</p>
<p>It offers a web based platform that can be used and configured for users and administrators through a browser. It provides an intuitive and polished user interface that makes an easy to understand <strong>ERP system</strong>.</p>
<h2>9. Opentaps</h2>
<h2><a href="http://www.openerp.com/"><img title="opentaps" src="http://timsteeves.com/wp-content/uploads/2009/12/opentaps.gif" alt="opentaps" width="244" height="54" /></a></h2>
<p>It is a complete open source platform. Opentaps features a modern architecture that includes a complete full ERP and CRM solution.  The ERP solution also includes mobile connectivity and built-in business intelligence tools. Key modules in opentaps are Online Store, CRM, Warehouse Application, Financials, Purchasing and Administrative Applications</p>
<p>Although not the best of the lot opentaps serves as one of the best <strong><strong>open source</strong> ERP</strong> software as an alternative to expensive and inflexible commercial ERP solutions. It would perfectly fit the replacement for in-house solutions that are difficult to maintain or extend, or as a starting point to build your unique business model and processes.</p>
<h2>10. ADempiere</h2>
<p><a href="http://adempiere.org/home/"><img title="adempiere" src="http://timsteeves.com/wp-content/uploads/2009/12/adempiere.jpg" alt="adempiere" width="160" height="147" /></a><br />
It is essentially a business suite that combines ERP, <strong>CRM</strong> and SCM support for business processes. ADempiere is an open-source <strong>ERP software</strong> that provides a framework for extending and customizing to meet business needs. Adempiere is developed in <strong>J2EE</strong> technology, especially using the JBoss application server. It&#8217;s database support is restricted to Oracle and PostgreSQL.</p>
]]></content:encoded>
			<wfw:commentRss>http://timsteeves.com/2009/12/22/top-10-open-source-erp-software/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:thumbnail url="http://timsteeves.com/wp-content/uploads/2009/12/weberplogo.gif" />
		<media:content url="http://timsteeves.com/wp-content/uploads/2009/12/weberplogo.gif" medium="image">
			<media:title type="html">weberplogo</media:title>
		</media:content>
		<media:content url="http://timsteeves.com/wp-content/uploads/2009/12/openbravo-logo.gif" medium="image">
			<media:title type="html">openbravo-logo</media:title>
			<media:thumbnail url="http://timsteeves.com/wp-content/uploads/2009/12/openbravo-logo-150x54.gif" />
		</media:content>
		<media:content url="http://timsteeves.com/wp-content/uploads/2009/12/compiere.png" medium="image">
			<media:title type="html">compiere</media:title>
		</media:content>
		<media:content url="http://timsteeves.com/wp-content/uploads/2009/12/xtuple_logo.jpg" medium="image">
			<media:title type="html">xtuple_logo</media:title>
		</media:content>
		<media:content url="http://timsteeves.com/wp-content/uploads/2009/12/openlogo.jpg" medium="image">
			<media:title type="html">openlogo</media:title>
		</media:content>
		<media:content url="http://timsteeves.com/wp-content/uploads/2009/12/ofbiz.gif" medium="image">
			<media:title type="html">ofbiz</media:title>
		</media:content>
		<media:content url="http://timsteeves.com/wp-content/uploads/2009/12/jfire.gif" medium="image">
			<media:title type="html">jfire</media:title>
		</media:content>
		<media:content url="http://timsteeves.com/wp-content/uploads/2009/12/erp5.png" medium="image">
			<media:title type="html">erp5</media:title>
		</media:content>
		<media:content url="http://timsteeves.com/wp-content/uploads/2009/12/opentaps.gif" medium="image">
			<media:title type="html">opentaps</media:title>
		</media:content>
		<media:content url="http://timsteeves.com/wp-content/uploads/2009/12/adempiere.jpg" medium="image">
			<media:title type="html">adempiere</media:title>
		</media:content>
	</item>
		<item>
		<title>New iTeam Site Launched</title>
		<link>http://timsteeves.com/2009/06/27/new-iteam-site-launched</link>
		<comments>http://timsteeves.com/2009/06/27/new-iteam-site-launched#comments</comments>
		<pubDate>Sat, 27 Jun 2009 22:32:06 +0000</pubDate>
		<dc:creator>Tim</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[Web Application Development]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[business software]]></category>
		<category><![CDATA[crm]]></category>
		<category><![CDATA[website design]]></category>

		<guid isPermaLink="false">http://timsteeves.com/?p=139</guid>
		<description><![CDATA[For those of you who don&#8217;t know, iTeam consists of a highly qualified design and development team made up of graphic designers, programmers, and systems and business analysts. This team combines the skill and creativity required to promote your business online with website design and Search Engine Optimisation, increase online sales through website analytics, and [...]]]></description>
			<content:encoded><![CDATA[<p>For those of you who don&#8217;t know, iTeam consists of a highly qualified <strong>design and development team</strong> made up of graphic designers, programmers, and systems and business analysts. This team combines the skill and creativity required to promote your business online with website design and Search Engine Optimisation, increase online sales through website analytics, and improve productivity and efficiency through custom database software, and office network maintenance.</p>
<p>Check out the new site!</p>
<p><strong><a title="iTeam" href="http://www.iteamtech.ca" target="_blank">www.iTeamTech.ca</a></strong></p>
<p>I appreciate any feedback you have.  Feel free to leave a comment and let me know what you think!</p>
]]></content:encoded>
			<wfw:commentRss>http://timsteeves.com/2009/06/27/new-iteam-site-launched/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
	</item>
		<item>
		<title>Developing Web Applications for the iPhone with Eclipse</title>
		<link>http://timsteeves.com/2009/06/02/developing-web-applications-for-the-iphone-with-eclipse</link>
		<comments>http://timsteeves.com/2009/06/02/developing-web-applications-for-the-iphone-with-eclipse#comments</comments>
		<pubDate>Tue, 02 Jun 2009 20:08:28 +0000</pubDate>
		<dc:creator>Tim</dc:creator>
				<category><![CDATA[Web Application Development]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[applications]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[website]]></category>

		<guid isPermaLink="false">http://timsteeves.com/?p=115</guid>
		<description><![CDATA[Aptana has a plugin for Eclipse that makes developing websites and web applications for the iPhone really simple.  Here&#8217;s the installation notes from Aptana:
Installing this Plugin via Aptana or Eclipse

 From the Help menu, select Software Updates &#62; Find and Install&#8230; to open an Install/Update pop-up window.
 On the Install/Update pop-up window, choose the Search [...]]]></description>
			<content:encoded><![CDATA[<p>Aptana has a plugin for Eclipse that makes developing websites and web applications for the iPhone really simple.  Here&#8217;s the installation notes from Aptana:</p>
<h3>Installing this Plugin via Aptana or Eclipse</h3>
<ol>
<li> From the <strong>Help</strong> menu, select <strong>Software Updates &gt; Find and Install&#8230;</strong> to open an <strong>Install/Update</strong> pop-up window.</li>
<li> On the <strong>Install/Update</strong> pop-up window, choose the <strong>Search for new features to install</strong> option, and click the <strong>Next</strong> button.</li>
<li> Set up a new remote site to scan for updates.
<ol>
<li> Click the <strong>New Remote Site&#8230;</strong> button to open a <strong>New Update Site</strong> pop-up window.</li>
<li> On the <strong>New Update Site</strong> pop-up window, type the name of the new plug-in in the site <strong>Name</strong> text box.</li>
<li> In the <strong>URL</strong> text box, type the URL <a id="sitename" href="http://update2.aptana.org/studio/24131b/site.xml">http://update2.aptana.org/studio/24131b/</a> for the update site.</li>
<li> Click <strong>OK</strong>.</li>
<li> Click the <strong>Finish</strong> button to open an <strong>Updates</strong> window.</li>
</ol>
</li>
<li> On the <strong>Updates</strong> window, check the box next to the name of the plug-in, and click the <strong>Next</strong> button.</li>
<li> Choose the option to accept the terms of the license agreement, and click the <strong>Next</strong> button.</li>
<li> Click the <strong>Finish</strong> button.</li>
<li> Click the <strong>Install All</strong> button.</li>
</ol>
<p>Now when you create a new iPhone project, it adds in some nice CSS and other features that makes developing on the iPhone much simpler.</p>
]]></content:encoded>
			<wfw:commentRss>http://timsteeves.com/2009/06/02/developing-web-applications-for-the-iphone-with-eclipse/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
	</item>
		<item>
		<title>Tune Performance and Speed up Ubuntu/Kubuntu</title>
		<link>http://timsteeves.com/2008/12/15/tune-performance-and-speed-up-ubuntukubuntu</link>
		<comments>http://timsteeves.com/2008/12/15/tune-performance-and-speed-up-ubuntukubuntu#comments</comments>
		<pubDate>Tue, 16 Dec 2008 03:18:51 +0000</pubDate>
		<dc:creator>Tim</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://timsteeves.com/?p=69</guid>
		<description><![CDATA[
1. Disable IPv6
At least I dont need IPv6 yet so this is what I do to disable it.
sudo kate /etc/modprobe.d/aliases
And change the line:
alias net-pf-10 ipv6
to:
alias net-pf-10 off #ipv6
This will disable IPv6 on all network interfaces. You need to reboot.
2. Run boot processes in parallel
This will make upstart to run the boot processes in parallel and [...]]]></description>
			<content:encoded><![CDATA[<p><span id="konasapn0"></p>
<p style="margin-bottom: 0.5cm;"><strong>1. Disable IPv6</strong><br />
At least I dont need IPv6 yet so this is what I do to disable it.<br />
<em>sudo kate /etc/modprobe.d/aliases</em><br />
And change the line:<br />
<em>alias net-pf-10 ipv6</em><br />
to:<br />
<em>alias net-pf-10 off #ipv6</em><br />
This will disable IPv6 on all network interfaces<a id="KonaLink0" class="kLink" style="text-decoration: underline ! important; position: static;" href="http://blog.kutakutik.or.id/linux/tune-the-speed-and-performance-of-kubuntuubuntu/#" target="undefined"><span style="color: blue ! important; font-weight: 400; font-size: 12.8px; position: static;"></span></a>. You need to reboot.</p>
<p style="margin-bottom: 0.5cm;"><strong>2. Run boot processes in parallel</strong><br />
This will make upstart to run the boot processes in parallel and speed up<a id="KonaLink1" class="kLink" style="text-decoration: underline ! important; position: static;" href="http://blog.kutakutik.or.id/linux/tune-the-speed-and-performance-of-kubuntuubuntu/#" target="undefined"><span style="color: blue ! important; font-weight: 400; font-size: 12.8px; position: static;"></span></a> the boot process.<br />
<em>sudo kate /etc/init.d/rc</em><br />
Find and change the line:<br />
<em>CONCURRENCY=none</em><br />
to:<br />
<em>CONCURRENCY=shell</em></p>
<p><strong>3.</strong><strong> Aliasing hostname to localhost<br />
</strong>Right or wrong, you decide. But I picked this up in the Ubuntu<a id="KonaLink2" class="kLink" style="text-decoration: underline ! important; position: static;" href="http://blog.kutakutik.or.id/linux/tune-the-speed-and-performance-of-kubuntuubuntu/#" target="undefined"><span style="color: blue ! important; font-weight: 400; font-size: 12.8px; position: static;"></span></a> forums the other day and it does improve the startup of some apps.<br />
<em>sudo kate /etc/hosts<br />
</em>and add you hostname to the first line after localhost like this:<br />
<em>127.0.0.1 localhost yourhost</em><br />
<em>127.0.1.1 yourhost</em></p>
<p style="margin-bottom: 0.5cm;"><span style="font-style: normal;"><strong>4. Disable pango</strong></span><em><br />
</em><span style="font-style: normal;">I know that this is already taken care of in Firefox<a id="KonaLink3" class="kLink" style="text-decoration: underline ! important; position: static;" href="http://blog.kutakutik.or.id/linux/tune-the-speed-and-performance-of-kubuntuubuntu/#" target="undefined"><span style="color: blue ! important; font-weight: 400; font-size: 12.8px; position: static;"></span></a> but it still makes a good performance boost to thunderbird and some other apps.<br />
</span><em>sudo kate /etc/environment<br />
</em><span style="font-style: normal;">and add:<br />
</span><em>MOZ_DISABLE_PANGO=”1″</em></p>
<p style="margin-bottom: 0.5cm;"><span style="font-style: normal;"><strong>5. Preload</strong></span><span style="font-style: normal;"><br />
It does what you think. It preloads most common used libs and files = faster startup times on your applications.<a id="KonaLink4" class="kLink" style="text-decoration: underline ! important; position: static;" href="http://blog.kutakutik.or.id/linux/tune-the-speed-and-performance-of-kubuntuubuntu/#" target="undefined"><span style="color: blue ! important; font-weight: 400; font-size: 12.8px; position: static;"></span></a><br />
</span><em>sudo apt-get install preload</em></p>
<p style="margin-bottom: 0.5cm;"><span style="font-style: normal;">What about prelink?<br />
Prelink is no longer necessary in feisty. Feisty uses a new linking mechanism called DT_GNU_HASH which speeds up the linking process without the need for continuously running prelink.</span></p>
<p style="margin-bottom: 0.5cm;"><span style="font-weight: bold;">6. Swappiness</span><br />
The default value for vm.swappiness is 60 in Ubuntu Feisty whic is a good default value but if you want to tweak the performance a little bit more you can change this value to a lower value to reduce the load of the swap. If you run the follwing command:<br />
<span style="font-style: italic;">sysctl -q vm.swappiness</span><br />
You will se that the value is set to 60. And by running:<br />
<span style="font-style: italic;">sudo sysctl vm.swappiness=10</span><br />
You will change the value from 60 to 10 which will make your system write to swap a lot less and I would recommend this to everyone that has 512 MB<a id="KonaLink6" class="kLink" style="text-decoration: underline ! important; position: static;" href="http://blog.kutakutik.or.id/linux/tune-the-speed-and-performance-of-kubuntuubuntu/#" target="undefined"><span style="color: blue ! important; font-weight: 400; font-size: 12.8px; position: static;"></span></a> of memory or more. If you find that you have very little use of swap set the value to 0. This will not disable the swap but it will make your system<a id="KonaLink5" class="kLink" style="text-decoration: underline ! important; position: static;" href="http://blog.kutakutik.or.id/linux/tune-the-speed-and-performance-of-kubuntuubuntu/#" target="undefined"><span style="color: blue ! important; font-weight: 400; font-size: 12.8px; position: static;"></span></a> write to the swap as little as possible and keep as much as possible in memory. This makes a huge improvment when switching between applications since they are now likley to be in physical ram instead of on the swap partition.</p>
<p style="margin-bottom: 0.5cm;"><span>To set your value permanent you need to change the sysctl.conf file:<br />
</span><span style="font-style: italic;">sudo kate /etc/sysctl.conf<br />
</span>Add the line<span style="font-style: italic;"><br />
vm.swappiness=10</span><br />
To the end of the file. This way it will be set upon boot.</p>
<p style="margin-bottom: 0.5cm;"><span>I’ve found that the value of 5 works very good for my use and I have 1 GB of memory.</span></p>
<p style="margin-bottom: 0.5cm;"><span style="font-weight: bold;">7. Profile grub</span><br />
There is a option to grub called profile which will profile your startup. What it does is that it kind of indexing all the files read during boot/startup and later on it will find and read those files quicker.</p>
<p style="margin-bottom: 0.5cm; font-style: italic;"><span style="font-style: italic;">Hit the escape button when booting to get to the grub menu.</span><br />
<span style="font-style: italic;">Select your default boot kernel and hit the e button.</span><br />
<span style="font-style: italic;">Go down to the second line and hit the e button again.</span><br />
<span style="font-style: italic;">Add profile to the end of the line and press enter.</span><br />
<span style="font-style: italic;">Hit the b button to boot with your new option.</span></p>
<p style="margin-bottom: 0.5cm;"><span>The first time it will take a little bit longer to boot because it has to build the index (or whatever they want to call it) but every boot after this will be a lot smoother.<br />
You need to do this every time you update your kernel or have made other huge changes to your system that might affect the files needed during boot.<br />
</span></p>
<p style="margin-bottom: 0.5cm;"><span><br />
</span></p>
<p style="margin-bottom: 0.5cm;"><span>The following could cause your system to be unstable or even unable to boot so please use them care…</span></p>
<p style="margin-bottom: 0.5cm;"><strong>8. sysv-rc-conf</strong><br />
Install sysv-rc-conf and disable the services you don’t need at startup.<br />
As an example. On my computer<a id="KonaLink8" class="kLink" style="text-decoration: underline ! important; position: static;" href="http://blog.kutakutik.or.id/linux/tune-the-speed-and-performance-of-kubuntuubuntu/#" target="undefined"><span style="color: blue ! important; font-weight: 400; font-size: 12.8px; position: static;"></span></a> I don’t have bluetooth so I don’t need to start it at boot time.<br />
So simply disable what ever you don’t have or use.</p>
<p style="margin-bottom: 0.5cm;"><em>sudo apt-get install sysv-rc-conf</em><br />
and then run:<br />
<em>sudo sysv-rc-conf</em></p>
<p style="margin-bottom: 0.5cm; font-style: normal;"><strong>9. Kernel hacking</strong><br />
<span>Even thought the new kernel in feisty is very good and already tuned a bit there still are some things you can do to the kernel the will make your system snappier and boot up even faster.</span></p>
<p style="margin-bottom: 0.5cm; font-style: normal;"><span>Use this thread from the ubuntu forums as a guide on how to compile your own kernel.<br />
<a href="http://ubuntuforums.org/showthread.php?t=311158&amp;highlight=master+kernel">master kernel thread</a></span></p>
<p style="margin-bottom: 0.5cm; font-style: normal;"><span>What I do is that I make sure to add my file system I use to the kernel instead of loading them as modules. Take out whatever I don’t have or use and then compile my new and hopefully improved kernel <img class="wp-smiley" src="http://blog.kutakutik.or.id/wp-includes/images/smilies/icon_wink.gif" alt=";)" /> </span></p>
<p style="margin-bottom: 0.5cm;"><strong>10. Filesystem setup</strong><br />
The choice and use of the file system is a big issue when dealing with performance. Depending on your usage of your system you might need to configure your filesystem different.</p>
<p style="margin-bottom: 0.5cm;">For my usage I like to use the following setup (which I think is a good desktop <a id="KonaLink10" class="kLink" style="text-decoration: underline ! important; position: static;" href="http://blog.kutakutik.or.id/linux/tune-the-speed-and-performance-of-kubuntuubuntu/#" target="undefined"><span style="color: blue ! important; font-weight: 400; font-size: 12.8px; position: static;"></span></a>setup)</p>
<table border="1" cellspacing="0" cellpadding="4" width="100%" bordercolor="#000000">
<tbody>
<tr valign="top">
<th width="33%">Mountpoint</th>
<th width="33%">filesystem</th>
<th width="33%">Size</th>
</tr>
</tbody>
</table>
<p style="margin-bottom: 0cm;" align="left">Using the following options in fstab for all my xfs partitions:<br />
<em>noatime,nodiratime,logbufs=8<br />
</em><br />
Using LVM can really speed up the disk performance. And you get a lot of other good stuff with it as well. Read more about LVM <a href="http://www.tldp.org/HOWTO/LVM-HOWTO/">here.</a><br />
I choose to have /root and /home on one VolumeGroup and /data on another simply because I can then split them up on diffrent physical disks and have them spanning over multiple physical disks witch really speeds up the reads and writes.</p>
<p style="margin-bottom: 0cm;" align="left">
<p style="margin-bottom: 0cm;" align="left">At the moment this is pretty much it but I will update this as soon as I discover more performance tunings…<strong><br />
</strong></p>
<p style="margin-bottom: 0cm;" align="left"><strong><br />
</strong></p>
<p style="margin-bottom: 0cm;" align="left"><strong>Tuning applications</strong></p>
<p style="margin-bottom: 0cm;" align="left">Not so much to add here but this what I like to do.<strong><br />
</strong></p>
<p style="margin-bottom: 0cm;" align="left"><strong>1. Firefox</strong><br />
Use swiftfox instead. It’s optimized for your CPU<a id="KonaLink11" class="kLink" style="text-decoration: underline ! important; position: static;" href="http://blog.kutakutik.or.id/linux/tune-the-speed-and-performance-of-kubuntuubuntu/#" target="undefined"><span style="color: blue ! important; font-weight: 400; font-size: 12.8px; position: static;"></span></a>.<br />
<em>Install the fasterfox add-on</em><br />
If it’s not already set, disable IPv6. In the url enter about:config and find the ipv6 entry and disable it.<br />
<span style="font-style: italic;">Install adblock plus add-on</span><br />
to disable ad’s it helps a lot <img class="wp-smiley" src="http://blog.kutakutik.or.id/wp-includes/images/smilies/icon_smile.gif" alt=":)" /></p>
<p><strong>2. openoffice</strong><br />
<span>If you don’t need that extras that java<a id="KonaLink12" class="kLink" style="text-decoration: underline ! important; position: static;" href="http://blog.kutakutik.or.id/linux/tune-the-speed-and-performance-of-kubuntuubuntu/#" target="undefined"><span style="color: blue ! important; font-weight: 400; font-size: 12.8px; position: static;"></span></a> JRE provides then simply disable it openoffice. That’s what I do.</span></p>
<p>Grab from <a href="http://xlntsolution.blogspot.com/2007/03/feisty-performance-fly-like-butterfly.html">XLN </a></p>
<p></span></p>
]]></content:encoded>
			<wfw:commentRss>http://timsteeves.com/2008/12/15/tune-performance-and-speed-up-ubuntukubuntu/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
	</item>
		<item>
		<title>Basic PHP Output Optimization</title>
		<link>http://timsteeves.com/2008/08/10/basic-php-output-optimization</link>
		<comments>http://timsteeves.com/2008/08/10/basic-php-output-optimization#comments</comments>
		<pubDate>Sun, 10 Aug 2008 07:33:52 +0000</pubDate>
		<dc:creator>Tim</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web Application Development]]></category>

		<guid isPermaLink="false">http://timsteeves.com/?p=43</guid>
		<description><![CDATA[
Echo vs. Print
The most common way to output text with PHP is using echo or print. In this section we will see the similarities and the differences between them.
Similarities

They are both language constructs (not functions) so by all means drop the parentheses:
&#60;?php
    echo 'foo';

    print 'bar';
?&#62;

They can be used [...]]]></description>
			<content:encoded><![CDATA[<div class="box">
<h2 id="echovsprint">Echo vs. Print</h2>
<p>The most common way to output text with PHP is using <code>echo</code> or <code>print</code>. In this section we will see the similarities and the differences between them.</p>
<h3>Similarities</h3>
<ul class="text">
<li>They are both language constructs (not functions) so by all means drop the parentheses:
<pre><code><span class="php">&lt;?php</span>
    echo <var>'foo'</var>;<samp></samp>

    print <var>'bar'</var>;<samp></samp>
<span class="php">?&gt;</span></code></pre>
</li>
<li>They can be used to output multiple lines:
<pre><code><span class="php">&lt;?php</span>
    echo <var>'This is the first line.
    This is the second line.'</var>;<samp></samp>

    print <var>'As you can see,
    it works with print, too.'</var>;<samp></samp>
<span class="php">?&gt;</span></code></pre>
</li>
</ul>
<h3>Differences</h3>
<ul class="text">
<li><code>print</code> returns 1<code> </code>so it can be used as a function:
<pre><code><span class="php">&lt;?php</span>
    (1 == 1) ? print <var>'true'</var> : print <var>'false'</var>
    //Outputs<samp> 'true'</samp>

    (1 == 1) ? echo <var>'true'</var> : echo <var>'false'</var>
    <samp>//Doesn't work</samp>

    echo (1 == 1) ? <var>'true'</var> : <var>'false'</var>
    <samp>//</samp></code><code>Outputs<samp> 'true'</samp></code><code><samp></samp>
<span class="php">?&gt;</span></code></pre>
</li>
<li>With <code>echo</code> you can &#8220;concatenate&#8221; with a comma.  I put concatenate in quotes because it looks and feels like concatenation is happening, but it&#8217;s not actually concatenation.  I&#8217;ll talk about that more later.
<pre><code><span class="php">&lt;?php</span>
    echo <var>'With echo you can '</var>, <var>'use the comma '</var>, <var>'to output multiple parameters.'</var>;
    <samp>//Works</samp>

    print <var>'With print '</var>, <var>'you will get '</var>, <var>'an error.'</var>;
    <samp>//Doesn't work</samp>
<span class="php">?&gt;</span></code></pre>
</li>
</ul>
<p>Realistically there is no real reason to prefer <code>print</code> over <code>echo</code> unless you want to use it as a function.  Give me a solid case for this usage and I&#8217;ll bend, but I&#8217;ve never needed to use it.  <code>echo</code> can do all the things that <code>print</code> does better: it&#8217;s slightly faster than print&#8230;and it&#8217;s one less character to type!</p>
<h2 id="dotsvscommas">Dots vs. Commas</h2>
<p>As I mentioned earlier, you can use both dots and commas to output strings and variables using <code>echo</code> but with <code>print</code>, you can only use dots. So, what&#8217;s the difference?</p>
<p>When using dots, all the parts are concatenated to form a single string that will then be printed, while with commas, all the parts are printed individually, and although the end result appears to be concatenation, each item is actually output one-by-one.</p>
<p>This actually makes the use of commas slightly faster than using dots because the string concatenation is skipped but the end result is exactly the same &#8211; no spaces will be added between the arguments (like in Python) &#8211; so commas are the preferred method for outputting multiple string segments and variables with echo.</p>
<pre><code><span class="php">&lt;?php</span>
    $var = 'foobar';
    echo <var>'The value of $var is '</var>, $var;
    <samp>//Output: The value of $var is foobar</samp><samp></samp>
<span class="php">?&gt;</span></code></pre>
<h2 id="singlevsdouble">Single Quotes vs. Double Quotes</h2>
<p>In PHP there are two main ways to specify a string: single quotes (&#8217;<var>foo</var>&#8216;) and double quotes (&#8221;<var>bar</var>&#8220;).  		There&#8217;s also a couple more ways — heredoc and nowdoc — but I don&#8217;t want to get into that can of worms here.</p>
<h3>Single quotes</h3>
<p>When you need to output a plain string, the single quotes are probably the best idea.</p>
<p>Variables and escaped characters (e.g. <kbd>\n</kbd>, <kbd>\t</kbd>, <kbd>\"</kbd> etc.) will not be expanded, except for <kbd>\'</kbd> and <kbd>\\</kbd> (you can also write just a single <kbd>\</kbd> to output the backslash). This will make the parsing of a single quoted string slightly faster than a double quoted one, and you don&#8217;t have to escape double quotes (e.g. in HTML attributes) as we can see in the following examples:</p>
<pre><code><span class="php">&lt;?php</span>
    echo <var>'This is a plain string'</var>;
    <samp>//Output: This is a plain string</samp>

    $var = 123;
    echo <var>'This $var and this \n newline character will not be expanded.'</var>;
    <samp>//Output: This $var and this \n newline character will not be expanded.</samp>

    echo <var>'The \' single quote and the \\ backslash will be expanded.
    The single \ backslash works too.'</var>;
    <samp>//Output: The ' single quote and the \ backslash will be expanded.
    //The single \ backslash works too.</samp>

    echo <var>'&lt;img src="foo.jpg" alt="test" height="100" width="100"&gt;'</var>;
    <samp>//Output: &lt;img src="foo.jpg" alt="test" height="100" width="100"&gt;</samp>
<span class="php">?&gt;</span></code></pre>
<h3>Double quotes</h3>
<p>If you use a double quoted string, variables and escaped characters will be expanded.</p>
<pre><code><span class="php">&lt;?php</span>
    $var = 123;
    echo <var>"This $var will be expanded. You can also use \$var if you want to avoid it."</var>;
    <samp>//Output: This 123 will be expanded. You can also use $var if you want to avoid it.</samp>

    echo <var>"This characters will be expanded too:\nfoo\n\tbar\nbaz"</var>;
    <samp>//Output: This characters will be expanded too:
    //foo
    //    bar
    //baz</samp>

    echo <var>"&lt;img src=\"foo.jpg\" alt=\"test\" height=\"100\" width=\"100\"&gt;"</var>;
    <samp>//Output: &lt;img src="foo.jpg" alt="test" height="100" width="100"&gt;</samp>

    echo <var>"You can also print characters in octal and hexadecimal notation like \141 and \x62."</var>;
    <samp>//</samp></code><code>Output: </code><code><samp>You can also print characters in octal and hexadecimal notation like a and b.</samp>
<span class="php">?&gt;</span></code></pre>
<p>Bottom line is that it&#8217;s better to use single quotes and avoid to include variables inside the strings.  The only real time you may want to use double-quotes is when you have lot of variables that have to be included in a string.  In this case, the use of double quotes may improve the readability of the code.</p>
<h2 id="conclusions">Conclusion</h2>
<ul>
<li>Use <code>echo</code> instead of <code>print</code></li>
<li>Don&#8217;t use parentheses with echo (or any language constructs for that matter)</li>
<li>Use single quotes if you don&#8217;t have to use escaped characters or need to expand many variables<kbd></kbd></li>
<li>Always use a comma instead of a dot when joining strings and variables in an <code>echo</code> statement</li>
</ul>
</div>
]]></content:encoded>
			<wfw:commentRss>http://timsteeves.com/2008/08/10/basic-php-output-optimization/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
	</item>
		<item>
		<title>Software Development Productivity &#8211; Part 2</title>
		<link>http://timsteeves.com/2008/07/22/software-development-productivity-part-2</link>
		<comments>http://timsteeves.com/2008/07/22/software-development-productivity-part-2#comments</comments>
		<pubDate>Tue, 22 Jul 2008 19:12:20 +0000</pubDate>
		<dc:creator>Tim</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://timsteeves.com/?p=31</guid>
		<description><![CDATA[Reducing the Software Development Effort
In Part1, I outlined the techniques Software Development needs to take in order to have competitive wages in the most recent market.  In this section I&#8217;m going to dig a bit deeper into the summary by highlighting the fact that about two-thirds of the features of a typical software system [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Reducing the Software Development Effort</strong></p>
<p>In Part1, I outlined the techniques Software Development needs to take in order to have competitive wages in the most recent market.  In this section I&#8217;m going to dig a bit deeper into the summary by highlighting the fact that about two-thirds of the features of a typical software system are seldom or never used. Often, only twenty percent of the features are used frequently and so reducing the requirements as the development process unravels is key to increased productivity.</p>
<p><strong>1. Eliminating extra </strong><strong>features</strong> that no one really wants is probably the single largest opportunity for increasing software development productivity in most organizations.  Extra features are generated by a software development process that attempts to nail down the features in a system at the beginning of the development process.  Typically, customers are asked to decide at the start of a project what features<br />
they want. Often they have little incentive to keep the features list short, but they are penalized if any items are forgotten. Can there be any wonder that a feature list generated with such incentives contains far more features than are necessary?</p>
<p>The biggest opportunity for reducing software development effort is to limit overproduction of features<strong> </strong>by <strong>developing features on an as-needed basis</strong>. For many companies, this may require a paradigm shift in architecture and design.  However, it is becoming increasingly apparent that there are many disciplined approaches to software development that provide for an emergent architecture.  In the Open Source community this technique is practiced without much thought.  By breaking the development into phases and milestones in an as-needed or prioritized basis is one of the keys to success here.  Refactoring the code on an on-going basis keeps the design simple, clean, and efficient while developing test harnesses at the same time as developing the underlying code is a must are also key to this approach.</p>
<p><strong> 2. Streamline the Development Processes</strong> The measure of maturity of an organization is the speed at which it can reliably and repeatedly execute it’s key processes. A mature software development organization is one that can rapidly, reliably and reliably translate customer needs into deployed code. Too often, rapid software development has been equated with sloppy work, so attempts to streamline the development process are often looked upon with suspicion. However, in industry after industry, when sequential development processes are replaced with concurrent development processes, costs are slashed, quality is improved, and development time is dramatically reduced.</p>
<p>Organizations which record year-on-year productivity improvements spend a lot of time focusing on streamlining key processes while increasing their reliability. They do this by focusing on the flow of value through the process. There are three main techniques used to do this:</p>
<p>a. Value stream mapping is a tried and true approach to streamlining value-creating processes. A value stream map of the current state is invaluable for spotting waste; a value stream map of the desired future state is a roadmap for process improvement. Poppendieck.LLC helps organizations use value stream mapping to improve software development productivity.</p>
<p>b. Kaizen events are a typical implementation vehicle for streamlining operational processes. In software development, a modification of Kaizen events is usually required, because software improvement efforts usually take more time than is generally allocated for Kaizen events. We facilitate effective Kaizen events for software development.</p>
<p>c. An Integrated Product Team (IPT) is frequently used to facilitate information flow across an entire development team. Software development IPT’s involve not only architects, designers and developers,<br />
but also those responsible for deployment, operations, customer support, and maintenance.</p>
<p><strong> 3. Increase Customer Value</strong> Understanding customer value well enough to obtain additional revenue is the third key to increasing software development productivity. In general, customers cannot be relied upon to tell a software development organization how to increase the value of its offerings. In fact, customers generally think of software as a tool that should adapt to their needs over time. This makes understanding customer<br />
value elusive not only during a software development project, but even after deployment. And yet, the price that can be charged for software is directly related to understating how to increase its value proposition.</p>
<p>We are not likely to increase software’s value proposition unless we increase our understanding how customers might use our software to create value for themselves. There are three steps to increasing customer value:</p>
<p>a. Iterative development with frequent releases creates a short feedback loop between customers and developers. The key to successful iterative development is to prioritize the feature list, implement features in order of business value, and deploy them as soon as possible. The short feedback loop created by iterative development and early deployment not only limits the development of unnecessary code, it brings to light innovative new uses of technology that can significantly improve business results.</p>
<p>b. The next step to understanding customer value is to understand how our customers create value for their customers. Increasing the support of key value creating processes for customers is the most likely source of increased revenue for software development. One method of discovering how our customers create value is to focus on their key processes and map their value stream.</p>
<p>c. The final step to providing customer value is to link organizations through partnerships that focus on the overall productivity of the combined enterprise. Peter Drucker noted in Management Challenge for the 21st Century that “In every single case…the integration into one management system of enterprises that are linked economically rather than controlled legally, has given a cost advantage of at least 25 percent and more often 30 percent.” The bottom line is that when organizations work together for their mutual benefit rather than optimizing the results of the individual organizations, a large increase in overall productivity can be realized.</p>
<p>Software development organizations have always emphasized process; however, the focus has been on predictable delivery of pre-defined scope rather than increased productivity. Not surprisingly, processes which did not value productivity did not deliver productivity increases; quite often they decreased productivity instead. We need to move from processes which define scope early to processes which allow only the most valuable scope to be addressed. We need to move from slow processes with many wasteful steps to streamlined processes which eliminate non-value-adding activities. We need to focus on increasing revenue potential over cutting costs by discovering how we can help our customers increase their productivity.</p>
<p>References<br />
i. Johnson, Jim, Chairman of The Standish Group, ‘ROI, It’s Your Job,’ Published Keynote Third International Conference on Extreme Programming, Alghero, Italy, May, 26-29, 2002<br />
ii. Management Challenge for the 21st Century, Peter Drucker, Harper Business, 2001, p 33.</p>
]]></content:encoded>
			<wfw:commentRss>http://timsteeves.com/2008/07/22/software-development-productivity-part-2/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
	</item>
		<item>
		<title>Software Development Productivity &#8211; Part 1</title>
		<link>http://timsteeves.com/2008/07/21/software-development-productivity</link>
		<comments>http://timsteeves.com/2008/07/21/software-development-productivity#comments</comments>
		<pubDate>Tue, 22 Jul 2008 04:47:12 +0000</pubDate>
		<dc:creator>Tim</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://timsteeves.com/?p=20</guid>
		<description><![CDATA[Productivity is the prime determinant of our standard of living. If the revenue generated
per work hour goes up, income levels go up. If productivity goes down, wages go down.
When all else is equal in a market, the more productive company will enjoy greater
profits. Thus the key to sustaining and increasing wages in the software development
industry [...]]]></description>
			<content:encoded><![CDATA[<p>Productivity is the prime determinant of our standard of living. If the revenue generated<br />
per work hour goes up, income levels go up. If productivity goes down, wages go down.<br />
When all else is equal in a market, the more productive company will enjoy greater<br />
profits. Thus the key to sustaining and increasing wages in the software development<br />
industry is to continually improve development productivity.</p>
<p>Throughout the 90’s, productivity increases in the technology sector resulted largely from increased capability of the underlying technology.  Case in point, faster computers make faster developers because &#8220;wait times&#8221; are reduced and with newer techniques and APIs it became easier and easier to accomplish larger tasks with fewer lines of code.  In recent years, however, software development productivity has stagnated as demand for newer technology has flattened. Thus it should come as no surprise that wages in the software development profession have flattened and even declined in many cases.</p>
<p>As the technology sector matures, it can no longer depend on increasing growth in the underlying technology to fuel productivity increases. The time has come for serious efforts to be made in order to increase productivity through more efficient use of labor and more effective value propositions for customers. This is how more mature economic sectors have been increasing productivity for decades and it is only fair that the IT industry must follow suit.</p>
<p>First of all, we need to define what we mean by productivity improvement in the software development industry. Traditionally, we have measured productivity as thousand lines of code (kloc) per labor hour. However, the key process of a development activity is taking an idea and making it into a product. To measure the real productivity of software development, we need look at how efficiently and effectively we turn ideas into software.  So perhaps we should start with a new definition of software development productivity:</p>
<ol>
<li>For companies that develop and sell software as a product, productivity may be defined as the revenue generated per employee.</li>
<li>For internal IT organizations, productivity may be defined as increased revenue realized by the supported business per dollar spent by the IT organization.</li>
</ol>
<p>There are three basic approaches to productivity improvement:</p>
<ol>
<li> Reduce product costs by eliminating investments in product features that customers do not find valuable.</li>
<li>Reduce indirect costs by streamlining processes and eliminating inefficiencies in development, delivery and support.</li>
<li>Increase revenue by adding more value to a product so customers will pay more for it.</li>
</ol>
<p>Tomorrow, I&#8217;ll finish up Part 2, where I&#8217;ll explore each of the above approaches to improving software development productivity.</p>
]]></content:encoded>
			<wfw:commentRss>http://timsteeves.com/2008/07/21/software-development-productivity/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
	</item>
		<item>
		<title>MS Excel Can Kill Productivity</title>
		<link>http://timsteeves.com/2008/07/17/ms-excel-can-kill-productivity</link>
		<comments>http://timsteeves.com/2008/07/17/ms-excel-can-kill-productivity#comments</comments>
		<pubDate>Fri, 18 Jul 2008 01:36:30 +0000</pubDate>
		<dc:creator>Tim</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://timsteeves.com/?p=17</guid>
		<description><![CDATA[It is so common for tools such as Excel to be used for managing customer databases, for keeping track of creditors and debtors, and for organising the flow of business data that many business owners assume their employees are using the right tools for the job.
Whilst many of these tools are excellent for their intended [...]]]></description>
			<content:encoded><![CDATA[<p>It is so common for tools such as Excel to be used for managing customer databases, for keeping track of creditors and debtors, and for organising the flow of business data that many business owners assume their employees are using the right tools for the job.</p>
<p>Whilst many of these tools are excellent for their intended purpose, they are frequently used in lieu of a more appropriate technology, simply because of familiarity with that tool. This is just one example of where a Technical Consultant can provide businesses and their employees with significant productivity boosts.</p>
]]></content:encoded>
			<wfw:commentRss>http://timsteeves.com/2008/07/17/ms-excel-can-kill-productivity/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
	</item>
		<item>
		<title>Business Databases and Productive Software</title>
		<link>http://timsteeves.com/2008/07/15/business-databases-and-productive-software</link>
		<comments>http://timsteeves.com/2008/07/15/business-databases-and-productive-software#comments</comments>
		<pubDate>Wed, 16 Jul 2008 00:24:59 +0000</pubDate>
		<dc:creator>Tim</dc:creator>
				<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://timsteeves.com/?p=11</guid>
		<description><![CDATA[Technically speaking, a database is a collection of information arranged for ease and speed of search and retrieval. A computerized database uses software to organize the collection and storage of the information and allows a person or computer program to collect any additional information. Simply put, a database holds all your shared information such as [...]]]></description>
			<content:encoded><![CDATA[<p>Technically speaking, a database is a collection of information arranged for ease and speed of search and retrieval. A computerized database uses software to organize the collection and storage of the information and allows a person or computer program to collect any additional information. Simply put, a database holds all your shared information such as customers, contacts, suppliers, product information, and sales history&#8211;everything you and your enterprise use daily.</p>
<p>The software used to establish this database is the database management system. iTeam offers customized database management systems to store, manage and retrieve information. These systems offer custom designed software that are most efficient and cost effective for each individual business need.</p>
<p>Most people are familiar with data storages such as <em>OpenOffice, Microsoft Excel and</em> <em>Microsoft Access</em> and use these tools to maintain all of their information. There are pros and cons to systems such as these. For example, unless the information is shared over a network on a server, there is a chance of overlap, double entry and often only one person may access the file at a time. Such systems appear inexpensive because most businesses already have an office application; however they quickly become time consuming when working with more than one spreadsheet. As businesses grow, customizing your system becomes a necessity to increasing business efficiencies, minimizing training and reducing other associated costs.</p>
<p>Business needs vary for each company, an example of some of the forms of customized software include:</p>
<ul>
<li>Increase your employee productivity
<ul>
<li>Reduce your employees paper work</li>
<li>Eliminate double entries with automation</li>
</ul>
</li>
<li>Increase reporting capabilities</li>
<li>Retrieve Real time information for everyone
<ul>
<li>Increase efficiencies</li>
<li>Increase customer satisfaction</li>
</ul>
</li>
<li>Reduce training time for new employees</li>
<li>Access and enter information on your blackberry or PDA</li>
<li>Easily import and export information in any format</li>
<li>Software enabling access to the database over the internet</li>
<li>Create database securities which limit the access of the information</li>
<li>Synchronize or auto-generate formulas and/or calculated fields to automatically update your data</li>
</ul>
<p>Bottom line is: if you are looking for a turn-key system you need something that is easily implemented with minimal training that integrates databases that fit with your business logistics and is either stand-alone or is an enhancement to your current system.</p>
<p>Your business can make improvements to information management in a variety of ways. These improvements can range from small enhancements at a minimal cost, to a complete over-haul of your existing system. Each business has its own separate needs&#8211;a customized database system is often the most efficient and can become a cost effective way to manage these needs.</p>
]]></content:encoded>
			<wfw:commentRss>http://timsteeves.com/2008/07/15/business-databases-and-productive-software/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
	</item>
	</channel>
</rss>

