Today is a good day to code

I Finally Found a Real-World Use For AJAX

Posted: December 31st, 1969 | Author: | Filed under: JavaScript, Programming, Uncategorized | Tags: , , | No Comments »

I Finally Found a Real-World Use For AJAX

Picture of Irv Owens Web DeveloperI'm working on this project now that makes heavy use of standard javascript, Flash, ColdFusion, and HTML. The project is using the TCallFrame javascript function to control the flash movie. Because of the nature of the project, the timing between the movie refresh calls makes using a refreshing iFrame not possible for the text information that I need to display. Likewise, the text needs to be displayed using complicated styles and colors, controlled by ColdFusion components that Flash can't handle easily.

So I was faced with a dilemma. I couldn't refresh an iFrame without throwing the timing of the TCallFrame request, combined with some javascript cookie writing, I didn't write the original application, and Flash remoting calls. Basically, nothing should happen until the cookie is written, which it doesn't, most of the time.

It eventually dawned on me, not only that the application needed to be strengthened with some type of cookie listener at the very least, and a small-scale rewrite at the most, but that I only really needed the application to think that there was no iFrame refresh, but an AJAX call using an invisible iFrame could work.

So I began working on it and it evolved into a two-part system. On one hand, the div that contained the text to be returned from the ColdFusion components needed to be continuously refreshed, which I found out after struggling with another timing issue. Eventually I realized that the variable that needed to be set in my parent window was empty at the time of the screen refresh because the iFrame hadn't finished loading yet.

So what I had to have happen was for the iFrame to make a javascript function call to the parent once the variable was written. Once I had that accomplished it was easy to have the checkboxes that called the TCallFrame javascript call the function to refresh the iFrame. It worked wonderfully, but unfortunately it still caused a timing issue with the main movie. It delayed the writing of the cookie by a hair. Still it was cool to see, that I had an actual use for AJAX.

I have actually found other uses for it, but none as clear cut as that. Flash just wasn't flexible enough. I'm not reversing myself, I still think that Flash should be most developers' first choice when it comes to remoting, but in a pinch AJAX is allright!


Ruby on Rails

Posted: December 31st, 1969 | Author: | Filed under: ColdFusion, Programming, Uncategorized | Tags: , | No Comments »

Ruby on Rails

Picture of Irv Owens Web DeveloperI'm definately suffering from infatuation with another web development language. I'm hesitant to call it love yet because I have been burned so many times before, but I think I love Ruby on Rails on first sight.

For a fully object oriented framework, Ruby on Rails is downright easy. Easier than easy. It also sports a very clean syntax similar to Python in its readability, and the fact that it does almost all database stuff for you is killer. I can see excellent applications for Ruby in prototypes, and perhaps web applications. I still think it needs to be used in enterprise, but it is holding up under some pretty heavy loads right now. I'll be working with it more in the coming days and weeks, as I am very curious as to how it will compare with ColdFusion.

For years I have thought that ColdFusion couldn't be beat for “Rapid Application Development.” But here is an application plus framework that beats it as far as time to market, but also does it in a completely OO way. I have been working to develop my own framework for a couple of days now, and I think that I'll start trying to mimic Rails' functionality for ColdFusion. But the reflection, etc… I don't know if I am up to the task of that.

The other nagging question about Ruby on Rails is how customizable it is as far as if you really want to get down to the nitty gritty. It does a lot of cool high-level stuff for you as far as the database interaction is concerned, but as far as delivering views that comply with XHTML Strict, and ECMA Script standards, I don't know. If I find myself having to rebuild all of the views from scratch it wouldn't be too bad, but I'd rather not.

One other really nice thing out of the many nice things about Ruby on Rails is that it creates nice search engine safe URLs for you, from the start. It truly seems that this language was made to be the web developer's language. It is so young now that to compare it to ColdFusion is almost heresy, but I find myself doing it.

Ruby on Rails


Microsoft IE Developer Toolbar

Posted: December 31st, 1969 | Author: | Filed under: JavaScript, Programming, Uncategorized | Tags: , , | No Comments »

Microsoft IE Developer Toolbar

