Dan Mackey On ColdFusion Development

ColdFusion, Java, .NET, AJAX, DHTML development and general programming. Daniel is owner and Administrator of CFTagStore.com and works for an Application Development Company in Ireland called Digital Crew. His interests cover all areas of programming in multiple languages with a particular interest in Internet Technologies.

All Articles tagged : Tools
2008-01-10 09:50:00.0

FeedDemon is now free. I'm happy and dismayed at the same time

I was checking my RSS feeds (using a paid version of FeedDemon) and noticed on Nick Bradbury's blog that FeedDemon (and all newsGators non-enterprise RSS products) are being released free.

While I appreciate why they are doing it, something inside me felt disappointed. Why? Cause I paid for quality software and feel like our exclusive little club is letting in free members ha ha Its hard to explain, maybe I am just paranoid. Along with HomeSite (originally from Nick also), FeedDemon is one of my top apps to keep me productive. If I lose it, it will impact my productivity.

This leads onto why I might lose it.  What if their enterprise plan does not work out? Will they start putting ads in the software? Will they discontinue the product and concentrate on the online readers? I hope not. At least with FeedDemon on Windows I know that I get all my feeds right away and not whenever the main server decides it has new feeds. Also, I have authenticated feeds that dont get synchronised online. I dont want to use an online reader.

If their plan does not work out, I will gladly pay for FeedDemon as a stand alone commercial product again. Its that good.

Now that my concerns are voiced, I must go into why it may be a good thing.

Finding valuable feeds is hard. The logic of giving out FeedDemon for free will give a bigger user base, which will give a bigger field of data to NewsGator, which in turn will suggest better feeds for me. I dont buy into the whole "I am afraid of my privacy" argument most people seem to be offering. The data they are accumulating and analysing does not in any way identify you as a person. It identifys a feed you subscribed to and other aggragated data.

I trust Nick and while he is still on board at NewsGator, I am confident that my privacy is respected.

I have always recommended FeedDemon as the best Windows RSS reader and will continue to do so as a free product. Coupled with the online tools, RSS has never been easier to consume. The iphone version of NewsGator online is my most used app and the fact it synchronises with my 2 desktop copies of FeedDemon (Work and home) means I am always up to date!

Anybody know how this will affect TopStyle? Will we see a free version of that tool aswell?

PS: Nick, if your reading this, can you blog more about your actual development of the product? My favourite posts from you are the ones where you give an insight into the programming, the algorithms and issues you face and your thinking when it comes to user interfaces.

Tags: RSS | Tools
Add to your del.icio.us    DIGG This!    Technorati Cosmos Link    Post to Reddit    Add to your Furl    Add to Blinklist
Comments [6] - Leave a comment
2007-11-15 12:36:00.0

Allow people to IM you from your blog - no software required!

As I have posted before, Live Support is something that interests me greatly and I have been constantly on the look out for a good solution.

A new addition to the Windows Live Messenger family of products is the Windows Live Messenger Control for blogs and websites. It allows anybody to contact you directly from your blog and you receive the message in your standard Windows Live Messenger client.

You can dictate if only registered WLM users or annonymous visitors can contact you and there are currently 2 modes of displaying the control. You can opt for a simple 16x16 icon that shows your status or a mini web based messenger client.

I chose the little icon on the right of my blog.

I also allow annonymous people to contact me so click it and say hello ;-)

Chat With Me Live

The good thing about the annonymous chat is that it is protected with a captcha so hinder abuse.

I am planning on using this on Teamwork Project Manager both on the website and inside the actual application to help people get their questions answered if they have any.

To get started, visit the Windows Live Messenger Control website, log in using your Passport account, choose the widget type you want, grab the one line snippet of code that is generated for you and place it on your website or blog. If you would like annonymous people to contact you, you have to click the settings tab and allow this.

Add to your del.icio.us    DIGG This!    Technorati Cosmos Link    Post to Reddit    Add to your Furl    Add to Blinklist
Comments [3] - Leave a comment
2007-08-02 16:46:00.0

