An example of learning in Fedora
I wanted to call this out as a rapid - but typical - example of a learning experience in the Fedora community (and more generally, in open source). These conversation snips were only a few seconds long, each line immediately following the next. It's not planned; this isn't a special "teaching night," we're just trying to get something (making an authentication plugin work for a content platform we're deploying). I play the role of the new apprentice in these particular exchanges. Total amount of time for both conversations: maybe 30sec. (My logs don't have timestamps, so I can't be exactly sure.)
It's the kind of conversation that's completely normal to us (good litmus test: Fedora folks, look at the logs. Do you find them boring and not particularly out of the ordinary? Okay. Then look at the list of things I learned from those snippets at the bottom of this post.) but, in my opinion, one of the things that makes open source communities so <shameless plug> fascinating to researchers </shameless plug>. It's in these many tiny rapid conversations and just-in-time course corrections that keep us immersed in an environment where we're continually nudged onto The Right Path, which is in large part learning how to teach ourselves to do things and figure them out. The kind of thing school ought to be.
Snippet #1
<ke4qqq> mchua: itbegins: I need to bail - the srpm I posted should be good - I have a koji build - but am out of time to get it installed and test http://koji.fedoraproject.org/koji/taskinfo?taskID=1669749
<mchua> ke4qqq: thanks, david - I'll stick your last note on the ticket so we're updated
* mchua is falling asleep over the keyboard and needs to crash soon
<itbegins> I don't suppose there's anyone hanging out in the channel who could take on the installation task? :) I'm still not packed :-
<mchua> itbegins: I'll stand here and try to find someone. You should go pack.
<mchua> mmcgrath, abadger1999, ricky, G_work, mdomsch: can someone either help us install and test a srpm on pt6 (for Fedora Insight) or walk me through how to do it so that I know how in the future?
* mchua is staring at http://koji.fedoraproject.org/koji/taskinfo?taskID=1669749 and isn't quite sure what to do here.
<mdomsch> mchua, click the green buildArch line
<mmcgrath> mchua: then find the link
<mdomsch> at the bottom of that next page
<mmcgrath> on the pt servers you can just install the unsigned package
<mmcgrath> so then a rpm -Uhv 'http://koji.fedoraproject.org/koji/getfile?taskID=1669750&name=zikula-module-fedora-fasauth-0.2-2.el5.noarch.rpm'
* mchua does so
Snippet #2
<mchua> mdomsch: ok. is there a way i'd be able to check whether that's done without having to ask ke4qqq ? (for future reference)
* mchua may be asking nonsensical questions. new to this.
<mdomsch> mchua, not really
<mdomsch> all questions are good
<mchua> mdomsch: hm, I guess I could yum info zikula-module-fedora-fasauth on pt6. *checks* ...that sort of works, for some cases
* mchua reckons that's good enough
<mdomsch> it won't tell you about koji builds
<mdomsch> it'll tell you info about what is available
<mchua> mdomsch: but it'll tell me what repo a package is in if it isn't installed, which is what I was trying to find out ("is $foo in epel-testing, or do we need to get $owner to run $something")
<mdomsch> mchua, indeed; but there's going to be some delay...
<mdomsch> ke4qqq has to do the build
<mdomsch> and make update
<mdomsch> then dgilmore needs to be awake to sign the package and push it to epel-testing
<mdomsch> then it needs to get synced out
<mdomsch> so, it'll happen, but the process tends to take a few hours or days depending...
<mchua> ah, okay, so I can't apply the contrapositive here.
<mchua> (since "if ke4qqq has done make update, it should show up in epel-testing" isn't true; it's a necessary but insufficient condition)
Partial list of things I learned from the conversation snips above
- people build srpms in koji, and you can find them in places like http://koji.fedoraproject.org/koji/taskinfo?taskID=1669749
- after an srpm is posted, it needs to be installed and tested
- it's ok/normal/expected for someone to clearly drop a task so that somebody else can pick it up
- publictest ("pt") servers can install unsigned packages
- how to navigate koji to install an rpm that isn't yet in a repository
- all questions are good
- yum info $name-of-module will tell me (among other things) what repo that module is in, if that module is not installed (notably: I figured this out myself by spending a few seconds poking around things)
- built-in-koji-and-updated and available-in-repos are not the same thing; there's a lag due to manual approval being needed from dgilmore, and then another lag to sync it
Imagine the same lessons laid out clearly in textbook format, and how long it would take to teach that lesson (and how boring it would be, and how much I would probably care). It's a lot. And it's all in context. And it's all immediately applied to something that you can immediately and publicly demonstrate results for. And that is why learning in open source communities is so dang powerful.