This site is an archive; learn more about 8 years of OpenHatch.

[Campus-morris-staff] suggestions for projects?

Elena Machkasova elenam at morris.umn.edu
Sat Sep 6 23:56:41 UTC 2014


Jim,

all of this sounds fantastic! We'll have quite a few people who would like
to play with cool Java, and it's great to have a documentation-based
project for beginners.

I was wondering if anyone has anything along the lines of refactoring or
writing tests. I would've had this for my Clojure project
https://github.com/Clojure-Intro-Course/clojure-intro-class, but my summer
research students cleaned up and tested it pretty well. I will try to come
up with a couple of simple Clojure tasks, though, for the Racket crowd.

Elena






On Sat, Sep 6, 2014 at 6:18 PM, Jim Hall <jhall at morris.umn.edu> wrote:

> I'll add that I can create a list of the shortest Technotes and Newsitems.
> I think it would be easier for a newcomer to start with the shortest items.
>
>
>
>
> On Sat, Sep 6, 2014 at 6:16 PM, Jim Hall <jhall at morris.umn.edu> wrote:
>
>> FYI: I've created two FreeDOS wiki entries with lists of Newsitems and
>> Technotes that we want to move from text files into the FreeDOS wiki:
>>
>>
>> http://www.freedos.org/wiki/index.php/Newsitems
>>
>> http://www.freedos.org/wiki/index.php/Technotes
>>
>>
>> The total count of Newsitems + Technotes is 403, after removing
>> duplicates.
>>
>>
>>
>>
>> jh
>>
>>
>> On Sat, Sep 6, 2014 at 4:57 PM, Jim Hall <jhall at morris.umn.edu> wrote:
>>
>>> I'm also identifying some FreeDOS Wiki <http://www.freedos.org/wiki/>
>>> cleanup projects, which would also be good for the 2-3 people with possibly
>>> no programming background. The FreeDOS website has a bunch of Technical
>>> Notes that were originally saved from emails directly into text files. I
>>> prefer to move these into the FreeDOS Wiki where they can be more useful.
>>> The Technical Notes will need to be wiki-ized (i.e. editing, so they are
>>> short articles instead of long emails).
>>>
>>> I'd be happy to work with anyone interested in this documentation effort.
>>>
>>> This is a longer-term project that we happen to be starting on the
>>> FreeDOS Project right now. There are 327 Technical Notes, but not all of
>>> them will make it into the FreeDOS Wiki. For each Technical Note, we'll
>>> need to read through the note, see if there's a topic about it already in
>>> the wiki - if not, we might create one based on the Technical Note. This
>>> effort will take weeks, if not months, so I'm not expecting this to get
>>> completed during the event. But it might interest some folks.
>>>
>>>
>>> jh
>>>
>>>
>>>
>>>
>>>
>>> On Sat, Sep 6, 2014 at 4:31 PM, Jim Hall <jhall at morris.umn.edu> wrote:
>>>
>>>>
>>>>
>>>>
>>>> On Sat, Sep 6, 2014 at 3:00 PM, Elena Machkasova <elenam at morris.umn.edu
>>>> > wrote:
>>>>
>>>>> Dear mentors,
>>>>>
>>>>> it would be great to start a discussion about projects here. We
>>>>> currently have 23 students signed up, with programming primary languages
>>>>> being python and Java, some Javascript, a bit of Racket, and some 2-3
>>>>> people with possibly no programming background (at a quick glance at the
>>>>> list). We will be sending a follow-up form to get more precise information.
>>>>>
>>>>> I know one of the mentors is interested in Jes. Any other suggestions?
>>>>> I hope we can compile a list here by mid-week.
>>>>>
>>>>>
>>>>>
>>>>
>>>> I like the Senet board game, and I recently found a version that's
>>>> written in Java: Senetgame <http://sourceforge.net/projects/senetgame/> (GNU
>>>> GPL).
>>>> For any student familiar with Java, it would be great for someone do
>>>> bugfixes. (Unfortunately, I don't know Java.) A few suggestions:
>>>>
>>>>
>>>>
>>>>
>>>> 1
>>>> . Fix the build so that the game runs via Java ("java -jar ..") rather
>>>> than relying on the compiled  Senet.exe Windows binary. The source is
>>>> there, so this should be possible - but I don't know Java.
>>>>
>>>>
>>>> 2. Remove the dependency to do an exec()
>>>> to switch between menu (Senet.jar) and game (Senet.exe). Here are the
>>>> instances (3 files):
>>>>
>>>>> $ *find source/ -type f -exec fgrep Runtime.getRuntime {} \; -print*
>>>>>         Process p = Runtime.getRuntime().exec("Senet.exe");
>>>>> *source/menu src/MenuFrame.java*
>>>>>         Process p = Runtime.getRuntime().exec("java -jar Senet.jar");
>>>>> *source/Senet.pde*
>>>>>         Process p = Runtime.getRuntime().exec("java -jar Senet.jar");
>>>>> *source/Senet.java*
>>>>
>>>>
>>>>
>>>> 3. Update the program to use completely Free audio files, rather than
>>>> MP3 and WAV (neither is completely Free - see wikipedia
>>>> <http://en.wikipedia.org/wiki/Comparison_of_audio_coding_formats>).
>>>> This would require finding new audio files to replace the MP3 and WAV
>>>> files, perhaps in AU or OGG. Here are the instances of PlaySound (1 file):
>>>>
>>>>> $ *fgrep -i playsound *java */*java*
>>>>> *Senet.java:*    standard.PlaySound("data\\sound\\Touching
>>>>> Moments.mp3");
>>>>> *Senet.java:*    standard.PlaySound("data\\sound\\Alchemists
>>>>> Tower.mp3");
>>>>> *Senet.java:*  public void PlaySound(String s)
>>>>> *Senet.java:*    standard.PlaySound("data\\sound\\throwSound.wav");
>>>>> *Senet.java:*
>>>>>  standard.PlaySound("data\\sound\\illegalTurn.wav");
>>>>> *Senet.java:*    standard.PlaySound("data\\sound\\swapSound.wav");
>>>>
>>>>
>>>>
>>>> 4. Update the images. *I would be happy to help create new graphics
>>>> files.* The game only uses PNG images; here are the instances (2
>>>> files):
>>>>
>>>>> $ *fgrep -i png *java */*java*
>>>>> *Senet.java:*  javax.swing.ImageIcon titlebaricon = new
>>>>> javax.swing.ImageIcon(loadBytes("data\\img\\ankhIcon.png"));
>>>>> *Senet.java:*    standard.GetWinner("lightwins.png");
>>>>> *Senet.java:*    standard.GetWinner("darkwins.png");
>>>>> *Senet.java:*    DrawImage("data\\img\\ankh.png",5 *
>>>>> rectWidth,rectHeight * 1);
>>>>> *Senet.java:*    DrawImage("data\\img\\vulture.png",5 *
>>>>> rectWidth,rectHeight * 2);
>>>>> *Senet.java:*    DrawImage("data\\img\\water.png",6 *
>>>>> rectWidth,rectHeight * 2);
>>>>> *Senet.java:*    DrawImage("data\\img\\stones.png",7 *
>>>>> rectWidth,rectHeight * 2);
>>>>> *Senet.java:*    DrawImage("data\\img\\eye.png",8 *
>>>>> rectWidth,rectHeight * 2);
>>>>> *menu src/MenuFrame.java:*        setIconImage(new
>>>>> javax.swing.ImageIcon(getClass().getResource("/ankhIcon.png")).getImage());
>>>>> *menu src/MenuFrame.java:*        jLabel1.setIcon(new
>>>>> javax.swing.ImageIcon(getClass().getResource("/hiero1.png"))); // NOI18N
>>>>> *menu src/MenuFrame.java:*        jLabel2.setIcon(new
>>>>> javax.swing.ImageIcon(getClass().getResource("/hiero2.png"))); // NOI18N
>>>>> *menu src/MenuFrame.java:*        jLabel3.setIcon(new
>>>>> javax.swing.ImageIcon(getClass().getResource("/title.PNG"))); // NOI18N
>>>>> *menu src/MenuFrame.java:*        aboutLabel.setIcon(new
>>>>> javax.swing.ImageIcon(getClass().getResource("/aboutImage.PNG"))); // NOI18N
>>>>
>>>>
>>>>>>>>
>>>> ​5. Add different themes. This builds on #4. It would be cool to add a
>>>> variable into the path to the graphics images. Instead of "data/*img*
>>>> /ankhIcon.png" use something like "data/*themes*/*default*/ankhIcon.png"
>>>> and "data/*themes*/*modern*/ankhIcon.png" and "data/*themes*/*neon*
>>>> /ankhIcon.png". For a quick fix, the theme could be hardcoded, or set
>>>> as an environment variable. As a longer-term project (something a student
>>>> might do outside of this event) would create an Options menu to set the
>>>> theme.
>>>>
>>>> 6. Add achievements. Some simple achievements might be "win as black,"
>>>> "win as white," "win before opponent moves any pieces off board," "win
>>>> without falling in the water," etc. A longer-term project (outside of this
>>>> event) would create a menu to view the available achievements, and mark the
>>>> ones you've already earned.
>>>>
>>>
>>>
>>
>
> _______________________________________________
> Campus-morris-staff mailing list
> Campus-morris-staff at lists.openhatch.org
> http://lists.openhatch.org/mailman/listinfo/campus-morris-staff
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openhatch.org/pipermail/campus-morris-staff/attachments/20140906/63a6cc4a/attachment.html>


More information about the Campus-morris-staff mailing list