Tech call notes

Lets post notes from the tech call here

We will totally abandon the mailing list and just use this one :smile:
So we decided yesterday that we are having one moth trial period for the discourse within the staff, to test it out before we spread it out to the whole community.

Tech call notes: 9 May

Progress

  • lots of traveling - mostly support
  • Discourse Only internal auth for now (do we plug in social login too)

Priorities

  • Next prio for the Badges is the integration with lernanta
  • After we try to accomodate Jane with the ability to limit badge awards to the original creator of the badge for some badges
  • Support for Gentle Python
  • Tracking
  • Campaigns for Mooc
  • Fix git dependancies for lernanta
    Problems
  • ckeditor
  • is it possible for us to use the front end one (We use it in Badges, but it has been not in use for a long time, so we still are not sure if it will cause any problems in the future) ?
  • markup is way easier there is no backend setup
  • errors are way easier to find - trough developer tools
  • setup is easy (include javascripts in to the project and add class on html markup wherever you want it to be)
  • The pip dependencies will be updated (we do no expect any more problems after that -ever :))
    Process

Thanks for posting here. Useful to see the notes, but maybe add more detail (let’s remember that together) in future. It’s not easy to understand exactly what you mean, e.g. “Campaigns for Mooc”?

True! I think we need to write more self explanatory notes in etherpad during the call as well. It can be sometimes hard to go trough notes and making sense of them.

How do we copy and paste the notes while keeping the formatting?

Sorry, there is no way to do that. Last time I just formatted them by hand again.

The editor supports markdown. We could just use markdown in etherpad during the call. That way you could copy & paste them. Or put a link to the notes into discourse (rather than copying)?

Maybe we should do the tech call notes like we do with the community call and put every week in a separate etherpad?

I really like the fact that we keep them in one etherpad. I often scroll back to the weeks before. Splitting them into separate etherpads will make that harder.

I like them in one etherpad as well, but i may have misunderstood, what has splitting the etherpad has to do with markdown?

16 May
Parking Lot:

  • Hosting updates (Linode upgrade, MOOC hosting, heroku, AWS…)

Progress

  • Mechanical MOOC

  • swapped in ckeditor for the WYSIHTML5 rich text editor we were using
    before

  • email scheduler finished (you can now create an email and specify a
    date when it will get sent)

    • also supports group emails (sent to the indivdiual groups) and
      community emails (to everyone)
  • we now support running courses multiple times (sequences)

    • emails and groups can be assigned to a particular sequence (=round) of a course
    • setting up a new round, requires some shell magic
  • imported the sign-up data from ruby MOOC

  • Defines goals / planning for 3rd phase of badges (rolled out as they get completed)

  • See details under priorities below…

Priorities

  • Mechanical MOOC
  • set up regular backups for data to amazon S3
  • handle unsubscribes (currently, users are in stored in two databases - mailgun, and heroku - need to sync)
  • Badges
  • [2 weeks] Allow partners to issue/ endorse badges (restrict who can issue the badge)
    • The 2-step autorization for partner Badges
    • We set out to be implemented until June 1st
    • Dirk gave Erika task to make an wireframe to present to partners on how will we implement this
  • [1 week] Integrate badges more closely with courses
    • for a start this will be a IFrame that you can embed in a course (or anywhere else)
  • [1-2 days] Add elemet to the top level navigation where you can see all the badges
  • Some bug crushing tasks (Badge not yet awarded but project already published as a project which got the Badge, …)
  • Question: What is the benefits of converting id to uri and back trough out the system?
    • not much within a system, but very usefull
  • Setting up the integration servers on AWS for testing purposes
  • Hosting
  • DU to cancel stats.p2pu.org
  • AWS API - PS and DU to go throught this next week

Problems

  • Running courses multiple times on p2pu.org
  • We don’t currently support “cloning” courses
  • A few courses are running for the second time, and it’s not clear to organizers what the best strategy is
  • Easiest solution (right now) -> Create a new course, and copy&paste content
  • DU to make sure this is one of the topics on our list of feature requests

Process

  • Keep better notes on the call so that we understand what we discussed afterwards
  • We tried! Is it working?
  • Talk about how do we build the community who would help us build the tools
  • Erika wants some advice on how to attract developers to contribute to badges (or/and lernanta, mechanical mooc,…) as an open source projects
1 Like

23 May

