Reklamy na mikroblogu.

0

Moze to jakos skanalizowac ? Np. osobna kategoria czy cos ?

0
WhiteLightning napisał(a):

Moze to jakos skanalizowac ? Np. osobna kategoria czy cos ?

Mozna by podzielic wg istniejacych forow.
Ja wolalbym czytac wpisy o nowych ksiazkach ("edukacja") niz offtopicowe lub "smieszne inaczej".

0
WhiteLightning napisał(a):

Moze to jakos skanalizowac ? Np. osobna kategoria czy cos ?

Przycisk 'ukryj post' jak na fb i już.

0
Olsztyn napisał(a):

Przycisk 'ukryj post' jak na fb i już.

Mamy taki przycisk, tylko że autor frameworka nazwał go Usuń.

0

Temp ban 30 dni z zakazem pisania na mikroblogu i problem rozwiąże się sam.

1

Przypadkiem reklamy wpisów z własnych blogów nie są zgodne z regulaminem?

5
Haskell napisał(a):

Jest już koniec marca, a na mikro codziennie mamy przegląd ebooków. Super, mogę kupić książkę, która mnie nie interesuje, a przedsiębiorczy mikrobloger zgarnie prowizje.

@Adam Boduch Czy coś się dzieje w sprawie reklam na mikro? Będzie możliwość ukrywania uciążliwych postów czy coś innego?

Dodałem już odpowiednie zadanie na githuba.

10

Odświeżam wątek w związku z wpisem: https://4programmers.net/Mikroblogi/View/63264#entry-63264

Temat nie został porzucony, mikroblogi będą przepisane (front end) i wtedy dodana zostanie opcja raportowania ich oraz ukrywania wpisów danego użytkownika.

Może trzeba będzie zastanowić się nad funkcjonalnością "łapki w dół"? Określona liczba łapek w dół mogłaby ukryć dany wpis? Czy to byłoby pole do nadużyć?

2

Określona liczba łapek w dół mogłaby ukryć dany wpis? Czy to byłoby pole do nadużyć?

Trzeba będzie tak zrobić, żeby moich wpisów nie dało się minusować ;)

A tak poważnie mówiąc - moim zdaniem pierwszym krokiem powinno być (o czym zresztą już wiele razy pisał @Silv) określenie jasnych zasad, co jest mile widziane, a czego nie chcemy. Na razie w regulaminie są dwa jednozdaniowe zapisy - że trzeba umieszczać treści interesujące oraz że moderator może usunąć wpis wedle własnego uznania. To jest zdecydowanie za mało.

Przy okazji odświeżania - przypomnę też, że w tym temacie pewien czas temu powstał też inny wątek, do którego proponuję zajrzeć/przypomnieć sobie temat - https://4programmers.net/Forum/Coyote/325165-propozycja_nowy_dzial_reklamy_linki_itp

5

Zanim wejdą jakiekolwiek zmiany, powinien zostać jasno poprawiony regulamin (najlepiej jakąś ankietą), tak żeby potem nie było, że jeden mod coś będzie usuwał, drugi nie i się zrobi rozpierdziel.

2

No najprościej zatem usuwać wszystko, wtedy nie będzie bałaganu.

4

Dla mnie łapka w dół to nie jest dobry pomysł. Zostańmy przy ukrywaniu użytkowników.

4
Aryman1983 napisał(a):

Dla mnie łapka w dół to nie jest dobry pomysł.

Zgadza się, zaczną się minusy odwetowe i inne kwasy.

1

Zgadza się, zaczną się minusy odwetowe i inne kwasy.

Przynajmniej coś się będzie działo :)

0

Jak dla mnie ludzie chętniej dają minusy niż plusy, więc może minusy mogłyby być ale mieć siłę ujemną, taką że 3 minusy równoważą jeden plus? Ciągle dałoby się chować trollowe wpisy (10 ludzi zminusuje), ale odwtowy minus miałby mniejszą siłę przebicia.

3

Ci, którzy są tutaj od lat powinni pamiętać czasy, kiedy można było minusować posty na forum. Powinni też pamiętać jak duży bajzel powstał dzięki tej funkcjonalności. Jestem gorącym przeciwnikiem dodawania możliwości minusowania czegokolwiek. Uczmy się na własnych błędach i ich nie powtarzajmy.

