Jeroen,
Thank you very much! This sounds like a well-defined target for my students.
I agree that they might finish it sooner rather than later, so I appreciate
that it could lead to additional work.
I'll run this past my class, and will let you know if there are immediate
questions, etc.
Thanks again,
Steve Chenoweth
Assoc Prof, CSSE
RHIT
From: Jeroen De Dauw [mailto:jeroended...@gmail.com]
Sent: Wednesday, November 06, 2013 12:17 PM
To: James HK
Cc: Neill Mitchell; Chenoweth, Stephen V; Semantic MediaWiki developers
Subject: Re: [SMW-devel] A list of suggested developments for undergrads to try?
Hey,
With regards to the objective to engage in OO and design pattern
development, Semantic Results Formats does have several design issues
(misuse of inheritance, violation of SRP etc.) which are rather
counter-productive to the stated objective.
I second this. SRF is not suited to learn students how to something well. The
same holds for MediaWiki and SMW. We are working on removing the later from
the list, though it is not there yet.
So, do you have specific ideas that come to mind?
How about creating a fresh implementation of our wikitext ask query parser?
This would be fairly self contained and can be done without touching the
existing implementation in SMW core. When its ready it could then be used to
replace the existing implementation, though this step would likely be out of
scope. This can be developed without knowledge of MW or SMW (expect Ask
queries), and requires neither to be installed. Implementation would start from
scratch, though one can look at the existing one in SMW. The people doing this
can thus experiment with several designs, do not have to bother with unrelated
code, and work on top of well designed code, rather then the typical example of
legacy code.
The role of this parser would be to turn an ask query definition in wikitext
into the corresponding PHP object definition. The input would thus be something
like [0] into a Query [1] object.
This is something that needs to happen at some point before we can implement
related new functionality. So it'd be very helpful if this item was tackled for
us.
The item is rather smallish, and perhaps to small to fill the course.
Additional things can be done on top however. If this sounds good to you, I'll
describe it a bit more on a wiki page and link to the relevant resources.
[0] http://pastebin.com/mHNvf3yw
[1]
https://github.com/wikimedia/mediawiki-extensions-Ask/blob/master/src/Ask/Language/Query.php
Cheers
--
Jeroen De Dauw
http://www.bn2vs.com
Don't panic. Don't be evil. ~=[,,_,,]:3
--
------------------------------------------------------------------------------
November Webinars for C, C++, Fortran Developers
Accelerate application performance with scalable programming models. Explore
techniques for threading, error checking, porting, and tuning. Get the most
from the latest Intel processors and coprocessors. See abstracts and register
http://pubads.g.doubleclick.net/gampad/clk?id=60136231&iu=/4140/ostg.clktrk
_______________________________________________
Semediawiki-devel mailing list
Semediawiki-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/semediawiki-devel