Archive for April, 2006

BEA Challenges Adobe for ColdFusion Realm

BlueDragon, BEA WebLogic® Edition was officially announced today providing the first serious challenge to Adobe’s stranglehold on the server market for CFML. As usual, the article is written in Presspeak (“service-oriented architectures”, “help meet evolving business needs”, “leverage, modernize and extend legacy applications”) that makes it sound impressive but is as nebulous as Paris Hilton’s acting career.

However, the entry of BEA into the CFML Server market as a competitor to Adobe ColdFusion MX, I believe, says that the ColdFusion market is more lucrative, pervasive, and stable than people might first think.

Now all we need is an OSI CFML parser that can be integrated into JBoss. One can only dream of the day when we can deploy legacy ColdFusion apps without shelling out a dime for the platform.

I swear I’m not a nerd!!!

I’m shocked. I knew I was a ‘geek’ but would never describe myself as a ‘nerd’…. sigh

I am nerdier than 82% of all people. Are you nerdier? Click here to find out!

Connecting ColdFusion to SQL Server Express

I’ve had SQL Server 2005 Express Edition installed for a while just to play around with, but I recently decided to try to develop a ColdFusion application that uses it as the backend – for fun. It turned out not to be fun, but with a little searching and tinkering with some settings, I was able to get ColdFusion 7 to successfully connect to it.

These instructions assume that you have the Microsoft SQL Server Management Studio Express installed to manage these tasks.

1. Open the SQL Server Studio

2. Click on the Registered Servers button in the toolbar

RegisteredServers-709855-png.jpg

3. Open the Configuration Manager
ConfigManager-764825-png.jpg

4. If needed, enable the TCP/IP protocol under SQL Server Configuration Manager > SQL Server 2005 Network Configurations > Protocols for SQLEXPRESS
EnableTCPIP-714206-png.jpg

5. Now double-click the TCP/IP protocol to view the properties. Click on the IP Addresses tab and make sure that the TCP Port is set to 1433 for every IP type.
TCPIPProperties-704436-png.jpg

6. Open the Properties page for your server instance
ServerProperties-739292-png.jpg

7. Go to the Security item and make sure that you have Mixed Mode enabled. After making sure all of the these settings are in place, you should now restart your server.
MixedMode-700059-png.jpg

8. Once the server restarts, create a new login to be used by ColdFusion, give it a SQL Server Authentication password, and set the default database to the one you’re setting up.
ColdFusionUser-735879-png.jpg

9. Now it’s time to set up the ColdFusion datasource. Download the Microsoft SQL Server 2005 JDBC Driver and place the resultant sqljdbc.jar file in the WEB-INF\cfusion\lib directory, or wherever your cfusion\lib directory is located.

10. Log in to your ColdFusion Administrator and create a new datasource with the same name as the database you want to connect to. Make the datasource type ‘other’.

11. Fill in the fields with the following properties
JDBC URL: jdbc:sqlserver://{server name}\sqlexpress:1433
Driver Class: com.microsoft.sqlserver.jdbc.SQLServerDriver
Driver Name: SQL Server 2005 JDBC

Then enter in the username and password you created in step 8 into the appropriate fields. This should get you a successful ColdFusion datasource using SQL Server Express.

Reference Articles
Login failed … not associated with a trusted SQL server connection
SQL Server Express 2005, Finally Installed

Installing Corporate VoIP: Part I

I recently completed a long process of installing and configuring hardware and software to support a VoIP solution for a company of about 20 people. Now that it’s complete, I feel it’s my duty, perhaps even my responsibility, to share the process with others who might be considering the same thing.

I’ll start with some basic terms that I had to learn and understand before I felt capable to actually picking a VoIP provider and hardware/software. Each term below is linked to the Wikipedia definition (if it exists, otherwise a link to related website) for the technology. Please do further reading on your own if needed.

VoIP – Voice Over IP
PBX – Private Branch Exchange
SIP – Session Initiation Protocol
IAX2 – Inter-Asterisk eXchange protocol
Asterisk – Software PBX solution
POTS – Plain old telephpone service
RJ45 – Eight pin telephone cable
DID – Direct inward dialing number

Picking a VoIP Provider

This is the first step in the process and the most important. I met with five (5) different vendors and ended up learning different things from each person/group who came in to meet with me. Since this is a new technology, it’s important to meet with as many local providers that you can locate because some of them will try to blow smoke up your ass, others will be new players in the market and have limited knowledge, while others might be experienced pros with multiple clients successfully running VoIP solutions.

Out of the five vendors I talked with, only one spoke with knowledge and confidence during our meeting and ended up providing us with the best quote. When speaking with vendors you want to make sure that they completely understand your needs. Here’s some basic things to consider when starting down the VoIP path.

  1. Do you have qualified local providers? In essence, they’re re-sellers of national providers, but you’ll get better customer service.
  2. How many phone numbers will you need?
  3. Do you want to have POTS lines as backup (in case of power failure, or for fax machines)? How many?
  4. Do you want to buy and configure your own PBX hardware or have the VoIP provider manage that service?
  5. Do you need unlimited long distance on all of your lines, or just specific ones (e.g. customer support)?
  6. How many call paths will the provider give you on each DID line?
  7. Do any local providers support the IAX2 protocol or just the SIP protocol?

Talk to your provider in depth about what your company needs and then ask them to provide you with a detailed plan about how they would set up the system. This is the best way to weed out the hacks from the pros.

To Own Or Not To Own?

Are you going to buy and maintain your own PBX? This is a very important question you need to consider before going to any vendor, and there are many issues to consider before arriving at an answer?

  1. Does your company have a secure network?
  2. Is anyone at your company capable of learning the Asterisk software?
  3. If needed, can your run new ethernet cabling required for the phones?
  4. Is someone at your company an expert at network administration?
  5. How much Internet bandwidth do you get in your office location? Plan on using a solid 768k upstream to handle the voice packets.

If you didn’t blink at any of these questions, then you most likely will be able to handle running your own PBX. If some of those questions looked like Greek, you might consider letting your VoIP provider handle the administration of your PBX.

Even if you don’t host your own PBX, many VoIP providers now provide an easy-to-use Web interface to your PBX so you can customize features such as call-forwarding, call waiting, hold music, auto attendant messages, conferce calls, voice mail, etc.

Cost of Service

How much cost savings do you get from VoIP instead of POTS? The savings can undoubtedly be substantial, and can pay for the installation and maintenance of the hardware within a few months and at most a couple of years. From all of the vendors I talked to, here’s an average of the costs involved in VoIP.

  1. Unlimited VoIP lines: $53/month/line
  2. Metered VoIP lines: $11.50/month/line
  3. Metered usage rate: $0.029/minute
  4. POTS lines: $21.50/month/line

Now, let’s compare those costs to what a traditional PBX cost structure might be. I’m even going to be very liberal in the monthly costs.

  1. Unlimited POTS lines: $90/month/line
  2. Metered POTS lines: $21.50/month/line
  3. Metered usage rate: $0.17/minute

Just in line maintenance costs, you can save up to $37/month/line, which is huge. In addition, you can save up to 15 cents per minute on usage. Just take a wild guess at your monthly phone usage for your company and make a quick calculation on your savings. I think you’ll be impressed. It’s well known how much money a VoIP solution can save a company, but the one lingering doubt that many companies harbor is Quality of Service. I’ll touch on that in a later part, but I’ll just hint that QoS may depend more on you than the VoIP provider, and can easily be improved if there are issues.

Summary: Part I

So far I’ve covered the basic issues involved with VoIP solutions, and none of them are simple. If there is a short list of things I want you to remember from this article, they are:

  1. This is a new technology, so be prepared for growing pains
  2. Many providers are still learning themselves, so look for the ones who know the most
  3. A good level of technical knowledge will be very helpful when making decisions

Lastly, don’t be afraid to ask as many questions as you need before feeling comfortable with a VoIP provider. If you feel that they can’t answer your questions, or are leading you down a path that you don’t want to go, walk away and move on to someone who will help you install the system that is right for you.. not for them.

Part II

Flock Browser

I’ve been using the Flock Browser on and off for several months, and just recently downloaded the 0.5 release. It’s much more stable (as it should be with a new release) and the addition of features likes Flickr integration, Yahoo maps, Shelf (quick note and URL repository) and other upgrades makes it a much more usable experience when I’m browsing for pleasure.

Several companies and individuals have attempted to make creating blog entries and photo sharing a seamless process, and they have come close, but no one has achieved it just yet. I think Flock has the promise to reach the summit before others, but only time will tell.

I will still use Firefox the majority of the time because Flock is still in its infancy, but it holds great promise for making web browsing truly an interactive experience and provide simple to use tools for the “We” Web.