CfBlogs
 Data Grids  CF Overflow  Follow Us!  RSS

ColdFusion Posts Around the World.
assertTrue(
assertTrue("Test DSLs" == "Legacy")
James Ward
Over decades in programming I’ve had a few moments where I make big paradigm shifts, finding it very hard to go back. One of these moments was with Functional Programming and my latest is the move from Test Assertion DSLs to just using assertTrue with boolean-only tests. Let’s look ...
The Seven Artifacts of Developer Advocacy Projects
The Seven Artifacts of Developer Advocacy Projects
James Ward
Over the past 16 years, mostly as a Developer Advocate, I’ve developed a framework to help developers learn and get excited about something new.
The Modern Java Platform - 2021 Edition
The Modern Java Platform - 2021 Edition
James Ward
Many developers were burned by the overly complex world of Java back in the early 2000s. The Gang of Four patterns and middleware / J2EE / Java EE led ...
The Modern Java Platform - 2021 Edition
The Modern Java Platform - 2021 Edition
James Ward
Many developers were burned by the overly complex world of Java back in the early 2000s. The Gang of Four patterns and middleware / J2EE / Java EE led to ridiculous levels of alleged decoupling as is evident in this sequence diagram from an open source J2EE ecommerce system I worked on in 2002: ...
Running One-Off/Admin Jobs for Cloud Run Services
Running One-Off/Admin Jobs for Cloud Run Services
James Ward
Disclaimer: This is not officially supported by Google Cloud. Cloud Run hosts services that handle HTTP requests but sometimes you need a way to run one-off / admin jobs with the same settings and container image. At this time the managed Cloud Run service doesn’t provide a way to run those kinds o...
Running One-Off/Admin Jobs for Cloud Run Services
Running One-Off/Admin Jobs for Cloud Run Services
James Ward
Disclaimer: This is not officially supported by Google Cloud. Cloud Run hosts services that handle HTTP requests but sometimes you need a way to run one-off / admin jobs with the same settings and container image. At this time the managed Cloud Run service doesn’t provide a...
Container-based Serverless Scheduled Jobs on Google Compute Engine
Container-based Serverless Scheduled Jobs on Google Compute Engine
James Ward
Most of my compute workloads today are on Cloud Run, a serverless for containers platform. But some workloads like scheduled jobs don’t fit the service-oriented model of Cloud Run. There are many places I can run those workloads but I’d like to keep the serverless “pay for what you use” model and ...
Container-based Serverless Scheduled Jobs on Google Compute Engine
Container-based Serverless Scheduled Jobs on Google Compute Engine
James Ward
Most of my compute workloads today are on Cloud Run, a serverless for containers platform. But some workloads like scheduled jobs don’t fit the service-oriented model of Cloud Run. There are many places I can run those workloads but I’d like to keep t...
GraalVM Native Image Tips & Tricks
GraalVM Native Image Tips & Tricks
James Ward
Elastic infrastructure that scales up & down based on demand is not just a “serverless” fad but an operational model which reduces cost and waste. Yet there is a little devil lurking under the covers… When an application / microservice needs to spin up based on demand there can be some lag as the ...
GraalVM Native Image Tips & Tricks
GraalVM Native Image Tips & Tricks
James Ward
Elastic infrastructure that scales up & down based on demand is not just a “serverless” fad but an operational model which reduces cost and waste. Yet there is a little devil lurking under the covers… When an application / microservice needs to spin up based on demand the...
When you hear ‘Monad’, think ‘Chainable’
When you hear ‘Monad’, think ‘Chainable’
James Ward
There comes a point in every Functional Programmer’s life where they feel the curse of the Monad has lifted and they must now explain Monads to their friends who just don’t get it. What follows is probably wrong and confusing, cause there is no escaping the curse. But here goes… Suppose you have a s...
When you hear ‘Monad’, think ‘Chainable’
When you hear ‘Monad’, think ‘Chainable’
James Ward
There comes a point in every Functional Programmer’s life where they feel the curse of the Monad has lifted and they must now explain Monads to their friends who just don’t get it. What follows is probably wrong and confusing, cause there is no escaping the curse. But here goes… S...
Thank You for 12 Years in Developer Evangelism
Thank You for 12 Years in Developer Evangelism
James Ward
Even though it was 12 years ago, I vividly remember sitting in a musty conference room with big-name analysts from Gartner. My palms were sweaty and I was almost too terrified to speak. Macromedia had brought me into this meeting to be the customer voice for their new programming platform, Flex. I w...
Thank You for 12 Years in Developer Evangelism
Thank You for 12 Years in Developer Evangelism
James Ward
Even though it was 12 years ago, I vividly remember sitting in a musty conference room with big-name analysts from Gartner. My palms were sweaty and I was almost too terrified to speak. Macromedia had brought me into this meeting to be the customer voice for their new programming platform, Flex. I w...
Connecting to the Salesforce REST APIs with Spring Boot and Java
Connecting to the Salesforce REST APIs with Spring Boot and Java
James Ward
Broadly speaking there are two types of integrations with Salesforce, either a system-to-system integration or a user interface integration. One of the primary ways to do these integrations is by using the Salesforce REST API. When using the Salesforce REST API you need to obtain an access token tha...
Connecting to the Salesforce REST APIs with Spring Boot and Java
Connecting to the Salesforce REST APIs with Spring Boot and Java
James Ward
Broadly speaking there are two types of integrations with Salesforce, either a system-to-system integration or a user interface integration. One of the primary ways to do these integrations is by using the Salesforce REST API. When using the Salesforce REST API you need to obtain an access token tha...
Quick & Easy ETL from Salesforce to MySQL with Workflow & Heroku
Quick & Easy ETL from Salesforce to MySQL with Workflow & Heroku
James Ward
While sometimes unfortunate it is often necessary to have data silos that share data. The Extract, Transform, and Load (ETL) pattern has been around for a long time to address this need and there are tons of solutions out there. If you just need a quick and easy way to copy new & updated records in ...
Quick & Easy ETL from Salesforce to MySQL with Workflow & Heroku
Quick & Easy ETL from Salesforce to MySQL with Workflow & Heroku
James Ward
While sometimes unfortunate it is often necessary to have data silos that share data. The Extract, Transform, and Load (ETL) pattern has been around for a long time to address this need and there are tons of solutions out there. If you just need a quick and easy way to copy new & updated records...
Add NPM Packages to Salesforce with a Few Clicks
Add NPM Packages to Salesforce with a Few Clicks
James Ward
I’ve built a little web-based tool called ForceNPM that makes it super easy to add NPM packages to Salesforce. Check it out: Give ForceNPM a try! The code is on GitHub so if you’d like to deploy this on your own Heroku app or other infrastructure, you can do that. Let me know how it goes!...
Add NPM Packages to Salesforce with a Few Clicks
Add NPM Packages to Salesforce with a Few Clicks
James Ward
I’ve built a little web-based tool called ForceNPM that makes it super easy to add NPM packages to Salesforce. Check it out: Give ForceNPM a try! The code is on GitHub so if you’d like to deploy this on your own Heroku app or other infrastructure, you can do that. Let me know how it goes...
Scalable Continuous Delivery Pipelines
Scalable Continuous Delivery Pipelines
James Ward
Back when I first started building web apps we’d just “do it in production” by vi’ing Perl & PHP files on the server. This was fine because the risks and expectations were low. No big deal if I broke the app for a few hours. Good thing I made an app.php-bak copy! As software became more critical to ...
Scalable Continuous Delivery Pipelines
Scalable Continuous Delivery Pipelines
James Ward
Back when I first started building web apps we’d just “do it in production” by vi’ing Perl & PHP files on the server. This was fine because the risks and expectations were low. No big deal if I broke the app for a few hours. Good thing I made an app.php-bak copy! As softw...
Reactive Web Request Batching with Scala and Play Framework
Reactive Web Request Batching with Scala and Play Framework
James Ward
At first glance it seems silly to do batching in the reactive world. When I first started with reactive programming I thought I wouldn’t have to worry about things like resource starvation. After all, the reactive magic bullet was *magical*! But my magic bullet fizzled when it hit downstream resourc...
Reactive Web Request Batching with Scala and Play Framework
Reactive Web Request Batching with Scala and Play Framework
James Ward
At first glance it seems silly to do batching in the reactive world. When I first started with reactive programming I thought I wouldn’t have to worry about things like resource starvation. After all, the reactive magic bullet was *magical*! But my magic bullet fizzled when it hit downstream r...
Machine Learning on Heroku with PredictionIO
Machine Learning on Heroku with PredictionIO
James Ward
Last week at the TrailheaDX Salesforce Dev Conference we launched the DreamHouse sample application to showcase the Salesforce App Cloud and numerous possible integrations. I built an integration with the open source PredictionIO Machine Learning framework. The use case for ML in DreamHouse is a rea...
Machine Learning on Heroku with PredictionIO
Machine Learning on Heroku with PredictionIO
James Ward
Last week at the TrailheaDX Salesforce Dev Conference we launched the DreamHouse sample application to showcase the Salesforce App Cloud and numerous possible integrations. I built an integration with the open source PredictionIO Machine Learning framework. The use case for ML in DreamHouse is a rea...
Combining Reactive Streams, Heroku Kafka, and Play Framework
Combining Reactive Streams, Heroku Kafka, and Play Framework
James Ward
Heroku recently announced early access to the new Heroku Kafka service and while I’ve heard great things about Apache Kafka I hadn’t played with it because I’m too lazy to set that kind of stuff up on my own. Now that I can setup a Kafka cluster just by provisioning a Heroku Addon I figured it was t...
Combining Reactive Streams, Heroku Kafka, and Play Framework
Combining Reactive Streams, Heroku Kafka, and Play Framework
James Ward
Heroku recently announced early access to the new Heroku Kafka service and while I’ve heard great things about Apache Kafka I hadn’t played with it because I’m too lazy to set that kind of stuff up on my own. Now that I can setup a Kafka cluster just by provisioning a Heroku Addon ...
Building a Mock HVAC for Smart Thermostat Demos
Building a Mock HVAC for Smart Thermostat Demos
James Ward
Recently I needed to create a mock HVAC system so that I could have a portable smart thermostat for various demos. I searched around but couldn’t find any such thing. So with some sleuthing and the help of my friend Bruce Eckel I was able to build a simple system that powers a smart thermostat and s...
Building a Mock HVAC for Smart Thermostat Demos
Building a Mock HVAC for Smart Thermostat Demos
James Ward
Update: I’ve added instructions for a cooling system at the bottom of this post. Recently I needed to create a mock HVAC system so that I could have a portable smart thermostat for various demos. I searched around but couldn’t find any such thing. So with some sleuthing and the help of m...
The 6 Minute Cloud/Local Dev Roundtrip with Spring Boot
The 6 Minute Cloud/Local Dev Roundtrip with Spring Boot
James Ward
Great developer experiences allow you go from nothing to something amazing in under ten minutes. So I’m always trying to see how much I can minimize getting started experiences. My latest attempt is to deploy a Spring Boot app on Heroku, download the source to a developer’s machine, setup & run the ...
The 6 Minute Cloud/Local Dev Roundtrip with Spring Boot
The 6 Minute Cloud/Local Dev Roundtrip with Spring Boot
James Ward
Great developer experiences allow you go from nothing to something amazing in under ten minutes. So I’m always trying to see how much I can minimize getting started experiences. My latest attempt is to deploy a Spring Boot app on Heroku, download the source to a developer’s machine, setu...
Pulling Go Code Colorado Data into Salesforce
Pulling Go Code Colorado Data into Salesforce
James Ward
This weekend I’m at the Go Code Colorado Challenge Weekend event in Durango. The purpose of Go Code Colorado 2016 is for teams to build something useful for businesses using one or more of the Colorado Public Datasets. Some teams are using Salesforce for the back-office / business process side of th...
Pulling Go Code Colorado Data into Salesforce
Pulling Go Code Colorado Data into Salesforce
James Ward
This weekend I’m at the Go Code Colorado Challenge Weekend event in Durango. The purpose of Go Code Colorado 2016 is for teams to build something useful for businesses using one or more of the Colorado Public Datasets. Some teams are using Salesforce for the back-office / business process side...
Quick Force Java – Getting Started with Salesforce REST in Java
Quick Force Java – Getting Started with Salesforce REST in Java
James Ward
Recently I blogged about a toolchain that quickly gets you going with the Salesforce REST APIs. I believe developers should be able to get started with new technologies without having to install tons of stuff and struggle for days. That blog used Quick Force Node for those who want to use JavaScript...
Quick Force Java – Getting Started with Salesforce REST in Java
Quick Force Java – Getting Started with Salesforce REST in Java
James Ward
Recently I blogged about a toolchain that quickly gets you going with the Salesforce REST APIs. I believe developers should be able to get started with new technologies without having to install tons of stuff and struggle for days. That blog used Quick Force Node for those who want to use JavaScript...
Salesforce REST APIs – From Zero to Cloud to Local Dev in Minutes
Salesforce REST APIs – From Zero to Cloud to Local Dev in Minutes
James Ward
When getting acquainted with new technologies I believe that users shouldn’t have to spend more than 15 minutes getting something simple up and running. I wanted to apply this idea to building an app on the Salesforce REST APIs so I built Quick Force (Node). In about 12 minutes you can deploy a Node...
Salesforce REST APIs – From Zero to Cloud to Local Dev in Minutes
Salesforce REST APIs – From Zero to Cloud to Local Dev in Minutes
James Ward
When getting acquainted with new technologies I believe that users shouldn’t have to spend more than 15 minutes getting something simple up and running. I wanted to apply this idea to building an app on the Salesforce REST APIs so I built Quick Force (Node). In about 12 minutes you can deploy ...
Winter Tech Forum 2016 – My Favorite Developer Conference!
Winter Tech Forum 2016 – My Favorite Developer Conference!
James Ward
I’ve been to a TON of developer conferences and by a landslide my favorite is the Winter Tech Forum (which used to be the Java Posse Roundup). Here is why… Learning for me is experiential. Typical eyes-forward conferences are like being a passenger on a sail boat. I can watch what is happening but I...
Winter Tech Forum 2016 – My Favorite Developer Conference!
Winter Tech Forum 2016 – My Favorite Developer Conference!
James Ward
I’ve been to a TON of developer conferences and by a landslide my favorite is the Winter Tech Forum (which used to be the Java Posse Roundup). Here is why… Learning for me is experiential. Typical eyes-forward conferences are like being a passenger on a sail boat. I can watch what is ha...
Dreamforce 2015 Video: Tour of Heroku + Salesforce Integration Methods
Dreamforce 2015 Video: Tour of Heroku + Salesforce Integration Methods
James Ward
This year at Dreamforce I presented a session that walked through a few of the ways to integrate Heroku apps with Salesforce. Here is the session description: Combining customer-facing apps on Heroku with employee-facing apps on Salesforce enables a whole new generation of connected and intelligent...
Dreamforce 2015 Video: Tour of Heroku + Salesforce Integration Methods
Dreamforce 2015 Video: Tour of Heroku + Salesforce Integration Methods
James Ward
This year at Dreamforce I presented a session that walked through a few of the ways to integrate Heroku apps with Salesforce. Here is the session description: Combining customer-facing apps on Heroku with employee-facing apps on Salesforce enables a whole new generation of connected and intelligent ...
Smoothing the Cloud & Local Roundtrip Developer Experience
Smoothing the Cloud & Local Roundtrip Developer Experience
James Ward
Getting started with new technologies is usually a huge pain. Often I stumble around for hours trying to get an app’s toolchain setup correctly. Instructions are usually like: Things get worse when I lead workshops for hundreds of enterprise developers where many are on Windows machines and not very...
Smoothing the Cloud & Local Roundtrip Developer Experience
Smoothing the Cloud & Local Roundtrip Developer Experience
James Ward
Getting started with new technologies is usually a huge pain. Often I stumble around for hours trying to get an app’s toolchain setup correctly. Instructions are usually like: Things get worse when I lead workshops for hundreds of enterprise developers where many are on Windows machines and no...
Comparing Application Deployment: 2005 vs. 2015
Comparing Application Deployment: 2005 vs. 2015
James Ward
Over the past 10 years the ways we build and deliver applications has changed significantly. It seems like much of this change has happened overnight but don't worry, it is perfectly normal to look up and feel disoriented in the 2015 deployment landscape. This article compares the deployment in 2005...
Comparing Application Deployment: 2005 vs. 2015
Comparing Application Deployment: 2005 vs. 2015
James Ward
Over the past 10 years the ways we build and deliver applications has changed significantly. It seems like much of this change has happened overnight but don't worry, it is perfectly normal to look up and feel disoriented in the 2015 deployment landscape. This article compares the deployment in 2005...
Redirecting and Chunking Around Heroku’s 30 Second Request Timeout
Redirecting and Chunking Around Heroku’s 30 Second Request Timeout
James Ward
In most cases a web request shouldn’t take more than 30 seconds to return a response so it is for good reason that Heroku has a 30 second request timeout. But there are times when things just take a while. There are different methods for dealing with this. Where possible, the best solution is to off...
Redirecting and Chunking Around Heroku’s 30 Second Request Timeout
Redirecting and Chunking Around Heroku’s 30 Second Request Timeout
James Ward
In most cases a web request shouldn’t take more than 30 seconds to return a response so it is for good reason that Heroku has a 30 second request timeout. But there are times when things just take a while. There are different methods for dealing with this. Where possible, the best solution is ...
Intro to Multi-Sensory Applications
Intro to Multi-Sensory Applications
James Ward
Recently Christophe Coenraets and I put together some thoughts on what we are calling “Multi-Sensory Applications” - a new way to think about how we build more deeply connected and engaging software. These news types of applications go way beyond typical CRUD apps by composing together a fabric of i...
Intro to Multi-Sensory Applications
Intro to Multi-Sensory Applications
James Ward
Recently Christophe Coenraets and I put together some thoughts on what we are calling “Multi-Sensory Applications” - a new way to think about how we build more deeply connected and engaging software. These news types of applications go way beyond typical CRUD apps by composing together a...
Refactoring to Microservices
Refactoring to Microservices
James Ward
Right now there is a ton of hype and pushback around Microservices. Most of the current debate revolves around when Microservices make sense with smart people arguing all across the spectrum. As with all architectural topics the right answer is “it depends” so you should never blindly chose Microser...
Refactoring to Microservices
Refactoring to Microservices
James Ward
Right now there is a ton of hype and pushback around Microservices. Most of the current debate revolves around when Microservices make sense with smart people arguing all across the spectrum. As with all architectural topics the right answer is “it depends” so you should never blindly ch...
NPM Packages in Maven Central with NPM WebJars
NPM Packages in Maven Central with NPM WebJars
James Ward
A few months ago I launched Bower WebJars which provides a way for anyone to deploy Bower packages into Maven Central through WebJars. Since then 539 packages have been deployed! Today I’ve added NPM WebJars which is built on the same foundation as Bower WebJars but for NPM packages. Give it a try a...
NPM Packages in Maven Central with NPM WebJars
NPM Packages in Maven Central with NPM WebJars
James Ward
A few months ago I launched Bower WebJars which provides a way for anyone to deploy Bower packages into Maven Central through WebJars. Since then 539 packages have been deployed! Today I’ve added NPM WebJars which is built on the same foundation as Bower WebJars but for NPM packages. Give it a...
Auto-Deploy GitHub Repos to Heroku
Auto-Deploy GitHub Repos to Heroku
James Ward
My favorite new feature on Heroku is the GitHub Integration which enables auto-deployment of GitHub repos. Whenever a change is made on GitHub the app can be automatically redeployed on Heroku. You can even tell Heroku to wait until the CI tests pass before doing the deployment. I now use this on al...
Auto-Deploy GitHub Repos to Heroku
Auto-Deploy GitHub Repos to Heroku
James Ward
My favorite new feature on Heroku is the GitHub Integration which enables auto-deployment of GitHub repos. Whenever a change is made on GitHub the app can be automatically redeployed on Heroku. You can even tell Heroku to wait until the CI tests pass before doing the deployment. I now use this on al...
Reactive Postgres with Play Framework & ScalikeJDBC
Reactive Postgres with Play Framework & ScalikeJDBC
James Ward
Lately I’ve built a few apps that have relational data. Instead of trying to shoehorn that data into a NoSQL model I decided to use the awesome Heroku Postgres service but I didn’t want to lose out on the Reactiveness that most of the NoSQL data stores support. I discovered ScalikeJDBC-Async which u...
Reactive Postgres with Play Framework & ScalikeJDBC
Reactive Postgres with Play Framework & ScalikeJDBC
James Ward
Lately I’ve built a few apps that have relational data. Instead of trying to shoehorn that data into a NoSQL model I decided to use the awesome Heroku Postgres service but I didn’t want to lose out on the Reactiveness that most of the NoSQL data stores support. I discovered ScalikeJDBC-A...
Scaling the WebJars Project with On-Demand Bower Packages
Scaling the WebJars Project with On-Demand Bower Packages
James Ward
WebJars has been my hobby project for almost 3 years and thanks to tons of help from the community the project now has almost 900 JavaScript libraries in Maven Central. In February 2015 there were over 500,000 downloads of WebJars! Up until now all of the WebJars have been manually created, deployed...
Scaling the WebJars Project with On-Demand Bower Packages
Scaling the WebJars Project with On-Demand Bower Packages
James Ward
WebJars has been my hobby project for almost 3 years and thanks to tons of help from the community the project now has almost 900 JavaScript libraries in Maven Central. In February 2015 there were over 500,000 downloads of WebJars! Up until now all of the WebJars have been manually created, deployed...
Salesforce Canvas Quick Start for Java Developers
Salesforce Canvas Quick Start for Java Developers
James Ward
Salesforce provides a variety of different ways to integrate external apps into the Salesforce UI. Canvas is an iframe-based approach for loading externally hosted UIs into pages on Salesforce. The nice thing about Canvas versus a plain iframe is that Canvas has a JavaScript bridge which enables sec...
Salesforce Canvas Quick Start for Java Developers
Salesforce Canvas Quick Start for Java Developers
James Ward
Salesforce provides a variety of different ways to integrate external apps into the Salesforce UI. Canvas is an iframe-based approach for loading externally hosted UIs into pages on Salesforce. The nice thing about Canvas versus a plain iframe is that Canvas has a JavaScript bridge which enables sec...
Introducing Force WebJars: Add JavaScript Libs to Salesforce With a Click
Introducing Force WebJars: Add JavaScript Libs to Salesforce With a Click
James Ward
The typical method of adding JavaScript and CSS libraries (e.g. jQuery, Bootstrap, and AngularJS) to Salesforce environments is to locate a library’s download, download it, then upload it to Salesforce, then figure out the structure of the files so that you can use them from Visualforce. Using WebJa...
Introducing Force WebJars: Add JavaScript Libs to Salesforce With a Click
Introducing Force WebJars: Add JavaScript Libs to Salesforce With a Click
James Ward
The typical method of adding JavaScript and CSS libraries (e.g. jQuery, Bootstrap, and AngularJS) to Salesforce environments is to locate a library’s download, download it, then upload it to Salesforce, then figure out the structure of the files so that you can use them from Visualforce. Using...
Goodbye Java Posse Roundup – Hello WTF 2015
Goodbye Java Posse Roundup – Hello WTF 2015
James Ward
For the past 8 (maybe 9?) years the absolute best yearly conference I’ve attended has been The Java Posse Roundup in Crested Butte, Colorado. At most conferences my favorite parts are the conversations at the bar and writing code with other attendees. The Java Posse Roundup has always been a confere...
Goodbye Java Posse Roundup – Hello WTF 2015
Goodbye Java Posse Roundup – Hello WTF 2015
James Ward
For the past 8 (maybe 9?) years the absolute best yearly conference I’ve attended has been The Java Posse Roundup in Crested Butte, Colorado. At most conferences my favorite parts are the conversations at the bar and writing code with other attendees. The Java Posse Roundup has always been a c...
Introducing Gulp Launcher
Introducing Gulp Launcher
James Ward
Many developers already have the Node.js toolchain installed on their machines but when I lead workshops there are always a few who don’t. The process of installing Node build toolchains can take quite a bit of time for new users (especially on Windows). To simplify the process of getting the gulp t...
Introducing Gulp Launcher
Introducing Gulp Launcher
James Ward
Many developers already have the Node.js toolchain installed on their machines but when I lead workshops there are always a few who don’t. The process of installing Node build toolchains can take quite a bit of time for new users (especially on Windows). To simplify the process of getting the ...
Java Doesn’t Suck – You’re Just Using it Wrong
Java Doesn’t Suck – You’re Just Using it Wrong
James Ward
Check out the Russian translation provided by Everycloudtech. Or check out a Ukrainian translation provided by OpenSourceInitiative. I’ve been building enterprise Java web apps since servlets were created. In that time the Java ecosystem has changed a lot but sadly many enterprise Java developers ar...
Java Doesn’t Suck – You’re Just Using it Wrong
Java Doesn’t Suck – You’re Just Using it Wrong
James Ward
I’ve been building enterprise Java web apps since servlets were created. In that time the Java ecosystem has changed a lot but sadly many enterprise Java developers are stuck in some very painful and inefficient ways of doing things. In my travels I continue to see Java The Sucky Parts - but i...
Dreamforce 2014: Wearables, Engagement Apps, $1M Hackathon
Dreamforce 2014: Wearables, Engagement Apps, $1M Hackathon
James Ward
Dreamforce 2014 is quickly approaching and this year is going to be amazing! I’ll be presenting a few sessions and helping at the $1 Million Hackathon. Here are my sessions: Integrating Clouds & Humans with the Salesforce Wear Developer Packs As smart watches and other human-integrated devices ma...
Dreamforce 2014: Wearables, Engagement Apps, $1M Hackathon
Dreamforce 2014: Wearables, Engagement Apps, $1M Hackathon
James Ward
Dreamforce 2014 is quickly approaching and this year is going to be amazing! I’ll be presenting a few sessions and helping at the $1 Million Hackathon. Here are my sessions: Integrating Clouds & Humans with the Salesforce Wear Developer Packs As smart watches and other human-integrated dev...
Jekyll on Heroku
Jekyll on Heroku
James Ward
Jekyll is simple static content compiler popularized by GitHub Pages. If you use Jekyll in a GitHub repo a static website will automatically be created for you by running Jekyll on your content sources (e.g. Markdown). That works well but there are cases where it is nice to deploy a Jekyll site on H...
Jekyll on Heroku
Jekyll on Heroku
James Ward
Jekyll is simple static content compiler popularized by GitHub Pages. If you use Jekyll in a GitHub repo a static website will automatically be created for you by running Jekyll on your content sources (e.g. Markdown). That works well but there are cases where it is nice to deploy a Jekyll site on H...
An Architects Guide to the Salesforce1 Platform
An Architects Guide to the Salesforce1 Platform
James Ward
Salesforce.com was initially created as a Sales Force Automation (SFA) / Customer Relationship Management (CRM) application in the cloud but has evolved over the years into a modern platform for all types of enterprise applications. Now the Salesforce name is a legacy artifact of that past. This is ...
An Architects Guide to the Salesforce1 Platform
An Architects Guide to the Salesforce1 Platform
James Ward
Salesforce.com was initially created as a Sales Force Automation (SFA) / Customer Relationship Management (CRM) application in the cloud but has evolved over the years into a modern platform for all types of enterprise applications. Now the Salesforce name is a legacy artifact of that past...
Building & Deploying Reactive Service Pipelines — Live in Salt Lake City
Building & Deploying Reactive Service Pipelines — Live in Salt Lake City
James Ward
This Wednesday (Aug 6, 2014) I will be presenting Building & Deploying Reactive Service Pipelines at the Utah Scala Enthusiasts group in Salt Lake City. Here is the abstract: Composition of micro-service is a modern integration pattern that couples nicely with Reactive and Continuous Delivery. Thes...
Building & Deploying Reactive Service Pipelines — Live in Salt Lake City
Building & Deploying Reactive Service Pipelines — Live in Salt Lake City
James Ward
This Wednesday (Aug 6, 2014) I will be presenting Building & Deploying Reactive Service Pipelines at the Utah Scala Enthusiasts group in Salt Lake City. Here is the abstract: Composition of micro-service is a modern integration pattern that couples nicely with Reactive and Continuous Delivery. T...
Going Reactive at OSCON 2014
Going Reactive at OSCON 2014
James Ward
This year at OSCON I will be leading a hands-on lab and presenting about Reactive, Play Framework, and Scala. Here are two sessions: Reactive All The Way Down (lab) - 9:00am Monday, July 21 In this tutorial you will build a Reactive application with Play Framework, Scala, WebSockets, and AngularJ...
Going Reactive at OSCON 2014
Going Reactive at OSCON 2014
James Ward
This year at OSCON I will be leading a hands-on lab and presenting about Reactive, Play Framework, and Scala. Here are two sessions: Reactive All The Way Down (lab) - 9:00am Monday, July 21 In this tutorial you will build a Reactive application with Play Framework, Scala, WebSockets, and AngularJS. ...
Scala vs Java 8 at the Scala Summit
Scala vs Java 8 at the Scala Summit
James Ward
Bruce Eckel will be hosting the Scala Summit in Crested Butte again this summer. The Open Spaces conference will be September 15 - 19 which is a perfect time of year up in the Colorado Rockies. The theme of the Scala Summit this year is Scala vs. The New Features in Java 8. So there will definitely ...
Scala vs Java 8 at the Scala Summit
Scala vs Java 8 at the Scala Summit
James Ward
Bruce Eckel will be hosting the Scala Summit in Crested Butte again this summer. The Open Spaces conference will be September 15 - 19 which is a perfect time of year up in the Colorado Rockies. The theme of the Scala Summit this year is Scala vs. The New Features in Java 8. So there will definitely ...
Salesforce Gradle Plugin
Salesforce Gradle Plugin
James Ward
As part of the Salesforce Wear Developer Pack for Android Wear I created a Gradle plugin that fetches and deploys Salesforce code (Apex). Gradle is the default build tool for Android but it can also be used with many other languages. For instance, here is an example build.gradle file for a project t...
Salesforce Gradle Plugin
Salesforce Gradle Plugin
James Ward
As part of the Salesforce Wear Developer Pack for Android Wear I created a Gradle plugin that fetches and deploys Salesforce code (Apex). Gradle is the default build tool for Android but it can also be used with many other languages. For instance, here is an example build.gradle file for a project t...
Create Webhooks on Salesforce.com
Create Webhooks on Salesforce.com
James Ward
Webhooks are the modern, web-oriented way for servers to receive notifications from other servers. For instance, when an event happens on a server, like Salesforce.com, your own custom application can receive the event via a web request. Salesforce already has a built-in way to handle events called ...
Create Webhooks on Salesforce.com
Create Webhooks on Salesforce.com
James Ward
Webhooks are the modern, web-oriented way for servers to receive notifications from other servers. For instance, when an event happens on a server, like Salesforce.com, your own custom application can receive the event via a web request. Salesforce already has a built-in way to handle events called ...
Cross-Origin Resource Sharing (CORS) for Salesforce.com
Cross-Origin Resource Sharing (CORS) for Salesforce.com
James Ward
By default browsers limit access to cross-origin resources. For instance, if a JavaScript app is loaded from foo.com then it isn’t allowed to access content from bar.com because this would be a significant security hole. Cross-Origin Resource Sharing (CORS) is the way to workaround this limitation i...
Cross-Origin Resource Sharing (CORS) for Salesforce.com
Cross-Origin Resource Sharing (CORS) for Salesforce.com
James Ward
By default browsers limit access to cross-origin resources. For instance, if a JavaScript app is loaded from foo.com then it isn’t allowed to access content from bar.com because this would be a significant security hole. Cross-Origin Resource Sharing (CORS) is the way to workaround this limita...
Integrating Clouds & Humans with Salesforce and Android Wear
Integrating Clouds & Humans with Salesforce and Android Wear
James Ward
Right out of the gate in my new job at Salesforce.com and I have been working on a pretty exciting new project to integrate clouds and humans using Salesforce.com and Android Wear. This week Salesforce launched six new open source developers packs for wearables. I created the Salesforce Wear Pack fo...
Integrating Clouds & Humans with Salesforce and Android Wear
Integrating Clouds & Humans with Salesforce and Android Wear
James Ward
Right out of the gate in my new job at Salesforce.com and I have been working on a pretty exciting new project to integrate clouds and humans using Salesforce.com and Android Wear. This week Salesforce launched six new open source developers packs for wearables. I created the Salesforce Wear Pack fo...



Footer Logo

Powered by Galaxy Blog

If you have an ideathat you want to share, please contact us! This community can only thrive if we continue to work together.

Images and Photography:

Gregory Alexander either owns the copyright, or has the rights to use, all images and photographs on the site. If an image is not part of the "Galaxie Blog" open sourced distribution package, and instead is part of a personal blog post or a comment, please contact us and the author of the post or comment to obtain permission if you would like to use a personal image or photograph found on this site.

Credits:

Portions of Galaxie Blog are powered on the server side by BlogCfc, an open source blog developed by Raymond Camden. Revitalizing BlogCfc was a part of my orginal inspiration that prompted me to design this site.

Version:

Galaxie Blog Version 3.0 (Toby's Edition) June 14th 2022 Tropical Wave theme