Read the show notes and download the full episode here.
Michaela Light 0:01
Welcome back to the show. I'm here with Gavin pickin from audit solutions. And we're going to be doing our second part on the state of the ColdFusion survey results. And we've got some very interesting data that we found we've done Gavin put together some really cool graphs show it so if you're watching on video, be able to see those if you're not on video, you can go to the show notes page on tourtech.com. To have a look at the graphs when we get to those. If you don't know Gavin, he's originally from Down Under in New Zealand. And he's been doing cold fusion for ever, I want to say 1999 or something like that. Yeah. And he used to be at working at the University of Auckland, but now he moved to California is working for autists solutions where he does amazing things. And in particular, he you don't say this new bio, but don't you? Aren't you the force behind content box isn't that you
Gavin Pickin 0:59
did spend a lot of time doing a lot of work the content box, but it got to a point was pretty stable. And we're using it and using it. And so we focus more on? I've been doing a lot more Vue js stuff and API's and testing. And so yeah, I mean, we're just trying to push back on content box right now I don't do as much with it. I need to get back to it. But there's plenty of other things, including the podcasts, which keeps me pretty busy too. So yeah,
Michaela Light 1:25
modernize or die podcast. You and Brad and whoever else you get on the show, so keeps very cool. Podcasts to keep people busy. Anyway, grateful you do that podcast. And thanks for coming on the CF live podcast here. So I guess we should just for the people listening have no idea what the state of the CF union surveyors, what is the survey? Gavin?
Gavin Pickin 1:51
Michaela Light 3:11
should you? What's the answer? No.
Gavin Pickin 3:16
And the first episode, we talked about a lot more about the engines. Yeah, a lot of those are like 1214 years out of support. So w using them any now, but the ones are better, whether using your W Lucy, there's so many new features in the newer ones. Don't don't use old stuff gives you a lot more headaches, risk. vulnerability. Yes, sir.
Michaela Light 3:37
Yes, definitely better to upgrade your frameworks, your tools, your engine, your iOS, all of the bits. So yeah, I'm so the other reason that people come to the survey also, by the way, both Lucy and Adobe looked at the survey results to get ideas on what they should be doing and what the adoption rates are looking like. But it's also good for people in your organization if you're trying to lobby your boss that you should upgrade you know, maybe this gives you ammunition or if you're not using state of the art tools, you know, it shows you how many people are using them and you can see where you're maybe falling behind on your confusion ecosystem. So which I think is just as important as the ColdFusion language.
Gavin Pickin 4:26
For that I know in the next episode we'll be talking about other sections but I'm really excited for when we do the trend one I know you're working on getting some yes trends so we can see over time how things have changed and have more people using Docker than last year or more people using this version of ColdFusion are people moving from ColdFusion to Lucy your back or there's lots of great data we're about to see what the trends and so after we go through all this data in a future episode, it'll be really great to come and look at that
Michaela Light 4:54
could answer both those questions and say yes and yes, yes, more people using darker Yes, Morgan. probably using Lucy though. I think overall Adobe has more. But anyway, let's get cracking. So we left off, I think, question 14. But now we're going to be looking at miscellaneous frameworks and tools. So do you want to share your screen for those on video? And we'll talk through for those on audio? What on earth we're seeing? Yep, for sure. And so we've got tools here, command box, CF, lint, forge, box, lock box, all kinds of really cool tools. And you see a great, hopefully those on video can see a nice spreadsheet. So tell us about the top framework, miscellaneous frameworks and tools.
Gavin Pickin 5:41
Yeah, so it's kind of nice. We've, we've ordered them so we can see it a little more clearly. But at the far right, so apparently, 131 people said that aren't using any miscellaneous frameworks or tools and three using other. But
Michaela Light 5:54
I'm shocked, Gavin, I'm shocked. How are all those people listening are not using any of these tools, I can understand their particular tool you might have no other use case for but I can't believe anyone, any modern ColdFusion developer wouldn't use some of these tools, because most of them, at least half these tools are open source and free. And then the other ones aren't exactly expect. I mean, heck, my CF is 10 bucks a month. It's not per site. It's not exactly kind of, you know, I mean, how many Starbucks coffees can you get for that, you know,
Gavin Pickin 6:24
maybe one these days. But yeah, so there's some great tools here. And the top of the list in this is command box. And that makes a lot of sense to me, because it's about 26% of people using command box. But a lot of these other tools in here, they're sort of, you know, come from Unbox makes it easy to use them. And so second on the list of about 12% of people are using CF lint. And so you can run CF lint without command box. But using command box, it's easier, you know. And same thing with CF format, you can run see a format from you know, basically using a CFC or you know Java or something else. But using command box, there's a module that wraps that up to make it easier. And so, you know, CF format as six on the list or whatnot down at like 5%. So from top to bottom, we have command box with 26%. We have C CF lint at 12%. Forge box at 10%. We got lockbox at 9% hack my see if it's 7.8. See a format
Michaela Light 7:23
for the people who have no idea what these tools are, maybe we could add just one sentence to say what the tool is. Because as you're saying, so what is command boxing, I know it's hard to say in one sentence, but I'm sure you can.
Gavin Pickin 7:34
US command box is an executable that you can run on Windows, Mac or Linux. And basically it's a little command box, CLI. So it's a command line interface, which allows you to do lots of things. So you can write your own commands and CFML and then run them and that's what a lot of these other modules are. They're commands that you can run in command blocks, you can start up a server, so Lucy or Adobe, or even a static site, you can start up a server and it will basically spin up a server we don't have to worry about installing Adobe or Lucy just say I want to Lucy version 5.3 point 10. And it will install it if you want your Wi Fi using 2016 it'll download it start reading, you know, we're going to be say about a minute by the time it downloads it. You have a server up and running, you can run the like tasks with it, you can have basically can serve your website, we can just use them development. And there's a bunch of things around in my inbox that make random managing servers easier bitter. And so most people use it for local development. Some people use it for Production Development, too. And so really, it gives you a lot of options for a lot of cool things. But it's a CLI that lets you scaffold out sites, you can install things through forge box. So package management, is basically like an NPM. Runner. So it does a lot of things. So you should be if you're
Michaela Light 8:51
doing cold fusion, you need command box. It's free. It makes life so much easier. Yeah, that's my one sentence version.
Gavin Pickin 9:01
I mean, it does 10 things, and you need to be at least using one the
Michaela Light 9:05
Swiss Army knife, the Swiss Army knife of cold fusion tools. Yep.
Gavin Pickin 9:10
So see if one? Yeah, yep. So CF Lint is basically a way for you to verify that your code is of a certain style and format. And so a lot of people use like prettier to format their code. But it'll actually give you sort of some return information. So when you run a linter on your code, it'll tell you, you shouldn't be running this or you didn't vasca this variable, or other things. And so you can set up a series of rules, and then basically run the linter on it. And they can tell you stuff in your code that may you know maybe something you should avoid or something that you can't deploy with. So you can put in rules about like clean code stuff like my function should be no longer than 100 lines or your variable should be no no longer than a certain thing. They can also say you shouldn't have see If dumps in your production code, when you push it, you know, so can find stuff like that or don't use, you know, create object. With Joe, there's a
Michaela Light 10:08
pre pre built list of naughty things you shouldn't be doing. And then you can tweak it yourself to
Gavin Pickin 10:14
improve it built to basically run on your code base to look for issues. And a lot of times, you know, you will tweak it to match your coding standards for your business. But it's a great tool. And again, the easy way for to run it, I think, is in command box, there's a command box tool, and you just have a configuration file that says this my rules and you just run it. And then it'll give you a little report, you can spit out report files and HTML. So you can you know, put them in your, your repo, so you can look at them and see what you got to fix. And I like using the CI because we can spit them out. And then we have a record of when we built the production. These are the 23 things that were wrong. And then next time, we like, Oh, you're gonna get 20 things that are wrong that we've improved. So that's very cool. It's a pretty cool tool.
Michaela Light 10:58
What's forge box in one sentence,
Gavin Pickin 11:01
it's the NPM for CFML.
Michaela Light 11:04
And what's an NPM.
Gavin Pickin 11:06
Michaela Light 11:52
Yes, anything. So it's a package map public package manager. So yep. Yeah, I saw him do CF wheels guide, Peter. And I think he's they have dozens of modules on there that you can add into your CF wheels. And I know code box, you must have 100 add ons for coal box on there
Gavin Pickin 12:14
yet. But even if you want to start up a new coal box app, you can say code box create app. And then you can say I want an API or what a script or I want a tag version. and forge box actually stores those templates. And so you give it some variables, and then it'll like replace certain names and the files and everything and spit out, basically, you know, a new site ready to go. And then you just add your code and away you go. So this scaffolding included to, you know, people use it for templates for the user for, you know, themes for content box, and stuff like that, as well. preside has a bunch of stuff there for their, you know, their system. So it's just a way to store and reuse code, and manage your packages and your apps. And so just like NPM has a package that JSON, we have a box that JSON and if you're using forge box and command box, and the best way to use forge box is using command box, you can do it from the browser, through the UI and the website, but it's nowhere near as easy or as efficient as using command box. So excellent.
Michaela Light 13:15
Stone. Number four on the popularity list is log box.
Gavin Pickin 13:19
Yep, that's 9.2% people using log box. But so log box is pretty neat. It's basically a module that helps you with your logging. And what it allows you to do is to set up your logging. So you can log from anywhere in your call fusion site doesn't have to be cold box can be any site can use lockbox. But when you're logging, you can use different providers. So if you're using a database to lagered errors today, and then tomorrow, you want to switch it up and send them to a century. For example, with log box, you just change a couple of settings. And now all your logs will go to this new location. You don't have to change your code everywhere that you did logging. So you don't have to worry about going and changing, you know, 300 occurrences of all your logs. You just tell lockbox, hey, I want to send to Century right now. And the cool thing log boxes, you can say, if I'm in development, put it in the database. If I'm in production center to century if I'm in staging Senator robot, and you just give it the keys, it needs to be able to do the API calls. And the log box has providers, which you can download from Forge box. And then you can plug and play. And so it's a pretty cool module. It's one of the the original modules that came with called box but it's standalone. So you can install it in any ColdFusion app. You just install the library using for Xbox and Xbox is easier but you just download it to but in your folder and just some configuration files in your Application cfc, and then you can use it and it just abstracts away how you're logging from what you're logging. So that's the best way there's thinking about that.
Michaela Light 14:52
What's next on the hit parade of tools.
Gavin Pickin 14:55
So how can ICF so this is a service that Pete Freitag and found you have been doing for I don't know how long 1012 years, it seems like. But basically they run a little scanner, you sign up, pay some money for the service, and they will scan your site. I think it's usually on a monthly basis. But maybe it's more often I don't remember exactly, no,
Michaela Light 15:17
oh, no, you can pick the frequency. I mean, when we use it, we usually make it weekly but and you get a nice, you get an email report in a PDF report. And it shows all the patches that have been applied and other security issues that your server has. And it works both for Adobe ColdFusion, and Lucy and all the different versions of Java you might have underneath. And what's great is the report has links to articles Pete's written explaining why that particular issue is a security issue and how severe it is.
Gavin Pickin 15:45
Yeah, you have to worry about remembering when to upgrade something, you get an email from Pete and the founder CEO saying, Yeah, we scanned your site, and this is what we found. And these things need to be fixed now. And these things should be fixed soon. And this is how you do it. It's it's a great service. And you know, a lot of people use that, to make sure they don't miss out on any zero day vulnerabilities, or, you know, they're maybe they're using an old version of Java, the headsman issue, like, it just saves you so many issues. So it's a great, so
Michaela Light 16:13
Well, that's a bonus feature that Pete will send out, if there is a zero, we've only had like one or two, zero d ColdFusion issues in the last few years. Whereas other languages, like get them regularly. But when there is one he'll send out and he often hears is the first email that lets you know, you know, maybe later Adobe or Lucile get out an email. But usually he's first out the gate on those kinds of things.
Gavin Pickin 16:39
Michaela Light 18:29
What's next on the top 40 tools.
Gavin Pickin 18:32
So fuse guard. So this is another one of Pete's tools. Right? So yeah. And is this the AP web application firewall? Is that the right way?
Michaela Light 18:43
That's what it is. It's the web application firewall protects your app from intruders looking for. It cleverly looks for different patterns like SQL injection, or cross site scripting. It's got like a whole database of possible attack vectors, and it's kept up to date with any new attack vectors. And then it stops them before they even get to your ColdFusion code. So if you've got legacy code that's riddled with security issues, you can install this. And although you still should fix your security issues, at least you're probably going to be okay.
Gavin Pickin 19:14
Yeah, so that's almost 5% of people using that. And again, I haven't used that too much our clients use it I don't configure it sort of, you know, mess. Yes, but oh, it's cool. Sounds awesome. Yeah. And yeah,
Michaela Light 19:26
it is. It gives some nice reports that shows who's hacking your and what are they trying and what country do they come from? Surprise, surprise, many come from, you know, Russia or China or Ukraine. Those are the top three hacking countries I've seen. So
Gavin Pickin 19:41
yeah. So but again, another tool and that one is a paid tool too. So it is you said a lot of them here free but there's some that are paid and they're they're definitely worth it. You know, the funny thing is all the ones on here that are paid that are worth it. They're all Pete's founder. Yeah. And during this podcast,
Michaela Light 19:58
no, he is a I have interviewed him, we have an episode where we talk about these cool things. What's the next tool is another Pete tool, right?
Gavin Pickin 20:07
Yep. So fixing error is 3.4%. So this is a tool that basically scans your code, looking for things that possibly might be something you should fix basically gives you the option of like, see a format, where it comes into five things that should be fixed and give you the recommendation on what you should do. Or you can just tell it, hey, fixing it or fix it. And it runs. In the CLI a lot of people using the build process, you can run it from command box as well. But you can run it through a lot of different ways. I think there's a darker way to run it as well, if you don't want to use command box, but it basically allows you to scan your code for things that should be fixed, and then can even fix them for you right away. So you can tell it, these levels of things, fix these ones don't, you know, you've got these rules. And it gives you lots of reporting options and flexibility. But it's a great tool again, and you can get a license, I think per site or site licenses for across all your sites. And again, it's another great tool. And you know, again, if security is important to you, which it should be, this is something you should definitely look at.
Michaela Light 21:06
Yeah, and he has like a bundle deal where you can get fixed Nate a fuse guard and hack my CF all together. So instead of buying them separately, you save a bit. What's the next tool on on the list, we're getting down to things people don't use too much. Why not?
Gavin Pickin 21:22
I mean, Dropbox. I mean, it's still 3% of people using it. And this is a little tool that I think we took over from that wasn't Mark Mandel might have been mapping, I'll see if talk. But Dropbox is at all and my oldest is taken over and sort of spiced it up a little bit. But essentially, it allows you to do Java doc, like metadata around your handlers and your functions. And then when you run the command, it can generate documentation like API documentation of your of your code. So if you're a developer, you're not sure what what it's doing. Or maybe you want to, you know, look at the documentation for a tool. A lot of the tools that you've used externally have these type of Doc's where it says, These are the functions and these are inputs. And this is what it takes, and this is what it returns, this allows you to do that and generate those HTML files. So you can basically, you know, put them up on s3 or GitHub Pages. And then you can browse your your code, API documentation, it's not API's for like, you know, REST API is it's an API of your code. So it's application programming interface for your code. So basically, is documentation of how your code works. And it's called doc box, because it, you know, sort of plays on the whole java doc blocks. And so that's how you do it. So basically, metadata and make
Michaela Light 22:43
but again, it's for any cold fusion program, you don't have to be using cold box to use direct,
Gavin Pickin 22:48
yep, you can just spin it up. And again, a nice way to run it was using command box, you just, you install it. But then once it's installed globally, on your machine, you can just do doc box, and then tell it, hey, this is the folder I want to, you know, report on, there's some settings for what I want to do spit out the files over here. It'll churn through all the files, it'll figure out what's what you know. And sometimes you have to give it some mappings. Because maybe in your code, you're extending one file extends another file, but using a ColdFusion mapping. So you have to tell Dropbox, hey, when I mentioned, you know, framework, one, framework, one lives over here, so make sure you go over the undefined that CFC so we can figure out, you know, the different pieces that is extending, but it looks at your code, evaluates extensions, and everything, and it spits out some great stuff. And if you go to API dot, I think API call Bob stop. Oh, that's an example. And there's some other API documentation out there. And again, it's not REST API documentation. That's another tool, which I think someone listed on the other thing, which is like swagger Doc's. But yeah, but we have 131 people not using any of these. So the 16th shot is
Michaela Light 23:56
I'm shocked if you're one of the people listening, not using any please, one of these that appeals to you check it out today, because it's gonna make your life ColdFusion programming life so much easier.
Gavin Pickin 24:08
I mean, I highly recommend using command box and forge box for getting things like The Big Rip library or getting the new version of lucidity, a store to install, you know, see if wheels or framework one or coldbox or preside or whatever you're doing. Keep your stuff up to date. But I mean, all the tools from Peter awesome. See, like adding linting to your development process will improve it. See a formats amazing for that to Dropbox improves your documentation. There are great tools. I mean, so definitely, definitely recommend all of them.
Michaela Light 24:40
Well, now now everyone listening has installed all these tools. Now their code is fully rented, secure and modernized. Let's look at code reuse.
Gavin Pickin 24:51
Yep, so this one's a good one. Surprisingly, though, what features do you use for code reuse? Let's see If includes is actually lower than CFC. So more people use the CFC. So almost 30% of people use CFCs for code reuse, then CFN. Close,
Michaela Light 25:08
I'm just going to comment, I think those percentages may not be accurate, because we had 450 people who responded to the survey, give or take, I could look up the number. Exactly. And your percentages, because this is a multiple choice question. Your total number is bigger than the number of people on the survey. So I think 99% of people use CFCs. Or well,
Gavin Pickin 25:30
yeah. Okay, out of the 400. You're right. So out of the total respondents, I should probably have a percentage for that. So let me let me do this one right here.
Michaela Light 25:38
Let me get you the, or do you have the total respondents somewhere else?
Gavin Pickin 25:42
I mean, one of the other questions.
Michaela Light 25:45
Yeah, I'm not sure when you grabbed it. But I'll tell you what the current total number is. Yeah. So on our result,
Gavin Pickin 25:49
just hey, just say 400 For now, and then we'll do it.
Michaela Light 25:53
Yeah. 400 is a good, good guess for when you got the data spreadsheet.
Gavin Pickin 25:57
Yeah. So if we do d3, oops. Wrong one. So, three,
Michaela Light 26:07
because yeah, when you said only 30% of people use CFCs. I just an alarm bell went off. I know everyone uses CFCs. Yeah. Maybe they don't use them a lot. But they should use them somewhat.
Gavin Pickin 26:20
Yeah, let me start fresh here. So why Excel skills are getting mixed up here.
Michaela Light 26:28
Maybe just overwrite the total number with 400?
Unknown Speaker 26:33
Yeah, whatever you want to do. Okay,
Michaela Light 26:36
so this number you go 98%?
Gavin Pickin 26:39
So yeah, 98% of people use it. But the surprising number is, is that only 70% 72% of people use CF includes,
Michaela Light 26:47
which is that can't be true.
Gavin Pickin 26:49
I mean, that's the that's the weird part. To me. I mean, people using CFCs Yeah, I get that. But CFM foods, that's kind of crazy. And then of course, you've got user defined functions. So 65% of people use user defined functions. That makes sense, although that's, that's pretty close to the CFCs. See custom tags, 50% of people using custom tags, that does surprise me, because as much as people seem to hate custom tags and cold fusion, I thought that would have meant a whole
Michaela Light 27:17
lot. Why do they hate them? What kind of handy?
Gavin Pickin 27:21
Yeah, I think they're great for UI related stuff, you know, but there's a lot of people that give it a bad rap, you know, but for rapping, tags and layouts and stuff do have their place. Modules and extensions, you know, provided by the framework, so 40% of people do stuff, which is great. And then 1% of one and a half percent of people say none. So that's kind of,
Michaela Light 27:45
that's where the spaghetti comes from,
Gavin Pickin 27:47
you know, well, yeah, I did meet a guy at one of the Adobe summers, sorry, the Adobe road shows, and he was talking and he was like, old school coder. I mean, but he's been coding as long as me so I mean, I guess I'm old school too. But he was like, it was talking about like, I never used this and I never use that. And I'm like, well, the five tangle uses CF include right, as well as CF output and then a loop then if, but I was like, he's like, No, I don't even use CF include I want my code to be a story. Like I wanted to read like one whole big old story. Warren Piece by the sounds of it. Yeah. And I was like, that's interesting. But I'm like, I'm not sure how I could do stuff about at least to see if include, but yeah, each their own. There's many ways to do it, you know, just because everyone else does it. But a good fan. Yep. So it's kind of nice that we got a good mix there. But yeah, so the CFR, I
Michaela Light 28:36
would recommend people do do something for code reuse, because copying and pasting code blocks around is a very bad idea for maintenance.
Gavin Pickin 28:46
You know, there's the the DRI methodology, don't repeat yourself, versus the witness methodology where people say, you know, write everything twice is a bad thing. But sometimes they say, writing everything twice is not a bad thing, because you learn about the code, and then don't do it again. And you know, because there's also the, you know, the sort of policy, avoid hasty abstractions, you don't abstract things away before you need to. But I think it's like the 123, you know, refactor as a lot of people say, like, the third time you write it, you figured out what you're trying to do with it, then you refactor it. So you're not really you know, repeating. But there's a lot of great tools. And again, I love forge box, because most tools that need to be written have been written. There's a bunch on there, if you want to write an API wrapper around something, there's probably already one there, like you can find it. So don't reinvent the wheel. But you know, there's still opportunities for news
Michaela Light 29:38
and if you're inventing a new wheel, and it's something useful for other people, why not post it into thought box so that other people can comment on it, improve it, use it?
Gavin Pickin 29:47
Yeah, I actually did like four videos this year on Charlie's online CFP app about code reuse and when should you roll your own versus, you know, reinvent the wheel and, you know, how can you use a third party library and confusion and all those things. I've just done a whole bunch on that because I think more people should be aware of when you should rewrite, rewrite something when you should reuse. Because sometimes reusing somebody else's module is a bad idea. But you need to know the reasons and the sort of the things to think about. And so actually, I said, I did three or four presentations, I did a forge box presentation on forge box suffocation. So you know, there's plenty of videos out there, if you go on YouTube and hit the honest channel, there's actually a channel about, I think it's bought us in the wild where all of our other videos are. So check those out, because reuse is very important. I think language is good as well. So
Michaela Light 30:41
now we talked about reuse, I think we should talk about source control, because all this refactoring is a disaster zone if you're not doing source control. But fortunately, very few people don't do source control at this point.
Gavin Pickin 30:53
Yeah, I mean, but then what is your definition of source control to? Because in this list here, we start with the big ones, right, so we got github 23%. And let's, let's do the same thing we just did on the last one of personal things, because I think that's important as well, because yes, versus the percentage of actual responses, because some people use more than one, right? So let's do that they do. So if we do that. So almost 7% of people. So 7% of people don't use anything. Or they check, they don't do it, and they do something else, which is kind of weird. But anyway, so 7% of people don't actually use it at all. But some of
Michaela Light 31:36
the wait, wait a minute that I wouldn't call zipping up folders source control, it's kind of a backup strategy. Yeah, copy directories from time to time is not that again, is a backup strategy. Glad you do it. But you know,
Gavin Pickin 31:51
Yep, that was my point is that yeah, some of these, you might think are source control. But no, they're not really, their source control gives you a lot more power and flexibility. There's a lot more inside of it. But like beyond compare is just comparing two sets of files. It's not source control. It's just seeing what's changed.
Michaela Light 32:10
But we included that in the survey because people wrote it in a lot. Yeah.
Gavin Pickin 32:16
Yeah, it's that's their version of, you know, controlling their code. But it's not quite the same as when you say GitHub, BitBucket. GitLab, subversion tortoise? SVN. Yes. So those ones there. So probably six at the top, you know, so many. And to be honest, though, like if you add that up. So the 344 1016. So we're basically, you know, probably about 70% 80% are using a good form of source control. Let's put it that way. Yes. And then some of these other ones, like you said, they're more backups, you know, material, too. So we can add that. But as for
Michaela Light 32:52
you, as DevOps, that's real. Yeah, Google Drive? No.
Gavin Pickin 32:57
Yeah, I mean, it has versions, but it's not the same as source control. But yeah, but like they're copying directories from time to time, or adding bei key K VK dot VMDK, after file name is not the same. But it's good to see that the trend is
Michaela Light 33:13
anyone who isn't doing any source control or backup definitely do something. And here are a lot of options listed. But really, you want to use a real source control. And the number one and two here are both git based GitHub and Bitbucket and number three to get lab. So use a Git based the most programmers use Git based one because it's better for distributed team development and better merge features than subversion or some of these other custom things.
Gavin Pickin 33:47
Yeah, that's good. This is what I'd like to sort of see if we group the Git versus backup strategy trends over time. Yeah, see, because I think this number used to be way lower before a day. Yeah. Over the years, more people are using Source Control. And it's great to see,
Michaela Light 34:04
well, there was a CFO who will remain nameless, because I can't remember his name and be he's a bit of a curmudgeon. But he wrote a blog article about this about 10 years ago saying, why are all these people not using Source Control, you know, from a survey? And he will, although he expressed it in a bit of a mean way, he was right. You
Gavin Pickin 34:24
know? I mean, trust me, I know, I, I've still had to deal with previous customers that won't commit their code. So if I go work on their stuff, I only basically do a git commit of whatever they've done since I last touched it so that I can continue my work. Well, to be
Michaela Light 34:40
fair, it is, you know, when people get started, it is a little confusing, and it's a command line interface unless you have one of those tortoise or other GUI thing. I mean, and the whole strategy is a bit confusing, like, you know, when should you branch when Shouldn't you, you know, but I mean, I mean, it's not it's not confusing once you've done it for a few days. but I'm just telling you my experience of having customers have never done it before. And we help them to understand what to do. And they are confused.
Gavin Pickin 35:08
Yeah, I mean, worst case, though, is like if you have source tree, which is free, and you can use it to GitHub, GitLab, Bitbucket, whatever. I mean, even if you just like, Okay, I'm releasing some code to production today, commit everything you've done to your source control, and then push it. And then worst case, you've at least got a history that you had something, you changed it, or you deleted it, it's better than a backup strategy. And that's, you know, that's at least something. So that's not very confusing. And the
Michaela Light 35:34
reason that's the backup strategy is, it's more consistent. Yeah, more likely to have major changes. Secondly, you can see the differences, right, you can see these lines were changed by this person on this date. And they were part of this bug fix. And then also, if you've got multiple developers working on the project, someone can be fixing one bug or adding one set of features, someone else is doing totally separate things. And then you can merge them together, once they're both tested. So you can't do that by copying things around.
Gavin Pickin 36:07
Yeah, I mean, later, worst case, if you just commit all your code, it doesn't have all those things you just mentioned, which are great, but at least you have something and it's not hard, that when you start doing the branching the right way, and organizing, it does get a little more confusing. But there's great, you know, sessions out there that people have done that have been recorded, and there's great little tools and everything. So, I mean, it's definitely a plus. And if you go work in any other language, if you don't have it, they're gonna know, they're gonna wonder why. And they're probably not going to hire you if you don't even know what one is or how to use it. So it's a good tool that everybody should learn. I mean, they teach it in high school now for coders, you know, so,
Michaela Light 36:45
and, and a lot of ideas have, you know, add ons extensions. Let's go to the ID section. See what the most popular ID is. Drumroll, please. Oh, my goodness. It's like the biggest by a factor of three, I think. What's the answer? What's the top one for those listening at home
Gavin Pickin 37:03
vs. Code? vs. Code VS code, and this one will be loved. I'd love to see this over time as well. But yeah, for the longest time, sublime, and notepad plus plus and even see a builder used to be really popular, but over time, you've seen them slip. And so like, see if builder knows it's down to what fifth on our list and prime but for the now
Michaela Light 37:26
Yes, Canaletto. Yeah, exactly. I was gonna you say it.
Gavin Pickin 37:29
Yeah. You VS code extension from Adobe for the seat builder is out. So now everyone who uses
Michaela Light 37:36
it actually, ours is slim beta? Because I think it's
Gavin Pickin 37:39
out there has been okay, for well, it's at least in public beta. I think it's out. Yeah. And so, yeah, so a lot of people using it, there's been a few issues that some people have had, but other people are loving it. And they've had no issues at all. So I'm not sure
Michaela Light 37:55
just to be clear that it's not just an idea. It's like a debugger or, you know, Performance Monitor tie in and all kinds of features they have. I wrote a long article on all the features that they have in there. It's like, it's far more than an editor. Yep, in
Gavin Pickin 38:11
the Adobe developer week, they actually had a session on it and see if some are coming up, they're gonna show some more. And so if you guys are interested in the VS code extension for ColdFusion Builder, yeah, definitely check out those resources and try it out. You can always plug it in and give it a whirl. And, yeah, there's a lot of tie ins to like save the debugging their performance monitor the security analysis tool, a lot of those things are tied in and as long as you have the, you know, a licensed version on your machine, you can do like everything the old CF builder could do. And even without that, you still have a lot of power and flexibility there. But it looks
Michaela Light 38:45
like three quarters of people or more maybe 80% are using vs. Code. And it's free excuse from Microsoft, which some people might say, Well, I'm allergic to Microsoft, but there is an open source version of it out there. That Microsoft so much free.
Gavin Pickin 39:03
So based on that 400 numbers, almost 80% of people use VS code.
Michaela Light 39:08
Yeah, and I think to be fair, sublime, a notepad plus plus a paid as are a few other of these editors. I see
Gavin Pickin 39:16
there has a free version that just naturally do time. Yeah, just just nags and nags and nags, but you can get away with using it for free. But IntelliJ is a paid one too. But yeah, CF builder you know, they had a free version. Basically, you had to pay for some of the fancy tools and see if Eclipse Yes. The old the old plugin version or the
Michaela Light 39:33
the new CF builder extension for VS code that's paid, isn't it? I thought, Well,
Gavin Pickin 39:39
I think if you install it for a lot of the features to work, you need to have a licensed server on your machine. But remember, rarely development you get development license for free development server. So there's some some leeway there with that, but I mean, I think it's worth trying out. But it's interesting that some of the old ones I see Studio and homeside still have a one and a half percent, two and a half percent. And IntelliJ WebStorm was way down at 1.25. But IntelliJ IDE, the IDE A, that 9%. But Dreamweaver, Dreamweaver, it's, I thought it would be higher. I really didn't
Michaela Light 40:18
think kind of abandoned that you can still get ColdFusion tag support for it.
Gavin Pickin 40:24
I actually think that's a typo on my side, because I think I remember looking at it and going wow, that's got a lot of people still. So I'm wondering, I'm gonna have to look it up. I think this 40 So it might not really. Oh, yeah, I'll have to show it. I'll maybe that finger did or something. Because I have a feeling it was actually 40 I believe it was wrong. Plus Plus, but I'll, I'll check it on a different window here as we're chit chatting about it. So. But yeah, it's there's a lot of cool stuff in there for sure. And it's good to see most of them. But you know, so a lot of people using brackets and Adam, what you both did now pretty much? Nope. Yes. You
Michaela Light 41:02
were right. It was it was 40. Okay. I went to the Terra Tech site that has all the dynamic graphs on
Gavin Pickin 41:10
my bed, oh, fat finger, that one, so no worries.
Michaela Light 41:13
So Dreamweaver is a bit more popular. And you know, Dreamweaver is nice because WYSIWYG and a lot of people who came from HTML, you know, grew up on that.
Gavin Pickin 41:22
Yeah, I did for a longest time, but they just they didn't have any updated extinctions. A lot of the scripts weren't supported. But that's still 10% of people use Dreamweaver and bash,
Michaela Light 41:31
I think VS code is really worth trying out. I know people think IDs are religion, and they don't want to change because like they used to the keystrokes or whatever, but or the UI, but there's no
Gavin Pickin 41:43
vs keystrokes. Because you can there isn't that you can import the mappers. So sublime, you can guess of line Key Map, and then the codes Key Map sublimes. And I think there's one
Michaela Light 41:56
dangerous territory, this is almost like saying you could change from being, you know, Methodist to Catholic by changing the keystrokes on the Bible or something. And then you'd have it all covered, because I've been stopped that before.
Gavin Pickin 42:11
But some people, you know, some people would like to tool and the way it works. Some people just like to shortcuts their use of the short brain. So if it's just a shortcut you're used to, you can include the mapper and Vyas code, and then all the shortcuts basically match what you're used to.
Michaela Light 42:25
That's pretty cool. Yeah, but the real reason VS code is good is because it's fast. It's reliable. It has a zillion extensions for every language under the sun, including multiple extensions for ColdFusion. And it just, you know, it works really good. And I don't know how many millions of dollars Microsoft pours into it. I mean, it's open source, but they obviously have any whole engineering team beavering away on it.
Gavin Pickin 42:48
Yeah, so and now a bunch of videos up on the MS build, they have release parties every month for the new releases. And every week on our CFML news podcast, we give you a new Vyas code, hint tip and trick of the week where we go into some of the extensions that are either just cool for developers in general, or ColdFusion related stuff. But
Michaela Light 43:06
a lot of times I smell a future book where you collect all those tips together into one big article. Well, we actually
Gavin Pickin 43:13
have, every year we do like a review. So every year we have about 50 tips, tricks from one of the same for forge box. And so the last few years since we built the podcast, we have these big ones at Christmas time where you get all the last year's worth all the tips. Yep, all the tips.
Michaela Light 43:31
Now I will I will say that there is some telemetry that Microsoft sends back to their home ship, so to speak. They say that it's just like on a performance problem thing. I'm not sure they're not like copying everyone's source code behind the scenes. I've never totally trusted Microsoft myself. But maybe they don't do that. But if you if you believe that there's an open source version that removes that code from it. So
Gavin Pickin 43:57
yep. And the cool thing is you can even run Vyas code in your browser. So you can go to a browser version of the site, plug in your, your, your email address, and it will synchronize and install all your modules you have loaded locally. And so a lot of repos on GitHub, if you go to dev.github.com/the repo, it will actually open that repo in like VS code version, you sign in of the GitHub account, which matches your Vyas code one. And now all your extensions are installed, and you can edit it in there for like a pull requests and stuff is pretty cool. That is cool. Yeah, there definitely mix it up the fact that Microsoft own vs. Code, and GitHub. There's some cool stuff. Microsoft
Michaela Light 44:39
owns GitHub. Yeah, I must have missed that. You know, was that one four
Gavin Pickin 44:44
years ago? Well, three or four years ago? Really? Yeah. Oh, wow.
Michaela Light 44:47
Okay, they took over GitHub. So but they don't own git lab or Bitbucket, right?
Gavin Pickin 44:52
No, so they don't they don't own the Git structure and the formatting and whatever, but get that that's why for the longest time, get how I was, you know, free for public stuff, but private stuff you had to pay for. And then they took over and said, No, we'll give everybody free. But yeah, but probably sometime, you know, somebody, I
Michaela Light 45:10
think they are analyzing the code to improve their, you know, let's just hope it's just to make better tools in the future. So you can see what kind of code people write. Yeah, I mean, same thing Google gets up to they give you Google Docs for free, but you guarantee they're just analyzing how every keystroke you make, supposedly to improve the product, right? And I'm sure they do improve the product. But I'm a bit whatever. Paranoid is maybe the word with good reason, because Google has been proven to do some pretty evil things. Yeah, but we don't mean go off on that tangent.
Gavin Pickin 45:46
Exactly what I mean, they always say there's always a price to everything, if it's free your pants your data. So
Michaela Light 45:51
exactly, let let us proceed on to browser dev tools.
Gavin Pickin 45:57
And so this one, again, I'm gonna copy my little code here for this because, again, the percentage that I calculated was based on the number of respondents not those are the number of responses, not the respondents, so 92.25% of people use Chrome. So that's prorating for
Michaela Light 46:13
Gavin Pickin 46:20
Michaela Light 46:41
to use for your own personal browsing, you might use the dev tools in edge, because they're better off some
Gavin Pickin 46:47
people, like yourself may not like the fact that Google was watching.
Michaela Light 46:52
So I'd rather have Microsoft watch instead. Yeah, and
Gavin Pickin 46:55
now that, you know, ie Dev Tools is really low at 6.5. But that's to be expected, because the old ie version, but the new version is built on top of the whole chromium family WebKit and all that. It's, you know, like it's pretty good. And the web tools are pretty good, too. So, a lot, a lot of people are trying that. Because, I mean, I used to love Firefox, but I had so many issues. So I went to Chrome, and I love Chrome. But when Chrome's not working, I've, I've used the edge. And it's not terrible, surprisingly. And that's what the funny thing is people like it's not terrible. So
Michaela Light 47:25
yes, it's actually improved. And IE, is now totally end of life. Microsoft said, we're not going to issue security stuff and what have you. So why anyone is still using that was a bit of a mystery. That's I know why they're using it as an internal app that they forced their users to use IE is the answer. Yeah, that's a little ridiculous.
Gavin Pickin 47:45
Well, the funny thing is, is that Firebug was the tool that everybody used before Firefox, and Chrome, and everybody built their diff tool Firebug inspired Firefox to build dev tools. And I thought Firebug has been dead for a while, but maybe you just didn't need to install it anymore, because Firefox had its own built in. And so people just, they didn't use it as much, but for a long time, Firebug I thought was like a dead tool. Basically, it sort of died. But I guess you can still use it. And you know, other stuff. But uh, yes.
Michaela Light 48:19
Let us move on to some programming goodness with rest API's?
Gavin Pickin 48:25
Yep. So what do you use to build your REST API? So we have a decent number of people. And again, I'm going to copy in my little stuff here. For overall respondents, so So 22% of people don't use rest at all. Five and a half percent of people don't use ColdFusion for the rest, and two and a half percent. Don't use a you know, well, they use Aboriginals, but the ones that are using it 23 phones, so
Michaela Light 48:55
maybe we should tell people what rest is because those people who don't use it, maybe have no idea why they should use it or what it even is.
Gavin Pickin 49:02
Yeah. So I mean, wrist. Rest API's is a pretty popular base type of API's. It's the one that most people refer to when they say API's these days. And so it's really focused around resources. And so there's the definition of rest. And what people actually use rest for is kind of out of date. And I mean, do you know about the whole rest and not rest? You know, the whole state stuff.
Michaela Light 49:28
Now, are they supposed to be stateless?
Gavin Pickin 49:31
Yeah, like the whole stateless, but a lot of people don't actually do that. No. So I mean, it's
Michaela Light 49:38
so it's a protocol. It's a protocol for writing API so other people can consume them.
Gavin Pickin 49:43
Yep, exactly. And so it's meant to be, you know, where you get a user GET request to get a record, you use a post to create one, use a put to update it, use a Delete to delete one, and everything's based around resources. So if you want to get a person, you'd hit slash, you know, a API slash v1. If you're versioning it slash person, and then give the ID to get that person. Or if you just want to get a list of people, you just say get API v1 person.
Michaela Light 50:11
But before people listening panic and think they have to learn yet another whole programming technical thing, the whole point of this set of tools is it does it for you. Right?
Gavin Pickin 50:21
Yeah, exactly. And that these tools definitely help with that. So they give you the things to make it easier. And, you know, so the routes, because a lot of times those pretty URLs that the rest API's use, you'd have to translate that into your ColdFusion app. And so all these nice tools that they're using here, they do that for you. There's a router, you can configure it. So the slash they also learn stuff and
Michaela Light 50:43
my understanding of rest, isn't there HTML and x to XML involved?
Gavin Pickin 50:48
Doesn't have to be you can doesn't have to be okay. Yeah, XML API could be XML or JSON or whatever format. The rest
Michaela Light 50:58
of it. The point is, if you use the coldbox rest tool, or you use the built one built into COVID, I mean, when you've already CFC, doesn't it? You know, you can like one change the code, it can be a REST API now.
Gavin Pickin 51:12
Yeah, I mean, you have to sort of do things a little differently, depending on the framework. So like, Taffy IO is another one that's on the list. And, you know, basically, in your handler in your function, you have some metadata about it, and it tells the framework, what route it should be on how to get to it, and you know, which methods can run it. But things like cold fusion is built in risks, you have to go on to the admin and sort of create the endpoints that way and pointed at your CFCs, you can return JSON from a CFC, you know, you can do a remote JSON, basically, and that is you're returning a JSON data, but it's not a REST API, you know, your your CFC is, basically, you're hitting that directly. And it's giving you a response to an API can consume, but it's not REST API in the traditional sense, per se. So these tools give you the things like the routing, it gives you the structure gives you the ability to return different formats. And it makes it easy to do that, like you said, but yeah, a lot of people can do it within ColdFusion without it, and that's why some people say that they basically just do their own others, probably a lot of that, or they have a homegrown like, 21% of people use their homegrown API, rest. And so that's their own version of it. And you know, it's it's one of those things, and obviously, the tools called Box rest, or the CF built in rest, or Taffy or framework, one raise, CF wheels, raised, preside risks, all those tools give you a framework around it, they give you some extra benefits, and, you know, additions to make it even easier to implement stuff like security, and the routing and those other things. And so that's what makes those really possible. So it's it's kind of a cool thing. And it's nice for us as a from audits obviously, that coldbox rest is the number one way to build rest API's and ColdFusion. Even more people use coolbox rest and they don't use rest at all. So that's kind of a plus for us, but CF Filton, rest is still at 23.5%. That's a lot of people. And I find that surprising because of the licensing. In standard, you're restricted a little bit in the way you use rest, when you go to enterprise, we have more flexibility. But that's one of the things where the built in risks that it gives you the endpoints, you can't, you can't have too many apps running on the same server with the same endpoint and standard, they will have to be the certain, you know, format and structure. And so but yeah, 23 and a half percent of people using CF.
Michaela Light 53:43
Where does the API Manager fit in? Is that now given away with Adobe ColdFusion standard, or?
Gavin Pickin 53:50
I think I think there's something they just changed recently. Previously, it was an enterprise only a right, don't quote me on this. But I think the API Manager, they did make it available for standard maybe. But that's basically a tool that you put in between the user, it's actually not written in whole fusion. It's like a Java thing. And so you basically plug that in between your users and your ColdFusion system. And you can do extra things like add additional caching, do some routing, do more security. So it's basically like a man in the middle, helping you manage that as well as the API Manager. So it helps you with a lot of different things. And it's pretty neat, actually. And again, you can use that in front of your ColdFusion API, but some people are actually using it in front of other API's or writing, just because they have it because it's a good tool, whether using ColdFusion or not.
Michaela Light 54:41
So I'd say it's the best API tool out there. And it costs a lot less than the next, you know, paid version tool out there. Like kinda, I mean, 10s of 1000s or 100,000 bucks for some of those API,
Gavin Pickin 54:54
the others API management tools that give you that as like a you know, a front facing you These can be very expensive. And that's why that was a big plus for them. And so the cool thing is, is with that you could still use Taffy or framework one or coldbox behind it, you don't have to use Adobe's ColdFusion REST endpoints, you the API Manager can point it, whatever, using free API's. And so it's kind of a free standing item that you can use how you want to. So I really think is a pretty cool tool. And again, watch some Adobe developer videos on the API Manager. It's it's pretty neat. And again, if you have the license, I believe now was standard, but definitely within a price, you get access to all that. Awesome. So I
Michaela Light 55:36
think I should let people know that we're, we're more than halfway through here on question 20. And we're going to go to question 27 is our plan. So keep, keep going. I know this is heavy technical info. So there's a lot of gems in here that you're sharing Gammon. So the next thing up is caching.
Gavin Pickin 55:55
Yep. So caching, obviously, very important. We got some interesting numbers here, I'm going to copy and my little thing if it lets me that way, we can see overall, so 20% of people using cachebox 19.25% are using Railo and Lucy cache 18% of using Redis Cache, a lot of people using CDN CDN, like CloudFlare, CDN 16.5%. And then eh, cache, 16%, Memcache, six and a half or less to catch five, Couchbase, two, and then 40%, people are not using any caching. So that's a little surprising. But some of these other ones here, the numbers are a little higher, because the dope just
Michaela Light 56:37
just to be fair, Adobe ColdFusion has some caching built in, right? Well, that's
Gavin Pickin 56:42
what I was gonna say, I'm surprised because Adobe actually builds in like, eh, cache, I believe. And you can do Redis now as well. And so Adobe, you basically have a couple options, you use their caching, or you can build in, you know, you can add an extension or not an extension, but basically mapping another type of provider. And you can make that work. Lucy allows you to basically add your own Lucy extinction to the the engine. So once you install the Couchbase, or Redis extinction, then Lucy can actually use that to do the caching. And so inside ColdFusion, if ColdFusion has caching, it has to use its options. You and your code can use whatever you have available or ColdFusion stuff. Lucy gives you the ability to use their options, as well as whatever you install or any other module you manually put in your code to. So it gives you a little bit more flexibility for the engine itself to cache using a cache that you want that doesn't come out of the box. So that's one of the benefits for the Lucy stuff. But that's probably why a lot of people use, you know, eh, cache and memcache and Redis for the more popular ones, but also with Adobo.
Michaela Light 57:56
Well, some of these are single server solutions, right? And some are like a clustered server solution. So the cache data is shared between all the servers.
Gavin Pickin 58:05
Michaela Light 59:34
But you can and, you know, it sticks it in a local, whatever they call it data center, or I don't know what Cloudflare or there's other CD ends call them
Gavin Pickin 59:42
the regions, they call them the like regions. Yeah, really, the
Michaela Light 59:46
point is, it's really near to the user. So you know, once it's got there it if you're on a paid plan it you know, they don't have to redownload it from your server, so it's less load on the server, faster performance for your users, particularly on mobile. So it's worth having that on top of whatever caching you're doing to cache the queries or to cache the, you know, the HTML or the you're generating in the app, or whatever you're using the caching for.
Gavin Pickin 1:00:12
Yep. And most people use it just for database caching. But yeah, but isn't that
Michaela Light 1:00:17
a sort of built? That's also, I mean, you've got the ColdFusion layer where you cache, you know, the queries, but also in SQL Server doesn't make cache queries to I mean, it caches
Gavin Pickin 1:00:28
the monitoring plan. Usually, the queries themselves aren't cached. From my understanding, but if you run a query plan recently, a lot of the work that the query does is, you know, figuring out how to query it, and then it'll actually query it. But
Michaela Light 1:00:41
yeah, I mean, maybe what I was thinking of, yeah, I mean, sometimes you will, I mean,
Gavin Pickin 1:00:46
there's probably some setups, and they you can do, but usually, it's the query plan that gets cached if you're given the right information to make a query plan. But usually ColdFusion, or Lucy, you can say, Hey, catch my query for so long. And that's usually the best win. And that's usually what most people use for querying. And that's why I'm like 40% aren't using any caching is kind of strange. Because you'd think, at least in production, you might have some queries cached. But maybe they just don't realize what it's doing. So that's fine, too.
Michaela Light 1:01:15
Let us move on to a mysterious new topic that many developers aren't even using, which is message queues. What is a message queue? And why should you be using it because clearly, most people don't get it.
Gavin Pickin 1:01:29
So Mrs. Queues, is basically a way for you to put things that your app is working on into a huge process later, some things take longer than we want to do. When we're running a process. ColdFusion stops it, it does all the work. And then when it's done, it returns it back to the user. Sometimes you want it to do work that you don't want to wait around for. And so waiting around and making use of wait around, it's just not efficient. So a lot of times when you're sending emails, if you want to send 5000 emails, because you got a big marketing mail list, you want to basically, you know, say, Hey, you want to send these emails to let me put those 5000 email addresses in the queue. And I'll get around to sending in the next hour. But thanks for your request, we got it, we're working on it. Well, the same thing to if you're going to generate a 5000 page PDF, you know, because you want to print this big old book, you don't want to wait around for that to happen before you give an answer back to the person. So you'll stick that in the queue, say, Hey, these are the criteria, this is the search, they hit, they want to print this, you put in the queue. And when it's done the queue, the queue processor will have a list. And then you have these little people that work on it. And so when it's done, it puts the PDF on s3 or something. And then emails, the person says, Hey, this is ready for you now come download it. And you've seen that with Google Drive, download a whole folder, it'll basically process in the background, and eventually, it'll send you the file to download so that he was just a way to, you know, basically make some tasks asynchronous. And the cool thing is, your webserver doesn't need to be very big and strong. If all the big task it hands it off. So if you're doing like, photo processing, someone uploads a photo, you're like, got it, I'll resize it into the 15 versions we want for your photos site. But I'll do that later, you know, or you're gonna put something out s3 and s3 is gonna do some transcription of the video, all these big long tasks that aren't really confusing the job, you can put in a queue, and then other languages can read it. And that's why Brian classes talks when he talks about AWS. And all his workflows are great, because ColdFusion is not efficient at reading video and transcribing data and then, you know, creating words from those texts to read. Like he does all sorts of crazy workflows for the John Hopkins University. And that's not cold fusion specialty, hot fusion mean that glue is perfect. It can basically interface between all these shove things in the queue, the queue can be worked on by the right tool for the right job. And then ColdFusion gets the job done, and send you the notifications or updates the UI based on that. So that's a long version of it. Did I miss anything?
Michaela Light 1:04:04
I think I what I'd add in many people have program queues themselves. What's great about these third party queue, software's is they're 100% reliable. So you stick something in the queue, if the process fails, it's going to re kick it off, you know, or you'll get an error message back if it's impossible, so
Gavin Pickin 1:04:22
and then yeah, there's a lot of different queues systems out there, and some are what they call I've forgotten the name for it now. But basically, some are cues that are sort of in memory and so if something happens, you lose all their and some of the persistent queues at all the it might live in the database, so to live longer. I like there's a lot of different tools out there but rabbit and Q is top of the list, which is no surprise. It's probably the most popular one. I've seen lots of presentations at CF summit CF objective. Brad is actually doing one at CF Summit coming up this week about rabbit in queue. But Amazon SQS service is another great one and that's probably why it's sick in the near 6.25% Redis has huge now as well. So 4.25% of people using Redis. And then there's Kafka as your service bus and active MQ, and even SQL Server as a service broker now, so this kind of a few other ones there, but I think is one of those things that everybody wants to use. But they're kind of complicated and hard to set up a little bit more work. And so we're not using as much of them as we probably should be. But, you know, it's one of those things, if you're, if your app is doing some bigger pieces of work, a queue is great for that. And a lot of that's for like sending messages off to, you know, chatbox, or whatever, or emails or, you know, following up with things, you can do all sorts of great things with us.
Michaela Light 1:05:43
Excellent. Well, let's get more personal and look at how many years people have been using ColdFusion.
Gavin Pickin 1:05:49
Yeah, so out of this list, here we have 412. So that's what those numbers should have been.
Michaela Light 1:05:54
So forth. Well, this was a pick one question. So yep, exactly. So
Gavin Pickin 1:06:00
in this one here, we have only two developers that filled have been doing computation for less than a year. But it's kind of interesting. The between one and two, we had 2%, and then three to five, with 3%. So basically, if you add up the numbers, we're basically 5% of competition developers have started within the last five years. But what what
Michaela Light 1:06:21
is what's the lifetime expectation of a ColdFusion? Developer? I mean, if they start at age 20, and go to age 60, or there abouts, that's 40 years, right? So five, five years should be an eighth of the numbers, but you're saying it's 5%? Not an eight? And eight would be? I can't do the math. Right. But there you go. Yep. So it's a little below where it needs to be.
Gavin Pickin 1:06:49
Yeah, I mean, obviously, with 20 plus years being 53%. Most people that are still doing ColdFusion have been doing it for mostly lifestyle. If you look at 16 to 20 years, and the 20 plus years, you're basically at 70% of people have been doing it for more than 15 years. So 16 years or more 70% of people well, just just to
Michaela Light 1:07:08
be fair, the max possible number of years, you could be doing ColdFusion is 25 or 26. Somewhere around there.
Gavin Pickin 1:07:14
Yeah. Should be 27. Now, because it was came out only five so yep. Okay. So could
Michaela Light 1:07:20
be 27. But the I think that the overall point here, as we need more young blood to come in to cold fusion, and anyone listening has suggestions on how we can achieve that. I don't know if you have any suggestions you want to share? Gavin, maybe from the into the box conference, but I think there might have been some some ideas that came out of that.
Gavin Pickin 1:07:40
Michaela Light 1:08:22
that I'm doing better than writing No. Jas, which is also Java Script desk, but a lot more complicated to do.
Gavin Pickin 1:08:30
Michaela Light 1:09:37
would agree maybe we need to talk to the Lucien Adobe Marketing teams and see if they can rebrand it that way.
Gavin Pickin 1:09:45
Michaela Light 1:10:29
it. I'd say PHP is a bit picky, you know, yeah, and verbose.
Gavin Pickin 1:10:34
Michaela Light 1:10:47
two other reasons for young folks to pick up cold fusion. One is, it was like, one of the fastest languages, Brad ran this speed test, real world speed test, not a faked out one. And I think confusion was number two, way faster than PHP and Laravel. Or this was cold fusion with coldbox. So a real, you know, a real framework that does a lot of work for you. And it was really fast. So
Gavin Pickin 1:11:13
they ran a Lucy version, W version, and they ran Lucy with coolbox, and the W with codebox. And they were all up there. And yeah, it depends on the type of thing in like, the one that I think they were reading, so many records are writing so many records to the database. So the tasks that Brad had, and it was a specific task. And you know, some languages really excel at certain things, and not others, but it shows that we're competitive. And if we're just as competitive, then you know, why not? So I think if we can, you know, just keep, keep pushing. And I
Michaela Light 1:11:44
would say ColdFusion is more than competitive, it was faster than you know, two or three times faster than other languages. It's, you know, 20% of the code to write compared to PHP to do the same things. And on the security, I wrote an article on this from based on some security data, it's, there's a lot less hacks done against cold fusion, you know, zero day stuff.
Gavin Pickin 1:12:08
I mean, to be honest, I think the biggest thing that has held cold fusion back for the longest time is hosting. I really think because PHP, you can go get a PHP site on godaddy for $2 A month or whatever, you know, there's a bunch of PHP sites everywhere, that can give you hosting for dirt cheap. And for someone starting out, it's way easier. I mean, there are Lucy hosting options out there. But there aren't very many, they're hard to find and not mainstream. And so if you do know it, you got to basically set up your own server or use one of the shared hosting providers, but they're not cheap, thrilled prices are going up. You know, it's just it's not a much about I have
Michaela Light 1:12:48
the silver bullet answer to that Garin Darker, darker, and then you can put it anywhere you can put it on Digital Ocean, that's only a, you know, five to 10 bucks a month, depending on how much resources you need.
Gavin Pickin 1:12:59
Yeah, because DigitalOcean has the app platform now. So you can put it up there without even having a server. Yeah, so So there are options for it. But I think that's been the biggest setback. And the Docker container has cost more than a WordPress host, you know,
Michaela Light 1:13:13
but let's face it, how many enterprises need to spin up an app in WordPress, they may have a site in WordPress for their marketing department. But if you're doing real world work trying to do I know people who do stuff in WordPress, and it's quite a headache, using all those plugins, you know, custom PHP code, it's not, you know, it's not a walk in the park.
Gavin Pickin 1:13:34
But language has gained popularity because the developers use it. And so if we don't have the new developers using it, then we won't get them to push it. You know, if you can't play with it on your by yourself at home, and then push up your own little hobby sites as developers playing. We're not going to get them using it. We're not going to get them.
Michaela Light 1:13:53
You know, maybe we need Microsoft to buy ColdFusion and then they'll make it free.
Gavin Pickin 1:13:59
Michaela Light 1:14:00
yeah, that was a joke, guys.
Gavin Pickin 1:14:03
They they're buying everything else, but I bought everything else. But it's tough. I mean, then again, like people are struggling to get people to go to Ruby. Ruby has been fighting the rubies did thing just like how fusion has for years. And like finally somebody else's, you know, feeling out pain.
Michaela Light 1:14:18
But I think every language that's more than five years old has that I've seen PHP is dead. Perl is dead. Ruby is dead. I don't know No. Any language, you can sit Google and find that it's dead. All the languages have died. They're all now zombies. And I'll come back as reincarnations.
Gavin Pickin 1:14:37
While a couple of questions. We'll get to that. But let's just talk about our real quick. Yes. So here's using
Michaela Light 1:14:43
only three, only four more questions to cover today. So hang in there guys.
Gavin Pickin 1:14:48
So O is object oriented programming. So you know, since we had CFCs come out, we could actually do some object oriented things and the big thing with O is you know, capsule In your data with your methods and polymorphism, you know, inheritance, those are sort of the things that people will talk about when they're talking about object oriented programming. And see if C's have given us a great way to do that. And having a dynamic language like we have gives us a lot of options with oh, that even Java can't do some stuff. So it's interesting, it was pretty scary for a lot of people to sort of get used to it. But I know Matt Gifford wrote that book about object orientation oriented programming, cold fusion probably like 15 years ago. And that's probably the best book still to read. But we did a coldbox series, sorry, help fusion series on object orientation on CF cast, Nolan, Eric helped us produce that. And like that, really, I think fills the gaps for a lot of people. But I think people using, you know, basic Oh, with CFCs. And, you know, they just haven't got the full capacity. And a lot of people don't need it, because they don't know they what they're missing. So I think reading some books like clean code and clean architecture, and you know, the design patterns book by headfirst, all those great books and talking about design patterns and the problems they solve, and you know, how to how to use Oh, just to reduce, reuse, code, reuse and stuff, will get more people using it. But, you know, it seems like a lot more people just
Michaela Light 1:16:22
looking at it, just adding up those bottom four things people have used, though, for more than five years. It's about 86%. If you add the bottom four ones up, so yeah, because these are mutually exclusive. So seems like most people took the survey and you know, just a disclaimer, and not all ColdFusion developers take the survey, we wish they would but you know, it's the people who are more active in the groups and, you know, listen to podcasts and will have you tend to fill out surveys. So there's a dark matter section of ColdFusion developers that we've haven't quite figured out how to reach.
Gavin Pickin 1:16:57
And if you look at this over time to this has gone up a lot. Because before there were a lot of people that did not use Oh, but I think more people are moving towards it. Or, you know, maybe it's even more popular in other languages where we're seeing the translation. So
Michaela Light 1:17:10
well, and it's also unclear, like you said earlier, what level of our were they doing? Are they just writing some CFCs and calling it O? Or are they doing some more heavy level? stuff with objects? So
Gavin Pickin 1:17:22
yep. So better languages, because other languages we use are important. And
Michaela Light 1:17:28
what's the top language that that CF developers use gamma?
Gavin Pickin 1:17:32
Michaela Light 1:17:40
Gavin Pickin 1:17:46
But then again, they say, well, it's languages or environments, but Ajax was 37%. Which is interesting, because you'd think, is it an environment, but 33% of writing node. Now, so that's a pretty big number, then Java is up to that. So 30% of people writing ColdFusion, who filled out the survey are also doing Java. And then we've got p at 27%. And then some of these other ones are kind of newer languages, for the most part. Well, I guess not all of them, but pythons are 21.5% of people write in Python 19% dotnet. And then we got some C sharp, and some C++ at 14.25 and 7.25. Classic ASP is still 7% of people are writing classic ASP, why and that came out right when PHP and ColdFusion did and then upgraded and they've got you know, dotnet everything. So but then VB I haven't heard of anyone writing VB in a while and that's 7%.
Michaela Light 1:18:49
Wow, that's top, isn't it?
Gavin Pickin 1:18:52
Yeah, but even even that I thought people were running some, you know, C sharp and F sharp and even dotnet for desktop. But
Michaela Light 1:18:58
well, you can get VB dotnet, which is the same basic thing as C sharp, but without with a different front language, right? I mean, it's the same framework.
Gavin Pickin 1:19:07
I guess in even in the ASP classic, you could choose what if you wanted to write it in VB or whatever the other option was back in the day, there was different options. You could write your code. And
Michaela Light 1:19:18
now what What two things are interesting to me, first of all, many ColdFusion developers are multilingual. And you know, they use our languages great because you get you learn things from doing other languages, and it widens your opportunities. The other thing I want to notice there's a language there that's like gets a lot of social media exposure, which is cloture. There's a lot Yeah. Jumping up and down about it. But it's actually not that popular.
Gavin Pickin 1:19:44
Yeah. Because I think the main reason is because it's so different. It's a lisp language, right? And so it's very functional. There's way too many curly braces, and it's immutable. It's very different. But
Michaela Light 1:19:59
yes, it There are things that it's good for, but it is very hard to switch from one of these other languages to it. So,
Gavin Pickin 1:20:06
yeah, and so you know, go Lang is up there three and a half percent Ruby at 3.25. Flex is still there at 3%.
Michaela Light 1:20:13
Isn't flex dead? Yeah, but I mean officially is end of life, right? I mean, is there an open source flex I'm not aware of
Gavin Pickin 1:20:21
they're donated it to the Apache library, so they won't be some might still exist. Yeah, but the Groovy is that 2% An R, which is the Research Statistics library. 1.75. But then, the interesting thing is Perl 4% of people still got some Perl going on. Oh, yeah. I remember that was before ColdFusion. For me, that was yes.
Michaela Light 1:20:41
It's like your study is old, I want to say or more Perl. So pretty. There's still people doing Perl, because there's old sites that were written in it. So yeah,
Gavin Pickin 1:20:51
I mean, to be honest, sometimes you drop into Perl from the command line for different things. Are you you run some command line tools that,
Michaela Light 1:20:57
right? Yeah, it's a great scripting language too. So you know, one of the first scripting languages, I want to say, of course, now with command box, right, all the scripts and ColdFusion code, so
Gavin Pickin 1:21:07
yep, it sure can even bash scripts, when you run it from command line, and it reads it and says, Oh, you need C'mon box for this. And the
Michaela Light 1:21:15
Wow. Let's wrap up with two questions about where people, you know, where they working, how big the organizations are, and how many developers ColdFusion developers there are at the organization?
Gavin Pickin 1:21:25
Yep. So this one here, this is looking at the number of companies that have ever had one day of between two and five, six and 1011 to 2020 31. Sorry, 20 to 30 or 31 plus. And so there's 100 or 25% of people, they're the only ColdFusion developer at their position. It's kind of sad. It's pretty sad
Michaela Light 1:21:50
band or it's freedom. The other way to look at it.
Gavin Pickin 1:21:53
Yeah, they could be working for themselves. So that's the next question talks about the number of employees of their companies, which will sort of tie into it, but 100 of them are the Army's whole fusion deal. Now there's 40% of people have between two and five, dibs there, which sounds about right, usually this a small team, and most companies will have that. And then there's 14.3% have a team of between six on our team, but number developers at their organization, that could be spirit, but six to 10 devs in their organization, and 10% of them have 11 to 20. So the interesting thing is about 10 and a half percent have 20 or more. So that's not too bad. But obviously, in the size of companies, there are listed ColdFusion developers, we don't have too many, you know, 100 Plus, I
Michaela Light 1:22:43
guess when we're trying to understand this, we should correlate the data between how many deaths are there and how big the organization because, you know, when you've got Boeing that uses cold fusion, you know, Boeing must have 100,000 employees more, I don't know. And they have two or 300, ColdFusion. Developers, it's my understanding. Last time I chatted with someone, they're very, they had their own confusion newsgroup, just for Boeing employees at one point. But so it's hard to tell with these numbers, you know, they have lots of coffee developers, because they're, you know, a big organization or a federal agency. Yeah, they have a lot of developers because you know, it's really important to their company. You know, the apps they're doing and that, but they're a medium sized company, it's hard to tell.
Gavin Pickin 1:23:29
Yeah, maybe we should have one for future years about how many developers in your team or group or something like help, because there might be like you say, there might be 100 employees that do cold fusion, but they work in their own little silo? Sure, they're spread around. Because if we look at
Michaela Light 1:23:46
cold fusion is great for doing departmental apps. So that could be true, you know? Yeah, I mean, that's a common use case. They say someone snuck it in because, you know, they got past the IT department, we only do Java, because they snuck it in to do a departmental app. And
Gavin Pickin 1:24:02
so, because we were looking at this here, like surprisingly, there are a ton of companies like we have about 20% of companies have 1000 employees or more. Wow. So that's a big number. So we've got
Michaela Light 1:24:16
so clear, I can't, I can't quite think what a fortune 1000 company is, in terms of size, but it's way more than 1000 employees.
Gavin Pickin 1:24:26
Yeah, I'm gonna have to look that up.
Michaela Light 1:24:30
But I think it's safe to say and I think Adobe said this, like 70% of fortune 100 companies use cold fusion, and all government. I'm pretty sure all US government agencies use cold fusion, or there's very few exceptions.
Gavin Pickin 1:24:44
Yeah. But are they filling up the survey? And we're not sure. But yeah, so I mean, for an example, like Home Depot has 500,000 employees, Accenture 6000, the Postal Service's 560,000 So you probably have to use COVID Usually, yep. So, I mean this a lot of the Fortune five hundreds now they're all over 200,000 300,000 employees. Wow. So and that's in the Fortune 500. But
Michaela Light 1:25:14
most in the survey most was small businesses by looks that way. So
Gavin Pickin 1:25:19
2120 employees, there's 40% of the using that. And so under, under 50 employees, we had 53%. Yeah, so more than half the people filling up the survey was a small business under 50 people. And if you go up even further, the 60% of people are in companies with 100 people or less. Wow. So if you got 100 people list, and you look at the developers, you know, if they got, we have 80% of developers are in teams between one and 10. But you know, we got 60% of the companies are under 100. So it's not too bad. So it looks like there's some decent groups in there, you know, so kind of interesting numbers. So there's quite a few companies that are small, but there's quite a few developers of these companies so
Michaela Light 1:26:06
well, that we've come to the end of this section, we're gonna have a part three, where we're talking about the ColdFusion, community deployment options, and comments and wrap up feedback that we got on the survey that has some interesting info in there. And then also, we're going to look at trends over time, either in that episode, or in a future one. So anything else you want to share? Gavin?
Gavin Pickin 1:26:28
I mean, I think this is great. You know, I really, really enjoyed going through it and discussing it. And I think if you guys think there's some questions that we should ask next year, let us know. So Makayla can add them to the survey, because, you know, there's some information we're missing. And usually when people put the other and they list things in the other, if they're important enough, we'll mention them here. But usually, we just use those to help decide what the next year's options will be. Right? So
Michaela Light 1:26:56
every year, we analyze the variety and options and see if something's really popular, and it needs to be added in. We also look, to be honest, where people didn't pick off an option very much. And we eliminate it from the options because you know, why clutter up the survey? With things people don't do?
Gavin Pickin 1:27:14
So yeah, like MOBA mobile got no votes for the programming language or
Michaela Light 1:27:19
going by a power. The only exception is if it's a bleeding edge thing like those message queue things will, you know, we will leave those in because we think more people are going to adopt that over time. And that's generally been true on technologies. Like if we went back 10 years and said, How many people use codebox? Not that many people used it back then even though it existed, right? Yep. A lot less, that's
Gavin Pickin 1:27:46
for sure. So, you
Michaela Light 1:27:48
know, we do a combination of looking at the data and also like, you know, what, what, what are the trends here? For sure. Cool. Well, thanks so much for coming on podcast. People want to find you online. Gavin hat. One of the best ways to do that.
Gavin Pickin 1:28:04
Je pickin on Twitter. And then obviously, if you go to the otter solutions, you'll you'll see a bunch of blog posts or different meetups and everything. I do a lot of videos on cfgs.com. But Twitter is the best way. I'll meet you when I'm doing the, you know, the CFML news podcast and they usually retweet a lot of things from other people too. So that's probably the best way but I'm on CFML slack on the box team slack. You know, anyone everywhere. ColdFusion developers are I'll be there too. So
Michaela Light 1:28:32
Excellent. Well, thanks for coming on the CF live podcast today.
Gavin Pickin 1:28:35
Yeah, no problem. Thanks a lot for having me and we'll see you for part three.