fluid-work IRC Logs-2012-01-30

[09:20:28 CST(-0600)] <anastasiac> michelled, we got a lot of excellent feedback on the FLUID-4546 branch on Friday. How do you think we should proceed w.r.t. merging that branch? should we merge it sooner, and then create new JIRA(s) based on the feedback, or work to incorporate the feedback before merging?

[09:21:38 CST(-0600)] <michelled> anastasiac: I need to look at the detail before I can answer that

[09:21:52 CST(-0600)] <michelled> I think there were a few things that should get done before merging

[09:22:59 CST(-0600)] <anastasiac> well, I've posted a summary of my notes from Friday to the wiki and emailed the list. Do you want to have a look, and then we can talk about which things should get into the branch?

[09:23:32 CST(-0600)] <michelled> yes, let's talk after standup

[09:28:29 CST(-0600)] <michelled> anastasiac: after a quick glance at the list I think we'd better clean up the keyboard a11y on that branch

[09:28:40 CST(-0600)] <anastasiac> k

[09:58:43 CST(-0600)]

<cindyli> michelled, anastasiac, i found MyInfusion.js used by the video player is too old that some of the good new features are not contained. I came across the issue at making the listener function more public that "

Unknown macro: {arguments}

.0" are failed to be resolved with the current MyInfusion. I'm thinking to put the adaptor (or condutor) component aside and upgrade the infusion lib first. The new infusion might already work with the video player master sin

[09:59:20 CST(-0600)] <anastasiac> cindyli, yes, that sounds good. I think you suggested that on Friday, didn't you?

[09:59:30 CST(-0600)] <cindyli> yes, anastasiac

[09:59:37 CST(-0600)] <cindyli> ok, i will go ahead

[10:21:42 CST(-0600)] <cindyli> michelled, anastasiac, fyi, i just submitted a pull request for upgrading MyInfusion.js in the video player

[10:22:41 CST(-0600)] <michelled> thx cindyli - I'll look at it right away

[10:22:49 CST(-0600)] <cindyli> thanks, michelled

[10:24:51 CST(-0600)] <michelled> cindyli: were there no changes to any of the other files that we have from Infusion?

[10:25:26 CST(-0600)] <michelled> oh wait - I guess we don't have anything besides myInfusion

[10:25:33 CST(-0600)] <cindyli> cindyli: the only file in video player that's from infusion is MyInfusion,js, isn't it?

[10:25:46 CST(-0600)] <michelled> I'm working on UIO integration so my personal workspace has other files too (smile)

[10:25:56 CST(-0600)] <cindyli> ah

[10:41:22 CST(-0600)] <colinclark> anastasiac and michelled: In terms of the issue of the keyboard-a11y plugin binding space and enter by default with .activatable(), that is override-able. If we don't have a tutorial that explains how this is done, perhaps this is is a good opportunity to look deeper at the code and whip something up while we're at it.

[10:44:16 CST(-0600)] <anastasiac> colinclark, yes, it would be great to figure out how to override that - I looked at the code, and didn't see that :-/

[10:44:37 CST(-0600)] <colinclark> anastasiac: Keep reading

[10:44:46 CST(-0600)] <colinclark> You'll find it

[10:55:30 CST(-0600)] <michelled> cindyli: I think we might have a bug in some of our time code - I'm getting a start time of "-1:-1:0-1" in chrome (wink)

[10:56:00 CST(-0600)] <cindyli> ok, michelled. i'm coming over

[11:09:07 CST(-0600)] <michelled> jameswy: were we planning to talk about the space today?

[11:17:31 CST(-0600)] <michelled> Justin_o: I don't see you on skype

[11:18:00 CST(-0600)] <Justin_o> michelled: sorry, forgot to log in

[11:18:09 CST(-0600)] <Justin_o> michelled: i should be there now

[13:40:05 CST(-0600)] <michelled> anastasiac, cindyli, alexn: Can we have a Floe check in tomorrow at 3:00 eastern?

[13:40:30 CST(-0600)] <anastasiac> michelled, works for me

[13:40:36 CST(-0600)] <cindyli> fine with me, michelled

[14:11:52 CST(-0600)] <avtar> anastasiac, cindyli, michelled: i'm going through build.fluidproject.org's config

[14:12:31 CST(-0600)] <michelled> avtar: I'm sure you'll find some crazy and repetitious scripts in there

[14:12:42 CST(-0600)] <michelled> avtar: anything I can help with?

[14:12:55 CST(-0600)] <avtar> i came across continuum

[14:13:56 CST(-0600)] <avtar> did you just want a script to pull from https://github.com/fluid-project/videoPlayer and make the resulting directory structure available here? http://build.fluidproject.org/videoPlayer/

[14:14:16 CST(-0600)] <michelled> yes

