Summer of Haskell

59 views
Skip to first unread message

Pranjal Tale

unread,
Apr 22, 2017, 5:27:17 AM4/22/17
to codeworld-discuss
Hello, 
This is Pranjal Tale, a Sophomore at Indian Institute of Technology Roorkee, India. I would like to contribute to codeworld through Summer of Haskell. I am new to haskell and codeworld both, could you please help me out on how should I start.
Also, I went through the ideas page and would like to work on - 'CodeWorld website features to help students and teachers'. How should I start in order to prepare for this project?  

Thanks!

Regards,
Pranjal Tale

Chris Smith

unread,
Apr 22, 2017, 4:58:09 PM4/22/17
to codeworl...@googlegroups.com
Hi Pranjal! Glad you're interested in working on CodeWorld.

If you haven't done this already, a good place to start would be to try out the system, and get familiar with the existing tools and how you can use it.  The guide will get you started for a while.  There are a bunch of other unfinished resources laying around, too:
I hope to share my recent BayHac presentation, as well, as soon as the video is available (slides are already linked from https://wiki.haskell.org/BayHac2017, but I don't tend to put much text on slides, so there's a lot in the video that you can't get from just reading slides).  It goes over the motivation and background in a lot more detail.

Once you're familiar with the project (or if you already are), brainstorming some concrete thoughts and directions would be a good start.  Think about what you feel confident you can accomplish, and what is exciting to you about the project.  The idea you've chosen is one of the least defined on the page, so it's kind of a blank slate.  A successful proposal here would have to include specifics on what exactly you hope to do in the course of the summer.  Think of the proposal as your chance to say what *you* think would be helpful to the project, and how you think it should work.  Of course, that will be easier once you understand the existing tool in more detail.  Hence my suggestion that you clock some hours using and exploring the environment first.

Feel free to check back with more concrete questions or ideas.  I can definitely give you some early feedback so you don't end up proposing something that's not viable.  Please do ask for this, since there are some quirky aspects to the project that you might not think of as a newcomer.  (For example: there are fairly odious legal requirements around privacy of student records in most places; so as you consider tools that might help teachers, I'd steer away from anything that looks like record-keeping.)

Hopefully that gets you started.  Thanks for your interest.

--
You received this message because you are subscribed to the Google Groups "codeworld-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to codeworld-discuss+unsubscribe@googlegroups.com.
To post to this group, send email to codeworld-discuss@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/codeworld-discuss/efdf0308-17ee-428c-8c21-4a52b667ff79%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Chris Smith

unread,
Apr 22, 2017, 8:20:42 PM4/22/17
to codeworl...@googlegroups.com
Just after I responded, Dan posted the video from BayHac.  You can watch that at https://www.youtube.com/watch?v=7CGuI9HcfqQ.  I think it's probably a good way to come up to speed on the motivation and background of CodeWorld, which is pretty important if you're going to propose better tools for the teaching environment.

Pranjal Tale

unread,
Apr 23, 2017, 1:11:25 AM4/23/17
to codeworl...@googlegroups.com
Sure I'll look into this and come back with more ideas and tools that can be added in Codeworld.
Thanks.

Pranjal Tale

unread,
May 1, 2017, 2:41:09 AM5/1/17
to codeworl...@googlegroups.com
So I spent the entire day yesterday in learning more about Haskell, Codeworld, How codeworld works, How the request is sent, How the code is saved, Importance of the hash and dhash, Directory Structure of source code, How the code is organised in each directory and much more.

Also after looking again into the project ideas page more deeply I got struk with these 3 projects to work upon. I felt that these three projects are of equal importance for codeworld(please correct me if I am wrong). I am also facing a little difficulty in deciding the project out of three. Please help me out. 

Points I considered about the project:
1. CodeWorld web site features to help students and teachers
  This would be a great project to integrate classroom tools and other tools in order to make it more comfortable and better for teachers and students. Where they can have their classrooms, teachers can provide assignments and students can submit the same, can have an integrated env. for Q&A sessions related to code, etc (I have to think for more features that can be added under this project).

2. Improvements to parsing, compiling, and errors
  Showing errors and warnings to user in more detail makes it easier for user to debug and solve the issue easily. Main task will of adding more specific error messages and warnings, preprocessing the code in order to look for common mistakes. Also I have a idea, we can implement some module similar to  analytics in particular with the error handling, that will keep track of the error and error message and will help us to understand more clearly. Also in this idea we will keep the track over the error and error message only not on the user, keeping their identity w.r.t. error anonymus. It will also help us to know whether the solution we provided(in terms of error message) is helpful or not. Still there are more things that can be thought of about this project.

3.  Finishing the CodeWorld Blocks UI
  Blocks is a great feature of Codeworld it allows you to write code with the help of connecting blocks. I would love to work on this and make it better. Also it is of great importance for Students and beginners making it prior in the list. But there it is mentioned that this is a difficult one. The main task under this project will be to resolve all the issues and build all the features mentioned here.  


The opinion provided about each project might be wrong(Please correct me if so). I tried to expain each project in very brief, a lot of brainstorming can be done over each project. These all are very basic ideas about the each project.  I am a bit confused to select one and start working over the proposal for. I think it would be better to select the one which is of max priority with respect to codeworld. Also I am likely to work on all three of them equally. Could you please help me out in selecting one.

Thanks! 

Chris Smith

unread,
May 1, 2017, 4:06:17 AM5/1/17
to codeworl...@googlegroups.com
My first reaction is to try to persuade you against the blocks project, unless you are very motivated.  I don't see myself trying it again any time soon.  It will stick around, and if anyone else is motivated to do something with it, that's great.  But my experience last fall  was that it really failed to get kids engaged in the way I'd hoped, and I don't know any easier answers.  On top of that, the pedagogical direction we're going is to look at kids grappling with the syntax of mathematical expressions as an advantage of the platform.  If they cannot write expressions to express ideas without help from the blocks, this probably indicates missing skills that we should be trying to develop, not work around.

Since you say you don't have a preference, try taking a look at one of the first two.

Of your remaining options, I could see either panning out.  The question is where you feel you have the best ideas to propose, and the most motivation to work.  I will say that a strong proposal centered around error messages would be very interesting to see.  This is definitely a big problem, and a concerted effort could make real progress.  There's evidence that improving error messages has a real impact on learning (for example: http://wiki.science.ru.nl/tfpie/images/6/6e/TFPIE16-slides-emachkasova.pdf and its references)

Reply all
Reply to author
Forward
0 new messages