Arrays Don't like Negative Numbers



  • @iTap-Development the real cost of any tool is learning to use it and working around its limitations.

    When a tool also has problems and bugs (and hyperPad has both, and they are VERY different things) then the burden of cost is borne by the users, over and over again... despite the fact they're also paying for the service.

    hyperPad has fundamental problems.

    And systemic bugginess.

    It crashes EVERY single time it launches on a reopened iPad. I have never seen any other app be this consistent in crashing. Nor even close to it. That should be something that's immediately fixed. It's amazing that Apple's not doing something about it.

    hyperPad drains battery faster than the most intensive 3D games on an iPad, when it's in Editor mode. That's something VERY buggy, and a problem. And it goes on and on and on...



  • @iTap-Development said in Arrays Don't like Negative Numbers:

    @Deeeds if it’s public, can you tell me where I can find the information? I’m not saying you are wrong, but I am curious.

    Well?

    And if hyperPad is so bad, just leave.



  • @iTap-Development First, they talk about their relationship on VC and startup sites, a few years back. I didn't bookmark this stuff, just did a quick group of searches into the history of the project before I decided to invest more time in learning and using it.

    One guy is largely responsible for the whole thing and roped two of his cousins into the project. They raised a bit of money a few times, I think the biggest was 120k at some point, but am going from memory.

    Then there's the status of the linkedIn, etc... and the updates stall out, and there's some very interesting comments about community and intent by @Murtaza sprinkled through the history of this forum.



  • @Deeeds are you talking about behroz? I think that was his name. Murtaza said he moved to a different country.



  • @Deeeds Murtaza mentioned on Reddit that they had around $300,000 invested, around a year ago. @ThomasV is (or at least was 5 months ago when he messaged me) a software developer at hyperPad, although I don't know exactly who does what. I haven't heard of anyone else other than Hamed and Behroz related to hyperPad or GamePress.



  • @Jack8680 it looks like @ThomasV joined 5 months ago and was last online 5 months ago.



  • @Jack8680 I think that's probably sum total investment, from GamePress through to today. GamePress didn't make money, so far as I know, and it's patently obvious there's almost nobody using hyperPad. I think more people used SceneKit before ARKit came out.

    And that's really saying something.

    SceneKit was a ghost town.

    Despite being far better than Sprite Kit.

    The best thing to come out of ARKit is that SceneKit is getting some usage.

    Not coincidentally, either. It's now obvious why Apple was investing in SceneKit and I/O... they were planning and going at it in both AR and VR. It looks like they've wisely canned the VR stuff.



  • @Deeeds I think GamePress had an unlimited levels IAP, although I could be confusing it with early hyperPad.


  • Admin

    @Deeeds said in Arrays Don't like Negative Numbers:

    @iTap-Development

    @iTap-Development There was a founder that was the chief architect of the project and programming lead and has a history of exploring cocos2D, the technology this is based on. It was likely his idea to build GamPress, or that of someone close to him. Their sources sources of inspiration are something that should be looked into. Many of his ideas that became GamePress and then hyperPad show that he did some research (but not enough) and that he was thinking in competing and conflicting directions at the same time. That he or his mentors were confused about the nature of digital creativity and interactivity. They were trying to blend ideas of social networks and community with development. That split has compromised the core endeavour, more so in hyperPad than in GamePress, ironically.

    All of this is public knowledge.

    He left.

    Whenever a programming lead leaves, things slow down MASSIVELY. And if you look at the rate of updates and what was updated and added, you can get a good sense of when he left.

    Yeah.... None of this is true.

    Hamed has always been the lead architect, and Hamed has done most of the code. So please don't speak about us as if you have some inside knowledge. You don't.

    It's one thing to comment on your experiences with the app and the bugs you face. But you're making HUGE assumptions on our experience, our background, and our development. We've been in this industry for years, I think we have an idea of what we're doing.


  • Admin

    If you want to know more about our company. I'm happy to share the details. It's not a secret. Here are the details even though it has nothing to do with this thread.

    • Company was founded by my self, Hamed, and Behroz. Hamed is my Brother, Behroz is my cousin.
    • Since starting we've raised about $300,000.
    • There have been roughly 500,000 download of GamePress by 2014, and about 25,000 monthly active users (not insane numbers, but good enough for a niche product)
    • In the summer of 2014, we were funded by YCombinator (one of Silicon valleys most competitive investment firms). During that time we started transitioning from GamePress to a more "prosumer" tool targeted towards interactive books. This was called Tappabl.
      -We didn't like the direction of Tappabl. It wasn't what we wanted to do from the beginning. So we decided to go back to our roots. We rewrote GamePress from the ground up and relaunched as hyperPad in 2015.
    • Biggest mistake: we didn't make hyperPad an update to GamePress and ultimately lost our user base in the transition
    • Since 2015 the team has changed. During 2015 the team was 6 people. My self, Behroz, Hamed, and 3 other hired developers (2 Jr programmers, and one sr).
    • In 2016 the Jr programmers returned to school, behroz decided to pursue other options (moved to the US, works full time at Amazon, but is still 100% of the hyperPad team, just no longer writes code due to Amazon non compete policies). End of 2016/early 2017 our senior programmer left to work at a start up in silicon valley.
    • Also during 2016, we hired some artists to create some custom art work for potential hyperad use.
      -2017 we hired 2 jr programmers (only temp). We also hired hired a small marketing firm, but they ended up not working out.
    • Currently we have about 5,000 monthly active users. Not a huge number. But it's more more than this forum. The forum and Hub are areas we're trying to get more active. But as of now, not a clear representation of the size of the user base.
    • Right now our focus isn't to have a million users. We would much rather have 1000 users who are using the app, providing feedback, collaborating and just building awesome stuff.

    Currently the team is just Hamed and I full time, and behroz part time. We've actually just concluded interviews and have hired 2 additional programmers that will be joining us in January.

    We never raised additional money because:

    1. Raising money is time consuming and makes you lose a lot of focus. When you raise investor money your company and focus changes to build something investors want rather than what users want. We'd rather build something for users.

    2. We don't need more money. hyperPad isn't our only source of income (we are working on it full time though!) We're fortunate enough to be able to bootstrap using other funds.

    Finally, yes there are bugs and issues. But you need to remember this forum isn't the only way users communicate with us. We get hundreds of emails about questions, bugs, and other feedback. A lot of our time is trying to diagnose these issues and verify if it's a bug we caused, or something wrong with their logic.

    When it comes to the forum, it's a bit different since our awesome community can also help out. Often times they try and suggest a solution that will work until the bug is verified and fixed.

    If the bugs are getting in the way of your enjoyment of hyperPad. Then I'm truly sorry. We're working hard on fixing. Sometimes we get overwhelmed (especially when there is a really *helpful and vocal user), but we'll be updating our roadmap with the bugs we've verified and the ones we're working on.

    Finally... If you're not enjoying hyperPad and it is crashing every time you start it up, or there are too many bugs to make it useful, then you can get a refund. Apple does offer refunds. Contact the Appstore team and they will get you sorted out.
    That doesn't mean we want to see you go, but we understand if you need to part ways.



  • @Murtaza that's wonderful news, on one front. And something I'm very glad you shared. Perhaps consider making an "about" page for the app and service, and including some of this information.

    @Murtaza you spend an inordinate amount of time attempting to control expectations and divert from core problems with the app. and provide breathing room for @Hamed to do his thing.

    If, as you say, Hamed has always been the chief coder and architect, then the following is far less acceptable treatment of users and indicates a need to consider user needs in a more holistic fashion.

    1. No UNDO in the Behaviour Editor
      This is so stunningly bizarre that it’s completely amazing. Not in an “I’m Tim Cook it’s amazing to be here today…” I mean in the loudest possible sense of “WTF? Have the creators never used their own app?”

    2. The delete button for behaviours is right next to the duplicate button.

    This is comically bad: they’re the smallest buttons, and the closest together, of any interface elements in the entire app…

    It doesn’t take an experienced UX designer, empath or genius product manager to realise this is a problematic layout for workflow and operation of the app. But since you’ve missed it, let me spell this out: The two most extremely opposite desires of a user are right next to each other, one of them is utterly destructive and cannot be undone.

    Imagine: I love this behaviour so much, and it’s so important to my game logic that I want to reproduce it for another similar purpose… oops…I deleted it because i was bumped, missed the button, was in a hurry, slipped… etc… and now I can’t undo this, and have to rebuild an item so important I wanted to duplicate it.

    Wait… this gets better… what if that behaviour is a user filled array with unique and arbitrary values in it?

    AND THERE IS NO UNDO in the behaviour editor!!!

    “Oh… but there’s branching, and cloud backups and everything else we provide… “ you say.

    Yeah.. and those things are from when? And have what in them? They’re a blackhole. The user doesn’t know what of their last activities are updated on the cloud or backups on device because there’s no way to compare them. But that’s not the real point. The real point is that an UNDO in a code editor is so blindingly obviously necessary that it absolutely boggles the mind it’s not there…. and you’re punishing careless or distracted users by putting the delete operation RIGHT NEXT TO THE DUPLICATE button.

    Surely this has caught you out, once… right? Or have you never used your own app… or are you so perfect in your operation of it that you’ve never made this mistake or any other mistake that needed UNDO?

    1. There’s no visual indication of which “Node” within the behaviour editor is currently selected.

    Clearly you don’t see this as a problem because it seems to have been like this forever. Astonishing. Baffling. There’s not any visual indication of a touch on a Node, either. But that would probably require that you consider having some kind of selected Node state, first.

    However, this is a very simple problem to solve: add a shadow around a selected Node, so it’s elevated from the “paper”, or add a border around it, or some other visual indication that one of the nodes is currently selected. This will prevent the following problem being an issue:

    1. When touching on a Behaviour node and immediately dragging it to another location, you have not selected it, only moved it.

    If, as sometimes will be the case, the user is moving nodes around whilst considering which to delete, and then taps the rubbish bin to delete one they’ve moved whilst considering it, they have deleted the last selected node, not the one they just moved. That last selected node might have been something useful, but far worse, it might not actually be on the screen at the moment, as the user might have zoomed and panned around their behaviours in such a way as to not be able to see what was deleted. Then when they run their project again, all hell breaks loose, or nothing happens the way they expect, and they’ve gotta go find what happened.

    AND THERE IS NO UNDO in the behaviour editor.

    1. When organising visual node spaghetti connections can be accidentally deleted.

    Visual code in hyperPad can easily become visual spaghetti for a bunch of reasons I’ll get at later. But the biggest problem is the need for a lot of branching with if statements, their branches disrespecting movement of their parents and the lack of bezier connectivity all compound by atrocious handling of node positioning and relationships. In that spaghetti mess, as the user tries to drag around nodes and find what they’re looking for in terms of a visual representation that means something to themselves, a connection can be immediately deleted by a careless touch or drag of a knuckle, and the user might not even see where from and to that went.

    AND THERE IS NO UNDO in the behaviour editor

    What’s interesting about all the above problems is that they’re compounded by each other and their own causes, and yet each is at least partially (or completely) mitigated by the provision of an UNDO feature in a code editor, the single most commonly used command/operation in ANY SINGLE creative software on earth, and the most important distinction between digital creativity and analogue, real world creativity.

    As I say, I don’t know how to say the above strongly enough that it would resonate with someone that would get this far in the “startup” that is GamePress and hyperPad, and be the chief architect and coder. It simply boggles my mind that this is possible, that this point has been reached.

    The only parallel I can think of is the lack of copy/paste in the first iteration of iOS. But that’s not near this level of disdain for user experience, because there’s no copy/paste in the Behaviour editor, either… nor the ability to select multiple nodes at the same time…

    I am stunned into rant mode by the lack of Undo in the behaviour editor.

    I’m not sure how to say this strongly enough that it resonates sufficiently in the mind of someone that hasn’t already considered the UNDO to be important and to take precedent over all other facilities in a creative environment. Add UNDO to the behaviour editor and move duplicate and delete away from each other!!!

    That the one person is lead architect and familiar with Objective-C and Xcode and has overlooked the UNDO functionality as a base requirement for creative endeavour is truly astonishing. That the two of you are brothers and split the roles of production yet neither have gotten around to adding UNDO is mind falteringly stunning. It says more than the fact that your above reply is the first time you've introduced your team and story to your users.



  • @Murtaza 5000 monthly users, and yet this slipped through the cracks:

    https://forum.hyperpad.com/topic/617/loop-conditional-comparison-operators-reversed

    I'm not sure what that says about your "users", but it's not good.



  • btw @iTap-Development if you were curious about the significant differences between a bug and a problem, the above (no Undo in Behaviour Editor) is a problem. It's a fundamental problem in the conception and articulation of a digital tool and far exceeds any of the bugs I've seen, with the exception of the constant crashing on opening of the developer version, which you are also experiencing.

    If there were a stream of new users, that crashing would be the deal breaker that drove them away.

    You and I overlook that crashing because we have experience and passion. Me the experience, you the passion. But new users will not be so kind. That's a bug that's become a problem for user adoption, acceptance, enjoyment and sharing of those qualities. It's going to create a bad reputation for the app... well, it would if there were enough new users to make it a problem.



  • @Deeeds Why do you want an undo option in the behaviour editor so bad? Accidentally delete a behaviour? You could put the behaviour back in 30 seconds. Yeah I think it could be useful but it’s not THAT important. Making a big change to an object that may or may not work? Duplicate the object, disable the original and hide it somewhere in your scene and then modify the duplicate. I do agree with you that crashing is a problem. It doesn’t annoy me so much because I’ve gotten so used to it lol



  • @Aidan-Oxley This isn't about me.


  • Admin

    I find it comical that you're questioning Hameds position in his own company. I think this applies here.

    " You don't know what you don't know"
    -Deeeds

    Regarding no undo in behaviours:
    This is not an oversight or bug. We discussed it and chose not to implement it. It's that simple. Would it be nice? sure. But the performance trade off was not worth it. Especially early on when the iPads had such little memory. Now that the iPads are more powerful it's definitely something we can look into.
    Usability wise, it just wasn't that important when compared to the main editor. Users are less likely to need undo in the editor. This is also something we tested.

    duplicate and delete
    This is an oversight. Pretty sure this was done by one of our jr programmers, and we didn't catch it. Makes sense to move them apart.

    As for overall UX and usability. We spend a lot of time doing in person interviews and recorded focus groups. When we do a major change to the UI, or add a new feature. We bring in groups of people who have never used the app, and some who are experienced with the app. We record their sessions. Watch their body language etc.
    A lot of your UX thoughts (that you mention else where, not in this thread), we originally had as well. But when we watched the hands of actual users, we were proven wrong. Ultimately the users win.

    No indication of which behaviour is selected:
    We had something in place early on that would bring focus to the behaviour. But during the rewrite/redesign it was removed. I can't remember the reason behind it, but there was one. (I think it was a performance reason as the shaders and the iPad didn't mix well at the time). We'll look into bringing it back. That being said, the name of the behaviour in the properties does tell you what you're editing...

    When touching on a Behaviour node and immediately dragging it to another location, you have not selected it, only moved it.
    Do you mean moving a behaviour shouldn't put it in it's "selected" state? That makes sense.

    *Visual node spaghetti
    This is unfortunately one of the drawbacks to visual node based programming. We have a few ideas we want to implement (like functions and reusable behaviours).
    As for the deleting part. I can see the problem here. Maybe we should have a popup to verify deleting.

    Regarding Loop operators reversed
    This is a relatively new behaviour. Not everyone has used this. It's a pretty advanced topic, and the majority of hyperPad users are not here yet. So it's possible to go unnoticed. Especially when it doesn't look like it affects existing projects and behaviours.


    I have a question for you (so we can better understand our users). What brought you to hyperPad? You mentioned you're in marketing. But you seem to have read a few programming tutorials too.
    Why use hyperPad? It's clearly not meeting your expectations, and you have some basic programming knowledge. What's keeping you here?



  • @Murtaza said in Arrays Don't like Negative Numbers:

    I find it comical that you're questioning Hameds position in his own company. I think this applies here.

    There are VC profiles of your cousin where he is titled lead programmer, and founder. There is nobody else given those titles in these areas, and you don't address it anywhere. So I assumed.... wrong of me. I stand corrected.

    But, as I say, it doesn't bode well that the lead programmer and his partner are actually the ones overlooking the creation of UNDO in a code editing environment.


  • Admin

    In a 3 person company, titles are meaningless. Depending on the situation that could have been purely based on alphabetical order. Or one he decided to give him self (which is totally fine, since it's his company too).
    There was actually a point where my title on linked in was Head Cheese... I am not cheese.

    As I said undo was a choice we made on purpose and not something we overlooked. But I really appreciate you thinking we're incompetent.
    We're always looking to hire additional programmers, so if you ever go beyond hyperPad and get an engineering/computer science degree maybe you can come and add undo :).



  • @Murtaza said in Arrays Don't like Negative Numbers:

    What brought you to hyperPad? You mentioned you're in marketing. But you seem to have read a few programming tutorials too.
    Why use hyperPad? It's clearly not meeting your expectations, and you have some basic programming knowledge. What's keeping you here?

    One at a time, in an order that might help make the reasoning and rationale clear:

    You mentioned you're in marketing.

    Yes, marketing is a curious field. One in which research is far more important than it is in the paired fields of UI and UX design, which is where I came from before marketing.

    Focus groups for anything involving design of any sort are like computers: Garbage in, Garbage out.

    But I digress...

    Why use hyperPad?

    I'm doing market research ;)

    What brought me to hyperPad

    Chipmunk!

    and the iPad. I really like iPads.

    What's keeping you here?

    Chipmunk, the iPad and my personal resolve to see what I'm doing through to completion.

    It's clearly not meeting your expectations, and you have some basic programming knowledge.

    It's not about my expectations. My commentary has been far more about what's expected of these sorts of endeavours from the perspective of your prospective and potential users. I get that this kind of abstraction is not common.

    For things I want, I'll reach out personally. And have.


    But you seem to have read a few programming tutorials too.

    Nice try. Swing harder. I have thick skin. And a hard head.



  • @Murtaza said in Arrays Don't like Negative Numbers:

    As I said undo was a choice we made on purpose and not something we overlooked. But I really appreciate you thinking we're incompetent.
    We're always looking to hire additional programmers, so if you ever go beyond hyperPad and get an engineering/computer science degree maybe you can come and add undo .

    Keep swinging. You're still hitting air.


Log in to reply