Picture of Irv Owens Web DeveloperI didn't even know about this and it has been out for about a month. Microsoft has heard the cries from web developers used to using Firefox's developer toolbar extension. While it is often pretty easy to validate your pages using Firefox, see how your block level elements are behaving, and look at the DOM of your page using the Firefox extension, it has been almost impossible with the awful lack of tools for Internet Explorer. They have finally addressed this.

The new IE Developer Toolbar has almost everything that its Firefox adversary has, except for the strong javascript debugger. This is very upsetting especially considering the lame debugging that is built into IE today, but with the relative dearth of tools for internet explorer, anything is welcome.

I have found the toolbar to be extremely useful. The DOM inspector is wonderful in that it highlights the selected item if visible to indicate for which item you are viewing properties. If you have to build applications or websites using Internet Explorer at work, I hope you are designing for Firefox at home, no… I guess you always have to design for Internet Explorer, then you will love the new toolbar. I'd suggest that you download it and install it right away.

IE Developer Toolbar


MySpace.com Switches From ColdFusion to Blue Dragon

Posted: December 31st, 1969 | Author: | Filed under: ColdFusion, Microsoft, Programming, Uncategorized | Tags: , , | 1 Comment »

MySpace.com Switches From ColdFusion to Blue Dragon

Picture of Irv Owens Web DeveloperWhen MySpace decided to stop using ColdFusion recently, many ColdFusion developers felt somewhat betrayed by the change. Many even suggested that it wasn't the best engineered solution. By that they were hinting that by using fusebox, no one has said which version, and ColdFusion 4.5 / 5 they weren't working with the best that Macromedia had to offer.

New Atlanta claims in their press release that using the exact same code, MySpace was able to reduce their CPU usage by 50% under heavy load. They also claim that this result could not be duplicated with ColdFusion MX. I believe both of these claims. Most ColdFusion developers are loathe to admit it, but Microsoft has a pretty good thing going with C# right now. The ASP.net framework is decent, it performs extremely well in every test I have seen, so I am not suprised that by using ADO.net and ASP.net they were seeing gains like this. The biggest problem with any scripting or programming language comes down to the drivers when using an external resource. Web development is no different. When your database connection pool reaches it's limit, it just can't create any more connections and requests get queued. There is no way around this except to get better database drivers. I have seen JDBC fail miserably time and time again, especially with SQL Server 2000 in this area. One of the biggest causes of that 100% CPU utilization seems to be in the JDBC driver when the database doesn't respond in a timely fashion. I don't know what causes it, but it happens when I am working with a complicated dataset. It isn't even that the memory usage is too high and the server is thrashing, the CPU just goes to max and starts refusing connections. The only solution to this is to kill and restart the JRun instance. After that it behaves well again until it crashes.

In all fariness to Java / J2EE, I have only experienced these issues while working with ColdFusion Enterprise on Windows based systems, this doesn't seem to happen on Linux, at least in my experience. Since MySpace was so heavily invested in both ColdFusion and Windows hardware, I guess they had no choice but to use New Atlanta's Blue Dragon. Still, what most programmers have to realize is that at the end of the day, it is the tool that delivers the best that will be used. No matter what we feel about Microsoft, ASP.net is fast and stable in it's newest iteration. One of the advantages to ASP.net is that it automatically fixes it's memory leaks. This is something that Macromedia desperately needs to build into JRun. ColdFusion is sometimes slow and is often buggy when dealing with some of it's advanced features. Experienced CF developers know how to deal with most of this so it doesn't come into play very often, and I'd bet that with higher quality Microsoft SQL Server JDBC drivers, and the application of good design patterns and reusable CFCs they could have gotten better results out of the CFMX server. But as the CEO of New Atlanta said in his blog, to rewrite all the code to take advantage of components, invocation, and var typed variables is beside the point. They made the decision that would best serve their business. If their code was reusable or not is immaterial after the fact.

Still, I find ColdFusion's performance to be reasonable. I wouldn't call JSP / ColdFusion a speed demon any day, with light load, PHP blows it away with 10 users on it, but once you scale that up to 100,000 users concurrently, then Java starts to shine. Since Microsoft shamelessly copied Java with C# and improved on it, it is no suprise that ASP.net performs as well as it does since it has native OS support in Windows Server. No one uses ColdFusion because it is the fastest from the execution standpoint, they use it because it is the fastest language to develop in.