4

Moim zdaniem pomysł z minusami jest całkiem niedobry.

Największe zagrożenie widzę w tym, o czym wspomniał @czysteskarpety: ludzie będą jeszcze bardziej używać punktów do wyrażenia opinii o danej osobie, a nie o treści. Oczywiście, teraz też ich tak używają. Jest to zresztą, moim zdaniem, naturalna reakcja psychiczna:

  • lubię kogoś ≈ lubię większość jego treści -> nie minusuję / plusuję;
  • nie lubię kogoś ≈ nie lubię większości jego treści -> minusuję / nie plusuję.

Ale moim zdaniem nie warto tego pogłębiać – a wprowadzenie minusów by to pogłębiło.

Oczywiście mogę się mylić; takie jest moje przeczucie co do naszej społeczności.

8

Jestem za jak najszybszym powołaniem do życia regulaminu mikrobloga, a rozbudowane funkcje moderacyjno/łapkowo/siłowe można dodać później.

3

Hejka jeśli ktoś jest zainteresowany napisałem skrypt czarnolistujący na mikroblogu do tamperMonkey . Czarnolistować można posty, klikając na nowy guzik #czarnolista lub użytkownika dopisując go ręcznie do zmiennej blackList. Posty czarnolistowane przez klikniecie są zapisywane w pamięci rozszerzenia. Czarnoliste można wyłaczyć odklikując guzik. Wygląda to tak:
screenshot-20200118002246.png

Zeby zainstalować skryp,, wystarczy zainstalowac rozszerzenie TamperMonkey i wkleić kod.

Osobiście uważam że regulamin, powinien być dość luźny że by forum nie zmieniło się w elektrodę i nie warto przesadzać z opcjami siłowymi. Skrypcik napisałem żeby Ci którym najbardziej to przeszkadza mieli chwile ulgi i nie wymusili, drastycznych zmian, jak np. było z anonimami.

//nie jestem mistrzem js, wiec jak ktos ma uwagi, chętnie poprawie

// ==UserScript==
// @name         Czarno lista 4p
// @namespace    http://tampermonkey.net/
// @version      0.5
// @description  Dont ban me!
// @author       _flamingAccount
// @match        https://4programmers.net/Mikroblogi*
// @grant        GM.setValue
// @grant        GM.getValue
// @require https://code.jquery.com/jquery-3.4.1.js

// ==/UserScript==
//http://code.jquery.com/jquery-3.4.1.min.js

const blackList = []
const postsBlackList = [];
const btnCss = `.btn-czarnoLista {
    padding: 2px 7px 2px 2px;
    color: #777;
    position: relative;
}`
const smallSizeStyle = `max-height: 0px; display: block;overflow: hidden;position: relative;`;
const czarnoListaOnStyle =`font-weight: bold; color:#80a41a;`;

const headerSelector = `.media-heading`;
const toolsSelector = `.microblog-footer`;
const toMakeSmallerSelector = `.microblog-wrapper`;
const commentsSelector = `.microblog-comments-container`;
const commentSendSeletor = `.comment-form`;
const czarnoListaBtnSelector = `.btn-czarnoLista`;
const timeSelector =`.timestamp`;
const dummyPlusSelector = `.read-more`

const czarnoListaBtn = `<a href="javascript:" czarnoLista="" class="btn btn-czarnoLista"><b>#</b> CzarnoLista</a>`

const czarnoListaAttr = `czarnoLista`;
const czarnoPostyKey = `czarnoPosty`;

function addCss(cssContent){
    var style = document.createElement('style');
    style.type = 'text/css';
    style.innerHTML = cssContent;
    document.getElementsByTagName('head')[0].appendChild(style);
}

function hidePosts(){
    $('article').toArray().forEach(p =>{
      if(shouldBeBanned(p))
          hidePost(p)
    });
}
function showPosts(){
    $('article').toArray().forEach(p =>showPost(p));
}

