Register Here
  Call For Papers
  Power Panels
Untitled Document
2018 Platinum Sponsor

2018 Gold Sponsor

2018 Tech Sponsor

2018 Partners

2018 Exhibitors

Untitled Document
2018 Media Sponsors

Untitled Document
2017 West
Premium Sponsors



Untitled Document
2017 West
Keynote Sponsor

Untitled Document
2017 West Exhibitors


Untitled Document
2017 West JETRO ×
Six Prefectures
of Japan
Pavilion Exhibitors

Untitled Document
2017 West Media Sponsors

Untitled Document
2017 East
Premium Sponsors





Untitled Document
2017 East Exhibitors

Untitled Document
2017 East Media Sponsors

Untitled Document
  Think Big – Now Think Even Bigger
  Join Us at Internet of Things at Cloud Expo, November 11-13,
at the Javits Center!

The Internet of Things (IoT) is the most profound change in personal and enterprise IT since the creation of the Worldwide Web more than 20 years ago.

All major researchers estimate there will be tens of billions devices - computers, smartphones, tablets, and sensors - connected to the Internet by 2020. This number will continue to grow at a rapid pace for the next several decades.

With major technology companies and startups seriously embracing IoT strategies, now is the perfect time to attend Internet of Things at Cloud Expo in New York City. Learn what is going on, contribute to the discussions, and ensure that your enterprise is as "IoT-Ready" as it can be!

Delegates to Internet of Things at Cloud Expo will be able to attend eight separate, information-packed tracks:

  • Enterprise Cloud
  • Digital Transformation
  • The API Enterprise | Mobility & Security
  • DevOps | Containers & Microservices
  • Cognitive Computing | AI, ML, DL
  • Big Data | Analytics
  • IoT | IIoT | Smart Cities
  • Hot Topics | FinTech | WebRTC

There are 120 breakout sessions in all, with Keynotes, General Sessions, and Power Panels adding to three days of incredibly rich presentations and content.

We'll see you in New York!

Day 3 Keynote at @ThingsExpo | Chris Matthieu, CTO of Octoblu
In his keynote at @ThingsExpo, Chris Matthieu, Director of IoT Engineering at Citrix and co-founder and CTO of Octoblu, focused on building an IoT platform and company. He provided a behind-the-scenes look at Octoblu's platform, business, and pivots along the way (including the Citrix acquisition of Octoblu).
  Themes & Topics to Be Discussed

Consumer IoT
• Wearables
• Smart Appliances
• Smart Cars
• Smartphones 2.0
• Automation
• Smart Travel
• Personal Fitness
• Health Care
• Personalized Marketing
• Customized Shopping
• Personal Finance
• The Digital Divide
• Mobile Cash & Markets
• Games & The IoT
• The Future of Education
• Virtual Reality

Enterprise IoT
• The Business Case for
x IoT
• Smart Grids
• Smart Cities
• Smart Transportation
• The Smart Home
• M2M
• Authentication/Security
• Wiring the IoT
• The Internet of
x Everything
• Digital Transformation
x of Enterprise IT
• Agriculture
• Transportation
• Manufacturing
• Local & State
x Government
• Federal Government

IoT Developers | WebRTC Summit
• Eclipse Foundation
• Cloud Foundry
• Linux Containers
• Node-Red
• Open Source Hardware
• Ajax and the IoT
• Leveraging SOA
• Multi-Cloud IoT
• Evolving Standards
• WebSockets
• Security & Privacy
x Protocols
• GPS & Proximity
x Services
• Bluetooth/RFID/etc
• Nest Labs

The Top Keynotes, the Best Sessions, a Rock Star Faculty and the Most Qualified Delegates of ANY Internet of Things Event!

The future of computing lies in these things. As computing takes a much more active role in our lives it will at the same time become much more invisible. Internet of Things Expo will address the challenges in getting from where we are today to this future.
The high-energy event is a must-attend for senior technologists from CEOs on down – including CIOs, CTOs, directors of infrastructure, VPs of technology, IT directors and managers, network and storage managers, network engineers, enterprise architects, and communications and networking specialists.