Another interesting point would be if Microsoft were to acquire New Atlanta in order to integrate ColdFusion support directly into IIS. This would give Macromedia / Adobe some competition and force them to fix some of the issues they have let languish in CF. It wouldn't be too suprising a move since they are seriously evaluating building PHP support directly into IIS. I'll bet that it wasn't even that tough for New Atlanta to port their J2EE version of ColdFusion over to ASP.net due to it's support for C# and Microsoft's Java source to C# source conversion tools. It, of course required some optimization, I'm sure, but I'll bet it is smokin'. Maybe I'll download it and try it.

New Atlanta
New Atlanta CEO's blog
House of Fusion MySpace Conversion Discussion


Adobe ColdFusion MX?

Posted: December 31st, 1969 | Author: | Filed under: JavaScript, Programming, Uncategorized | Tags: , , | No Comments »

Adobe ColdFusion MX?

Picture of Irv Owens Web DeveloperNow, I am almost never one to stand in the way of business progress, however this doesn't seem to be a good day for application developers. There are those who believe that with more capital, everything gets better, but this developer is not one of those people. Does Adobe have better marketing than Macromedia? Arguably, no they don't. Has Macromedia done a great job of marketing ColdFusion? No, they haven't. Will a combined Macromedia and Adobe do a better job than an unacquired Macromedia? Probably not. I don't think that Adobe will put the resources that are needed behind future ColdFusion development. It is just too far away from their core business competency. So just where will ColdFusion go?

It makes sense for Adobe to sell off ColdFusion and Flex, kill Freehand, GoLive, and ImageReady, and roll Dreamweaver and Fireworks into their Creative Suite in their place. It also makes sense for them to continue Breeze development as that is well within their abilities. Flash will probably thrive under the combined company as should RoboHelp, etc…

I think that if Microsoft is paying attention, and I believe they are, it makes sense for them to acquire ColdFusion from Adobe and combine it, Flex, and XAML into one ubiquitous language. It wouldn't be too hard to map ColdFusion to XAML and vice-versa. The benefit to Microsoft is that they could phase out ASP altogether and embrace the tag-based ColdFusion as their web development language of choice. After all it is in line with their corporate vision which is apparently to let web developers make desktop applications as easily as they currently build web applications.

While I don't particularly relish the idea of Microsoft owning my current development lanugage of choice, they do know a thing or two about marketing code, and it wouldn't be difficult to have it run on top of the .net framework and Java so that it could be portable. It would of course be a little faster on the .net framework. Besides, Microsoft ColdFusion just sounds better than Adobe ColdFusion. Having used the VisualStudio beta for C#. I really like it. I could get used to this being my development environment for ColdFusion. It would also be nice for Microsoft to release a VisualWebStudio for Mac and PC centering around ColdFusion. While we are speculating, it would also be nice to have a .net framework for Mac and Linux, but this could take a while.

So, lets assume that Adobe has a clue of what they have in ColdFusion. They could begin to use it to develop their own desktop application language around Flex and the standalone Flash player. This is why Redmond's ears will be perked up today, and for the next couple of years. Adobe has interest in delivering 3D over the web, and Flash makes a good vehicle for this. It would be possible to either expand the Flash player into a Flash runtime and use ColdFusion as the language to create all sorts of juicy applications that spanned the web and the desktop. They would then be in a position to deliver a rapid development environment for desktop applications and would compete squarely with Java and Microsoft in this space, albeit with a much better interface aestetic.

I hope the latter is what will happen. I belive that competition in all aspects of technology are good for consumers and the overall business. Still, either way ColdFusion has either a very bright future, or a very convoluted future. I find it interesting that none of the analysts looking at this acquisition are looking at ColdFusion. I guess that is because it isn't the primary business driver for Macromedia, and Adobe is all about graphics, which is my primary concern.

There is a third option, and one which looks really good to me. It is possible that Adobe will simply allow ColdFusion to languish and eventually the product in that form will atrophy and die. This would be bad, but there is an open source movement for an OSS version of ColdFusion. It would be sweet to see this because it would become more robust, more object oriented, and a lot faster. It would also be more secure because of all the eyes on the code. ColdFusion could become an underground hit, much the way that PHP has been getting a lot of attention recently.

