Welcome!

By registering with us, you'll be able to discuss, share and private message with other members of our community.

Sign up now!

Bug The Problem With Reviews

Joined
May 22, 2019
Messages
6
TL;DR: Bot review process isn't clear making it hard for new developers to create bots for RuneMate. The admins should make a developer thread stating the code rules/things they look for during a review. Idea is supported by current developers.

General Issue
As you all know, the RuneMate review process ensures bot scripts which are safe for the user, but at what cost? The reason for reviews is sensible: Make sure scripts are safe, fit in the JVM, and don't blow up instantly.

However, there is an issue with this rather slow process that not only annoys potential developers but also limits RuneMate's potential. Waiting for (human) bot reviewers is slow, and allows room for bias/missing certain features of code already there. Some reviewers give advice on the code structure: It would be like Ford telling Tesla to cease production on their cars because they aren't gasoline-based. Nevertheless the real problem with reviews is the limits it puts on scripts.

Benefits
On the capitalist side of things, a better created script would perform better/more people would support it. In addition, having more potential developers means a higher potential for quality scripts. A well-known country in a particular sport is often good because everyone has played (and thus filtered in the best players). In addition, less scripts = less options = less botters.

One might say that "less quality" scripts result in less users (which assumes users look for average script quality). However, I would say most users flock to high-quality on any platform, and openness to developers (more scripts = more options) means more growth.

Solution
Barring essentials (compatibility, security, etc) - limiting scripts to the point where it takes a week for a tested script to release is not productive, especially when the release can be considered a test point (1 developer testing vs X users testing) for improvement.

RuneMate either needs to commit more resources to the review process so that it speeds up, or lessen the requirements for more growth.

A simple solution is a developer thread (or even Google Doc) stating the code rules/things they look for during a review. This is easily updatable, and ensures developers create their programs with these things in mind. This should result in less errors making it easier for reviewers as well.

Anecdote
A story by a distressed individual regarding this situation in response to a naysayer:
The hours spent working by many developers with crouched backs and stinky chairs? Grinding away at their code for days, weeks, eating nothing but crumbs from the crusty take out they got nights before. All this. All this work. Finally finished. As they take their time in maneuvering to the bot queue to push their achievements, a smile embarking upon their faces. A tissue emerges. For before they commit to a final left click, one more shot must taken. A shot that turns into a missile and adds to the tissue-infested panorama they call their rooms. Victory.

As they are about to hit the sack, heads on pillows, a notification pops up in the distance. It's Party.
Just kidding. That takes at least 2 days... *Fast forward 2 - 7 days*

As they are about to hit the sack, heads on pillows, a notification pops up in the distance. It's Party: "Unfortunately we were not able to approve your bot at this time for the following reason: <Insert problem which takes 30 seconds to fix>". And the cycle completes until their first bot is released.

Reputable Support:
Screenshot - Ricespud support
Screenshot - Fabreeze support
Screenshot - Savior support
Screenshot
 
Java Warlord
Joined
Nov 17, 2014
Messages
4,906

I'd like to mention that this is completely out of context. I explicitly said that a definite rulebook would be nice to have if it was possible, but in my eyes its not realistic.

Sure you can list a few completely trivial rules such as "nullcheck properly" or "dont make 150 class files for a simple wine grabber", but to pretty much all other rules there are exceptions and are completely subjective to how you approach a certain problem.

You can barely hope that all authors even read the rules before pushing, so instead of the rejection message being "dont use while loops in this case", it'd be "read the rules" instead which opens a whole new barrel of conflicts.

It'd introduce way more discussions and work for the execs than it would solve. Instead on discord i already suggested that whoever feels like this would help newcomers can crowdsource such rulebook based on their experiences.

So all in all i'd say that in fact i am against this idea. (Also i'm pretty sure @ricespud was kinda joking but i'll let him decide on that)
And the second screenshot was blatant sarcasm to get out of a discussion that felt like 2 hours down the drain.
 
Joined
Jun 5, 2019
Messages
7
As someone who recently wrote their first bot - I totally agree that there should be at least some general guidelines for people to check.

Sure you can list a few completely trivial rules such as "nullcheck properly" or "dont make 150 class files for a simple wine grabber"

These things are not all trivial for new bot developers who have very little in the way of structure or ideas for how they should organize their project. Most of the skeleton for my bot came from the 2 year old open source flax bot. Have things changed since that was released? I'm almost certain of it, but I don't know because there's a lack of guidelines to follow.

I pushed my first bot to the store a week and a half ago and haven't heard anything about it yet. I was able to run it on my own for almost an hour, but that doesn't mean it'll pass whatever requirements are necessary because I don't even know what these requirements are.

The goal for the administration should, in my opinion, be to make it as easy as possible for developers to create high quality bots. They do an amazing job of being available for development related questions on Slack/Discord, but it's quite counter intuitive that there's no way for new developers to know if they've actually done things right.

What's the solution? I don't know. In some senses the current method of code reviews is quite good - it ensures that new developers receive feedback and are given an understanding of what they should try to accomplish. The issue, I believe, is that one is incentivized to throw shit at the wall until it sticks which wastes time from those who have to review their code.

If there was a general guiding document that one had to read that would make this process easier because the code review team could shovel a lot of the shit that gets thrown simply by posting this document.
 
Last edited:
Joined
Jun 25, 2019
Messages
24
I've just uploaded my simple bot for review today. As a experienced developer but new to Java and runemate my project has just been made up, in parts, from snippets I have found in the forum guides. Some of these guides have been a few years old. I tried to find open source bots, but some didn't contain any source code or any useful code(to my project) at all.

How complete begginers manage to successfully navigate the current environment is very impressive to me. I struggled with parts and I have a fair bit of dev experience.

A central "dev Bible" or development wiki which is maintained by bot authors would be a great place to start in my humble opinion. It could include code snippets and hints on how to create robust well structured code.
 
#1 Fabric Cleaner
Joined
Mar 18, 2017
Messages
393
I've just uploaded my simple bot for review today. As a experienced developer but new to Java and runemate my project has just been made up, in parts, from snippets I have found in the forum guides. Some of these guides have been a few years old. I tried to find open source bots, but some didn't contain any source code or any useful code(to my project) at all.

How complete begginers manage to successfully navigate the current environment is very impressive to me. I struggled with parts and I have a fair bit of dev experience.

A central "dev Bible" or development wiki which is maintained by bot authors would be a great place to start in my humble opinion. It could include code snippets and hints on how to create robust well structured code.

Generated Documentation (Untitled)
^
Basically the bible

Has all the information you could ever need about the Runemate API! Implementing it, however, depends on your java understanding which can easily be learned from resources online such as Youtube or even the Runemate forums which have answers to many questions that newer devs such as yourself face!

If all else fails, join slack or discord and ask for help in the development channel.
 
Top