From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: GSoC final update Date: Wed, 30 Aug 2017 11:50:54 +0200 Message-ID: <87ziah4c5d.fsf@gnu.org> References: <87lgm224xz.fsf@cune.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:55487) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dmzeJ-0000h0-Jm for guix-devel@gnu.org; Wed, 30 Aug 2017 05:51:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dmzeI-0002xw-GJ for guix-devel@gnu.org; Wed, 30 Aug 2017 05:51:03 -0400 In-Reply-To: <87lgm224xz.fsf@cune.org> (Caleb Ristvedt's message of "Tue, 29 Aug 2017 02:44:56 -0500") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Caleb Ristvedt Cc: guix-devel@gnu.org Hi reepca! Caleb Ristvedt skribis: > As the official work time for GSoC draws to a close, it seems fitting to > summarize where the project is at right now. *deep breath* > > What works: building hello. I tried building SBCL as well, but building > one of the dependencies caused hanging (but the same thing happened when > I tried building it with the C++ daemon). In short, for at least simple > derivations, building derivations works. > > What doesn't: Way too much. RPCs aren't implemented (for testing > building I've been manually running builds from a REPL within test-env), > scheduling of multiple concurrent derivations isn't implemented, garbage > collection isn't implemented, and a lot of features even of > derivation-building aren't implemented (substitutes, offloading, > etc). call-with-container is also in a semi-broken state, though the big > issues could be fixed by going back to the way it was and bind-mounting > a store directory to collect output in (bind-mounts mess with my head > for some reason... thanks for mentioning that, Ricardo). The list goes > on. Thanks for the status update! I think you don=E2=80=99t have to be so nega= tive about what you did, though. The things that you implemented look well-thought-out to me, which to me suggests that maybe you worked =E2=80=9Cdepth-first=E2=80=9D rather than =E2=80=9Cbreadth-first=E2=80=9D. = It does mean that some of the things initially planned for are missing, but it also means that existing bits are more polished than one would expect for a GSoC. > Maybe I should describe my experience a bit. Reading the C++ source was > extremely tedious. I can sympathize with this. This code base is rather good and well-commented, but yeah, C++ scoping rules and the fully imperative style make it hard to follow. > The scheme side of things was nice. The most frustrating part was not > knowing what was already implemented, especially what was implemented > but used an RPC for a low-level task. I also didn't know that a scanner > already existed (in hindsight it should have been obvious - how else > would grafts work?) and so ended up writing my own inefficient version > (though I intuitively think for some reason that it could be made fast). [...] > In short, I've failed to achieve the goals I set out in my > proposal. Worst of all is that I failed to regularly communicate. I > specifically said that I would regularly communicate, and then I failed > to do so, especially during the second half of the summer. It seems that > the less I communicated, the more afraid of communicating I > became. Communication is hard, but I think it=E2=80=99s crucial on short-term proje= cts like this one, as I think I said when you got started. For example, asking =E2=80=9Cdo we have a reference scanner?=E2=80=9D on IRC could have = saved you quite a bit of time. In general, it=E2=80=99s often better to ask than to remain stuck on something for ages=E2=80=94we=E2=80=99re here to help. It seems to me that GSoC=E2=80=99s mentor-student relationship is sometimes= seen as boss-subordinate. That=E2=80=99s really not the way I see it; I think t= he student is just another person learning about the project and willing to help, and they shouldn=E2=80=99t be any more afraid of asking for help than anyone else. I hope I didn=E2=80=99t give you the wrong impression. > Currently nothing has been merged - I don't think it's in a fit state to > be merged presently. I intend to continue working on this as time > allows. School started last week, though, and it's kept me quite busy > so far. It can=E2=80=99t be merged as-is, but most of the bits look solid enough as= a foundation. I hope we can keep you on board in the coming months to pursue this endeavor! Thanks for the update, thanks for the code! Ludo=E2=80=99.