Progress

  • Sent email to previous users of Python Mooc
    • had a small problem (100 users * 25 emails = %$#%)
  • User on badges can delete badge that does not have any projects
  • Other Python MOOC updates?
    • Improved the unsubscribe feature (previously, users would unsubscribe from mailgun, but would still be in our local DB / now unsubscribes sync both)
  • Discourse
  • Course UX improvements
    • Call with School of Open to go through course organizer feedback
    • See email from Jane on community list with (excellent) summary

Priorities

  • Upgrading p2pu.org linode
    DU to let community know about planned upgrade and 3h downtime on Monday the 27th
  • Plan implementation of feedback from SOO & SOE
  • Confirm that single signon with disqus is possible (for free accounts)
  • Grouping users for the Python MOOC.
    We need to talk with June about the grouping
  • Next steps: DU to send a email to community list, June and VMG about grouping
  • Badges partner badge implementation
  • there was a wireframe presented today to Vanessa and Dirk
  • Get Discourse hosting set-up
  • DNS -> http://thepeople.p2pu.org
  • [Optional] Set-up P2PU OAuth
  • Heroku (explore DB size first, evaluate if move to Digital Ocean or AWS makes sense now)
  • Course UX
    • Next step: DU to schedule and prioritize the work (tentatively week after June 1st) and inform SOO + community

Problems

  • Email hickup (how can we avoid these in future, can we?)
  • For things with high risk, use a second set of eyes
  • Better deploy process (Staging servers are needed)
  • Let’s discuss how much time (cost?) is required to do this, before we set it up

Process

  • How can we improve tech updates in the community call? (People don’t know what is cooking)
  • Lets try markdown format for tech call notes so that we can copy and paste the notes in discourse
  • doing some research about fabric for the Badges testing and deployment
  • we could use it instead of ansible (ansible misses a lot of stuff for real production)
  • EP havs some experiences with it, has been using it before
  • It would not be time consuming as much bcs EP have experience
  • Deployment process (too complicated?)
    • you have to be sudo user to pull
    • after you have to restart apache manualy
    • what happens if migration breaks
    • all of those are very dangerous operations to do them without testing on staging servers first

How did the markup pasting go? Did it work?

Kind of… It still needed some editing, a lot less tho.
The thing is that it is really hard to distinguish the level of indent in etherpad if we write in markdown and if discourse converts it wrongly or we do a mistake it is much harder to find. Which essentially means I have to go trough the content just the same and think about which indent is good and which is not, thus not so much helpful.
I think that we keep it normally in etherpad it will be much easier to read what we wrote directly from etherpad and I will go trough all of the notes once again when I paste it here (which is sometimes helpful for me anyway to read trough and take my time with the language and all)

1 Like

Progress

  • Upgraded linode running p2pu.org
  • Deployed latest changes to mechanicalmooc.org
  • we currently have just over 1200 signups!
  • API keys for AWS with credit set up, please inform DU & PS before using
  • Updated documentation for the Mechanical Mooc: https://github.com/p2pu/mechanical-mooc and https://github.com/p2pu/mechanical-mooc/wiki
  • Partner badge requirement will be deployed during the weekend
  • EP talked with Vanessa today and we can drop the requirement of feedback, revision flow as long as we implement requirement for the sample project on badge creation
  • Search for badges will go up today

Priorities

  • Implementation of feedback and suggestions
  • Course announcement opt-out
  • Homepage, we need to discuss what we want to do
  • we need better reflection on homepage about what we do
  • Badges
  • revise badge creation process to require that badge creator also create a project
  • Move discourse away from Heroku
  • Digital Ocean - $10
  • AWS Small Instance, 1 year provisioned, low utilization - $30 pm + bandwidth costs
  • for now lets defer the decision, both give you similar platform
  • target Ubuntu 12.04 32-bit Server Edition(LTS)
  • use ansible to setup discourse. https://github.com/p2pu/marvin
  • next steps: DU to send email to CE and PS summarizing the work and getting feedback on Digital Ocean & AWS

Problems

  • Help for the user which is not expressing very well what he would wish in English
  • DU suggested a French response for him
  • Discourse not possible on free Heroku!

Process

6 June

##Progress

  • Partner badges can be created by some specified users
  • partner have to approve a badge being awarded
  • Notification opt-out for all notifications
  • including notifications sent via the API, but will need some attention when we get a new application sending notification through the API
  • DNS for discourse http://thepeople.p2pu.org now (almost) points to our discourse (looks like the DNS is still propagating)
  • I added in a CNAME and I added the domain in the heroku.com interface

##Priorities

  • Discourse [Chris]
  • write OmniAuth strategy to work with P2PU
  • question: i agree that this is something to implement now, but does this make it harder to keep upgrading discourse as they put out bugfixes / new releases?
  • (question about how we got here -> why did we set it up on non-free heroku in the first place? was this just a mistake? github branch said it was free. yes it was a mistake, alright)
  • Courses feedback and suggestions [Erika/Dirk]
  • Improvements to the home page [Dirk -> Get Erika involved as well]
  • Grouping for the python MOOC
  • Badges Integration with Courses [Erika]
  • Do a sync up again on badges work / what’s the plan

Problems

  • Still not sure how to help user from Nigeria that keeps asking questions on help.p2pu.org
  • would be good if we decide on what to do with that
  • erika will take this question to the community call for discussion
  • Trello Board
  • let’s do more descriptive tasks in the trello board. yes (same for etherpads)

Process

  • Lernanta Fixtures
  • is there any possibility for us to make small fixtures to provide to the people who are playing around with lernanta in Vagrant
  • it is nice if there is some fake data in there in order to play around with this thing otherwise it can be useless
  • before we do -> what’s the audience for this, how many people will do this?
  • Not sure, but I do think it is not super important (but we do have audience we don’t know about I suspect - tim was one of them)
  • yes, you are right. but lernanta is not really designed to be self-hosted anyway (it’s not huge benefit for us if people self-host instances) and based on our experience with previous efforts to get more people involved in development work, it is a really small group of people - maybe there are other ways to make it easier for them to get involved with P2PU
  • you are right, but if there is two people doing this is one to much. And I am talking about really small fixtures with 3-4 courses/challenges/study groups?
  • you are right, but :wink:
  • Browser support for lernanta, Badges, Mechanical MOOC
  • How much do we want to provide browser compatibility (and mobile <- I thought the CSS framework was responsive)
  • http://www.browserstack.com is a great engine for testing (it is not free, though)
  • I sympathize with the question. In the past, people have used the fact that we don’t get a lot of traffic from users with old browsers as the counter argument.
  • @Erika - do you have access to the analytics account? (You should)
  • DU: to add Erika to GA
  • RESOLVED --> Can we take out the ads from the mail (I am not sure under what kind of licence we are at google, but I suspect that if even the free version is able to take out hte adds, than everopne can?)
  • which ads? which emails?
  • the adds in google mails that are aways trying to sell to me something
  • which emails though? i don’t see any ads.
  • I do get adds on the p2pu.org (do you see ads on the web interface for gmail when you access your p2pu account? or are the ads embedded inside emails you receive?) On the interface
  • Here is my suggestion:
    
  • We have a sponsored non profit Google Apps account
  • You should be a domain admin user (if not, ask Dirk to make you one) - feel free to poke around the cpanel and see if you can turn it off
  • O this is cool, I so will!

#13 June

Progress

Priorities

  • Discourse next steps
  • Someone needs to keep an eye on releases / major improvements
  • When they release reply-by-email, upgrade to main branch, review hosting decision
    
  • Q: do they have a development roadmap? no, recommendation from discourse is to follow them on github
  • Verify that we send emails with right URLs (thepeople.p2pu.org)
    
  • Are we ready to invite the community
  • YES
    
  • MOOC grouping
  • @CE what was the requirements for random selection?
  • Will discuss with June today and then decide
  • Homepage redesign
  • decide on best way to implement and how it looks
  • Write a tech blog post about
  • Implement course UX feedback from schools
  • Integration of badges with courses on p2pu.org
  • Reports - last tweaks (see above)
  • redirect / to /berlin/
  • fix missing JavaScript files: http://i.imgur.com/Jz0BBr9.png

20 June

Progress

Priorities

  • Mechanical MOOC
    write script to get data required for emails to experimental groups
  • Homepage

###Problems

  • Discourse
  • has login problems (Twitter)

###Process

#27 June

#####Three special guests today! Very cool!

  • Sebastian
  • Drew
  • Srishti
  • Drew & Srishti is working on building tools around hangouts to handle unconferences
  • Sebastian is a new volunteer looking to get involved!!

###Progress

  • Groups created for Mechancial MOOC
  • Tech update posted to blog
  • Special email for experimental group almost done

###Priorities

  • shiping badges intergration with lernanta
  • HTML mockups for homepage
  • Export list of email participants for trusted course facilitators
  • Clone an existing course
  • Finalize email for experimental groups
  • Homepage
  • Erika will start working on HTML mockups (link with Joao and Bruno)
  • Tech plan -> Build it as a Django app, that is initially part of Lernanta (makes a lot of tech things easier)

###Problems

  • Mechanical mooc email unsubscribes. Mailgun unsubscribe link implies user to unsubscribe
  • Maybe include a place on the mechanical mooc where a user can unsubscribe
  • Email account forwarding breaks participation in a group.
  • ex. user signed up with user@mail.com. That address forwards to user@anothermail.com which the user actually uses. When replying from this address messages doesn’t get sent because the address is not in the mailing list.
  • This is a standard problem in mailing lists that allow posting by subscribers only
  • Mailgun doesn’t keep stats on replies sent in mailing lists. To get the number of messages sent per mailing list, we have to parse the logs :frowning:
  • Discourse social logins are BROKEN (either not working at all, or only partially)
  • send message to community about

###Process

  • badges - lernanta integration