Some considerations about Hype and how I would like it to be

yes, you’ve shared the principles of that approach. Thx :slight_smile:

But it’ll always be an unsupported hack and it may need some effort on any update …

There are two types of Hype users: those who divide Hype users into two types and those who don’t.

As for the other two types of Hype users, one is good with JS and the other isn’t.

I’m among the second group. I work with such a dizzying range and quantity of projects and with such insane deadlines that the idea of taking the time to master JS just for one app is a non-starter. This is life in the real world, where we have to master fifty apps and a whole lot of money depends on the results. There simply isn’t the time to earn a certificate in JS in order to apply the skills to Hype projects.

In an ideal world (such as one in which a person could make a living writing books about Hype) it would be wonderful if someone would write a book specifically about learning JS in the context of Hype.

If there were to be a book filled with brief, practical JS lessons that someone could do in fifteen minutes or so and specifically in the context of a Hype project, that would help those of us from the lower caste of Hype society to be able to hang with the cool kids.

If you had a book specifically about hype js.

The very first page would need to be.

LEARN JAVASCRIPT BASICS.

the second page would be.

THE END.

Many of us have said with the help of hindsight,
That it does not take very long to learn the basics nor is it very hard to get your head around.

It is important to understand. That whilst the JavaScript indeed most programming languages are large,

-You do not need to learn it all.
-You do not need to remember it all.

You just need to learn the fundamentals of the basic code structures.

You do not need to learn every command.
Just the basics of how command statements go together and the bits that join them into bigger structures , the basics of how they work.

Once you do have the basics and have read the Hype documentation related to Hype’s JS, things will make sense.

You will be able to use the vast amount of examples and reference to tricks, commands, libraries out there to apply them to your hype code.

You need to understand the basics of JS to be able to move forward easily. Just looking at examples of Hypes interaction with JS will bog you down with mistakes in application without some small bit of understanding of JS that it sits on.

I have said this a few times. I have a memory like a sieve.

But I can code because I retain the basic knowledge of how JS code goes together.
Even the basic syntax I forget or just never bother to commit to memory, I can quickly reference it on the web or elsewhere (copy a snippet).
I can do that because although I cannot remember the full syntax structure, I know the basics and that for instances, I want to loop/ iterate over some items.
I know that the basic way to do this is to use a for loop statement /command.
I know a for loop exists and thats what I need and I can just go and get it even though I am never arsed to remember it full structure, once I see it I instantly know how it works. Because I learnt that and retain that.

1 Like

That very precisely defines the glass ceiling.

I used to be an absolute wiz at Lingo (Director) and coded multiplayer titles from soup to nuts, with one title being the central draw of a 40’x40’ Vegas show booth. The reason I was able to do this was because the documentation directly connected the code with the app. The documentation from Macromedia was simply the best I’ve ever seen. Having spent nearly 20 years as a published software reviewer, which requires an intense amount of learning, this kind of documentation is worth emulating.

There needs to be a connection between the knowledge of JS and the app. Beyond generalities, there are specific Hype-related questions, such as multiple instances and other things that need to be covered.

People who are good at JS and who know the ins and outs of deploying it within Hype are like people who try to teach English to a non-English speaker. Teaching the general rules is easy, teaching the quirks is something else altogether.

It should also be recognized that there are different learning styles. People who are great coders tend to be left-brain dominant whereas highly creative types tend to be right-brain dominant. The former teach via left-brain methods. That does not work well with right-brain learners. They habitually skip a critical step - the theory behind how it plugs into Hype and why it should be done in a certain way - and this also includes a variety of unusual situations.

I would imagine that there are many highly imaginative and creative types that can do great things with Hype but who can’t make the leap to JS because of this. The concept that all one needs is to master basic JS - well, that leaves out the one thing that stands as a barrier. It is not just as case of “plug it in here and you’re done”. When someone plugs some JS into Hype and it doesn’t work - that is what is not covered in the documentation. What is missing is the theory. Among other things, the knowledge of why something should be done in a certain way in the context of Hype can provide the means by which a learner can fill in the gaps.

1 Like

It is not a glass ceiling.

And as far as I am concerned left brain v right brain is a myth.

There are many coders who are creatives and vice versa.

If you are not willing to understand the basics of JS then no amount of examples specific to Hype will help you in the long run. You will not fully be able to take one bit of code and be able to apply it to all other projects. You need to have some idea of JS structure to do this.

