Beginner wanting to learn

Hi,

I started using Homey recently so Im a new user, Ive added some things to my Homey and started some automations.

Ive recently ordered some items that I would like to integrate with Homey, altough it doesnt have its own app. Ive always wanted to learn some programming but never really started so I thought this might be a good project. I really need something to do to learn, a goal.

They seem to have quite good documentation for how to use their products with different home automations.

But, the problem is that I am very new to programming, I know how to set a variable and an array in javascript but thats about it. I would like to know where to begin. Ive seen threads here and there directing people to apps.developer.athom.com and the getting started stuff there. And sure, I understand how to install Node.js and connect via the CLI. But how to continue after that? Should I just dig into javascript and efter a few months I will understand evrything on that page? Is there any general app or api knowledge I should get?

Do you have any site/guide to recommend? Or maybe a very beginner friendly app to develop for myself, like the Hello World equivalent of Homey appā€¦

2 Likes

Welcome to the community.

If you have followed the getting started guide then you should have created the framework of a new app. Next, if you havenā€™t already use the same method to create a new driver framework in the app.
Then it is just a case of responding to handlers when the user interacts with the GUI and updating the GUI when your device changes.
There are lots of examples to view here https://github.com/athombv.
Look here https://nodejs.org/en/docs/ for information about Node.js if you need to.

Ask any specific questions either here or on slack in the Homey developers channel https://athomcommunity.slack.com/archives/C04SUGZ9E.

The best bit is to just play and have fun.

Thank you!

I havent actually installed node.js and started my app, I thought I had to have more knowledge about what to do after that. Remember that Im very new to this so something that might be very obvious to someone used to this is not that obvious for me :slight_smile:.

I will install it and start the app, see if it is self-explanatory once done. But, ā€œThen it is just a case of responding to handlers when the user interacts with the GUIā€, If its not very well explained I wouldnt have any idea how to do that. I would have to create buttons and then some code that does something when the button is pushed?

I think I know the theory behind everything and what I would like it to do, but just not how.

I will try installing it and I will take a look at the links you provided though, thanks!

Correct. When you go through the ā€œathom app driver createā€ ā€˜wizardā€™ after creating the app it will ask a series of questions about the driver type and capabilities you want, etc. Upon completion of that you will have the framework of a new driver to start you off.

Once you have got that far you will probably have more specific questions to ask but thatā€™s not a problem, we all had to start from the begging at some point.

Since you mention being very new to programming and JavaScript, you might also want to check out some online JavaScript resources like https://nodeschool.io/

Workshoppers (self-guided tutorials) that could be useful for Homey development:

  • javascripting (very basics of Javascript)
  • learnyounode (Homey runs on Node.js)
  • count-to-6 (more modern JavaScript concepts)
  • async-you (async/await is heavily used in Homey apps)

https://nodeschool.io/#workshopper-list

3 Likes

@BjornNilsson did you ever finished what youā€™ve started? I allready have the basic driver framework working but how to continue from thereā€¦ :man_shrugging: