Thank you Christoph
-
@aaronventure said in Thank you Christoph:
Really? I think KSP docs are solid. In fact I don't think it's even close.
I started (and stuck with) KSP4. The manual does a good job of listing every function and providing an example. But there aren't many functions in KSP, it's a very simple language compared to HISE. SublimeKSP is also really well documented!
HISE benefits from the snippet system, the tutorials repo, and of course we can look in the source code. I think there are probably more tutorial videos for HISE than KSP too.
For a while there was an official Kontakt development booklet, I think it was put out with Kontakt 2 or 3, I probably have a copy somewhere. And that was very helpful when I was getting started, as was the VI Control forum.
Overall I think HISE is well documented, although it could definitely benefit from more detailed explanations and examples of certain functions and features, and a proper list of all the pre-processor definitions. But all the ground that KSP covers I think is at least equally documented.
Yeah that modalTextInput thing is a good example of where HISE is lacking detail. I ran into the same thing with Loris recently. Often I just go to the source code to find out what these things are.
We as users must take some blame too because the docs are open to be edited by anyone, so if we know something that isn't in the docs we should add it.
-
@d-healey said in Thank you Christoph:
I think there are probably more tutorial videos for HISE than KSP too.
Which is almost exclusively your doing. If you decide, that can stop tomorrow. Then we're back to square one. Unless you're getting paid to make these by someone other than your patrons who, I would dare say, partially number the way they do due to the current state of the docs. You're the number one source of real-world HISE examples, but as the videos (and especially Patreon) aren't really searchable in a way that mentions which methods are being covered in which video, it still introduces a lot of friction when it comes to finding an answer, as I'll remember seeing something in one of your videos, but then have to spend an hour watching 10 of them to find which one was it exactly.
@d-healey said in Thank you Christoph:
Overall I think
Often I just go to the source code to find out what these things are.You've been here the better part of a decade. You watched this thing grow into what it is today and contributed heavily through feedback or even code. There are devs who have amazing memory and can remember all the command names, method names etc. For everyone else, there's the docs. When I work in KSP, I always have the docs open. I forget shit all the time. And I don't bother remembering everything because I know I can just look it up in the docs.
My code is meticulously commented because if it's not and I don't look at it for 2 months, I'll have no idea what the fuck's happening. When I look at the HISE source code I'm amazed at how few comments there are compared to the amount of comments I write for my stuff. This just tells me Chris and I have a completely different approach and he might not realize what an issue the current state of HISE docs is because he just knows all this stuff by Hart (I... could not resist).
I don't know where are you on this scale.
I'm not trying to invalidate your take at all, I'm just providing a perspective of someone new to HISE but still with a lot of experience in VI development to maybe argue as to why this thing hasn't taken off yet when it's around 5 years ahead of Kontakt both in features and in ease of development.
-
@aaronventure said in Thank you Christoph:
Unless you're getting paid to make these by someone other than your patrons
I'm not getting any of the sweet YouTube ad revenue yet, but I don't do it for the money anyway.
@aaronventure said in Thank you Christoph:
it still introduces a lot of friction when it comes to finding an answer, as I'll remember seeing something in one of your videos, but then have to spend an hour watching 10 of them to find which one was it exactly.
Hmmm that's very true. I think maybe if I find the time I'll cut out some short videos and link to them from the HISE docs where appropriate.
@aaronventure said in Thank you Christoph:
I'm amazed at how few comments there are compared to the amount of comments I write for my stuff
You'll find a post on the forum somewhere of me saying the same thing to Christoph when I first started poking around in the code. I used to put loads of comments in my own code too. Now I use hardly any, other than to make it a little easier to jump around sections of my code. I follow a principle called self documenting code.
It works like this. If you have a function called
getWidget
, then you don't need a comment that says, "this function gets a widget". Because you already know what the function does from the name.Here's a great video on the subject (all the videos on this channel are worth watching):
https://www.youtube.com/watch?v=Bf7vDBBOBUA -
@aaronventure said in Thank you Christoph:
I'm not trying to invalidate your take at all, I'm just providing a perspective of someone new to HISE but still with a lot of experience in VI development to maybe argue as to why this thing hasn't taken off yet when it's around 5 years ahead of Kontakt both in features and in ease of development.
What would you consider as "taking off?"
I think you are overlooking the most important aspect of why Kontakt has a major share of sampled libraries. It has nothing to do with how good it is but everything to do with the fact that it has been around for much longer than HISE and the fact that it is made by NI, one of the biggest and most recognizable brands in virtual instruments.
Never underestimate the power of a well-established brand.
-
@d-healey said in Thank you Christoph:
It works like this. If you have a function called getWidget, then you don't need a comment that says, "this function gets a widget". Because you already know what the function does from the name.
Here's a great video on the subject (all the videos on this channel are worth watching):
https://www.youtube.com/watch?v=Bf7vDBBOBUAThat's true and quite obvious from method names in HISE, although self documenting code won't give you context for the decisions that were made or tell you how stuff from multiple places sometimes comes together, but now we're going into topic #3
@d-healey said in Thank you Christoph:
I'm not getting any of the sweet YouTube ad revenue yet, but I don't do it for the money anyway.
Who knows what may yet come your way. Kenny Gioia was doing it for Reaper because it needed doing and it wasn't about money, then he got hired by Reaper. It's now at a pretty admirable level.
@gorangrooves said in Thank you Christoph:
What would you consider as "taking off?"
That's a good question. I don't really have the numbers, do I? So I might as well take that back.
I guess I meant seeing a lot more high profile releases from developers that are suddenly releasing a "native VST/AU" versions of their instrument.
As for the effect plugins, who really knows? You can't know whether it's HISE unless you open the dll in x64dbg or a similar app. I think 95%+ of the existing audio plugins could easily be done in HISE and in a lot less time than it took to make them in native C++/JUCE (based on quotes I heard from JUCE devs). So in that way, I meant seeing it a lot more talked about as the starting point for anyone looking to get into audio development.
If you still wanna do drugs and write your algorithms in C++, SNEX is right there, comfortably wrapped into HISE's great IDE features.
-
@aaronventure Since Christoph is not spending money on advertising HISE; its success is going to be gradual and take time. But, the word is spreading and HISE is growing
-
Any classy things doesn't require an advertisement (IMO). HISE is a needs for APD (Audio Plugins Developer). So it doesn't need to compete , doesn't need to prove and show case. As a result it doesn't require any advertisement to stand out.
-
wow, that escalated over night! VI-Control PTSD incoming...
There's too much to address here by now, but I'll try:
- There is no real argument to have against "HISE needs more docs" and I always have that eternal nudge where I try to do proper documentation (and I think that most of the new features I add to HISE are much better documented than the old / existing stuff as I tried to make it a habit of considering the documentation part of the implementation of a new feature). However I consider this forum the main source of information (after doing a quick search around in the docs and watching at least the introduction videos to HISE from Dave). Is this different than with KONTAKT? Yes, but it's a valid approach, there are many people present in this forum (with Dave being the OG) which offer super helpful advice that often goes beyond what a documentation can provide. Does that get me out of the obligation to write proper docs? No, but it's a very powerful band aid :)
- The growth rate of HISE is perfectly fine for my taste - I also think that using the marketing method of people having to find out about HISE instead of it being shoved into their face in their social media feed pretty much correlates with the follow-up user experience during development and the people who made it through this process are kind and smart enough to create a good community like here (just go over to KVR to see what kind of people exist outside our bubble lol). So in my mind the decision between marketing HISE or not boils down to "Do I need more money in my bank account but then having to deal with idiots on a regular basis?". So whenever you see HISE ads popup before a Youtube video you can think "Poor Chris, apparently he got a rent increase and now has to respond to people posting in all caps only"...
- I don't think that there is a single factor that prevents "big" companies from using HISE (and I have adjusted my expectations over time to accept that there is only a fraction of the market that might be interested in / benefit from a platform like HISE). I can imagine that it's simply a combination of a high Bus Factor as well as the availability of C++ developers that can implement things without any outside dependency if the budget is there that makes people avoid relying on a "high level" framework.
-
@Christoph-Hart said in Thank you Christoph:
wow, that escalated over night! VI-Control PTSD incoming...
There's too much to address here by now, but I'll try:
- There is no real argument to have against "HISE needs more docs" and I always have that eternal nudge where I try to do proper documentation (and I think that most of the new features I add to HISE are much better documented than the old / existing stuff as I tried to make it a habit of considering the documentation part of the implementation of a new feature). However I consider this forum the main source of information (after doing a quick search around in the docs and watching at least the introduction videos to HISE from Dave). Is this different than with KONTAKT? Yes, but it's a valid approach, there are many people present in this forum (with Dave being the OG) which offer super helpful advice that often goes beyond what a documentation can provide. Does that get me out of the obligation to write proper docs? No, but it's a very powerful band aid :)
- all true, but there are bits of the HISE documentation that remain patchy at best - we might (As a community) get a list together of what we think needs addressing. But whilst the documentation is better for more recent stuff - there is I think a need for the sort of explanation you get from Dave's videos - to define higher level understanding. For example I'm thinking of the broadcaster and global cable functionality - and I really wish Dave would do videos on them - but they need a "how to" not an API
- The growth rate of HISE is perfectly fine for my taste - I also think that using the marketing method of people having to find out about HISE instead of it being shoved into their face in their social media feed pretty much correlates with the follow-up user experience during development and the people who made it through this process are kind and smart enough to create a good community like here (just go over to KVR to see what kind of people exist outside our bubble lol). So in my mind the decision between marketing HISE or not boils down to "Do I need more money in my bank account but then having to deal with idiots on a regular basis?". So whenever you see HISE ads popup before a Youtube video you can think "Poor Chris, apparently he got a rent increase and now has to respond to people posting in all caps only"...
Yes KVR can be toxic - but if you spend any time in the DSP and Plugin Development area you'll find generally it looks quite a bit like this forum.. so its all about members really. But thats pretty much what Christoph is saying anyway....
- I don't think that there is a single factor that prevents "big" companies from using HISE (and I have adjusted my expectations over time to accept that there is only a fraction of the market that might be interested in / benefit from a platform like HISE). I can imagine that it's simply a combination of a high Bus Factor as well as the availability of C++ developers that can implement things without any outside dependency if the budget is there that makes people avoid relying on a "high level" framework.
It will happen - it is just taking me a fair amount of time to move thru all the "big" companies trying to convince them... :beaming_face_with_smiling_eyes:
-
@Lindon said in Thank you Christoph:
and I really wish Dave would do videos on them - but they need a "how to" not an API
Duly noted, although I've never used global cable so don't expect a video on that soon. For broadcasters I'm holding off until Christoph finishes his new broadcaster creation wizard.
-
@Lindon said in Thank you Christoph:
It will happen - it is just taking me a fair amount of time to move thru all the "big" companies trying to convince them...
Then they all bail on
Step 1: Build HISE from source
-
@aaronventure but there are halfway recent installers available now - but itβs a good reminder to launch the build server and do the 4.0.0 release :)
-
@aaronventure said in Thank you Christoph:
@Lindon said in Thank you Christoph:
It will happen - it is just taking me a fair amount of time to move thru all the "big" companies trying to convince them...
Then they all bail on
Step 1: Build HISE from source
Oh I'm not trying to convince them to build and write stuff in HISE, I'm trying to convince them I should build stuff in HISE for them....
-
@obolig I appreciate that @Christoph-Hart has been a lot more active on the forum here. I may be in the minority in thinking that HISE doesn't need any more features β just more information about the ones that already exist. There's more than people realize, with direct access to FFT bins being the universal Turing machine of DSP.
In terms of companies using HISE, within the context of the ones I work with and advise, there is potentially significant interest in the JavaScript engine (not the sampler elements). From my perspective, the outwardly-facing obstacle is that there simply needs to be more than one person behind it to provide the necessary stability, maintenance of knowledge assets, and overall mitigation of inherent risk that is inherent with incorporating external systems into existing commercial ecosystems.