Jump to content

Talk:WikiCode

Add topic
From Meta, a Wikimedia project coordination wiki
Latest comment: 2 years ago by NguoiDungKhongDinhDanh in topic Join button is broken

Talk-pages from merged articles

[edit]

Already In Existence

[edit]

As I see it their are two ways to run a wiki like this, the first way is like literate programs where its code snipplets, the secon would replicate yet another existing wiki, coDEVwiki. So requrdless of how it would be ran t wold replicate an already existing project.--168.156.171.182 18:11, 2 February 2007 (UTC)Reply

Erik Moeller mentioned on foundation-l that there already exists such a project, see http://en.literateprograms.org/ --Dedalus

Never heard of it, and from what I can tell th link appears to be broken, I cannot get to the site.--Ryan524 18:13, 30 December 2006 (UTC)Reply
The site seems temporarily down. You can read it in the google cache. The site says: "LiteratePrograms is a unique wiki where every article is simultaneously a document and a piece of code that you can view, download, compile, and run by simply using the "download code" tab at the top of every article."
Angela 18:29, 30 December 2006 (UTC)Reply
Well i have to see the whole site, because I think his would make a great wikimedia project. But from what I can tell from the cache is its either old or they have 200 articles which I think is lower than the project should generate, but that could be due to:
-Lack of structure
-The site being new
or other factors I won't discount until I see the whole site.--Ryan524 18:40, 30 December 2006 (UTC)Reply
Actually, the cache says they have 310. :^) – Minh Nguyễn (talk, contribs) 08:14, 31 December 2006 (UTC)Reply
It's a pretty good site (well structured and some useful customizations to MediaWiki.) It was started by en:User:Deco and he would likely be interested in making this a WikiMedia project. —Ruud 13:03, 1 January 2007 (UTC)Reply
There's even another wiki with this very same idea by the name rosetta code. It's an idea that already exists. However, if you're excited by the idea, you don't need to start your own wiki to contribute. Just get to work improving one of the existing ones.

LiteratePrograms / WikiCode

[edit]

The site en.literateprograms.org by User:Deco is online again. I think it's a better idea to support this site rather than creating a new one (see discussion above).

In my opinion the name "LiteratePrograms" is misleading. I'd have rather assumed a reader's circle or something like that under that name. Maybe you can convince Deco and the other editors of renaming the project to the much more descriptive name "WikiCode".

And i've another proposal: As far as i have understood the idea of creating a common portal for source code there are several intentions:

  • Developers sharing knowledge
  • Developers sharing ideas
  • Developers sharing source code to include in their projects

The latter point brings me to open source and sourceforge.net. At this time i've never come to participate in an open source-project myself. Therefore i don't know if its possible at the moment to share interproject ressources like libraries with CVS and/or sourceforge.net. If not it would be a beatiful idea: To be able to include code snippets or libaries from a common source code portal directly in your project. My ideas how this can be done:

  • Creating an CVS-Interface for the common source code portal (LiteratePrograms/WikiCode)
  • Merging the common source code portal (LiteratePrograms/WikiCode) with sourceforge.net
  • Creating a sector on sourceforge.net for that purpose

Got the idea? Please correct me if i'm mistaken (and please apologize my clumsy english) --Wiki und Ylvie 15:50, 1 January 2007 (UTC)Reply


  • How exactly does this differ from the Literate Programs wiki? Main Page ... I find myself agreeing with those suggesting that this wiki be supported. Perhaps asked if they want to come into the WMF fold even? but there is a body of good stuff there already, I've used it for finding routines in C and perl. (yes a sourcefourge tie in would be VERY cool) ++Lar: t/c 14:13, 7 January 2007 (UTC)Reply

Why not merge all SubWikiCodes into one UberWikiCode?

[edit]