[14:15:03 CST(-0600)] <avtar> ok

[14:15:13 CST(-0600)] <avtar> i wasn't sure if you wanted continuum involved in any way

[14:15:29 CST(-0600)] <avtar> if not then that's pretty straightforward

[14:15:39 CST(-0600)] <alexn> michelled: A little bit late reply (smile) but yes 3:00 works for me as well

[14:16:49 CST(-0600)] <michelled> I didn't expect you to ignore yura in order to respond to me alexn (wink)

[14:17:23 CST(-0600)] <yura> michelled: ya hard to ignore that guy

[14:17:30 CST(-0600)] <michelled> avtar: we don't have any need for continuum at this point - we just need stuff served up (smile)

[14:17:55 CST(-0600)] * michelled ignores yura's comment

[14:18:01 CST(-0600)] <yura> lol

[14:18:05 CST(-0600)] <avtar> guys, come on

[14:18:07 CST(-0600)] <yura> i cant believe it

[14:18:07 CST(-0600)] <avtar> let's not fight

[14:18:29 CST(-0600)] <yura> avtar: but i cant be ignored

[14:19:31 CST(-0600)] <avtar> yura: awareness is ever-present, you're never being ignored (wink)

[14:19:56 CST(-0600)] <michelled> (smile)

[14:20:01 CST(-0600)] <yura> i call it yura-awereness

[14:20:08 CST(-0600)] <avtar> yurness

[14:23:47 CST(-0600)] <colinclark> I wish I had a cool Zen crack to serve up

[14:23:53 CST(-0600)] <colinclark> and a mock 'dis of yura

[14:23:56 CST(-0600)] <colinclark> mostly, I just have a question

[14:24:06 CST(-0600)] <colinclark> avtar, michelled: How come we don't need Continuum involved?

[14:25:04 CST(-0600)] <michelled> colinclark: we don't need to build anything for the video player right now. we include a built version of infusion in the source tree.

[14:25:18 CST(-0600)] <michelled> colinclark: so all we really need is to have that available somewhere

[14:25:23 CST(-0600)] <colinclark> So, I'm curious about what that means

[14:25:24 CST(-0600)] <michelled> colinclark: am I forgetting something?

[14:25:27 CST(-0600)] <colinclark> I dunno

[14:25:48 CST(-0600)] <colinclark> what does a "daily build" look like without some kind of "continuous integration system"?

[14:26:01 CST(-0600)] <colinclark> And why am I using "annoying quotation marks?"

[14:27:15 CST(-0600)] <michelled> I guess it just looks like a nightly git pull - I'm not sure what avtar was planning to use for that

[14:28:14 CST(-0600)] <colinclark> So what's the advantage of hand-rolling a script vs. using Continuum?

[14:28:32 CST(-0600)] <colinclark> Not that you don't ultimately still have to hand roll a script (tongue)

[14:33:28 CST(-0600)] <colinclark> It looks to me like, at the right time, Github's Janky scripts for Jenkins will probably suffice for most of our build needs

[14:33:30 CST(-0600)] <colinclark> https://github.com/github/janky

[14:35:37 CST(-0600)] <colinclark> CI Joe if we wanted super-simple: https://github.com/defunkt/cijoe

[14:38:24 CST(-0600)] <colinclark> I guess what I'm getting at, michelled and avtar...

[14:38:42 CST(-0600)] <avtar> sorry, joining this a little late

[14:38:49 CST(-0600)] <colinclark> it seems awfully unsustainable to have as a strategy for builds, "Just get avtar to do it."

[14:40:05 CST(-0600)] <avtar> who has set up builds with continuum in the past?

[14:40:11 CST(-0600)] <michelled> colinclark: I agree - I was assuming that avtar was going to start working on the master plan we had vaguely sketched about being able to generate builds for studios projects

[14:40:42 CST(-0600)] <colinclark> avtar: Continuum has allowed builds to largely be coordinated by developers

[14:40:58 CST(-0600)] <colinclark> with the caveat that you typically need something done with the product of a build

[14:41:16 CST(-0600)] <colinclark> requiring the creation of a one-off script to copy a build around, etc.

[14:43:59 CST(-0600)] <colinclark> What I think we'd like to do is to have some self-administration UI

[14:44:27 CST(-0600)] <colinclark> and have any of the details about how something is built to be expressed within the Git repository of the thing itself

[14:44:50 CST(-0600)] <colinclark> Here's what I imagine, avtar

[14:45:11 CST(-0600)] <colinclark> If michelled asked you for a build of something, you'd crankily respond with "DO IT YOURSELF"

[14:45:20 CST(-0600)] <colinclark> and go back to reading Slashdot and dozing

[14:45:32 CST(-0600)] <colinclark> recompiling kernels

