WEBVTT 00:00:05.640 --> 00:00:09.240 Thank you for coming with us! So... 00:00:10.820 --> 00:00:14.420 All right. How many have heard about the Google Summer of Code? 00:00:14.470 --> 00:00:19.020 Already, if you are not aware, I could be introducing more about what is it and 00:00:20.154 --> 00:00:24.220 and then talk more about what we are going to do in the session 00:00:25.440 --> 00:00:27.200 So, can you raise the hand 00:00:27.678 --> 00:00:30.694 if you are already aware of the Google Summer of Code? 00:00:33.995 --> 00:00:34.912 OK! 00:00:37.160 --> 00:00:38.763 Thank you - I think most of you are aware, 00:00:39.131 --> 00:00:40.880 it's bringing the student developers 00:00:40.880 --> 00:00:43.306 into the open source community, it's all about that 00:00:44.007 --> 00:00:47.202 So, the session is going to be 00:00:47.536 --> 00:00:49.771 mostly the students introducing their projects 00:00:50.189 --> 00:00:53.033 and getting the feedback, and discussing with their mentors. 00:00:53.870 --> 00:00:56.544 If they are getting any questions from IRC, they can discuss 00:00:57.934 --> 00:00:59.552 How they can improve the project in their 00:00:59.762 --> 00:01:01.565 ...Their ongoing projects. 00:01:03.801 --> 00:01:06.565 OK. so let me introduce about myself. I am Jaminy, 00:01:08.559 --> 00:01:09.995 So, I come from Sri Lanka 00:01:11.263 --> 00:01:15.413 I am one of the coordinators for Google Summer of Code with Debian 00:01:17.371 --> 00:01:20.300 So, Debian has been participating in the Google Summer of Code 00:01:20.801 --> 00:01:21.860 from 2005, and 00:01:22.692 --> 00:01:25.038 it has been 13 years it has been participating, 00:01:25.618 --> 00:01:27.602 and we had a break in 2017 00:01:28.224 --> 00:01:31.550 and now we are back in 2018 with Google Summer of Code 00:01:33.755 --> 00:01:37.048 and these are the teams for GSoC coordination 00:01:37.400 --> 00:01:38.514 I am representing the team 00:01:39.330 --> 00:01:42.627 Daniel Pocock, Alexander, and it's me 00:01:44.993 --> 00:01:48.168 This year, we have accepted 25 students 00:01:49.828 --> 00:01:51.367 And that's the link for the projects 00:01:52.518 --> 00:01:54.325 that are ongoing this year 00:02:00.390 --> 00:02:03.713 So, there is an interesting GSoC statistic this year 00:02:04.384 --> 00:02:06.044 this year we have selected 00:02:06.754 --> 00:02:09.201 I mean, this was from the Google Open Source blog, 00:02:09.765 --> 00:02:13.451 and they said there are three students 00:02:13.704 --> 00:02:15.233 Four students accepted from Kosovo 00:02:15.677 --> 00:02:16.909 And... 00:02:17.711 --> 00:02:21.264 The three students are from our Debian community, and they are here joining us 00:02:22.225 --> 00:02:23.369 joining with us, 00:02:23.700 --> 00:02:25.434 to introduce more about their project 00:02:26.469 --> 00:02:28.183 I hope that, without wasting more time, 00:02:28.672 --> 00:02:31.405 I could give the chance for the students to introduce, 00:02:31.832 --> 00:02:33.603 to talk more about their projects. 00:02:34.706 --> 00:02:35.753 Arthur, can you... 00:02:39.461 --> 00:02:41.612 [ audience clapping ] 00:02:51.709 --> 00:02:53.669 So, you hear me? OK? 00:02:56.175 --> 00:02:57.492 Yes? Nice. 00:02:59.344 --> 00:03:00.226 So... 00:03:01.285 --> 00:03:03.322 Hello, my name is Arthur del Esposto 00:03:03.729 --> 00:03:05.176 I am going to talk about my GSoC project 00:03:05.899 --> 00:03:08.544 that is titled "Improving Distro Tracker to better support Debian teams" 00:03:09.364 --> 00:03:12.499 My mentor is Lucas Kanashiro and my co-mentor is Raphael Hertzog. 00:03:14.501 --> 00:03:17.140 I will provide you some context about why we are doing this. 00:03:18.191 --> 00:03:19.045 So, basically, 00:03:19.316 --> 00:03:22.604 Debian teams used to rely on Packages Entropy Tracker 00:03:22.844 --> 00:03:25.076 with the assistance that basically got some information about 00:03:26.725 --> 00:03:28.961 the package from Debian, from Alioth, 00:03:30.364 --> 00:03:31.905 and display some kind of information 00:03:32.358 --> 00:03:35.070 inside tables and some categories. 00:03:38.225 --> 00:03:41.132 And we also had inside our Debian infrastructure 00:03:41.587 --> 00:03:44.103 the tracker.debian.org, which you probably have used before, 00:03:44.735 --> 00:03:49.206 that basically gathers the same sort of information from several sources inside Debian 00:03:50.180 --> 00:03:54.027 and puts this in a Web application. 00:03:54.730 --> 00:03:56.181 So, for example, you have the base 00:03:56.587 --> 00:03:58.262 of a specific package, the Web defaults, 00:03:58.651 --> 00:04:01.110 and you can get all the information related to that package. 00:04:02.351 --> 00:04:04.338 And what we want to do, because... 00:04:04.654 --> 00:04:07.919 that has not been maintained anymore 00:04:08.359 --> 00:04:09.826 and also, he used to track the 00:04:10.794 --> 00:04:12.536 package repository from Alioth. 00:04:13.254 --> 00:04:14.918 And what we really want to do 00:04:15.551 --> 00:04:19.544 is just continuing to support Debian teams to track the health of the packages and to 00:04:19.928 --> 00:04:21.659 and to prioritize their work efforts 00:04:21.862 --> 00:04:23.147 by migrating the PET features 00:04:23.428 --> 00:04:24.895 to Distro Tracker, and also 00:04:25.284 --> 00:04:27.614 we want to track Salsa repositories instead of Alioth. 00:04:28.918 --> 00:04:30.796 So, what are the results we have so far? 00:04:31.684 --> 00:04:32.645 So, basically... 00:04:32.896 --> 00:04:34.213 if you enter a team page, 00:04:34.547 --> 00:04:36.093 of anything inside Distro Tracker 00:04:36.470 --> 00:04:38.163 you are going to get this kind of table 00:04:38.658 --> 00:04:40.500 so basically you have the first column 00:04:40.803 --> 00:04:41.769 with the package name 00:04:42.355 --> 00:04:44.432 the second column with the changelog version 00:04:44.706 --> 00:04:45.993 and the VCS of that package, 00:04:46.412 --> 00:04:48.310 the third column with the archive version, 00:04:49.126 --> 00:04:51.078 we also are tracking the bugs here 00:04:51.340 --> 00:04:52.300 and the last column 00:04:53.070 --> 00:04:54.734 has the upstream version. 00:04:55.072 --> 00:04:57.006 OK, of this package. 00:04:57.249 --> 00:05:00.200 And, another interesting feature 00:05:00.391 --> 00:05:02.201 that we are providing you is that if 00:05:02.743 --> 00:05:04.043 you pass the mouse over 00:05:04.414 --> 00:05:06.115 one of those fields, you are going to get 00:05:06.415 --> 00:05:08.453 more detailed information about that specific field. 00:05:09.265 --> 00:05:10.799 OK, so for example here we have 00:05:11.711 --> 00:05:13.615 the information links to BTS 00:05:14.315 --> 00:05:15.652 related to the bugs 00:05:16.140 --> 00:05:17.603 that exist for the package. 00:05:19.768 --> 00:05:23.034 We also provide some categories 00:05:23.419 --> 00:05:24.866 so basically we could have 00:05:25.259 --> 00:05:27.244 more than one category of package tables 00:05:27.539 --> 00:05:29.436 for example, you could have like 00:05:29.616 --> 00:05:30.751 packages with RC bugs, 00:05:31.004 --> 00:05:32.890 packages that have a new version 00:05:33.129 --> 00:05:34.637 in the upstream, and we have 00:05:35.088 --> 00:05:37.219 specific pages where each of these 00:05:37.462 --> 00:05:39.121 package tables. OK? 00:05:40.041 --> 00:05:41.102 And we have 00:05:41.374 --> 00:05:42.857 a large number of teams 00:05:43.329 --> 00:05:46.539 inside Debian, inside this specifically inside the Distro Tracker, 00:05:46.975 --> 00:05:48.166 so we also provide this 00:05:49.730 --> 00:05:51.202 autocomplete text field 00:05:51.667 --> 00:05:53.007 so you can easily find 00:05:53.357 --> 00:05:56.417 your team, the team that you are interested in. 00:05:57.592 --> 00:05:57.971 And... 00:05:58.856 --> 00:06:01.547 that was my resource, and so far we have 00:06:01.915 --> 00:06:03.194 faced some challenges, 00:06:03.809 --> 00:06:05.502 first is that Distro Tracker 00:06:05.806 --> 00:06:08.130 has a generic purpose architecture 00:06:08.363 --> 00:06:10.179 because it should be used by several 00:06:10.523 --> 00:06:12.543 distros, so it's also being 00:06:12.784 --> 00:06:14.541 used by the Kali community, so basically 00:06:14.855 --> 00:06:18.403 everything you are going to do you have to make it extensible, have to design it 00:06:18.769 --> 00:06:20.930 to be extensible by this specific application 00:06:21.254 --> 00:06:22.956 that implements that specific features from 00:06:23.511 --> 00:06:25.359 their distros. 00:06:26.251 --> 00:06:28.164 Also, the database design is challenging, because 00:06:28.526 --> 00:06:31.850 we have to collect all this data from several 00:06:32.991 --> 00:06:34.325 database tables 00:06:36.586 --> 00:06:37.668 and some of these 00:06:37.871 --> 00:06:41.291 context is realized in JSON fields inside the database 00:06:41.616 --> 00:06:43.495 so it's not easy to get these. And also, 00:06:43.761 --> 00:06:45.231 we have faced some problems, 00:06:45.482 --> 00:06:47.254 some performance problems, because we are 00:06:47.578 --> 00:06:49.680 we are handling a large number of table cells 00:06:49.845 --> 00:06:51.284 dynamically, so basically we are building 00:06:51.560 --> 00:06:53.353 it of these table cells 00:06:54.165 --> 00:06:55.193 in run time. 00:06:57.913 --> 00:07:00.513 And, until the end of GSoC, I plan to 00:07:00.891 --> 00:07:02.714 create a cache mechanism, I am already 00:07:02.996 --> 00:07:04.528 working on that, proposed a merge request on it, 00:07:05.059 --> 00:07:07.078 to try to improve the performance of 00:07:07.367 --> 00:07:08.376 table rendering 00:07:09.799 --> 00:07:11.121 I also want to have all my 00:07:11.472 --> 00:07:14.575 merge requests accepted 00:07:15.111 --> 00:07:16.058 inside Salsa 00:07:17.457 --> 00:07:18.856 We also want to provide more 00:07:19.206 --> 00:07:21.249 package tables with new categories 00:07:22.409 --> 00:07:23.956 and also provide a new feature that 00:07:24.637 --> 00:07:26.353 you could be able to sort the team 00:07:26.633 --> 00:07:28.614 for content based on columns, for example 00:07:29.144 --> 00:07:30.396 I want to sort my 00:07:31.504 --> 00:07:32.566 my table based on 00:07:32.753 --> 00:07:34.004 on the number of bugs, for example. 00:07:36.442 --> 00:07:37.681 And there is also that we 00:07:38.211 --> 00:07:39.827 got good results so far, and 00:07:40.210 --> 00:07:42.694 I have received valuable feedback from the Debian community 00:07:43.101 --> 00:07:44.925 and I have a lot of ideas to continue 00:07:45.253 --> 00:07:46.938 working on this after the GSoC as well 00:07:47.692 --> 00:07:48.634 The GSoC has been 00:07:48.868 --> 00:07:50.695 an amazing experience, I have been learning a lot, 00:07:51.261 --> 00:07:54.373 which Kanashiro has had to log all the community members 00:07:55.222 --> 00:07:57.070 I look into contributing to Debian 00:07:57.395 --> 00:07:58.276 of course 00:07:58.499 --> 00:08:01.531 Thank you to the Debian community to 00:08:01.866 --> 00:08:04.380 provide me this opportunity to come here to DebConf 00:08:04.578 --> 00:08:05.666 to present my work. 00:08:06.278 --> 00:08:08.895 Lets get moving on, and thanks. 00:08:09.021 --> 00:08:12.689 [ audience clapping ] 00:08:31.352 --> 00:08:33.225 So, my project is called 00:08:33.494 --> 00:08:34.881 "Port Kali Packages to Debian" 00:08:35.708 --> 00:08:39.530 and my mentors are Raphaël Hertzog and Gianfranco Costamagna. 00:08:39.974 --> 00:08:42.629 Unfortunately, they didn't come to 00:08:42.788 --> 00:08:44.322 this year's DebConf, and 00:08:46.588 --> 00:08:48.917 we are from the pkg-security 00:08:49.157 --> 00:08:50.631 tools packaging team, so this is 00:08:50.973 --> 00:08:52.883 something I have been working on 00:08:53.467 --> 00:08:55.856 for the past one year and a half 00:08:56.200 --> 00:08:58.512 I think I started packaging 00:08:58.762 --> 00:08:59.745 on 2016 00:09:00.038 --> 00:09:01.575 and in 2017 I started 00:09:01.816 --> 00:09:03.609 working on the security tools packaging 00:09:04.166 --> 00:09:05.621 because this is something that really 00:09:05.848 --> 00:09:07.117 interests me, so 00:09:07.583 --> 00:09:09.329 What actually is Kali Linux? 00:09:10.051 --> 00:09:13.582 Kali Linux is a digital forensics and pentesting distribution 00:09:14.020 --> 00:09:15.721 that has like lots of packages 00:09:16.268 --> 00:09:17.458 is by far 00:09:17.658 --> 00:09:19.635 the most used distribution 00:09:20.183 --> 00:09:22.164 for "capture-the-flag" competitions 00:09:23.164 --> 00:09:24.424 and is based on unstable 00:09:24.852 --> 00:09:26.551 and the thing is that Kali has 00:09:26.789 --> 00:09:28.740 a more relaxed policy 00:09:28.989 --> 00:09:30.675 than Debian's, so that's the reason 00:09:30.991 --> 00:09:31.892 of the 00:09:32.617 --> 00:09:34.120 differences between the packages 00:09:34.637 --> 00:09:39.160 I mean, the packages that Kali has and Debian hasn't 00:09:39.369 --> 00:09:40.163 so, at first 00:09:40.496 --> 00:09:42.436 I did gather some information about 00:09:42.661 --> 00:09:44.209 what packages can I work on 00:09:44.657 --> 00:09:46.208 and what are the problems 00:09:46.473 --> 00:09:48.346 that it should rather get them on Main 00:09:48.686 --> 00:09:50.395 So, I first started using 00:09:50.653 --> 00:09:53.006 this dashboard from Kali Linux, and they have 00:09:53.395 --> 00:09:57.653 also used the tracker system that we use on Debian 00:09:58.005 --> 00:09:59.084 and this is a special dashboard 00:09:59.304 --> 00:10:01.093 where we can see how many 00:10:01.331 --> 00:10:02.921 packages are on Kali Linux that 00:10:03.134 --> 00:10:04.128 aren't on Debian 00:10:04.777 --> 00:10:06.632 at the time, and this is for today, so there are 00:10:06.797 --> 00:10:08.591 477 packages 00:10:09.335 --> 00:10:10.695 but this includes dependencies 00:10:11.014 --> 00:10:12.772 and lots of packages are not 00:10:13.105 --> 00:10:14.867 that really important, and 00:10:15.089 --> 00:10:18.831 some of them are not installed by default on Kali 00:10:19.315 --> 00:10:20.451 So, the first thing, 00:10:20.643 --> 00:10:22.014 I already knew some packages that 00:10:22.181 --> 00:10:23.707 I really would like to see on Debian, and 00:10:24.035 --> 00:10:25.706 the first one was Metasploit 00:10:25.956 --> 00:10:28.280 because it's one of the most used 00:10:28.452 --> 00:10:29.415 frameworks for pentesting 00:10:29.766 --> 00:10:31.836 I have started by looking at 00:10:32.088 --> 00:10:34.330 what should I do 00:10:34.554 --> 00:10:36.026 and it was a really tough job 00:10:36.232 --> 00:10:37.968 because Metasploit is currently 00:10:38.183 --> 00:10:40.154 bundling all their gem dependencies 00:10:40.585 --> 00:10:42.447 Because of, this is a huge problem 00:10:42.706 --> 00:10:43.762 there was a big discussion 00:10:44.023 --> 00:10:45.230 n the Debian mailing lists about that, 00:10:45.476 --> 00:10:47.259 but whatever, I use repology 00:10:47.582 --> 00:10:49.246 in order to see what distros 00:10:49.547 --> 00:10:51.332 were already packaging this stuff 00:10:51.589 --> 00:10:53.466 and at the end, there should 00:10:53.730 --> 00:10:55.362 be around 40 packages 00:10:55.592 --> 00:10:57.878 that I had to package in order 00:10:58.094 --> 00:10:59.362 to see if it would work, because 00:10:59.600 --> 00:11:01.292 you have the version problem, because 00:11:01.489 --> 00:11:03.056 bundling the distro version, and 00:11:03.264 --> 00:11:05.643 we decided not to do that 00:11:05.820 --> 00:11:07.533 during this project, so I 00:11:07.780 --> 00:11:09.692 had to look for other packages 00:11:09.988 --> 00:11:11.568 and I didn't want to 00:11:11.731 --> 00:11:13.694 do this manually, so I 00:11:13.918 --> 00:11:15.088 developed a 00:11:16.276 --> 00:11:17.460 kind of big shell script 00:11:17.711 --> 00:11:19.107 it shouldn't be a shell script, it should be in 00:11:19.326 --> 00:11:20.788 a programming language, but 00:11:21.223 --> 00:11:23.329 got big worked on, and to this 00:11:23.547 --> 00:11:25.091 scripts I give 00:11:25.346 --> 00:11:26.916 I input it a list of packages, and it 00:11:27.090 --> 00:11:28.444 cloned all the Kali 00:11:28.767 --> 00:11:30.868 Git repositories for this package, 00:11:31.406 --> 00:11:33.081 build each one of them, and did 00:11:33.474 --> 00:11:34.983 some basic checks, like if 00:11:35.290 --> 00:11:36.314 it is a default 00:11:37.450 --> 00:11:38.473 Kali package, if it's 00:11:39.493 --> 00:11:41.359 buildable, because some of the packages 00:11:41.633 --> 00:11:43.532 are not buildable because we don't have 00:11:43.721 --> 00:11:44.996 the build dependencies in Debian right now, 00:11:45.284 --> 00:11:47.530 it checks if it is DEP5 compliant already, 00:11:47.749 --> 00:11:49.392 if we need manpages, if we need 00:11:49.752 --> 00:11:50.665 hardening, if 00:11:50.946 --> 00:11:52.987 it is bundling some gems, and if 00:11:53.348 --> 00:11:55.871 there are [?], there is about 00:11:56.329 --> 00:11:57.794 twenty or thirty something 00:11:58.089 --> 00:11:59.445 columns on here 00:11:59.770 --> 00:12:01.503 so you have lots of info 00:12:01.786 --> 00:12:03.494 and in order to know 00:12:03.734 --> 00:12:05.762 which are the most important issues 00:12:06.236 --> 00:12:08.186 Raphaël gave me the idea to 00:12:08.426 --> 00:12:10.417 look for the number of uploads that 00:12:10.799 --> 00:12:12.410 the package had since 00:12:12.627 --> 00:12:13.714 it hit Kali, so I 00:12:13.957 --> 00:12:15.271 can only 00:12:15.527 --> 00:12:17.707 just sort for the number of uploads 00:12:17.996 --> 00:12:19.895 and I have the most important ones. 00:12:20.242 --> 00:12:22.233 This made the process 00:12:22.487 --> 00:12:24.540 really easy, like a lot more 00:12:24.772 --> 00:12:25.835 easy, and I 00:12:26.407 --> 00:12:28.265 am publishing this on our team's 00:12:28.576 --> 00:12:30.454 wiki page, and I will keep using this 00:12:30.813 --> 00:12:32.313 like, forever 00:12:32.574 --> 00:12:34.568 because it really helps other people that 00:12:34.792 --> 00:12:37.132 want to contribute to our team, and 00:12:38.696 --> 00:12:40.727 this is another software 00:12:41.046 --> 00:12:43.217 that I tried, how many time do I have? 00:12:43.740 --> 00:12:44.559 OK 00:12:45.127 --> 00:12:47.085 another package that I really want to 00:12:47.281 --> 00:12:48.873 see on Debian is zaproxy, and 00:12:49.263 --> 00:12:50.761 for zaproxy, 00:12:51.013 --> 00:12:52.701 I had to do a manual checking, because it is 00:12:52.943 --> 00:12:54.121 a Java program, and 00:12:54.641 --> 00:12:57.870 Java has... I really don't like Java, so 00:12:58.250 --> 00:12:59.630 they bundle like 00:13:00.044 --> 00:13:02.176 ...zaproxy is great software, but 00:13:02.746 --> 00:13:04.282 they bundle some 00:13:04.501 --> 00:13:06.154 libraries, and I 00:13:06.405 --> 00:13:08.388 talked to upstream, and they are very 00:13:08.652 --> 00:13:09.904 receptive, and they 00:13:10.204 --> 00:13:11.817 want to help us, but 00:13:12.732 --> 00:13:14.719 I didn't manage to package it yet, 00:13:15.174 --> 00:13:17.283 I think I will do it after GSoC 00:13:17.662 --> 00:13:19.241 but there are 00:13:19.453 --> 00:13:21.594 some packages that we need to introduce 00:13:21.773 --> 00:13:23.468 on Debian. Some of the packages that zaproxy 00:13:23.798 --> 00:13:25.406 upstream is thinking about 00:13:25.606 --> 00:13:28.456 dropping them, and putting just on the extensions, because 00:13:29.095 --> 00:13:34.056 the core doesn't need them and some of the packages are old 00:13:34.698 --> 00:13:35.814 and stuff like that, we have 00:13:36.920 --> 00:13:38.740 there is a lot of problems that you can have 00:13:40.019 --> 00:13:41.155 like... there was a 00:13:41.434 --> 00:13:43.589 package which was GPL licensed 00:13:44.093 --> 00:13:45.445 but it was linking against 00:13:45.735 --> 00:13:47.554 OpenSSL, and in order 00:13:47.820 --> 00:13:49.748 to do that, you have to either add 00:13:50.005 --> 00:13:51.433 a license exception to your license 00:13:51.685 --> 00:13:53.781 And I talked to upstream, and 00:13:54.187 --> 00:13:56.319 it cooperative upstream, 00:13:56.633 --> 00:13:58.371 it is a software which is used 00:13:58.913 --> 00:13:59.819 to break 00:14:00.066 --> 00:14:00.990 WiFi password, 00:14:01.284 --> 00:14:02.798 like, doing offline cracking 00:14:04.175 --> 00:14:05.892 and upsream decided to change its license 00:14:06.457 --> 00:14:07.682 to BSD license 00:14:08.065 --> 00:14:09.381 so we could release that on Debian. I 00:14:09.746 --> 00:14:12.159 can't remember right now if it's on the NEW queue 00:14:12.455 --> 00:14:13.892 or if it already hit 00:14:14.132 --> 00:14:15.629 unstable, but I think is on the NEW queue. 00:14:17.708 --> 00:14:18.610 So, in the end, 00:14:20.579 --> 00:14:22.240 the results are, I made the script, 00:14:22.486 --> 00:14:24.491 which is going to be used by 00:14:24.708 --> 00:14:26.071 some time. There are some 00:14:26.259 --> 00:14:27.419 fixes that can be 00:14:29.455 --> 00:14:31.980 We have to do on the script to make it better 00:14:32.368 --> 00:14:33.574 to make the checking better, because 00:14:33.785 --> 00:14:35.196 we still have some corner cases where 00:14:35.493 --> 00:14:36.954 it doesn't work really well, 00:14:37.975 --> 00:14:39.427 we got some new packages in Debian, 00:14:39.686 --> 00:14:40.894 which is really good. I have to 00:14:41.135 --> 00:14:43.555 make some upstream contributions, because 00:14:44.466 --> 00:14:45.793 for some packages I wrote 00:14:46.028 --> 00:14:47.663 their manpage, and I sent it 00:14:48.124 --> 00:14:49.852 to upstream, there was this 00:14:50.225 --> 00:14:51.859 company of software that 00:14:52.090 --> 00:14:53.618 changed its licensing to be like 00:14:54.015 --> 00:14:55.818 correctly compliant with 00:14:56.104 --> 00:14:57.818 OpenSSL license, and 00:14:58.869 --> 00:15:00.034 and we got now a better 00:15:00.229 --> 00:15:01.977 Kali and Debian for its users, because 00:15:02.320 --> 00:15:03.832 when a package is just 00:15:04.035 --> 00:15:05.897 in Kali, they don't like 00:15:06.986 --> 00:15:08.098 to do hardening, 00:15:08.314 --> 00:15:09.906 that's one example of things that 00:15:10.187 --> 00:15:12.518 gets better when the package hits Debian 00:15:13.381 --> 00:15:16.445 because when we enable hardening 00:15:16.653 --> 00:15:19.150 sometimes we see problems that makes the package to 00:15:19.344 --> 00:15:21.683 fail to build, and then we fix that, 00:15:21.931 --> 00:15:23.832 upload to Debian, and when the package hits 00:15:24.159 --> 00:15:25.735 unstable, Kali starts 00:15:26.054 --> 00:15:28.877 taking this package from Debian, and 00:15:29.107 --> 00:15:30.418 they can use our infrastructure 00:15:30.715 --> 00:15:31.944 to do some QA 00:15:32.193 --> 00:15:34.835 and stuff like that, and they 00:15:35.048 --> 00:15:36.879 there are two people from Kali that I know at least, 00:15:37.120 --> 00:15:38.450 Raphaël and Sophie, and they work 00:15:38.656 --> 00:15:40.691 on Debian also, on our team, so 00:15:40.946 --> 00:15:42.763 when there's a new release, they upload 00:15:43.015 --> 00:15:44.300 the release on Debian, 00:15:44.746 --> 00:15:46.612 so Debian users win 00:15:46.944 --> 00:15:48.513 by that also, and 00:15:48.808 --> 00:15:50.778 they already did lots of work 00:15:51.138 --> 00:15:52.492 on their packages, so 00:15:52.776 --> 00:15:54.753 yes, I think that's 00:15:56.320 --> 00:15:58.477 the summary of the results 00:15:59.529 --> 00:16:00.463 Thank you. 00:16:01.367 --> 00:16:04.305 [ audience clapping ] 00:16:31.556 --> 00:16:33.169 Hello, I am Enkelena Haxhiu 00:16:33.405 --> 00:16:35.371 I am from the Republic of Kosovo, and 00:16:35.722 --> 00:16:38.286 I am here to represent my Google Summer of Code 00:16:39.512 --> 00:16:40.555 project. My mentors are 00:16:40.716 --> 00:16:42.139 Bruno Milena and Gabriela. 00:16:43.156 --> 00:16:44.154 So, my project is 00:16:44.505 --> 00:16:45.782 a Mozilla Firefox 00:16:46.152 --> 00:16:47.908 web extension to 00:16:48.103 --> 00:16:49.818 give free and... 00:16:50.092 --> 00:16:52.384 to give free software alternatives 00:16:52.689 --> 00:16:54.349 to the apps on the Internet, so to have 00:16:54.609 --> 00:16:56.251 avoiding non-free 00:16:56.910 --> 00:16:58.863 apps and sites. 00:16:59.339 --> 00:17:01.291 So, the goals for this project 00:17:01.795 --> 00:17:02.858 were that 00:17:03.141 --> 00:17:04.720 while the user is surfing 00:17:04.942 --> 00:17:06.647 on the Internet, the moment that he 00:17:06.818 --> 00:17:07.982 uses a non-free 00:17:08.229 --> 00:17:09.692 software, 00:17:10.424 --> 00:17:12.554 my extension will detect it 00:17:12.945 --> 00:17:14.724 and then give an 00:17:14.963 --> 00:17:17.640 alternative to it, a free software alternative. 00:17:18.319 --> 00:17:19.844 The user should be able 00:17:20.039 --> 00:17:21.590 to stop it when it's annoying, 00:17:21.821 --> 00:17:23.710 and the notifications should be 00:17:23.922 --> 00:17:25.044 only once per session, 00:17:25.355 --> 00:17:27.156 and we wanted to have like a 00:17:27.367 --> 00:17:29.545 database through self-hosted 00:17:29.794 --> 00:17:31.579 API, or to use 00:17:31.810 --> 00:17:33.878 a free software device 00:17:34.119 --> 00:17:35.514 and then all this database 00:17:35.774 --> 00:17:36.960 show it on our Web page. 00:17:38.622 --> 00:17:40.483 I started by making 00:17:41.837 --> 00:17:43.660 the user experience design, 00:17:44.024 --> 00:17:45.708 based on that, because 00:17:46.035 --> 00:17:47.960 should work like, should work fine, 00:17:48.289 --> 00:17:50.013 I made some sketches and mockups 00:17:50.345 --> 00:17:51.563 and then the persona 00:17:51.922 --> 00:17:54.088 and then the finding the bad habits of apps, 00:17:54.484 --> 00:17:55.911 like research, and 00:17:56.113 --> 00:17:58.439 I started implementing it by 00:17:58.560 --> 00:18:00.184 coding it, I used Mozilla 00:18:00.380 --> 00:18:01.992 API to make my extension 00:18:02.066 --> 00:18:04.207 communicate with the Web browser API 00:18:05.347 --> 00:18:06.265 I created a 00:18:06.558 --> 00:18:08.233 JSON data file, it's like 00:18:08.519 --> 00:18:10.173 a proof of concept to just take 00:18:10.508 --> 00:18:12.368 the data, because this is going to be 00:18:12.547 --> 00:18:13.894 later in a real database. 00:18:14.558 --> 00:18:15.826 So the code 00:18:16.078 --> 00:18:17.529 logic, do 00:18:18.023 --> 00:18:20.008 select and display the alternatives 00:18:20.378 --> 00:18:21.464 based on the current 00:18:21.940 --> 00:18:23.556 active website, is that 00:18:23.873 --> 00:18:25.756 we should get the URL, 00:18:26.048 --> 00:18:27.585 identify it by sending... 00:18:28.538 --> 00:18:30.241 Identify it, and then to send 00:18:30.472 --> 00:18:31.821 to that JSON file, check 00:18:32.181 --> 00:18:34.018 and, based on 00:18:34.290 --> 00:18:35.719 that, to give an alternative. 00:18:35.954 --> 00:18:38.039 If it exists, of course. We did 00:18:38.314 --> 00:18:40.182 We don't want to annoy the user 00:18:40.864 --> 00:18:42.284 like, to show too much notifications 00:18:42.537 --> 00:18:44.124 so we made it only once 00:18:44.372 --> 00:18:45.965 per session for the current app, 00:18:46.371 --> 00:18:48.101 and it has the ability to 00:18:48.383 --> 00:18:49.708 stop and start it. We use the 00:18:49.974 --> 00:18:51.923 local storage to hold the 00:18:52.170 --> 00:18:53.183 user settings 00:18:54.054 --> 00:18:56.068 and then we have to present this 00:18:56.284 --> 00:18:57.795 free software list through 00:18:58.019 --> 00:18:59.623 a web page that is generated by 00:18:59.878 --> 00:19:01.101 that database. 00:19:02.502 --> 00:19:04.017 This is like a simple diagram 00:19:04.984 --> 00:19:06.475 of basically what I just said. 00:19:07.621 --> 00:19:10.176 These are some screenshots with words 00:19:10.569 --> 00:19:12.181 for example, Dropbox is a nonfree 00:19:12.426 --> 00:19:15.587 software, and this is 00:19:16.665 --> 00:19:18.986 the notification that it gets 00:19:19.344 --> 00:19:21.139 it says, "Dropbox has open source alternatives 00:19:21.497 --> 00:19:23.440 like seafile", 00:19:23.815 --> 00:19:24.984 and then, I have here 00:19:26.041 --> 00:19:27.936 the web page that it gets 00:19:28.522 --> 00:19:30.505 the extension popup 00:19:31.232 --> 00:19:33.470 and all these things. This is how it looks like. 00:19:34.002 --> 00:19:36.365 And then, i made a project website 00:19:36.694 --> 00:19:39.204 which holds all the data 00:19:39.661 --> 00:19:41.035 I made the design of it and 00:19:41.215 --> 00:19:43.083 the frontend and the data generation. 00:19:43.373 --> 00:19:44.878 I plan to leave this open 00:19:45.249 --> 00:19:47.350 so developers can add stuff there 00:19:47.671 --> 00:19:49.720 to the database, and then 00:19:49.969 --> 00:19:52.092 generates it, and 00:19:52.347 --> 00:19:54.114 it goes, like, right away to the 00:19:55.489 --> 00:19:57.198 to the project website. 00:19:57.528 --> 00:19:59.082 I don't need to hard-code... 00:19:59.550 --> 00:20:00.915 hard-code it or something. 00:20:01.176 --> 00:20:02.532 Then I made the documentation of it, 00:20:02.720 --> 00:20:05.062 I split it into three sections, 00:20:05.467 --> 00:20:07.548 in the information about the project, 00:20:07.769 --> 00:20:09.074 general things, 00:20:09.249 --> 00:20:11.204 what's the purpose, how it works, and 00:20:11.501 --> 00:20:13.757 the second one is the contribution, 00:20:14.055 --> 00:20:15.983 how can developers contribute 00:20:16.199 --> 00:20:17.991 to it, and the third one 00:20:18.216 --> 00:20:19.355 is about 00:20:19.481 --> 00:20:20.960 the technical aspects, like 00:20:21.154 --> 00:20:22.724 debugging, and cloning the repo for new 00:20:22.912 --> 00:20:24.094 developers. So this is like 00:20:24.246 --> 00:20:25.379 an example of it. 00:20:26.898 --> 00:20:28.128 And for the future, 00:20:28.337 --> 00:20:29.884 I plan to continue my 00:20:30.093 --> 00:20:32.722 project, even after GSoC 00:20:32.961 --> 00:20:34.961 the first thing I need to do 00:20:35.154 --> 00:20:37.094 like, probably now, I am 00:20:37.259 --> 00:20:38.392 going to put it in the 00:20:38.590 --> 00:20:40.263 Mozilla Firefox market, 00:20:40.845 --> 00:20:42.641 and later I can make it 00:20:42.894 --> 00:20:44.774 for other browsers like Chromium 00:20:45.125 --> 00:20:46.723 but we need to change the 00:20:46.987 --> 00:20:49.052 API there, and I thought 00:20:49.293 --> 00:20:51.309 the package could get in Debian, because 00:20:51.523 --> 00:20:53.627 while I was here, I learnt about 00:20:53.928 --> 00:20:55.508 packaging and 00:20:55.704 --> 00:20:56.952 upstreaming and all that stuff, so 00:20:57.365 --> 00:20:58.995 I think I am probably going to do that 00:20:59.200 --> 00:21:00.599 but not for now, because I want 00:21:00.846 --> 00:21:01.970 my users to be 00:21:02.194 --> 00:21:05.215 like, all Internet users, not just 00:21:05.422 --> 00:21:07.452 Debian operating system users. 00:21:08.259 --> 00:21:09.802 Another thing is that I want 00:21:10.023 --> 00:21:12.041 it to be integrated with other free 00:21:12.213 --> 00:21:14.007 software services, like SUSI 00:21:14.227 --> 00:21:16.567 artificial intelligence, and 00:21:16.812 --> 00:21:18.036 Thunderbird in upstream 00:21:18.245 --> 00:21:20.166 SUSI is a 00:21:20.406 --> 00:21:22.919 speaking and texting artificial 00:21:23.115 --> 00:21:24.740 intelligence that gives you responses 00:21:25.485 --> 00:21:26.730 and I plan to use 00:21:26.938 --> 00:21:28.688 that giving the suggestions 00:21:29.070 --> 00:21:30.015 by speech. 00:21:30.695 --> 00:21:32.613 On my extension, 00:21:32.806 --> 00:21:35.397 with Thunderbird I felt it to be 00:21:35.593 --> 00:21:36.899 like, to work 00:21:37.110 --> 00:21:38.608 like in Mozilla, but, you know, when a 00:21:38.816 --> 00:21:41.182 user gets an e-mail from a non-free side, 00:21:41.531 --> 00:21:42.739 then it should 00:21:43.150 --> 00:21:44.603 send a suggestion, 00:21:44.978 --> 00:21:47.225 "use this, don't use this", like 00:21:47.406 --> 00:21:49.002 I just basically explained, 00:21:49.290 --> 00:21:51.414 and with upstream, I thought that 00:21:51.830 --> 00:21:53.307 all my database should be 00:21:53.525 --> 00:21:54.819 there, to put it there, and 00:21:55.153 --> 00:21:57.625 it could help upstream, and it can 00:21:57.873 --> 00:21:58.770 it could help me. 00:21:59.012 --> 00:22:00.440 Here, I have my 00:22:00.623 --> 00:22:03.417 experience with Debian, I heard about Debian 00:22:03.978 --> 00:22:06.123 last year, in a girl's hackathon 00:22:06.649 --> 00:22:07.673 and then later 00:22:07.852 --> 00:22:09.527 in Tirana, in Albania, where 00:22:09.703 --> 00:22:12.023 in a Debian bugs squashing party, 00:22:12.253 --> 00:22:13.868 a DD was there, and 00:22:14.043 --> 00:22:15.998 we planned on 00:22:16.216 --> 00:22:17.539 -- sorry -- 00:22:17.757 --> 00:22:19.286 working a bit more than 00:22:19.464 --> 00:22:21.734 With Daniel Pocock we had 00:22:21.984 --> 00:22:22.811 we made... 00:22:23.094 --> 00:22:25.979 A speech together, we gave under 00:22:26.220 --> 00:22:28.004 in the biggest open source conference 00:22:28.209 --> 00:22:29.941 in the whole Balkans, it was about 00:22:30.156 --> 00:22:32.433 Free Software. And about my project, 00:22:32.643 --> 00:22:34.085 I read a whole book to 00:22:34.343 --> 00:22:36.204 understsand it a little bit more, to be 00:22:36.421 --> 00:22:38.208 more prepared. And I want to 00:22:38.452 --> 00:22:40.214 thank the Debian people for giving me this 00:22:40.465 --> 00:22:42.302 opportunity to talk here, in front of you, 00:22:43.044 --> 00:22:45.146 and I hope I'll be a DD soon. 00:22:45.629 --> 00:22:46.819 Thank you! 00:23:53.127 --> 00:23:54.648 So... Yeah, it's working. 00:23:56.114 --> 00:23:58.344 So, before... My name is Elena 00:23:58.848 --> 00:24:00.745 Elena Gjevukaj, and I come from Kosovo. 00:24:01.127 --> 00:24:04.032 Before I start, 00:24:04.250 --> 00:24:05.800 to present my project, I want to mention that 00:24:06.363 --> 00:24:08.953 this year in the GSoC is the first time 00:24:09.216 --> 00:24:10.916 that our country is participating. 00:24:11.615 --> 00:24:13.926 It was funny, because even when we had 00:24:14.320 --> 00:24:16.317 applied for the GSoC, we had 00:24:16.579 --> 00:24:18.177 to ask Google to add 00:24:18.458 --> 00:24:19.959 our country in the list, so 00:24:20.590 --> 00:24:21.278 you know how... 00:24:22.394 --> 00:24:24.486 We thought that we didn't 00:24:24.707 --> 00:24:26.867 have any more opportunities 00:24:27.142 --> 00:24:27.998 or any... 00:24:28.743 --> 00:24:30.750 we just thought they aren't going to accept us. 00:24:31.326 --> 00:24:32.761 But hopefully for us, we have 00:24:33.727 --> 00:24:34.798 a great mentor, 00:24:35.106 --> 00:24:37.424 Daniel Pocock, I think many of you 00:24:37.626 --> 00:24:38.988 guys know him, 00:24:39.555 --> 00:24:41.141 and he helped us 00:24:41.410 --> 00:24:42.855 with everything that we needed 00:24:43.132 --> 00:24:45.179 for all of the applications 00:24:45.947 --> 00:24:47.133 and everything else. 00:24:48.373 --> 00:24:49.891 So, going back to my project, 00:24:50.282 --> 00:24:51.783 My project 00:24:51.978 --> 00:24:53.571 is basically what I just said 00:24:54.005 --> 00:24:55.731 right now. So, knowing that 00:24:55.990 --> 00:24:57.689 newcomers to the open source have a lot 00:24:57.939 --> 00:24:59.347 of problems to, 00:24:59.612 --> 00:25:01.781 to just set up 00:25:02.005 --> 00:25:03.566 a development environment 00:25:05.686 --> 00:25:06.281 and 00:25:07.493 --> 00:25:10.307 that's why we wanted 00:25:10.651 --> 00:25:11.473 to create... 00:25:12.717 --> 00:25:13.951 to create a GUI 00:25:14.941 --> 00:25:17.529 so my project is a new contributor... 00:25:17.877 --> 00:25:18.967 contributor wizard 00:25:19.278 --> 00:25:21.061 and is basically a GUI that 00:25:21.341 --> 00:25:23.286 could be distributed as a 00:25:23.513 --> 00:25:24.659 package, and 00:25:24.961 --> 00:25:26.696 to help the newcomer 00:25:27.077 --> 00:25:28.607 to Debian and open source 00:25:29.467 --> 00:25:30.504 to start their work 00:25:30.882 --> 00:25:33.979 on the open source projects. 00:25:35.093 --> 00:25:36.026 For example, if you want to 00:25:36.305 --> 00:25:38.689 apply in GSoC or Outreachy 00:25:39.119 --> 00:25:40.651 or other programs like this 00:25:41.078 --> 00:25:42.778 you will need a lot of things 00:25:43.119 --> 00:25:45.237 because if you are a new person, 00:25:45.457 --> 00:25:47.277 you are newcoming to Debian, or 00:25:47.542 --> 00:25:48.904 any other version of 00:25:49.112 --> 00:25:50.592 Linux, you will have a lot of 00:25:50.861 --> 00:25:52.719 problems to start up, so 00:25:53.033 --> 00:25:54.830 what we want to do with this 00:25:55.153 --> 00:25:57.006 is to help students 00:25:57.226 --> 00:25:59.114 to run this computer 00:25:59.347 --> 00:26:00.978 program in their desktop 00:26:01.204 --> 00:26:02.882 and have to understand 00:26:03.103 --> 00:26:04.834 everything that they need, for example 00:26:05.099 --> 00:26:06.839 they will need for sure, how to use 00:26:07.058 --> 00:26:08.620 IRC, they will need 00:26:08.870 --> 00:26:11.405 basically a blog to explain 00:26:11.616 --> 00:26:13.255 their work or add portfolio on it, 00:26:13.484 --> 00:26:15.028 so they will need 00:26:15.203 --> 00:26:17.208 a PGP or 00:26:17.582 --> 00:26:18.886 other things like this 00:26:19.093 --> 00:26:20.836 that we usually use in open source 00:26:21.141 --> 00:26:22.931 so, my part of the project 00:26:23.337 --> 00:26:24.032 in this 00:26:24.952 --> 00:26:26.761 in this month of 00:26:26.971 --> 00:26:28.390 the Google Summer of Code, 00:26:28.653 --> 00:26:31.292 was the blog module, 00:26:31.553 --> 00:26:32.886 basically, I created 00:26:33.147 --> 00:26:34.486 a module that will 00:26:34.863 --> 00:26:36.369 generate automatically 00:26:37.002 --> 00:26:39.386 ...build dynamic and static websites. 00:26:39.775 --> 00:26:42.005 And the other part 00:26:42.217 --> 00:26:43.779 of it was that I did a lot of 00:26:44.034 --> 00:26:45.654 research on what students 00:26:45.964 --> 00:26:46.973 need for... 00:26:47.320 --> 00:26:50.015 and we should include in the research 00:26:52.041 --> 00:26:54.074 Another thing that I want to 00:26:54.295 --> 00:26:55.535 mention is that students 00:26:55.791 --> 00:26:57.687 don't know that much... 00:26:57.928 --> 00:27:02.153 They have problems using the terminal 00:27:02.494 --> 00:27:03.648 or installing 00:27:04.063 --> 00:27:06.810 programs when they have usually installed Debian, 00:27:07.031 --> 00:27:08.678 I will make sure 00:27:08.933 --> 00:27:12.634 add that type of tutorials, or 00:27:12.826 --> 00:27:14.118 for example 00:27:14.406 --> 00:27:15.656 description of something 00:27:15.862 --> 00:27:17.400 that will help them, how 00:27:17.599 --> 00:27:19.081 to proceed and apply, and 00:27:19.404 --> 00:27:21.720 maybe be a successful applicant 00:27:21.974 --> 00:27:23.682 for GSoC. So, that's it. 00:27:24.153 --> 00:27:25.296 Thank you! 00:27:25.606 --> 00:27:29.352 [ audience clapping ] 00:27:53.200 --> 00:27:56.200 Hello everyone! 00:27:56.200 --> 00:27:58.200 My name is Diellza Shabani 00:27:58.200 --> 00:28:00.200 and I also come from Kosovo, 00:28:00.200 --> 00:28:02.200 I am a student of Computer Science 00:28:02.200 --> 00:28:04.200 and Engineering, 00:28:04.200 --> 00:28:06.200 I'm finishing my studies 00:28:06.200 --> 00:28:08.200 this year hopefully, 00:28:08.200 --> 00:28:10.200 so I am also doing 00:28:10.200 --> 00:28:12.200 a Google Summer of Code project, 00:28:12.200 --> 00:28:14.200 I haven't prepared any slides, 00:28:14.200 --> 00:28:16.200 because I 00:28:16.200 --> 00:28:18.200 didn't see it necessary, 00:28:18.200 --> 00:28:20.800 so, my project's name is 00:28:20.800 --> 00:28:22.800 "Click to dial from 00:28:22.800 --> 00:28:24.800 Linux Desktop", and 00:28:24.800 --> 00:28:26.800 my mentor is Thomas Levine, 00:28:26.800 --> 00:28:28.800 he couldn't join us 00:28:28.800 --> 00:28:30.800 at the conference this year, 00:28:30.800 --> 00:28:32.800 so, what I have been 00:28:32.800 --> 00:28:34.800 working on this project is that 00:28:36.800 --> 00:28:38.800 we are three students 00:28:38.800 --> 00:28:40.800 on this project, because it's really 00:28:40.800 --> 00:28:42.800 a big thing, we started 00:28:42.800 --> 00:28:44.800 working in this last year 00:28:44.800 --> 00:28:46.800 in the [?] hackathon, 00:28:46.800 --> 00:28:48.800 in [?], 00:28:48.800 --> 00:28:50.800 we started doing the project 00:28:50.800 --> 00:28:52.800 in Python first, 00:28:52.800 --> 00:28:54.800 we did some 00:28:54.800 --> 00:28:57.130 pop-ups and some really basic things, 00:28:57.130 --> 00:28:59.130 ...So, 00:28:59.130 --> 00:29:01.130 we thought to continue that, but 00:29:01.130 --> 00:29:03.130 now that the project is 00:29:03.130 --> 00:29:05.130 bigger, and there are three students 00:29:05.130 --> 00:29:07.600 doing this, it is separated 00:29:07.600 --> 00:29:09.600 in two different things, and 00:29:09.600 --> 00:29:11.600 the two other students 00:29:11.600 --> 00:29:13.600 are doing something else, 00:29:13.600 --> 00:29:15.600 and we plan to do 00:29:15.600 --> 00:29:17.600 something like mobile 00:29:17.600 --> 00:29:19.600 application, 00:29:19.600 --> 00:29:22.530 but still haven't figured it out. 00:29:22.530 --> 00:29:24.530 For the moment, we are 00:29:24.530 --> 00:29:26.530 doing only a website, 00:29:26.530 --> 00:29:28.530 a Web application, 00:29:28.530 --> 00:29:30.530 and 00:29:30.530 --> 00:29:32.530 we are working on 00:29:32.530 --> 00:29:34.530 the existing projects 00:29:34.530 --> 00:29:36.530 that Google Summer of Code students have 00:29:36.530 --> 00:29:38.530 done before, like Omnitel 00:29:38.530 --> 00:29:40.530 and Lumicall 00:29:40.530 --> 00:29:42.530 I am basically working on them 00:29:42.530 --> 00:29:44.530 and making changes, an doing 00:29:44.530 --> 00:29:46.530 task classes 00:29:46.530 --> 00:29:48.530 and methods, so... 00:29:48.530 --> 00:29:50.530 After we finish that, I think 00:29:50.530 --> 00:29:52.530 we will continue with the website, and 00:29:52.530 --> 00:29:54.530 hopefully, 00:29:54.530 --> 00:29:56.530 because the GSoC is really 00:29:56.530 --> 00:29:58.530 coming to an end, 00:29:58.530 --> 00:30:00.530 and we have not very much time 00:30:00.530 --> 00:30:02.530 left. But... 00:30:02.530 --> 00:30:04.530 After this, we will probably be working 00:30:04.530 --> 00:30:06.530 in doing the mobile app. 00:30:06.530 --> 00:30:08.530 However, this is 00:30:08.530 --> 00:30:10.530 all I have to tell 00:30:10.530 --> 00:30:12.530 right now about my project 00:30:14.530 --> 00:30:16.530 the opportunity to be here and to 00:30:16.530 --> 00:30:18.530 present for you guys. 00:30:18.530 --> 00:30:20.530 Thank you. 00:30:39.600 --> 00:30:39.730 OK, so... Can you hear me? 00:30:39.730 --> 00:30:42.600 thank you very much, thank you for OK, so... Can you hear me? 00:30:42.600 --> 00:30:43.260 OK. thank you very much, thank you for 00:30:43.260 --> 00:30:44.600 OK. 00:30:44.600 --> 00:30:46.600 So, hi everyone! 00:30:48.600 --> 00:30:50.600 I am not actually a Google Summer of Code student, 00:30:50.600 --> 00:30:54.600 but I have been an Outreachy intern 00:30:54.600 --> 00:30:56.600 around one year ago. 00:30:56.600 --> 00:30:58.600 So, first 00:30:58.600 --> 00:31:00.600 before continuing my 00:31:00.600 --> 00:31:02.600 talk, I'd like to ask 00:31:02.600 --> 00:31:04.600 how many of you are coming from 00:31:04.600 --> 00:31:06.600 a social background, and have 00:31:06.600 --> 00:31:08.600 studied for computer science or 00:31:08.600 --> 00:31:10.600 science-related? 00:31:10.600 --> 00:31:12.600 OK, great. 00:31:12.600 --> 00:31:14.600 So we got three other people 00:31:14.600 --> 00:31:16.600 in the audience. So 00:31:16.600 --> 00:31:18.600 I am Kristi Progri, and I am actually, 00:31:18.600 --> 00:31:20.600 I finished my university for 00:31:20.600 --> 00:31:22.600 international affairs and diplomacy 00:31:22.600 --> 00:31:24.600 and in the beginning I thought 00:31:24.600 --> 00:31:26.600 that this was exactly the school, 00:31:26.600 --> 00:31:28.600 that I'd never ever find something 00:31:28.600 --> 00:31:30.600 to do with my life, 00:31:30.600 --> 00:31:32.600 but then, I thought that, OK, 00:31:32.600 --> 00:31:34.600 probably it would be nice 00:31:34.600 --> 00:31:36.600 if I could just merge it with 00:31:36.600 --> 00:31:38.600 something that is tech-related, 00:31:38.600 --> 00:31:40.600 and free software, since during that time 00:31:40.600 --> 00:31:42.600 I was also part of the 00:31:42.600 --> 00:31:44.600 free software community 00:31:44.600 --> 00:31:46.600 I ended up in the end having a diploma 00:31:46.600 --> 00:31:48.600 thesis for on-line diplomacy, 00:31:48.600 --> 00:31:50.600 and this was 00:31:50.600 --> 00:31:52.600 what kind of opened 00:31:52.600 --> 00:31:54.400 the doors further to 00:31:54.400 --> 00:31:54.600 continue, and to get the doors further to 00:31:54.600 --> 00:31:56.600 continue, and to get 00:31:56.600 --> 00:31:58.600 to know more 00:31:58.600 --> 00:32:00.600 for political and Internet. 00:32:00.600 --> 00:32:02.600 So, I applied 00:32:02.600 --> 00:32:04.600 in Mozilla 00:32:04.600 --> 00:32:06.600 in a team for taking part 00:32:06.600 --> 00:32:08.600 in the Outreachy, working with the 00:32:08.600 --> 00:32:10.600 diversity and inclusion team there, 00:32:10.600 --> 00:32:12.600 building up the 00:32:12.600 --> 00:32:14.600 strategy for conducting 00:32:14.600 --> 00:32:16.600 first language interviews, since 00:32:16.600 --> 00:32:18.600 one of the barriers that we had during 00:32:18.600 --> 00:32:20.600 all this time was that 00:32:20.600 --> 00:32:22.600 people coming from different... 00:32:22.600 --> 00:32:24.600 different countries 00:32:24.600 --> 00:32:26.600 and not speaking 00:32:26.600 --> 00:32:28.600 everyone by default English, so 00:32:28.600 --> 00:32:30.600 trying to have a strategy 00:32:30.600 --> 00:32:32.600 on how to conduct the language... 00:32:32.600 --> 00:32:34.600 On how to conduct interviews, and 00:32:34.600 --> 00:32:36.600 to grow up communities in the local 00:32:36.600 --> 00:32:38.600 aspect, to really help to 00:32:38.600 --> 00:32:40.600 take further steps to 00:32:40.600 --> 00:32:42.600 all the free software initiatives, and 00:32:42.600 --> 00:32:44.600 everything that's regarding to that. 00:32:44.600 --> 00:32:46.600 So 00:32:46.600 --> 00:32:48.600 this was 00:32:48.600 --> 00:32:50.600 kind of the aspect from the field 00:32:50.600 --> 00:32:52.600 doing on the Outreachy. For those 00:32:52.600 --> 00:32:54.600 who don't know Outreachy, it's 00:32:54.600 --> 00:32:56.600 exactly... It is an intership that 00:32:56.600 --> 00:32:58.600 that lasts for three months, 00:32:58.600 --> 00:33:00.600 it happens twice per year, 00:33:00.600 --> 00:33:02.600 it has 00:33:02.600 --> 00:33:04.600 kind of the same ideology 00:33:04.600 --> 00:33:06.600 as the Google Summer of Code, but 00:33:06.600 --> 00:33:08.600 it's also for people that 00:33:08.600 --> 00:33:10.600 are not students but have 00:33:10.600 --> 00:33:12.600 finished their 00:33:12.600 --> 00:33:14.600 studies. 00:33:14.600 --> 00:33:16.600 and besides Outreachy and 00:33:16.600 --> 00:33:18.600 the Google Summer of Code, there also 00:33:18.600 --> 00:33:20.600 are initiatives that 00:33:20.600 --> 00:33:22.600 help out students 00:33:22.600 --> 00:33:24.600 to continue and 00:33:24.600 --> 00:33:26.600 getting on more knowledge regarding 00:33:26.600 --> 00:33:28.600 the free software, such as 00:33:28.600 --> 00:33:30.600 Rails' Girls Summer of Code, 00:33:30.600 --> 00:33:32.600 I don't know if you have heard about that, it is 00:33:32.600 --> 00:33:34.600 an internship happening on the 00:33:34.600 --> 00:33:36.600 during the summer, it lasts 00:33:36.600 --> 00:33:38.600 for three months, 00:33:38.600 --> 00:33:40.600 three months I think, 00:33:40.600 --> 00:33:42.600 and it's actually 00:33:42.600 --> 00:33:44.600 only regarding coding. But 00:33:44.600 --> 00:33:46.600 until now, I think, for as far 00:33:46.600 --> 00:33:48.600 as I know, Outreachy is the only one 00:33:48.600 --> 00:33:50.600 that can, 00:33:50.600 --> 00:33:52.600 that requires also people that do not have 00:33:52.600 --> 00:33:54.600 technical 00:33:54.600 --> 00:33:56.600 skills, or at least that have 00:33:56.600 --> 00:33:58.600 not finished for it, 00:33:58.600 --> 00:34:00.600 any technical 00:34:00.600 --> 00:34:02.600 subject or degree. 00:34:02.600 --> 00:34:04.600 So, this was also 00:34:04.600 --> 00:34:06.600 my short presentation 00:34:06.600 --> 00:34:08.600 to say, and the 00:34:08.600 --> 00:34:10.600 last one I think for the session, so 00:34:10.600 --> 00:34:12.600 there is anyone in the audience 00:34:12.600 --> 00:34:14.600 who'd like to make a question, any 00:34:14.600 --> 00:34:16.600 suggestion or comment, please feel free 00:34:16.600 --> 00:34:18.600 and thank you very much for 00:34:18.600 --> 00:34:20.600 being here. 00:34:20.600 --> 00:34:24.530 [ audience clapping ] 00:34:42.460 --> 00:34:45.659 [Delib:] Hello. Jaminy, 00:34:46.600 --> 00:34:50.330 So many of us are so interested in the 00:34:50.330 --> 00:34:52.330 the edges of Debian, 00:34:52.330 --> 00:34:54.330 and who is coming, and are they 00:34:54.330 --> 00:34:56.330 staying, and you have met 00:34:56.330 --> 00:34:58.330 so many mentees, 00:34:58.330 --> 00:35:00.330 and talked with so many mentors. Could you share 00:35:00.330 --> 00:35:02.330 with us a little bit about 00:35:02.330 --> 00:35:04.330 what is working well and 00:35:04.330 --> 00:35:06.330 what might work a little better 00:35:06.330 --> 00:35:08.330 in the future? 00:35:12.930 --> 00:35:15.060 [Jaminy:] So, there are many newcomers 00:35:15.060 --> 00:35:17.060 coming from Google Summer of Code, 00:35:17.060 --> 00:35:19.060 I think the main thing 00:35:19.060 --> 00:35:21.060 that actually happens is they should be 00:35:21.060 --> 00:35:23.060 keep motivated and keep working on 00:35:23.060 --> 00:35:25.060 after the Google Summer of Code, 00:35:25.060 --> 00:35:27.060 I feel that would be one of the 00:35:27.060 --> 00:35:29.060 major things they have to do 00:35:29.060 --> 00:35:31.060 even after the Google Summer of Code 00:35:40.730 --> 00:35:43.800 [Delib:] Do you have ideas of how 00:35:44.600 --> 00:35:46.660 community members or the mentors 00:35:46.660 --> 00:35:48.660 could do things differently, so that 00:35:48.660 --> 00:35:51.260 they could stay more motivated? 00:35:51.260 --> 00:35:53.260 Stay more interested? 00:35:56.130 --> 00:35:59.060 [Jaminy:] I think the mentors, it's all about the communication, 00:35:59.060 --> 00:36:01.060 I think they should keep communicating 00:36:01.060 --> 00:36:03.060 with the students and keep them 00:36:03.060 --> 00:36:05.060 giving suggestions 00:36:05.060 --> 00:36:07.060 and advice in 00:36:07.060 --> 00:36:09.060 them, how can they improve further on 00:36:09.060 --> 00:36:11.060 their projects, 00:36:11.060 --> 00:36:13.060 and how they can keep moving 00:36:13.060 --> 00:36:15.060 keep... Moving on 00:36:15.060 --> 00:36:17.060 further with the project. 00:36:17.060 --> 00:36:19.060 [Delib:] So, listening to what their interests are, 00:36:19.060 --> 00:36:21.060 and giving them ideas on how to 00:36:21.060 --> 00:36:22.200 pursue this interest? 00:36:22.200 --> 00:36:24.200 [Jaminy:] Yes. 00:36:30.130 --> 00:36:34.000 [Tassia:] I have a question: Is it 00:36:34.000 --> 00:36:36.000 ...I have the impression that I might be wrong, so 00:36:36.000 --> 00:36:38.000 [Jaminy:] Do you have questions for me, or 00:36:38.000 --> 00:36:40.000 for students? [Tassia:] For you. 00:36:40.000 --> 00:36:42.000 [Jaminy:] OK. 00:36:42.000 --> 00:36:44.000 [Tassia:] Sorry [both laugh] 00:36:44.000 --> 00:36:46.000 But just, for 00:36:46.000 --> 00:36:48.000 what I've been following, for 00:36:48.000 --> 00:36:50.000 the past years, I thing that when students 00:36:50.000 --> 00:36:52.000 enter work with a team 00:36:52.000 --> 00:36:54.000 my impression is that it's easier 00:36:54.000 --> 00:36:56.000 for them to continue working afterwards. 00:36:56.000 --> 00:36:58.000 Is it 00:36:58.000 --> 00:37:00.860 in comparison when 00:37:00.860 --> 00:37:02.860 there are ad-hoc projects 00:37:02.860 --> 00:37:04.860 that some times don't 00:37:04.860 --> 00:37:06.860 continue being developed, 00:37:06.860 --> 00:37:09.400 and I think, 00:37:09.400 --> 00:37:11.400 then the motivation might probably... 00:37:11.400 --> 00:37:13.400 Do you perceive it? Or 00:37:13.400 --> 00:37:15.400 you don't think it makes sense? 00:37:15.400 --> 00:37:17.400 [Jaminy:] Currently I'm not, but I hope 00:37:17.400 --> 00:37:19.400 to continue after my... 00:37:19.400 --> 00:37:21.400 Now I'm currently doing early career, 00:37:21.400 --> 00:37:23.400 so I would prefer continuing 00:37:23.400 --> 00:37:25.400 later. 00:37:25.400 --> 00:37:27.400 [Tassia:] No, sorry, I think you didn't understand my question. 00:37:27.400 --> 00:37:29.400 It was about the projects 00:37:29.400 --> 00:37:31.400 within teams, 00:37:31.400 --> 00:37:33.400 like, lets say, the students that work with 00:37:33.400 --> 00:37:35.400 the Perl team, or that work inside 00:37:35.400 --> 00:37:37.400 another team 00:37:37.400 --> 00:37:39.400 in comparison with just 00:37:39.400 --> 00:37:41.400 one mentor and one 00:37:41.400 --> 00:37:43.400 mentee 00:37:43.400 --> 00:37:45.400 and if that 00:37:45.400 --> 00:37:47.400 reflects on the 00:37:47.400 --> 00:37:49.400 motivation of the student to continue 00:37:49.400 --> 00:37:51.400 doing work for Debian 00:37:51.400 --> 00:37:53.400 afterwards. Do you thing there is 00:37:53.400 --> 00:37:55.400 a relation, or not? 00:37:55.400 --> 00:37:57.400 [Jaminy:] Yes, I think there 00:37:57.400 --> 00:37:59.400 is, I mean, the 00:37:59.400 --> 00:38:01.400 mentor-mentee relations keeps 00:38:01.400 --> 00:38:03.400 going on? 00:38:03.400 --> 00:38:05.400 eventyally they get your question probably? 00:38:10.730 --> 00:38:13.400 [Delib:] Do you think it's easier for students 00:38:13.400 --> 00:38:15.400 to be part of a team, instead of 00:38:15.400 --> 00:38:17.400 just one mentor? 00:38:17.400 --> 00:38:19.400 [Jaminy:] Yes, I think they 00:38:19.400 --> 00:38:21.400 get valious knowledge, so it's better to 00:38:21.400 --> 00:38:23.400 be in a team 00:38:23.400 --> 00:38:25.400 than sticking to one mentor. 00:38:25.400 --> 00:38:27.400 [Andreas:] Do we have some 00:38:27.400 --> 00:38:29.400 statistics? How many of 00:38:29.400 --> 00:38:31.400 the students have entered Debian? 00:38:31.400 --> 00:38:33.400 or not? Because I have had three 00:38:33.400 --> 00:38:35.400 GSoC students, and three Outreachy 00:38:35.400 --> 00:38:37.400 students, and 00:38:37.400 --> 00:38:39.400 none of them 00:38:39.400 --> 00:38:41.400 really remained there. They are intererested, 00:38:41.400 --> 00:38:43.400 they are using Debian, but 00:38:43.400 --> 00:38:45.400 my experience 00:38:45.400 --> 00:38:47.400 or the result of my experience 00:38:47.400 --> 00:38:49.400 was that I tried to give them tasks 00:38:49.400 --> 00:38:51.400 which are easy to end, 00:38:51.400 --> 00:38:53.400 which are small tasks, 00:38:53.400 --> 00:38:55.400 and if they go, then that's not 00:38:55.400 --> 00:38:58.260 ... How many people stayed in Debian? 00:38:58.260 --> 00:39:02.000 [Jaminy:] You mean... 00:39:02.000 --> 00:39:05.060 You mean, from the past? 00:39:05.060 --> 00:39:07.060 [Andreas:] How many people stayed in Debian? 00:39:07.060 --> 00:39:09.060 of the students? 00:39:09.060 --> 00:39:11.060 From the past, yes. 00:39:15.060 --> 00:39:17.060 [?:] I think you can answer 00:39:17.060 --> 00:39:19.060 after the session, because 00:39:19.060 --> 00:39:19.860 we run out of time. 00:39:19.860 --> 00:39:21.860 [Jaminy:] OK. I'd like to take this opportunity 00:39:21.860 --> 00:39:23.860 to thank all the mentors 00:39:23.860 --> 00:39:25.860 who made this program successful. 00:39:25.860 --> 00:39:27.860 And you can feel free to talk to students 00:39:27.860 --> 00:39:29.860 after the session, and give them 00:39:29.860 --> 00:39:31.860 suggestions or feedback. 00:39:31.860 --> 00:39:33.860 Thank you! 00:39:33.860 --> 00:39:37.660 [ Audience clapping ]