Archive for June, 2007

Posted on Jun 24th, 2007

Our Unmanned Aerial Vehicles have proven themselves in the battlespace to be some of our most important assets. These UAVs have also been used fighting fires, guarding our borders and helping in disasters. Many of these UAVs are controlled by line of sight communication command and control systems, while others can be controlled remotely via satellites. When these UAVs are controlled via satellite there is a one second delay in commands from the desktop pilot, who is basically operating from a PC with a joystick and some instruments, not a whole lot different than Microsoft Simulator Program you buy in the store. This system works well when you are merely flying around looking at stuff and sending back the video feed to command and control.

There comes a problem when you need instantaneous maneuvering and are also dealing with the reality of situational awareness from a UAV and also with the time delay in directions from the virtual pilot in augmented reality at command and control. However many things such as evasion could be preprogrammed for dodging SAMs (surface to air missiles) shot from an enemy. If you have to wait for the communication delays it could be too late for your drone UAV. Once the UAV takes the drastic measures to evade the SAM, it would then seek normal flight on the former heading or a heading of exactly 180 degrees from where it started. Thus it has evaded, recorded the location from where the missile was fired and retreated. Now you can assign the launch location of the SAM as a legitimate target.

A UAV has an advantage over a fighter aircraft with a pilot, as it can turn with more G’s as long as stay with in its envelope. Indeed there would be the same control limits for flight departure issues as in the newest of fighters when you travel outside the envelope, which would be massively expanded with new materials, lack of biological needs of a pilot and directional thrust tricks of the trade and intake air opening changes in-flight all computerized.

As a pilot myself “single engine land,” I do not want to ditch the pilots just yet for the silicon chip versions. Especially as I look at the cost of some of these high tech advanced UAVs, after all that is an expensive piece of hardware, but we are seeing more and more evidence of Big Blue beating the best chess players of the air. In the end our decision must be for the mission, not our debate over organic VS autonomous or robotic, I guess I would say, I just want to WIN, that is all; using the whole track is that was the first thing they told us in racing school, it helped keep me alive. We need to do whatever it takes, for however long it takes to accomplish the mission, whatever that might be. It is only about winning. But we cannot send a UAV into an area laden with the enemy that has shoulder fired or batteries of surface to air missiles unless these robotic counterparts have master evasion software programs, which immediately over ride the command and control and autonomously address the threat. Think on this.

"Lance Winslow" - Online Think Tank forum board. If you have innovative thoughts and unique perspectives, come think with Lance; www.WorldThinkTank.net/wttbbs/

Posted on Jun 23rd, 2007

Can you imagine world with out computers? Our tasks, businesses, communication and what not will be mashed. Right!? To run computer we use various kinds of softwares to ease our workloads.

Every business to using computers to enhance their profit would definitely look for the best software they can get, and for that they pay huge amount of money. Well they are not doing any kind foolishness, but, meanwhile there are free softwares available that can be used as a substitute of the costly one.

Yes, I am talking about free or lower prized software easily available on net, which are also dressed up with almost the same facilities, provided some the major software companies.

Ignorance leads people to spend massive amount on software, as there are substitute for almost every single category of applications, which is being used on a daily basis.

There are lots of programs out there that can do the job almost without spending a single penny. However, people think that only popular/branded products such as from Microsoft, Symantec, Adobe and many more are significant.

In fact, our minds are not set to use other software made by small or middle sized companies, as it in state if it’s free that it’s not that good enough for them.

Hundreds of Office Suite, Antivirus Software, shareware, Firewalls, System Maintenance Tools, CD Burning Software and freeware files are accessible on net, but because we acknowledge only major products.

You can easily find website, providing free downloads for software of nearly every kind. Just use “free software download” for your search and you will receive list of numerous websites.

This article is my sincere effort to stimulate people that there are several high-quality free programs out there on the internet that can do the same task as a commercially available program but without that expensive price tag.

Paras Yadav: Web content and article writer.

http://web-content-writing.blogspot.com/

Posted on Jun 22nd, 2007

SMS Marketing using SMS Software: The increasing mobile phone penetration globally has instantly resulted in SMS becoming an effective alternative to traditional modes of business communication. With over 1.2 billion mobile phones and increasing penetration among semi-urban, rural areas mobile text messaging (SMS) just cannot be ignored by marketing leaders.