Navicat 8 for MySQL Released

We have just upgraded our copies of the fantastic Navicat 8 in the office from version 7 and first impressions have left me disappointed.

The upgrade process was fast and easy and I had it installed and activated within minutes. The most important thing to me and the bit I was looking forward to was the code-completion when writing queries. Sometimes you have so many field names you cant remember the exact name of all of them so the code-completion would be a God send. Its there alright but not as good as I thought it would be.

For instance, its not really automatic while typing. To activate it for SQL statements/functions etc you have to press CTRL+SPACE and even then it only gives you the name of the function, not the syntax like Visual Studios Intellisense gives you.

Another problem is when your dealing with named tables. You get a blank code-completion window when you try and use p.fieldName from a query detailed as "FROM pages AS p" It does work if you use pages.fieldName in other words, you have to call the table name explicitly.

Another problem I found after using it literally 3 minutes, was a hard crash (and repeating exception window) after I clicked new stored procedure and then cancelled it without doing anything else. I am guessing the app was developed with Delphi as I have seen the same type of problem with Homesite.

One of the most annoying things I found was that they no longer open objects in the tree using a single click. You have to double-click databases/tables etc to open them which when your used to 3 generations of the app over the last 4 years, its quite annoying. I thought surely they would have a Preferences dialog but unfortunately this was not an option in here although they do have quite a few customisable sections.

The good part was that it imported all my settings from Version 7. The app is also slower to start up which is one of the things I loved with Version 7 - It was so fast. Accessing databases online is also slower for some reason.

Overall, there is no real benefit to upgrading to Version 8 so I would hold off until an update is released before shelling out more cash for a product that doesnt necessarily improve anything.

Find Out More : Navicat 8 Official Website

Tags: MySQL | Reviews | Tools
Add to your del.icio.us    DIGG This!    Technorati Cosmos Link    Post to Reddit    Add to your Furl    Add to Blinklist
Comments [4] - Leave a comment
2007-01-19 13:16:00.0

Free Remote Help Applications

Frequently we get alot of requests for help from customers and friends in the ColdFusion Community. Alot of the time their applications are behind firewalls and the problem cant be recreated our side so remote desktop type applications really are a huge help and time saver.

I used to use MS Messenger Remote Assistance but lately it is so unreliable and for months now I havent been able to connect to a single remote user.

Co-Pilot (www.copilot.com) is good but I found 2 free alternatives today that may help other companies in the same boat as us.

I am sure there are more out there and would love to hear other peoples suggestions and solutions.

I will post up my experiences with both these apps in time.

Tags: Tools
Add to your del.icio.us    DIGG This!    Technorati Cosmos Link    Post to Reddit    Add to your Furl    Add to Blinklist
Comments [8] - Leave a comment
2006-09-11 23:12:00.0

Scriptable Browser Tag To Send Free O2.ie SMS Texts

Since we set up CFTagStore.com 4 years ago, I have tried many different things to get free SMS text alerts on our sales. With on average 4 sales a day multiplied by 365 at 13 cent per text, we were literally spending too much (189.80 Euro) on something as trivial but necessary as text alerts on sales.

If all 3 people who are involved in the running of CFTagStore.com were to pay for the SMS alerts, we would be 569.40 Euro out of pocket. (Over 4 years - 2277.60 Euro)

The SMS alerts are important to us as sometimes an extra human intervention is needed to successfully deliver the soft products we sell so we used to be shelling that much cash out by sending an email to our O2.ie accounts and using their (rather unreliable and expensive) email-to-text alert service which at the time cost 13 cent per message.

One day, the O2 email-to-text service went down and didnt return for 2 weeks. I wrote numerous emails to O2 explaining that we were paying alot for the service and it was important and got nothing but canned-responses back from a moron who didnt really understand the problem. The answer back? It is working. My answer back? Its not. Return canned-response? We will be upgrading our site in the future and will take your feedback into account.

