Hi Mark, Thanks for getting back! I’m sorry for the delayed response, I’ve been traveling for a conference. I will take some time to write a longer message later, but I didn’t want have silence in response to your message!
Thanks for the pointers—and for the warning about context. I think that is part of what I want them to get out of this component of the course: a sense of the complexity of real code. They will be also doing a sequence of more digestible assignments (of my design) in parallel. I should have some time to sit down and do some browsing when I get back from this trip. I’ll circle back then! Thanks and best, Matt > On Nov 17, 2019, at 5:24 PM, Mark Hammond <[email protected]> wrote: > > Hi Matt, > Thanks for reaching out - your course sounds like an exciting way to > get real-world experience for your students and is something we'd love > to help you where we can. > > We certainly do have a backlog of low-priority work. While we do make > some effort to flag "easy" issues, we don't really end up with many that > truly are easy. As a result, I'd expect many of the items in that > backlog probably aren't really suitable for somewhat "casual" > contributors - but we'd be happy to help you determine what you think > might be OK for your students to tackle. > > This team has 2 broadly defined efforts which might be suitable: > > * "Application Services" is our effort to implement syncing and Firefox > Accounts related services for Firefox products in Rust, with the aim of > using these components in all our mobile and desktop products. This work > is done in https://github.com/mozilla/application-services, and > interesting labels to get started with are "good-first-issue", > "good-second-issue" and "cleanups" > > * Sync/Firefox Accounts in Desktop Firefox. Desktop Firefox is our > "bread and butter" and has a sync implementation written in javascript. > It's pushing 10 years old so has a fair bit of cruft. Over the next few > years we intend moving the rust components into desktop, but planning is > just getting underway for that - and in the meantime we need to keep > Desktop humming along. Issue tracking for this is done in bugzilla - see > [1] for a very long URL :) We do have a keyword "good-first-bug", but > there are only 2 bugs in that category. We consider any bug with a > "mentor" set to be a "good second bug" - there are a handful of them - > see [2] > > Many of the issues you'll find will require a fair bit of context to > make progress on, which may test the patience of both your students and > you! However, if you have a poke around and can find some issues which > you think are suitable, then we'd be happy to help support your efforts. > > The other members of the team might have additional thoughts or ideas - > hopefully they will chime in if they do! > > Communicating with us via email is fine. While slack is probably better > in many ways, there's a bit of a process involved - > https://wiki.mozilla.org/NDA-Slack has some of those details. I guess it > depends on how many hoops you are willing to jump through! > > Let us know how we can help further. > > Cheers, > > Mark > > > > [1] - all desktop sync and fxa bugs: > https://bugzilla.mozilla.org/buglist.cgi?component=Firefox > Accounts&component=Sync&product=Firefox&resolution=---&classification=Client > Software&classification=Developer > Infrastructure&classification=Components&classification=Server > Software&classification=Other&query_format=advanced > > [2] - desktop sync and fxa bugs with a mentor set: > https://bugzilla.mozilla.org/buglist.cgi?list_id=14992010&resolution=---&classification=Client%20Software&classification=Developer%20Infrastructure&classification=Components&classification=Server%20Software&classification=Other&emailtype1=regexp&query_format=advanced&email1=.%2A&emailbug_mentor1=1&component=Firefox%20Accounts&component=Sync&product=Firefox > > > On 14/11/2019 9:49 am, Lang_Matthew wrote: >> Hi Application Services team! >> >> Elise Richards suggested that I reach out to you about a possible >> collaboration. >> >> I’m a professor at Rhodes College: a small, selective, undergraduate-only >> institution. This coming Spring I’m teaching an upper-level software >> engineering course. >> >> I’m curious whether your team would be interested in having my students >> contribute. >> >> Ideally I would like to partner with a team that has a backlog of >> low-priority feature work, bugs, tech debt/janitorial work, etc and wouldn’t >> mind some attention to clearing some of it. >> >> I want this to be as low-effort as possible on your engineering team; I >> would take responsibility of being a filter between students and you (to the >> degree you desire). I have experience in industry—I was at Google for 6 >> years prior to this fall, where I was TL of team building distributed data >> processing tools. >> >> Let me know if this is interesting your team; if so, we can start talking. >> I’m happy to VC if you want to chat in person, otherwise email/IRC/Slack >> would be fine. >> >> If we go forward, my goal would be to invest in ramping up to be a >> contributor over the next few months so that I am in a position to make sure >> your team’s velocity isn’t affected by interrupts. >> >> Let me know if there’s any interest and any questions you have! >> >> Thanks and best, >> >> Matt Lang >> Assistant Professor of Computer Science >> Rhodes College >> >> >> >> p.s., A little more info: My goal for the course is to have students come >> out of the course understanding the process and reality of real-world >> software engineering. I want my students to gain the process skills that are >> necessary for building real-world systems: deep debugging, integration >> challenges, testing and deployment, configuration management, etc. >> >> The class is 25 juniors and seniors with C++ experience. I had a similar >> demographic in a distributed systems class and got them ramped up to Go >> pretty quickly; I would image that Rust wouldn’t be a barrier. I would be >> dividing them into groups and overseeing them, and would filter any >> interrupts that would come to you. >> >> Here’s the course description if you are interested: >> >> "The software systems we often find the most useful and magical are also the >> largest and most complex to build and understand. In order for these systems >> to be reliable, maintainable, and secure, they must be built according to >> disciplined and well-founded methods. This course examines these >> methods—both in the large (defining requirements, system design, >> architecture patterns, software process, etc.) and in the small (version >> control, testing, benchmarking, code review, etc.). At the same time, >> students will engage in the construction of a large software system or >> feature." >> _______________________________________________ >> Sync-dev mailing list >> [email protected] >> https://mail.mozilla.org/listinfo/sync-dev >> > > > > This email was sent from a non-Rhodes email address. > Please do not click links or open attachments unless you recognize the sender > and are positive the content is safe. _______________________________________________ Sync-dev mailing list [email protected] https://mail.mozilla.org/listinfo/sync-dev

