CFX: Feature Requests Part 3 – Everything Else

Although I was a part of several previous beta/pre-release testing versions of ColdFusion (Scorpio and Centaur) and my posts being as unpopular as they are so far, maybe it’s for the best I’m not part of Zeus [yet].  But, I’d still like to wrap up this series with a few remaining things I’d like to see brought to the tenth release of ColdFusion.

  • Facebook integration (similar to Google Maps integration only your parameters include your appID and secret key) — For those who don’t know, the work by Affinitiz on a ColdFusion SDK for FaceBook, although only in beta at the moment, is top-notch stuff… I love it!
  • Twitter integration
  • Google Calendar integration

This certainly isn’t a major thing and not even really a problem. It may not be considered best practice, but I can pass form variables directly into a CFC as such:

<cfform method="post" action="my.cfc?method=formMethod">

Best practice would have you submit to another CF file which invokes the method. I’d love to eliminate that extra step of submitting to a CF file (no reason… this is my wishlist :P) and have submitting the form data to the CFC be best practice:

<cfform method="post" component="#myCFC#" method="thisForm" optionalArgument="#formStructure.fieldName#">

When output to the browser, the form’s action would be masked with whatever the component file is, but without revealing the method (for security reasons). You could send the entire structure to the CFC’s argument or allow optional arguments from the structure as shown in the code above. Maybe it’s a tough sell, but I think it’s cool. 😉

If nothing else in this series was unpopular enough, I know this certainly will take the cake [or pie].  We have a development version of ColdFusion, but I still think the Standard edition of CF should be made free with no support from Adobe while offering a “professional edition” that’s the same thing as the Standard edition which includes paid support from Adobe.  Although there are free alternatives to ColdFusion out there, none of them are true to ColdFusion imho, adding in and making their own tweaks and adjustments along the way.  I’ve been preaching free CF w/o support for years though.

Anyhow, despite Adobe’s lackluster image lately [with Flash], ColdFusion remains an exciting, quality product and I’m looking forward to the next chapter of ColdFusion development.

CFX: Feature Requests Part 2 – New Tags & Functions

Before we get into the tags, I’d first like to mention I firmly believe SES URLs need to somehow make their way into ColdFusion.  The root of ColdFusion is making development life simple, and there is nothing simple about setting up SES URLs, particularly if you don’t know regular expressions.  I think this should be enabled/disabled at the application scope level and be a well thought out, simple process that doesn’t require IIS or Apache URL rewriting… it’s all done seamlessly in CFX.

With that said, here are some new tags I’d like to see:

  • CFTRAIL – This will leave a breadcrumb trail.  I initially thought this would be a feature that would require the use of SES URLs in the application scope, but thinking further, I think it could still be done with the developer providing parameters.
  • CFBROWSER – Web browser detection baby!

And while we’re at it lets add some parameters to CFLOCATION to allow delayed cflocating:

<CFLOCATION from="now()" delay="dd:hh:mm:ss" />

Lets also add a parameter to CFDIV to allow that loading icon to be customized:

<CFDIV icon="/images/yourAnimatedIcon.gif" />

This being ideal for loading user custom-created pages from a database, I think one of the features I would use the most is the ability to loop over cfcase in a cfswitch:

<CFSWITCH expression="#whatever#">
<cfloop query="yourQuery">
<cfcase value="#query.Column#"></cfcase>
</cfloop>
<cfdefaultcase></cfdefaultcase>
</cfswitch>

And finally some new functions I’d also like to see:

  • dollarformat() – oops!  Already exists.
  • encryptStruct()
  • encryptArray()
  • queryToArray(my.query,[dimension])

Coming next week
CFX: Feature Requests Part 3 – Everything Else

Star Wars The Old Republic vs. World of Warcraft

I’ve been listening a lot about the latest “Warcraft killer” and I just really quick wanted to put my two-cents in on the subject.  Here’s where SWTOR fits in on the list:

  • Lineage II
  • Everquest 2
  • City of Heroes/Villians/Champions (a whole saga of failure… epic!)
  • Guild Wars
  • Warhammer
  • Lord of the Rings Online
  • Age of Empires Online
  • Rift
  • Insert Latest WOW Killer Here Star Wars: The Old Republic

That’s right… every single one of the above (I’m sure I missed a few) have all been labelled as “wow killers” over the years and each and every one has suffered the exact same fate… 1-2 months of mass appeal and a near immediate drop-off of players to only accumulate a cult following at best.  Does that mean these games are all failures?  Absolutely not!  Many were very good, if not even [visually] better than WOW.  But it’s amazing to watch the scores of players crawl back to Warcraft boasting how loyal a Blizzard fan they are after the fact.  I find this unfortunate because I really wish they were “loyal Blizzard” fans, which I believe would make Warcraft even better; to have every player make up in their mind they’re playing and not ever leaving would eliminate many of the people blatantly being jerks because somewhere players made up their mind that it isn’t ok to be content with what’s sitting in front of you… and apparently because you’re a paying customer you’re somehow entitled to complain about what’s there instead of provide feedback or even take a break from the game altogether.

