Kompendium wiedzy - renowacja :)

3

...cos o czym wspominalem juz jakis czas temu @Coldpeer oraz @madmike, a mianowicie przywrocenie swiezosci nieco zakurzonemu dzialowi - Kompendium wiedzy.

Obecnie klikniecie w link Kompendium wiedzy przenosi nas praktycznie do statycznej strony z listami kategorii. Chcialbym calkowicie przebudowa te podstrone, tak, aby zawartosc byla generowana dynamicznie. Przede wszystkim chcialbym prezentowac tam popularne artykuly z ostatniego tygodnia, miesiaca (na podstawie liczby odslon), jak i rowniez linki do nowych tekstow oraz zmodyfikowanych. Chcialbym rowniez ulatwic dodawanie nowego tekstu. Np. taki prosty kreatorek, w ktorym user wpisuje tytul, kategorie, w jakiej chcialby go umiescic, a nastepnie jest przenoszony do formularza edycji takiego tekstu.

Oprocz tego chcialbym prezentowac na tej stronie jakas mini mape kategorii (uwazam, ze nawigacja w tym dziale niestety kuleje :()

Kolejna to przyciagniecie autorow tekstow. Poniewaz jedna sprawa to udostepnienia narzedzia, a druga to przyciagniecie osob, ktore chcialby tam cos publikowac :) Jakas bonifikata finansowa? Tyle, ze kokosow by z tego nie bylo wiec nie wiem, czy bedzie to wystarczajaca motywacja ;)

Co myslicie? Sugestie i propozycje mile widziane :)

3

Może ocena artykułów wpływająca na reputację w formie "bonifikaty"? W końcu po coś ta reputacja jest.

0

Ocena... hmm... nie mamy poki co systemu oceny tekstow. Ale modyfikacja tekstu, napisanie nowego - owszem, bedzie zwiekszala reputacje. Jednak nie bedzie tak, ze poprawienie przecinka albo dodanie spacji od razu zwieksza nam reputacje +10.

5

Adamie, autor zawsze jest jeden - ten, który stworzył artykuł. Tu jeśli chodzi o współautorów nie ma co się bawić w jakieś analizy - wystarczyłby prosty szablon, który wyświetla współautorów - albo się sami w odpowiednie miejsce dopiszą, jeśli uznają, że wnieśli aż taki wkłada, albo ich sam autor może dopisać.

Jeśli chodzi o przyciągnięcie autorów, to tutaj też dosyć ważne byłoby umieszczenie w profilu linków do artów, które napisał czy nawet jakieś odznaczenie pod avatarem.

1

@Adam Boduch: Ja byłbym za tym, żeby przedstawić rozpiskę w bardziej przyjaznej formie. Nie wiem, może po wejściu w "Kompendium wiedzy" niech pokazują się kafelki z nazwami głównych kategorii + logo do każdego kafelka? To by było znacznie bardziej zachęcające.

1

Fajny pomysl, ale mowisz o "kafelkach" prowadzacych do danych kategorii, a nie danego artykulu.

0

A co z kiepskimi artami? Co z dziurawymi przykładami (co zaobserwowałem na szybko w PHP)?
Bo nasmarować byle jaki art w pogoni za punktami (które miałyby być przyznawane za utworzenie arta (link)) to żadna sztuka :>

0
dzek69 napisał(a):

A co z kiepskimi artami? Co z dziurawymi przykładami (co zaobserwowałem na szybko w PHP)?
Bo nasmarować byle jaki art w pogoni za punktami (które miałyby być przyznawane za utworzenie arta (link)) to żadna sztuka :>

Szczerze? nie wiem :D

0

@Coldpeer: pole "Autor" musi byc przy tekscie. W poprzedniej wersji layoutu nie mielismy. Byly sugestie, aby jednak wyswietlac autora tekstu; wielu userow dopisywalo sie jako "autor" w tresci. Jak widac, model taki jak na wikipedii, nie sprawdzil sie u nas.