Enter Apple. Has anyone been paying attention to the Apple Widgets in the new Tiger? Does anyone get how important this is? Web developers can create really sexy looking desktop applications as widgets using JavaScript and CSS. This has massive implications as there is already a significant installed base of JavaScript developers, and many of them happen to be pretty good at CSS. JavaScript has been seeing a revival of late and I expect that it will continue. Soon delivering cool applications over the web to Mac users will be easier than it is to learn C# and do it for Microsoft users. Enterprises will feel good about building enterprise applications that use these widgets to communicate with Java applications on the back end. Many people are switching to the Macintosh because they feel more secure running Linux than they do Windows, and this is another reason for businesses to embrace the Mac, although many of them don't realize it yet.

All of this will marginalize the need for PC users to upgrade to Longhorn. Microsoft already is going to have a tough sell to businesses based on the stagnation of hardware sales and the poor business case for upgrading. Most large organizations are still running Windows 2000, and they are going to tell them that they have to upgrade every system company wide in order to run this? If they can get away with it, I'd expect most organizations to upgrade to Macintoshes because of their lighter IT demands and more granular controls over user access.

Microsoft has to get XAML right, and it makes sense for them to buy their only real competition which is ColdFusion, especially now that it is owned by an ally who is almost incapable of understanding it, or its fanatical developer base (of which I am proud to be a part). They would probably let Microsoft have it for a song, and ultimately ColdFusion would be a more robust language with wider appeal. This would be a good thing. But Microsoft really needs to get their act together today if they hope to sell even one copy of Longhorn Server. If CF were bundled in the IIS package with this, I would most certainly upgrade to it. I think that most developers who don't have an irrational hatred of Microsoft would too, if it were a serious effort to make both CF and IIS better. My major gripe with Microsoft is that they make consistently boneheaded business decisions, missing the boat entirely in some places, and jumping out with an idea that is ten years ahead of its time in others. I don't hate them for obscure philosophical reasons, in fact I don't hate them at all, I just think they aren't getting the best out of their products or their developer community, and aren't offering their customers what they want.


Google Sitemaps

Posted: December 31st, 1969 | Author: | Filed under: ColdFusion, Google, Programming, Uncategorized | Tags: , , | No Comments »

Google Sitemaps

Picture of Irv Owens Web DeveloperAnother couple of projects I started working on was getting a properly configured robots.txt, going, and to use Google sitemaps. If you have a gmail account, and you are a publisher, this is a very easy way to make sure Google crawls your site properly, and knows about all your links. One of the things I have noticed about the googlebot is that it frequently hits my homepage, but it would always only index the blogs that were directly linked to from that page. It would almost never go all the way through my site to get to the oldest articles.

Here is the code from the component that I am using to generate the sitemaps file. I modified the code originally avaliable at ColdFusion based Google Sitemap Creator. It is a .cfc so it should be pretty plug and play. Of course I will change the sensitive details about my site…








http://www.owensperformance.com/index.cfm
#theDatetime#
always 1.0


http://www.owensperformance.com/resume.cfm
#theDatetime#
monthly 0.9


http://www.owensperformance.com/aboutus.cfm
#theDatetime#
monthly 0.3


http://www.owensperformance.com/blog.cfm
#theDatetime#
daily 0.8






http://www.owensperformance.com/blog_content.cfm?
articleid=#urlString.articleid#

#theDatetime#
never 0.7





file=”#ExpandPath('../sitemap.xml')#”
output=”#theXml#” nameconflict=”overwrite”>
Google Sitemaps Overview


Dirty Tricks in Web Advertising

Posted: December 31st, 1969 | Author: | Filed under: JavaScript, Programming, Uncategorized | Tags: , , | No Comments »

Dirty Tricks in Web Advertising

Picture of Irv Owens Web DeveloperContrary to what most people believe, web advertising is in its infancy. Many companies are still trying to figure out what works, and what doesn't. Their experiments are understandable, they are trying to figure out an audience that spans all known geographic, ethnic, social, economic, racial, religious, ideological, and moral boundaries, phew! That was a mouthful. There are still even newer marketing demographics and sub-demographics being created while they are trying to figure out how to target the old ones. How on Earth is a marketing / web development studio supposed to get a grip on all of it. The answer is elusive, but first I will say what won't get the job done, then we'll explore some ways to get it done.