function hidePost(post){
    var jq_post = $(post);
    jq_post.find(toMakeSmallerSelector).attr('style',smallSizeStyle)
    jq_post.find(commentsSelector).css('visibility','hidden').css('height','0px');
    jq_post.find(commentSendSeletor).css('visibility','hidden').css('height','0px');
    jq_post.find(dummyPlusSelector).css('visibility','hidden').css('height','0px');
    jq_post.find(czarnoListaBtnSelector).attr('style',czarnoListaOnStyle);
    compressDate(post);
    post.setAttribute(czarnoListaAttr, true);

}
function showPost(post){
   var jq_post = $(post);
   jq_post.find(toMakeSmallerSelector).attr('style',"")
   jq_post.find(commentsSelector).css('visibility','visible').css('height','auto');
   jq_post.find(commentSendSeletor).css('visibility','visible').css('height','auto');
   jq_post.find(czarnoListaBtnSelector).attr('style',"").css('height','auto');
   jq_post.find(dummyPlusSelector).css('visibility','visible')
   decompressDate(post);
   post.setAttribute(czarnoListaAttr, "");
}
function compressDate(post){
    var head = $(post).find(headerSelector).first();
    head.find('a').css('margin-right','7px');
    $(post).find(timeSelector).first().appendTo(head);
}
function decompressDate(post){
    var head = $(post).find(headerSelector).first();
    $(post).find(timeSelector).first().insertAfter(head);
}
const whiteList = ['_flamingAccount','cerrato'];

function shouldBeBanned(post){
    return isPostBanned(post) || isAuthorBanned(post);
}

function isAuthorBanned(post){
    const userName = $(post).find(headerSelector).toArray()[0].innerText;
    if(whiteList.includes(userName))
       return false;
    return blackList.includes(userName);
}
function isPostBanned(post){
    return postsBlackList.includes(getPostId(post));
}
async function loadBannedPostsList(){
    var banned = await GM.getValue(czarnoPostyKey);
    var bannedPosts = JSON.parse(banned)
    if(bannedPosts)
    {
        console.log(bannedPosts);
        bannedPosts.forEach(b => {postsBlackList.push(b)});
    }
}

function getPostId(post){
     var id = post.getAttribute('id');
     return id;
}
async function saveBannedPostsList(){
   await GM.setValue(czarnoPostyKey, JSON.stringify(postsBlackList));
}
function removeA(arr) {
    var what, a = arguments, L = a.length, ax;
    while (L > 1 && arr.length) {
        what = a[--L];
        while ((ax= arr.indexOf(what)) !== -1) {
            arr.splice(ax, 1);
        }
    }
    return arr;
}

(async function() {
        'use strict';
        addCss(btnCss);
        $(toolsSelector).append( czarnoListaBtn );
        $(czarnoListaBtnSelector).click( async (event) => {
            var btn = event.target;
            var article = btn.closest('article');
            if(article.getAttribute(czarnoListaAttr)){
                showPost(article);
                removeA(postsBlackList,getPostId(article))
                await saveBannedPostsList();
                console.log(postsBlackList);
            }else{
                hidePost(article);
                postsBlackList.push(getPostId(article))
                await saveBannedPostsList();
                console.log(postsBlackList);
            }
        });
        await loadBannedPostsList();
        hidePosts();
})();

10

Może by zrobić limit, że np. mikroblogować mogą użytkownicy, którzy są zarejestrowani np. od kilku miesięcy i którzy napisali określoną liczbę postów (ew. zdobyli ileś punktów reputacji).

Patrzę, kto najwięcej spamuje, i jest tam choćby użytkownik, który nic nie napisał na forum i jest dopiero od stycznia.

Albo są tam też użytkownicy, którzy są od kilku miesięcy, ale którzy napisali tylko kilka czy kilkanaście postów. Tak jakby ktoś założył konto głównie do spamowania i może kilkanaście postów dla niepoznaki.

No i możliwość wyciszania pojedynczych osób. Wtedy można by takiego delikwenta-spammera (a to jest kilka tych samych osób!), po prostu by wyciszyć sobie indywidualnie i nie widzieć jego postów (przy czym oddzieliłbym możliwość wyciszania na blogu od ew. wyciszania na forum. I nie łączyłbym tego np. z blokowaniem użytkowników. Bo można po prostu nie chcieć widzieć czyichś postów na blogu, a nie mieć nic przeciwko tej osobie w innych miejscach).

8
LukeJL napisał(a):

