open source project for student

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

open source project for student

Dan Cristian Octavian
Hello, 

I am a second year computer science student who is very interested in  working on a haskell open source project. I have no particular focus on a certain type of application. I am open to ideas and to exploring new fields. What kind of project should I look for considering that I am a beginner? (Any particular project proposals would be greatly appreciated).

Is the entry bar too high for most projects out there for somebody lacking experience such as me so that I should try getting some experience on my own first?

Would it be a better idea to try to hack on my own project rather than helping on an existing one? 

Thank you very much for your help.




_______________________________________________
Haskell-Cafe mailing list
[hidden email]
http://www.haskell.org/mailman/listinfo/haskell-cafe
Reply | Threaded
Open this post in threaded view
|

Re: open source project for student

Chris Smith-31

Hmm, tough to answer without more to go on.  I think if I were in your shoes I'd ask myself where I'm most happy outside of programming.  A lot of good entry level open source work involves combining programming with other skills.

Are you an artist?  Have a talent for strong design and striking expression?

Are you an organizer or a communicator?  The sort of person who draws diagrams and talks to yourself practicing better ways to explain cool ideas in simple terms?

Are you a scrappy tinkerer?  Someone who knows how to get your hands dirty in a productive way before you're an expert?  A wiz with unit testing and profiling tools?

I do have an education-related project I'm working on where being a smart but inexperienced programmer might be an advantage.  But it's a question of whether it's a good fit for what you're looking for.  Email me if you may be interested in that.

On Apr 11, 2012 3:53 PM, "Dan Cristian Octavian" <[hidden email]> wrote:
Hello, 

I am a second year computer science student who is very interested in  working on a haskell open source project. I have no particular focus on a certain type of application. I am open to ideas and to exploring new fields. What kind of project should I look for considering that I am a beginner? (Any particular project proposals would be greatly appreciated).

Is the entry bar too high for most projects out there for somebody lacking experience such as me so that I should try getting some experience on my own first?

Would it be a better idea to try to hack on my own project rather than helping on an existing one? 

Thank you very much for your help.




_______________________________________________
Haskell-Cafe mailing list
[hidden email]
http://www.haskell.org/mailman/listinfo/haskell-cafe


_______________________________________________
Haskell-Cafe mailing list
[hidden email]
http://www.haskell.org/mailman/listinfo/haskell-cafe
Reply | Threaded
Open this post in threaded view
|

Re: open source project for student

Jeremy O'Donoghue
In reply to this post by Dan Cristian Octavian
Hi Dan,

I am the maintainer of wxHaskell, but please don't let that worry you, as I'm actually not going to go on and recommend wxHaskell as an Open Source project for a relative beginner - it is architecturally complex, and you need to know as much C++ as you do Haskell. You might choose to *use* wxHaskell in any project you undertake, but that is a different matter.

I'm also a software engineering manager in my day job, so I have a lot of experience of what a good intern (those who come to me have generally completed their second year of undergraduate studies in the UK) can achieve - usually in fairly hardcore embedded C++, but that's beside the point.

On 11 April 2012 22:52, Dan Cristian Octavian <[hidden email]> wrote:

I am a second year computer science student who is very interested in  working on a haskell open source project. I have no particular focus on a certain type of application. I am open to ideas and to exploring new fields. What kind of project should I look for considering that I am a beginner? (Any particular project proposals would be greatly appreciated).

Long experience of many types of software project tells me that before everything else you should choose something which interests you. You need a reason to want to understand, analyze and generally get stuck into a codebase, and having an interest is what gives you that motivation.

At the same time, please don't let being a 'beginner' be too much of a barrier. I tell new interns that by the end of their internship they will be debugging multithreaded kernel-mode C++ code on an embedded target confidently and they look at me as though I am mad. However, they have all (so far) managed to succeed in doing just that kind of thing. Don't underestimate your ability to understand new concepts when you have a reason to focus hard on them.

