00:03 Yeah. Rachel 00:04 Alright, ACM is pleased to welcome our Vice President, Jeff Dlouhy, who will be talking about his experience this summer with Google Summer of Code. Jeffrey 00:19 Sorry that a few minutes late, our tape was locked in our drawer and the key was over So I had to go run over and get that. But normally we don't have students speak, even officers, or speaker series. But some of our speakers dropped out this week. So I was pressured into giving a talk. Sorry, I thought I ran across the campus. So I'm going to talk about my experiences with Google Summer of Code and for freshmen who might be interested in doing Summer of Code over this summer if they're not, you know, since they're not going on co-op. That's something that you should definitely look into because you get paid to work on a project you're liking and you do it all summer long. So sorry if I mumbling or speaking out of breath. I'll catch up. So Google's Summer Code is the third year it happened. They work with about 1,000 different students and about 150 different open source projects. And so some of the projects that they sponsor, like they have GCC, You can do Lisp, Pigeon, a whole bunch of different things. 02:07 And this summer I worked with the Mozilla Foundation, which isn't that big known for, Fire Fox, and Thunderbird, and Camino is one of them. 02:13 And so the way Summer of Code has worked out is that there's pretty much two types of people. 02:18 There's a student and there's a mentor. 02:22 And so what happens is a few months before the students 02:26 apply, there's around March, like a month before that, 02:30 the mentors apply. 02:32 And so does the mentor the organization. 02:35 So Mozilla will contact Google saying they want to be a part 02:40 of Google Summer of Code. 02:42 And Google will go through checking to make sure that 02:44 they're reputable open source project. 02:48 and that the licenses agree with what Google sets up as open source. 02:54 And so there's mentors. 02:58 So the organization or the project will have mentors 03:02 they want to work on with different students. 03:06 So I was assigned one mentor. 03:08 And it's normally one mentor for a student. 03:11 One student gets one mentor. 03:12 But in a few projects, there's a few mentors 03:15 for a whole bunch of different students. 03:17 So I think for GNOME and Mono, Miguel de Acasa, 03:23 there's like three people and stuff like that. 03:25 So it's not always one to one, but usually it's 03:28 one student per mentor. 03:30 And so I was working on the Camino web browser, which 03:33 is a part of the Mozilla Foundation, only in that Mozilla 03:38 gives Camino the server space and part of the web tracker 03:44 and also in their source code repository. 03:47 But other than that, Mozilla doesn't really sponsor Camino. 03:51 It's totally volunteer based. 03:53 And there's no people paid to work on Camino. 03:57 Like, there are people who work for the Mozilla Corporation 03:59 who work on Firefox, Gecko. 04:02 But other than the occasional summer of code student, 04:05 Camino is totally volunteer driven. 04:09 And so Kamino's mantra is Mozilla Power, Mac style. 04:16 And so what they mean by that is they have this gorgeous Cocoa 04:23 user interface. 04:24 So on the Mac, we're using the widget toolkit that is system 04:32 wide in Mac OS X. 04:33 So it fits right into the system. 04:36 Whereas Firefox is using their Zool markup to do all the user 04:43 interface. 04:43 And so when you cross platform it works great, but on the Mac, 04:48 it doesn't give you the whole Mac experience, just visually. 04:52 But on Camino, the whole point is more than just putting a 04:59 nice pretty face on it. 05:00 It also integrates more into the Mac OS operating environment 05:06 that Firefox can because if you're trying to support three 05:08 different operating systems, you can't possibly do all the 05:12 boom of features in all the operating systems. 05:15 And Mozilla, or Firefox rather, is definitely set up mostly 05:20 to compete against Internet Explorer. 05:22 So they put a lot of their efforts into Windows 05:25 compatibility. 05:26 But there is people who work at Mozilla only on Mac-specific 05:32 features. 05:33 It's still mostly looked towards the Windows and Linux side. 05:40 So the marketing term, I guess you'd call it, for Camino 05:45 is Camino is an open source web browser developed 05:48 with the focus of providing the best possible experience 05:50 for Mac OS X users. 05:52 This is something we created this summer at a Camino meetup 05:56 in the Mozilla headquarters in Mountain View this summer. 06:00 I'll talk about that later. 06:02 But there's a few things that are important when some of the users might misunderstand 06:10 about Camino. 06:11 And some of the things I even had, you know, misconceptions before joining it. 06:15 And some of the things that we're not is that we're not an all-purpose internet utility. 06:21 You know, we're not an RSS reader, not an email client, not a news reader. 06:25 You know, we're not the Emacs of web browsers. 06:29 And so that's something-- we only want to be a web browser 06:33 and not anything else. 06:34 Whereas Safari has RSS where they might not need RSS. 06:40 And it's supposed to be easy to use. 06:43 That's kind of being Mac-like. 06:46 And we're not Steve Jobs' browser. 06:48 Steve Jobs has a lot of sway, looking to Safari, which 06:51 would be he's our competitor on the Mac. 06:54 He can say what needs to be in Safari, whereas with Camino, 06:58 since it's totally volunteer driven, there's no motive behind it, only trying to make the 07:02 best product and the best web browser. 07:06 And it's not a developer platform, whereas Mozilla can be a developer platform. 07:10 You can write Zool apps for Firefox and have a web browser 07:14 kind of act like an application inside of the web browser, which are not that. 07:18 We're just a web browser. And it's not an offshoot of 07:22 Firefox. A lot of people just think that Camino is a 07:26 like there was Firefox and then someone said oh let's make Firefox but more Mac 07:31 like and then we'll have Camino that's not the way it happens. This is a timeline of 07:35 internet browsers and if I zoom in. There's about a nine month gap between 07:41 Camino and Firefox being started so Mike Pinkerton and some other people, Mike Pinkerton is now the lead developer of Camino, 07:51 They started inside of Netscape at the time, 07:55 putting the Gecko rendering engine inside a Cocoa user interface. 08:01 And then later, down the line, Firefox came. 08:05 So there's no relationship to Firefox. 08:08 Like, we need to try out of Firefox. 08:10 The differences are-- the similarities are that we're just using the same rendering engine, which is Gecko. 08:19 So getting into Summer of Code is a fairly straightforward 08:26 process. 08:28 It's not like going to Google where you have to go through 08:31 interviews or the stages of talking to people. 08:36 In around, I think around February and March, they start 08:43 putting online all the mentoring organizations that 08:46 were accepted by them. 08:48 And so what's the, like the heads, like code.google.com, 08:52 some of the code. 08:53 And so what you have to do is you look through, 08:55 look for the organization that you might be interested in. 08:58 And so for my cases, I primarily do Mac development. 09:02 So I looked at, there's only, there's only really like two 09:07 or three, if you stretch it, Mac development, 09:13 open source projects you can work with. 09:15 There's Adium, which makes kind of like Pigeon for the Mac, 09:21 which is a really cool open source aim client for the Mac. 09:26 And then there's Mozilla, which has Camino in that. 09:28 And you can work that on. 09:30 So I did work on. 09:31 And there's also VLC, the video player. 09:33 They had a very low level job working with integrating 09:42 their video client into the Mac more easier. 09:46 But with that, it required a lot of low level working with 09:52 video compression and stuff like that. 09:53 So I wasn't that advanced yet. 09:55 So you have to submit a project proposal about what you 09:59 want to work on. 10:00 So for any project, you can work on anything you want. 10:02 You just have to submit a project proposal. 10:05 Obviously, it has to pertain to what the project you're 10:10 trying to put a web browser in a video player might not pass over well. 10:16 So what I did, I applied to three different applications for two different organizations. 10:26 I had one project proposal for ADM, which was upgrading their AppleScript support, 10:32 and I had two for Camino, which was either AppleScript support or what I ended up doing was Tabas Fosé. 10:39 And so this is the abstract to my project. 10:43 And I just said, I'll add iCandy to Camino, 10:46 be able to switch tabs, and just add the gloss 10:50 onto making Camino even a more rich user interface 10:54 inside of the browser and inside of the Mac. 10:57 And beyond that, there was more paragraphs 11:01 going into details of how it implemented a timeline 11:04 and how I would, how this fit into the browser, 11:09 why we need it, and other stuff like that. 11:13 And so, what my thing was is Tab Expose, 11:17 which is a name that's still not final, 11:20 just something that you can call it. 11:22 I'd like something that's not tied to Apple. 11:25 So if you're familiar with Mac OS X, 11:27 they have this cool feature since 10.3 called Expose. 11:31 So if you have a bunch of windows open, 11:33 If you press F9, and all your windows will expand out, 11:38 showing you live previews of all the windows you have open. 11:44 And it also does it by all applications per application, 11:49 and then it will hide everything. 11:51 So it's a really easy, quick way to switch between all your 11:55 windows on the Mac. 11:58 And so what I set out to do was create something like that, 12:03 but for Camino-- and this was an early mockup 12:06 I made right in the beginning of Summer of Code. 12:11 I just done in Photoshop. 12:12 It's much easier to do things in Photoshop than in code. 12:16 But this is how I first envisioned it with little x's 12:20 on the top, kind of like widgets. 12:22 And as you'll see later on, the thing where it's at right now 12:28 actual code working is pretty close to this. 12:30 And then actually this one with no exit if you wanted to 12:36 X out different browsers. 12:38 So if you had all these windows and tabs in your browser, 12:43 you would select the press key, and then all these previews 12:46 would show up of all the web pages that you were visiting. 12:48 And so if you have a bunch of tabs open, you might be hard 12:53 to differentiate between what tab is which. 12:56 So this can be a much faster way between switching tabs and 13:00 other things I thought about but haven't been done yet. 13:05 Might be Tabose 2.0 is dragging tabs around inside of 13:12 Tabose. 13:13 Right now, Camino doesn't support dragging tabs even in 13:15 the browser. 13:16 So this wouldn't be priority until that's complete. 13:20 But these are just mockups that I need. 13:23 So if you're exiting, you click the next on one of these things, it would fade out to the background and that would move over. 13:30 So that was just the beginning of getting it ready and thinking of what I could do. 13:36 And so the whole tab was the idea wasn't entirely like my idea, having all the tabs show up in the browser. 13:45 On some of the websites on the Summer of Code thing, all along the side they had ideas. 13:51 And so some of the projects said, you know, you don't have to do an idea that they would like. 13:56 You can do anything you want, but they would like. 13:59 There's some features that certain projects might really want. 14:02 So AEM or Pigeon might really want video chat. 14:05 And so you're probably more likely to get a position doing video chat if, you know, because it needed. 14:13 Or they're doing another feature that you think is cool. 14:15 But if it's really cool and they haven't thought of it, then you might take it. 14:18 It's always a safe bet to maybe look at a project that they would like if you want to get sponsored. 14:26 So some of the things that I encountered when I started off was there's a few things that the hurdles need to get over 14:34 into getting a customized to the project you're working on. 14:38 And so one thing with working with Mozilla is getting, dressing with Bugzilla. 14:43 And this is a chart they have on Wikipedia of the life cycle of a bug in Bugzilla. 14:49 It's kind of complicated. 14:53 At least I think it is. 14:55 So this is a search in Bugzilla. 14:58 It's got three million features. 15:00 And if you want to search for a bug, unless you know the bug number, it's really hard to 15:06 cut down and find the bug you're actually looking for. 15:09 Having a lot of features is great, but when you're not totally accustomed to the way the 15:17 bugs are handled or just the code environment, having this many things turn at you at once 15:23 is kind of mind boggling. 15:24 And then the second part is other than just getting accustomed to the bug tracker, because 15:31 if you're writing code and submitting patches, you're going to have to go through that. 15:36 the project using it mostly does it through bug tracker. 15:40 At Mozilla, most of the things go directly to the bug tracker. 15:43 And the second thing was getting some of the code base. 15:47 I wasn't working on any of the code related to Gecko, 15:51 but there's still, in the Camino code, 15:53 there's all the Mac high level stuff, 15:55 which is dealing with all the Mac GUIs 15:59 and their Cocoa libraries. 16:02 But inside of that, there's also a lot of references 16:05 is a gecko, which is a rendering engine. 16:07 And that's using C++ and XvCom and all these really 16:12 kind of complicated stuff that a lot of people have trouble 16:14 with. 16:15 And if you're not used to making a gecko code, like if 16:18 you're guessing it, it would be very daunting. 16:23 For making a web rendering engine, it's like six million 16:26 lines of code is, I think, would scare anyone. 16:30 And so getting started off, that was the two obstacles 16:35 that I had to get accustomed to. 16:38 And then that was another first week. 16:40 And then luckily, about two weeks later, WWDC, 16:45 happening in California, that's the Worldwide Developers 16:47 Conference run by Apple. 16:49 And they have a student scholarship where you can sign up. 16:54 And they'll pay your ticket to go to attend the conference. 17:01 Dan was also there. 17:02 I think there's some other people from Northeastern who went there. 17:06 But if you're a Mac developer, you should always apply for WWDC, because most students will get it. 17:12 And it's a pretty cool thing to go to. 17:16 So that was for a week. And the week after that, there was a Camino meetup at the Mozilla headquarters in Mountain View. 17:23 And so there, all the current developers and new developers, or me, came together and we 17:33 were planning out things for Camino version 2.0. 17:37 So most of the developers on Camino, as I said, they're all volunteer. 17:40 Most of them don't work in the same place. 17:44 There's a few people who work in Mozilla, who work in this office, but none of them 17:48 are really working there for Camino. 17:51 They're either doing Mac things for Firefox or QA for Firefox. 17:56 But with this, this is one of the first times that all the developers 17:59 or a majority of them got together and were able to lay out some plans 18:03 for the future of the browser. And the browser is like five, six years old now. 18:07 And so it was a really good experience for me 18:11 to meet all the developers. I was meeting them because I was 18:15 new there anyway, but a lot of those people hadn't even seen each other ever. 18:19 them for years. And so these are just pictures of the two days that we were there. This is 18:25 Mike Bingerton, he's the project lead. And so this is a great two-day experience laying 18:32 out plans and just meeting with other hackers that were working on Mozilla. And so, but 18:39 then after that, you know, sets back in and then you go back home. With the summer code, 18:47 Most of the time, things is done from home or wherever. 18:50 It doesn't matter where you're working. 18:54 And so that has their advantages and disadvantages. 18:59 One of the disadvantages and advantages 19:03 is there's no set office. 19:05 So I was back in New Jersey working from home, 19:09 save money and living with my parents. 19:12 So I wasn't in an office environment. 19:14 But they did allow me to be anywhere I needed to be. 19:18 So this is a picture of me this summer. 19:20 This is in Arles, France. 19:22 I was submitting a patch to Mozilla from there. 19:26 And this is, for context, this is the view I was looking at, 19:30 an old Roman stadium. 19:34 So not being tied down in an office can be a good thing. 19:37 But you also miss out on any experience 19:39 with being in a workplace. 19:41 After a while, it kind of gets lonely if you're just sitting at home hacking all day. 19:48 It's really great. 19:49 You don't have to be no boss or no nothing. 19:53 But after a while, if there's no one to talk to, it's only an IRC, you can only handle so much. 19:58 And so one thing with Summer of Code and any kind of open source project is good communication. 20:04 And most of the communication will be done on IRC or like AIM. 20:10 But most projects, a lot of ones will be IRC. 20:14 And so that's a great place to talk to people, 20:16 and people will always be online, 20:17 always be there to help you. 20:19 But if you've never seen these people before in your life, 20:23 sometimes it can be hard judging what they think to you. 20:28 Like your code, like your work, or just you're 20:32 being annoying to them. 20:33 With Camino, I thought the community is great. 20:36 They're very nice, very helpful. 20:39 I have had experience with other open source projects, but a lot of the communities, if 20:43 you're there helping in writing code, the communication is a very valuable part of the project. 20:50 It can be a lot of fun too. 20:54 So the communication is a big aspect. 20:56 Also, if you're working on a project, managing your time is another big one. 21:01 So if you're at home, there's no one there to bug you to say, hey, you have your work done. 21:09 You don't have to drive to work. 21:12 My commute was about 20 feet to my computer. 21:16 And so, like my typical day, we'd do a pie chart. 21:19 There was about sleeping was about a little quarter of the day. 21:22 There was some eating, some TV, some reading. 21:27 I bought a week to pass some time. 21:29 big stand in hacking where you're probably breaking between then the hour of caffeine. 21:34 If you're doing a lot of programming, getting coffee and caffeine in you, it'll keep you going. 21:41 I highly recommend that if you do any open source project and I think anyone would have tested that. 21:48 And one thing they try to knock in at Summer of Code is making progress. 21:53 The reason they have a mentor is so you learn to progress over time. 21:58 And so they have two evaluation periods. 22:01 There's a midterm and there's a final. 22:03 And so the midterm, I think it was in July, they had, you know, you say how far you progressed, 22:12 you progressed so far. 22:13 And in the beginning when you submitted a project, you had a timeline. 22:17 And then you can revise it, you know, over time. 22:20 But at this evaluation, you'll try to see how close you're to the timeline, you know, 22:24 what were your other things you had to overcome and stuff like that. 22:28 And they'll work with you on getting that. 22:30 And if you did well, you'll get a check from Google. 22:34 And you get like three payments over the summer. 22:37 And so for the first evaluation, I did pretty good. 22:41 I was going ahead of schedule. 22:44 But that was before I actually submitted any patches. 22:47 And at Mozilla, well at least for Camino, 22:50 You have to go through two reviews and then a super review 22:54 to get your code submitted into the repository. 22:57 And so with that, you'll submit to the bug tracker. 23:02 Someone will look at the code. 23:06 Say you change here, here, here. 23:08 Your pointer is to be aligned next to the variable, 23:12 or stuff like that. 23:13 Make sure the code is using spaces on tabs, stuff like that, 23:17 so that you're adhering to their coding standards, 23:21 and also that your code's not going to crash 23:24 or leaking memory throughout the system. 23:27 And so with that, there's a lot of things. 23:30 With having other people who are much better programmers, 23:32 reviewing your code really up your game in programming. 23:38 And so what I got out of it, 23:40 with this whole experience of Summer of Code 23:43 and working with Mozilla and the review process, 23:45 was that I write much better code. 23:47 When you have people looking at your code, 23:50 who have been programming for much longer, 23:53 and have much more experience with the code base you're 23:54 working on, you get a lot more intimidated about submitting 23:59 patches, because you don't want to make any mistakes. 24:03 And so now any time I write code, I make sure I'm not 24:08 wasting any memory. 24:09 Wasting if I need to have an extra line, 24:12 Do I really need that line or if the code looks good? 24:16 If it's spaced properly, where the curly braces are, all 24:19 those things are important when submitting to a big project. 24:23 And with that, I learned to write much better code and 24:26 be much harder on myself for writing code that looks good. 24:32 Also, a better attention to detail. 24:34 Being on the Mac, especially for Camino, people are very 24:41 into the look and feel of the application. 24:44 That's down to what colors you use, if the colors match 24:48 accordingly, if it's visually appealing, if a feature is 24:52 needed. 24:52 Like one good thing that Commuter does is that they 24:55 don't need to add every feature. 24:57 If they wanted to add every feature, they'd have SeaMonkey. 25:00 They don't need to have things that don't be needed. 25:04 They try to make it so that the user will have the best 25:06 experience. 25:07 And I think that the best experience is where the user 25:10 have to select all these different options is that when they get on the browser is what 25:16 they should expect to be using. And so, Rubik Camino really helped me get much better attention 25:24 to detail and so I think it's a really great browser. Also, I met great people. With being 25:32 a volunteer, there's people from all around the world, there's people from the Netherlands, 25:37 Sweden, the US, and there's other places, 25:42 there's other developers that work on this. 25:44 And so, like one's a pilot, others work for Google, 25:49 there's students, a whole bunch of different people. 25:52 And so that's another great thing, 25:54 is that there's a whole bunch, 25:55 there's not a stereotypical person working 25:58 on these open source projects. 26:00 It can be a whole bunch of different people. 26:02 They don't have to be a programmer. 26:04 They can just be doing code tracking and QA 26:06 and stuff like that. 26:07 And so it's really great to meet really cool people. 26:11 And I also had fun doing it. 26:13 And then one great thing about Summer Code 26:15 that if you're doing your own project, with me at least, 26:19 I didn't find like, and then relax time, 26:22 I didn't really find like, oh, I'm going to work on Summer 26:25 Code now. 26:26 It was more like a passion. 26:27 You're working on it. 26:28 It's something that you really enjoy, 26:30 and something that you really want to make great. 26:31 And so I didn't really get tired from doing the work 26:34 Because every day when I got up and started working on it, 26:38 it was just another cool feature, another cool thing 26:41 I wanted to fix or make it really cool and fun to use. 26:45 And so that's the great thing about it. 26:47 Like I heard other friends who worked at companies this summer, 26:50 some people would complain about going to work and their job. 26:53 But with Summer of Code, it was really great to not have that 26:56 and just be really passionate about what I was doing. 27:01 So if you're interested in doing Summer of Code 27:03 if you're a freshman, or if you, I don't know, 27:06 like planning your schedule, if you have a block in the summer, 27:10 with the summer sessions, it'd probably be hard, 27:12 but there's two things that you could probably do. 27:19 My recommendations for finding a cool project is obviously 27:23 finding a project that you like. 27:27 That seems obvious, but don't go on a project that, 27:32 because you just want to find a project. 27:33 If you're a Mac programmer, go for a Mac thing, in my case. 27:37 If you're a Linux programmer, look for maybe going with 27:40 Ubuntu or Debian or someone like that fits your needs. 27:46 Find a project that you like. 27:47 And also, contact them early before the mentoring and 27:53 the stuff begins, even before the application process begins, 27:56 so they know who they're talking to or who's submitting 27:58 these projects, because then they'll have a face 28:02 or just a name to put with the project proposal. 28:04 I didn't do that, so I got lucky that way. 28:08 But from a lot of suggestions I heard 28:10 from other Center of Code students, 28:12 is to contact an organization and tell them 28:13 that you're interested. 28:14 They can actually help you make your project better. 28:18 So when you actually submit your proposal, 28:21 it'll be something that they might like even better 28:23 if you talk to them. 28:24 And also have an understanding of the project's culture. 28:29 So if you're, like I said, all about having options or having all these things in your 28:36 web browser, Camino might not be for you. 28:40 Like if you don't really care about the user interface of the product you're working on, 28:46 you might want to work on something that's like a compiler or something that's just a 28:49 command line or something lower level than something that's on the user-driven side. 28:54 Because first of all, they're not going to accept your application if they can tell right 29:00 off the bat that you might not be great for this project. 29:02 So find something that you know that you can fit into their culture and that you'll fit 29:07 well. 29:08 And that's really easy to do. 29:10 I don't think you want to be in a project in any way that you didn't fit in their culture. 29:15 And then write up a few project proposals also. 29:19 Like I did three. 29:21 It's probably better to have more substance behind your project proposals. 29:25 Don't submit 20, which is the max. 29:27 Submit a few, but that have really laid out plans and good details and have really innovative 29:35 ideas. 29:36 Also, set a reasonable timetable for yourself. 29:39 You only have three or four months to work on this project. 29:43 Will you be able to do this project in a reasonable amount of time? 29:47 If you want to rewrite the whole system that you're working on, it might not fit in the 29:52 whole summer. 29:53 So try to maybe just get a piece of it. 29:55 And that might be a great Summer of Code project. 29:58 And then also, don't worry after you submit your project. 30:02 Don't worry if they're going to accept it or not. 30:04 If you think it's great, chances are that they'll think it's great. 30:09 And so don't really worry about it. 30:10 I worried about it, but you really shouldn't. 30:14 And if you can't do it in some web code, like you have co-op or things like that, you can 30:18 still contribute to open source software anyway. 30:21 Like these projects are amazing. 30:25 There are a bunch of people who are only interested in making the best product for themselves. 30:32 And with that, they normally make the best product for a lot of people. 30:35 And so with Camino, all the people there are passionate about making a great web browser. 30:39 They're not making any money off it. 30:40 just interested in making the great user experience. 30:44 And anything with that, what you're doing, you know, 30:47 MythTV or Ubuntu, they just want to make the best product 30:51 available. 30:51 If you're working for another company, you might not be 30:55 working on a project you'd like. 30:56 But if you're doing open source software, if you really 30:58 like this project or program you're using, and you really 31:01 think that this new feature you're thinking of might be 31:04 great for it, contact them and say, hey, I'd like to add 31:06 this feature. 31:07 And most products will be very open to new 31:10 people. So just try to get involved. And also, even if you're not 31:15 up to the programming skill of maybe working on Ubuntu 31:18 or working on Medium or something like a big project, 31:23 you can just do QA and bug fixing. A lot of projects 31:27 will have a lot of developers, not a lot of people are triaging bugs 31:30 and just seeing what's a duplicate, what's actually a bug, and 31:34 doing that kind of work can really help a project out. 31:38 So getting involved in open source would be a great thing for anyone. 31:41 I highly recommend it and thank you. 31:50 Any questions? I'm sorry if I spoke fast. 31:57 No? Alright, thank you. 32:02 I will show a quick demo of Tabs Jose. 32:09 It's not totally completed yet. 32:10 There's still a lot of-- I want to add the functionality 32:13 is there. 32:13 I still want to add some of the- 32:15 well, I think Mac, you need to have animations and cool 32:20 effects. 32:22 But I don't have that yet because I was blocked on a few bugs. 32:26 But so far-- and this is the latest trunk build. 32:29 So if you have all these tabs open, I quickly jump around, 32:34 like pressing a key, and it'll crash. 32:40 That's another-- that's a gaggle of love. 32:42 But you kind of get the idea of it. 32:46 So that's- 32:49 What do you do with those lost tabs? 32:52 If there's lost tabs, all right, we'll all open in a bunch. 33:03 It'll handle more than this. 33:10 There's a reason this is buggy. 33:14 First I'm running the latest Trump build and it's also on a beta offering system. 33:18 So there's a lot of places where it can go wrong. 33:21 But it'll handle up to a certain number of tabs. 33:27 It'll align to a grid. 33:31 Demo gods aren't helping me today. 33:32 But right there, there's all four. 33:35 But if there was an odd number, there'd be like three at the bottom. 33:38 And then after a while, actually, it'll start- 33:41 one thing I'm working on, if you have a ginormous number of tabs open, 33:45 it'll start caging it. 33:46 So you'll have a four and then press a button and they'll move over and there'll be the rest. 33:51 Question? 33:52 I was just saying, so you don't have to necessarily complete your project with some 33:56 record code, but you still work on it after, for instance? 33:58 Yeah, you don't have to complete it until then, you know, I'm not getting paid because it's not 34:04 totally completed. A lot of the main things have been done and where it's at now is that 34:16 which supports Mac OS 10.3. 34:21 And then Camino 2 is going to support 10.4, which has new features. 34:26 And so right now it's at the point where this can still run on 10.3. 34:31 But if I want to add newer animations or newer features, 34:35 it has to be in Camino version 2.0. 34:38 So in that sense, there's going to be some changes that we've been branching. 34:44 so that one, we're running on the old system 34:46 and on the new system, but you don't have to complete it 34:49 in the whole period of time. 34:51 I'm still working on it, and I'm still 34:54 staying on it as a developer, just for fun. 34:57 And you gotta take up some more projects, 35:00 more features. 35:01 You're the only person working on this? 35:03 What? 35:04 You're the only person working on this? 35:05 I'm the only person working on this feature. 35:07 Yeah, and so there's nobody else. 35:09 So like, where I said the tab was a feature wasn't, 35:11 The whole idea of having things show up in tabs, show up in previews is my idea. 35:16 The whole design process and how it actually looks and interacts with the user was all 35:22 my, you know, the creative aspect of the other stuff. 35:28 So when you have a project, it's normally the developer has all the control over it. 35:33 There's not really people are going to say, you need to do this. 35:36 It's your project. 35:37 It's actually in the summer of code. 35:39 No one else is actually allowed to work on the project. 35:41 And so, now someone could work on my project, 35:45 but since I'm still working on it, that's not gonna happen. 35:49 But in that period of time, 35:51 you're the only one who's working on it. 35:53 So definitely check it out when Google announces 35:57 the next round, it'll be around, like February. 36:01 Definitely apply if you have the summer free. 36:04 It'll give you a really great experience. 36:05 So, thank you. Speaker 3 36:09 Thank you Jeff and thank you for attending our speaker series this week and next week remember we will have Credit Suzy Holt at 6pm on Wednesday.