#possesa Fri: 5 minutes of improvisation

October 8, 2010 – 10:40 am

Working backwards through POSSE South Africa – these posts are going to hit all out of order.

Today was our final day: as part of this, viagra approved Tayo asked me during a coffee break how I (as an experienced contributor) would get started with an unfamiliar project. We called the now-caffeinated professors together, threw my laptop on the projector, had Grant set a countdown timer for 5 minutes, and called out for a random project. “Sakai!” called Boniface. “That’s… an open source project somehow related to education, and… that’s… all I know about it!” I responded, and we all agreed these waters were sufficiently unfamiliar to me to be a fair test.

Grant hit the timer, and off I went. Note that this is a recreation of my steps, retraced a few hours later, with a summary of the “thinking out loud” annotation I gave verbally in the classroom as I went through it, with the addition of two things: (1) the source code, which I didn’t find the first time, and (2) the licensing, which Jan suggested afterwards as something I had forgotten to check (and yes, he’s right, it is important).

Start the clock!

Minute 1: what’s the project? where are the people?

  1. google: sakai – okay, that first result sounds like what I’m looking for, it mentions “education” and “distributed as free and open source software.” That’s probably the homepage, which is what I’m looking for eventually. Open that in a new tab, look at it later, because first I’m going to…
  2. google: sakai irc – aha, “freenode.net /join #sakai” – I throw open my IRC client (irssi, running in screen) and join the chat channel to start lurking and letting the conversation (if there’s any conversation) go by, noting at a glance that there are very few people (around 12) in the channel and that I’m not likely to overhear much. All right, minimizing that window, looking at it later, and moving on to…
  3. google: sakai mailing list – I find the project’s mailing lists (first hit), note there’s a list called sakai-dev that’s “RECOMMENDED for designers, programmers, developers, and quality assurance,” go “ah! I’m a developer!” and click through to the list page and the archives, looking at this month’s postings. BINGO. I’ve found the people. The conversation is thriving now, it’s active now, it looks like there’s a lot of high-quality discussion now, I can pick out a few topics of interest (“ooo, maven!” “there’s a QA meeting tomorrow?”). Note that I don’t actually read list messages now, though I could – what I’ve been looking for is what means of communication this project uses so I know where to ask for help later on.This project is alive. That’s good. I’ve found the places people hang out, I know how to get in touch the moment I have a question I can’t answer. Let’s move on and find about the project itself.

Minute 2: what can I learn from the homepage?

  1. I head back to sakaiproject.org, still trying to figure out what the heck Sakai is. Ah, it’s “an enterprise teaching,
    learning and academic collaboration platform,” according to the front page. Still a little hazy, but the fancy graphic design and professional-sounding wording on the front page indicates to me that this project has polish, probably momentum – there’s mention of a conference, a merger, awards, etc. on the front page, which indicates to me that this project is probably professional-grade – used in live deployments by customers, probably with companies that make a living in the Sakai ecosystem by supporting it. (This is good news if I think I’d like to work on open source for a living down the line; being a good contributor to this project could make me quite employable.)
  2. I’m still not sure what Sakai is, though. I head to Project > Project Overview, and am told that you can manage courses with it, that many institutions do deploy it, and hey, look at the features. Okay, it’s online collaboration for schools. Got it. Or at least I understand it at a basic enough level to move forward. Now where do I look for the contributor community?
  3. I look at the support drop-down menu and notice that community and commercial support is available – cool, but I’m still looking for the contributor community. Aha! Community > community overview gives me… no, it gives me maps and a shiny description of how awesome the community is. Not what I’m looking for yet, though someone who’s never contributed to FOSS might find this page reassuring.
  4. Community > contributing to Sakai – there, now we’re talking. Hey look, I found a wiki, which is usually a contributor community homepage hub. Awesome. I want to make technical contributions, so I click on Building Sakai. BINGO! I’ve found project teams, developer docs, work in progress… and yep, it advises me to look at the email list as “the place to be,” but I’ve already figured that one out.All right. It’s pretty mature, it has a focus, it has a development community with useful getting-started resources. I can do this. Next: where’s the code?