Stad, tak jak mowi @madmike: dobrze, by bylo pole "Autor" tak jak obecnie oraz sekcja "Wspolautorzy" z lewej strony tresci artykulu. Testowalem mozliwosci funkcji PHP - similar_text() aby porownywac rewizje artykulow i procentowe zmiany w tekscie. Funkcja ta jednak jest zbyt wolna :( Porownanie kilkunastu rewizji sredniego artykulu trwa kilkanascie sekund. Zeby podejsc do tego tematu, trzeba by bylo zapisywac te dane w bazie przy kazdej rewizji :/

Moze wiec poki co w sekcji Wspolautorzy wyswietlac liste userow, ktorzy wprowadzili zmiany w danym tekscie.

0
napisał(a):

Moze wiec poki co w sekcji Wspolautorzy wyswietlac liste userow, ktorzy wprowadzili zmiany w danym tekscie.

Nie wiem czy to ma sens. Oczywiście sama sekcja Współautorzy jest bardzo potrzebna, ale wpisywanie tam z automatu ludzi, którzy wprowadzili zmiany z automatu? No nie wiem. Może po prostu wystartujmy od opcji zero - sam autor i pusta sekcja współautorzy. To jest taka bezpieczna, przyszłościowa opcja. Jeśli autor/współautor uważa, że powinie tam się znaleźć wpis z którymś z współautorów, to po prostu zmodyfikuje art.

Wiem, artów jest od cholery i trochę, ale to też da sposobność do ich poprawienia/edycji czy też uzupełnienia. Edytujących zawsze można sobie sprawdzić w historii edycji.

Po prostu pilnujmy/wpisujmy ich w powstających artykułach czy też przy okazji edycji/poprawiania starych.

0

To jest na chwile obecna najprostsza opcja. Nie potrzeba kolejnej tabeli, mechanizmu dopisywania wspolautorow. Tych (autorow) juz mamy bo mamy historie edycji. Wszystko dziala z automatu. Podobnie jest na filmwebie (tam tez jest sekcja osob, ktore wspoltworza dana strone).

0

A czy ktoś będzie sprawdzał np: "wypociny", które tam ja czy ktoś inny będzie pisał?

0
dzek69 napisał(a):

A co z kiepskimi artami? Co z dziurawymi przykładami (co zaobserwowałem na szybko w PHP)?
Bo nasmarować byle jaki art w pogoni za punktami (które miałyby być przyznawane za utworzenie arta (link)) to żadna sztuka :>

Po prostu trzeba będzie na to zwracać uwagę, usuwać to co zbędne, wstawiać np. szablon "do dopracowania" dając autorowi czas na poprawę/uzupełnienie itp.

Adamie, to co jest naprawdę ważne, to jakaś sensowna możliwość zapanowania nad artami z poziomu kompendium. Usuwanie, przenoszenie, przywracanie poprzedniej wersji, blokowanie artu - to naprawdę nie może być z poziomu PA.

0
napisał(a):

To jest na chwile obecna najprostsza opcja. Nie potrzeba kolejnej tabeli, mechanizmu dopisywania wspolautorow. Tych (autorow) juz mamy bo mamy historie edycji. Wszystko dziala z automatu. Podobnie jest na filmwebie (tam tez jest sekcja osob, ktore wspoltworza dana strone).

Np. tak:

435ca1cd27.png

0

btw: to działa czy dopiero ma działać, bo naciśnięcie tego daje 404

cache.png

0

Koniecznie należy dodać opcje - zgłoś 'ścierwo' (oczywiście ładnie nazwaną). Dzięki temu będzie wiadomo które artykuły trzeba sprawdzić pod kątem błędów. Może to zrobić ktoś doświadczony, żeby podbić sobie reputacje.

0

@Coldpeer: a moglbys zapodac w pastebin takim algorytmem, o ktorym mowiles? ktory wyliczy procentowy udzial kazdego usera we wszystkich edycjach?
@madmike: wlaczylem, ale to jest opcja dla moderatorow tylko :]

0

@Adam Boduch

Hmm.. Na szybko z palca:

limit = 50; // procent zmian

autorzy, wspolautorzy, korektorzy = array
rewizja_id_prev = pierwsza wersja
rewizje_ids = array // (z wykluczeniem pierwszego, powyzszego ID), posortowane od najstarszej

rewizja_len_prev = strlen(tekst[rewizja_id_prev])

for rewizja in rewizje_ids:
  len1 = strlen(tekst[rewizja])
  len2 = rewizja_len_prev

  rewizja_id_prev = rewizja
  rewizja_len_prev = len1

  if(len1 == 0) continue;

  blad_wzgledny = abs(len1-len2)/(len1 > len2 ? len1 : len2)

  if(blad_wzgledny > 0)
    autorzy[tekst_autor[rewizja]][] = blad_wzgledny

