- 1
Никто не заметил связи между уходами долбоёба-стертора, и внезапным появлением kegdan?
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−25
Никто не заметил связи между уходами долбоёба-стертора, и внезапным появлением kegdan?
Кого наебать решил, паскуда?
−27
Политота.
Ребята, девчонки и петухи. Завтра будем голосовать, выбирать себе хозяина еще на 4 года. У кого какие соображение на этот счет?
−5
Внимание!
Сегодня день числа Пи.
Давайте все дружно поздравим 3.14159265дара 14 марта в 1:59:27
+1
#!/usr/bin/env escript
%% -*- erlang -*-
%%! -smp enable -debug verbose
-include_lib("xmerl/include/xmerl.hrl").
-export([main/1, install_mod/1]).
-record(mod_info, { name :: string()
, links :: [{file:filepath(), file:filepath()}]
}).
main(Args) ->
[ModeDir, GameDir] = Args,
VirtualInstall = filename:absname(ModeDir ++ "/VirtualInstall/"),
RealPath = filename:absname(GameDir),
VirtualModCfg = VirtualInstall ++ "/VirtualModConfig.xml",
io:format( "Mode dir: ~p~n"
"Install dir: ~p~n"
"Current dir: ~p~n"
, [VirtualInstall, RealPath, element(2, file:get_cwd())]),
{Doc, []} = xmerl_scan:file(VirtualModCfg),
Mods = get_mods(VirtualInstall, RealPath, Doc),
[install_mod(I) || I <- Mods],
ok.
get_mods(VirtPath, RealPath, Doc) ->
[ #mod_info
{ name = xpath("/modInfo/@modName", Mod)
, links = get_links(VirtPath, RealPath, Mod)
}
|| Mod <- xmerl_xpath:string( "/virtualModActivator/modList/modInfo"
, Doc)].
get_links(VirtPath, RealPath, Doc) ->
[{ filename:absname( unixify(xpath("/fileLink/@realPath", FL))
, VirtPath)
, filename:absname( unixify(xpath("/fileLink/@virtualPath", FL))
, RealPath)
}
|| FL <- xmerl_xpath:string( "//fileLink[isActive = 'True']"
, Doc)].
xpath(Query, Doc) ->
case xmerl_xpath:string(Query, Doc) of
[#xmlAttribute{value = Val}] ->
Val
end.
unixify(Path) ->
lists:map(
fun($\\) -> $/;
(A) -> A
end,
Path).
install_mod(#mod_info{name = Name, links = Links}) ->
io:format("Installing ~s...~n", [Name]),
lists:foreach(
fun({From, To}) ->
filelib:ensure_dir(To),
file:make_symlink(From, To)
end,
Links).
+6
https://www.opennet.ru/opennews/art.shtml?num=48234
Создатели редактора кода Atom из компании GitHub развивают новый
экспериментальный текстовый редактор Xray, который также построен
с использованием фреймворка Electron, но примечателен тем, что для
повышения надёжности и производительности ядро редактора с
реализацией базовой логики написано на языке Rust, интерфейс
оформлен на JavaScript/CSS с применением фреймворка React, а для
отрисовки текста применяется WebGL.
Чем вообще руководствуются люди, делающие IDE из кусков браузера? Нахрена там JavaScript/CSS, нахрена там React? Еще и Rust приплели зачем-то.
Может это чтоб всякие фронтенд-разрабы возрадовались, потому что теперь их умение писать хуиту на жабаскрипте применимо для написания говноплагинов к этой хуите? А как же бекенд? Пусть дополнительно встроят туда PHP MySQL чтоб никто не ушел обиженным.
−7
Ещё один тред обсуждения несбыточного мифического «нового ГК»
Такие мысли появиласть в результате флеймов с 1024-- и вообще.
На новом говнокоде вместо модерации должены быть:
1. Механизм скрыльничества на уровне сайта/api
2. Как на имиджбордах, все посты и комменты должны подчищаться из базы после определенного скрока давности, чтобы не нужно было вмешательство никаких админов и модераторов. Это хорошо решает проблему любых набегов. Но некоторые посты пользователи могут пометить как важные, которые не следует удалять. Для этого они должны выразить такое желание в явной форме, например, нажимая на кнопку «cохранить». Проблема в том, что ботоводы могут сохранять свои комменты и посты скриптами, поэтому нужно ввести хорошую капчу и какой-то сложно вычислимый DRM, вычисляя который ты приносишь пользу новому ГК в любой форме. Это либо вычисление биткоинов на кошелёк, с которого оплачивается хостинг, либо ещё какая-то форма принесения пользы сообществу. Вот об этом и предлагаю поговорить: в каких формах вообще можно принести пользу ГК, так, чтобы для оценки пользы и подтверждения факта принесения пользы не требовалось вмешательство модераторов и админов?
Срать в текущих, ещё не умерших разделах, это никак не помешает, но мусор достаточно быстро потрётся и останутся только те комменты, которые сообщество считает полезными. Кроме того, думаю, если спамер окупает свои действия полезной работой по отношению к сайту (например, оплачивает хостинг), он имеет полное право спамить, потому что механизмы скрытия доступны всем из коробки.
+1
Баг в railroad diagram, описывающей strling literal в JS (из книги Крокфорда Javascript: The Good Parts).
https://i.imgur.com/8QFMrIQ.png
Эквивалентно регулярке
(\"([^\"^\\]|\\([\"\'\\\/bfnrt]|u[\d]{4}))*[^\"^\\]+\"|\'([^\'^\\]|\\([\"\'\\\/bfnrt]|u[\d]{4}))*[^\'^\\]+\')
Ставить [ code ] боюсь, парсер уже починился?
Ну, в общем, видно, что при таком раскладе, как на диаграмме, строковой литерал не может заканчиваться эскейп-последовательностью, что в действительности не так. Классический случай "something\n".
+9
Argument type mismatch
Assertion failed
0
https://habrahabr.ru/post/348744/
Обнаружен пидар.
−2
Что за браузер?