Minute 3: where’s the code? what’s it written in? what does development activity look like?

  1. I’m looking for the source code repository of Sakai. Can’t immediately find it from the “building Sakai” page, so I google: sakai version control. Aha, the 4th hit has it: get the source code. Looks like they use SVN for version control – I don’t really care, so long as they use some form of version control, though I’m going to have to look up the specific syntax for SVN later – and I could start a checkout now if I wanted to, let it run in the background while I do other things.
  2. I want to dive into the code, see what it looks like. Let me look at the trunk, which is the main branch; other branches might be experimental, or in other ways “not the central location for what developers would consider the most recent version of the code in progress.” Whoa. It looks huge. This is a massive codebase. What’s it written in? Where can I get more stats quickly, because I don’t have the time (or honestly, the skill) to understand things quickly just by looking at a zillion files?
  3. I head to ohloh and search for ‘sakai,’ which quickly points me to sakai’s project page on ohloh. 
  4. I click on code analysis and suddenly have a lot of useful info. It’s mostly written in Java, which… okay, I’ve never written production Java code before, only tinkered a little with in high school, this might have a learning curve for me. I don’t really know Javascript. I do know HTML, I could potentially help with that. Generally, these technologies seem useful, things I know, can learn, and want to learn, so all right.
  5. Scroll down, look at the lines of code analysis – seems to be thriving, changing over time, good stuff, all right.This codebase seems like it’s got reasonably healthy activity. The actual structure of the code, I’ll have to wait until I can read more developer docs and more actual code, but with this much activity around it, the project’s probably either in decent shape or rapidly moving towards it. It’s not a guarantee, but it’s a probability – projects without clean code architecture tend to not be able to build that active of a dev base (not to mention commercial support services!) so I’m feeling pretty good about this.

Minute 4: how is this licensed?

  1. It does no good to get invested in a code project unless I can legally use it – and my code – for things I want to do later on, so back we go to the project’s ohloh code analysis page to look at the license, and… what the heck is the “educational community license” most of its files are licensed under? I’m not a lawyer, so I want to do more than read the legal text.
  2. First question. Is it an open source license? The OSI says yes. That’s good.
  3. Is it a Free Software license? The FSF says no. [Update, 15 August 2013: The new version of Sakai is licensed under a new version of the Educational Community License, which the FSF does approve as Free Software. Thanks to Richard Fontana for the news!]
  4. I hit up Wikipedia’s comparison of free software licenses and decide that – for me, right now – the Educational Community License is good enough. It’s OSI-approved so it’s got the basic open source “license features” I personally care about, it’s also okayed by Fedora which is my favorite distribution, so I’d be able to package (or if it’s already packaged, easily deploy) Sakai there. Cool.Note that this may not be okay for someone else – if you care about the code you work on having an FSF-approved license, you might decide to find another project. That’s totally all right – it’s about personal preference, it’s about making sure you can do what you want to do with your code, that other people have the freedoms that you want them to have regarding your code.

Minute 5: how do I set an instance up so I can start playing around with what this software does?

Blackboard integration screenshot from a collection by Jim Pease, uploaded to the Sakai wiki

  1. Back to the wiki – this time, I want to look at deploying Sakai, because I want a local instance up and running. Look at these instructions, see if they’re sane… great, there’s stuff here like release documentation, sysadmin guides – it looks like there are clear directions I can follow, step-by-step, to get my own test instance going. I’m not actually doing the installation now, I’m just making sure I can find the resources to do it later.

At this point I look back at the IRC channel to see if there’s been activity in the last few minutes (nope) and survey my open browser tabs; I have lots of information about the project at my fingertips, I know how to begin navigating it, and at this point I’d probably head for the bugtracker and try to find a first ticket to dive in on, knowing where the developer docs are (they’re on the wiki) and where to ask for help if I get stuck (the mailing list).