[14:45:33 CST(-0600)] <avtar> that's seems kinda harsh

[14:45:46 CST(-0600)] <avtar> what's option #2

[14:45:57 CST(-0600)] <colinclark> And then michelled would just go some website, and she'd give it a URL to a Github repo

[14:46:00 CST(-0600)] <colinclark> and that would be that

[14:46:08 CST(-0600)] <colinclark> you'd have yourself a shiny new kernel

[14:46:14 CST(-0600)] <colinclark> michelled would have a shiny new build

[14:46:46 CST(-0600)] <colinclark> In the real world, you'd actually be doing something awesome, like building a really cool cloud

[14:47:01 CST(-0600)] <colinclark> and michelled would already know that you'd set something cool up for her to setup builds with

[14:47:05 CST(-0600)] <colinclark> and there'd be no shouting

[14:47:12 CST(-0600)] <colinclark> no one reads Slashdot anymore anyway

[14:47:19 CST(-0600)] <colinclark> and no kernels would be harmed in the process

[14:47:56 CST(-0600)] <colinclark> Option #3 would be for you to just set up a cron job and be done with it

[14:48:01 CST(-0600)] <colinclark> which I think is what michelled really wanted

[14:48:06 CST(-0600)] <colinclark> but that makes puppies cry

[14:48:17 CST(-0600)] <michelled> colinclark: that's not what I wanted (tongue)

[14:48:25 CST(-0600)] <michelled> I like puppies

[14:48:36 CST(-0600)] <colinclark> did too, you Code Wizard

[14:49:02 CST(-0600)] <colinclark> Dunno, avtar

[14:49:07 CST(-0600)] <colinclark> Is my idea crazy or impossible?

[14:49:28 CST(-0600)] <avtar> no, it's possible

[14:49:31 CST(-0600)] <colinclark> Janky and CI Joe are both very command-line oriented

[14:49:47 CST(-0600)] <avtar> in a somewhat similar vein https://wiki.jenkins-ci.org/display/JENKINS/Github+Plugin

[14:49:47 CST(-0600)] <colinclark> I think the basic workflow that CI Joe outlines seems about right

[14:50:19 CST(-0600)] <colinclark> that'll do

[14:50:26 CST(-0600)] <colinclark> The question is how you express the work of the build

[14:50:53 CST(-0600)] <colinclark> I guess there's probably enough of a pattern that we could just write one script

[14:51:43 CST(-0600)] <avtar> yes, that approach should work for projects similar to videoPlayer

[14:52:39 CST(-0600)] <avtar> and then deviate from that for something like decapod

[14:54:09 CST(-0600)] <colinclark> Let's do it

[14:54:26 CST(-0600)] <colinclark> We can transition the easy builds from Continuum to Jenkins really quickly

[14:54:35 CST(-0600)] <colinclark> there may be a few others that will need a bit of thought

[14:54:51 CST(-0600)] <colinclark> I suspect we can stop building Infusion and hosting it from a Tomcat servlet container for no sane reason, too

[14:55:41 CST(-0600)] <colinclark> avtar: Here's a list of the most notable things we currently build: http://build.fluidproject.org/continuum/projectGroupSummary.action?projectGroupId=14

[14:56:07 CST(-0600)] <colinclark> Infusion is built via an Ant script, and then I think it's still stuffed into a servlet container

[14:56:24 CST(-0600)] <colinclark> The Infusion Builder is a PHP app, which I believe requires a script to be run to prepare it

[14:56:38 CST(-0600)] <colinclark> Uploader Image Gallery is similar

[14:56:50 CST(-0600)] <colinclark> Instructional demos are presumably just static resources

[14:59:34 CST(-0600)] <michelled> it looks like github has a Bamboo service hook

[14:59:48 CST(-0600)] <michelled> but I don't see one for Continuum

[15:00:07 CST(-0600)] <colinclark> Github should be able to take any URL

[15:00:40 CST(-0600)] <colinclark> It's quite likely that Continuum doesn't expose a URL for triggering a build

[15:00:47 CST(-0600)] <avtar> i wouldn't mind migrating over to jenkins

[15:01:32 CST(-0600)] <avtar> it seems to have more of a momentum behind it

[15:03:02 CST(-0600)] <colinclark> yep

[15:03:20 CST(-0600)] <colinclark> avtar: I'll probably have to go over the various build scripts in the current installation

[15:03:29 CST(-0600)] <colinclark> but I hope that perhaps they could be all just tossed

[15:03:40 CST(-0600)] <colinclark> and replaced with one or two flavours of build process

[15:03:51 CST(-0600)] <colinclark> which users could simply specify in the Jenkins admin interface and be done

