Coding – THATCamp London 2013 http://london2013.thatcamp.org The Humanities and Technology Camp Fri, 09 Aug 2013 12:31:35 +0000 en-US hourly 1 https://wordpress.org/?v=4.9.12 A community for mentoring new programmers http://london2013.thatcamp.org/2013/04/15/a-community-for-mentoring-new-programmers/ http://london2013.thatcamp.org/2013/04/15/a-community-for-mentoring-new-programmers/#comments Mon, 15 Apr 2013 22:21:06 +0000 http://london2013.thatcamp.org/?p=131 Continue reading ]]>

UPDATE: Programming Mentors has now been created. It’s a community where people support each other in learning programming.

The site is newly created, and hasn’t yet been promoted. Please come over and help  build this new community.

This post is a reflection on and response to yesterday’s session “Learn & Teach:  Programming for Beginners – I can haz codings>??!”

What’s the problem?

It can be hard to learn programing on your own. Whether you want to be able to solve a specific concrete problem, or whether you’re simply curious to understand the power and potential of programming, making a start can be difficult.

Often beginners approach this problem by choosing a language and attempting to learn it. But it can be hard to make a good choice – you don’t know what the different types of language are, or which of them could be useful for the sort of work you might be interested in doing. You might choose a language that is less approachable than others, or embark on a particular course of study that is unhelpful or even counter-productive.

As you try to make a start learning programming, there are lots of things that you don’t know. Worse still, there are lots of unknown unknowns. You’re a smart and driven person, but your ignorance in this new area is pretty total. You don’t know where your new knowledge could take you, and you don’t know how to interrogate your way through this unfamiliar realm.  You’re in darkness, surrounded by a space of unknown size and dimensions, and you don’t know what questions to ask to begin shedding light.

This means that existing knowledge spaces and repositories aren’t always helpful. Extensive documentation for programming already exists, and communities like Stack Overflow drill down into most problems you’ll encounter. But they require a significant level of prior understanding. Finding the answer to a question online requires you to be able to formulate a query, and beginners often don’t know how to express the problem they’re having, let alone be able to articulate it in the phrasings that an experienced programmer would use. Even if a beginner does come across information on the topic they’re interested in, they might not be able to understand the answer when they get there. Or the problem they’re experiencing might be so trivial as to not be reflected anywhere online.

How might we improve the situation?

So how do we help people venture into programming as a new area of knowledge? I think that beginners need a mediator to help understand and clarify their goals, needs and aims, and to propose positive actions they can take to build their understanding and move towards their goals.

Does an online mentoring community for new programmers exist?

To my knowledge such a space doesn’t yet exist. There are “massive open online courses” teaching programming – eg Coursera’s CS101, Udacity’s CS101, or EdX’s CS50 – that have dedicated discussion spaces. These are helpful, as they give learners the opportunity to engage at their own level of understanding .

But these spaces can be noisy, large and impersonal. Open Study is another attempt to wrap a social element around courses, but there’s still a problem of the connections between people existing for the solving of a specific problem, rather than being closer or long-lasting. And there’s still the problem of formulating good questions, and of knowing which direction to take with one’s learning.

So I think that mentoring could be a great addition to open question and answer forums for learners.

What could an online mentoring hub for budding programmers look like?

We could create a community space designed to help new and potential programmers get on their feet. Here are some ideas about what the space could look like:

  • The space will have a culture of generous, patient explanation, and a drive to empower individuals in their learning.
  • It won’t replicate resources that exist elsewhere. It’s primarily a hub for interactions,  signposting and curating good resources.
  • It will be a space in which one-to-one mentorship can be carried out.
    Mentors can help beginners frame their understanding, and point then in the direction of useful resources. A programming mentor is an adviser, an enabler, a clarifier. They don’t do the learning for the beginner; rather they direct the beginner to the learning, and make sure that they have the right tools for the hunt. They help the beginner set up the right mental models for their learning.
  • It will give new programmers the opportunity to share their experience.
  • It won’t be affiliated to any particular course or way of study. Rather, it will take an overview of the discipline of programming, and support people in the direction that suits them best.
  • It will be a space for advertising in-person meetups. Mentors and mentees could meet up; groups could discuss common challenges, share and celebrate achievements, and learn collaboratively on small projects overseen by mentors.

I would like to find out if this would be a useful community to try and build:

  • Does such a space already exist?
  • Would such a community/platform be valuable?
  • Would you like to help build this space?
  • Would you like to join such a community, as a mentor or mentee?

If you have any thoughts, or think this is a good idea, please leave a comment here. If this is a useful project to embark on, I’m ready to roll up my sleeves and get building.

]]>
http://london2013.thatcamp.org/2013/04/15/a-community-for-mentoring-new-programmers/feed/ 38
Hack the GLAM-WIKI toolset! http://london2013.thatcamp.org/2013/04/09/hack-the-glam-wiki-toolset/ Tue, 09 Apr 2013 07:35:59 +0000 http://london2013.thatcamp.org/?p=94 Continue reading ]]>

At Europeana we’re working with the development of tools that would make it simple for a GLAM collection manager to upload content to Wikimedia Commons with good metadata quality.  We’ve come some way but there are two aspects of development where we think we could make good progress in a day with some Wikipedia developers.  And of course, if you’d like to work with something else we’d be happy to introduce the tool and its code to you.

Hacking ideas:

Adapting the Wikidata content handler to Wikimedia Commons
The added value would be to store metadata for uploaded media as semantically meaningful structured data rather than as wikitext.

See http://meta.wikimedia.org/wiki/Wikidata/Notes/ContentHandler and http://www.mediawiki.org/wiki/ContentHandler

Adding a OAI-PMH client and repository extension to MediaWiki
Some thought and work (see http://www.mediawiki.org/wiki/OAI-PMH and http://wikisource.org/wiki/Wikisource:ProofreadPage/Improve_index_pages#API) on this seems to have already taken place in the Wikipedia community and we would like to take it further.  The added value within the GLAM-sector is that it would make MediaWiki capable of harvesting metadata using the most frequently used data exchange protocol in the GLAM-sector.

Cheers and welcome!

David Haskiya

Product Developer at Europeana
david.haskiya at kb.nl
twitter.com/davidhaskiya

]]>
Hack the Europeana API http://london2013.thatcamp.org/2013/04/09/hack-the-europeana-api/ Tue, 09 Apr 2013 07:24:08 +0000 http://london2013.thatcamp.org/?p=89 Continue reading ]]>

We recently released an upgraded version of the Europeana API and would be happy to facilitate a hack session on it.  With parts of the Europeana team coming to THATcamp via GLAM-WIKI 2013 we’d be especially interested in working with Europeana – Wikipedia connections!

Some ideas:

– A bookmarklet that would use the API to allow its users to with a few clicks upload an object from Europeana (portal, exhibitions or Europeana 1914-1918) to Wikimedia Commons. We’re thinking something as simple as the PinIt-button, but with a richer mapping of metadata to the Commons templates

– A widget for creating embed snippets combining Wikipedia article extracts with selected related Europeana objects. We’ve got a prototype for this already that could be improved, embedded outputs look like this, http://kadmeianletters.wordpress.com/2012/04/01/another-test/

– Or pitch your own idea in the comments! Really, the Europeana team will be here mostly to facilitate your hack ideas!

Here are some useful links to the Europeana API if you would like to start looking around a bit.

Cheers and welcome!

David Haskiya

Product Developer at Europeana
david.haskiya at kb.nl
twitter.com/davidhaskiya

]]>