Cultivating ideas: helping your ideas take root

October 14th, 2005

Ideas are like seeds. They must be planted, nurtured, and cared for. Throw in a little luck and the harvest will be sweet. If others have proposed this analogy, and I’m sure someone has, please bear with me…
Seth Godin’s great book, Survival Is Not Enough looks at companies, and the ideas that drive them, through the microscope of Darwin. Memes combine, mutate, and grow into complex mDNA structures within organizations.

Instead of evolution, what about farming? Cultivating ideas. Everyone’s familiar with farming – well everyone except those who think food magically comes from a can. Using some of Seth’s points, let’s apply a farming metaphor.

  • Plant lots of seeds. Like farming, it starts with the seeds. If you want a varied crop, plant a lot of different seeds. Ideas are the same. So unless you can foresee the future, start with a lot of ideas.
  • Space to grow. If you plant a lot of ideas, you need to give the space to grow. Competing for space requires extra energy and leads to poor yields. So when planting a lot of ideas, remember to give them space to grow.
  • Nurture carefully. This is a tough one. Too much water and the roots won’t be strong. Too little and you’ll produce a tumbleweed. It’s a balancing act and each crop is different. So strike a balance; water when dry, feed occasionally, and whatever you do, don’t over-water.
  • Pull the weeds. Before they get out of hand, pull the weeds and under performers. If you’ve nurtured an idea and it still looks like volunteer corn in your bean field, hoe it down. Pull it out. Whatever it takes get it out of there. You don’t want it competing with other ideas or worse yet – propagating.
  • Harvest when ripe. You’ve watched the idea grow into a winner. Its avoided flood, drought, and swarms of locusts. Rot can set in if it hangs on the vine too long. Pick it, ship it, profit!
  • Sow the next crop. The smell of success – or is that fresh cut hay? Time to relax, right? Congratulate yourself, bask in the glory. Wait a minute. What about next season? There’s work to be done, another crop to plant. Save your best seeds, fertilize, and sow the next crop – and don’t forget to pray for rain.

Harvesting ideas is probably as difficult as farming. Remember that all the results might not be golden, but you’ll learn from each and every one.

Is Open Source Software Right for You?

October 7th, 2005