@ThingsExpo Power Panel | The World's Many IoTs: Which Are the Most Important?
The Internet of Things is clearly many things: data collection and analytics, wearables, Smart Grids and Smart Cities, the Industrial Internet, and more. Cool platforms like Arduino, Raspberry Pi, Intel's Galileo and Edison, and a diverse world of sensors are making the IoT a great toy box for developers in all these areas. In this Power Panel at @ThingsExpo, panelists discussed what things are the most important, which will have the most profound effect on the world, and what should we expect to see over the next couple of years.
Benefits of Attending the Three-Day Technical Program
  LEARNexactly why Internet of Things is relevant today from an economic, business and technology standpoint.
  HEAR first-hand from industry experts the common issues and requirements for creating a platform for the Internet of Things.
  SEE what new tools and approaches the Internet of Things requires.
  DISCOVER how to drive a distributed approach to the Internet of Things, where applications move to the data.
  FIND OUThow the vast volumes of new data produced by the Internet of Things provides a valuable new source of business insight through advanced analytical techniques.
  MASTER how the ongoing development of smart cities, cars, and houses will enhance connectivity infrastructure.
Lunch Power Panel | Microservices & IoT- Moderated by Jason Bloomberg
In this Power Panel at @DevOpsSummit, moderated by Jason Bloomberg, president of Intellyx, panelists Roberto Medrano, Executive Vice President at Akana; Lori MacVittie, Evangelist for F5 Networks; and Troy Topnik, ActiveState's Technical Product Manager; and Otis Gospodnetic, founder of Sematext; peeled away the buzz and discuss the important architectural principles behind implementing IoT solutions for the enterprise. As remote IoT devices and sensors become increasingly intelligent, they become part of our distributed cloud environment, and we must architect and code accordingly. At the very least, you'll have no problem filling in your buzzword bingo cards.

Introducing User Defined Functions
Introducing User Defined Functions

Support for user-defined functions is easily the most requested and anticipated enhancement to the ColdFusion Markup Language (and the announcement of this feature at last year's Developer Conference was met with an applause that can only be called thunderous).

In my last column I mentioned in passing that ColdFusion 5 would support user-defined functions (UDFs for short). With ColdFusion 5 just about out the door, I thought I'd take this opportunity to introduce you to UDFs - what they are, and how to write and use them.

Why UDFs?
CFML is made up of two types of instructions:

  • Tags (like <CFQUERY> and <CFMAIL>)
  • Functions (like Now(), and StructNew())
Ever since ColdFusion version 2, developers have had ways to write their own tags, and many have done so. After all, writing your own tags allows you to write maintainable and reusable code.

But we've never had a way to write our own functions. For example, ColdFusion provides a whole range of list manipulation functions (ListFirst(), ListGetAt(), ListSort(), etc.), but there's no function to get the greatest or smallest value in a list (ListMin() and ListMax()). To get these values you'd need to loop through the list doing the comparisons yourself, and there'd be two ways to do it:

  • Inline, right in the middle of your code
  • By creating a Custom Tag
Neither option is ideal. The former is not reusable; each time you'd want to obtain these values you'd need to copy and paste the block of code. The latter is inefficient (Custom Tags execute far slower than do functions) and clumsy because Custom Tags have no mechanism by which to return data. The right solution is a user-defined function - which is now possible.

It's worth noting that many developers treat UDFs and Custom Tags as if they were interchangeable. The truth is, while many functions could be written as tags (and vice versa), the two have very different purposes. Custom Tags are best suited for operations and processes, complete blocks of functionality. UDFs are best suited for data manipulation, small and finite in scope, returning information to the caller.

The Basics
To demonstrate how UDFs can be used, here's a simple example. Suppose you need to use yesterday's or today's date repeatedly within your code. The CFML DateAdd() function can be used to add or subtract a day to today's date, so to refer to yesterday you could use DateAdd("d", -1, Now()), and to refer to tomorrow you could use DateAdd("d", 1, Now()). And you'd have to repeat these function calls every time they're needed.

Or you could create a couple of UDFs. CFML already has a function named Now() that returns today's date (and time). Why not Yesterday() and Tomorrow() functions to complement it?

Here's the code that creates these two new functions (this, like all code in this column, is fully usable, but you must be running ColdFusion 5):

// Get yesterday's date
function Yesterday()
return DateAdd("d", -1, Now());

// Get tomorrow's date
function Tomorrow()
return DateAdd("d", 1, Now());

As you can see, UDFs are created using CFML scripting between <CFSCRIPT> and </CFSCRIPT> tags. <CFSCRIPT> provides access to variable assignments, if statement processing, loops, and more, using script-style syntax similar to JavaScript. (For more information on using <CFSCRIPT>, see my column entitled "Stick to the Script" in CFDJ, Vol 2, issue 7).

This <CFSCRIPT> block defines two functions, one named Yesterday, the other, Tomorrow. Each is preceded by the keyword function so that <CFSCRIPT> knows we're about to define a function.

The function code itself is specified between curly braces (the { and } characters). Any valid <CFSCRIPT> code may be used within your UDF.

These functions are simple; all they do is return the result of a DateAdd() function. One adds 1 to Now(), the other subtracts 1 from Now(). That's it. This is about as simple as UDFs get.

The value returned must be preceded by the keyword return, and whatever follows return is returned by the function to the caller. You may return functions (as we did here), variables, or any other valid CFML expression.

Incidentally, you'll notice that my comments began with // (instead of being placed between <!--- and --->). <CFSCRIPT> uses the JavaScript syntax for comments (instead of CFMLs) so // is required before comments.

Using User-Defined Functions
Now that two new functions have been defined, how can they be used? Just like any other CFML functions. As long as the UDFs appear in the same CFM page or are included in your code via <CFINCLUDE>, we can use them like this:

Today is #DateFormat(Now())#
Yesterday was #DateFormat(Yesterday())#
Tomorrow will be #DateFormat(Tomorrow())#
As you can see, the new Yesterday() and Tomorrow() functions are used just like the built-in Now() function, and all three functions are passed to DateFormat(). Once defined, your own UDFs can be used like any other ColdFusion functions - there's no difference whatsoever.

Accepting Parameters
The functions created above are atypical in that they accept no param- eters, something most functions do. For example, UCase() takes the string to be converted, Min() takes the two values to be checked, and DateFormat() takes a date and an optional formatting specification.

UDFs can accept parameters - all you need to do is name the param-eter in your function definition. Here's an example of this:

// Escape a string to make it
// safe for use on WAP devices
function WAPSafe(string)
return Replace(string, "$", "$$", "ALL");
WAPSafe() is a function that takes a string and escapes it (replacing all dollar signs with double dollar signs) so that it's safe to send to a WAP device (in WML $ is used to prefix variables and thus can't be used in plain text).