I have spent a few minutes per day the last few weeks trying to find a nice WikiCode and I have found a handful. Most of the ones I found have none or strange licensing (I guess GPL is the only thing that will work in practice since there is humongous amounts of code in GPL already and once it's GPL you cannot unGPL it as I understand it).

The ones I have found have been small and perhaps focused on a particular field. Or perhaps dead or lacking admin's etc. I have also thought of SourceForge but (this may be wrong) as I understand it some private company owns SourceForge and put ads on it to make money - to me that is bad and unreliable. What if SourceForge would turn "financially unsupportable"?

Also I have recently tried to find the sourcecode of a few simple core commands like diff and cat, but I have been unable to find the one for f.x. cat and that really annoys me! Also the sourcecode I downloaded for diff did not compile (on the first attempt).

What I propose is pretty simple:

  1. Make a WikiCode media wiki
  2. Recruit admin's etc from f.x. Wikipedia
  3. Sweep the internet for code and incorporate it if it is licensed under GPL - otherwise beg the author to license under GPL else ignore (or, see below, license code as images can be licensed in commons: in a few ways).
  4. Use english code only to start with (perhaps code could be included like images are included, there is an article describing the snippet/program/etc and then the code to illustrate it, the article should be many languages perhaps, the code in not as many languages)

A few structured arguments:

  1. SourceForge is commercial (or at least not run by a foundation as nice as the one that runs wikipedia (or is it?)).
  2. Other Wiki Code Projects are unstable, unreliable and/or monolithical (on guy is the admin and he might die before we get his code (compare with Python (the programming language) when it was young: pretty much one guy (Guido) created it and managed it - if he had died there would have been no Python.))
  3. It is hard to find source code even if it is GNU-free.
  4. Code you find could be filled with malware if you download it from myH4XXZ.com, but hopefully some curious admin might proofread code.
  5. If SourceForge is less evil than I suspect perhaps WikiCode could just be an interface to the SourceForge CVS/SVN/ETC-repositories with articles about the code.
  6. Code could be licensed as images can be - it might not need to be all GPL for this to work.

Thanks for sharing your thoughts. / PER9000 15:56, 25 January 2007 (UTC) (see http://sv.wikipedia.org/wiki/User_talk:PER9000 for a frequently read page.)Reply

There's little point in duplicating sourceforge and its kind in a wiki. A wiki version should concentrate (but not exclusively, as unnecessary restrictions repel users) on more self-contained, shorter pieces of code, because with those editing directly in wiki (instead of copying to an editor) works as well as is possible. Such things are also unlikely to be turned into sourceforge projects, because the overhead of creating and maintaining the project is too big in light of the size of the actual code (think of cookbook recipes instead of nuclear power plant designs).
GPL is not a good idea for the reason that the readers (whether they are also authors or not) will want to use the snippets in their own code, which may very well not be GPL (and GFDL is of course right out, as nobody writes bigger projects in GFDL, and GFDL is incompatible with any other license, including GPL). It also doesn't really matter if you can't copy source code into the wiki because it's GPL'd, because it won't take much effort to write your own version anyway. -- Coffee2theorems 19:05, 5 August 2007 (UTC)Reply

Demo Wiki

[edit]

Hi I created a demo wiki here, I haven't been able to do anything on it yet though. --Chris Grant 10:34, 3 August 2007 (UTC)Reply

Please don't waste the effort

[edit]

LiteratePrograms already exists, support that. Making a new wiki would be a textbook example of the NIH syndrome. Reinis 12:22, 4 August 2007 (UTC)Reply

LiteratePrograms looks good, but moving it to WikiMedia or Wikia would be better, as then it would have no network connectivity problems (as it apparently already has had) and it would get a bit more publicity (I've been thinking of a wiki like that and it took me a while to find it; had it been a WikiMedia or Wikia project I would've found it faster). -- Coffee2theorems 18:54, 5 August 2007 (UTC)Reply
Derrick has already thought through most of the issues discussed earlier on this page, has arrived at sensible conclusions, and as a result has created a nice site with a very liberal licence well suited to code snippets. We should definitely be supporting it. He might be amenable to making it an official WM project but I think that he does have a couple of issues that would have to be agreed on first, licensing for one. -- Derek Ross 23:31, 8 August 2007 (UTC)Reply

Wiki code-module repository proposals (OLD)

[edit]

Computer-language independent

[edit]

WikiCode Proposal: http://lists.wikimedia.org/pipermail/foundation-l/2006-December/026425.html

==Proposal==

The idea for WikiCode is to have a repository of programming source code in different programming languages. An example might be this:

Title: Show A Message Box
Programming Language: Visual Basic .NET
Purpose: To display a message box to the user.


CODE:


MsgBox("This is a Message box!")

Isn't it more sensible to think about augmenting [1] perhaps? In particular to have a wiki for all the documentation and code of all GPL projects?


Thank you!
Ryan524(talk)
WikiCode Proposer

Human-language independent

[edit]

Wikicode is a proposal for a new Wikimedia project. It will be a place for programmers to share their source code with other programmers. What is so great about this proposal is that a programming language is the same if you speak English or Portuguese or any other language. A piece of code on the English section can be quickly translated to Spanish, Portuguese, French and other languagues simply by changing the title of the code and the description! The code itself remains the same across the different languague pages! (Except for some programs that contain extensive text, those might have to be translated. This is still much easier than translating lets say a Wikipedia article from English to Russian.) There are plenty of free source code resources on the net but don't you get frustrated when you find an error in the code and can't fix it? This is where a wiki would help.

The articles in this project will contain source code, a meaningful title and a description of the program and possibly compilation. The articles will be organized by programming language first and then by program type (i.e. operating systems, games, graphic engines.)


As I see it their are two ways to run a wiki like this, the first way is like literate programs where its code snipplets, the secon would replicate yet another existing wiki, coDEVwiki. So regardless of how it would be ran t wold replicate an already existing project.--168.156.174.71 19:44, 14 February 2007 (UTC)

I'm not a big fan of this, particularly because this isn't very info-centric. Aren't Wikimedia projects supposed to be providing about information, and not be a helpdesk? Besides, Sourceforge already exists. Messedrocker 22:40, 19 May 2005 (UTC)

If I got it right, it's a "wikisnippets of code" project. There are some troubles with that:

  • Source code is not truly language-independent: comments and variable names would have to be translated, and this can lead to errors in code. But yeah, it's easier to translate. Maybe Mediawiki could be adapted to work with "interlinguistic templates": templates which take a different value if the reader has set a different language in his browser or wiki preferences. It would be useful for common variable names (foo, bar, name, address...).
  • License: GFDL may be too restrictive for this kind of resource.
  • Compilation: I think this could be too risky. Vandals could hide viruses and other kinds of malware in them.
  • Coding style (braces, hungarian notation...)

--Comae 09:02, 2 Jun 2005 (UTC)

Looks like someone has already started this project. Check out http://wikicode.frihost.net --4.189.119.131 00:18, 1 Jul 2005 (UTC)

What's the difference with Wikisource? --Patio 11:39, 5 Jul 2005 (UTC)

  • Wikisource is a collection of freely available texts (say, writings of Plato) for use as source material, not a collection of source code.

I actually googled for "wikicode" in hope of finding something. I support the idea of wikicode, people might find a fast source of algorithms and the alikes helpful. It's easier to go on to "wikicode" and search for "B+tree algorithm" than going to sourceforge, search for "B+tree", find nothing because no project includes it in their description, download a random project, search in the source code, cant find, go back to sourceforge... etc. And comparing to code search engines like koders.com, it's just got an index of very much source code, but you can't search for "B+tree" there and find a whole page dedicated to B+tree algorithms.217.211.57.252 03:49, 16 March 2007 (UTC)


I'm not sure if anyone still cares, but a project similar to this has been started at http://coding.cwhnetworks.com/ . Take a look, and see what you think :D --60.240.116.127 12:51, 22 January 2006 (UTC)

My browser protested about too many redirects. rursus 12:48, 31 December 2007 (UTC)

Comments from Proposals for new projects

[edit]

Wikimedia, MediaWiki and chrestomathies

[edit]

Rosetta Code is my site. I can tell you right now that there are a number of features that users want in such a site that are difficult to provide with MediaWiki, including data organization, finding missing examples and avoiding sifting through things they're not interested in. That said, if you'd like advice for your project, I'd be happy to offer it. On a related subject: at one point or another, a few of my users have suggested that I try to have the Wikimedia Foundation serve as a hosting provider. My primary concern is that there are a few Wikipedia policies that run counter to the success of such a project, particularly those around notability, original research and advocacy. Apart from that, I'd likely be game. --Short Circuit 14:29, 10 February 2010 (UTC)Reply

hi I need immediate help

[edit]

-- sj | help translate I have an editor at wikiproject med, who is trying to use the wikicode however he is running into problems, thank you--Ozzie10aaaa (talk) 12:12, 27 March 2015 (UTC) Reply

Global restart (sorry for my Russian)

[edit]

Main thread

  1. Discuss basic principles („What exactly we want to have“).
  2. Discuss basic algorithms („How it must work in order to get it“).
  3. Discuss probable troubles and how we will counteract if actually meet them.
  4. Go to MediaWiki and discuss the proper extensions.

National threads below.

  • Russian thread — Викикодия
    • Господа, сначала определяемся, чего мы хотим. А) Какую именно вики, каждый себе воображает разное. Б) Логику работы на самом базовом уровне, которая приводит к (А). В) Чем отличается код от статьи, какие опасности и злоупотребления нам грозят и какие средства стандартного вики-арсенала мы можем против них бросить, буде они случатся всерьёз, а не в теории. Г) А вот потом уже на МедиаВики обсуждаем, как писать конкретное расширение для работы с кодом.
      • Итак, вариант номер один: хранилище цельных проектов. К медиавики придётся прикрутить компилятор/линковщик! Вестимо, не на php написанный, хотя безумству храбрых, конечно, границ не поставлено… но зачем, если сервера, видимо, будут свои. Статьи на Си-подобном языке, шаблоны — аналог стандартных хедеров-инклюдов (надо же как-то разруливать множественные платформы). Одна статья — одна экспортируемая функция, один собираемый компилятором бинарный объектник, собрать несколько статей-функций — задача линковщика. Структура статьи проста. Название(аргументы); является заголовком экспортируемой функции. Она по этому заголовку может быть вызвана извне (из другой «статьи»). Все остальные функции обладают видимостью только внутри самой «статьи». Если среди них определена main(арг), то такая статья может быть выкачана с сервера в виде исполнимого файла, а не только исходного текста (это не снимает с неё обязанность хоть что-то экспортировать, не факт, что сильно кому-то нужное, но и иногда, может быть, и нужное). Типичное использование этого — «статья» реализует некий математический алгоритм и его экспортирует для других «статей», а main является функцией вызова этого алгоритма для тестово-демонстрационного примера (и элиминируется как мёртвый код линковщиком, если собирается другой исполнимый файл). Синтаксис проверяется на стадии предпросмотра, статью с синтаксическими ошибками сохранить нельзя. Классические вики-ограничения на переименование прекрасно помогут не развалить сложившиеся вызовы. По умолчанию статья сохраняется как неотпатрулированная и в сборках используется старая версия, кроме малоответственных хелловорлдов, которые можно настроить иначе. Тем не менее, как минимум автор может себе собрать проект именно со своей версией, чтобы проверить свою работу (это надо подумать, как сделать, ведь проект собирается из окна просмотра одной статьи, а редактируется в общем случае другая, на которую первая просто ссылается). При помощи подзаголовков можно неплохо сделать вложенные аналоги #ifdef, позволяющие часть функции (снабдив заголовком ==Linux== и там внутри ===ubuntu===, например) написать со ссылками на «статьи» API Linux, а часть (с заголовками ==WinNT==, скажем) заставить использовать винапи. Ну, или внутри ==Intel== и ===SSE=== вставить ассемблерную вставку с использованием SSE, а внутри ==default== расписать на чистом Си. Соответственно, добавление шаблонов Linux, ubuntu, WinNT, Intel, SSE даст необходимые данные, как собрать под ту или иную платформу ту или иную секцию кода. Вырисовывается очень наглядный инструмент редактирования и управления проектами, подталкивающий к такому же порядку и аккуратности, как в Википедии. А порядок и аккуратность легко перековываются в оптимизацию, как можно понять по намёкам на те же ассемблерные вставки. В плохо управляемом проекте запутываешься быстрее, чем доходишь до таких тонкостей, в удобно управляемом и структурируемом — можно и до таких глубин дойти и не заблудиться, т. е. выше аккуратность — быстрее итоговый код. Это то, чего сейчас очень не хватает. А, и ещё нюанс. Не надо путать экспорт в рамках системы пользователя (экспортные функции dll, например) и экспорт между статьями-функциями вики. За всё, связанное с системой, отвечает main, так что ограничение «одна статья — одна функция» никак не касается возможностей конечного проекта. В main можно обработать сколько угодно аргументов комстроки или выставить наружу сколько угодно функций, смотря что это за main (это чуть отличается от экспорта на обычном Си, ну да и не важно). Т. е. мы соединяем облачную компиляцию, вики-систему хранения правок и антивандализма, ну и местный диалект Си, отличающийся в редких мелочах (со своим рендером текста). И в итоге не просто сниппеты храним, которые ещё куда-то надо вставлять, адаптируя и осознавая каждый, а именно что реализуем потенциал вики-механизма связности применительно к коду. Я не представляю себе более мощного сочетания.

WikiCode or WikiScript

[edit]

WikiCode doesn't have to be big.
2 ideas:
1. Showing the equivalent keyword or symbols or common functions in all programming languages.
http://helloworldcollection.de/
2. making a library of Inputs (triggers) and a library of Actions (commands)
https://www.autohotkey.com/boards/viewtopic.php?t=5591
Regards, Stamimail

Join button is broken

[edit]

When I click the Join button it directs me to the edit page for Proposals for new projects/WikiCode/supporters, which I edited incorrectly. Thankfully this was reverted immediately. I'm not sure how to update the button correctly, but I believe it should point users to the edit page for WikiCode/supporters. - The-lambda-way (talk) 22:19, 5 March 2022 (UTC)Reply

@The-lambda-way: Fixed NguoiDungKhongDinhDanh 22:21, 5 March 2022 (UTC)Reply