User talk:Morn

From Rosetta Code

Morn!

(Sorry; had to make the DS9 reference. The regular greeting will come by later this weekend, when I have time, but I see by your WP userboxes that there are a few things we could use you for around here. :) )--Michael Mol 14:40, 25 December 2010 (UTC)

Aha, finally someone got the reference! Short-lived as TV is these days, I was worried everybody had already forgotten about the most handsome and eloquent character in sci-fi ever. :-) --Morn 15:42, 25 December 2010 (UTC)
It'd be really cool if you could update your user page with info about which languages you know/work with, as that's info that's not on your WP user page and it gets all semantically linked to everything when done here. (Or if it doesn't yet, it's just a template-update away.) To do that, put something like this in:
<lang>
My Favorite Languages
Language Proficiency
Foobar the bees' knees

</lang>

Substitute for Foobar and the bees' knees (and add more {{mylang}} lines) as appropriate, of course. –Donal Fellows 18:55, 25 December 2010 (UTC)
Done. Of course so far all examples on this site seem to suggest that Python and Common Lisp are the coolest languages to learn (very terse, yet comprehensible—particularly Python), so I'm not sure if I can contribute much here, because the Wiki content looks very complete for those two. This site is also a nice antidote for the current "it" languages Clojure, Haskell, and Ruby—for the most part they don't seem to be able to beat Lisp or Python in readability and compactness. :-) --Morn 20:53, 25 December 2010 (UTC)
I strongly recommend you get a feel for the task creation "process", such as it is; I noticed you have domains of interest that we don't have strong task coverage in. Apart from that, code review and linting of existing code is a useful contribution, as well. (You could also learn another language... :) ) --Michael Mol 02:02, 26 December 2010 (UTC)
I think the site could use a few more games or simple graphics demos as tasks, because too many of the current tasks are heavily geared towards language features such as recursion, complex data structures and such. Of course it's impressive when all you have to do is import the appropriate module in Python to solve a task in about 3 lines of code, but then it's not really comparing languages but standard libraries. Not that doing the latter is wrong; I absolutely love Python for its extensive standard library, but I'd like to see more tasks that are more equally within reach of powerful present-day and older languages. --Morn 11:34, 26 December 2010 (UTC)
Remote agent is another game-type task that's incubating at the moment. As for graphic demos--I wholly agree. I'll note, though, that examples aren't limited to using the "standard library"; third-party and commercial libraries are also perfectly acceptable. (It's an unrealized goal of mine for RC to touch on comparing solving problems with different libraries, as it does with different languages.) --Michael Mol 14:42, 26 December 2010 (UTC)
Graphics demos would also show that particularly those languages that are very powerful for implementing algorithms such as CL or Python are relatively inconvenient for e.g. drawing things on screen or producing sound, because you need additional libraries for that. If people ask me I like to recommend Python as the perfect language for beginners (and as opposed to 1980s BASIC, you are less likely to outgrow it completely), but some things like graphics output have not become easier in newer languages at all. JavaScript with the canvas element or perhaps Processing.js really fill a niche there.--Morn 15:10, 26 December 2010 (UTC)
As for the library intercomparison, I agree that's interesting, but then you will probably not only want to show how it's done, but also benchmark it, e.g. regular Python vs Psyco vs NumPy execution speed. And you might have to rethink the layout, because putting all solutions for a given problem on a single page might lead to overlong pages then.--Morn 15:10, 26 December 2010 (UTC)
Yeah, that's a known problem, and we've banged into it a few times already. There are some task-refactoring workarounds. Splitting solutions into subpages (RCRPG, RCBF, RCSNUSP, RCHQ9+, etc.)) and finding common differentiations in existing tasks (Hello world/Text, Hello world/Graphical, Hello world/Standard error) are the two most-widely-implemented, right now. We're settling into using Semantic MediaWiki for dynamically populating task pages based on example properties, but it's taking time to get familiar with Semantic MediaWiki, and to figure how to build the needed system of templates. Actually, the biggest problem the site has is with browseability, searchability and general layout--all of the best solutions for which require getting to know Semantic MediaWiki well enough to leverage it effectively--and I need to write an extension or two to handle things which ParserFunctions doesn't handle well, but I risk making MediaWiki turing-complete. Otherwise, the needed software and hardware is there. --Michael Mol 15:47, 26 December 2010 (UTC)
I'm wondering if there should be a better way for source code comments. I don't mean putting // or REM or # in the source code, but a template solution that e.g. displays a red dot in front of a line and when you hover over it with the mouse pointer, it shows the comment. Right now explanations are relegated to Talk pages and that seems like an inconvenient solution. --Morn 15:10, 26 December 2010 (UTC)
Explanations currently should be placed in proximity to the code, either as language comments or next to the block of code. Some contributors, for various reasons (I assume concerns about oververbosity are one of them), put their explanations in the Talk pages. Sometimes, questions are raised about whether/how an example solves a task, and the matter is worked out in the talk page. (In some of those instances, additional documentation of the code example may well be warranted.) --Michael Mol 15:47, 26 December 2010 (UTC)
This is also a good Wiki: http://en.literateprograms.org/Tic_Tac_Toe_%28Python%29 I'll have to check if that's already listed under related sites here. Perhaps they have a little too much documentation (it's almost like a tutorial).
How about a short reader survey, e.g. using mw:Extension:QPoll? If you know what readers want to see more or less of, which features they find helpful, etc., that might help you determine what to tackle next. Essentially, there are other similar sites, so it's a question of how to differentiate Rosetta Code from the rest. --Morn 16:19, 26 December 2010 (UTC)
The big thing that I've seen that differentiates RC from most of the others is its continued expansion and vibrant community. Compare Program's recent changes feed] with Rosetta Code's. Also, here's a past-year perspective on site traffic; We do better than double our traffic each year--by no means amazing progress for a website in general, but it's certainly stable geometric growth. (If you're curious, take a look at a Google Analytics' extraction of the last years' traffic). --Michael Mol 01:58, 27 December 2010 (UTC)
I find it a bit strange they don't mention search engine referrers at all, especially since that report is from Google. Even the most basic log analysis software like Webalizer lists search terms. But visitor growth looks very impressive indeed! --Morn 13:50, 28 December 2010 (UTC)
They provide that data, but I don't include it in my dashboard. Referrals are much more interesting and useful data points, even if they're nowhere near as much of the traffic. Referrals tell me which communities find what interesting. Search results just keep telling me that a bunch of people want to know how to tell if a string is numeric. --Michael Mol 13:58, 28 December 2010 (UTC)
We don't go in for surveys and polls all that much, to be honest. This isn't so much a democracy as rule by anyone willing to put in the work (with Mike being the benevolent dictator when it comes to matters technical with site operation). But that's not to say that we're opposed to having examples improved. All it takes is a one-man crusade that shows the other people who do task and solution curation what things could be with only a little extra work. “A little less conversation, a little more action please” as the song goes. Lead by example. (And I agree with Mike: the thing that differentiates RC is the community; this place has critical mass at least for now, and I'm not going away…) –Donal Fellows 14:54, 27 December 2010 (UTC)

Boilerplate welcome

Welcome to Rosetta Code! I'm Mike, and I noticed you created an account.

Some quick things you should be aware of:

Template:Mylang Helps you show what languages you're familiar with, and helps us become aware of skills with languages we haven't seen.
Category:Unimplemented tasks by language A place to find tasks missing solutions in various languages.
Blogs, twitter, facebook... We have them, and are interested in yours.
Special:Webchat Logs you into #rosettacode on the Freenode IRC channel. Not usually the most active communications medium, but occasionally helpful. It's logged at http://irclog.perlgeek.de/rosettacode/today.
Rosetta Code:Village Pump A general Q/A and discussion area.
Rosetta Code:Finances For most of Rosetta Code's history, expenses have been paid out of my pocket. I can't afford that much longer, and so you can see the state of Rosetta Code's finances, and how you may help. If you enjoy or are excited about the site, please consider reading through it.

Sorry for the boilerplate; it can be a bit difficult giving an individual greeting to each person. If you post information about your technical interests and background, I'll probably read it. If you already have put that kind of information on your user page, I probably already have; I'm always interested in how people do and can benefit from Rosetta Code.--Michael Mol 14:35, 29 December 2010 (UTC)