12:37:09 #startmeeting 12:37:09 Meeting started Tue Jun 4 12:37:09 2013 UTC. The chair is rebelsky. Information about MeetBot at http://wiki.debian.org/MeetBot. 12:37:09 Useful Commands: #action #agreed #halp #info #idea #link #topic. 12:37:20 Good morning those of you who are here. 12:38:09 Good morning 12:38:36 Some changes to the schedule this morning. 12:38:44 Had planned two 45 minute sessions on tools. 12:38:55 Now - One 45 minute session on tools, one 45 minute session on git. 12:39:22 And maybe we'll even get some food. 12:39:32 #topic TOols 12:39:35 #topic Tools 12:39:52 Here we're not really talking about how to use the tools, but much more about how the tools fit in the culture. 12:40:09 Slide: FOSS Communication Needs 12:40:24 Talk to students about this in terms of building and guarding your professional image. 12:40:30 And how open source helps with all of that. 12:40:40 Interesting characteristics 12:40:47 Most are distributed. Many are globally distributed. 12:41:06 Spread out in many ways - not just by location, but also by times (eg., irregular schedules) 12:41:20 And you need to deal with turnover and inconsistency of activity. 12:41:26 There are people who have bursts of activity. 12:41:29 And you want to have people come in. 12:41:37 Amazingly, all of these are also characteristic of business. 12:41:46 Certainly, turnover is much higher than it used to be. 12:41:54 And businesses are much more distributed than they used to be. 12:42:04 Slide: FOSS Team Communication 12:42:17 Ask students: Given all these challenges, how do they get the work done? 12:42:35 What are the processes and culture? (Get the students to think about things other than the technology.) 12:43:16 Communication that is ... online, decentralized, transparent, both transient and archival, etc. (Archival - Meetboot etc.) 12:43:24 rebelsky: off topic : http://people.biology.ufl.edu/ulan/ 12:43:29 Slide: FOSS Communication Tools 12:43:34 Slide; IRC 12:43:44 Interesting. It looks like clunky chat to students. 12:43:52 A place to explain the process and culture and how it fits. 12:44:26 Meetbot adds some interest. 12:44:54 Peter runs IRC channel for his department. Helps support students who go through the curriculum in different ways. 12:45:00 Holds virtual office hours on the chatbot. 12:45:19 Now there's a community. Students who aren't in his classes still participate in the IRC. 12:45:36 (Whoops ... Holds office hours on the IRC.) 12:46:06 Now writes his own bots for the channel, and students also write with the bots. 12:46:37 #idea (from Peter): Department IRC that gives students a place to hang and to support each other. 12:46:57 #idea (from Peter): Having students write useful meetbots 12:47:10 Silly one IRC confessions 12:47:16 And then run analytics on the data 12:47:40 #link Peter's code is on bitbucket 12:48:13 #idea (from Joanie) Written communication breaks down barriers. If you have text, you don't have to worry about accents and more. 12:48:33 And if you don't speak English, you can use Google translate to get some sense as to what's happening. 12:48:48 Low bandwidth is also important. You can do it any where. 12:49:01 sbenthall: Thanks 12:49:22 And you can just drop in (and lurk). 12:49:28 #info https://bitbucket.org/pbui/bobbit 12:49:45 #link https://bitbucket.org/pbui/bobbit 12:50:01 Slide: IRC Social and Process Impact 12:50:21 Has many of the effects of the nearby water cooler at work. You can hear interesting things by just hanging around. 12:50:33 And then you can contribute. 12:50:41 And you can tap Heidi on the shoulder. 12:51:14 The power really comes from the ability to check in with "real people" in the project. 12:51:36 Remember that some use of IRC is just tradition. "That's the way open source has been done in the past." 12:51:49 Slide; Wikis 12:52:01 Think about the cultural role. 12:52:16 Students have used Wikipedia for years, but haven't thought deeply about them. 12:52:25 E.g., How are they maintained? How do you get info in? Etc. 12:52:43 Cliff K has editing a Wiki page as a first step in getting started with open source. 12:53:02 In case you hadn't noticed, Etherpad has a slider on it. 12:53:34 Slide; Wikis and FOSS 12:53:42 Meets important criteria: Quick publication, Decentralized control, etc. 12:53:50 Slide: Wiki Examples 12:54:35 Note that Media Wiki's Wiki has lots of interesting "how to material" = How to comment well, etc. 12:54:37 #link Why poeple contirbute to wikis https://www.youtube.com/watch?v=WghdsOz9KwA 12:54:45 And the Fedora Wiki gives you lots of examples of an active, technical Wiki 12:54:48 Slide: Blogs 12:55:01 #link Fedora project wiki fedoraproject.org/wiki 12:55:24 In open source projects, 'blogs are a way of how you establish how you are 12:55:39 And the 'blogs of the people on the team help establish the "brand" of the project. 12:55:49 Slide: Blogosphere and Beyond 12:56:06 Need to get students to think beyond the blog as itself. 12:56:22 For example, blog-to-blog links. 12:56:41 In his experience, students (like faculty) don't know that you can subscribe to blogs. 12:56:52 And planets make things even more powerful in terms of flows of information. 12:57:01 Slide: Blog Value for FOSS 12:57:09 Students need to learn that "In an online world, you are what you write." 12:57:33 Some employers even demand access to Facebook page. 12:57:44 But that's becoming illegal (e.g., in Illinois and CA) 12:58:22 #link http://planet.fedoraproject.org/ 12:58:45 Look, lots of people blogging about stuff. 12:59:28 #link http://en.wikipedia.org/wiki/Hackergotchi 12:59:35 And floating heads. Hackergotchi (or something) 13:00:08 Slide; Summary 13:00:34 FOSS communities are large, and they are not magic, but they are often far ahead of industry in how they manage distributed teams. 13:00:45 And keep the framework of "Your professional image matters" 13:01:23 (Sam's note to self: Where does "building your professional image" fit in our curricula? Maybe in the new "Learning from Alumni" class.) 13:01:27 * ruehle what is the name again? 13:01:29 #topic Breakfast 13:01:44 patti: Hackergotchi 13:04:11 rebelsky: things you can make zodbot do https://fedoraproject.org/wiki/User:Rsuehle 13:04:39 #link actually useful zodbot commands http://fedoraproject.org/wiki/Zodbot 13:06:05 #chair rsuehle 13:06:05 Current chairs: rebelsky rsuehle 13:06:21 Aww ... Zodbot doesn't give any snarky messages when someone becomes chair. 13:06:46 d#chair pnutzh4x0r 13:06:51 Whoops. 13:07:06 #chair pnutzh4x0r 13:07:06 Current chairs: pnutzh4x0r rebelsky rsuehle 13:09:43 .chair rebelsky 13:09:43 rebelsky is seated in a chair with a nice view of a placid lake, unsuspecting that another chair is about to be slammed into them. 13:09:50 It does if you use a . instead of a # :) 13:10:29 .moarbacon 13:10:29 Really rsuehle? I'm not giving up my bacon! 13:10:47 Haha, zodbot! I already HAVE bacon! 13:11:36 rsuehle: But do you have the white bread that absorbs all the fat? 13:11:55 That seems like a personal question! 13:12:32 (Just observing the platter.) 13:12:45 .moar whitebreadthatabsorbsallthefat rsuehle 13:12:45 here rsuehle, have some more whitebreadthatabsorbsallthefat 13:13:00 rsuehle: A more serious question. When there are multiple simultaneous conversations going on, how do people keep track of which comment goes with which conversation? 13:13:12 Practice :D 13:13:34 Usually you can kinda figure out who's talking to whom and work it out, and sometimes you have to say, "Wait, what?" 13:14:00 In some meetings, there's protocol to keep it form turning into chaos. Basically when you want to speak, you say "!" and get called on. 13:14:41 I was thinking it might be useful to tag conversations (e.g., with *irc use*) 13:15:03 My bigger problem is how to keep track of where something is happening--I have 37 channels open at any given time. (I just counted.) 13:15:26 What do you mean by tag them? 13:15:27 So, do people do analyses of conversation threads in IRCs? (Maybe that's a questions for sbenthall) 13:16:08 *irc use* For example, I might indicate that I'm in a conversation with this. 13:16:22 *breakfast* Or talk about the wonder of the paper cup scoops like this. 13:16:42 *irc use* Although stars are probably the wrong symbol. 13:17:23 But doing something like that would let me type "grep '\*irc use\*' sillychatlog" to see a conversation. 13:17:42 *irc use* But of course, that prior line shows the difficulty of remembering to type the prefix. 13:19:14 *irc use* Comment from Peter: You can create a new channel by just joining it 13:19:21 *irc use* And once you've created a channel, you probably want to take it over (as moderator) 13:20:19 *irc use* A recent grad who is in graduate school participates in his chat and can give advice on grad school. 13:21:54 *irc use* Peter recommends weechat as a terminal client 13:22:03 *irc use* Or iirsi 13:22:54 Theoretically that's what #topic does 13:22:58 *irc use* Joanie notes that iirsi lets her connect from wherever she is and see a history of what's been happening. 13:23:12 Although it's at the top of a conversation instead of for concurrent threads 13:23:26 rsuehle: But #topic assumes that there's only one conversation going on at a time. 13:23:30 right 13:23:36 irssi + {screen,tmux} + ssh connection 13:23:39 .laugh about simultaneous comments. 13:23:58 #topic More Tools and Stuff 13:24:02 Slide: Release Cycle 13:24:24 Think about it in terms of papers. When is the paper due, the review, the notifications, etc. It happens every year for SIGCSE. 13:24:36 (Or for every other conference) 13:24:50 Software projects are also on release cycles. 13:25:01 And this matters in terms of course planning. 13:25:24 When you get involved in a project, you should check the calendar first. The week of a release is not a week that people will be happy to hear from you. 13:25:28 (Or maybe even notice you.) 13:25:38 .moar bandwidth Drexel 13:25:38 here Drexel, have some more bandwidth 13:26:14 #link example release schedule methodology https://fedoraproject.org/wiki/Fedora_Release_Life_Cycle?rd=LifeCycle 13:26:30 #link https://live.gnome.org/Schedule 13:26:40 Look for freezes. 13:27:01 #link https://live.gnome.org/ThreePointNine 13:27:29 Also sometimes things like this happen (note how many times the dates changed) https://fedoraproject.org/wiki/Releases/18/Schedule?rd=Releases/18#Key_Milestones 13:27:45 Remember that "No more changes can be made" includes "and you've gone through all of the feedback iterations" 13:28:24 There is such a thing as "freeze break" to get something in after, but you'd better have a really, really good reason, and since studnets aren't going to be working on show stoppers, that's largely irrelevant. 13:28:40 (But I also wouldn't want some student to see that somebody got a freeze break and assume they could easily too.) 13:28:50 Note that there are even things like "String Freezes" so that translators have time to change all the strings. 13:30:05 Everyone has freezes 13:30:09 Slide: Roadmaps 13:30:25 Usually on a per-project basis. Listing what they want done before the next release. Sometimes who is responsible. 13:30:36 Sometimes they'll tell you which release that they are targeting. 13:31:00 #slide Upstreaming 13:31:11 Make sure to watch the video that's linked on the slide! 13:31:22 #info Make sure to watch the video that's linked on the Upstreaming slide. 13:31:38 Slide; Development Process 13:31:47 You code until you get stuck. What happens then? 13:31:56 Don't wait a few days. 13:32:00 So track your work and explain what you're doing. 13:32:09 'Blogs are a good way to keep track of what you're doing. 13:32:18 And then when you ask for help, you can give links to what you've been doing. 13:32:43 And you may be done when you report it in. 13:32:51 Since someone may pick it up. 13:34:22 Sam needs to remember that in third generation VCs, it's not "don't check in nonworking code" but rather "don't upstream nonworking code" 13:34:34 Slide: Summary 13:36:19 Side note: Don't forget about pastebins - a place to put short snippets of code. 13:36:52 #topic PasteBins 13:37:05 Typical use: You're in an IRC and want people to see some lines of code. 13:37:14 Copy lines (e.g., errors or whatever) 13:37:17 Paste into pastebin 13:37:19 Put link into IRC 13:37:33 But it doesn't have to be code. It can be any big chunk of text. 13:37:56 DON'T PASTE TEN LINES OF CODE! PLEASE! 13:38:02 hey sam, check my code http://pastebin.com/u2GLsfiw 13:38:34 It can do syntax highlighting and such. 13:38:38 And you can set expiration dates. 13:38:59 camm: I refuse to help you until you meet the GNU conventions for C code. 13:39:36 #topic git 13:39:48 This is about using git to interact with open source communities. 13:39:59 git is unwieldy. Get a book. 13:40:04 git-scm.com has a nice free book. 13:40:10 And other resources. 13:40:44 #info: GitHub has something similar to Pastebin called Gist. E.g. https://gist.github.com/kwurst/5705980 13:41:05 #link http://git-scm.com/ 13:41:25 Okay, we're going to work in the terminal. 13:43:06 Looking at OpenMRS you can see that the source code is at git 13:44:25 Don't do the command yourself (at least not here at Drexel, with the overloaded guest network.) 13:44:43 #link Gnome runs their own git server https://git.gnome.org 13:45:24 Many companies use git, even proprietary software companies. But their repositories are private. 13:45:37 Branches and tags are part of the version control vernacular. 13:46:10 git came out of Linux project so it's very popular. 13:46:39 git tries to do "just the basics" 13:47:13 People who want a bit more perspective on version control can read all sorts of things. 13:47:19 #link http://www.ericsink.com/vcbe/ 13:49:06 We're playing with https://git.gnome.org/browse/accerciser/ 13:49:20 http://www.catb.org/esr/writings/version-control/version-control.html 13:49:21 #link http://www.catb.org/esr/writings/version-control/version-control.html (ESR on Version Control) 13:59:48 (SamR was offline due to the wonders of freechat.freenode.net) 13:59:57 #topic Creating Your Own Project 14:00:04 git init is where you start 14:00:07 Add your files 14:00:13 #link git cheat sheet https://help.github.com/articles/git-cheatsheet 14:00:27 (Note that you only do git init once in a while.) 14:00:34 git add filename 14:01:51 Then you need to commit it in. 14:02:01 git commit -m "Message" (the short version) 14:02:11 (Okay, I'm not going to type all of the git instructions here. Sorry.) 14:02:48 #action Cam should create a page on foss2serve or wherever summarizing his lecture. 14:03:16 #action Joanie and RSuehle should add their deep wisdom to that page once it's created. 14:03:40 * joanie thinks Cam is doing just fine. :) 14:04:26 agreed! 14:04:33 joanie: I also think Cam is doing just fine. But I've observed that you often have a few subtle additional things to add. 14:05:48 rebelsky: indeed. But he's doing exactly what I would do in the order I would do it and saying exactly what I would saying. Modulo the VI thang. ;) 14:05:59 !emacs 14:06:00 pnutzh4x0r: A previous girlfriend of mine switched to emacs. Needless to say, the relationship went nowhere. 14:06:05 s/would saying/would be saying/ 14:06:09 joanie: Modal editors rock! 14:06:35 emacs would not have had that problem. Just sayin'. 14:06:42 And for those of us old enough to remember having to mount a second disk in order to access emacs, knowing vi meant that we could use ex. 14:08:33 Remember that git diff helps you find the latest change. 14:09:12 Danger! git checkout FILENAME will grab the latest one from the repository, overwriting any changes you've made. 14:09:33 Note that all that we've been doing right now has been on the local machine. 14:09:55 Which means that when Cam's daughter throws your laptop in the lake or river, your work is gone. 14:10:03 Needs to go to a server. 14:10:36 WIth your local work, it's often advantageous to do lots of commits. 14:11:07 Try to keep commits small. It makes it easier to keep track of what's been done. 14:11:39 Drexel says we shouldn't have a coffee break. 14:13:00 #topic On to Github 14:13:10 Create a new repository. Make sure to include a README. 14:15:08 Cam's is cmadconnell https://github.com/cmacdonell 14:16:27 Note that it's good to start by making the repository on github, rather than on your local machine. 14:16:58 Note: Write git commits in present tense. 14:17:11 Cam gets irritated if you write in the past tense. 14:17:22 Cam gets even more irritated if you write "This commit does ..." 14:17:38 Remember that git commit is local. How do you share it with the world? 14:17:51 The repo you clone from is called the "origin". 14:19:10 You need to sync your local version with origin. 14:20:16 So you push it upstream to the origin 14:20:22 Command: git push origin 14:22:03 how does git push know where to push to? how does it link to github? 14:22:19 #link Eric Sink on the airplane example http://www.ericsink.com/vcbe/html/dvcs_disconnected_operation.html 14:22:41 lorip: When you cloned the repo it created an invisible file that says where the master is. 14:22:51 You can also name other repos and push to them. 14:24:07 lorip: You'll often find that when you push it, you'll get prompted for an account and password. (Well, you can configure that away.) 14:24:27 ok - I'm missing a piece of how this works - if I clone on my local machine - it knows the original source, but I don't want to push back there, I want it to my github account - how does this work? 14:25:18 Yay! github does changesets rather than the wonder of "move is remove/add" from 2nd gen version control systems. 14:26:07 lorip: u can specify the remote target inplace of origin 14:26:22 I know someone will correct me, but here's my model. Suppose that I'm using Ushahidi. I make a clone of Ushahidi in my github account. I then clone my clone onto my local machine. I make the changes on my local machine. I push to my github copy of Ushahidi. 14:26:35 Finally, if what I've done is useful, I push it back to upstream. 14:27:10 lorip: Did one of our answers help? 14:27:39 thanks - I was missing the piece of cloning to my github account and then cloning again to my local machine - that makes sense! 14:35:29 (Whoops ... SamR got distracted making organizations and didn't take notes.) 14:49:00 Feels like the attack of the clones in here (ba dum dum) 14:50:43 IMportant command: git format patch master 14:51:19 #topic OpenSource.com 14:51:32 Started out staying away from code. 14:51:39 Opensource.com is a great way to publish your thoughts on FOSS 14:51:45 Look ... there's even a channel for education. 14:51:52 And look! We can contribute to OpenSource.com 14:51:56 And also a great source of material to be used in class. 14:52:17 There used to be a massive timeline. Ruth will send it to you. 14:52:47 Open source is a culture ... not just a way to develop code. 14:53:30 There's a "Submit an Article" link. It may sound a bit intimidating. But don't worry. It's mostly to give them a way to filter "the weird crap". 14:53:47 As long as we can write complete sentences (and interesting stuff) she'll pretty happpy. 14:54:04 And you can email her: ruth@redhat.com No need to figure out whether u comes before e. 14:55:58 They even post a summer reading list. 14:56:20 lorip: Here's a cute little intro to different VCS activities: http://www.ericsink.com/vcbe/html/basics.html 14:56:34 (I like it more in the PDF, but, this is ok.) 14:56:39 Question: Who reads this? 14:57:00 It's an evolution of RedHat magazine. 0.5+ M users. 15:00:19 s/users/email subscribers -- not the same :) 15:00:41 I guess what I didn't quite finish saying was that it started as a largely technical audience but has evolved and grown to open-other-things people 15:05:09 Sharing work is hard. 15:05:16 Often doesn't get credited by the institution. 15:05:22 So you have to think about it in terms of service to your community. 15:05:32 And not just "I'm not sure that my assignment is good enough." 15:05:37 We need to be more open. 15:05:44 And we also live in a world of peer-reviewed publications where we want everythi ng to be finished and done. 15:05:49 This is a tough nut to crack. 15:05:59 There have been a variety of projects to get faculty to share their stuff. 15:06:10 And they haven't been very successful. 15:06:16 But it's useful. 15:06:21 And it fits within the FOSS community. 15:07:07 Swenet or whatever has assignments with some comments (using word comments) that explain to students what goes where. 15:07:14 And Greg knows that it gets used. 15:07:40 If you're lucky, it becomes a community. You get comments on what has and hasn't worked with an assignment. 15:08:06 (Sam is sick of getting kicked off of webchat.freenode.net) 15:08:22 Slide: Defining Learning Activities 15:08:33 Putting it out there helps. 15:08:36 But it also helps to have additional stuff there for those who might adapt/adopt. 15:08:58 So they have a template. It's a checklist. 15:09:12 Like many checklists, it helps the author think about this. 15:09:30 But the checklist is also potential metadata, so people can search on it. 15:14:35 We're doing some brainstorming. 15:14:50 We're going to use Darci's CS2 as an example. 15:15:25 http://xcitegroup.org/softhum/doku.php?id=f:50ways 15:15:41 Open source is a way to help address "Why are we learning stacks and queues and ...." 15:15:48 She'll be working with the OpenMRS projects. 15:15:59 Her hope is to find existing code that exemplifies the topics they teach in CS2. 15:16:18 Can she then ask students to evaluate those sections of code. 15:16:39 Maybe even an opportunity for them to document. 15:17:24 What are things we can commit back to the community as a class? 15:17:33 (Comfort of acting as a class, rather than as individuals.) 15:19:11 Sam's suggestion ... playing with a data feed. 15:19:23 They may not be able to contribute back too much, but perhaps feature requests and bug notes. 15:19:35 Cam: You can't expect much more contribution than that from CS2 students. 15:20:01 But manipulating the data that comes from the data feed provides ways to explore some of the key ideas of the course. 15:20:41 In terms of pulling out pieces (back to Darci's idea): You want to pull out the right amount. You don't want them to feel overwhelmed. (Or at least not too overwhelmed.) 15:21:10 Does making them too overwhelmed make it more like a weed out course? 15:21:27 At some point students need to understand about large systems. It helps motivate revision control systems and such. 15:21:49 Scaffolding is important. 15:22:43 How do I know what's the right piece? Greg's hope is that the groups we have here will be a good source. 15:23:18 Question (to Darci): Would you keep using the same code each year, or would you look for new ones? 15:23:35 Answer (I think): Continue to use the same code ... it's going to take awhile to learn. 15:24:28 Patti, Stoney, and Peter were talking about CS1/CS0. 15:24:42 At that level, it's hard to get them to contribute. But you can talk about methodologies and tools. 15:24:57 Gives opportunities for other things, such as peer review. 15:25:23 Or an assignment in which there are multiple iterations. You have to commit something each week, but the final product is not due until week three. 15:25:32 And there's feedback along the way. 15:26:33 Issue of motivation. (E.g., why do you need a portfolio? when you graduate, what do you want your portfolio to be?) 15:26:49 Is it reasonable to get them thinking about that, and how do you get there? 15:27:11 Question for students: How far does your coursework get you? And what does that mean about what you have to do beyond coursework. 15:27:30 Motivation of assignments. Open eyes to a whole new world of things. 15:27:57 Learning objectives are motivational, rather than technical. Help them understand their field. 15:28:53 Where are we going to find the examples for Darci and company? 15:28:56 That's a great thing for us to share. 15:29:53 Greg: What's the difference between requirement spec and design spec 15:30:14 You have to be clear on the difference. 15:31:32 Different courses? 15:31:58 sbenthall is teaching a course to master's students in the iSchool (Berkeley) about open source communities. 15:32:04 Fulfuills "management requirement" 15:32:41 #link The Architecture of Open Source Applications http://www.aosabook.org/en/index.html 15:32:58 Would that help with any of Darci's stuff. (It's not one project, but many.) 15:33:09 (And I don't know how deep the analysis is.) 15:33:32 Back to sbenthall's stuff: The students will participate in communities and report back on the community. 15:33:42 He's happy to share the final papers (projects?) with us. 15:34:53 Note: FOSS is also now a research opportunity for people (questions of how projects are developed, etc.) 15:35:16 E.g., mining software repositories. 15:35:37 sbenthall: hmmm what if we made a badge system for foss 15:35:46 so like klout but for open source contributions 15:36:00 you could data mine mailing lists, irc logs, planets, etc. 15:36:09 bug trackers 15:36:11 #topic DataKind 15:36:16 pnutzh4x0r: Like Mozilla's badge program? 15:36:30 right 15:36:48 #link http://datakind.org/ 15:36:53 "Using data in the service of humanity." 15:37:07 Provides an opportunity for certain kinds of hackathons. 15:37:15 People tend to navigate to those with similar skillsets. 15:37:20 Programming teams of 3-5. 15:37:59 heidie: mozilla badge is more about learning or measuring skills 15:38:22 im thinking more like klout: http://klout.com/home 15:38:31 which measures your influence 15:38:38 in this case it would measure your contribution 15:38:43 They tend to be in big cities. 15:39:09 (just to be clear, I'm staying on the DataKind thread, rather than the badge system) 15:39:41 Random hacks of kindness, driven by data rather than by software. 15:39:58 pnutzh4x0r: Doesn't GitHub and/or Ohloh do something like this already? 15:40:06 Greg likes to keep throwing things out to see if we're interested in things. 15:40:12 #link http://spaceappschallenge.org/ 15:40:17 some ideas for a hackathon ^ 15:40:41 heidie: but this would integrate all forms of contributions, or that would be the idea anyway 15:40:58 pnutzh4x0r: great idea. I think that's what Ohloh tries to be. I wonder how open their contributions are? 15:41:38 #topic Misc. 15:42:04 Colorado has a degree in "ICT in Development" (e.g., in developing nations). 15:42:05 pnutzh4x0r: one problem is heterogeneity between projects. scraping the software repositories is one thing, but a lot of participation is often on external infrastructure (mailing lists, plants, blogging) 15:42:21 Greg has started to talk to them about the use of open source software (which sounds like it wasn't on their radar) 15:42:34 sbenthall: that's the challenge :] 15:42:35 pnutzh4x0r: I hear that Mailman 3.0 is under development I've been thinking of asking them about how to make it easier for external instrumentation 15:43:35 Today's guest: Tim S. He's a librarian. He pays attention to the various stuff that's happening in the iSchool. 15:43:47 pnutzh4x0r: there's also a metrics-wg@theopensourceway.org list where they talk about this. There's a project that gets into this already for scraping from e.g github 15:43:56 What do you do when you have a community that needs something, but no obvious open-source solution. 15:44:16 #link http://metricsgrimoire.github.io/ 15:44:20 And a different model: MouseTrap. 15:45:00 Sam wishes that IRC was better threaded (either by design or by common usage) 15:45:10 pnutzh4x0r: see also openstack's new dashboard 15:45:11 #topic Our Lunch Speaker 15:45:13 #link http://activity.openstack.org/dash/browser/ 15:45:31 Before being here, he was a corporate librarian. "Special Libraries Association" 15:46:05 This group really knows their internal customers well. 15:46:26 pnutzh4x0r: a lot of the metrics work has been driven by the hackers, I believe. I hadn't heard of much academic work on the subject; partly because I think it's hard to really formulate a problem statement 15:46:31 (Like all librarians, they know about moving data around.) 15:46:43 He was a member of the Emergency Preparedness and Recovery Council. 15:47:09 sbenthall: i guess the questions would revolve around the social network 15:47:31 "We are not an open source community by any long shot." 15:47:48 But they want their services to be available where they are useful 15:47:52 sbenthall: you could also ask questions like how active are the core developers on the bug tracker or mailing list? 15:48:09 So how do you make the membership list available. What kinds of requests come up in times of emergencies? 15:48:42 "What if all 10K of us could sign up to be accessible for emergencies." 15:49:00 Some of the requests are obvious: I need this document. 15:49:25 Some of it relies on particular expertise: How do I get 100 tractors (or whatever). It's likely that the librarian at certain companies would know this. 15:49:52 Idea; Make the member database available as a gated community. (Available to selected folks, and maybe to research community.) 15:49:55 pnutzh4x0r: To what end though? I'd guess for most projects, people know who the top developers are. 15:50:21 He's interested in seeing if we want to collaborate on how to make the data available. 15:50:36 pnutzh4x0r: one idea is to track what happens to new contributors. We could compare across projects and see what happens when somebody new shows up. That could be useful for evaluating HFOSS projects for suitability in an educational context 15:50:46 And they are good representative of professional organizations that want to make their services available. 15:51:30 sbenthall: well it's not about who the top devs, it's about how connected are they to the community, how often do they interact through the open channels 15:51:40 pnutzh4x0r: an across-project study might be more interesting than a within-project study. 15:51:45 sbenthall: i think tracking what happens to new contributors would be a good idea 15:51:46 pnutzh4x0r: oh, I see. yes, that is interesting 15:51:48 It's clear that they're at the requirements phase. 15:51:57 sbenthall: i also see cross-project studies as good too 15:52:14 sbenthall and pnutzh4x0r: I look forward to reading about what you find about projects and their reactions to newbies. 15:53:10 pnutzh4x0r: most activities in an open source project are power law or at least heavy tail distributed. I've had a hunch for a while that the exponent of those distributions is a significant feature. it would roughly correspond to the bus factor 15:53:14 only smoother 15:53:45 sbenthall and pnutzh4x0r : Google tells me about http://research.engr.oregonstate.edu/hci/sites/research.engr.oregonstate.edu.hci/files/papers/kuechler2011joining.pdf 15:54:08 New coffee! 15:54:41 #topic Another Model 15:54:58 Alan Tucker was an external evaluator on one of the Ellis et al. projects. 15:55:05 he decided to adapt these ideas. 15:55:05 thanks rebelsky 15:55:19 His model: We'll build something for a local organization and then release it as an open source project. 15:55:33 The project was for a Ronald McDonald House 15:55:39 And it's starting to have a user base. 15:56:04 Maybe the Ronald McDonald House thing will become a community in foss2serve 15:56:17 Greg wants us to think beyond the mainstream model of "let's all work on Sahana" 15:57:34 Camm: How about taking the librarians data and automatically incorporating it into Sahana in terms of geographic location or some such? (E.g., an emergency happens in X ... organizations automatically get posted) 15:57:44 rebelsky: good find 15:59:25 sbenthall: rebelsky they used manual reviewing though... im suggesting machine learning, which is more challenging 16:02:33 Heidie wants to know who fuzzybunny is. 16:03:50 SamR, who is horrible at names, wants pictures associated with tags. 16:04:10 Sorry, that was "pictures associated with usernames." 16:04:29 #endmeeting