for autor in autorzy:
  points = 0;
  for a in autor:
    points += a;
  points /= count(autor)

  percent = points * 100
  if(percent >= limit)
    wspolautorzy[] = key(autor) // ID autora
  else
    korektorzy[] = key(autor)

Nie sprawdzalem tego i specjalnie nie analizowalem, nie jestem wiec pewien czy to na pewno najlepszy algorytm :) Niemniej takim zarysem to widzialem.
Szczerze mowiac nie myslalem jeszcze nad tym jaki procent ustawic, moze warto potestowac i zobaczyc.
Ponadto strlen jest ogolnie dosc kosztowne czasowo - myslisz Adamie ze moze mozna zapisywac przy kazdej rewizji ilosc znakow tekstu w osobnej kolumnie w bazie albo jakims innym cache'u?

Oprocz tego, gdybysmy chcieli jakos bardziej szczegolowo do tego podejsc:

http://en.wikipedia.org/wiki/Levenshtein_distance
http://stackoverflow.com/questions/3106994/algorithm-to-calculate-percent-difference-betweem-two-blobs-of-text/3107229#3107229
http://en.wikipedia.org/wiki/Damerau%E2%80%93Levenshtein_distance
http://php.net/manual/en/function.levenshtein.php (Istnieje tez wbudowana funkcja w PHP)

Ale podejrzewam, ze tez moze byc to wolne i pytanie czy w zasadzie potrzebne ;)

1

@Coldpeer: zaimplementowalem cos podobnego o czym pisales. Niestety nie jest to doskonale rozwiazanie. Pierwsza przyczyna jest fakt, ze wlicza rowniez strony przywrocone przez kogos (np. po akcie wandalizmu). Tzn. jezeli user A napisal tekst na 1000 znakow, user B, zmodyfikowal tekst (zmniejszyl do 1 znaku), a user C przywrocil pierwsza rewizje, to oboje maja po rowny udzial w tekscie.

Niestety w bazie nie ma informacji, ze dana rewizja zostala przywrocona z historii :( Trzeba to zmienic, przed zmiana w systemie reputacji (juz dodalem takie zadanie).

Druga niedogodnosc takiego rozwiazania jest taka, ze ktos naprawde moze postarac sie o spore poprawki w tekscie, usuwajac przy tym niektore zdania w poprzedniej wersji, ale poniewaz roznica znakow pomiedzy dwoma rewizjami jest dosc mala, jego udzial w tekscie (procentowy) bedzie maly. Eksperymentowalem z funkcja similar_text() i ona by sie nadala. Jednak jest koszmarnie wolna. Porownanie 2 wersji dlugiego tekstu moze zajac nawet kilkanascie sekund (Core i5).

EDIT: poprawka na algorytm, ktora nie uwzglednia tekstow, ktore zostaly przywrocone z historii

1

Każde takie rozwiązanie "robione z automatu" będzie niosło za sobą więcej niejasności niż prawdziwej włożonej pracy - dlatego byłem za opcją zerową - na dziś autorem jest tworzący, bez współautorów. Kto uważa, że powinien się tam znaleźć (lub autor tak uważa) dopisuje się do szablonu współautorzy, chociażby przy pierwszej okazji przejrzenia artykułów, korekt itp.
Przy wszystkich nowych artach to już by funkcjonowało na bieżąco, stare po prostu w miarę potrzeb by się uzupełniało.

2

Co do prezentowania np. najpoczytniejszych tekstow tego tygodnia, myslalem o wyswietleniu ich w takiej postaci:

79a5144e37.png

No wlasnie - tutaj nasuwa sie pytanie. Czy umozliwic userom wstawianie miniaturek do tekstow? :/ Mam obawy, ze ludzie nie beda tego po prostu robili. W miniaturce taki "kafelek" moze wygladac zachecajaco i przykuwac uwage, ale jak mowie - mysle, ze ludziom nie bedzie sie chcialo tego robic.

0

Na Forbocie jest wręcz wymóg dodania fotki do artykułu - czasem moderator musi zadziałać, ale w większości przypadków jakoś to działa.
Ale nie można przegiąć pały jak DIYdrones.com gdzie moderatorzy przesuwają pierwszy z brzegu obrazek na górę "bo tak ładniej" niszcząc totalnie kontekst.

Błąd: Błędny klucz. Sprawdź ustawienia cookies nadal straszy...

0
  1. Odnosnie ostatniej zmiany. http://4programmers.net/Z_pogranicza/FAQ/Jaki_j%C4%99zyk_programowania_wybra%C4%87
    Zastanawia sie, czy dziala to tu poprawnie. Jestem wymieniony jako wspolautor, ale poprawilem tam tylko literowke (1. edycja) i dodalem kategorie (2. edycja). Prawda, sa obok procenty, ale czy mimo to powinno sie mnie (i pare podobnych przykladow) klasyfikowac do wylistowania?
    Zauwazmy ze poprzednio wspomniany przeze mnie przyklad (QuickSort) dzialal lepiej - @Marooned nie zostal tam wylistowany ;)

  2. tak btw, na glownej w informacyjnym tekscie:

