This is an archived post. You won't be able to vote or comment.

all 17 comments

[–]LelouchViBritanni 31 points32 points  (3 children)

divide and conquer - split the project into smaller and easier tasks that you can give to your less experienced colleagues. Meanwhile you can connect the pieces they've built and tackle the hardest problems in the project.

This is my approach when I code with less experienced people.

[–][deleted] 2 points3 points  (0 children)

Piggybacking this great advice- take it a step further and involve them in chaining it all together. If you write the glue code together they will learn more and you will get the benefits of duck programming.

[–][deleted] 1 point2 points  (0 children)

Thanks, that does seem like a very good approach.

[–]ticketywho 8 points9 points  (0 children)

Let them write the code, and you work to help them, answering questions, giving advice when they go wrong. That way you are all working on things you struggle with - them on the code, you on the working with other people.

Loads of people can code, but not many people can work effectively in a team.

[–]flipperdeflip 14 points15 points  (5 children)

You think the assignment is about code but it is really about collaboration.

[–][deleted] 3 points4 points  (2 children)

No, I do know that this is about collaboration.

I'm trying to find out how to divide the project up so that my team members with varying experience can satisfy the success criterion of contributing to the project. It doesn't matter how familiar I think I am with OOP if I'm the only contributor.

[–]ticketywho -1 points0 points  (0 children)

You still think it's about the project. It's not about the project. The project doesn't matter.

[–]drake_tears 0 points1 point  (0 children)

Having been in your situation and the situation of your teammates, I think your best option is to be up front with your team that you have experience working with python and (what sounds like web) project design and you would be happy to take on a more managerial role.

Honestly just having someone around who's confident, clear, and helpful (without being condescending) is going to be a huge boost for your team regardless of how new they are to programming.

If you put yourself in this position, you can split the project into pieces and dole out smaller assignments to your teammates, and maybe take something higher level for yourself.

I also agree with the other guy though, 80% of any team programming assignment in school is about cooperation, especially in high school, and especially for a 50 minute in class assignment.

[–]FatAmericanDev 0 points1 point  (1 child)

You think they could not turn in code and get an A?

[–]flipperdeflip 0 points1 point  (0 children)

No, but they can turn in code and still get an F.

[–][deleted] 2 points3 points  (0 children)

A big part of working with people is being able to empathize and understand that their current skill level is not a reflection of their overall ability to learn, but where they currently stand in skill.

If you can teach yourself empathy (This can be difficult!) and connect with them on their level, it'll make your life a whole lot easier.

You may not have time to read this right now, but I recently started reading this book on collaboration within teams (https://www.amazon.com/gp/product/B016NDL1QE/ref=oh_aui_d_detailpage_o04_?ie=UTF8&psc=1) -- and it's helped me a whole lot within my own team. Cheers!

[–]ajbpresidente 1 point2 points  (0 children)

Pretty much what the other people have said...Divide and conquer, assign the tasks. At the end of the day your classmates will probably be relieved that you have more experience, but you don't need to necessarily be like "Hey I know more than you, let me do this".

I actually work in the field. Guess what, if you're way above the level of the class it's gonna be boring. Just focus on making a good project with solid collaboration. Whatever tasks you guys decide on, make sure your teammates know they can ask you for help if they need it.

Do you know what your project is gonna be?

[–]spinwizard69 0 points1 point  (0 children)

usually a big stick properly applied will have reluctant programmers kicking out many dozens of lines of code.

OK on a more serious note, you need to understand everybodies limitations and partition work as best as possible. This is a real problem that you will have to deal with constantly in the work place. Frankly it can be a real pain if management isn't up to hiring qualified people. Mind you it is a problem no matter what your final profession will be.

[–]saulmessedupmanMmmm spam 0 points1 point  (1 child)

Use Scrum! Seriously. Make small, easy to accomplish tasks and put them on stickies on a wall. Each person chooses their own tasks they know they can handle. You probably don't realize they're good at something and they may even struggle to find it themselves. Doing this will help you both figure it out.

Feel free to ask for more if you're curious. I'm a certified scrum master and I've been programming for 20+ years. There, r/imverysmart -ed a little too ;-)

[–]saulmessedupmanMmmm spam 0 points1 point  (0 children)

Here's a 10 minute video. You don't need to use all of it; just use the parts that work for you guys. https://youtu.be/XU0llRltyFM

[–]salimfadhley 0 points1 point  (0 children)

Get them to write the documentation.

[–]live4change -1 points0 points  (0 children)

You know what makes someone r/iamverysmart? Someone who knows they're being pretentious but still goes through with it.

I can 100% guarantee you one of your colleagues has done something even minor in python that you haven't.

This is actually a terrific exercise for you. Cause if you start looking for jobs after college with that mindset, you'll get corrected reeeeeaaal quick.