The other thing is Hypes JS API is not an entity in its own world.
JS is the world. Hype JS is just a realm in the JS world. Which allows you to do some Hype specific realm things within the bigger JS world. a conduit into Javascript with the flavour of Hype.

So when we keep saying it is better to try and learn some basics, we mean you can if you want keep playing the copy and pasting with your fingers crossed roulette.
Which you will end up wasting more time than it would take to learn said basics.

Remember once that is done, the more will make sense and your knowledge base will naturally evolve and grow.

There are so many ways of doing things and so many project concepts fro so many people that examples can only go so far with out your own gained knowledge.

The basic are about how the language syntax is put together but also gives you the concepts that that you need which many programming languages share.

Things like multiplication/Math
1 + 1 =2.

Clause logic.

While I am filling up my car with petrol, I watch the cost on the display. I want it to be £90 exactly.

if I release the button below £90 then I have Failed,
If above £90 pounds then I have Failed,
if exactly on £90 then I am a winner…

Javascript can work this out but in the Javascript way of writing it out.

There have been some suggestions to have a visual editor that uses the equivalent of lego bricks to build your intention and then translate it in to real code.

This type of thing exists and maybe one day could be used alongside Hype.

But we do not have that now.

1 Like

any implementation of coding within the GUI will leed to an abstraction and somehow limited possibilities. -> so there will be a learning curve too.

what about making a list of the most commonly wished logic-exercises that should be covered¿ than extensions may fill those gaps. This won’t be a generic approach, but … may help :slight_smile:

2 Likes

Your contributions are always very interesting and I hope very much that this post will produce concrete results.

We (designers) don’t like programming because we have a different head. The confirmation of this also comes from some interventions on this post. If we wanted to be programmers or deal with the code we didn’t know what we were designers for. It seems obvious to me. We haven’t studied form psychology, color theory, composition, creating user interfaces and so on for years, so someone can tell us “learn the basics”. So I think it’s useless to insist again:

  • learn the basics
  • copy the code
  • ask for help on the forum

because none of this will ever work for us designers unless we fall into deep frustration.

LEARN THE BASICS: many designers don’t even have time to wash their faces because of the many works that follow (someone even wrote it and I confirm it). Asking to “learn the basics” of something on which they have no head and not even time (and desire) is a bit of a joke.
I’m not the one who has to approach an application, but the application itself has to approach me. If Hype is for designers it must have all the right tools for a designer to be able to use it 100%. If Hype proposes itself to programmers it must give them (as it does, because it uses Javascript) the right tools for a programmer to be at ease with the software. But if Hype addresses both worlds then it has to do so by offering itself 100% to both creators and programmers.

The point is this: who does Hype target?
To programmers? Yes, of course! To designers…mhhh…I don’t think so. Or maybe it does, but it does only partially.

COPY THE CODE: if I suggested to a programmer to create an interface by copying right and left pieces of graphics, in your opinion would be able to create something functional not understanding the reason for things? Well, for us to copy the code is like doing things like a parrot but without being able to understand what you do and without being able, importantly, to customize (and give a soul) to what you do. People must be free to create without restrictions. Repeat, if I want to create a collision system for a small educational game for children, I can’t ask in the forum for pieces of code that should be customized for my project (who does it?) and I can’t even read very long posts where everyone proposes their own solution trying to figure out what to do. The customer pays for my time and I can not lose it to understand what to do by asking others to solve my problems. I want to have the opportunity to sit down and work trying and trying again my solutions not those of others.

ASK HELP IN THE FORUM: I can ask for explanations, show my solutions but I can’t wait for another to do the job for me. The forum is used to grow from a common base, but designers and programmers have different bases. The way I see it, a programmer cannot help a designer to program and vice versa. And he can’t do that by passing him a piece of code.

My idea is always to bring Hype to designers as well. I’m talking about creating interactivity in a visual way like “Click&Create”. Can’t we change Hype because there’s no time / money / resources to change the application? Do we need more time? Okay, but let’s do something for it:

  • create a loading bar that you can customize using only a set of buttons
  • a visual collision system for objects in Hype
  • a drag & drop system with visually programmable events
  • a visually programmable value storage system to be used during the runtime of the multimedia presentation

It would seem to me already a very good starting point