Niezłym przykładem jest liczydło.
Nie wiem, czy nie wypadaloby skorygowac tego zdania, za to "niezlym przykladem" jestem pewien ze dostalibysmy po dupie od nauczycielki j. polskiego :P

  1. nie wiem jak wyszukac powyzszy art btw? http://4programmers.net/Szukaj?q=jaki+jezyk+programowania&cat=9
0

No wiecie, ja się wcale współautorem nie czuję, cała moja robota to wpisanie już istniejących danych do formatowania tabelki ;)

wspolautor.png

0

@Coldpeer: jakis nieszczesny babol tam sie wdral, do tego tekstu (bug przez nikogo nie zauwazony do tej pory), ktory jak widze zdublowal wersje tego tekstu :/
Aa, i nie dodawalem warunku, ktory usuwalby wspolautorow z listy, w przypadku, gdy ich poziom edycji nie osiagnie XX%. Czyli user pojawi sie na liscie jezeli stopien edycji jest wiekszy niz 0.01%.

0

67e56727ce.png

Po naprowadzeniu kursora nad taki element, moze pojawic sie nazwa kategorii (pol przezroczysta). A propos kategorii: moze wypadaloby zmienic ich liczbe, pododawac nowe oraz pousuwac niektore stare? Moze od razu zmienic tez sposob prezentacji tekstow, w danej kategorii na bardziej atrakcyjny? chodzi mi tutaj o kategorie, ktore sa de facto artykulami, ale nie maja zadnego tekstu, np.:

http://4programmers.net/Assembler/FAQ

0

PA też pokazuje duble :(

duble.png

chociaż w historii edycji jest ok:

historia.png

0

@Adam Boduch - przy okazji i o artykułach - ostatnio poprawiałem swoje artykuły i coś się dzieje niedobrego, bo po pierwszej modyfikacji wszystko było Ok, ale po drugiej wracała treść poprzedniej wersji; I znów poprawiałem i zapisywałem, coś przeoczyłem więc znów modyfikacja, a po zapisie znów poprzednia wersja tekstu;

Nie wiem czy ktoś to zauważył wczęsniej, ale u mnie przywracało kilka razy poprzednią wersję; Problem też jest z załącznikami, bo także znikały, mimo że nazwy w treści artykułu i na liście załączników były takie same (czyli prawidłowe).

0

To, co mowisz jest niepokojace. Nie(stety) ja nie zaobserwowalem takiego efektu. Potestuj sobie tutaj, ok? http://4programmers.net/Brudnopis

2

Pierwszy, niekompletny draft:

c51f43618f.png

Co myslicie? Ja nie jestem przekonany co do tego wielkiego elementu do dodawania artykulu. Tzn. jestem pewien, ze taki element powinien znalezc sie pod zakladka Kompendium wiedzy. Niestety nie mam pojecia jak nalezaloby zaprojektowac taki formularz oraz przede wszystkim okreslanie kategorii.

Co powinno rowniez znalezc sie na tej podstronie? Przede wszystkim lista ostatnio zmodyfikowanych tekstow, wraz z info z loga + link do diff'a. Bardzo waznym elementem bylaby tez lista kategorii, np. w formie kafelek, o ktorych wspominal @Demonical Monk.

@Demonical Monk: masz moze jakis link do strony, gdzie to zostalo rozwiazane w ten sposob?

1 użytkowników online, w tym zalogowanych: 0, gości: 1