Może by zrobić limit, że np. mikroblogować mogą użytkownicy, którzy są zarejestrowani np. od kilku miesięcy i którzy napisali określoną liczbę postów (ew. zdobyli ileś punktów reputacji).

No i to jest chyba najbardziej sensowne rozwiązanie. Nie ma nic złego w tym, że link do swojego bloga wklei np. @Afish, bo jest tu od dawna, udziela się na forum, pomaga ludziom, a każdy jego wpis to solidna dawka merytorycznej wiedzy.

Problem polega na tym, że dzisiejszy świat jest zdominowany przez rozmaitych aniserowicz-wannabe, często juniorów albo nawet pre-juniorów, którzy myślą, że jak zaczną blogować, vlogować, tiktokować i co tam jeszcze dzisiejsza młodzież robi, to powtórzą sukces Macieja i kupią sobie pierwszy w mieście samochód bez LPG. A, że mają widocznie zbyt mało znajomych na fejsie i twiterze, to próbują reklamować się w miejscach, z którymi nie mają żadnego związku, takich jak 4p. Dodając do tego to, że treści w ich utworach nie ma praktycznie żadnej, to jakoś nie widzę sensu w trzymaniu tutaj takich wpisów.

2

W sumie to dobry pomysł z tym progiem wejścia w mikroblogi.

Obawiam się jednak, że punkty reputacji nie wystarczą, a jeśli będzie się wymagać napisanych x postów w kategoriach technicznych forum, to użytkownicy zaczną nabijać te posty pisząc byle co (choćby zadając dodatkowe pytania, aby takie posty nie były raportowane i usuwane przez moderację), byle się uzbierało.

3

To odwrotne rozwiązanie: domyślnie wpisy mikroblogowe lądują w jakimś grajdołku, gdzie trzeba je najpierw oceniać. Grajdołek nie jest widoczny na głównych stronach i prowadzi do niego jakiś dziwny link. I post musi mieć np. daną ilość głosów, np: 100, aby finalnie wylądowac na mikroblogu.

A wartość głosów można liczyć według wzoru: value = s * (0.001 * p ) * (0.005 * v), gdzie s, to staż na forum w latach, p to całkowita ilość postów na forum, v to całkowita liczba zebranych plusów. I tak, np. jak ktoś zbiera dużo plusów, to może mniej postów mieć i mniejszy staz na forum, by mieć podobną siłę głosu niż ktoś kto ma większy staż ale np. mniej postów i mniej plusów. Zagmatwane, ale to wyeliminuje plusowanie przez nowotworzone konta, dopiero co założone na potrzebę wypromowania postu i uwydatni, że jak ktoś ma duży staż, duże poważanie to jego głos będzie się liczył bardziej niż 1000 nowych kont. Wzór wymyślony na kolanie, przeliczniki też.

0

@TurkucPodjadek: właśnie pisałem ten post, gdy Ty opublikowałeś swój.


Na początku próg reputacji nie wydawał mi się takim złym pomysłem. Ot, automatyczne rozwiązanie; istnieje takie bodaj na Stack Overflow (pomińmy uprzedzenia – mam na myśli sam mechanizm progu, nie cały portal). Jednak im dłużej o tym myślę, tym bardziej wydaje mi się to arbitralne – czytaj: bez argumentów przeciw, ale również bez argumentów za. Na pewno brakuje mi wiedzy, chętnie poznam argumenty.

PS. Staż na forum, o którym wspomniał @TurkucPodjadek, wydaje mi się kryterium wartym rozważenia – ale wątpię, czy jedynym, a być może i nie najważniejszym.


Z innej strony wpadł mi do głowy pomysł dotyczący strony głównej. Skoro już teraz na stronie głównej mamy listę wpisów "popularnych", to warto by to wykorzystać. Na stronie głównej dodałoby się kontrolki nawigacji po stronach mikrobloga – czyli byłoby tak samo, jak pod adresem https://4programmers.net/Mikroblogi. Różnicą byłoby to, że na stronie głównej można by nawigować jedynie po wpisach właśnie "popularnych". Dzięki temu pod adresem https://4programmers.net/Mikroblogi byłyby wszystkie mikroblogi (jak obecnie), a na stronie głównej tylko te, hm, najlepsze.

Nie byłoby to rozwiązanie może satysfakcjonujące obie strony, ale moim zdaniem to dobry kompromis.