[15:04:03 CST(-0600)] <colinclark> No more ad-hoc scripts for each new build

[15:20:51 CST(-0600)] <Bosmon> Hi cindyli

[15:21:01 CST(-0600)] <Bosmon> I am just looking at your IoC resolution bug at the moment

[15:21:15 CST(-0600)] <Bosmon> As far as I can see (I haven't tried running it yet), it is just a timing issue

[15:21:34 CST(-0600)]

<Bosmon> You can't refer to "

Unknown macro: {videoPlayer}

.refresh" in IoC material since it is applied to the component during the postInitFunction

[15:21:44 CST(-0600)] <Bosmon> Oh wait, it is preInit

[15:22:01 CST(-0600)] <Bosmon> Now I will go and look at the diagram to see if that is early enough (smile)

[15:22:12 CST(-0600)] <colinclark> lol

[15:23:08 CST(-0600)] <Bosmon> Ok, so that should be early enough....

[15:23:11 CST(-0600)] <Bosmon> I will try it out now

[15:23:21 CST(-0600)] <cindyli> thanks, Bosmon

[15:24:16 CST(-0600)] <Bosmon> The odd thing is that your "reconstructed" version has exactly the same reference

[15:24:25 CST(-0600)]

<Bosmon> of "

Unknown macro: {videoPlayer}

.refresh"

[15:24:30 CST(-0600)] <Bosmon> And you say that that one works ok?

[15:24:35 CST(-0600)] <cindyli> yes, Bosmon

[15:25:20 CST(-0600)] <cindyli> the difference, may not be the only difference tho, that i noticed is how the sub-component is declared

[15:25:33 CST(-0600)] <cindyli> one is via decorator, the other is via components block

[15:25:40 CST(-0600)] <cindyli> does it make difference?

[15:26:10 CST(-0600)] <Bosmon> Which subcomponent are you meaning?

[15:26:53 CST(-0600)]

<cindyli> right,

Unknown macro: {videoPlayer}

.refresh is not even called in a sub-component

[15:27:13 CST(-0600)] <cindyli> it belongs to the videoPlayer itself

[15:39:07 CST(-0600)] <colinclark> Bosmon: Apparently there is a "RegNotifyChangeKeyValue" function in the Win32 API

[15:40:10 CST(-0600)] <colinclark> The Mac might be the odd one out here

[15:41:38 CST(-0600)] <Bosmon> colinclark - fascinating

[15:42:53 CST(-0600)] <Bosmon> I see in the .NET documentation that there is a better version in the form of "RegistryEvent"

[15:43:02 CST(-0600)] <colinclark> ah

[15:43:09 CST(-0600)] <Bosmon> http://msdn.microsoft.com/en-us/library/aa393043%28v=VS.85%29.aspx

[15:43:15 CST(-0600)] <colinclark> The insipid MSDN article I am reading said it didn't yet exist in .NET

[15:43:17 CST(-0600)] <colinclark> must be out of date

[15:43:31 CST(-0600)] <colinclark> Well, there we go

[15:43:53 CST(-0600)] <colinclark> I wonder how typical it is for apps to actually use the Registry

[15:44:05 CST(-0600)] <Bosmon> I think it is quite typical

[15:44:07 CST(-0600)] <Bosmon> Almost invariable

[15:44:12 CST(-0600)] <colinclark> good

[15:44:44 CST(-0600)] <Bosmon> I spent a bit more time reading over CouchBase documentation over the weekend

[15:44:49 CST(-0600)] <Bosmon> And even joined their IRC channel (tongue)

[15:44:51 CST(-0600)] <colinclark> What have you learned?

[15:45:10 CST(-0600)] <Bosmon> Well, I've learned that despite all the hoo-haa, everything is really extremely raw

[15:45:50 CST(-0600)] <Bosmon> And that their channel is pretty darn low-traffic compared to the other one

[16:42:55 CST(-0600)] <colinclark> Bosmon: Okay, it looks like all the platforms are at least this civilized...

[16:43:04 CST(-0600)] <colinclark> http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSUserDefaults_Class/Reference/Reference.html

[16:43:16 CST(-0600)] <colinclark> The aptly named "NSUserDefaultsDidChangeNotification"

[16:43:49 CST(-0600)] <colinclark> I suppose, in every case, the problem will be whether or not the AT actually bothers to listen to these platform-level events

[16:44:11 CST(-0600)] <colinclark> I can imagine most developers simply say things like "Changing my settings from the outside is not supported, so why bother?"

[17:02:05 CST(-0600)] <colinclark> It looks like, though, Mac OS X's "sandboxing" model will prevent an application from changing another's preferences

[17:03:09 CST(-0600)] <colinclark> This sandboxing approach seems to have been emulated by Microsoft in Windows 8 Metro-style apps, too