Zone of Proximal Development

Zone of Proximal Development

I decided to write this, in an attempt to address some issues that I have when contributing to projects. such as free software projects or engaging in the related communities.

As I am currently working as a teaching assistant, our work is based on theories of learning etc. Therefore we follow research and ideas such as Zone of Proximal Development by Lev Vygotsky,

So how is this applicable to contributing to software? The simple answer is people seem to assume that the person who is trying to undertake a task has the same level of understanding as others.

Most of my Open University study was around Science. Therefore using tools such as git, is hardly something that I do daily. I can, just about.

Which for me is sufficient.

On a similar note is tasks like key signing. For most people people seem to use gnupg and a mail client plugin for this. Their mail client can implement this for signing or encrypting e-mails. Since Thunderbird 78, Thunderbird has integrated OpenPGP which is great, only it hides a lot of the complexity,in the back ground, this makes what would probably be a simple tasks much more complex for those who don't really understand what they are doing.

Again, there is an assumption people can 'just do things'

So within ZPD

So for the most part, we should not assume a learner, user or potential contributor can perform all the tasks that is being asked. We need to figure out what they know first and try and help them provide us with what we need.

In general it is far easier to provide face to face support, which is not possible in many cases.

I think as a community, we sometimes need to take a step back and remember what it was like when WE were first learning something new, it is difficult at first, till we find that one tool that make things easier. Until then we probably struggled.

Not everyone is as experienced or confident as you are, so will potentially take a lot longer to figure out something that is designed to help you help them.

We should also not assume that persons level of education is less than ours, a person with a degree in Computing is equally degree qualified a degree in Chemistry (for example). However both can perform complex tasks. but probably can't perform each others tasks. Education is only a factor in this respect.

For most people, they want something to 'just work' and not have to fiddle to get it working or try to explain what they are doing, which if you are not sure, just ends up frustrating when ask questions you can't understand let alone answer.

So trying to get a device working that requires a user to load kernel modules in, is really beyond a lot of people without the pre-requite understanding, on a similar note, When installing Debian 11 on my netbook I found that networking simply didn't work, or the install didn't complete., in fact upgrading from 10 to 11 seems to break networking fully. So trying to ask for help isn't easy, especially when there is no easy way to tell people what the error is.

In the above case the following would most certainly apply

Or in this case they would need face to face assistance and even then the error could be something that a person with expertise can't easily fix.

I am not sure what the solution is, perhaps just to say, please remember, just because you are an expert, doesn't mean others are too.


Free Software and Hardware



Donate using Liberapay

Creative Commons Licence
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License

MastodonPeertubeQoto sign up


Donate using Liberapay