On the other hand, if this means I won’t see the multitudes of people complaining in trade chat for a few months, I’m all for it.

Having now played the SWOTR beta I’m just going to make this short and sweet… for everyone switching to SWTOR… see you in MOP.  Nothing different here from the above list.  Think you’re bored with wow or updates not coming fast enough for you?  SWOTR monotony makes wow monotony look like paradise!  Let the “I’m never coming back to wow” replies begin.

The one place I think SWTOR has learned from it’s predecessors is bugs.  the game is surprisingly stable and flows quite well.  The one relatively different aspect of SWTOR from other MMOGs is the strong focus on the storyline which has been touted by the developer all along.  This is really where SWOTR will lose everyone in my opinion… questing in WOW is wonderful the first time and then you can kinda go back to questing whenever you want, opting along the way for so many other things from PvP, to dungeons, raids, and even plants vs. zombies.  Most importantly you’re free to roam wherever you want from level one.  You do not have that freedom with SWTOR.  You’re kind of locked into this questing mode which actually instantly turned me off from the game.  I game to relax and constantly being told what I have to do over and over again isn’t fun for me.  Wheras in WOW, I wanna jump off a cliff I’ll do it.  Even better, I’ll mount up, fly as high as I can and get an awesome rush as I watch my body plummet to the ground.  That level of spontaneity and freedom offered in WOW simply isn’t there in SWTOR.  Is SWTOR an excellent game?  Oh absolutely.  Will it stand the test of time?  Sorry, but it’s just another icon on my constantly growing list in Windows Add/Remove programs… I’m sure I’ll forget to uninstall this one too.

On an a side note, the Diablo III beta is excellent and is truly a game to get excited about.

CFX: Feature Requests Part 1 – Addons & Frameworks

Even though I was unable to attend, Max 2011 produced some good things in the way of announcements for ColdFusion 10 (I like CFX better).  Most of what was announced though seemed like obvious steps forward of things that needed to be addressed, and not necessarily features that will make you jump out of your seat to line up and buy the product the second it’s released.  And I don’t really want to cover these features which can be easily found via Google.

Seeing as I’m not part of the alpha/beta of Zeus, what I do want to cover are some things that I believe would make CFX the product that would make you get in line and a product you can’t live without.

Today’s software and programming world is plagued with modularization. It is no longer just the language that is chosen for a project, but also the framework on which it’s built.

I am an anti-framework guy.  I honestly don’t get the buzz or see the benefit.  Inheriting someone else’s mistakes and relying on them because I’m too lazy to code the features myself isn’t a blessing for me or any of my clients.  It may save time to slap together a site in a few minutes, but does it really save time in the long run (and then have to keep that framework up-to-date… no thanks)?  Having jumped from framework to framework I’ve become a naysayer.  However, for the world of framework-lovers and the fact that ColdFusion is for everyone, lets modularize: Read more

mySQL Foreign Keys

I love database relationships, and msSQL makes them extremely easy to manipulate at will.  When i switched back to mySQL a couple of years ago I also made the switch from phpMyAdmin to Navicat and immediately didn’t understand Navicat’s way of handling relationships in mySQL… correctly called “foreign keys” for mySQL vs. msSQL “relationships”.  My copy of Ben Forta’s MySQL Crash Course didn’t dive much more than a sentence into the subject, so I thought I’d revisit mySQL relationships when I was ready to sit down and figure it out.  And although I don’t consider foreign keys/relationships absolutely necessary because I can do everything manually, they sure are nice, particularly on the larger databases where sometimes you may overlook cleaning everything up.  Having the database do a little more work vs. the language (ColdFusion or PHP in my case) is always nice too. Read more

Media Players 2012

Every year around the holidays I sit down and look at my media hardware and see if there’s anything I should upgrade and/or replace.  I thought I’d do some public brainstorming this year in case anyone else might be interested.

My Current Setup

  • We cut the cable years ago so we have no cable or satellite.  We will subscribe again if there’s ever an opportunity to pay per channel or pick the channels we subscribe to.  We don’t mind the commercials, it’s all the extra crap.
  • We have a dedicated WHS with 4TB of space, most of which is used to host the videos we stream to the TVs
  • We have two WDTVs which we use mainly to stream video from the server to the TVs, but also for streaming Netflix and TuneIn Internet Radio.
  • Our big screen in the living room has the sole Blu-Ray player in the house, but all the other TVs have a DVD player.  We rarely use media because we’ve ripped all our DVDs with makeMKV onto the server thanks to my 3-year-old breaking half the discs… this includes the Blu-Ray media, although the larger Blu-Ray files do tend to skip over the wireless when streaming so on occasion we do toss in the disc.
  • We have an antenna on the roof for reception of all the local HD channels.  This could improve… although we do get some, I’d like to get several others, but would need a different antenna for that. Read more