Open source software is a growing trend, and with news that open-source project JBoss received $10 million in venture capital funding, how can you not notice? Corporations such as IBM, RedHat, Sun, and HP are all investing in open-source. The volume and breadth of projects is sometimes overwhelming; there are currently over 90,000 projects on sourceforge.net, with more being added every day.What exactly does “open source” mean? It means the user has the right to run, copy, modify, and distribute the software for “free”. “`Free’ as in `free speech,’ not as in ‘free beer’ ”, to quote the Free Software Foundation. “`Free software’ is a matter of liberty, not price.” See also, the Open Source Initiative and the Free Software site.

Proponents of open source claim its benefits include the contribution of a large base of developers; more developers (“eyes”) equates to less bugs, increased stability, and increased reliability; improvements get rolled back in; you are not tied to one vendor; and you have the ability to debug and make modifications if needed.

Opponents to open source claim that the open source model is a “bunch of hackers” just playing in their spare time. By purchasing a proprietary product, you are purchasing the expertise of their staff, are therefore getting a better product, and will also (potentially) receive support.

So, how do you decide what’s right for you? In answering this, ask yourself these questions:

  1. What type of software are you evaluating? Is it geared toward a horizontal or vertical market? Software geared toward a horizontal market, and therefore applicable in many areas, is a better fit with open source. This type of software has a broader user base, and widespread use increases value; examples are network and communication software. Software geared toward a vertical market tends to lean toward the proprietary side. This software may require more specialist skills; examples are device drivers and financial software.
  2. Does the project have “many eyes”? Look for information such as how widely-used the software is and how active the project is. Look for statistics like use and download stats, number of developers on the project, date of the last release, activity of user/developer newsgroups, and the project’s version number (a 0.5 release may not be “ready for primetime”).
  3. Do you want the ability to debug the code, or would you rather rely on the vendor for updates? When incorporating third party software into your product, do you sometimes wish you could “get inside there” and see what’s going on? Be able to debug inside their code? If so, open source may be the answer – or, if the proprietary vendor allows it, you could pay that extra money to get the source code. Do you want the ability to fix any issues you may find, or would you rather leave that up to the vendor?
  4. What level of support would you like? Do you want the ability to call someone on the phone for help? There are a number of open source tools for which support is provided, usually for a fee – for example, RedHat provides support for its distribution of Linux. However, many open source projects do not provide that type of support; they do provide user newsgroups where you can search for questions and answers and submit new questions. With proprietary software, support is usually provided for a certain period of time, with additional support for a fee.
  5. Does development of a new tool align with your business focus? If the alternative to incorporating open source software is in-house development, ask yourself if it aligns with your company’s business focus. If the tool does video compression and your company sells video processing software, then go ahead – you know what you’re doing here and can hopefully improve it to help differentiate your product. However, if at the same company, you’re looking at a tool to handle network transfer of videos – that’s a different story. Why re-invent the wheel? If you develop it in-house, but your competitor releases their product in half the time, how do you explain that?
  6. And, of course, how much do you want to pay? We can’t forget that one!

The decision to use open source software in your business is up to you. At Llamawerx, we believe the open source model is a good one and rely heavily on open source software. Other companies are doing the same; Linux is now the preferred operating system for most servers. According the opensource.org, the Weather Channel, which can serve up to 50 million pages/day, just switched from proprietary to open source software cutting its costs by 1/3 and increasing its web-processing capacity by 30%. For information on open source projects, visit www.apache.org and www.sourceforge.net.

Don’t tell me when it’s due, I know how much work there is

September 30th, 2005

How many times have you heard that from your development staff? As a developer, how many times have you said something like that? As a project manager or technical lead, you call a meeting to try and resolve these different perspectives. Many times, these meetings break down, issues remain unresolved, and team morale sinks lower. To have an effective discussion, remember these ground rules.

  1. Listen to the other person’s explanation of the problem and don’t interrupt until they finish. Until you understand the reasons behind the other person’s point, you can’t make informed decisions.
  2. Check the sarcasm at the door. All it does is undermine the discussion. You may think it provides humor, but you’re not Jay Leno. In the end, someone invariably gets hurt.
  3. Validate your understanding. After you’ve listened to the other position, try reiterating it in your own words. See if you come to agreement on the stated position.
  4. Stay cool. Getting into an argument helps no one and only serves to prolong the discussion. Take a deep breath and repeat after me, “We’re all on the same team.” Try counting to 10 and remember everyone has a different point of view.
  5. Keep an open mind. If you make assumptions about the other person’s perspective or think to yourself, “It’s just Joe”, you stop listening. Remember the first ground rule?
  6. Negotiate. If you put a stake in the ground, not only do you fail to resolve the issue, but you leave yourself backed into the corner. Instead of saying “There’s no way we can do that in 6 weeks” try stating positive alternatives. “We can complete feature x and y in 6 weeks. Feature z requires an additional 4 weeks.” On the flip side, if you’re the manager, ask what can be completed in the required time.

Customer requirements, new product deliveries, bug fixes… If you’re working in product delivery, you’re probably feeling stressed out with too much work and too little time. New demands on your overburdened schedule are likely to send you over the top. Remembering that everyone is on the same team, trying to reach the same goals is a start. Add in a few people principles and you’ll feel better about your work and your job. Combine them altogether for a more successful team. Isn’t that something that everyone wants?

Research Triangle Park #1 for Technology

September 27th, 2005

Good news for those of us with businesses in the Research Triangle Park region. According to a new study, RTP ranked #1 in the US as the most hospitable place to run a tech business. This time, it beat out regional leaders like Boston, Austin, and Fairfax County. Where did Silicon Valley rate? Number 8 – dead last in the report.Prepared by the Silicon Valley Leadership Group, the report is meant to “wake up” the Silicon Valley community to the competition they face. The report rates competitiveness in seven areas that affect business climate: the job market, housing, traffic, education, the cost of energy, health care and the business tax burden.

RTP led in two categories housing affordability and traffic congestion costs.

Large-scale data warehouse rankings

September 22nd, 2005

It looks like 2005 smashed several database records according to Winter Corp’s 2005 winners for the largest databases in the world. The big winners continue to be UNIX and Oracle, but Linux is making some serious inroads along with Microsoft Windows/SQL Server.Yahoo operates the largest commercial data warehouse with over 100 terabytes of data – and it runs on UNIX. This monster relies on the Oracle Database, Fujitsu Siemens PrimePower system, and EMC storage. But at number 6 is Amazon.com with 24 terabytes running on Linux and Oracle. The largest commercial Windows/SQL server database runs at Unisys and is #8 on the list.

If you’re looking for a really huge database, the Max Planck Institute for Meteorology runs a massive 222.8 terabyte system. Technically, it’s not a data warehouse, but in this case, size does matter. And how do they do it? Linux and Oracle!