What will help you a great deal is good mentorship. Working on a project where the development team can take time to explain to you how (and why) they think things should be done in a particular way will accelerate your learning to a remarkable degree. Far more than 100 lectures, in fact. You should also try to choose a project which is well documented - this will help you to understand how everything hands together.

Is the entry bar too high for most projects out there for somebody lacking experience such as me so that I should try getting some experience on my own first?

It is amazing what you can do when you actually make a start! I'm assuming that you are somewhat familiar with Haskell at this point (e.g. worked your way through most of Learn You a Haskell or Real World Haskell, and felt like you grasped at least 50% - if you haven't, do that first).

The key is to start with something fairly small and then use it to build up to something bigger. Most sizeable projects (wxHaskell, Gtk2Hs, Darcs, Yi, Yesod and many others) will have things on the 'to do' list which are not too large and maintainers who should be able to help.

Would it be a better idea to try to hack on my own project rather than helping on an existing one? 

I think you would learn more by contributing to an existing project. Whether that is of overwhelming importance is a question only you can answer.

Regards
Jeremy

_______________________________________________
Haskell-Cafe mailing list
[hidden email]
http://www.haskell.org/mailman/listinfo/haskell-cafe
Reply | Threaded
Open this post in threaded view
|

Re: open source project for student

Dan Cristian Octavian

Hi Jeremy,

Thank you for your encouraging reply. I understand your points and agree for the most part, especially with the mentorship discussion that you made.

I wasn't too sure about attempting to work on a more sizeable project (although I preferred that) but if you are saying that it's a reasonable thing to do, I might as well try that. I have already started checking out the larger Haskell projects. 

On Thu, Apr 12, 2012 at 12:04 PM, Jeremy O'Donoghue <[hidden email]> wrote:
Hi Dan,

I am the maintainer of wxHaskell, but please don't let that worry you, as I'm actually not going to go on and recommend wxHaskell as an Open Source project for a relative beginner - it is architecturally complex, and you need to know as much C++ as you do Haskell. You might choose to *use* wxHaskell in any project you undertake, but that is a different matter.

I'm also a software engineering manager in my day job, so I have a lot of experience of what a good intern (those who come to me have generally completed their second year of undergraduate studies in the UK) can achieve - usually in fairly hardcore embedded C++, but that's beside the point.

On 11 April 2012 22:52, Dan Cristian Octavian <[hidden email]> wrote:

I am a second year computer science student who is very interested in  working on a haskell open source project. I have no particular focus on a certain type of application. I am open to ideas and to exploring new fields. What kind of project should I look for considering that I am a beginner? (Any particular project proposals would be greatly appreciated).

Long experience of many types of software project tells me that before everything else you should choose something which interests you. You need a reason to want to understand, analyze and generally get stuck into a codebase, and having an interest is what gives you that motivation.

At the same time, please don't let being a 'beginner' be too much of a barrier. I tell new interns that by the end of their internship they will be debugging multithreaded kernel-mode C++ code on an embedded target confidently and they look at me as though I am mad. However, they have all (so far) managed to succeed in doing just that kind of thing. Don't underestimate your ability to understand new concepts when you have a reason to focus hard on them.

What will help you a great deal is good mentorship. Working on a project where the development team can take time to explain to you how (and why) they think things should be done in a particular way will accelerate your learning to a remarkable degree. Far more than 100 lectures, in fact. You should also try to choose a project which is well documented - this will help you to understand how everything hands together.

Is the entry bar too high for most projects out there for somebody lacking experience such as me so that I should try getting some experience on my own first?

It is amazing what you can do when you actually make a start! I'm assuming that you are somewhat familiar with Haskell at this point (e.g. worked your way through most of Learn You a Haskell or Real World Haskell, and felt like you grasped at least 50% - if you haven't, do that first).

The key is to start with something fairly small and then use it to build up to something bigger. Most sizeable projects (wxHaskell, Gtk2Hs, Darcs, Yi, Yesod and many others) will have things on the 'to do' list which are not too large and maintainers who should be able to help.

Would it be a better idea to try to hack on my own project rather than helping on an existing one? 

I think you would learn more by contributing to an existing project. Whether that is of overwhelming importance is a question only you can answer.

