From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: Another others for maintainer? Date: Fri, 23 Oct 2015 09:49:53 +0300 Message-ID: <83pp06rsdq.fsf@gnu.org> References: <87bnbuncw4.fsf@petton.fr> <87bnbtmsli.fsf@petton.fr> <87a8rd7bu1.fsf@gmail.com> <837fmhfouu.fsf@gnu.org> <837fmeudev.fsf@gnu.org> <878u6u1rtx.fsf@gmx.us> Reply-To: Eli Zaretskii NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: QUOTED-PRINTABLE X-Trace: ger.gmane.org 1445583013 28181 80.91.229.3 (23 Oct 2015 06:50:13 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 23 Oct 2015 06:50:13 +0000 (UTC) Cc: emacs-devel@gnu.org To: Rasmus Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Oct 23 08:50:01 2015 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1ZpWAr-0007eV-0R for ged-emacs-devel@m.gmane.org; Fri, 23 Oct 2015 08:50:01 +0200 Original-Received: from localhost ([::1]:36426 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZpWAp-0005Na-F0 for ged-emacs-devel@m.gmane.org; Fri, 23 Oct 2015 02:49:59 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:51796) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZpWAl-0005NU-8K for emacs-devel@gnu.org; Fri, 23 Oct 2015 02:49:56 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZpWAi-0001yQ-1t for emacs-devel@gnu.org; Fri, 23 Oct 2015 02:49:55 -0400 Original-Received: from mtaout25.012.net.il ([80.179.55.181]:38180) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZpWAh-0001yL-Kg for emacs-devel@gnu.org; Fri, 23 Oct 2015 02:49:51 -0400 Original-Received: from conversion-daemon.mtaout25.012.net.il by mtaout25.012.net.il (HyperSendmail v2007.08) id <0NWN00300UQLLM00@mtaout25.012.net.il> for emacs-devel@gnu.org; Fri, 23 Oct 2015 09:47:34 +0300 (IDT) Original-Received: from HOME-C4E4A596F7 ([84.94.185.246]) by mtaout25.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0NWN00MGNUVA4Q70@mtaout25.012.net.il>; Fri, 23 Oct 2015 09:47:34 +0300 (IDT) In-reply-to: <878u6u1rtx.fsf@gmx.us> X-012-Sender: halo1@inter.net.il X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 80.179.55.181 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:192451 Archived-At: > From: Rasmus > Date: Fri, 23 Oct 2015 00:06:18 +0200 >=20 > Well, I have commit access and I contribute to Org fairly often (th= ough > recently time is an issue). Thanks. > Emacs is the most important program on my PC. I would like to do m= ore, > but Emacs-core is daunting. It=E2=80=99s hard to get into Emacs-co= re, not only > because you are dealing with something that=E2=80=99s fairly comple= x and it=E2=80=99s hard > to even identify tasks (to me), but also because I=E2=80=99d be sca= red of messing > something up. You shouldn't be scared. You can always push a branch to Savannah an= d let you and others use the modified code for a while, until you are sure enough it has no adverse effects, and then take the plunge. I know the feeling, believe me. I was exactly at that place when I needed to merge the bidirectional display engine onto master for what became Emacs 24.1. The display engine is one of the most complex parts of Emacs, perhaps _the_ most complex part. It is also central to any Emacs operation. The thought of screwing up everybody's Emacs or have Emacs crash every few seconds absolutely petrified me. I remember debating and procrastinating for some time, unable to make the final decision. What made it happen was an email from Stefan and Chong saying they absolutely trust me with this merge. (They didn't see the code, so I have no idea what could make them say that.) The rest is history. The lesson I took from that is clear: well-tested changes are safe to merge. Make sure you test your code as much as you can, run the test suite, prepare your own test cases if the suite is not extensive enough for your changes, use the modified version in real-life sessions -- if all that passes without problems, you are good to go. > I=E2=80=99m not saying the information isn=E2=80=99t there, simply = that it=E2=80=99s overwhelming, > especially if you are more interested in improving existing code, i= nstead > of, say, providing new modules. My advice is not to try to comprehend all of it. Instead, take some specific problem that needs to be solved (the bug tracker has many candidates, or maybe you have your own bug you want to fix or a feature you'd like to add), and study the parts(s) relevant to that single problem. Don't hesitate to ask questions here where you are unsure you understand the stuff. Add helpful comments to the code where the existing comments were not enough for you. Keep going unti= l that single problem is solved. Then take another one, preferably in the same area of Emacs -- now you should feel more at home there, and things will move quicker. Rinse, repeat. It really works. You just need to take the first step, then the second, then the third. One step at a time. "Rome wasn't built in a day." Thanks in advance!