I am sure you do not speak for all designers. I certainly do not speak for all programmers.
And Although I can program it does not make me a programmer. Its is not my Job.

I am a Picture Editor. I sort through thousands and thousands of images a day selecting and discarding what I see as suitable for usage.

I leant to code because the tools out there did not do what I wanted or did not and do not exist. I did this so it would help me work productively.

I totally agree it would be great if Hype had some of those things you and many others including myself has suggested. I feel that a visually / UI interface for some of those thing is needed. Not just for people who do not understand JS but also for those of us who do.
Some will come ( I hope) some will not.

But there are people whom I presume are designers that use hype and have taken on learning some JS and come up with some great works.
There are others like yourself who does not have the time to do so, that’s fine, myself and I am sure others will try and help you when you ask. And not just with JS but Hype without it. ( and yes where we can avoid js if that is what needed)
But my point is anyone who is using hype as it is now, there is no harm in trying to learn some js and only gains.

P.s
That is not Telling anyone to do anything. I for one cannot tell you to do anything.

1 Like

just talking about black and white is never the truth , the world is gray. hopefully a colorful gray :slight_smile:

but the list a good starting point:

this should really be adressed to @hypeteam

should be integrated as optional code to not bloat the runtime unnecessary. so it could be an extension.

is much like collision ...

you may elaborate on this for more clearance, to get a good featurerequest.

1 Like

Dear friend, I don’t speak for every designer in the world either. I know you, you are very good at programming but not everyone can be like you or like many other people who are good at programming that I have met here.
I’m convinced that if there is will you can do anything, both in learning Javascript for us and in improving Hype according to our needs. After all, the software is designed to help us with our needs. I hope that Hype’s people will take these requests seriously and implement them as soon as possible because outside the world the world changes and new applications appear. Escaping elsewhere is really a moment.

I repeat, I am willing to pay double and maybe even triple to have these features.

The UI of Hype offers ID, Class, and Attributes to store custom keys and values. In combination with the custombehaviour we can get some logic.

An Approach:
an extension can read out the values and as a logical decision execute an custombehaviour whose name can be compiled from those values.
so there are some possibilities on this.

Basic Example:
Please download the file.
swipeElementToMakeLogicalDecision.hype.zip (15.8 KB)

This file will run some custombehaviours depending of the swipedirection on an element.

you’ll see that the polygon:

  1. has a a js attached to the hype-behaviour ‘drag’.

  2. has four data-attributes: ‘data-swipeleft’, ‘data-swipelright’, 'data-swipeup, ‘data-swipedown’

  3. each data-attributes value is the name of a custom-behaviour.

What will happen, is that the script will detect the swipedirection. which is our userchoice. Belonging to this choice you’ll get the ability to run a custombehaviour. so we’ve got event and can react with some logic.

///////////////////////////

the aim is to have a script or extension whose output (call of an custombehaviour) will be controlled by data-attributes. so, you (the designer) will only have to add the desired attributes and the corresponding custombehaviours.

the same logic on a drag’n drop could for example be that you setup some data-attributes that configure isdraggable, hasdroptargets. the droptarget then would have a data-attribute that again is an name of a custombehaviour that’ll be executed.

is this a concept that could apply to some of your ambitions?

1 Like

You do not understand the issue. It has nothing to do with JS. It is about integrating it within Hype. Something I have seen many times here is that someone will generously provide some code, then tell the user to simply plug it in. When the person plugs it in an it doesn’t work, they don’t understand why. There is something that they missed and they can’t figure out what it is. They go through the documentation over and over but it still doesn’t work. There is something unsaid - something that is so insignificant and so obvious to the pro that they neglect to mention it, assuming that it is just as obvious to everyone.

As for left/right brain dominance, it is not a myth. I spent 13 years as a professional educator in both the U.S. and British systems and I can speak with some authority on this issue. Success depends on being able to teach to all learning styles, not just teaching to the teacher’s learning style and assuming that those who do not get it are not applying themselves.

Few people realize this, but people with degrees in education did not spend most of their studies on subject content, but on how to teach.

There is a reason why the average fine arts major does not excel at freshman math courses whereas an engineering major will do well. Mathematicians and engineers process, store, assemble and synthesize information in specific ways - in ways that are different than those of dyed-in-the-wool creatives.

This reminds me of politics. People from one side of the aisle assume the other fellows don’t get it and (ironically) they don’t understand why that is. They make certain negative assumptions and then dismiss them.