The way advertisers won't get a grip on web niches is by utilizing dirty tricks in advertising. This includes, but is not limited to, pop-ups, pop-unders, javascript pop-ups, unwanted javascript redirections, flash pop-ups, spam email, and tacky, poorly designed banner ads. Let's look at these one at a time. There has never been a time in the history of the internet where unsolicited pop-up advertisements have been a good thing. As indicated above, this was forgivable because the internet was new, and this was a new way to reach people. Once, however, people began to hate this method of advertising, and demonstrate it by installing software to prevent pop-ups it should have stopped, right. Wrong, instead web marketers began to circuimvent users' defences and use pop-under ads, or advertisements that would come up and hide behind your top browser window, waiting until you closed your browser. Great idea right?!!? Wrong, that is like letting that one advertising exec with the awful ideas in the office get a shot at a limted run of ads. For example, he comes up with A new cola bottle with an overweight child pouring a bag of sugar with the cola label into his mouth, with a moniker reading cola making a big America even bigger. This runs in limited fashion despite the passionate pleas of every focus group it is exposed to. Cola sees a radical drop in its sales numbers, but instead promotes this guy to creative director, thereby putting the ads on billboard all over the country. Eventually Cola goes out of business, a smouldering ruin of its former greatness.

That should never happen in real life. That is the absurdity of trying to irritate users into adopting your product, it just doesn't make sense, and will end up making a company bankrupt. But it didn't stop there, the anti-pop up software got smarter, and was better able to block pop-under, and javascript pop-up windows. Now, there are always going to be an element of shadyness associated with some companies. That is as true in reality as it is on the web, hence unwanted redirections. But there were and are legitimate companies that have used, and are still using these tactics. Surely by now these companies have gotten the message that users don't want a bunch of pop-ups littering their desktops; and they have. The problem now is that in an effort to be less invasive, they have adopted CSS and Flash pop-ups. Talk about dense! People don't want to wait to get to their content. These are barriers, just like splash pages. People will click away.

Spam email is probably the most reviled thing the internet has ever produced, however companies continue to do it, and they put their (click here to remove yourelf from our list) in like 6pt. font at the bottom of their email surrounded by disclaimer information. Most users at this point aren't even looking at the garbage that comes across in their email. They either delete it immediately, or they look at the ad, remember the vendor so that they can never ever buy anything from them again.

Tacky banner ads are the least of the evils described in this article, but they can be just as distracting as pop-ups. Flashing, excessively moving or audible banner ads are no-nos. If you want people to be able to view your website at work without their bosses going nuts, you should make it look professional so that it blends in with the rest of their applications. Not draw attention to it so that they get a repromand for spending too much time on the net.

So, now that we have explored how not to advertise on the net, let's see how to advertise. When I go to Froogle


Whirlwinds of Code and Forming Design Patterns

Posted: December 31st, 1969 | Author: | Filed under: ColdFusion, Microsoft, Programming, Uncategorized | Tags: , , | No Comments »

Whirlwinds of Code and Forming Design Patterns

Picture of Irv Owens Web DeveloperOne of the biggest issues with understanding object oriented programming is getting over its associated terminology. Most developers whether they realize it or not have formed design patterns, and use them all the time. If an established developer were to look at their code, they would often see that their application was broken down into data access and storage components, display components, and the logic that allows them to successfully communicate. When asked to bring a system from one application to another, they can usually do it with little to no modification. This is the idea behind design patterns.

In an interview yesterday I realized that I had better take a more aggressive look at design patterns. Understanding the terminology may be tough, but it is an excellent way to communicate an application's business needs, especially using UML, as well as getting down to the lowest level of describing the objects that will comprise your frameworks. I have always tried to get a firm handle on design patterns, but they have largely eluded me. I have understood simple systems like breaking your code into well defined model-view-controller layers, and using messaging to communicate between layers, but I have never really been able to understand the more advanced concepts. In the interview I noticed that I was designing with some object oriented concepts by using Fusebox, even if I didn't know what to call them, but ignoring some of the more specific ones.

