Luis Majano talks about “Extreme testing and slaying the dragons of ORM” in this episode of the ColdFusion Alive Podcast, with host Michaela Light. Luis is one of the speakers for the upcoming Into The Box ColdFusion Conference, where he will talk about the theory of Behavior Driven Development, Slaying the ORM Dragons with CBORM and The Ortus Keynote.
“And usually with test driven developers, developers really give up. It's really not fun. That's the truth. And it's tedious. And sometimes when you have big object-oriented applications it can really be daunting to create all the mocks, and sometimes you're just testing an ‘if statement' at that point. So it can be really dumb at that point.” – Luis Majano
- Why Behavior Driven Development
- How is it different from Test Driven Development
- How TestBox makes both easy
- Semantics BDD deep dive
- Why you shouldn't miss the Ortus Keynote
- Box roadmaps
- Modern CFML development
- Addressing the issues companies adopting ColdFusion: Language shaming, modern tools
- Why it is sometimes hard to hire good CF developers
- The driving force behind all things Ortus
- How Luis came to the brink of moving to Goovy and why he came to ColdFusion
- Behavior-Driven Integration Development Exposed
- How Behavior-Driven Integration Development is different from Behavior Driven Development
- Why you should be doing it
- How to implement it fast
- Slaying the ORM Dragons with CBORM
- Why use an ORM
- Why it is sometimes seen as a dangerous dragon
- How to tame the ORM dragon
- Why are you proud to use CF?
- WWIT to make CF more alive this year?
- What are you looking forward to at Into The Box?
Mentioned in this episode
- All BDD code will be available at this repository: https://github.com/elpete/integrated-workshop
- Code Coverage with Testbox + FusionReactor
Luis Majano is a Computer Engineer born in El Salvador and is the president of Ortus Solutions (www.ortussolutions.com), a consulting firm specializing in web development, architecture and professional open source support and services. His background includes over 16 years of software development experience, architecture, and system design. He is the creator of the ColdBox Platform (www.coldbox.org), CommandBox CLI (www.ortussolutions.com/products/commandbox), ContentBox Modular CMS (www.ortussolutions.com/products/contentbox) and is an Adobe Community Professional.
Michaela Light: Welcome back to the show. I'm here with Luis Majano and he's the CEO of Ortus and all things Box. He created ColdBox and CommandlineBox and TestBox. I don't know. All kinds of things. If it has ‘Box' in the name he probably had something to do with it. And we're going to be talking about Behavior Driven Development. Why we should be doing it. Why it's different from Test Driven Development. How TestBox makes both easy. And we're going to look into some of the semantics of that.
And then Ortus is also doing a Keynote of this conference and why you shouldn't miss that. Going to look at some of the roadmap stuff. What modern ColdFusion development is. Addressing the issues that companies adopting ColdFusion have with language shaming, modern tools, and sometimes it being to hire good ColdFusion developers. And the driving force behind all things Ortus.
And I managed to get Luis to tell us a little story about how he came to the brink of moving to Groovy and why he came back to ColdFusion. This was a few years back.
We'll also be looking at Behavior Driven Integration Development, because he's giving a workshop on that, and how it's different from Behavior Driven Development, which got my head scratching for a bit but we're going to make it all clear in this episode. And why you should be doing it and how to implement it first.
And then finally we're going to wrap up by slaying the ORM dragons with CBORM. And why ORM is sometimes seen as a dangerous dragon and how you can tame it.
So welcome Luis!
Luis Majano: Thank you. Thank you for having me, Michael.
Michaela Light: So excited by the Into the Box conference. There's so much cool ColdFusion stuff here and it's not your first ColdFusion stuff, this is all modern stuff.
Luis Majano: Yes. Definitely very very excited. Over 28 sessions, it's just really, really exciting.
Michaela Light: So you're doing a whole day on Behavior Driven Development. So what exactly is Behavior Driven Development?
Luis Majano: Yeah so I'm doing a workshop pre-conference. We have a set of workshops and I'll be leading the Behavior Driven Development workshop.
So Behavior Driven Development is an evolution of Test Driven Development, so it's kind of show casing people …
And to continue learning how to make your ColdFusion apps more modern and alive, I encourage you to download our free ColdFusion Alive Best Practices Checklist.
Because… perhaps you are responsible for a mission-critical or revenue-generating CF application that you don’t trust 100%, where implementing new features is a painful ad-hoc process with slow turnaround even for simple requests.
What if you have no contingency plan for a sudden developer departure or a server outage? Perhaps every time a new freelancer works on your site, something breaks. Or your application availability, security, and reliability are poor.
And if you are depending on ColdFusion for your job, then you can’t afford to let your CF development methods die on the vine.
You’re making a high-stakes bet that everything is going to be OK using the same old app creation ways in that one language — forever.
All it would take is for your fellow CF developer to quit or for your CIO to decide to leave the (falsely) perceived sinking ship of CFML and you could lose everything—your project, your hard-won CF skills, and possibly even your job.
Luckily, there are a number of simple, logical steps you can take now to protect yourself from these obvious risks.
No Brainer ColdFusion Best Practices to Ensure You Thrive No Matter What Happens Next
Modern ColdFusion development best practices that reduce stress, inefficiency, project lifecycle costs while simultaneously increasing project velocity and innovation.
√ Easily create a consistent server architecture across development, testing, and production
√ A modern test environment to prevent bugs from spreading
√ Automated continuous integration tools that work well with CF
√ A portable development environment baked into your codebase… for free!
Learn about these and many more strategies in our free ColdFusion Alive Best Practices Checklist.