Ad
  • Custom User Avatar

    Looking at the history, yes, it seems i updated a couple of languages, including Java, three months ago. I admit I can't remember what exactly I changed, but its very possible I hardened tests to bring all languages to the same difficulty level.

  • Default User Avatar

    This comment is hidden because it contains spoiler information about the solution

  • Custom User Avatar

    Done

  • Custom User Avatar

    I've try to do this kata in java but, it's keep getting over 16000ms, i'm stuck xD

  • Default User Avatar

    I hated this program in Java as I felt it overcomplicated the problem forcing the use of BigInteger, but Python was super easy! In hindsight, I felt like this was a great example of how some programming languages have massive benefits in certain situations vs other programming languages. In this case, Java is a headache because of the BigInteger syntax (but BigInteger is necessary for large numbers), but python doesn't need different data types for larger numbers, so in that language there's no need to think too hard about this problem.

  • Default User Avatar

    I agree..

  • Default User Avatar

    That's not a resolution!

  • Default User Avatar

    A step towards something like this could be providing an ability for people to subscribe to collections and have honor displayed for the completed Kata from just that collection.

  • Default User Avatar

    I don't know if a post like this has already been created, but as a teacher, I'd like to see some educational settings. I'd love to place students into a "class" (in addition to clan), assign specific problems to all the students in the class, and have honor tracked for only the assigned problems students complete - so they'd have their overall honor and their class honor. Also, that class honor can earn points from non-official Katas (ones developed specifically for the class) All of the same features could be set up for a local/regional coding competition instead of just for classes.

  • Default User Avatar

    I think giving better examples of how the sorting works would fix the confusion that most people have on this problem. "In the result, substrings (a substring is for example 2:nnnnn or 1:hhh; it contains the prefix)" is really subtle and easily missed when figuring out the sorting mechanism. Having a couple examples shown in the description where it's the substring that gets sorted and actually taking the time to explain what is happening would make a world of difference in helping people understand this problem.

  • Default User Avatar

    B1ts gave some good feedback.
    I love the idea behind the story and this would be a great CS2 exercise for our programming class.
    The description does a little more work (maybe include example inputs or specify that String may include spaces, in which case the 1st letter of each word should be capitalized), but the fact that I got the general idea and was able to solve it shows that it wasn't that bad of a description either.
    Sadly, B1ts' 1st and last comments are really the reason why this problem won't be selected as an official Kata. Random tests prevent people from just being able to test your specific cases and cheat their way to a solution. The story is interesting, but String parsing is done so many times that the people who solve this problem first will likely downvote it purely because of that.
    Having said that, you're still capable of sharing it with people and seeing if they can solve it.
    I wouldn't put this Kata at a 5, but probably a 6 or 7. It definitely makes you think about how to solve it for all possibilities, but it isn't as hard as most of the 5 rated problems, I think.
    Keep coding and trying to come up with Kata ideas! Don't let this prevent you from trying again.

  • Default User Avatar

    Wow Voile, what a pompous response. You share a couple good points, but mingle it with insults and arrogance that leave me wanting to trash the entire response.

    As a computer science educator, I look for programming problems that challenge students at the level they're at (and everyone is at different levels). This was in ways both a simple and a challenging problem, depending on your programming/problem solving background. The original problem this was based on was a computer science programming competition problem developed by a university aimed at high school students.

    You argue that students are asked to do the same thing twice, yet you acknowledge that they have to do it in 2 different ways... which sounds to me like they're not doing the same thing twice.

    You asked why I developed a problem that asks the user to calculate something using multiple functions... isn't that how most programs work in the real world? How many programs out there do 1 and only 1 thing? Take Adobe Illustrator, for example. It has a series of shapes within a single program and has selection tools to determine which shape is being selected. Isn't this just a simplified version of a similar scenario? Determine which shape is being selected (if any)?

    As a teacher, I find that my students don't have too much of a hard time figuring out simple solve-1-thing problems like whether the click is in the square. But, I find that when you add 1 extra level of complexity (such as adding to the same problem whether the click is in the circle or the square), students have a much more difficult time breaking the problem apart, which makes it a great challenge problem.

    You're completely right on the Object question. I looked at the problem as I was writing it with so many individual variables, some connected to a circle, some connected to a square, and some connected to a click and I wanted to vomit, but as I mentioned, I'm coming at this problem as a teacher, and in a 1st semester high school programming class, most students don't know anything about objects. I taylored the question to the audience I intended to give the problem to.

    The original problem I based this on only accounted for inputs as int values. I considered changing it to doubles, but I thought a) it forces people to have to consider whether they need to convert the numbers to doubles or if they can keep them as ints and b) some graphical programs don't keep track of points on a screen as doubles, only as integers. Really, the int vs double argument is an easy one to fix and doesn't really change whether the kata itself is a good or a bad one.

    Hurdles in a Kata don't make it bad, only not ready. That, I think, was my biggest issue with this getting retired within 12 hours of being posted. Only 2 people even attempted it, and everyone else just glanced at it and voted it worthless. This shouldn't be judged like American Idol.

    Elephant in the room? Not introducing anything new? Not fun? This is all subjective. To someone who has a lot of experience programming, you're right, nothing new and this is an easy problem. To people learning programming, this isn't a bad Kata. If you had to introduce something new, I doubt we'd gain any more level 8 Katas. I haven't seen any Katas that are similar to this one.

    In the end, it doesn't matter if the problem is retired or not as I can still reference it to students to have them solve it. I did find the whole thing rather disappointing though. Agree to disagree on the Kata Beta Process, but I do think that the problem didn't deserve to get immediately retired. Sure, it has improvements that could be made, but retiring it immediately says no ammount of adaptation will make this worth keeping, and I don't agree with that.

  • Custom User Avatar

    Was this Kata really so bad that it deserved to be shot in the head?

    Yes.

    • the kata is asking us to do the same task twice, only that the target area is switched from a circle to a rectangle
    • it doesn't help that both things are coupled at once: why do we have to simultanously detect 2 unrelated things at once? And then return a result that is a combination of two unrelated things? It's like asking us to write a function to detect is a number is odd, even, prime, fibonacci... and then display a different result depending on the aggregated bitset of the result, which is really just a poorly bundled set of tasks that shouldn't be bundled in the first place (it's not like bundling them together can lead to something meaningful)
    • and the author knows it too: Heighly encouraged to create sub-routines to simplify this process. If you're aware of this, why still do it? Why?
    • arguments as flattened out numbers? In my Java? Why not pass an Circle object instead? The input argument looks like it's a C function more than a Java function
    • input as ints doesn't make sense either when the domain of calculation should clearly be floats. Even the center of the shapes are not ints in general (sometimes there's .5 at the end)
    • in general there are lots of hurdles in the kata (like the numbers are given in a very weird spec) with no good reasons, which, just like pointless input validations, nobody likes it

    Not to mention the elephant in the room that the kata doesn't introduce anything new. So the kata isn't fun to anyone, and doesn't add anything to the already published katas either. No reasons to give it an upvote.

    (Also, I'm ignoring that you're taking that quote out of context.)

    IMO the retirement rules are killing beta Kata prematurely

    But this is especially important during Beta phase due to the harsh auto-retire rules.

    [citation needed]

    before the Sensei even has a chance to address any issues

    You're assuming that every beta resident is as senseless as you believe they are, which is false. You're also assuming that most beta kata authors are as sensible as you believe they are, which is also false.

    Why don't you reflect on why nobody bothers raising actual design issues on beta in the first place? Like, "these designs are bad and your kata's idea is probably bad too"? Somehow you're blaming all this on the beta residents, and none on the kata authors. Ignoring all the salt that happened on previous beta katas with new kata authors clearly not suitable for creating katas yet.

    I mean, if you're so insisting on that, why don't you tutoring them how to create beta katas instead? I'd really be glad for you to relieve our burden instead of adding salt to the system!

    IMO the satisfaction ranking is not being used as intended.

    Just because you don't like the idea of some katas being retired? Most beta residents vote like they do for a reason; everyone has their opinions (even if some opinions are bad). But frankly most of what you're doing is straight out barging in and claiming everyone's opinions are bad because "you're hampering motivation, blocking beta process, blablabla", which makes you sound as grumpy as a certain someone known as CliffStamp, who also happen to be also disliked by everyone.

    Worse, you're spreading the FUD that beta residents and power users are somehow against the people. That's like the most obnoxious opinion ever and will instantly guarantee you to be disliked by all power users (after all, why'd we want to like a person who invalidates and shit-talks us?) So, don't be like CliffStamp, okay? Or I think it should be very certain that nobody will agree with you.


    Resolving because I've answered the question. Whether you want to listen to them is up to you.

  • Default User Avatar

    Excellent suggestion. I've updated the description to reflect it.

  • Custom User Avatar

    IMO the satisfaction ranking is not being used as intended. But this is especially important during Beta phase due to the harsh auto-retire rules.

    See the wiki:

    Please do not choose "None" simply because the kata has an issue but it is otherwise a good kata. The satisfaction rating is meant to indicate quality of kata as a concept, not its current state of condition in terms of open issues.

    https://github.com/Codewars/codewars.com/wiki/Satisfaction-Rating

  • Loading more items...