Archive for the ‘Uncategorized’ Category

Open Source Software for Business: The Foundation

Friday, October 28th, 2005

In a previous article, Is Open Source Right for You, I considered the pros and cons of open source. Now let’s look at a few open source projects that are worth a try. Many notable open source projects exist, so it’s difficult to pick just a few. In this article, I’ll concentrate on projects that will have an immediate impact on your business. Some of these you’ve heard of and some may be new to you.Of course, I can’t talk about open source without talking the Linux operating system. Linux has made a huge impact on the open source revolution. The Linux kernel is a UNIX-type system, is open source, and is the basis for many Linux distributions including RedHat, SuSE, and Debian. Linux is a leader in the server platform market and is used to host many commercial web servers due to its up-time performance. Its use in the home, office, and embedded systems is increasing too.

Do you find yourself waiting for MS Internet Explorer to start-up? Firefox is a slimmed-down web browser intended to provide the web-browsing features you want, without the stuff you don’t need. It’s lean and quick. The best feature, in my opinion, is tabbed browsing – each webpage can be viewed within a tab of the same window. Say goodbye to windows cluttering your desktop. You can download extensions for additional features too. My favorite extension augments the tabbed browsing allowing you to save a session: all currently open tabs are saved within one bookmark to easily recreate that browsing session. [Linux, Windows, MAC OS]

For desktop software that doesn’t skimp on functionality, OpenOffice desktop suite includes a word processor, spreadsheet, presentation, and drawing packages. It’s free and runs on multiple operating systems! And don’t worry about your old documents; the suite supports common document formats including Microsoft Word and Excel. Handy features include the ability to publish your work in PDF format without additional software. By the way, OpenOffice is the basis for Sun’s StarOffice product. [Linux, Windows, MAC OS]

Need to collaborate with your colleagues? You might try creating a TWiki website. A TWiki allows users to browse, edit, and add/delete pages using their web browser. Any type of file can be uploaded and linked into the content. It includes password protection and change tracking so nothing is ever lost. Need a bulletin board to store/share knowledge? Share ideas? Track meeting action items? TWiki can do all this and more! Extensions are available including calendar support, action item tracker, drawing and spreadsheet tools, and different “skins”. Llamawerx uses its internal TWiki extensively. [Linux, Windows, Mac OS]

Want to seamlessly share customer contact information within your organization? eGroupWare is a pluggable framework for hosting web-based applications like a group calendar, address book, email, to-do list, shared internet bookmarks, and the list continues. An access control list provides flexible support for access control and information sharing. [Any OS; Java]

For a full featured relational database, I suggest you checkout PostgreSQL. Implementation started at the University of California at Berkeley a decade ago. It has strong SQL support, is full featured, provides a powerful query engine, and can be extended by the user. While not as popular as MySQL, in many regards, it’s technically superior. If you need transactions, views, stored procedures, and triggers, but don’t want to invest in Oracle, give PostgreSQL a try. [Linux, Windows, MAC OS]

These days, almost everyone has a website and Apache powers more websites than any other. First released in 1995, it became the #1 web server on the internet – a position it holds to this day – within a year. Like many open source tools, extensibility is the name of the game. Using third-party modules, administrators can customize the web-server to meet their needs: LDAP, authentication, Tomcat, RSS, SSL and more. Apache is so well respected that Apple even bundles a version with OS X. [Linux, Windows, MAC OS]

For deploying J2EE applications, use the #1 choice among Java developers: JBoss Application Server. JBoss provides functionality for deploying large-scale web applications; functionality such as transactions, clustering, security, persistence, cache, and remote method invocation. Recently, JBoss received $10M in venture capital funding! [Any OS; Java]

Hopefully, I’ve sketched an open source foundation for you. Like any plan, the devil is in the details, but there’s plenty of help out there. Start by visiting the links in this article. Then download and install one. Try Firefox – it’s probably the easiest. Run it next to IE and I think you’ll be impressed. As you gain confidence, try some of the others. Remember, you can take it one step at a time. Renovate, don’t try to build a brand new house.

Cultivating ideas: helping your ideas take root

Friday, 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?

Friday, 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

Friday, 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

Tuesday, 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.