The value passed to WAPSafe(), the string to be processed, is made available within the UDF code using the variable name specified - here, "string". The contents of string will be whatever was passed to WAPSafe(), and may be literal text, the results of other functions, or any other expressions. Regardless of what the string is and what it contains, it is accessible with our UDF as string. As such, it can be passed to a Replace() function that simply replaces all occurrences of $ with $$, and the UDF returns the converted string.

To call WAPSafe() I could do something like this:

WAPSafe() accepts a single param- eter, but UDFs may accept as many (or as few) parameters as needed. The only rule is that when defining multiple parameters, parameter names must be separated by commas.

Using Local Function Variables
We're not done yet. The next thing to learn is how to use variables within your UDFs. Any and all variables and scopes are visible within your UDF, but to prevent possible conflicts, variables created within a UDF are visible only within the UDF itself.

Here's a complete example (the one I demonstrated at the Developer's Conference). It's a function named CapsFirst(), which takes a string and returns a modified version of it with the first letter of each word in uppercase (capitalized) and all other letters in lowercase:

// Capitalize first char of each word
function CapsFirst(string)
// Define local variables
VAR outstring="";
VAR c1=0;
VAR c2=0;

// Loop through string
for (i=1; i LTE Len(string); i=i+1)
// Is this the first char in string?
if (i IS 1)
// First is always upper case
c1=UCase(Mid(string, i, 1));
// Get char and previous char
c1=Mid(string, i, 1);
c2=Mid(string, i-1, 1);

// If Previous char is . or space
if ((c2 IS ".") OR (c2 IS ' '))
// then upper case
// else lower case

// And put the string back together
outstring=outstring & c1;

return outstring;

CapsFirst() takes a single param-eter - the string to be processed. Within the UDF three local variables are defined using the "var" keyword. var creates local variables and assigns values to them. This UDF needs two counter variables (c1 and c2) and one variable to contain the converted string as it's being generated (outstring).