It was then I said I would write my own app to use the free 500 texts (as it was at the time) to send the alerts to our phones for free. I had done a bit of work on an application that would log into eBay and scrape some information from a users logged in account. The way I went about is was a quick-n-dirty Windows application that used the Microsoft Browser Control coupled with the MS Scripting Control that was called using ColdFusion CFEXECUTE (as a custom tag) and capturing the STDOUT to return to CF. Another nice thing is that even though the core app is a Windows executable, there is no form as such so on the server, you actually never see anything running.

The application was flexible and you loaded it using a host of scripts (either VBScript or Javascript syntax was supported) which let me script a user travelling and clicking through a website. To the host website, it appeared that a user was genuinely using the site so none of the sites could block it in any way. This worked perfectly for years until O2 upgraded (and broke) their site. The security cert they implemented threw a modal security dialog on Internet Explorer (the basis of the Web Browser control I was using) which froze my app. There was no way of using sendKeys or anything to click OK.

Today I managed to tweak the registry on my machine to force the suppression of the dialog and so resumed my free texts through O2. Unfortunately, I lost my source code to the original app so wrote a quick-and-dirty version this evening specifically targeted at O2 and free texts so it doesnt have the generic scripting of the previous version but it does the job!

If anybody wants the code or have a situation in which they may benefit from a scriptable browsing scenario, just email me. I have often thought of adapting the core of the app to help in unit testing etc. Seeing as I lost my original code, on the side at night or in the evenings I am thinking of starting from scratch again and making the solution generic with possibly a wizard for creating the scripts.

Add to your del.icio.us    DIGG This!    Technorati Cosmos Link    Post to Reddit    Add to your Furl    Add to Blinklist
Comments [3] - Leave a comment
2006-09-11 16:05:00.0

RSS Feed Counter

For a while now, I was interested in knowing how many actual subscribers I had to my blog. While my Blog stats showed me general stats, it did not show me a count of the RSS subscribers. Luckily, Peter had the same idea and wrote some handy code which I used as a basis for my tracking.

I added in a few extra fields so capture the user_agent and remote_host fields aswell as the last date the feed was consumed.

I reckoned Peters way was fairly clever and was simple to implement.

The basis is to use CFHEADER to send a message of Moved Permanently so the users agent would update their feed which infact tacked on a UID to identify them.

By checking to see if the UID was present on subsequent calls, I could update the other fields.

Below is a shot of the code and it is short and should make alot of sense.

I also have a field in the database which marks whether the subscriber is an aggregator or an RSS Reader. I am going to use this to place badges on my blog showing the number of individual subscribers like FeedBurner

If nothing else, this little excerise has thought me to look into the ON DUPLICATE KEY UPDATE directive in SQL and the ability to chain a number of updates together.

Add to your del.icio.us    DIGG This!    Technorati Cosmos Link    Post to Reddit    Add to your Furl    Add to Blinklist
Comments [1] - Leave a comment
2006-07-29 12:38:00.0

ColdFusion And AJAX Organizational Chart - Beta

About 2 weeks ago before I started my , I worked on a quick proof-of-concept ColdFusion and Ajax enabled Organizational Chart widget.

My main aim was to create a widget that would render in modern browsers and would allow the adding of nodes to the chart using AJAX so the whole page didnt have to be reloaded.

I faced some interesting problems:

  • I wanted to use pure CSS and DIVs but soon found out this was impossible for the moment so had to settle for a mix of CSS and normal TABLE elements.
  • The logic in finding the current parent to append new elements to needed quite a bit of thought to work on all browsers.
  • Deleting nodes a few levels up had to take sub-nodes into consideration.
  • The user-interface had to be very simple and in context with each node.

I decided on the following:

  • I created a custom tag which runs using recursion. This allows the whole chart to be generated using one line of code and you can choose which node to start rendering from.
  • Because the chart is built using a recursive custom tag and I can choose any start node, implementing the AJAX was easy, easy easy.... All I have to do when an add node icon is clicked, the parent node id is passed using AJAX and the custom tag is called with a start ID of the passed parent and the returned HTML is rendered without reloading the page.
  • I used the extremely handy CFSAVECONTENT to render the HTML from the custom tag and simply return the resultant variable. This made the code really easy, flexible and readable.

