Regarding the experience: It was very valuable to "only code" for three months ... first of all it taught me that it does not mean to code all the time ... I did LOTS of stuff besides "pure coding" ... browsing documentations, reading guides, discussing with reviewers, getting help from you guys, thinking HOW to code
that was nice and it was really gratifying when a given issue was finally solved and a PR merged :-)
At the same time the experience was also quite challenging because I realized that the work "never stops" --> along the lines "okay, the PR is merged ... but now we need to fix A, B, C". That was demotivating me sometimes, but as you also said sometime in the GSoC I could just take a day off and work on another day.
So in that way, GSoC was not so different from doing my PhD: Sometimes the work just flows and in one day you get done what you have been chewing on for the whole week before.
Overall I think that I have picked up several new concrete coding things and also more broad perspectives on programming, so this was really great for me.
What's also great is to see that many people benefit from the work. E.g., just right now Clemens Brunner is integrating pybv into MNE-LAB ... which is possible because I fixed it / brought up to date during the GSoC ... originally intended to build it into MNE-BIDS.