October 17, 2014
Adobe Technology Vision & Strategy in the Enterprise
This two hour session will give attendees a hands on introduction into the mobile features of ColdFusion 11. Using their own equipment attendees will go through the mobile development process and have a working application on their device at the end of the session. This session will give a brief overview of project setup.
Attendees will learn to use some of the more advanced APIs that are available such as Camera, File, and Geolocation. This session will also go over how to take your code and generate an installable application.
Note: It is not necessary to attend the Day 1 session to attend the Day 2 session and vice versa. Both sessions will cover different material but the Day 1 session will explain project setup in more detail.
- Very brief recap of project setup process
- Camera API
- Filesystem and File upload
- Packaging and Deployment
This session will be presented by Dave Ferguson and Simon Free jointly.
Reviewing code techniques that can be employed which easily ward-off cross site scripting, SQL injection and other attacks from within the your code set. These techniques go beyond using CFQUERYPARAM and include defending items from the three major attack vectors: CGI, Form & Cookie. Techniques accepted and published by OWASP.
ColdFusion has been driving high performance, mission critical websites for as long or longer than most of its competitors. Being able to scale environments in a way to maximize uptime with clustering and failover has been a necessity for any site, as traffic and business priority demands increase. With the new and improved PDFg service built for high performance PDF generation, ColdFusion continues to deliver with performance in mind. This session will discuss clustering options and scalability, with a focus on taking advantage of the current feature set to ensure uptime in your architecture. We’ll talk about how to cluster ColdFusion servers and the new PDFg services, load balancing and failover options, and session management for scalability.
- Clustering options for ColdFusion
- Load balancing
- Clustering PDFg services for performance and scalability
- What is Dependency Injection?
- When / why would I use this in my projects?
- Intro to Aspect-Oriented Programming (or AOP).
- Intro to Inversion of Control (IOC).
- What is "Bean Management"?
- Code samples in a variety of languages showing when it might be useful to add some DI magic into your application.
Adobe PDF's (Portable Document Format) is a powerful way to distribute digital documents and forms. Adobe ColdFusion 11 introduced new tools into the already robust library of existing PDF features available in previous versions. Come find out how to generate both PDF documents and forms as well as collect form data utilizing the PDF features of Adobe ColdFusion.
You all have been using ColdFusion for a long time and are quiet proficient in CFML language. But do you what is happening internally when you use your favorite features? This session gives an inside view of the ColdFusion server. In this session you will learn about internals of some features like REST services and Web sockets. You can know everything about how Scope search works in ColdFusion. We will also be seeing some interesting server and application settings.
WebSockets are here. Are you taking advantage of this technology yet? If not, ColdFusion makes it really simple as of version 10. In this presentation I will cover how easy it is to get WebSockets working on your site. I will also cover real life pitfalls that I have encountered in my own applications, how to debug and overcome.
Decisions made in code today, can have far reaching consequences in the future. I'm often asked to help a development team scale an application for better performance. I've collected a number of programming decisions that affect how an application can be scaled up. In this session, we'll talk about what you are doing right now, that could prevent your application from reaching it's potential.
Understand 5 important techniques for scaling ColdFusion.
Understand the ColdFusion specific techniques in wide use preventing an application from using popular scaling techniques.
See code of how to mitigate these ColdFusion specific techniques to provide the same function while allowing scalability techniques.
Look at use cases of how an application was made to scale and discuss the tradeoffs.
Learn to evaluate which areas of scaling would be useful to address certain scalability problems.
In this session, veteran CF server troubleshooter Charlie Arehart will present a session that identifies the various options available to monitor CF, from tools included in CF, to third party solutions. More important, he will explain WHY it’s important to monitor CF, and some aspects of these tools that may give you insight to understand problems, which maybe you never even noticed was available in the tools if you’ve had them for years. He’ll cover the CF Enterprise Server Monitor, FusionReactor, SeeFusion, as well as some lesser known tools. He’ll show that these tools are for more than “watching a screen” but about alerts as well, and the value of the alerts and stack trace features to tell you why a request us running long, down to the current line of code. He’ll also reserve a little time to show some of the key problems that can be spotted using such tools, and how.
1.5 hour workshop - Learning the basics of TDD & BDD with Lego. In this fun session, you will learn the basics of Test Driven Development (TDD) / Behaviour Driven Development (BDD) through the use of LEGO bricks. We will create failing tests, make them pass and refactor. No code will be written, we will be using LEGO bricks. By working with our hands, the technical concepts that can be tricky to get your head around will be simplified.
What you will learn:
- Basics of TDD / BDD
- How to think about design
- Simple is better than complex
- Why refactoring is important
This session gives an insight into the internals of the bundled Tomcat server and ColdFusion connector. The session helps you understand the routes taken in a request to the ColdFusion server and hacks that power them to go beyond. The session aims to answer your questions around ColdFusion connectors, webservers and tweaks that improve connector performance. Also included, is a sneak peek into getting ColdFusion to work with webservers like NginX.
With each release of ColdFusion more security features are added. Many times we hear about them, but are not sure what problems they solve or how they should be implemented. Come learn about the new security features in Adobe ColdFusion 11 and how to start using them in your applications. While we're at is we'll look at some of the new security features that were added in ColdFusion 10 (in case you are a little behind).
A software craftsman is only as good as his or her tools, and quite frankly-- most CF developers' tools suck. For years CFML developers have relied on IDEs and text editors for their work, but what about when they wanted to spin up another server, install a library, scaffold out another site, perform a repetitive task, or just try out a snippet of code? The answer is that they did it manually. And what if they needed to do it again the next day? It was the same old story! Even though CFML as a language has modernized over the years, other platforms have advanced in the arena of developer tools while many of us still sit at work all day staring at the same glorified text editor. If you've only ever used CF, you probably don't even realize what you're missing, and it falls in 3 main categories:
- Power and expressiveness of tools
- Sharing and acquiring code with the community
- Productivity through automation
A GUI may provide the lowest entry barrier and initial intuitiveness, but it always comes with limits and restrictions to what you can do, and how easily/quickly you can do it. A Command Line Interface (CLI) is a common paradigm with a simple interface that can support any number of commands for all the common tasks you perform on a daily basis like creating new bits for your application, running tests, installing 3rd party libraries or starting a server. Another useful ability is to be able to run ad hoc CFML code without needing to spin up your CF engine. What if there was a simple text-based API that ran the same on Windows, Mac, or Linux to do all that?
Quick, how do you install the latest version of library XYZ into your site? (Please tell me you're using other developers' hard work and not writing everything yourself). If your first thought was "open up a web page and download a zip file", stop right there-- Brachiosaurus just called and he wants his workflow back. Other platforms have made their name in perfecting the art of gathering community libraries into one standardized format that can be searched for, manage dependencies, and downloaded with a simple command anywhere and any place. Forget the zip files-- what if you could just type "install XYZ" and go get another cup of coffee? And that ABC library that XYZ depends on-- don't worry it will be automatically installed as well.
Some of your day-to-day tasks might not seem so bad. So you create a new site for each new client every month with the same defaults and base libraries. You manually check every couple of months to see if any of your libraries have new versions. Every day you run your unit tests a few dozen times. And every time you need a new controller you copy the last one you made so you don't have to look up the method signatures again. Every one of those tasks should be scriptable and repeatable-- work smarter, not harder! What if you could create a "recipe" for a new site with all the goodies you like and just run the installation and setup with a single line of code to guarantee it was the same every time? Or what if running your BDD test suite was as simple as typing "testbox run"? You don't have time for boilerplate activities all day long, that coffee isn't going to drink itself!
A CLI, REPL, and Package Manager aim to help you be better, faster, and more powerful at everything you do. Come "up" your game and discover the power of CommandBox as part of your new everyday workflow. Go Commando!
Microsoft Office is the 'de facto' standard in most business environments. In this session we will look at different ways of integrating with the two most used applications of the office suite, Word and Excel.
MS EXCEL: Come learn how to create, access and manipulate spreadsheets programmatically with the CFSPREADSHEET tag in ColdFusion. Although we will cover basic read and write features, we will also cover more advanced techniques like working with formulas and formatting, creating multiple sheets and even creating dynamic charts.
MS WORD: We will learn how to create, read and edit Word documents using OOXML, Mhtml and RTF formats. This will be accomplished without 3rd party tools, and without installing any software or extra libraries on the server.
FORMAT: Presentation with slides / live code review