Regards
Jeremy


_______________________________________________
Haskell-Cafe mailing list
[hidden email]
http://www.haskell.org/mailman/listinfo/haskell-cafe
Reply | Threaded
Open this post in threaded view
|

Re: open source project for student

Osager Prairie
Hi Dan:

Just to share a little bit of my humble experience.
I'm also a beginner and I'm intrested in "directory manipulation" related code.
Tasks such as printing directory in a tree form etc.

So I search on Hackage and found several projects, most notably the Directory.Tree project. It's a very modest size project and could be an easy entry for some hacking.

I'm sure you have your own interests in a specific type of problems.
and I'm sure you can find a similar small project from Hackage.

Happy hacking


On Fri, Apr 13, 2012 at 11:41 AM, Dan Cristian Octavian <[hidden email]> wrote:

Hi Jeremy,

Thank you for your encouraging reply. I understand your points and agree for the most part, especially with the mentorship discussion that you made.

I wasn't too sure about attempting to work on a more sizeable project (although I preferred that) but if you are saying that it's a reasonable thing to do, I might as well try that. I have already started checking out the larger Haskell projects. 

On Thu, Apr 12, 2012 at 12:04 PM, Jeremy O'Donoghue <[hidden email]> wrote:
Hi Dan,

I am the maintainer of wxHaskell, but please don't let that worry you, as I'm actually not going to go on and recommend wxHaskell as an Open Source project for a relative beginner - it is architecturally complex, and you need to know as much C++ as you do Haskell. You might choose to *use* wxHaskell in any project you undertake, but that is a different matter.

I'm also a software engineering manager in my day job, so I have a lot of experience of what a good intern (those who come to me have generally completed their second year of undergraduate studies in the UK) can achieve - usually in fairly hardcore embedded C++, but that's beside the point.

On 11 April 2012 22:52, Dan Cristian Octavian <[hidden email]> wrote:

I am a second year computer science student who is very interested in  working on a haskell open source project. I have no particular focus on a certain type of application. I am open to ideas and to exploring new fields. What kind of project should I look for considering that I am a beginner? (Any particular project proposals would be greatly appreciated).

Long experience of many types of software project tells me that before everything else you should choose something which interests you. You need a reason to want to understand, analyze and generally get stuck into a codebase, and having an interest is what gives you that motivation.

At the same time, please don't let being a 'beginner' be too much of a barrier. I tell new interns that by the end of their internship they will be debugging multithreaded kernel-mode C++ code on an embedded target confidently and they look at me as though I am mad. However, they have all (so far) managed to succeed in doing just that kind of thing. Don't underestimate your ability to understand new concepts when you have a reason to focus hard on them.

What will help you a great deal is good mentorship. Working on a project where the development team can take time to explain to you how (and why) they think things should be done in a particular way will accelerate your learning to a remarkable degree. Far more than 100 lectures, in fact. You should also try to choose a project which is well documented - this will help you to understand how everything hands together.

Is the entry bar too high for most projects out there for somebody lacking experience such as me so that I should try getting some experience on my own first?

It is amazing what you can do when you actually make a start! I'm assuming that you are somewhat familiar with Haskell at this point (e.g. worked your way through most of Learn You a Haskell or Real World Haskell, and felt like you grasped at least 50% - if you haven't, do that first).

The key is to start with something fairly small and then use it to build up to something bigger. Most sizeable projects (wxHaskell, Gtk2Hs, Darcs, Yi, Yesod and many others) will have things on the 'to do' list which are not too large and maintainers who should be able to help.

Would it be a better idea to try to hack on my own project rather than helping on an existing one? 

I think you would learn more by contributing to an existing project. Whether that is of overwhelming importance is a question only you can answer.

Regards
Jeremy


_______________________________________________
Haskell-Cafe mailing list
[hidden email]
http://www.haskell.org/mailman/listinfo/haskell-cafe



_______________________________________________
Haskell-Cafe mailing list
[hidden email]
http://www.haskell.org/mailman/listinfo/haskell-cafe