Cody's PROS tutorial series

Who doesn’t want to be a PRO?

In this video tutorial series I will walk you through the process of learning to use the PROS IDE and the basic principles of programming in C. As usual, the more input I get from you, the more videos I will make. If the community wants more, they will surely get it.

License: These tutorials and provided content are published under the Creative Commons Attribution-NonCommercial agreement.

Disclaimer: 95% right rule. IE, I’m usually right 95% of the time, but mistakes are bound to happen. You are getting a very raw, very real look into a rather controversial field where things are notorious for having multiple solutions, styles, formats and designs. I present to you my take on all of this in my own teaching style, so just know what you are getting into in advance and take the bad with the good. It’s mostly good, but I have to say this to keep the more literal folks off my back :slight_smile:

Tutorial #1 is long, subsequent tutorials will be much shorter, but #1 needed to cover the basics.

Tutorial #1 - Even PROS must learn to walk
In this tutorial we install and meet the PROS IDE, create some
variables, functions, loops and take a peek at the PROS API

http://polynomic3d.com/user/smith/prosTuts/1/cover.png
Direct Download | YouTube | Torrent
(right click to download video - use VLC to watch)

Want to influence the tutorials, have a guff with something I say or do, or in general just want to say something? Join the discussion, mash that reply button and type some stuff into that there keyboard of yours!

Otherwise, go gecha PRO on. -Cody

1 Like

You should always DoSomething() in operator control…

I may or may not watch the first few tutorials, as you seem to be going over the dead basics. Once you start going over some of the nuances/tips of PROS, you might see more views. I was just thinking about how PROS target audience is geared towards more seasoned programmers, the “basics” would be like taking the first 2 weeks of every science class (this is how we scientific method and measure things).

That isn’t to say that these videos shouldn’t be done, they should, especially because I know there are many programmers that want to get experience beyond ROBOTC and EasyC. PROS is the perfect way to do just that, if taught properly (which you are perfectly capable of being).

My biggest point was, keep making these videos.

The download is pretty slow. Can there be a torrent version so all users can contribute to the download speed? This might be a circumstantial problem, but I haven’t managed to download it in about 2.5 hours and am getting 38 kbps right now which is really slow. Cody’s call though, obviously.

I feel strongly that PROS and ConVEX are collectively the future.

In short, this series must assume no prior programming knowledge to accomplish what I want. I see this as an entry point for newcomers and those looking to make the jump from EasyC and/or ROBOTC.

Thanks for the compliment, I will judge the communities response and put my effort where it is most effective. My 3ds max tutorial series did well, but the interest wasn’t there. I think this series will fair better.

A torrent is a pretty snazzy idea, I posted the .torrent file in the original post and will make an effort to include one for subsequent videos. My home connection is pretty good (>6Mbps up) so there should definitely be an advantage there. Good idea.

I’m also going to upload the video to YouTube since that was highly requested on the 3ds max series but I want to keep the direct link up for those who live behind a firewall (which is most schools these days).

-Cody

You can’t believe how thank full I am for this,
Thanks sooo much. Please keep up the good work, it really helps.

ill be seeding this for hopefully 10 hours then whenever i get on. if i notice a new video probably going for a 10 hour upload too.

I completely agree, and was trying to make that point. Sorry if it didn’t come off as such

I will leave it seeding for as long as I can as well. This is really great. Thanks Cody :smiley:

I think this is great.

Setting up a “tool chain to write code” is a daunting task until you do it twice. I flip between Netbeans, Eclipse, and a custom dev environment. Setting it up is a major pain and I think it’s a major fear factor. Once you cross over (“come to the Dark Side Luke”) you don’t look back.

Cody PROS (and maybe his Convex) series should let people that may not choose to take the “zip line” to the other side to step up and go.

Having said that, I deal with beginner programmers, and parents that program but have never programmed a robot. So the RobotC people can sleep easy, I want something I can install and go in < 5 mins and get them into the robot.

And having said that, I can’t wait to see what the College teams and the more advanced teams do with PROS/Convex. Think of the mechanical coolness of Jones, ACME, Eggs and the programming skill of Sparks and Vexmen. New vistas.

And having said that, a little worried about head to head. All VEX part rule gives you a box to engineer your way out of. EasyC/RobotC give you a box to engineer your way out of. I’m mulling over if the new environments break the box paradigm and give a big lift.

And have said that, I still think the edge will always be to the teams that have a drive plan, drive to the plan, always drive with a purpose and have a second robot since the hours of practice killed the first one.

While I totally love the new environments and swear by them, I’m not sure they really are inferior to RobotC or EasyC because you don’t have to “engineer your way out of them.” I would argue that they’re better for engineering because you actually can dig down into the guts rather than trying to work around the training wheels EasyC and RobotC have.

OK guys the YouTube video finished encoding. It’s up now.

Your support here has been amazing guys. Thanks for the comments, seeding the torrent and watching the video. I will definitely make more of these.

For tutorial #2 I would like to cover the other kinds of loops (for and do-while), I’d like to make some more in depth functions (ideas welcome) and I would like to begin to explain the difference between source and header files.

In tutorial #3 I would like to explore the PROS API and use a set of the PROS functionality to expand the library of useful functions we started in tutorial #1 and #2.

And uh, that’s as far as I’ve planned so the rest is up in the air. Tell me things you’d like to see me program and it might just happen :wink:

Thats what I meant. EasyC / RobotC make it simple to program a robot. The two new environments, are hard to do, but you get to the bare metal.

Once again, teams ready for the 24 speed racers with helium filled tires are great. I still need to make “walkers” into “riders”.

So do we need to create something at the other end of the spectrum? I’ve toyed a little with the idea of porting something into the arduino IDE, this has become a little easier as it now (1.5 and later) includes the arm toolchain and has some hooks to allow adding new boards. With enough motivation I could probably bang that out in a weekend.

What’s the advantage of the Arduino IDE over Eclipse? Is it simpler?

Very much so, I like it’s minimalist approach.

[ATTACH]7746[/ATTACH]
arduino_ide.jpg

Hm just installed it. I dunno I think I’d miss auto-completion, bracket adding, and other more advanced features of eclipse. But I guess it could serve a similar purpose to JGrasp for Java - just a super simple environment that you learn how to program on before providing advanced features.

I really need to buy an Arduino one of these days. :frowning:

Problem is you can’t just buy an Arduino, you need like 100 multicolored LED’s and a plan to rule the world.

I like this idea, but for VEX IQ. I think the kids need a free IDE too and the simplicity would be welcomed in IQ.

I vote we call it NOOBS

(Not supposed to be offensive - just a play on the name PROS :stuck_out_tongue: )

I don’t know if I can trust early grade schoolers with a free IDE :D. Besides, I doubt many teachers would want to teach such an open source language (because it would be difficult to teach to brand new programmers, especially of their age).

I don’t know why many believe open source = difficult. It just means that all the code is available to the public. I’m sure ConVEX can dumbed down further with the inner workings better hidden for IQ users.