Roku Developer Program

Join our online forum to talk to Roku developers and fellow channel creators. Ask questions, share tips with the community, and find helpful resources.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
kbenson
Visitor

Tutorials for beginning development on Roku

I've written the first few posts in s tutorial set for programming on the Roku. It's not targeted at programmers with enough experience to pick up what they see in the SDK examples easily, but instead at those that are a little lost as to where to start. Following the tutorials should result in a better understanding of what BrightScript is capable of, and how to start your own channel from scratch.



I'll update the list here as I complete more. In the meantime, feel free to comment on and provide corrections either here or on the blog. I'll update the posts (and provide change logs at the end of the post with credit) for any changes made.

Additionally, I'll compile a list of other tutorials found:
-- GandK Labs
Check out Reversi! in the channel store!
0 Kudos
24 REPLIES 24
stratcat96
Visitor

Re: Tutorials for beginning development on Roku

Very nice. It was simple and to the point, easy enough for anyone to follow and grasp that has never seen programming language before. I know that there are varying opinions on starting with a roimagecanvas but I'm eager to see where you take it. Great work 🙂
0 Kudos
kbenson
Visitor

Re: Tutorials for beginning development on Roku

Yeah, I truly understand the reasoning behind starting with a different component, but I find it much easier to use the ImageCanvas as a general purpose component to lay some foundation concepts with. I'm sure I'll throw some other components in there on top later to show the stacking of visible components.

I'm working on Part 3 right now, which explains Associative arrays and comments. Part 4 will be regular arrays and a for loop. Part 5 will most likely be explaining message ports and using wait in an event loop. Part 6 might be layering some dialog boxes or something.
-- GandK Labs
Check out Reversi! in the channel store!
0 Kudos
TheEndless
Channel Surfer

Re: Tutorials for beginning development on Roku

Still not convinced roImageCanvas is the right place to start (and my eyes really don't like white text on black/gray), but nice and effective tutorial!
My Channels: http://roku.permanence.com - Twitter: @TheEndlessDev
Instant Watch Browser (NetflixIWB), Aquarium Screensaver (AQUARIUM), Clever Clocks Screensaver (CLEVERCLOCKS), iTunes Podcasts (ITPC), My Channels (MYCHANNELS)
0 Kudos
kbenson
Visitor

Re: Tutorials for beginning development on Roku

Thanks! mm, maybe I should switch the default font color to Tan4. That's my favorite dark terminal font color. Then again, that may not have been your point... 😉

Oh, and part 3 is up...
-- GandK Labs
Check out Reversi! in the channel store!
0 Kudos
renojim
Community Streaming Expert

Re: Tutorials for beginning development on Roku

I like the dark background and absolutely hate white/light backgrounds (they truly give me a headache). As for roImageCanvas, I agree that it's a great component for teaching BrightScript which is probably the first step for learning how to program on the Roku. I also see the point that it's not the best component for learning how to program an actual channel since so many channels don't even use it. Either way, great job!

-JT
Roku Community Streaming Expert

Help others find this answer and click "Accept as Solution."
If you appreciate my answer, maybe give me a Kudo.

I am not a Roku employee.
0 Kudos
jbrave
Channel Surfer

Re: Tutorials for beginning development on Roku

Well, I don't think the image canvas is the best place to start, however, it is perhaps the most FUN place! roPosterScreen is the most practical place to start, but on the other hand, getting image canvas working is perhaps the most difficult thing to learn, so if you can lay that out, it might be very helpful to those who want to work with it.

I do like the white text on black, very readable.

- Joel
Screenshades: The first Screensaver for Roku2!
Musiclouds: The best free internet music, on your Roku!
Ouroborialis: Psychedelic Screensaver for Roku!
0 Kudos
kbenson
Visitor

Re: Tutorials for beginning development on Roku

Yeah, other components are much more useful for building the average channel, but that's because they do a lot of the work for you. But since they do, they are somewhat limited in how you can use them. I wanted to pick a component that I could stick with and continue to use for most if not all the tutorials, and just throw extra components in as needed. Some of the more complex components would have fit the bill, but they have their own specific complications. The ImageCanvas is unique in my mind because it is a very simple component (see tutorial part 1), but can be used in very complex ways (e.g. KidPaint).
-- GandK Labs
Check out Reversi! in the channel store!
0 Kudos
TheEndless
Channel Surfer

Re: Tutorials for beginning development on Roku

"kbenson" wrote:
Yeah, other components are much more useful for building the average channel, but that's because they do a lot of the work for you. But since they do, they are somewhat limited in how you can use them. I wanted to pick a component that I could stick with and continue to use for most if not all the tutorials, and just throw extra components in as needed. Some of the more complex components would have fit the bill, but they have their own specific complications. The ImageCanvas is unique in my mind because it is a very simple component (see tutorial part 1), but can be used in very complex ways (e.g. KidPaint).

I think the important distinction is in the fact that you're writing BrightScript programming tutorials, rather than Roku channel development tutorials. I just think you need to be clear about that, possibly by stating that in your intro, otherwise new developers may not realize that most of the standard components do all of the (non-graphical) UI work for you. 90% of new Roku channel developers will want to use the built-in components to develop their channels, rather than the image canvas.
My Channels: http://roku.permanence.com - Twitter: @TheEndlessDev
Instant Watch Browser (NetflixIWB), Aquarium Screensaver (AQUARIUM), Clever Clocks Screensaver (CLEVERCLOCKS), iTunes Podcasts (ITPC), My Channels (MYCHANNELS)
0 Kudos
kbenson
Visitor

Re: Tutorials for beginning development on Roku

"TheEndless" wrote:

I think the confusion may be in the fact that you're writing BrightScript programming tutorials, rather than Roku channel development tutorials. I just think you need to be clear about that, possibly by stating that in your intro, otherwise new developers may not realize that most of the standard components do all of the (non-graphical) UI work for you. 90% of new Roku channel developers will want to use the built-in components to develop their channels, rather than the image canvas.


Yeah, I sort of cover that in the second paragraph of the first tutorial:

This isn't intended for those intending to just take an example channel (of which there are many in the SDK) and alter it, but for those struggling with the core concepts of the language, or that have trouble following what's happening in the examples provided.


Also, I'm not planning to limit the tutorials to imageCanvas, just to use it as a convenient base to come back to. The idea is to have something to point at for people that say they don't understand what's going on in an example channel because they don't quite understand the concepts of BrightScript itself yet. I think it makes sense to end with an example that uses roImageCanvas, roVideoPlayer, roParagraphScreen, and another component or two all mixed in to make a channel that can play a video. The hope is that by that point absolutely everything used in the code will have been explained to some degree in a previous tutorial part.

I would happily accept suggestions or contributions, if anyone wants to help.
-- GandK Labs
Check out Reversi! in the channel store!
0 Kudos