Tuesday, December 17, 2002

Sys-Con creates developer web site
Sys-Con created a developer portal that covers Java, .NET, linux, Web Services, etc.The site is seams very similar to slash dot. developer.sys-con.com

Friday, November 08, 2002

Slashlog - open source cfmx / mysql blog
Speaking of open source, Daniel Chicayban posted to CF-Linux wednesday an announcement of his open source project slashlog 0.1. The software is designed for unix but should work ok on windows according to the web site.
XSL Tag now open source
I recently decided to make my Java CFX tag CFX_XSLT free and open source (it was previously free for non commercial use). You can get it from our XML resource page.
Back from Meet The Makers
I just got back from Meet The Makers in NYC. It was a very good conference where I met a bunch of top of the line web developers, and talked to some product vendors. I came back with a ton of new ideas.

Thursday, October 17, 2002

Tab completion in Windows 2000 One of my favorite features of unix is tab completion. You can type the first letter of a directory, and then hit tab and it will complete the rest for you. This is enabled by default on Windows XP, but on windows 2000 it isn't. Here's how you enable it. Run regedit.exe and browse to:
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\CompletionChar
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\PathCompletionChar
Set the value to the key to 09 that's hex for tab. If you only want to enable it for your user account use these keys:
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\CompletionChar
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\PathCompletionChar
I guess I don't need to upgrade to XP now! I should mention that tab completion only works within the command prompt, don't expect it to work within windows file choosers.

Wednesday, October 16, 2002

Looking for Java Blogs? There is a big list of about 40 Java Blogs. Click the java.blog logo:

Monday, October 14, 2002

How to make ColdFusion MX go to sleep
Many people have had the need for a ColdFusion page to sleep, typically between iterations of a loop. There is a tag called CFX_Sleep in the Tag Gallery, but in ColdFusion MX you don't need a CFX tag to make the current processing thread sleep using the static sleep method on the java.lang.Thread class, part of the standard java platform. Because CFMX doesn't allow us to call a static method without an object reference, we have to first use CreateObject, or CFOBJECT to get an instance of a java.lang.Thread object. We then call the Thread.sleep(long) method, which takes in the number of miliseconds to sleep for.
<cfset thread = CreateObject("java", "java.lang.Thread")>
About to sleep for 5 seconds...<cfflush>
<cfset thread.sleep(5000)>
Done sleeping.

Sunday, October 13, 2002

Uptime for Windows 2000/NT
Almost every unix distro comes with a utility called "uptime" that tells you how long your server has been running. Unfortunitly no such tool comes with windows, but there is a pretty fool proof way to determine the date you computer was last started. Type the following in to the command prompt.
net statistics server
The net command is very useful, it allows you to connect to shares, start services, send messages between computers and more. To learn more about it type:
net help
Here are some examples using the net command.

List all accounts in a domain:
net accounts /DOMAIN
Send a message to all users in the domain (a text box pops up). Replace /DOMAIN with a username to send to just one user.
net send /DOMAIN "The server is rebooting"
Start a service
net start "Service Name"
Stop a service
net stop "Service Name"

Wednesday, October 09, 2002

Bat Files to restart services
I added some batch files to the Code Samples section of the cfdev site today. The bat files can be used to restart ColdFusion 5, MX, or IIS services on Windows NT/2000/XP. Bat files are handy because you can restart multiple services with one command. You can either double click the bat file to run it, schedule it, or throw it in c:\windows\system32 and then run it from anywhere in the command prompt or (Start->Run)

Tuesday, October 08, 2002

CFC's - private works like protected

I noticed yesterday that when you use access="private" in a CFC function, inherited CFC's also have access to this function. In object oriented languages such as Java, C++, or C# this type of access is known as "protected" access. This may be a bug in CFC's, or it may just be a bug in the documentation, which states "private: available only to the component that declares the method".

Wednesday, September 25, 2002

Have you tuned your JVM on ColdFusion MX yet?

ColdFusion's move to java gives developers and system administrators a wealth of performance tuning options. This is due to the fact that the runtime for ColdFusion is now pluggable (the JVM), we don't have to rely completly on Macromedia to make performance optomizations, we can use different JVM's and lots of different JVM settings to improve the performance and scalibility of our ColdFusion Applications. This is a topic I haven't seen much discussion about yet, and I'm not sure why.

What JVM should I use?

You have lots of choices, IBM, Sun and BEA all make JVM's, each will perform differently. Which is the fastest? I couldn't tell you, it will depend on your server platform, and your application. Sun being the creator of Java, has the most popular JVM, but if you are really concerned about performance you should test with each vendor's JVM.
Here are some articles that may help make your decision (in no particular order)

Tuning Your JVM There are lots of things you can do to tune the JVM, typically there are memory settings, threading settings, and garbage collection settings. For memory settings make sure you Max heap is big enough, also set the initial heap size to be equal to the max heap size, this way all memory is allocate when the server starts up, rather than when it needs it (during a request, allocating memory is slow). Look for a file called Xusage that comes with your JVM this usually shows some of the options that you can set, also look in your JVM docs for more info. You can tune these settings just like you tune your web server or other web applications. Sun Performance tuning links

I haven't had the time to do any JVM testing on ColdFusion MX yet, but if you have I'd love to hear about your experiences email me pete@cfdev.com.

Tuesday, September 10, 2002

Easter Egg In ColdFusion MX Found!
I found the easter egg in ColdFusion MX, thanks to a hint given out on the cfguru list by a Macromedia Engineer. The Tip that he gave was:

"I think I may have made the ColdFusion MX easter egg just a little too hard to find. Here's a hint: What would the browser language preference be of the most dedicated CF developer? Then go hunting in the admin."

Tom was right, the easter egg was pretty hard to find without that hint. So now if your ready, here's how you find the easter egg:

Set your Language preference to "CFML" in IE you can do this by going to Internet Properties -> Languages -> Add -> User Defined "CFML" Then browse to Version Information link in ColdFusion MX Administrator.

Friday, August 23, 2002

Tuesday, August 20, 2002

Undocumented Query Methods in ColdFusion MX
I found some undocumented methods that you can perform on a query by using Java Reflection. The methods are summarized here:
void query.first() - jump to the beginning of a query
void query.last() - jump to the last value in a query
boolean query.isFirst() - true if we are looking at the first row
boolean query.isLast() - true if we are looking at the last row
boolean query.next() - jump to the next row
boolean query.previous() - jump to the previous row
int findColumn(String name) - get the id of a column by name
void sort(int columnId, boolean ascending) - sort by a column
int getColumnCount() - returns the number of columns
String getColumnTypeName(int columnId) - gets the data type of a column,
	this one didn't work properly when I tested it, it would return
	NUMERIC for a field that was a varchar. There is a method called
	guessColumnType that was probably used to determine it, it guessed wrong.

I have put together a web site called ColdFusion MX Un-Documentation that has some examples of how to use these features.

Sunday, August 18, 2002

Bea J-Rocket JVM was designed specifically for server applications. Jon Hall posted this to the CF-Talk mailing list with some impressive execution times when plugged into ColdFusion MX. I'm going to give it a try...

Thursday, July 18, 2002

Amazon Launches Web Services
Amazon launched a web services developer kit with examples of how to access written in Java.

Wednesday, July 10, 2002

PetStore for Web Services Released
Sun recently released and update to their J2EE example application the "Pet Store", to showcase their new Web Services support. Learn more about it here.

Thursday, June 13, 2002

CFC Web Services Site
Currently has 3 web services posted 2 charting services, and slash dot news feed. webservices.isitedesign.com

Thursday, June 06, 2002

Examining WSDL
A great article on xml.com that explains WDSL, it's origins, and its shortcomings. http://www.xml.com/pub/a/2002/05/15/ends.html
Installing ColdFusion MX and .NET on the same Server
When installing CFMX and .NET to be on the same computer, Chris White pointed out on CF-Talk today that problems often occurr when .NET is installed before ColdFusion MX. Problems can occurr in both ColdFusion and .NET. Chris recommends the following installation path:
  • Install IIS
  • Apply IIS Security Fix
  • Install ColdFusion MX
  • Install .NET Framework
eXcelon - Java C++ Data Management
I came across eXcelon today, they have some interesting products. ObjectStore is a server that can be accessed in Java or C++ as an Object Oriented Database, or as a "Data Server" (as an abstraction of your RDBMS database). They also have a XML database product called XIS, supports XQuery, etc.

Tuesday, June 04, 2002

XML Mailing Lists
I subscribed to some XML mailing lists today at lists.xml.org, xml-dev, xml-dailynews, and xml-newsletter.

Monday, June 03, 2002

Java Code Samples
Sun Released an updated and revised listing of Java Code Samples.
I've decided to try to actually start posting to this blog. So here it goes...

I'm the CTO for a company called CFDEV.COM, my responsibilities include learning technology that may be of use to our company, managing product development, and building resources for our site. I monitor, and participate in several mailing lists including:

My Company CFDEV.COM builds components for web developers, and provides free resources for web developers.

Resources include:

Products Include: I plan to use this blog to post information that I gather on the various mailing lists that I am on, as well as some news sites.

Wednesday, March 13, 2002