When it comes to integrating JS into Hype, having a better understanding of how the parts work together is what the front-enders need. Whereas back-enders tend to start with the trees and then work their way to the forest, front-enders tend to start with the forest and then figure out what to do with the trees. It is not that they are doing it wrong, but that they are working to their strengths.

It is not simply 2+2. There is something in the process that the back-enders simply take as a given. They automatically make certain connections without having to think about it. Such “givens” are not obvious to everyone. It is as when someone provides some code and then says “just plug it in”.

None of the above is directed towards anyone personally. As long as some continue to say that there is a problem and others say that there isn’t, a certain percentage of Hype users (I am guessing no less than 40%) will never integrate JS into their projects.

1 Like

I’ve been following your contributions over the years and I’ve always appreciated your approach to things. The issues commonly encountered by “creatives” tend to be within the layer of abstraction and not within the logic of scripting. Understanding the nature of that abstraction and providing a leg-up in that context is one of your strengths.

1 Like

Jonathan!

Here I have elaborated a bit:

https://skogh.me/interface/

Best wishes!

1 Like

I do understand,

My initial reply is not not because I believe there is not an issue that some users have a block on using JS in their projects nor arguing against that this exists an is an issue. It is not in response to this whole thread.
My reply even in this thread is not telling or even saying you NEED to learn the basics nor I am saying there is not something that could or should not be looked at.

My reply is in regards to:

Which is the only reason why I talk about JS here and chipped in.

So maybe I was not clear.
If you want to use JS in your projects you do not need a specific book targeting Hypes API. Because Hypes API is only very small layer in the JS we actually use in Hype. The main code we use is native JS and all the info is already out there and which I allude to when I speak about learning the basics.

I agree ideally there could be some more UI based solutions for things we can only do on the JS side. But not clutter.

This topic is very interesting … I am a designer and I have a good eye and interactive creative but I can never think like a programmer js. It is not the same as it does with CSS.

So far I have used Unreal and Unity a lot. I have never touched with code because it already has visual code that exist. Because they already have plugins for developers that can create codes for designers that can create a beautiful image that can do better than a programmers mentor.

The simplest for Hype. the next version of hype there is to create a plugins (js, swift or others) Because John can not do all at the same time and you also have to accept suggestions because they are very very reasons to make a great impact to other applications but do not forget Unity 3d always wins from everyone. Because it’s fine design for the silly programmers.

a greeting

Please create a PLUGINS and we win for everyone.

Your entire post states the gist of what I was creating as a reply.

So here's an addendum...

Depending on software companies to create non-coding apps will always leave You wishing the feature set was more robust - and depending on it will always limit your creative expression. (Not that You can't do cool stuff - of course You can.)

I am a designer and naturally visually oriented. I gave myself 10 days @ 1 hour a day to learn JavaScript basics... and I did. It opened up a whole new world of possibilities.

You do not have to be a wizard at JavaScript to derive useful skills... any more than You need to become a "Formula 1" race car driver to appreciate knowing how to drive.


The book that got me started is titled:
"JavaScript & jQuery" the missing manual by David McFarland

It is written (IMO) for designers. The author never assumes You are anything other than a beginner to start - with lots of examples. Even though the book is also about jQuery the JavaScript sections stand alone. The beginner section about JavaScript is one hundred pages. The author does not overwhelm You with detail - he keeps it focused on the fundamental concepts. Very Well written!

You can get this book here ...Highly Recommended!


Once I had the basics under my belt I found the "W3 Schools" website invaluable. The site covers a range of topics (not just JavaScript). Everything is clearly explained in bite size pieces - usually with interactive examples. Again: Highly Recommended


But best of all - once You understand the fundamentals You can really learn a lot by studying the wealth of information available on this Forum. WoW! :firecracker::boom::tada:

2 Likes

Thank you. I’ll look at your example!

I want to post here my “visual solution” to the problems I have expressed in this post. A way to explain myself better, since English is not my native speaker language. Maybe someone on the Hype team will like it and activate it. I think it’s time to wake up this great app!

The graphics are taken from a personalized work for a website dedicated to the film of Spielberg E.T. the extraterrestrial.

I start with with my idea of customizing loading bar…

As much as I understand what you want I think this is VERY limiting. As not every preloader should look the same. If we get something new, then a plugin system to create custom UI (like you made here).