ColdFusion CreateODBCDate Love

I was writing a mySQL query that only included dates in the results after today, and thought I’d share a quick problem I ran into.

SELECT column1, column2
FROM table
WHERE columnDate >= NOW()

Unfortunately, the NOW() function in mySQL will not include today.  Of course if I wanted to exclude today I’d take off the =.  I’m sure there’s a way to fidget with it and get it to do what I want in mySQL, but with a simple ColdFusion function I was able to get the result I was looking for.

SELECT column1, column2
FROM table
WHERE columnDate >= <cfqueryparam value="#CreateODBCDate(now())#" cfsqltype="cf_sql_date" />

Sexy!

Trendecide’s Back!

So I made somewhat a half-assed attempt to reinvent myself for the past 5+ years on another domain that no one has any clue about.  To my own credit, I took a major shift in careers and wanted to sample some different avenues.  We’ll get to that some other time, but the fact remains this domain continues to receive more traffic than my other did to this day.

Ultimately I think it means my return to using the right tool for the right job instead of a dire loyalty to ColdFusion (I made a conscious decision to ONLY use ColdFusion for ALL my web development).  My PvPGN days are long behind me, although I still only play Blizzard games (mostly Warcraft).  But my web development days seem to continue as much as I try and leave them behind me, particularly Fireworks, ColdFusion, CSS and mySQL, but most recently PHP once again.

For those who don’t know I guess it would be appropriate to reintroduce myself and explain where I came from and a brief background.

I’m Rick Smith… the name of my rock band in high school was ‘Trendecide’ and hence the alias.  Don’t ask about the music because we were horrible, but it was a lot of fun and I’m glad I did it.

Although I had tinkered with our Commodore, I would say my interest in computers really started with doing free e-mail with Juno on our 286 and then getting hooked on AOL 1.0, which led me to help start up a couple of computer businesses in the late ’90s that both failed.  Despite the failure, I did manage to walk away with a tremendous amount of knowledge in hardware which I continue to use to this day.  I currently will only build my own desktops and servers.

In 2000 I began web consulting, which led to teaching myself Photoshop, a friend turned me to Macromedia Fireworks and Flash and then ultimately led me to begin coding Perl addons for Matt Mecham’s Ikonboard (2000 was a VERY busy year) and doing web development for the PvPGN project.  Not happy with Perl, I switched to programming classic ASP in 2001 and then followed Matt Mecham and began programming PHP addons for Invisionboard in 2002, most notable were my skins and msSQL contributions.

Although I mostly did design work, I pretty much programmed PHP exclusively when it came to code, but Macromedia stepped in and I began to see the power and ease of ColdFusion.

I began working for a St. Louis area e-commerce company in 2003 and pretty much abandoned everything else I was doing.  PvPGN and Ikonboard went out the door and despite the fact I was doing mostly design and programming in ASP, I began extensively using ColdFusion.  Invisionboard’s decision in 2004 to no longer be free was the nail in the coffin for me and I refused to contribute any longer and devoted 100% of my development to ColdFusion, even uninstalling PHP altogether from my servers (finally reinstalling it again this month).

I worked for myself again from 2004 to 2006 exclusively programming ColdFusion applications for clientele.

In 2006 I applied to work at the local fire department to shut a friend up.  Although I managed to get on the list, I threw it out not wanting or even expecting to be called (I was #25 on the list).  I accepted a job as a contractor with the US Air Force programming classic ASP applications into ColdFusion applications (the programs had to work with other apps programmed in just about every other language from ASP and .NET to Java and PHP… yeah CF can do that) and slowly became burned out until I was called by the fire department in 2008 (I did attend Adobe MAX in 2007).  With a great amount of skepticism by both myself and all those who knew me, I accepted the job with the idea I would actually have an opportunity to develop on my off days (our department works a 24 hour shift with 72 hours off).  As it turns out, I fell in love with the job at fire academy and immediately took a one year break from web development.  My Chief let out word about my past, which led me to be contracted by my city to develop their website.

So now in 2011, I’m a full-time firefighter and a part-time developer.  And rather than exclusively use ColdFusion, I’m more into getting the job done right with really whatever technology suits for the project.  My expertise lies in design, ColdFusion, PHP, CSS, XML, mySQL, msSQL, SEO and computer hardware.

Although I never really went away, I’m looking forward to being a part of the community once again.