Aaaaaand… time.

What did I miss? (If you’re from Sakai – how off are my impressions, and what resources do you wish I’d found?) What would your own 5-minute dive look like – on this project or on any other? Comments welcome – the objective of this exercise was to show a “think out loud” from an experienced FOSS contributor, with the caveat that every contributor thinks differently, and that every contributor comes up with their own way of doing things as they go along.

Know someone who'd appreciate this post?
  • Print
  • Facebook
  • Twitter
  • Google Bookmarks
  • email
  • Identi.ca
  1. 19 Responses to “#possesa Fri: 5 minutes of improvisation”

  2. Mel, this is great! It’s kinda like what I did back in 1987 when I started working on GNU, except there was no web, no graphics, and no OSI. But otherwise, just the same, in that when I read the GPL, I was convinced that it was safe for me to hack.

    By Michael Tiemann on Oct 8, 2010

  3. Hey Mel, you misread the FSF page there. They mark the Educational Community License 2.0 as Free, it is just GPLv2 incompatible (I suspect it is GPLv3 compatible, although, I’ve never checked it for that specifically, but it is similar enough to Apache 2.0…).

    Fedora wouldn’t list it as okay if it wasn’t a Free license. :)

    By Tom "spot" Callaway on Oct 8, 2010

  4. Wow… getting roughly that far has taken me months for Teaching Open Source. Excellent example on how to get involved.

    My question as a non-software type(yet) is how do I go from this awesome information, how to get involved, to “Here’s something I can do this afternoon to help.”

    By Andrew Hamblin on Oct 8, 2010

  5. Hey Mel,

    I really enjoyed that — I’m a hobbyist “programmer”, keen to get more involved in FOSS. But I have found the entry barrier quite high — and the information out there somewhat bewildering. This post makes it all seem much more straightforward!!

    I’m enjoying your blog — best wishes with everything!

    By Duncan Mortimer on Oct 10, 2010

  6. Idea for a non-developer: look for the project’s name on http://openhatch.org/ ?

    By Sumana Harihareswara on Oct 14, 2010

  7. Acquire ordinary 3d stickers or even decide on other things who have glues backside. At art retailers you’ll find artificial jewelry, little decorative mirrors, or even Animations 3d stickers that are almost all glues. It is a low-cost art that will allow boys or girls to experience a excellent time.
    salomon hiking boots for women http://www.trailrunningmall.com/2016-designer-y90147-salomon-snowcross-cs-mens-shoes-black-grey.html

    By salomon hiking boots for women on Dec 16, 2016

  8. You can even choose the more costly alternate options. Platinum as well as Titanium are usually hypo-allergenic however are more costly because of their excellent quality. They are often far more dull than rare metal on the other hand ease in fact generates a quiet entice your personal style. Plus they look good combined with your own neutral or fundamental shaded fits. In case you desperately want comfortable jewelry just like rare metal, choose18kt as well as 22kt rare metal.
    under armour net worth http://www.sohiking.com/online-discount-under-armour-curry-1-men-black-white.html

    By under armour net worth on Jun 6, 2017

  9. Avoid the filthy pair of hosiery. Sweating consumed by the hosiery will build up germs that causes stinky odor on your ft and also the sneakers. When you have by now used in which pair of hosiery, after that use it from the laundry washing holder and obtain a new newly cleaned pair.
    pattini salomon http://www.trailonfoot.com/acquista-online-scarpe-uomo-salomon-vendita/presa-salomon-speedcross-3-cs-nuovo-arrivo.html

    By pattini salomon on Jun 10, 2017

  10. Figure out the basis of the problem. Exactly why do you’ve stinky sneakers, initially? Possibly the feet are the problem. In that case, you must cure this dilemma. Clean the feet carefully making use of unique soap to the toes. Use toes ointment and also to ensure that it stays sensing refreshing. Foot powdered may additionally aid in maintaining your toes sensing refreshing.
    new balance 813 http://www.ifindwholesalers.com/discount-new-balance-m990hl-unisex-classic-running-shoes.html

    By new balance 813 on Jun 23, 2017

  11. Experts employed positron release tomography (Puppy) to think about the syndication regarding chemical substances from the minds regarding volunteers. Individuals ended up 12 cultural users as well as A dozen healthful manage subjects. Girls considered cultural users usually take in Ten in order to Of sixteen beverages each week, as well as heavydrinking men routinely have Fourteen to 20 beverages each week. Those invoved with the manage team ingest less than 5 beverages each week amongst females, and seven beverages each week amongst men. In the large users, a single ingest results in the discharge of extra opioid from the orbital frontal cortex and the nucleus accumbens two parts that will lead to compensate.
    Superstar http://www.rosser-sav.com/cheap-superstar-boost-sns-cblack.html

    By Superstar on Aug 6, 2017

  12. Put on a little top. Perhaps the biggest part of a 60s seem has been the particular well known little top. The idea quit tiny to wear, mainly because it has been typically small and also tight. Discover a little top or even outfit that will is located with regards to 810 inches previously mentioned your own knee. Ideally, an impressive or even technicolor print is needed a person generate this kind of 60s seem. Anything multi-colored and also designed is ideal although. Comprehensive the appearance using a pair of crazy pantyhose. Fishnets or even designed nylons is going to do the secret to success.
    UA Ultra Boost http://www.rosser-sav.com/ua-ultra-boost-triple-black.html

    By UA Ultra Boost on Aug 6, 2017

  13. This been prolonged believed that alcoholic beverages sparks the making invosalomon mening natural opioids inside the mind incentive facilities, nevertheless reports have reported just how this procedure works simply within animals. New information inside the diary Scientific disciplines Translational Medicine provides experience into exactly why alcoholic beverages is really so addictivein people.
    vans gilbert crockett pro http://www.ifindwholesalers.com/outlet-vans-burgundy-star-wars-old-skool-shoes-classic-canvas-new-arrival.html

    By vans gilbert crockett pro on Aug 7, 2017

  14. The best way to Create a 60′s Seem
    New Balance 574 Shoes http://www.ifindwholesalers.com/outlets-new-balance-ml574vbn-unisex-classic-running-shoes.html

    By New Balance 574 Shoes on Aug 7, 2017

  15. Low cost. If there’s one place to search for inexpensive issues, it’s the wholesale outlets. You can purchase what you can see right now on this page. Moreover, they may need jewelry along with unique styles in minimal rates. Wholesale suppliers might sell inexpensive, however they usually do not sacrifice quality. But why tend to be their items inexpensive? Simply because wholesale outlets obtain goods directly from the maker in the bottom price. Discuss with with regard to wholesale outlets in your town to check on them out. One particular keep might not have the look that may interest anyone you want to make it for, consequently make sure to include all your bases.
    vans warped tour dates http://www.ifindwholesalers.com/outlet-vans-spider-man-era-shoes-mens-womens-classic-canvas-sneakers-red-sale.html

    By vans warped tour dates on Aug 7, 2017

  1. 5 Trackback(s)

  2. Oct 8, 2010: How to get involved in an Open Source Project in 5 Minutes « Mr. Redbeards Classroom
  3. Oct 12, 2010: Week ending October 10, 2010 » sacha chua :: living an awesome life
  4. Dec 23, 2010: imperialWicket :: New Year's Resolution: More open source participation
  5. Apr 17, 2011: [M]etabrain [E]ntry [L]og » Blog Archive » CCSCNE notes
  6. Feb 23, 2016: Mel Chua » Blog Archive » Learning activities for when your students are exploring areas you don’t know (inspired by open source)

What do you think?