Programming is often like the game Dark Cloud for the PlayStation 2. For those who haven't played the game, it is a role playing game in which the player travels around their world trying to re-assemble their world, which was scattered by an evil genie. The player is provided a weapon which is pretty weak to start with, and by travelling around the world, they can gain objects which make their weapon stronger. When they get enough objects, they can merge their objects permanently into the weapon, increasing its effectiveness. They then begin the process anew, adding objects to the newly enhanced weapon until they can merge it again. When you have better weaponry, the player can gain pieces of their world more quickly and can assemble more complex worlds in shorter time. It is like this with programming. Often I feel as though code is whirling around me and once I have that “aha!” moment it merges and becomes something solid for me that enables me to take the next step. Building large applications has caused me to develop different frameworks or APIs for me to use. For example, most of my applications require search, so I have developed a pretty thorough search framework, made up of components, that can be moved with little modification. I wouldn't have known that it was that, but it is.

Today, or last night rather, I had one of those “aha!” moments, the moments we all write software for. I was finally able to put names to some of what I was doing. Now that I am beginning to understand, I can see why it would be hard for experienced object oriented developers to explain to procedural developers how to do OO design. You just begin to think differently. I can see about ten areas in which I can improve my search API / framework to make it more portable. The hardest part is finding the dragon, slaying it is easy. In other words, associating design patterns to what you are doing is hard, once you can put names to faces so to speak, the rest is simple. For a while I could never understand why people were so excited about Microsoft enabling the use of C# in SQL Server 2005. But now I can see, you can create an entire data access framework all on the database server, abstracting the underlying database and its queries from the application. It would be possible, in a web application, to completely separate the model from the controller and view layers. This has huge benefits in code maintenance because you could have any number of applications using the data access framework through web services.

What really dragged it together for me was why Java was so tough. I realized that it was tough because my mostly procedural mind was trying to write a program thinking about what each class should do instead of things like what does this class know about itself, what is it's purpose. How do the methods inside it work to help it achieve its purpose. In short I was trying to write a simple program, instead of thinking about a toolset to help me achieve my goal. With Java, you have to diagram, you have to chart or you will just get lost. Even objective-c makes more sense, with over-riding the init method for objects. These things didn't make sense before, but now I am getting it. I still have a long way to go, but I think I'll start working with Mach II, even if there is a performance hit. That is a little more OO than Fusebox, but Fusebox is a great foundation for it.

All that being said, there are still some instances where you can go too far with data encapsulization. For example if you had a table that had contact information in it. You wouldn't want to return each row, create a struct out of it, then set an iterator method to go through each struct, then each element of the structs, at least not in ColdFusion. Iterating over a query is something that the built-in elements of ColdFusion do fairly well anyway so building frameworks to disassemble a query object, then re-assemble it as a bunch of structs is probably an un-necessary layer of complexity for most applications. So like anything else, discretion is required. Now I'm ready to tackle the UML book and hopefully figure out how to use that nifty ID3 tag reader framework for Objective-C that I downloaded a while back and couldn't quite figure out how to use. I've got Macintosh applications that need to be developed.

Here are a few of the sites that helped me get to the “aha!” moment.
Macromedia exerpt from 'Design Patterns'
ColdFusion object factories, the Composition CFC
Introduction to the Mach-II framework


Safari and Standards Complicance

Posted: December 31st, 1969 | Author: | Filed under: JavaScript, Programming, Uncategorized | Tags: , , | No Comments »

Safari and Standards Compliance

Picture of Irv Owens Web DeveloperApple with Safari 2.0 has taken a major step toward standards compliance and largely are taking a leadership role in this area with its outstanding support for the Java runtime. I have heard some griping about Apple using KHTML, the default rendering technology behind the Konqueror browser for KDE, for a base, then running away with the open source once they have figured it out and not giving it back to the OSS community.

While I am extremely happy that Apple has made their browser Acid2 compliant, and they may have one of the fastest CSS rendering engines around built into the AppleWebCore. It is pretty upsetting that they would not share these advances with the developers working on KHTML so that it could also pass the Acid2 test. I can understand that some things you want to keep close to your vest for security reasons, but I can hardly believe that changes you have made to the way pages render in a browser could compromise your system integrity. This appears to be a situation in which Apple wants to be the most standards compliant platform on the market. This would be fantastic from a business standpoint since many in the scientific and mathematics communities would probably prefer to use technology that adhered to standards so as to better communicate information between offices, regions, and countries. I can understand that Apple wants to distinguish its platform from others, and I love the fact they are using standards compliance to do this, however I feel that it is to break the spirit of open source / corporate collaboration not to give something back to the KHTML community.

