w00t! IE is no longer the dominant browser

IE took an EPIC nose dive in April and May and is down to 25% market share worldwide and 31% in the US. IE lost 10% of it's US share in April and May. Hopefully that downward spike will continue.


Wait what? MVC for JabbaTheScript?

No really. http://jphoward.wordpress.com/2013/01/04/end-to-end-web-app-in-under-an-hour/

I went though most of the tute and I made an app where all the logic is done client side. I am not using any executable files like aspx or cfm or php. Everything is done client side with AJAX calls to a REST web service. The only thing that is done server side is a controller and a single class to define the data structure AKA the Model. All the controller does is intercept JSON from the AJAX calls and updates the database via an ORM. There is no SQL, The entire thing is done via a couple static html pages. It looks nothing like a traditional web application where the server dishes up rendered HTML files. In fact, since REST is standardized and is supported by all web app languages it is utterly irreverent what is going on server side. I could swap it out to work with CF, Rails, PHP, Java or whatever. One of the cool things about CF (you knew it was coming) is that JSON is a return type for functions. You can run a query and the return value (the query) is automatically turned into JSON with no intermediate steps.

But yeah.... everything I know about web dev is wrong. Again.

My point? JabbaTheScript is THE language to learn. It is the single most important language of our day and age. Logic is moving from the server to the browser. The back end is quickly becoming little more than a service layer for your database and for things that JS and/or mobile apps can't do or do well. I have heard several times in the last week (from developers of various back end languages) that the back end is "just a matter of preference anymore". Everything is moving to AJAX, Mobile apps and client side app MVC frameworks like Backbone.js and Angular.js so just as long as you can expose your back end via Rest and/or SOAP web services it really doesn't matter what you are running server side.

Twitter Bootstrap: A SWEET CSS/HTML/JS framework for Front End development

Another one for the utility belt. This is SUPER nice.

It has everything you could ever need for front end development. I don't know how many times I have had to search the web for (or create from scratch) design widgets like these. 

Ditto for these JS widgets. This is HUGE. If you have used multiple JS/CSS widgets and libraries you know that they are constantly stepping on each other and create all sorts of problems like JS errors, messed up formating and other weird behavior. 

Someone even wrote a jQuery UI bridge for Bootstrap. God do I love the Internets.

Actually it reminds me of being a jQuery or a CF or RoR for layouts and widgets. It takes care of all the grunt work for you and puts the tools you need at your finger tips so you can focus on getting stuff done. 

Great tutorial for underscore.js (and underscore.cfc)

I noticed that Russ Spivey wrote a port of underscore.js for CF. I have heard a lot about functional programming and underscore.js lately so I dug around the Internets looking for some examples to help get my head around it when I found this nugget of AWESOME: Getting Cozy With Underscore.js

Here is an example from the post

Let's assume you have a random array of test scores and you need a list of those with 90+ score. You'd usually write up something like so:
var scores = [84, 99, 91, 65, 87, 55, 72, 68, 95, 42],
topScorers = [], scoreLimit = 90;

for (i=0; i<=scores.length; i++)
if (scores[i]>scoreLimit)

It's pretty simple and even with optimization, it's fairly verbose for what we're trying to do.

Let's look at what we can achieve with Underscore next.

var scores = [84, 99, 91, 65, 87, 55, 72, 68, 95, 42],
topScorers = [], scoreLimit = 90;

topScorers = _.select(scores, function(score){ return score > scoreLimit;});
I don't know about you but I just had a nerdgasm. That's some incredibly concise and readable code right there.

So did I.....

Just added >> CF_jscalendar & FileUpload.cfc

CF_jscalendar is a port of jscalendar from dynarch.com for CF 5 and above.

FileUpload.cfc is a very simple File Upload component that uploads a file and sanitizes the file name for Windows servers. It was tested on on CF 7 and above and should work on Railo 2+ and (Open) BlueDragon 6.x and above.

Update: Tuesday, 10/21/08 I added set_SQL_permissions.cfm.

It is just a little throw away script that creates the SQL need to grants SELECT, INSERT, DELETE, UPDATE permissions to tables for MSSQL. Setting permissions using the SQL Server Management Studio, in a word, sucks.

Check/Uncheck groups of check boxes w/ the same name

I ran into an issue where I needed to check and uncheck groups of check boxes all with the same name attribute. Now JS's DOM allows you to call an object by it's name while CSS allows you to tap into its ID and class. I can check all of them no problem. So how the fark am I going to some of them if they all have the same name?

I could loop through them a write a script to call groups of them by their position in the form like so

document.myform.myboxes[0]= checked
document.myform.myboxes[1]= checked

But that would suck.

Or I could Google it.


This script rocks.Very ingenious.

CFEclipse / Eclipse Resources

Eclipse Modeling Framework (EMF)


Installing the DBEdit Eclipse Plug-in For Use With MS SQL 2000


DBEdit Plugin for Eclipse

The Dopefly Tech Blog - tons of hints, tips and resources for Eclipse and CFEclipse

The Dopefly CFEclipse Resource Page

The Aptana JS/CSS/HTML plugin for Eclipse:

Aptana review from linux.sys-con.com


Are we in the early stages of a Renaissance?

It is almost as if the web has been just incubating for the last ten or twelve years and then all the sudden it seems to be just bounding with innovation (or I was just too far into my depression and/or too busy building the business this last year to notice). It is like it is in the early stages of a renaissance. Sure some cool things came out like .NET, SOA, PHP and MySQL 5, XHTML and Web Services over the last several years. But for the most part it was business as usual. It was mostly back end stuff; new features to old stand bys or different ways of doing the same old stuff. Nothing really exciting was coming out. The basic mechanics of web development has not really changed all that much since the the late 90's. If you really look at it, there was a markup language (html or xhtml), CSS, graphics, flash, JS on the front end and a scripting language and a database on the back end. The only really major turning point was when Netscape died and pretty much enabled cross browser CSS and JS (Well, sort of).

But now it seams like a FLURRY of developments and innovations are all happening all at once: AJAX, FLEX, Apollo, Flash 9, a bazillion Frameworks, ZK, Ruby on Rails, Eclipse, more web development plug-ins for firefox than you can shake a stick at, and so on and so forth....

These are some really exciting times and I am totally pumped about being a web developer. I am so overwhelmed and excited about it I just don't know where to start with all the new toys I have to play with. I have a hard time getting to sleep knowing about all these new toys... It is like everyday is Christmas Eve and I am 7 yrs old all over again....

I am a luck man because I wake up each and every day looking forward to the wonders that the new day will bring.

Firebug: The best Firefox extension ever created. EVAR!!!

Firebug http://www.getfirebug.com/ is one of the coolest web development tools I have seen since Web Developer Extension for Mozilla.

From their site (they are too modest):

"Firebug integrates with Firefox to put a wealth of development tools at your fingertips while you browse. You can edit, debug, and monitor CSS, HTML, and JavaScript live in any web page. "

So far I have only used it for debugging JS so that is all I am going to comment on.

If you have ever debugged Java Script you know how much of a pain it can be, especially if you're JS is generated on the fly. Debug with IE? Forgidabodit !!!

  • You can walk through a JavaScript and set break points and watches just like in Visual Studio.
  • Quickly find JS errors.
  • You can search for variables and strings right from your browser.
  • You can view attached CSS and JS files, http headers, the referrer page, cookies
...and a slew of other debugging info. Check out the debugging tools!

There is way, way, WAY too much to list here so just do yourself a favor and install it. You will thank me for it.

That's right bitches!! A Free, KICK ASS, Open Source CFML Engine!!

Recent Entries




Recent Comments