Next, the passed string is looped over, one character at a time. The first character in the string is converted to uppercase using the UCase() function, as is any character following a space or a period; any other characters are converted to lowercase using LCase(). As each character is converted, it's appended to the end of outstring, so by the time the loop has completed, outstring contains the entire converted string, which is then returned by the UDF.

As you can see, aside from the use of var to create and initialize variables, UDF code is all straight <CFSCRIPT>.

Variable Parameter Lists
The UDFs we've looked at thus far accept a fixed number of parameters. But many functions take optional parameters. For example, as mentioned earlier, DateFormat() takes two parameters - the first required and the second optional.

ColdFusion UDFs support variable parameter lists by providing access to all passed parameters via an array named Arguments (which contains one element for each param-eter passed). Because Arguments is a standard ColdFusion array, all the standard array manipulation functions may be used to access it - for example, the number of parameters passed can then be accessed as ArrayLen(Arguments). The first passed parameter would be accessible as Arguments[1] and the fifth as Arguments[5].

Optional parameters shouldn't be declared when the UDF is defined - any parameters named between ( and ) are required param-eters (an error will be thrown if they're not present). All required parameters, however, should be defined (so as to make them required).

Things to Keep in Mind
Now that we've covered the basics of ColdFusion UDFs, here are some important points to keep in mind:

  • UDFs are fast, much faster than Custom Tags (yes, it may pay to rewrite some of your Custom Tags as UDFs).
  • UDFs can be written only in <CFSCRIPT>, the same <CFSCRIPT> that you can use to write CFML code (with the exception of the var and return statements mentioned above).
  • To execute a UDF, it must be in the same CFM file, or included via <CFINCLUDE>, before it's used.
  • UDF code can call any function, both CFML functions and UDFs.
  • UDF code can't call tags.
  • Within a UDF all variables and scopes are visible.
  • By default, variables created within a UDF aren't visible outside the UDF.
  • Recursion is fully supported within UDFs.
  • You may not create a UDF with the same name as a built-in CFML function.
UDFs can be written when needed (right within your CFM page), or in libraries (files containing nothing but lists of UDFs) when they can be included as needed. There's no limit to the number of UDFs that may be written and used, and no limit to how many UDF libraries you include in your page.

Note: Visit to see (and download) a fast-growing public library of ColdFusion UDFs.

There you have it - ColdFusion user-defined functions. They're useful, they're fast, they're fun, and (as you've come to expect of ColdFusion) they're really easy to write and even easier to use. Best of all, they're finally here.

So, if you haven't already done so, plan on installing ColdFusion 5 immediately. This addition alone makes the upgrade worthwhile (and there's plenty more, too).

About Ben Forta
Ben Forta is Adobe's Senior Technical Evangelist. In that capacity he spends a considerable amount of time talking and writing about Adobe products (with an emphasis on ColdFusion and Flex), and providing feedback to help shape the future direction of the products. By the way, if you are not yet a ColdFusion user, you should be. It is an incredible product, and is truly deserving of all the praise it has been receiving. In a prior life he was a ColdFusion customer (he wrote one of the first large high visibility web sites using the product) and was so impressed he ended up working for the company that created it (Allaire). Ben is also the author of books on ColdFusion, SQL, Windows 2000, JSP, WAP, Regular Expressions, and more. Before joining Adobe (well, Allaire actually, and then Macromedia and Allaire merged, and then Adobe bought Macromedia) he helped found a company called which provides automotive services (buy a car, sell a car, etc) over the Web. (including Stoneage) is one of the largest automotive web sites out there, was written entirely in ColdFusion, and is now owned by Auto-By-Tel.

In order to post a comment you need to be registered and logged in.

Register | Sign-in

Reader Feedback: Page 1 of 1

You ARE Kidding? Right???

An expert programmer takes the time, and
trouble to write training articles, and
code samples, and post them on the web
for free, and you have the nerve to complain about the page format.

Guess what you idiot! If you look at the sides of the pages, they have promotional ads from sponsors, who are paying for these pages, and perhaps even for the author's time.

Gee, let me see, I'm a talented Cold Fusion Developer, who can get a production job for $60,000 to $100,000
a year, so I think instead of doing that, I'll write free articles for ignorant, unappreciative idiots like you!!!