Przy okazji: nie wiem, jak teraz wygląda algorytm ustalania "popularności", ale ogólnie myślę, że powinien uwzględniać łapki oraz liczbę komentarzy. W końcu nawet jeśli wpis nie zasłuży na łapki, to dyskusje w komentarzach zasługują na to, by je uznać za dodające wartości mikroblogom, a potem ogólnie całemu portalowi.


PS. @TurkucPodjadek, jeśli chodzi o ten "grajdołek", w którym wpisy będą oceniane: moim zdaniem zbyt mała jest aktywność u nas na forum, by takie coś było efektywne. Trudno będzie oczekiwać, że wpisy otrzymają ocenę odpowiednią do swojej wartości w rozsądnym czasie (czytaj: szybciej niż np. po roku od opublikowania).


UPDATE: Chyba żeby były na forum osoby – bo ja wiem? moderatorzy mikrobloga? – które by oceniały wpisy z obowiązku.

0

@TurkucPodjadek czyli coś w styui poczekalni - jak mamy chociażby na mistrzach czy demotywatorach - dobrze Cię rozumiem?

3

Tylko z poczekalnią będzie problem jak teraz. Masz główną i poczekalnie gdzie będzie taki sam poziom jak teraz. A jesli dodamy trzeci poziom to już w ogóle nikt tam nie będzie wchodził

2

No i o to chodzi. Nikt tam nie wejdzie, nikt nie zagłosuje, nie będzie syfu na mikro. A w końcu taki jest cel.
A niezależnie od przyjętych zasad ja i tak się sam wypromuję na główną. ;)

2
somekind napisał(a):

No i o to chodzi. Nikt tam nie wejdzie, nikt nie zagłosuje, nie będzie syfu na mikro. A w końcu taki jest cel.
A niezależnie od przyjętych zasad ja i tak się sam wypromuję na główną. ;)

Myślisz np. o napisaniu skryptu zakładającego wiele kont, a potem plusującego z tych kont twoje wpisy, żeby znalazły się na głównej?
Przy okazji można by go też używać do minusowania osób, które się nie lubi. Jak już minusowanie będzie dozwolone, oczywiście

6

E tam. Zwykły, wbudowany mechanizm urkywający mikroblogowe posty wybranych użytkowników to IMHO najlepsze rozwiązanie. Tworzenie progu wejścia na mikroblog jest bez sensu, ludzie z zewnątrz chcą się promować na 4programmers i szczerze, powinniśmy być z tego zadowoleni! Ludzie w branży są różni i takie zamykanie się na świat spoza 4p jest zwyczajnie głupie. A może jednak ten link do bloga jest czymś czym warto się zainteresować co? Nawet jeśli byłby to jeden przypadek na dziesięć to nadal uważam, że warto.

A jeśli komuś przeszkadza każdy odnośnik do swojego bloga to mógłby ukryć wszystkich jak leci i po problemie.

0
TurkucPodjadek napisał(a):

To odwrotne rozwiązanie: domyślnie wpisy mikroblogowe lądują w jakimś grajdołku, gdzie trzeba je najpierw oceniać. Grajdołek nie jest widoczny na głównych stronach i prowadzi do niego jakiś dziwny link.

Dokładnie tak jest na Imgur.com - tylko twardziele zaglądają na tak zwany UserSub, ale dzięki nim na stronie głównej ląduje przesiew. A jest kilka rodzajów sortowania/filtrowanie:

  • główna (front page aka most viral)
  • popular (tu jakiś algorytm co najbardziej zyskuje, więc czasem są to wpisy z relatywnie małą liczbą punktów)
  • newest (najnowsze)
  • best (najwięcej punktów)
  • user submitted (grajdołek)
  • popular
  • rising (tu nie do końca znam algorytm czym się różni od popular)
  • newest
  • highest scoring (największa liczba punktów z możliwością wybrania okresu: dziś, tydzień, etc...)
somekind napisał(a):

Sam się zaplusuję

Znów Imgur. Ponieważ "lajkowanie własnych postów jest jak lizanie własnych genitaliów", a jednak jak punkty są anonimowe, to ludzi kusi... każdy nasz wpis na Imgur ma z automatu nasz +1 - problem solved.

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