SmartApp Workshop


(Ben Edwards) #1

Lets say you or someone you know :wink: is planning a series of SmartApp Workshops designed to help enthusiastic, web developers get up and running and writing apps on the SmartThings Platform. What sorts of things would be good to cover, review, and drive home at such events? What would make the events stand out and be very beneficial? What format would you like these to take?

As you comment please consider who who benefit most from your proposed ideas: newbies, intermediate (those with some SmartApp experience), and advanced users.

Feel free to offer up ideas for the sorts of materials you would like to see etc.

For example, while the documentation may be technically “mostly there” in terms of documenting the code, it is woefully lacking in examples and “getting started guides”. We would have these ready for such workshops.


Ideas for Next SmartApp Workshop
Upcoming SmartApp Workshops
(Ben Edwards) #2

(Patrick Stuart [@pstuart]) #3

Personally, this is my outline / learning process so far.

SmartApps
-Defining preferences, sections, inputs: types, device capabilities, options, etc.
-Setting up namespaces and how to avoid conflicts in code
-Naming conventions, Groovy introduction, common coding constructs, coding documentation, commenting, version control (github) etc.
-Dynamic Pages and how to use them, when to use them compared to sections.
-Default methods and their role in a smartapp lifecycle, installed(), updated(), initialize()
-Subscribing to inputs and how to parse events, including appTouch :smile:
-How to use the IDE, including how to log and troubleshoot (try, catch) and what to do if all else fails
-Setting up zigbee devices, how to discover, add, poll, etc.
-Setting up zwave devices, how to discover, add, poll, etc.
-IP discovery methods for devices
-Parent / child relationships between smartApp and devices
-Manually defining IP local devices / smartapps and how to communicate with them using hubaction
-What is a hubaction?
-Using external / cloud API’s and how to handle responses
-Creating Endpoints and receiving requests and how to handle them
-Difference between documented functions to use in SmartApps and CoreAPI calls that might have leaked out :smile:
-What commands are restricted in the sandbox for groovy and why.

I would love to see documentation, videos, etc. on how to do all of the above to help get people started developing smartapps.

The above range from beginner to advanced, but all could benefit from them. :smile:

Just my two cents.


(Greg) #4

For the format question I would appreciate some workshops done in the bluejeans format like you do with the developers hour- we can watch a smart apps be written and ask real time questions. Of course archive these in You Tube videos for future use.

I’ve read through the documentation (a few months ago) but was lost. When you guys push updates or tutorials to the documentation is there a way we can be notified? Maybe start a locked thread we can subscribe to and then you post a note about what was updated?


(Tim Slagle) #5

What he said.

20 cahracters


(Chrisb) #6

I generally learn best by doing… I like having hands on activities rather than just someone telling me what to do.

Oh, and reference materials/examples. Those have been very important to my learning process, which is why I tried to “give back” with some of my apps that are hugely documented. I don’t know how many times I’ve been working on an app and pulled up one of the ST example apps or apps shared by others to pull out some knowledge about how to handle this or that.


(Matt Nohr) #7

Thanks everyone for attending the workshop last night and I’m looking forward to more coming up.

Here is the humidity app we built at the end for those who want it. We’ll make sure to fix the simulator so it works there too, but I think it will work with real devices.

Let me know if you have any questions


(Chrisb) #8

Thanks Matt for leading the event and everyone else for your help. I definitely picked up some good tips and ideas for future use.


(Edward Pope) #9

Was this event recorded like your developer events?


(Cassidy) #10

Here’s the recording

Thanks everyone at ST for putting this together, hopefully I’ll be able to attend the next one!


(Edward Pope) #11

Excellent and thank you so much


(Matt Nohr) #12

We are planning the next virtual SmartApp Workshop and are looking for ideas. Should we do something basic? Or more advanced? Perhaps add features to existing examples? Write new apps that you want to see?

Let us know what you’d like to see and then watch for an announcement about the schedule for the next workshop.


(Greg) #13

I would suggest doing a basic/beginners workshop, which of course would be recorded and referenced in perpetuity by anyone new to the system.

Basic app building and adding features to existing apps would be great topics. I would like to see a tutorial for cutting and pasting apps together. Which is essentially a “rule builder” no?


(Chrisb) #14

I’d love to see a little step up from the last one. The last was a good intro with some solid basic level info.

Here’s my suggestion: Start a thread were people can recommend new apps they would like to see, then select two of 'em (one semi-basic, and one a bit more advanced) and then write the apps during the Workshop.


(Patrick Stuart [@pstuart]) #15

Halloween smartapp combines all elements.


(Rafael Tinti) #16

I really enjoyed the first workshop, and now I think it would be nice a step ahead.

For instance, in the first one we had an example on lights turning on when a door is open. Then I tried improving the code so it checks the time when the door is opened, so the lights are not on at sunny hours.
So I would like to see tips and tricks on how (and where) to quickly find useful functions we may need.


(Jon Allsebrook) #17

How about something involving how to log device data to Xively or similar with some boilerplate smartapps that we can build on? Graphing and displaying data on a web page or on a wall mounted tablet is something I have played with but haven’t quite got the hang of!


(Greg Powers) #18

What pstuart (PATRICK STUART) said.

I would suggest shorter videos. The first video was almost 2 hours. I you could break it up in to smaller topics it would be easer to view and as a refresher it would be easer to find topics you want to view again.