Speaking of Safari, I noticed a bug recently while writing some javascript for it. I have a javascript that sets the tabindex for a number of input fields, and it works properly, however in Safari it persists in scrolling the real browser scrollbar instead of the div, overflow:auto, element's scrollbar. I had noticed this way back in Safari 1.2 where if you put a flash item within a scrollable div, it would take the flash element and while scrolling lay it on top of all your other content, even if it was above or below the div. All other browsers, even IE 6, handle this properly, scrolling the div with the tabbing. This is a pretty big bug if they want to promote standards compliant web development and accessability. I'd like to see this fixed in Mac OS X 10.4.1, but after browsing the message boards elsewhere, I'd say they already have their hands full, so I am not supremely hopeful.

Microsoft is promising that its IE7 browser will be standards compliant, but just how standards compliant is really the question. I think that Microsoft has learned the error of its proprietary ways. Sure it will continue to bundle its software with everything anyone buys from them, but I don't think they will continue to cripple other products to make theirs look better. They seem to have given up on their own version of DHTML and are happy with XHTML. I noticed that their primary page even validates now. I think that it makes sense for Microsoft to go the standards route also, and with no shortage of developer feedback, they have almost no excuse not to.


ColdFusion MX 7 Licensing Issues

Posted: December 31st, 1969 | Author: | Filed under: ColdFusion, Programming, Uncategorized | Tags: , | 2 Comments »

ColdFusion MX 7 Licensing Issues

Picture of Irv Owens Web DeveloperI have been wrestling with an issue that should not be an issue that anyone should have to deal with. The licensing issues around a piece of software. The piece of software happens to be ColdFusion MX 7. The issue is that I am running it on OS X Server on a brand spanking new Xserve. I have everything installed properly, all my applications are working, and the server is operating beautifully. It should be nothing to plug in the serial number to put the finishing touches on it right? Wrong.

I have my client purchase a standard license for the “other” installation of ColdFusion, and the Mac OS X version of JRun. He proceeds to do so and sends me the serial numbers for both. I am excited because I'll finally be done with setting the server up and can get back to developing applications. I bring up the JRun administrator, put in the serial number with no problem. JRun says fully licensed 2-cpu version. I am very happy as I bring up the ColdFusion administrator to put this baby to bed. Once I bring up the admin, and get to the system information screen where I can enter the serial number I enter the number with no hesitation. The server responds that it is not accepted. Taken aback I check the number twice and have the purchasing agent fax over the list of numbers. No, the number is right. I go on a long excursion of un-installing ColdFusion, re-installing ColdFusion. Trying to put in the serial number at the beginning of the installation. That doesn't even work, it says that I already have a version installed, even when I don't. I know because I formatted my computer to make sure every vestige of ColdFusion was gone. I even installed it onto my PC putting in the standard serial number to see it work just fine. Neither myself, or the purchaser saw that to run the J2EE version of ColdFusion you must purchase the “Enterprise” license.

Let me say that again clearly so that anyone else running into this issue can find this on the web and save their time.

ColdFusion can not be installed in standard mode ever using the J2EE / “other” version.

This was bizarre to me, not because we both missed it, but instead because during the purchasing process a warning didn't come up letting him know that we couldn't use the “other” installation with the “standard” license. I know that running ColdFusion on Mac OS X Server is not supported, but they could at least let users run ColdFusion standard if they want to. When I got them on support I indicated that it appeared to be a nickel-and-dime, bait-and-switch sales operation. Buy this and then if you want it to really work, you have to buy this.

My feelings regarding this are like one would feel to a significant other who had wronged them in some way. On one hand you still love them and couldn't think of a world without them, but on the other, you wish they would go away forever. This isn't the first time I have felt that way about Macromedia. So, here is a situation where I will probably have to re-write my applications in either PHP or JSP. Macromedia, since we have bought JRun, doesn't seem interested in swapping out our standard and JRun enterprise licenses for a single ColdFusion enterprise license with the JRun license. It would be fair for us to have to throw in an extra $1,000, but another $3,000. As sweet as ColdFusion is, I'm not sure it is worth the cost. I've never had to buy it before, and I don't think I would.