Agreed. -Go to the print page and read it there.

It is annoying to have to change pages NINE times to see these articles. When you're on Page EIGHT and try to remember what you may have seen on page TWO as a reference (and you happen to not have a FAST DSL/CABLE connection) I just give up and say "The hell with it, I know I saw it somewhere, but where?". I got into the habit of copying each page to NOTEPAD and creating a REAL web page out of that, but that gets old too.

Presentation Slides
Traditional on-premises data centers have long been the domain of modern data platforms like Apache Hadoop, meaning companies who build thei...
Using new techniques of information modeling, indexing, and processing, new cloud-based systems can support cloud-based workloads previously...
IoT & Smart Cities Stories
Dynatrace is an application performance management software company with products for the information technology departments and digital business owners of medium and large businesses. Building the Future of Monitoring with Artificial Intelligence. Today we can collect lots and lots of performance data. We build beautiful dashboards and even have fancy query languages to access and transform the data. Still performance data is a secret language only a couple of people understand. The more busine...
The challenges of aggregating data from consumer-oriented devices, such as wearable technologies and smart thermostats, are fairly well-understood. However, there are a new set of challenges for IoT devices that generate megabytes or gigabytes of data per second. Certainly, the infrastructure will have to change, as those volumes of data will likely overwhelm the available bandwidth for aggregating the data into a central repository. Ochandarena discusses a whole new way to think about your next...
CloudEXPO | DevOpsSUMMIT | DXWorldEXPO are the world's most influential, independent events where Cloud Computing was coined and where technology buyers and vendors meet to experience and discuss the big picture of Digital Transformation and all of the strategies, tactics, and tools they need to realize their goals. Sponsors of DXWorldEXPO | CloudEXPO benefit from unmatched branding, profile building and lead generation opportunities.
All in Mobile is a place where we continually maximize their impact by fostering understanding, empathy, insights, creativity and joy. They believe that a truly useful and desirable mobile app doesn't need the brightest idea or the most advanced technology. A great product begins with understanding people. It's easy to think that customers will love your app, but can you justify it? They make sure your final app is something that users truly want and need. The only way to do this is by ...
Digital Transformation and Disruption, Amazon Style - What You Can Learn. Chris Kocher is a co-founder of Grey Heron, a management and strategic marketing consulting firm. He has 25+ years in both strategic and hands-on operating experience helping executives and investors build revenues and shareholder value. He has consulted with over 130 companies on innovating with new business models, product strategies and monetization. Chris has held management positions at HP and Symantec in addition to ...
DXWorldEXPO LLC announced today that Big Data Federation to Exhibit at the 22nd International CloudEXPO, colocated with DevOpsSUMMIT and DXWorldEXPO, November 12-13, 2018 in New York City. Big Data Federation, Inc. develops and applies artificial intelligence to predict financial and economic events that matter. The company uncovers patterns and precise drivers of performance and outcomes with the aid of machine-learning algorithms, big data, and fundamental analysis. Their products are deployed...
Cell networks have the advantage of long-range communications, reaching an estimated 90% of the world. But cell networks such as 2G, 3G and LTE consume lots of power and were designed for connecting people. They are not optimized for low- or battery-powered devices or for IoT applications with infrequently transmitted data. Cell IoT modules that support narrow-band IoT and 4G cell networks will enable cell connectivity, device management, and app enablement for low-power wide-area network IoT. B...
The hierarchical architecture that distributes "compute" within the network specially at the edge can enable new services by harnessing emerging technologies. But Edge-Compute comes at increased cost that needs to be managed and potentially augmented by creative architecture solutions as there will always a catching-up with the capacity demands. Processing power in smartphones has enhanced YoY and there is increasingly spare compute capacity that can be potentially pooled. Uber has successfully ...
SYS-CON Events announced today that has been named “Media Sponsor” of SYS-CON's 22nd International Cloud Expo, which will take place on June 5–7, 2018, at the Javits Center in New York City, NY. is a transparent online platform for determining which products and services are the best based on the opinion of the crowd. The crowd consists of Internet users that have experienced products and services first-hand and have an interest in letting other potential buye...
When talking IoT we often focus on the devices, the sensors, the hardware itself. The new smart appliances, the new smart or self-driving cars (which are amalgamations of many ‘things'). When we are looking at the world of IoT, we should take a step back, look at the big picture. What value are these devices providing. IoT is not about the devices, its about the data consumed and generated. The devices are tools, mechanisms, conduits. This paper discusses the considerations when dealing with the...

2016 | 2015 | 2014 | 2013 | 2012
This week I had the pleasure of delivering the opening keynote at Cloud Expo New York. It was amazing to be back in the great city of New York with thousands of cloud enthusiasts eager to learn about the next step on their journey to embracing a cloud-first worldl."
How does Cloud Expo do it every year? Another INCREDIBLE show - our heads are spinning - so fun and informative."
Thank you @ThingsExpo for such a great event. All of the people we met over the past three days makes us confident IoT has a bright future."
One of the best conferences we have attended in a while. Great job, Cloud Expo team! Keep it going."


Who Should Attend?
Senior Technologists including CIOs, CTOs & Vps of Technology, Chief Systems Engineers, IT Directors and Managers, Network and Storage Managers, Enterprise Architects, Communications and Networking Specialists, Directors of Infrastructure.

Business Executives including CEOs, CMOs, & CIOs , Presidents & SVPs, Directors of Business Development , Directors of IT Operations, Product and Purchasing Managers, IT Managers.

Join Us as a Media Partner - Together We Can Enable the Digital Transformation!
SYS-CON Media has a flourishing Media Partner program in which mutually beneficial promotion and benefits are arranged between our own leading Enterprise IT portals and events and those of our partners.

If you would like to participate, please provide us with details of your website/s and event/s or your organization and please include basic audience demographics as well as relevant metrics such as ave. page views per month.

To get involved, email

@ThingsExpo Blogs
Having been in the web hosting industry since 2002, dhosting has gained a great deal of experience while working on a wide range of projects. This experience has enabled the company to develop our amazing new product, which they are now excited to present! Among dHosting's greatest achievements, they can include the development of their own hosting panel, the building of their fully redundant server system, and the creation of dhHosting's unique product, Dynamic Edge.
This session will provide an introduction to Cloud driven quality and transformation and highlight the key features that comprise it. A perspective on the cloud transformation lifecycle, transformation levers, and transformation framework will be shared. At Cognizant, we have developed a transformation strategy to enable the migration of business critical workloads to cloud environments. The strategy encompasses a set of transformation levers across the cloud transformation lifecycle to enhance process quality, compliance with organizational policies and implementation of information security ...
CloudEXPO New York 2018, colocated with DevOpsSUMMIT and DXWorldEXPO New York 2018 will be held November 12-13, 2018, in New York City and will bring together Cloud Computing, FinTech and Blockchain, Digital Transformation, Big Data, Internet of Things, DevOps, AI and Machine Learning to one location.
Digital Transformation Blogs
Today’s AI cannot create an algorithm that satisfies a human’s intent in all but the simplest cases. What we do have is AI that can divine insights from patterns in large data sets. If we can boil down algorithms into such data sets, then we can make some headway. For example, if an AI-based application has access to a vast number of human-created workflows, then it can make a pretty good guess as to the next step in a workflow you might be working on at the moment. In other words, we now have autocomplete for algorithms – what we call ‘next best action.’ We may still have to give our so...
Dynatrace is an application performance management software company with products for the information technology departments and digital business owners of medium and large businesses. Building the Future of Monitoring with Artificial Intelligence. Today we can collect lots and lots of performance data. We build beautiful dashboards and even have fancy query languages to access and transform the data. Still performance data is a secret language only a couple of people understand. The more business becomes digital the more stakeholders are interested in this data including how it relates to bus...
Having been in the web hosting industry since 2002, dhosting has gained a great deal of experience while working on a wide range of projects. This experience has enabled the company to develop our amazing new product, which they are now excited to present! Among dHosting's greatest achievements, they can include the development of their own hosting panel, the building of their fully redundant server system, and the creation of dhHosting's unique product, Dynamic Edge.
"Calligo is a cloud service provider with data privacy at the heart of what we do. We are a typical Infrastructure as a Service cloud provider but it's been des...
Discussions of cloud computing have evolved in recent years from a focus on specific types of cloud, to a world of hybrid cloud, and to a world dominated by the...