SMS Software is an effective tool to send short, instant and personalised text message (SMS) to the target audience. Brand managers like to be in contact with their existing customers and prospects to inform them about new products, features and other value-added offerings for them using SMS Software.

Their main concerns for marketing leaders related to SMS marketing are security of their database, getting a flexible platform to run SMS campaign at a schedule convenient to them, doing the campaign effectively, irrespective of the numbers of messages to be sent.

The critical questions related to SMS marketing, from the perspective of marketing leaders, are as follows:

* Whether the platform provided by service providers is secure?

* Is the delivery being carried out using reliable channels?

* Are the message delivery service levels measurable and is the client data is confidential?

* Is there enough transparency e.g. online delivery and real time reports?

SMS Marketing using client application software:

A flexible and high throughput service using client software is the solution to marketing men woes. Companies such as ValueFirst Messaging Private Limited (www.vfirst.com) provide highly effective SMS Service solution to marketing companies, advertising agencies to carry out in-house SMS marketing campaigns. In fact, such companies provide an end-to-end service using its software products for complete marketing activities which can be done on SMS.

The user is able to devise his own campaign and carry it out without any involvement of the service provider. The client software application products are installed at client premises and campaigns are carried out with clients getting on-line MIS. Delivery reports which are provided by the service provider help the user in cleaning-up his data-base. It is easier to do small campaigns, run contests and advertising agencies can use the platform to carry out simultaneous campaigns for multiple-customers.

SMS limitations: While SMS users enjoy several benefits like sending an instant, personal message which is always read, there are limitations associated with SMS. It is nothing more than 160 characters of text, devoid of sound, pictures and special effects of traditional print media. In spite of the limitations SMS has its own specific uses which help marketers give specific information to their customers. Incoming SMS on 4-digit or 5-digit short codes in conjunction with conventional media has become the most effective tool for generating leads and carrying out contests for promoting brands.

About the Author:

This article has been contributed by (Mr.) Vijay Shukla, Country Head, ValueFirst Messaging India (http://www.vfirst.com). Vijay has over 10 years of industry experience of management consulting and mobile data services. He can be contacted at vijayshukla@yahoo.com

Posted on Jun 21st, 2007

Create professional quality documents with Microsoft Word by taking advantage of the software’s exceptional formatting tools.

The cardinal rule of word processing should be followed by students and businessmen alike: “Key in your data first, format last.”

Why? Efficiency – by typing up your 30 page research paper, 20 page report or two page memo, you will be able to focus on content without the distraction of stopping, highlighting (selecting your text) and applying formatting on the fly. Since Microsoft Word is designed with powerful formatting tools, you will be able to apply paragraph and character formats later with simple clicks of your mouse. Save valuable time by sticking to this rule.

Formatting when used in this context is simply the appearance of your text, e.g., font size, bold, italics, underlines, color etc.

The following guide should be followed AFTER you’ve completed your deliverable, e.g., essay, thesis paper, or letter. Once it’s been proof read, you can then take full advantage of MS Word’s formatting tools.

Let’ say that you plan on placing emphasis on specific words throughout your document using an underline, making the word(s) bold or a different color. MS Word will speed up this task by enabling you to format once and then to reapply it over again with a click of your mouse. You can use Format Painter on the Standard toolbar to apply text formatting and some basic graphics formatting, such as borders and fills. Note If you don’t see the Standard toolbar (Standard toolbar: A toolbar that performs some of the most common tasks in a Microsoft Office application, such as opening, saving, and printing files.), on the View menu, point to Toolbars, and then click Standard.
1. Select the text or graphic that has the formatting that you want to copy.
2. On the Standard toolbar, click Format Painter . The pointer changes to a paintbrush icon. To apply formatting to more than one block of text or graphic, double-click Format Painter.
3. Click the text or graphic that you want to format.

If you’re creating a lengthy document, e.g., term paper, thesis or newsletter you may want to incorporate Word styles. A style is a set of formatting characteristics that you can apply to text, tables (table: One or more rows of cells commonly used to display numbers and other items for quick reference and analysis. Items in a table are organized into rows and columns.), and lists in your document to quickly change their appearance. When you apply a style, you apply a whole group of formats in one simple task. For example, instead of taking three separate steps to format your title as 16 pt, Arial, and center-aligned, you can achieve the same result in one step by applying the Title style. The following are the types of styles you can create and apply:
1. A paragraph style controls all aspects of a paragraph’s appearance, such as text alignment, tab stops, line spacing, and borders, and it can include character formatting.
2. A character style affects selected text within a paragraph, such as the font and size of text, and bold and italic formats. If the Styles and Formatting task pane (task pane: A window within an Office application that provides commonly used commands. Its location and small size allow you to use these commands while still working on your files.) is not open, click Styles and Formatting on the Formatting toolbar (toolbar: A bar with buttons and options that you use to carry out commands. To display a toolbar, click Customize on the Tools menu, and then click the Toolbars tab.).
1. In the Styles and Formatting task pane, click New Style.
2. In the Name box, type a name for the style (style: A combination of formatting characteristics, such as font, font size, and indentation, that you name and store as a set. When you apply a style, all of the formatting instructions in that style are applied at one time.)
3. In the Style type box, click Paragraph, Character, Table, or List to specify the kind of style you are creating.
4. Select the options that you want, or click Format to see more options.
By utilizing styles throughout your document, you will be able to create professional indexes or a table of contents (TOC) more effectively. The biggest benefit of applying styles in your document is consistency. Main topics, headings all the way down to sub-topics will have identical formats. Moreover, your table of contents will become dynamic, i.e., if you add or delete pages to your document, the TOC can update with the click of the mouse without having to manually renumber your pages.

Anthony M. Magno, president of MMC, Inc., has 10+ years experience developing and implementing successful corporate learning, leadership and development programs. Learn about getting a Free Needs Analysis at: http://www.MagnoConsulting.com Anthony can be reached at 949.350.2872 (e-mail: amm@magnoconsulting.com)

Posted on Jun 20th, 2007

We have already talked about the importance of Java Technologies at “Oracle E-Business Suite Customization: New Directions”. Not only for Oracle Company itself, but also for the Oracle E-Business customers, whose investments must be preserved. Now we present tools and frameworks, you will use if you intend to develop in Java:

• Java Language Itself: is an object oriented language, so if you are not used with this paradigm, we strongly advice you to study this already established paradigm. To develop in Java you will use a lot of standards and libraries, they are known by its name, J2ME, J2SE and J2EE, to portable, standard and enterprise applications respectively;

• JDeveloper: is an integrated development environment (IDE) built in Java for Java development. It is complete considering the development life cycle, so you can model, code, debug, test and deploy. It is prepared for Web, XML, Web Services, SQL, J2EE and Oracle ADF development. Provide built-in features for open sources tools and frameworks, such as Struts, Ant, JUnit and CVS. According to Oracle, JDeveloper is the tool of choice for Forms, Reports and Designer customers because it carries a similar development model.

• Struts: is a java framework considered a de facto standard to build web applications. Struts is a solution to organize what was happing when people used Java Servlets and JSP freely. Struts implements the MVC (Model / View / Controller) pattern, so you might separate business logic (Model) from web application flow of control (Controller) and JSP/html code (View).

• J2EE: is an architecture to define standards to solve enterprise level problems, like persistence, scalability, availability, security, distributed computing, etc. This standard should be followed by application server vendors, so a J2EE application would run on any J2EE application server complaint, like Oracle OC4J (OAS), IBM WebSphere, BEA WebLogic, JBoss, etc. It is not a simple architecture to solve a simple problem. Get ready to study and understand the complexity of enterprise programming (we will deal with this matter on others papers to help you).

• EJB: is a J2EE standard to define components to write business logic at the server side (Session Beans), to define a domain layer to access data (Entity Beans) and to deal with asynchronous and queuing messages (Message Driven Beans). The last EJB standard release (the 3.0), not commonly used yet, became much easier to develop with. The previous one (the 2.0 and 2.1) should be used with a series of design patterns to solve common problems, what make the code not so easy to program and understand. The first one (the 1.0 and 1.1) was useless to enterprise level development; it did not implement even a one to many relationship.

• Oracle ADF: according to Oracle, ADF is an application development framework design to simplify J2EE development and bring productivity and ease of use of Oracle forms to the J2EE platform. ADF with JDeveloper is the best choice for Oracle E-Business Suite, because Oracle made this environment familiar to Oracle Forms, Reports and Designer developers.

Next papers we go deeper about J2EE and Oracle E-Business Suite Development.

If you need help, give us a call: 1-866-528-0577, 1-630-961-5918, help@albaspectrum.com

Andrew is technical consultant at Alba Spectrum Technologies ( http://www.albaspectrum.com ) - Microsoft Business Solutions Great Plains, Navision, Axapta MS CRM, Oracle Financials and IBM Lotus Domino Partner, serving corporate customers in the following industries: Aerospace & Defense, Medical & Healthcare, Distribution & Logistics, Hospitality, Banking & Finance, Wholesale & Retail, Chemicals, Oil & Gas, Placement & Recruiting, Advertising & Publishing, Textile, Pharmaceutical, Non-Profit, Beverages, Conglomerates, Apparels, Durables, Manufacturing and having locations in multiple states and internationally. We are serving USA Nationwide: Chicago, Houston, Dallas, San Francisco, Miami, Denver, New York, Boston, Los Angeles, San Diego, Atlanta, Phoenix, Minneapolis

Posted on Jun 19th, 2007

You probably have heard about the new directions of Oracle concern on Java and J2EE Technology. Oracle has announced the commitment with Java and also kept the “traditional development tools” community happy, promising they will continue to invest on them. But at the same time, Oracle recommends to their E-Business customers the following strategies (have a look at the Oracle Statement of Direction at http://www.oracle.com/technology/products/forms/pdf/10g/ToolsSOD.pdf):

• Move from client-server to the Web

• Upgrade to the latest versions

• Interoperate with Java/J2EE

• Develop new modules using JDeveloper

It’s clear that Oracle is aligning everything to Java and also recommending its customers to do just the same. So, it becomes very important to the customers to also adhere to the same technology. This will guarantee its investments at the long run. If you consider that Java Technology is the choice of many IT companies, like IBM, Sun, and Oracle itself, and also that the market is recognizing (maketshare, downloads, highest growth) its benefits, this will be a good movement.

It does not mean you need to change everything to Java: it is just a recommendation that the new modules could be done using Java. Oracle E-Business will run Forms for a long time. Oracle itself has not converted the entire E-Business itself to Java, and this will probably take a long time. Remember, they still have PeopleSoft, JDEdwards, Retek and now Siebel, a recent agreement on acquisition. They will “fuse” all in one architecture call “Fusion”.

Well, if your company has not written any application in Java yet, it is time to start. The next articles will focus on this technology, its principles and, mainly, the strategy the E-Business customers should take. If you need help, give us a call: 1-866-528-0577, 1-630-961-5918, help@albaspectrum.com

Andrew is technical consultant at Alba Spectrum Technologies ( http://www.albaspectrum.com ) - Microsoft Business Solutions Great Plains, Navision, Axapta MS CRM, Oracle Financials and IBM Lotus Domino Partner, serving corporate customers in the following industries: Aerospace & Defense, Medical & Healthcare, Distribution & Logistics, Hospitality, Banking & Finance, Wholesale & Retail, Chemicals, Oil & Gas, Placement & Recruiting, Advertising & Publishing, Textile, Pharmaceutical, Non-Profit, Beverages, Conglomerates, Apparels, Durables, Manufacturing and having locations in multiple states and internationally. We are serving USA Nationwide: CA, IL, NY, FL, AZ, CO, TX, WI, WA, MI, MA, MO, LA, NM, MN, Europe: Germany, France, Belgium, Poland, Russia, Middle East (Egypt, Saudi Arabia, OAE, Bahrain), Asia: China, Australia, New Zealand, Oceania, South & Central America: Mexico, Peru, Brazil, Venezuela, Columbia, Ecuador, Chili, Paraguay, Uruguay, Argentina, Dominican Republic, Puerto Rico

Posted on Jun 18th, 2007

Microsoft Business Solutions Great Plains is now renamed into Microsoft Dynamics GP, as well as Microsoft Navision into Microsoft Dynamics NAV, Microsoft Axapta into Microsoft Dynamics AX, Microsoft Solomon into Microsoft Dynamics SL and Microsoft CRM into Microsoft Dynamcis CRM. Of course Microsoft has the plan to select the most marketing attractive name for its ERP products, however the other side of the renaming may be in the plan to move Project Green forward. At the final phase of Project Green Microsoft might drop GP, NAV, AX, SL and CRM extensions and make final version name to be simply Microsoft Dynamics. Interesting fact that Great Plains Software, which was the first candidate for Microsoft ERP software acquisition had Great Plains Dynamics brand, so probably Microsoft is plying retrospection card, in any case Microsoft technically owns GPS Dynamics brand anyway. In this small article we will give our retro view on Great Plains Dynamics customization, development and reporting.

1. Great Plains Dexterity – this is proprietary programming language and technology, designed back to earlier 1990th with the goal to build platform independent graphical accounting package – Great Plains Dynamics. Dexterity itself is written in C (following popular those days hope – that C will provide platform independence). You can install Dexterity from Great Plains 7.5 CD #2. Obviously it requires a lot of learning / training, but it allows your custom piece be seamlessly integrated with Great Plains interface. Nowadays, however – and this is a good thing – most of Great Plains installations are moved to SQL Server – so you can use Dexterity for custom forms drawing only and make the buttons run SQL stored procedures.

2. Modifier with VBA. Unfortunately you have to purchase this tool and get new registration keys. If you are familiar with VBA customization for Access or Excel – you have all the skills needed – then you just attach your scripts to the buttons and fields on GP forms (you can modify these forms with Modifier – or just tough them with it).

3. Continuum for VB/Delphi – we don’t recommend this tool, because it is using Great Plains as OLE server – and you probably don’t want to be trapped by old technology.

4. Crystal Reports. Great Plains has its own ReportWriter, but its functionality is limited – you can’t do cross modules reports (you can’t link Sales and Purchasing tables in one report, for example). So – you use Crystal. The GP tables structure is in Tools->Resource Description->Tables … and you are in control. Feel free to create views and stored procs directly in the companies databases – it doesn’t hurt the Dexterity engine

5. Direct web publishing from Great Plains SQL databases, using Visual Studio.net and your language of choice (VB.Net, C#, J#, etc). Plus you probably want to have several SQL stored procs.

6. eConnect – this tool is type of SDK with VB.net samples. It allows you to feed data into Great Plains and was primarily created for eCommerce developers.

7. Integration Manager – it is end-user tool for importing to GP, however if end-user meets some challenges in the integration – you as a developer can help with VBA scripts. IM validates 100% of business logic and uses hidden GP forms – so it maybe slow for big on-going integrations, when you have thousands records per day – in this case you rescue to eConnect or directly to SQL store procedures.

8. SQL queries - as a developer you have unlimited potential in using SQL queries, because the database in MS SQL Server. Be careful, it is kind of surgery - you can easily delete all your customers, by executing: DELETE RM00101 Happy customizing! if you want us to do the job - give us a call 1-866-528-0577! help@albaspectrum.com

Andrew Karasev is Chief Technology Officer in Alba Spectrum Technologies – USA nationwide Microsoft CRM, Microsoft Great Plains customization company, serving clients in Chicago, Boston, San Francisco, Seattle, Minneapolis, Los Angeles, Houston, Dallas, Atlanta, and Miami and having locations in multiple states and internationally ( http://www.albaspectrum.com ), he is Dexterity, SQL, VB/C#.Net, Crystal Reports and Microsoft CRM SDK developer.

Posted on Jun 17th, 2007

There are numerous types of parameters but some of the most useful to know are:

1: Selecting All or One item from a list
and
2: Selecting The Year and Month or Year, Month and Week.

The more you plan your reporting system, the less reports you need to write and the less you need to modify. One reporitng system I was recently involved with had 15 reports but only 5 reports were required. With parameter driven reporting, you can allow the user to generate their information filtered, sorted or visible in many different ways.

1: Selecting All or one item from a list First Create a Dataset to return @Parameter1:
SELECT DISTINCT Name FROM Organisations
UNION
SELECT ‘.All’ AS Name
ORDER BY 1

Then the main dataset add to the front IF @Parameter = ‘.All’ SELECT And after the SQL, add ELSE and repeat the SQL

2: Selecting The Year and Month or Year, Month and Week. For This a set of Datasets where one is filtered by the other, provides the final Parameters for your main dataset.

Dataset Called Year
select distinct year(date) as Year from vTimes
order by 1 desc
Note how this is sorted in descending order. This is so the latest Year ( parameter) is displayed.
Also note, is one of the columns returned in another dataset is also Year, then Reporting services will return an error. Change the name of the dataset to fix this. E.g. Year1

Dataset Called Month
select distinct month(date) as Month from vTimes
where year(date) = @Year
order by 1 desc

Dataset called Week
select distinct datepart(wk,date) as Week
from vTimes
where year(date) = @StartYear and month(date) = @StartMonth
order by 1 desc

Note how we used the datepart and not the datename function as this doesn’t sort the Weeks properly.

Tom Bizannes
(B.Business Accounting and Information Technology)
Tom is a Microsoft Certified Professional Specialising in Database and Reporting Systems
http://www.smartbiz.com.au

Posted on Jun 16th, 2007

Microsoft Dynamics CRM is the new name for Microsoft Business Solutions CRM. Other Microsoft ERP product were renamed as well: Microsoft Great Plains into Microsoft Dynamics GP, Microsoft Navision into Microsoft Dynamics NAV, Microsoft Axapta into Microsoft Dynamics AX, Microsoft Solomon into Microsoft Dynamics SL. In this small article we are giving our retrospective review of Microsoft Dynamics CRM customization tools and options.

If you are software developer, database administrator or web designer who is asked: how do we customize Microsoft CRM – we are giving you directions in this article.

1. Microsoft CRM SDK – this is software development kit with C# and partly VB.net code samples – it is supported by Microsoft Business Solutions technical support. It is based on web service calls, if you are C# .NET developer – you are excellently positioned to do this type of customizations. This is the preferred modification scenario and this should be easily upgradeable customization. VB.Net examples will be available soon.

2. Legacy SQL Data integration. This is also easy and safe. If you have SQL database, sitting on the same or linked SQL Server – you can create ASPX .Net application and simply integrate it into CRM. You can place it on the navigation bar or menu in isv.config – please refer to MS CRM SDK

3. Legacy ASP integration – this is somewhat more sophisticated. You have to deploy HTTP handler to be a middle party between CRM which is .Net based and ASP which is legacy IIS. The trick is – you have to have INI file with security settings to penetrate into MS CRM with proper credentials, calling web service.

4. Microsoft Exchange Programming. Microsoft CRM has Exchange connector – which moves CRM incoming email to MS if it has GUID in its subject. You can alter this logic (for instance - move email to CRM if it doesn’t have GUID but it is from the sender who is contact or account in MS CRM). Refer to MS Exchange SDK onsyncsave event handling. Then simply apply some MS CRM SDK programming - you need some COM+ objects creation and VB programming experience.

5. Direct SQL touch – in #4 above I described you the scenario with MS Exchange handlers – this would be ideal world if MS CRM SDK does the job. But – in real world this is not always true – you have to do direct flags correction in CRM database (like making Activity closed, moving email attachments/octet streams, etc). This is not supported by MBS technical support – but you can rescue to this technique if you have to get job done.

6. MS CRM Customization tool – this is rather end-user tool and we don’t describe it here – read the manual. We’ve described above the options to use when this tool doesn’t do the job

7. Crystal Reports - feel free to create Crystal report - tables and views structure is self explanatory. Try to avoid the temptation to create your own SQL view or stored procedure in MS CRM database, instead - create custom database and place your view and stored proc in it.

Happy implementing, customizing and modifying! If you want us to do the job - give us a call 1-866-528-0577! help@albaspectrum.com

Andrew Karasev is Chief Technology Officer at Alba Spectrum Technologies ( http://www.albaspectrum.com ) - Microsoft Business Solutions Great Plains, Navision, Axapta MS CRM, Oracle Financials and IBM Lotus Domino Partner, serving corporate customers in the following industries: Aerospace & Defense, Medical & Healthcare, Distribution & Logistics, Hospitality, Banking & Finance, Wholesale & Retail, Chemicals, Oil & Gas, Placement & Recruiting, Advertising & Publishing, Textile, Pharmaceutical, Non-Profit, Beverages, Conglomerates, Apparels, Durables, Manufacturing and having locations in multiple states and internationally. We are serving USA Nationwide: CA, IL, NY, FL, AZ, CO, TX, WI, WA, MI, MA, MO, LA, NM, MN, Europe: Germany, France, Belgium, Poland, Russia, Middle East (Egypt, Saudi Arabia, OAE, Bahrain), Asia: China, Australia, New Zealand, Oceania, South & Central America: Mexico, Peru, Brazil, Venezuela, Columbia, Ecuador, Chili, Paraguay, Uruguay, Argentina, Dominican Republic, Puerto Rico

Posted on Jun 15th, 2007

Somewhere in the mid 90’s, my company, Brook Group, underwent rapid growth as it converted from being an advertising and design firm to a web services firm. We were running 3 shifts at the time and we only had one manager: me. Coming from a design background, I had a lot of (sometimes very difficult) lessons to learn about technology projects and managing folks who make technology products.

I imagined a way for me to post tasks for each employee without knowing HTML, to make managing the late night folks easier. My programmer created it and the lightbulb went on. Wouldn’t it be great if we could create a series of these types of widgets to allow any user to post content to the web without knowing HTML? And that is when Tacklebox, my enterprise content management system, was born.

I have survived building 4 versions of Tacklebox, the latest of which was actually launched. I learned these lessons the hard way and I want to share them with anyone tackling that sort of project. Think of this as a fundamental, practical, elementary guide to building a software product.

1. Patience is a Virtue. If you are starting from scratch and you are not well-funded, and you plan on bootstrapping the development effort, realize that patience is a virtue.

2. Know thyself. This means know your limitations. If you don’t know how to do software product development and you are bootstrapping and starting from scratch, get people involved who do know how to do software development, product development, project management, product pricing, product marketing… You be the entrepreneur, idea person, but don’t try to head everything up yourself; you will fail out of the gate.

3. Make Something. Don’t go to Venture Capital folks or potential partners with a flip chart and a pitch that sounds something like, "This is going to be really cool"… VCs want to see a working product. And do not go to VCs too early; you might lose your chance to get funded because you haven’t done your homework.

4. Plan. Plan. Plan. Start the project with a plan. It can have basic elements like what this product is going to fix, what is the business problem, who is the audience, and on several levels, why it will be better than the competition? And yes, you do have competition.

5. Get the Right People involved. Whether you’re hiring or looking for a partner, two guys in a garage are not the best choice for building a software product. Sometimes those two guys in a garage dress up good. Maybe they move into an office space and start a company like real grownups. You had better make sure you can identify the difference between a real company and two guys in a garage that just graduated. Ask them if they have business insurance, errors and omissions insurance; ask them for Service Level Agreements. Talk to them about CMM levels.

6. Don’t use proprietary anything to build your software. You’ll be tied to that proprietary code forever, or it will cost you a small fortune to have it removed from your source code.

7. Independents are independent. They will hold you hostage one day. Don’t hire independents to build your product. If you hire a team to build your product, focus on hiring "company people."

8. 95% of your success will come from hiring the right and best people, 5% by training people. Don’t hire to train, unless you have the best and brightest around to do the training, and a multi-year commitment from those who are getting trained that they will stick around!

9. A caution about partnering. You don’t want your intellectual capital sitting in the brain of a contractor. Make sure that whatever you do, you own your source code outright. You need to hire the right people and make sure that their knowledge — your capital — stays at home.

10. Always learn from your mistakes. Sometimes we joke about when we are going to stop learning lessons the hard way. Probably never, but make sure you learn each mistake, so you don’t repeat it. And just when you think it’s safe, new ones will be right around the corner.

Kara Brook is the President and CEO of Brook Group, a Web site development firm near Washington, DC. Recognizing the need for user-friendly Web site management, she conceived Tacklebox, one of the industry’s most exciting new content management systems. More articles by this author can be found at Usability and Branding.

- Next »