How could I (better) contribute to three.js


#22

It’s not BB, it’s Drupal. Having control over the system gives way more flexibility than sitcking with a hoster like discourse, basically anything discourse provides is provided there as well. But also seamlessly merges with all other features.


#23

Your forum has a place just as everything else. Nothing can monopolize the arena!


#24

As mentioned, i don’t want to interefere with discourse if this platform stays prefered. It’s rather a standalone all-in-one platform separately. The idea of an asset-store/repository (not necessarily commercial items) was declined, so i will run and host the platform myself.

I rather imagine a more community based platform like Unity, Unreal etc. all have, especially the section for assets is something i missed for THREE.

It’s basically almost ready now, i’m always open to any suggestions though, and anyone who would like to help.


#25

Completely agree with a central location for assets!

That is why I made within Discourse:

True this is buried within discourse unless you search for a particular item and may never percolate on the list unless you know what topic you are looking for.


#26

Yes, that’s something users, especially visitors can find easier within an asset site and structured items. The acronyms for example will link terms within regular posts to the term description, what gives it much more functionality since one would rather google the term here instead looking for a glossary post.


#27

Thanks for sharing and I look forward to your forum.
If I can help you let me know!


#28

@looeee @Mugen87

Could i somehow establish trust with you two specifically? I am convinced that i’m not being malicious, and I this issue really got to me… i’m an emotional introvert :slightly_frowning_face:
Not sure if this is a good example, but I’ve tried asking for more generic help. (links at the end)

I think this issue of trust got to me. @Mugen87 I’ve been through the whole process of answering three.js questions on Stack Overflow and found it incredibly frustrating. The other day I’ve seen you answer yet another question about asynchronous javascript, which I’ve answered myself in the past a few times, and then edited a whole bunch of times (removing three.js tag, and pointing out that this is just basic javascript).

I end up taking this too personally. Like, am i such a horrible person that these people can’t spend a few minutes glancing at my proposal, but random 0 reputation SO users given the time, so i must’ve currently sunk even lower. Did i come off as some ego-maniac in the past who people just ignore now etc.

I think if one could automate your answers @Mugen87 on Stack Overflow, that somehow you’d end up having more time to look at my proposal. Not because it’s mine, but because you’re a collaborator, and because it’s just another open PR. But based on my OS question, i think that this is not a valid expectation on my part.

I have tried to:

  1. file bugs
  2. answer stack overflow question
  3. moderate stack overflow questions so others can answer them easier (maybe that meta question made it so that you see 1 stupid question per day instead of 10)
  4. answer questions here
  5. propose patches
  6. tried to make npm modules

First because i like working with three.js (minus onBeforeCompile), but i also wanted to gain trust from others, that i may have decent ideas about how some things could work differently. Pushing some of these ideas aggressively, makes me feel like i’ve just tossed away all this work.

There’s also some background that makes me feel butt-hurt, i was on the same crusade for a year about the onBeforeRender and onAfterRender callbacks, and it was a frustrating experience. I just started looking at three.js source and identified a pattern. I haven’t been programming long so this felt validating and i suggested a tiny PR in late 2015. In late 2016 it finally got merged, but not after i went on yet another wall of text rampage.
It seems like it allowed for quite a few refactors to be made with the examples, and i got to use it in my professional life, making it a lot easier. I thought that some trust should have come from that. Not too long after that i proposed another small patch that i felt could make life easier. This is the one i’ve been crusading for again lately.
There are various theorems i have on how not having it is wasting a lot of peoples time, but i think i’ve got an axiom too. GLTFLoader is a pretty popular loader, and uses onBeforeRender (my baby :slightly_frowning_face:) in a bad way. Three devs seem to have worked on a method in that file over a course of a year. Two of them are heavy weights whos time i imagine is super valuable i.e they could improve some other are of the code. It’s 160 lines of numerous revisions over a year, while my PR suggested long before that, would have removed the need for that logic altogether.
I think that all programers hate redundancy, think that i’ve cried wolf too many times, that i’m doing something wrong. Especially if i’ve given someone a rope to hang themself with (onBeforeRender).

So if you’ve reached this far, could i venmo you two @Mugen87 and @looeee money for a six pack and we could have a beer for like, old times sake, “i used to know that guy when he was cool” and maybe use some of that time to look into some code in detail, you know just geek out? Or could I just pay your rates for an hour, no obligation to accept anything, just review some code in a three.js expert consultant role?

I think if i could make an argument in my environment for working off a fork, I could spend my time developing examples and modules that could potentially be merged at some point, but could potentially have value in its own little ecosystem.




#29

@pailhead For sure, nobody thinks that you’re being malicious. And there are no trust issues here - I’ve come across your PRs and comments from time to time and they seem only genuine, well intentioned and helpful.

I know it’s frustrating when your PRs and topics get ignored. But it happens to everybody - I have a couple of PRs open that just seem to have been forgotten, for months, no matter how often I try to bump them… and a couple of others that I need to work on and just haven’t found the time to.

Perhaps there is some trust to be regained, but it’s minor and purely related to the length of your posts. Like, people think “oh, it’s the guy that writes long rambling posts, I don’t have time for this”. There’s nothing malicious here, they bear you no ill will, they just don’t have time to read your long posts. I mean, I meant to reply to this 3 days ago and only found the time to do it now.

I would say the solution here is simple - give yourself a word limit, say 200 words per post, and only one reply at a time, plus a minimum of pseudocode, one or two images and one or two links. Stick to this, and pretty soon people will only judge you on your fancy new short, succinct posts. All verbosity will be forgotten.

I for one appreciate you being around and hope that you can see that none of this is meant personally.


#30

@pailhead and well said @looeee I also appreciate you being around as well! I see you in Github and Stackoverflow + here and also participating on many topics. You are doing fine from what I’ve been observing.

Like yourself I’m also on the journey to engage within the community more!


#31

Hey guys,

A lot of these issues come from the fact that I have not been able to make the project sustainable. I’ve been in brute force mode since the beginning and I think it’s the price I have to pay in order to not end up with an unmaintainable mess.

I am actively working on getting all this more manageable. My approach so far has been trying to get Mozilla, Google and others to sponsor contributors. It’s starting to work.

Every day I go through new PRs merging the ones that do not create side effects or add more code that will need maintenance. @pailhead’s PRs require me to think all the consequences such a change can have and whether I’m ready to maintain such API. Not every day I have enough energies to dive into these kind of problems. I’m not ignoring them though, they go to the list of hard-to-deal-with PRs :sweat_smile:

As per @looeee PRs, that’s my designer brain kicking in (kind of embarrassing). Basically the PRs are good to go (I’m referring to the BinaryLoader removal ones), but if I merge them I would like to have time after to make them look prettier. It’s hard to communicate via github discussion the changes to make a example prettier.

The problem is that I’m trying to add WebXR support at the same time. It’s hard to do everything.

Things are getting better though!


#32

Thank you for the 2 cents. I wonder if there are additional mechanisms that can help us manage the project better. Maybe smaller chunks could warrant a road map. (Controls, loaders, core, etc)? Right now there’s a global one while some modules seem to have it but it’s tribal knowledge. The GitHub issues do for the most part take care of this but it’s easy to get lost and miss things.