This is my first post on VF but I’ve lurked for a while and read this and other conversations involving you and I have a lot to say.
For context, I am graduated and into a Computer Engineering program but have been a PROS user for 3 years, a VEXCode user pro for a year, have used VEXCode Python & blocks (though not on a competition robot) and used RobotC in IQ for a year. I am also (as my username suggests) a developer for LemLib and have worked closely with PROS team members on stuff.
Now for my statements.
I have three (connected) points for this:
1.
“The docs are bad but at least there’s community/developer support” is a bad take in my opinion; in software, support should accompany documentation but is not a reasonable substitute.
I’m going to go off on a slight tangent here. In my first ever CS assignment, I went above and beyond with my code and covered cases not mentioned in the problem statement. The professor complemented my use of more advanced topics, but was deeply disappointed by my lack of sufficient documentation and gave me only a 60% off that alone. This was in intro to programming one. Most of the VEXCode api reference docs are not much better.
2.
From my experience, and as stated above, you most likely asked a question that is easier to find an answer to by a quick google search or trip to the relevant docs than asking. Additionally, almost any time I’ve seen someone ask a legitimate question, even basic ones, they tend to receive support - oftentimes from PROS or template developers directly - much faster than is possible on VF.
I count minimum 100 threads on the VTOW Help forum tagged as software related, of which every single one has had timely replies, and almost every has been solved or redirected to another solved thread for the same or a similar problem. This is primarily PROS users, but also includes support for VEXCode, vexide, etc (even one from a RobotMesh Studio user), as well as developer support for major templates like EZ, LemLib, JAR Template, etc. There are another 100+ answered threads on the LemLib Discord, and more in VTOW’s software channel and other places.
This is completely inconsistent with almost every single case I’ve seen or heard of in my almost three years active the community besides apparently yours. Do you have any other examples you can share?
3.
We all love James, but his job description doesn’t include helping people on VF. None of the VEX employees who work on VEX Forum even need to be here besides wanting to help competitors.
We really shouldn’t be relying on James forever. Yes, that is hard because of the lack of documentation, but that’s exactly my point. PROS docs can stand on their own much better than VEXCode ones can, and PROS community support will probably stay alive as long as PROS exists and the active VEX community stays at a similar size.
Also, James spends so much time doing code support on the forums, give him a break.
Now for some other responses/fact checking
1.
As @Mentor_355U pointed out:
This reads as almost hypocritical, given
Not to mention that both comments are untrue. The PROS docs list the set of basic programming & C++ skills required to use PROS.
(Also I agree the documentation is generally better than anything in VEX but I don’t know if it completely “puts it to shame”)
2.
(And similar previous statements)
I honestly think that free resources (learncpp has already been mentioned in this thread) and just doing projects is a pretty good way to get started learning coding, and is what I did. It’s definitely more than a “crutch”.
3.
I can think of, off the top of my head, three top North American VRC or VEXU teams who started with VEXCode and continued with it - 9181N/TNTN, 2775V, and 2029C. Every single other I can think of either started with or moved to PROS. Generally, I know more “successful” teams at any level - from the richest privates to teams from underfunded public schools in Washington (which is also my background) - who use PROS than VEXCode, and many switched to PROS as part of whatever improvements they made as a team after which they became successful. This includes both template and custom code users. (I know this is just anecdotal evidence but I think the scale of it is significant, definitely more than yours).
4.
This is a small one but it annoys me. This is completely incorrect. PROS has existed over a decade, and I’m pretty sure it’s older than VEXCode (someone who’s been in the community longer than me will have to verify). Also as far as I can tell, PROS 3, for V5, was in development before V5’s public release.
5.
This message was not kept in the thread split, but I would like to address it anyways (original message is here. I will be going over this out of order, but you can read the original for context).
I have a few things to say.
Potentially in the future, I am working on making a lib of my own, planned to be available for VEXCode and PROS upon release that pretty much fixes a lot of the issues of lackluster libraries:
Congrats on making your own library, but do you have to be rude/provocative with almost everything you say. I think you owe all existing library developers some respect for all the time they’ve likewise volunteered to making them, even if yours does fix all our “lackluster” elements, which I find unlikely.
However, you will realize that even with LemLib, even odometry configuration seems confusing and the path planning seems un-necessarily complex and could have been simplified a lot better using a list of lists/vectors.
This one I am personally interested in. Please explain to us in more detail your specific issues with LemLib. Odometry configuration is undergoing changes in our 0.6, but is generally only as complex as is reasonably necessary for the algorithm to work as written. Path formats are not designed to be touched by humans, but instead using path.jerryio (can’t link because of new user limits), which provides a visual interface that is much better to use than a “list of vectors” (assuming I’m reading that statement correctly).
That is why LemLib is so popular, because people recognize how dated PROS and Okapilib’s documentation is. And, genuinely, even LemLib itself can still be scary for newcomers.
You fundamentally misunderstand why users use LemLib. It’s not because PROS documentation is bad, it’s because they want easy, good, motion algorithms and LemLib is basically the best option for that which doesn’t outright break G4. Our “competitors” (whom we actually work with quite frequently to the benefit of all parties) in that regard are EZ-Template, and JAR-Template, both of which also have large userbases, and VOSS, which is new but has seen some early adopters. The newcomers who find LemLib scary, in my experience, are the ones who’ve never read the tutorials and don’t know a thing about programming, same with PROS (and kind of VEXCode), and we’ve been able to guide most onto a track of figuring it out.
In conclusion
I’ve responded logically to all your arguments as best I could, but I can’t help but feel like some of them are in bad faith. Most of your reasons boil down to “documentation bad, community bad,” where I think you’ll find a huge majority number of PROS users (both long-time and new) will disagree with you on both points. Honestly, this whole thing feels like you’re using your previous bad experience as your primary or only reason to dislike PROS. I wouldn’t actually care about that, besides that you’re attacking PROS, the team, the community, and template developers because of it.
I will finish by reiterating what Charles said, which as far as I’ve seen you have yet to acknowledge:
I hope you will heed his words and we can end this conversation here.