The main way to use the tag is:

  • To create a node, you click the Add Node icon from the parent node.
  • To edit a node, you double-click an existing node.
  • To delete a node, you click the Delete Node icon on the node to be deleted.

The editing of nodes is not complete. I envisage this to dynamically create a text area in the node and update the TEXT of the node on the fly using . Another option in the future would be to pop-up a menu that allows you to change the TYPE of node.

Things I would like to see added:

  • Panning of a VIEW area for large charts
  • Ability to change each nodes type
  • Add the ability to render each node with rounded corners using the brilliant NiftyCude library.
  • Ability to export the chart in a variety of formats : graphics or PDF

The funny thing is, I developed this 2 weeks ago on one of my 3 hour after-work learning stints where I generally read new things through blogs or try proof-of-concept ideas that may help in future projects. About 2 days ago, I got an email from someone through who had an idea for a CFOrgChart type tag/application with the same ideas I had planned.

Funny how things happen...

Now the fun part...try the demo : demos/cforgchart/index.cfm

PS: Please use with care and dont ruin it for other people by deleting all nodes. This is only a demo and I havent performed any checking or locking of nodes yet.

PPS: Can someone (Karl :-) ) check this on Safari and report back?

Add to your del.icio.us    DIGG This!    Technorati Cosmos Link    Post to Reddit    Add to your Furl    Add to Blinklist
Comments [12] - Leave a comment
2006-07-21 11:55:00.0

GotAPI.com - Fantastic Syntax and Programming Reference

Just stumbled accross this great new site yesterday and already am beginning to refer to it as I need a function reference.

The site is : http://www.gotapi.com/

Its amazingly user friendly and as you click a topic in the center, a nice new tab appears on the top of the page allowing you to quickly jump between languages.

The loading of the functions etc is fast and the search is good! There is some great programming and thought gone into this site! I wish I thought of doing something like this.....

Tags: Tools | Useful Tips
Add to your del.icio.us    DIGG This!    Technorati Cosmos Link    Post to Reddit    Add to your Furl    Add to Blinklist
Comments [0] - Leave a comment
2006-06-22 18:16:00.0

Signed Up For Ether

I have been keeping an eye on this new start-up called Ether and it officially launched today.

I was a bit pesimistic about the availability to us as we are based in Ireland but was delighted to see that Ireland is a supported country.

Ether allows you to set a price for your knowledge by phone. You can setup many different Listings and charge either by the minute or by the hour. Ether will take care of the financials and take a 15% cut on top of what you earn.

You can create as many Listings as you wish, each listing is like a topic such as ColdFusion Help, DHTML or anything you feel you have to offer others.

