Archive for the ‘Wordpress’ Category

 

Integrating FeedWordPress with BuddyPress

Wednesday, July 25th, 2012

I am writing a larger post about open architectures and the implications of what appears to be a more general move away from a focus on open as in sharing, collaboratively building, and collectively designing a space for teaching and learning others can use freely and build upon liberally. No where in the raging discussion around MOOCs is there anyone talking about sharing the infrastructural/architectural work they’ve done freely with others.  CUNY’s Commons-In-a-Box project makes the innovative development work they have been doing for years freely available for others to experiment with. That is the spirit of sharing that seems to me should characterize the groundswell for open, online education—localizing the means of production for as many people as possible rather than turning to more taylorized broadcasting methods that deliver content—we’ve been there and done that. When did scaling the LMS become the next frontier of innovation?

Anyway, more on that in another post. What this post brings together is the thinking Martha Burtis, Alan Levine, Tim Owens, and I have done about integrating BuddyPress with FeedWordPress to allow the signup process to seamlessly load feeds, filter tags, and bring posts in without any manual intervention—of which there is all too much currently.

We actually virtually met with the designer of FeedWordPress, Charles Johnson, and ran all these ideas by him and he was up to the task. He’ll hopefully begin work on these elements for integration shortly, and we are hoping he can lean on Boone Gorges if he has any BuddyPress questions :) (Poor Boone, I am always bothering him—HE’S A FAMILY MAN NOW, BACK OFF GROOM!) So, for anyone interested in the specifics of what we are trying to accomplish with this integration, the details (some of which are a bit technical) are listed below. Recommendations, feedback, and praise are all welcome ;)

  • Automatic registering of ds106 feeds from BuddyPress profiles
    • Someone enters a URL for the blog they want to use (Note, pre-explanation need; e.g if the entire blog is for ds1o6, enter that; if they have a blog used for other purpose, they need to add URL for a ds106 tag or category (e.g. http://somewordpressblog.com/category/ds106 or http://somewordpressblog.com/tag/ds106
    • Internal function looks for possible feed from site (prob an internal function in FWP as used for admin interface), also some test code at http://lab.cogdogblog.com/feedfinder.php this should pop an ajax window with options to set blog, and it should populate a new buddypress ds106 feed field
    • If no feed is found, it goes into moderation and an email is sent to admin
  • Widget to generate list of blogs associated with a particular FWP applied  tag (or all) – I [Alan Levine] just hacked one for magic macguffin http://magicmacguffin.info/subscribed/ documented at http://cogdogblog.com/2012/06/03/dynamic-opml-feedwordpress/
    • widget to generate list of blogs syndicated on a site (might have to have option for scrolling list in case it is long)
    • Function to generat OPML file based in tag
  • Automatic tagging of feeds based on buddypress profile options  (e.g. default tag for all, others based on affiliation)
  • Way to get data we can display or use from feed activity- e.g. frequency of posts, time of posts, etc. or at least some hooks into the database so we can more easily roll our own. e.g. API or functions to call on FWP for information
    • return array of blogs subscribed for whole site (and meta info), or by tag
    • function to test if blog is subscribed
  • Advice about cron jobs for feed updating, perhaps a means to spread into batches for large numbers of crons. Two uses cases:
    • Site like ds106, where we just have a lot feeds syndicating into a single site.
    • Site like UMW Blogs, where a bunch of sites have smaller numbers of feeds syndicating
  • Better  admin interface for managing tags/categories associated with syndicated posts; search to find feeds by url, title, tag?
  • Interface for grouping syndicated feeds and working with them. (sort of related to the previous idea)- mass tagging or unsubscribing
  • cron for all ds106 sites is now running as update mode (6/1/2011)
    The warning when feeds are set to cron is confusing  since feeds do update.Note: Automatic updates are currently turned off. New posts from your feeds will not be syndicated until you manually check for them here. You can turn on automatic updates under Feed & Update Settings.There should be separate settings for cron versus manual?
  • Another point is making sure that users who sign-up in BuddyPress have the FWP settings using the BP username and associated it with the Feed. As of now associating feeds with usernames is manual, and a major PITA

A short excursion into code

Saturday, June 30th, 2012

A few posts/couple of weeks ago I installed the oEmbed HTML5 audio plugin here. This allows me to upload mp3s and other audio files, the plugin takes care of presenting the audio using the html5 audio tag with a flash fallback for browsers that do not support the type of audio: This plugin converts URLs to audio files (MP3, OGG, WAV) into HTML5 audio with Flash-based player backup
This seemed to do the trick. This morning I noticed that none of my audio was showing in FireFox. I right clicked on the space where I expected to see the player and saw the the Flash file was not loaded.

Looking at the source it seems that it is using a swf file belonging to google:
http://www.google.com/reader/ui/3523697345-audio-player.swf

and that is Error 400 Not found.

Using Cyberduck I had a look at the plugin’s code.  Part of this check to see if the file is an MP3 and the browser FireFox. firefox does not support playing of MP3 via the audio tag so the plugin uses the google Flash file, which is of course missing.
$embed = sprintf( '<embed type="application/x-shockwave-flash" flashvars="audioUrl=%1$s" src="http://www.google.com/reader/ui/3523697345-audio-player.swf" width="400" height="27" quality="best"></embed>', esc_attr($matches[0]) );
On my ‘real’ blog I usually embed audio using dewplayer so I decided to edit the plugin to use that.

I uploaded the dewplayer.swf file to the top level of my site and changed the code, I need to change the name of the var from audioUrl to mp3 and the url of the google swf to /dewplayer.swf.

If you are viewing any of my audio posts in fireFox you should hopefully be less puzzled.

Update: the plugin has been updated: WordPress › oEmbed HTML5 audio « WordPress Plugins

1.1

  • Google removed their MP3 Flash player from their website, so we include it in the plugin itself now (it’s still the same player)

Archiving Insights

Saturday, June 23rd, 2012

I’ve just returned from three excellent professional development events: BC Campus Online Community Enthusiasts (#OCE2012), Northern Voice (#nv12) and Society for Teaching, Learning in Higher Education (#STLHE2012)

I have more specific reflections on each of those events but a very interesting question arose this week that I really want to explore.

To which I responded:

Which was followed by:

Then:

This generated a bit of discussion and I thought it would be interesting to take a more detailed look at each of these options.

Starting with my suggestion to use tweetdoc, here is a
PDF archive of all #STLHE2012 tweets

This is really easy to set up and can be done at any time but ideally at the end of an event. The caveat is that it only captures 500 tweets at a time. So if there is a lot of twitter activity you will need to break apart the conference by dates. I had to create two archives and then merged the PDF files into one. This isn’t ideal and there are probably duplicate tweets overlapping the days.

So what about Storify? I’ve used storify for a few different events and really find it is best when you want to include a variety of media: tweets, flickr & instagram pictures, videos, etc. I don’t find it works as well for an entire conference or any scenario where there are more than 25 artifacts. Filtering plays a big role. Also, I’m not sure about the long term viability of using this format for archiving. It relies on multiple tools in the cloud to maintain the status quo. If my work with online courses and linking to external sites has taught me anything it is to expect things to change.

Here is a short storify I created from the closing panel which seemed to get the some of the most twitter activity for a plenary during the entire conference. This is created from the Storify site and you specify which tweets you want to use. This allows you to filter out repeated retweets and/or choose the tweet that really captured the quote the best. Selection is done manually though, so the act of curation obviously takes more time.

stlhe2012 Closing Plenary: Student Panel

Student leaders speak on the future of Canadian post-secondary education

Storified by Giulia Forsythe · Sat, Jun 23 2012 01:10:37

Students run the panel to close #stlhe2012. Yes!Christine Adam
Really looking forward to hearing the student voices in Montreal #STLHE2012 http://pic.twitter.com/KW5vna4WJoanne Fox
#stlhe2012 student leaders about to speak! Looking forward to hearing their voices, thoughts, and ideas!Trent Tucker
First student panel at #stlhe2012 Blind Curves or Open Roads?Veronica Carr
#stlhe2012 Student plenary: fun to hear them getting excited about things their institutions doing well. Reinforces my desire to innovate.Catherine Rawn
Inspiring vision – to translate passion for teaching and learning to community engagement. #stlhe2012Natasha Kenny
Cegeps rescue students from high school… LOL #STLHE2012Jaymie Koroluk
#stlhe2012 student leaders motivated to wake up asking, "how can I contribute today?" #stlhe2012 – to actualize their potential!Natasha Kenny
brilliant insight for life! @ProfTucker: #stlhe2012 student panel: it is not about having the right answers but asking the right questions!Natasha Kenny
#stlhe2012 Imagine if all our students "got it" like these students seem to! When I teach a class of 300+, how can I reach these students?Catherine Rawn
Model, inspire, motivate & build hope“@cdrawn: #stlhe2012 When I teach a class of 300+, how can I reach these students?"Natasha Kenny
Teach towards engaged and informed citizens, inspire curiosity, explore core truths, encourage reflection, generate meaning #STLHE2012Joanne Fox
#stlhe2012 Alexandre: PSE gives you the "shoes" for the rest of life’s journey…Trent Tucker
According to student leader: those who don’t fail in higher ed didn’t try hard enough (or party enough) #stlhe2012Megan Fitzgibbons
Beautifully elegant – Those who did not fail, did not try hard enough – we need to inspire failure in order to succeed – #stlhe2012Natasha Kenny
These students are AWESOME #STLHE2012 Asked for audience participation and says, "I know you hate it when students don’t put up their handsJoanne Fox
These students are brilliant! Emphasize the importance of metacognitive learning within the curriculum #stlhe2012Natasha Kenny
#stlhe2012 "it is better done than said" — Selena on experiential learningTrent Tucker
#stlhe2012 Johanna on the future of PSE: "nurture critical thinking"Trent Tucker
Johanna (articulate student!): one goal of academic enterprise should be to question the status quo and hegemonic structures #stlhe2012Megan Fitzgibbons
#stlhe2012 student suggests CSL and prof who uses old reading list just says yes. Sweet fantasy. Love itBilly Strean
Student mental health on the agenda at #stlhe2012 student panel. Thank you, Mimi! #destigmatize http://bit.ly/PIBflZChristine Adam
If you think education is expensive just try ignorance. student voices heard #STLHE2012Joanne Fox
Tell your students to bring their hearts to class, not just their brains #stlhe2012Natasha Kenny
Wonderful to hear fluently bilingual students. #STLHE2012 Sorel
Always impressed by how articulate and vibrant 3M student fellows are #STLHE2012Jaymie Koroluk
Hearing from students was the perfect way to end the conference. Thank you for the honesty and challenge of your words. #stlhe2012veebs
Student panel = fantastic way to end the #stlhe2012 conference. Agree that more students should be in on the conversation!EDC

Similarly, you’ll notice that I’ve embedded tweets into this post using twitter’s new built-in embed tool, which is easier than the now-defunct web app called Blackbird Pie. There is still a Blackbird pie wordpress plugin but I don’t see any advantage using the plugin over the built-in tool.

embedding tweets

embedding tweets

I guess my main concern is the lack of control you have over that content. You are only linking to it and if the owner deletes the tweet or twitter comes up with some Murdoch monetizing scheme and changes our access or terms, then we will no longer have the content at all.

But it sure does look pretty and it is very functional while it still works.

That brings us to wonder about If This Then That, the magical-do-anything-you-can-think-of with just about any tool that has an API.

I browsed through existing recipes and not surprisingly, someone has set up the simple template to capture tweets with a particular hash tag into Evernote.

ifttt twitter to evernote

If This Then That: Twitter to Evernote

Authorize both your twitter account and your Evernote account, set up your own parameters and you are set to go. The only trouble is that it doesn’t seem to be able to capture tweets from the past.

Since I started this experiment after the end of STLHE, it’s fairly useless in capturing anything about that conference after the fact.

But with 20,000 K-12 educators descending on San Diego right now for National Educational Computing Conference ISTE12 I have a very active hash tag to experiment with, which will definitely be a test of the robustness of this application.

As suggested in the recipe, I created a public #ISTE12 notebook in Evernote. There were other options for archiving, including avatar, which might make the notebook more visually stimulating but I’m going for simplicity first time out. The sheer volume of tweets may cause some kind of complications but let’s push this to the boundaries, right?

So far after 12 hours there have been 566 tweets. But the conference hasn’t actually started yet so we’ll see what happens after a few days.

Shared Evernote notebook capturing #ISTE12 tweets

Shared Evernote notebook capturing #ISTE12 tweets

What are your thoughts? Any other tools you use for archiving all the wonderful things said and done at conferences? How does this aid your reflection (if at all)?

Camp Note Saturday 2 June

Saturday, June 2nd, 2012

Untitled

tihs is just a quick note of a couple of things I’ve been doing over the last day or two at camp. Apart from getting killed in the wide game. I’ve added a nice wee plugin to this blog. The google fonts plugin allows you to add a google font. The control panel lets you add some custom CSS to use the font if you do not want to apply it to say all titles or all headings. I’ve just added a class, campletter for the ‘Over the Rainbow’ font. I also added a drop shadow and a rotate to the CSS.

.campletter {font-family:'Over the Rainbow',san-serif;font-size:18px;background:#ee9;
transform: rotate(10deg);
-ms-transform: rotate(11deg); /* IE 9 */
-webkit-transform: rotate(10deg); /* Safari and Chrome */
-o-transform: rotate(10deg); /* Opera */
-moz-transform: rotate(10deg); /* Firefox */
-moz-box-shadow: 10px 10px 5px #888;
-webkit-box-shadow: 10px 10px 5px #888;
box-shadow: 10px 10px 5px #888;
Padding:6px;
Margin:6px;
}

It is pretty easy to get the CSS code for this sort of thing, just google it. The google fonts pluggin settings page has a section for custom CSS SO I didn’t even have to edit the theme.
Untitled

The other thing I’ve been playing with is the iPhone friendly daily create page I made. Now shows the creations for the last 5 daily creates:TDC Today. I am finding this quite useful, this afternoon I was. Standing right beside this destroyed hut when I checked TDC. The code is now a real mess of php and JavaScript, it seems to work here. Let me know if you try it and it doesn’t do what it says on the tin.

Camp MacGuffin – Counselor G Log 1

Thursday, May 31st, 2012

For those of you who haven’t met me at Camp MacGuffin yet, my camper name is Doodle Bug because I’m a hobbiest entomologist and I like to draw stuff.

The first week of Camp MacGuffin has been really exciting. First I moved all my stuff into Bunkhouse 1 but realized I read the Bunk assignments incorrectly and had to move to Bunkhouse 2.


cc licensed ( BY NC SD ) flickr photo shared by giulia.forsythe

@Tripper106 is my co-counselor and he’s been rocking the PA system every day on DS106Radio which makes me super happy and productive. You should have seen all the macaroni necklaces I made during his epic setlist. Pics to come, I promise!

Other Bunkhouses have already settled on names, thinking about logos and we’re still in the brainstorming phase. I’m not even sure if we got all the brains to the table yet. But I do know we have a really great group of campers. John Johnston already created a twitter list and an RSS aggregate for us. Yippee!~

A lot of our Bunkhouse2 campers have hit the ground running. Creating assignments & doing them, completing the Daily Creates with fervour but I’m kind of worried about a couple of the campers. The woods and the swamp can sometimes take you through a time vortex and suddenly you come back to the bunkhouse and 3 weeks have passed by without doing a Daily Create, an assignment or even setting up your blog! The swamp, especially, has this swamp monster who is dreadfully boring but to be polite campers will sit down and have a cup of tea and the next thing you know four daily creates have passed!

We also have to remember to take time to comment on the other blogs in our Bunkhouse. I say this but right now I’ve got to run, I was hoping to find time to tie-dye some t-shirts and make some animated GIFs this afternoon but that swamp monster is coming my way!

QUICK UPDATE: happy welcome to @mgershovich who has decided to take the ds106 plunge (he knows it’s #4LIFE)


cc licensed ( BY SD ) flickr photo shared by giulia.forsythe