Need a presenter for your user group or conference? Drop me a line and let's schedule something! --Nolan
- Building Your First Package on ForgeBox
I know what you’re thinking: “Hey I’ve got this open source idea I want to share but it’s not a full blown ColdBox app, it’s just a library, or handful of useful functions. Or some other thing I wrote ages ago.”
The truth is you only need to add a tiny bit of machinery around most non-ColdBox code to make it shareable via ForgeBox! We can take collections of functions, or legacy CFincludes or custom tags and other non-ColdBox things and make them usable via ForgeBox without much hassle. Let’s learn how!
- Crash Course in CSS Grid + Flexbox
CSS Grid and Flexbox are two great CSS tools that solve a lot of layout problems for us. All the grid layout work we’ve done via Bootstrap can now be done with just a handful of CSS properties that are already baked into modern web browsers. If you’ve ever used Bootstrap just to get an easy responsive layout working (and we have all done this!) you know that Bootstrap works, but this can add a lot of bloat to the application, especially if you’re not using Bootstrap for other features as well. Instead, let’s learn CSS Grid and Flexbox, get the same layout benefits but without needing to install yet another CSS framework.
- What's New in Bootstrap 4?
Bootstrap has evolved tons! Version 4.2.1 is out now with new classes for grid layout options, accessibility, spinners, iOS style switches, font utilities and tons more. If you’re using Bootstrap for just 3-column layouts you’re missing out! Come learn about other features in the latest version and ways it can improve your app!
- Crash Course in Angular
Angular used to be AngularJS. Then it became Angular 2. Then they skipped version 3. Then 4, 5 and 6 came out in rapid fire succession. Where do you begin?! We’ll look at how to start building an Angular project from scratch. Beginning with some basic Node commands, we’ll scaffold out an Angular project and look at how the project is organized. Next, we’ll walk thru some basics of TypeScript and MVVM basics. We’ll end with building your first Angular project, some tips on debugging and places to look up more information.
- Real World Scenarios For Modern CFML
The recent versions of ColdFusion have added many new language features. We’ve now got closures, functional programming constructs, QueryExecute, the safe navigation operator, the elvis operator, and even more coming in future releases. For people new to functional programming or object oriented programming, it can be hard to see where these features can be beneficial. Let’s fix that!
- Connecting Vue.js and CFML
- Connecting AngularJS and ColdFusion
(This presentation can be done as a 1-day hands-on workshop, as a regular 1-hour session, or as a more involved 2-hour deep dive.)
- Crash Course in jQuery
- Even More HTML5
HTML5 has been finalized but the spec is so big, browser makers have been slow to implement all the features. Still, several new (and useful) things have been making their way into the latest builds of FireFox and Chrome (and those other guys too) that are worth noting. Maybe you can stop relying on so many third-part libraries now. Maybe things that required hacks in CSS before can now be done easily. Let's find out!
- Mura ORM + Feed API = Awesomeness
Two of the most powerful features in Mura 7 are the improvements made to Mura ORM and the Feed API. Mura ORM takes care of your CRUD-type operations, plus manages changes to the database tables as you’re developing. The Feed API can be used to write advanced filters, reports, and other queries. Between these 2 features you almost never have to write a SQL statement again! We’ll start by looking at some basic examples of how to use ORM and Feed API, and we’ll also look at some real-world examples of using both of these in your custom Mura development.
- Infinite Scrolling With Mura 7
Pagination is boring! Let’s add infinite scrolling to our site ala Facebook and Twitter! Mura 7 added several new features that can be combined to do just that. In this session we’ll look at some functions in the new m() scope in Mura 7, new functionality in Display Objects, and how to manipulate them on the client-side at run-time. Then we’ll combine all of this together to show you how to build Infinite Scrolling into your own Mura website.
- MVC With and Without a Framework
So you've looked at CF Components, and kind of understand the basics of how they work. Everyone says "frameworks are the way to go", but there's still a big knowledge gap between those 2 points. As each framework has its own terminology, how do you know where verbiage for one begins and the other one ends? Is "Controller" a Model-Glue specific thing? What about a "Service Layer" or a "View"? There's very little documentation available about the "Model-View-Controller" pattern for ColdFusion, that's not specific to a CF framework...and that's often what causes the confusion for people newer to OO development. In this talk we will go over a basic application that's built using the Model-View-Controller design pattern, but does not use any specific framework to get there. We'll also show when using the MVC pattern by itself may be enough for your app, when going to a full fledged framework may be the better way go to, and how easy it is to do so. For maximum benefit, you should have an understanding of how the CFComponent tag works, and we'll take it from there.
- All About Application.CFC
Still using Application.CFM files? You might be losing out on some easy improvements to your application. Application.CFC takes what Application.CFM does and improves upon it greatly. Rather than having the entire file run on every page request (which can be really slow!), you can break the code up so only sections run the first time the app starts up, when a new user longs on, when a new page request starts, when an error is thrown, and much more. Though it’s a CFC file, you don’t even have to know object-oriented programming to take advantage of Application.CFC. In this talk we’ll take a look at a legacy application using Application.CFM and step thru moving the code to an Application.CFC file, discussing the benefits and best practices along the way.
- Modularity Shoot-Out: CFInclude vs CFModule vs Custom Tags vs CFFunction
Object Oriented Programming with CFComponents is definitely the direction most development is headed. But before jumping into OO territory, there is still a lot of modularity and code re-use that can be done with just a few tags - CFInclude, CFModule, Custom Tags and CFFunction.
- Git Source Control: for the Rest of Us
What about those designers/JS/CSS folks that WEREN'T using Subversion, and don't CARE about how under the hood Git uses a different type of pointer file storage thing, blah blah blah? There's a whole new wave of developers/designers that could stand to have an intro to Git that matches their workflow more concisely.
- Crash Course in Ionic + AngularJS
- Dependency Injection, why is it awesome and why should I care?
- HTML5 201
By now we're all familiar with the basics of HTML5 -- new tags for sections of a web page, new form elements, and so on. Now that the spec is finalized, let's take a look at some of the other new features HTML5 has made available to us. In this talk we'll go over things like File IO, audio, video, and SVG support, and show you various new features that are already baked into current web browsers. We'll also show some code samples on how to use them in a modern web application.
- Font Awesome - Never Build Icons Again
Tired of having to make "delete", "edit", "new", "save", "confirm", and "purchase" icons for your clients? In 3 different sizes (desktop, tablet, mobile)? And new versions for each color scheme you use? Enter Font Awesome! Font Awesome gives you scalable vector icons, that are totally customizable, all by just including a CSS file in your project. It's free, compatible with current devices and browsers, easy to use and customize to your liking. Font Awesome is compatible with Bootstrap, various other frameworks, screen readers, retina displays and cuts down the time you spend doing "boilerplate" work in PhotoShop for every project!
- Getting the most from Ember.js