People who need help can call a toll free number and enter the extension of the person they require services from and the call is forwarded free to any number you set up. For example you could have your work, mobile (cell) or home number and can set available hours. (In my case the number is 1-888-MY-ETHER ext. 01660537 and I also have a Call Me button on the right hand side of this page.

Although the service call is free, the person requesting your service must have money in their account to pay for your time. They also have a model for documents etc

I can really see potential in this company. We  take alot of calls on support unpaid and a service like this would be ideal if you could white-label it or something and actually get paid for the time you spend fixing peoples code or helping them with a particular part of their application.

I can definately see us using this more and more for support requests and maybe if an API is released build an inhouse application around their service.

Tags: Tools
Add to your del.icio.us    DIGG This!    Technorati Cosmos Link    Post to Reddit    Add to your Furl    Add to Blinklist
Comments [0] - Leave a comment
2006-06-20 11:45:00.0

Most Useful ColdFusion Custom Tag - UDI

One of the great tools Peter wrote, UDI - Ultimate Database Interface is something we use in every ColdFusion project we work on here in Digital Crew. From Website Administrations, to Intranet applications.

UDI has 2 specific parts to it :

  • Design Time View
    This view gives you a wizard based view of your database allowing you to create a View/Edit/Delete interface for any of your database tables.

    Its amazingly simple yet powerful. The wizard pulls in all the fields in your database (MySQL, MSSQL or MSAccess) and allows you to define what type of data is contained in the field and allows you to choose a specific interface to manage the data. This could be a Date Selector, URL, Textbox, text input, duel-select, drop-down based on another table, image (with image selecting tools) etc

    With 5 minutes of clicking and building, you can create a spreadsheet type view of your database tables.
  • Runtime View
    The runtime view is the actual view you use to view, edit and delete data. This is broken into 2 panes. The top pane gives a paged grid with summary records and the bottom pane contains the generated form holding all the different types of controls per field. You can double-click a record in the View Pane and the data for that record is loaded into an easy to use form for editing.

The whole package is so easy to use and literally saves us days of extra work. Gone are the days of hand coding hundreds of admin pages for editing data. Now we just click, point and define our data. The rest is handled. Also, the component only uses one code base and auto generates the required pages for calling the component.

With over 65 internal projects using the component and more than 150+ 3rd party developers using the component around the world, UDI has literally become a must-have tool!

You can view the component on CFTagStore.com and order it for $100. Bulk licensing is available and also a demo to try before you buy! I guarantee you wont be disappointed!

Add to your del.icio.us    DIGG This!    Technorati Cosmos Link    Post to Reddit    Add to your Furl    Add to Blinklist
Comments [2] - Leave a comment
2006-06-08 13:38:00.0

ColdFusion Mutltiple File Upload

Peter has outdone himself yet again on his work on our Flash based ColdFusion multiple file upload control we decided to write.

We had one concern while developing this product and that was the look and feel of the product and to build in from the start all the features developers would need while using it themselves. We work well as a team and together we made a list of features we wanted to include and call it version 1.

One of the aims of this product is to show the current progress and speed of each file being uploaded. Our last ColdFusion based multiple file upload control used an activeX control and gave a progress bar which changed as each file went up only showing the overall progress but the new control uses a progress bar for each file and also an overall progress bar.

Its a thing of beauty to watch work and you can find out more at CFTopper where Peter has written a post and uploaded a screenshot.

Add to your del.icio.us    DIGG This!    Technorati Cosmos Link    Post to Reddit    Add to your Furl    Add to Blinklist
Comments [2] - Leave a comment
2006-05-22 16:14:00.0

CFImageResizer - Preview

Over the weekend I was looking through my old posts and spotted my post about the cool Flickr Image Resizing Flash widget and stumbled upon Googles new GMail Contact photo editor and it got me side-tracked into developing our own widget.

There are many many times where an online easy-to-use image cropping tool would be handy for both us and our clients.

Using the X Javascript Library, I got enough functionality complete in a few hours to show a screenshot. I am going to make this robust, easy to use and useful, possibly interfacing with Java through ColdFusion <CFOBJECT> to do the actual image cropping. The only snag is it will be JPG and PNG only :-(


Add to your del.icio.us    DIGG This!    Technorati Cosmos Link    Post to Reddit    Add to your Furl    Add to Blinklist
Comments [2] - Leave a comment
2006-05-17 21:04:00.0

Google Web Toolkit Released....

Google have released their Widget Library to help developers make Web 2.0 applications faster and easier.

The toolkit is the standard Google kit used to make GMail, Google Groups etc

Plenty of online demos. First impression is that they look very basic but as you play with them and start thinking how you would do it, you begin to realise the power of them.


May look into this toolkit for an upcoming Web 2.0 app Peter and myself are planning...

The fact that they are cross-browser with no loss of functionality is the best bit. They also have a nice tool that allows you to write your AJAX apps in Java and they have a tool that runs through and converts your code to cross-browser compatible DHTML.

Add to your del.icio.us    DIGG This!    Technorati Cosmos Link    Post to Reddit    Add to your Furl    Add to Blinklist
Comments [0] - Leave a comment