> A couple of times I have wanted to fix a bug/annoyance, looked in the code, > and asked a question here about why something was implemented the way it was, > only to not get a response.
I usually go through the repo's git history to figure these things out, e.g. with "git blame -M". Emilian Bold helpfully gathered all of the pre-Apache history into another repo at https://github.com/emilianbold/netbeans-releases.git . Often you'll need to look up bug numbers in the old bugzilla archive as well ( https://bz.apache.org/netbeans/ ). -- Eirik -----Original Message----- From: Pete Whelpton <[email protected]> Sent: Friday, December 4, 2020 8:18 AM To: [email protected] Subject: Re: VSNetBeans, future of NetBeans and personal words Apologies in advance for the long email. I can only speak for myself as to why I don't contribute more - if we could resolve some of these, I would: 1. Organisation There are thousands of JIRA tickets, many of them just stacktraces. Finding issues that I can fix within my NB knowledge / skillset is difficult. It doesn't feel like working towards any particular goal. A while back it was suggested to have Tribes, similar to those used in Netcat (e.g. for Core Java, JavaEE, HTML/CSS/JS, Database etc.). I think this is a great idea - especially if each tribe has a Tribe Leader, who is one of the Netbeans veterans (see below). Tickets / feature requests could then be assigned to each Tribe, and contributors with an interest in those areas of Netbeans could easily find / pick them up and more importantly get support from their Tribe Leader. We could have some shared milestones to work towards. 2. Lost knowledge A couple of times I have wanted to fix a bug/annoyance, looked in the code, and asked a question here about why something was implemented the way it was, only to not get a response. I appreciate that this is because many of the talented people that worked on Netbeans in the past are no longer in the community. It would be good to get an idea of who the NB veterans are, what NB modules they have a deep understanding of, and some way to provide easier access to/organise/share that knowledge (e.g. Tribes, above). 3. Documentation / Barrier to Entry The barrier to entry for submitting anything more than simple bugfixes is really high - I think largely due to the documentation / learning trails. E.g. last year for fun (and because I'm a saddo), I started working on a Lexer/Parser implementation using ANTLRv4 as the upstream lexer & parser. After much frustration and reading the Lexer SPI Javadoc 20 times, I realised that what it was saying was that the NB Lexer can restart from anywhere, so if you use Modes in your ANTLR grammar file, you need deal with this and to override state() in the NB lexer so that it starts in the correct ANTLR mode, not the default.... None of our learning trails for ANTLR integration seem to mention Modes... 4. Not using Netbeans at work After a brief stint in a .NET shop, I'm back in a job where I get to write a bit of Java & PHP (thanks a lot COVID-19!). I'm using Netbeans for PHP as the core PHP support is still really up-to-date, but not for my Java work. I have also have a small jHipster application I'm building. Netbeans should be the obvious choice of tool as on paper there is support for Java, Spring Boot, Angular, Typescript, HTML & CSS all in one application! But so many of those facets are buggy / out-of-date, so I'm actually using IntelliJ for backend Java and VSCode for all front-end work. Constantly switching between the two is driving me nuts :( It's a cycle: the more Netbeans falls behind -> the less I am inclined to use NB at work -> the less I am inclined to contribute to Netbeans as I'm not using it 5. Appreciation I'm not someone who needs constant pats on the back, but I do think there is a lack of courtesy / respect to those people that do contribute to NB, no matter how small. Chris has made contributions to the NB codebase, but it feels to me that Chris got dogpiled in this thread for stating what are some valid concerns. Likewise, I feel that I got pretty much jumped upon because I dared to mention that I used Illustrator for the .svg icons I've submitted. How do you think that makes me feel about creating / submitting more .svg icons (or contributions in general)? I like to end on a positive - there *have* been some big steps forward in recent memory: - Excellent Gradle support - Ongoing PHP support for latest language features - HiDPI support / SVG Support / UI improvements - LSP support Regards, P
