Tag Archives: development

Embarking Upon A New Adventure

I’m excited to finally announce that I have embarked upon a new adventure!  Today marks my first day as a MobileFirst Developer Advocate for IBM!

IBM

So, what does that mean?

It is very similar to what I was doing back at Adobe focusing on developers.  I’m excited to engage with the development community around building mobile apps and leveraging cloud services to meet critical business needs.  I’ll be focused on IBM’s MobileFirst platform, including Worklight - a platform for building and delivering mobile applications leveraging Apache Cordova (PhoneGap), and Bluemix – IBM’s scalable cloud computing platform, which can be used for everything from hosted services, “big data”, security, back-ends for mobile apps, Java, node.js, ruby, and much, much more… Seriously, check out everything that Bluemix has to offer.

It is my mission to help you, the developer or business decision maker be successful, and now I have access to IBM’s tools, knowledge and services to back me up!

Will I still be building apps and services?

  • YES – stay tuned for more info

Will I still be helping you build apps, and writing about development tools, paradigms, and best practices?

  • YES – it’s my mission to help you make the right decisions and be successful

Will I see you at the next development conference, hackathon, or meetup?

  • YES, and I can’t wait to show you everything IBM has to offer.  

Will I still be flying drones?

  • Of course! However, I won’t be blogging about drones and creative tools quite so much. Follow me on Flickr to see images from my latest flights, and feel free to ask me questions.

I had a great run with Adobe, and am thankful for all of the opportunities while there.  I worked on many amazing projects, worked with a lot of great (and very, very smart) people, and was able to continually push the envelope on both the development and creative/media sides. For which I am grateful.

Now, let the next adventure commence!

Your business has tough questions? Let’s ask Watson.

DevNexus 2014 PhoneGap Presentations

I’ve just wrapped up my presentations for this year’s DevNexus event in Atlanta – it has been a great event, filled with tons of information on web, mobile, and back-end development. I had 3 sessions on PhoneGap – One intro, one advanced, and one a mobile frameworks panel.

Below are my presentations.  I didn’t record them this time, since they were being recorded by the conference organizers, so expect to see a video once they’re released.

Just press the space bar, or use the arrow keys to view the presentation in your browser.

Getting Started with PhoneGap and Cross Platform Mobile Development

View Presentation …

intro_2_pg

(Lesson learned, never make changes to you presentation/environment after midnight when you have the first session of the day – it will always bite you)

Designing & Architecting for PhoneGap & the Mobile Web

View presentation …

architecture_pg

Enjoy, and feel free to reach out with any questions!

Automating PhoneGap Builds

I’ve recently had several conversations with PhoneGap users around processes for automating the compilation of PhoneGap apps.  This could be either in automated tasks using GruntAntMaven, or any other task manager, or could be in continuous integration environments like Jenkins CI.

If you’re interested in this, here are a few options… First of all, PhoneGap Build has a REST API. You can use this to programmatically create new projects, update projects, trigger new builds (even just for specific platforms), etc… This can integrate with your build scripts and tie into any workflow.

If you’re using GitHub, it is possible to tie into hooks triggering PhoneGap Build to recompile every time you commit your code.  Here’s an example of it in action, or you can just use this service which is already setup: http://autobuild.monkeh.me/ (from the same author) - Just be careful with your user/pass in plain text. Update: You can also use the Autobuild service using a clientID variable instead of sending through username and password details via HTTP.

If you aren’t using PhoneGap Build, you’re not out of luck.  All PhoneGap CLI commands are based on scripts, which themselves can be scripted.  You could use ANT’s exec command, the Maven exec plugin, Grunt exec or Grunt shell plugins, Jenkins execute shell, or any other task runner to manually invoke the PhoneGap CLI. You just need to make sure all your environment and path variables are correct to access SDKs and required programs. However, there’s one caveat… iOS builds require Xcode/Apple developer tools, which have to be run on a Mac.

If you’re using Jenkins, this might be a good one to check out: Jenkins CI + PhoneGap & Cordova

New UI Article and Architectural Presentation on PhoneGap

A couple of PhoneGap related activities I’ve been up to recently…

First, an article I recently wrote on Creating a Card-based UI in PhoneGap has been published on DZone.  Be sure to check it out for some tips on creating the user interface, all with just HTML, CSS, and JavaScript.   This covers both basic/static and dynamic use cases.

cards

Second, a video of my presentation on “Architectural Considerations for PhoneGap and Mobile Web Apps” has been published by the Atlanta HTML5 meetup group.  Check it out in the video below, and if you’re in the Atlanta area, be sure to check out the meetup group!  Here’s the presentation description:

Tired of Hello World? In this session, we explore best practices to build real-world PhoneGap applications. We investigate the Single Page Architecture, HTML templates, effective Touch events, performance techniques, modularization and more. We also compare and contrast the leading JavaScript and Mobile Frameworks. This session is a must If you plan to build a PhoneGap application that has more than a couple of screens.

… and here’s the actual presentation video:

If you’re reading this, and wondering what PhoneGap is:

PhoneGap is a free and open source framework that allows you to create mobile apps using standardized web APIs for the platforms you care about.

You should definitely check it out, and enjoy!

HTML5 Dev Conf Wrap-up: Snap.svg, Visual Storytelling & PhoneGap

HTML5 Developer Conference just wrapped up in San Francisco, and it was a great event. There was a lot to see and hear from the entire HTML/JS community. Adobe showed off some amazing showcases of the work that is being done with rich layout on the web and released an awesome new SVG library, Snap.svg.  I also had two sessions on PhoneGap.

First, news and announcements from Adobe…

Snap.svg

Adobe has released Snap.svg, the JavaScript SVG library for the modern web.  Snap.svg is focused on making the most out of everything that SVG can offer, including masking, clipping, patterns, gradients, groups, and much more.  It is definitely worth checking out.

Learn more at:

Check out a demo of Snap.svg in action below (the SVG shapes are interactive, so be sure to play around with them):

You can check out even more demos at http://snapsvg.io/demos, and see Snap.svg in use by PBS Kids.

Visual Storytelling with Rich Layout

Adobe’s web platform team also announced two new showcase experiences that demonstrate rich storytelling through expressive layout enabled by CSS Shapes, CSS Regions, and CSS Exclusions. These include an interactive experience with National Geographic and Baby Elephants, and a beautifully designed expressive interpretation of Alice in Wonderland. You can experience both of these examples with full source code from the Adobe Web Platform GitHub repository, but make sure you’ve enabled the cutting edge layout & graphical features.

css_regions

My Sessions on PhoneGap

Last, but certainly not least, I had two sessions on PhoneGap: one an intro, and the other a more advanced architecture topic.  Thanks to everyone who came out for my sessions. You were a great audience, and there were tons of great questions. These sessions were recorded by the conference organizers, and will be available at a later date.

You can access my presentation slides in the links below; just use the space bar to advance each slide:

However, I must also apologize that a few of my samples in the “Getting Started with PhoneGap and Cross-Platform Mobile Development” did not work. I was connected to the network, but wasn’t able to receive any data, so I couldn’t access PhoneGap Build, or even add device features to a PhoneGap project from the command line tools.  I promise, these features do work when you’re on a reliable network connection. Go check out phonegap.com to learn more and get started today.

Update: The videos from my two sessions are now available online, be sure to check them out!