- 1
- 2
- 3
- 4
- 5
- 6
//Use this to convert OffSet to postive:
var offset = new Date().getTimezoneOffset();
console.log(offset);
this.timeOffSet = offset + (-2*offset);
console.log(this.timeOffSet);
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+1
//Use this to convert OffSet to postive:
var offset = new Date().getTimezoneOffset();
console.log(offset);
this.timeOffSet = offset + (-2*offset);
console.log(this.timeOffSet);
Это такой особый JS way, или я чего-то не понимаю?
+1
template <typename function_type, typename vector_type>
function_type read_memory(HANDLE hProcess, function_type base_address, std::vector< vector_type >&& offsets) {
function_type tmp = base_address;
for (function_type i : **reinterpret_cast< vector_type** >( &offsets )) {
ReadProcessMemory(hProcess, reinterpret_cast< PBYTE* >( tmp + i ), &tmp, sizeof(function_type), nullptr);
}
return tmp;
}
int main() {
std::vector< DWORD > offset = {
0x10,
0x14,
0x158
};
auto buffer = read_memory< DWORD, DWORD >(hProcess, base_address, std::move(offset));
}
Полуговнокодер читает память чужого процесса...
+1
SET @from = 11836;
SET @to = 11840;
INSERT INTO `sprinter_catalog_tree` (
`sprinter_catalog_tree`.`level`,
`sprinter_catalog_tree`.`position`,
`sprinter_catalog_tree`.`parent_id`,
`sprinter_catalog_tree`.`catalog`,
`sprinter_catalog_tree`.`info_id`,
-- ...
)
SELECT
`sprinter_catalog_tree`.`level`,
`sprinter_catalog_tree`.`position`,
@to,
`sprinter_catalog_tree`.`catalog`,
`sprinter_catalog_tree`.`info_id`,
`sprinter_catalog_tree`.`format_id`,
`sprinter_catalog_tree`.`linked_id`,
`sprinter_catalog_tree`.`linked_shablon_id`,
-- ...
FROM `sprinter_catalog_tree` where parent_id = @from order by id;
INSERT INTO `sprinter_catalog_tree` (
`sprinter_catalog_tree`.`level`,
`sprinter_catalog_tree`.`position`,
`sprinter_catalog_tree`.`parent_id`,
`sprinter_catalog_tree`.`catalog`,
`sprinter_catalog_tree`.`info_id`,
-- ...
)
SELECT
a.`level`,
a.`position`,
(SELECT id from sprinter_catalog_tree as b where b.parent_id = @to and b.name like (SELECT name from sprinter_catalog_tree where id = a.parent_id)),
a.`catalog`,
a.`info_id`,
a.`format_id`,
a.`linked_id`,
a.`linked_shablon_id`,
-- ...
FROM `sprinter_catalog_tree` as a where parent_id in (SELECT id FROM sprinter_catalog_tree where parent_id = @from) order by id;
INSERT INTO `sprinter_catalog_info`
(`name`,
`eng_name`,
`text`,
-- ..
)
SELECT
`sprinter_catalog_info`.`name`,
`sprinter_catalog_info`.`eng_name`,
`sprinter_catalog_info`.`text`,
`sprinter_catalog_info`.`short_text`,
-- ...
FROM `sprinter_catalog_info` where id in (SELECT info_id from `sprinter_catalog_tree` where parent_id = @from or parent_id in (SELECT id from `sprinter_catalog_tree` where parent_id = @from));
CREATE temporary table if not exists ids
SELECT id from `sprinter_catalog_tree` where parent_id = @to or parent_id in (SELECT id from `sprinter_catalog_tree` where parent_id = @to);
UPDATE sprinter_catalog_tree as a SET info_id = (SELECT id from sprinter_catalog_info as b where a.name like b.name order by id desc limit 1) where a.id in (SELECT id from ids);
DROP table ids;
Высрал вот такое говно в качестве write-n-throw скрипта.
Дано: есть элементы дерева, хранящиеся в таблице sprinter_catalog_tree, связаны друг с другом через parent_id. Каждому из них соответствует указанный в info_id элемент таблицы sprinter_catalog_info.
Задача: скопировать все вложенные в раздел @from каталога элементы и его подразделы (вложенность не более 1 уровня) в раздел @to, так чтобы у них были новые id, и также скопировать соответствующие им sprinter_catalog_info. Скопированные sprinter_catalog_tree должны указывать на корректные sprinter_catalog_info, id которых заранее не известны.
Вот такое говно получилось, расскажите как надо было?
+1
define method display (i :: <integer>)
do-display-integer(i);
end;
define method display (s :: <string>)
do-display-string(s);
end;
define method display (f :: <float>)
do-display-float(f);
end;
define method display (c :: <collection>)
for (item in c)
display(item); // runtime dispatch
end;
end;
В закромах истории нашёлся язык с runtime dispatch/multimethods.
+1
function send_message_with_photo($token, $peer_id, $message, $image_file_path) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
/* Получаем ссылку для загрузки фотографии */
curl_setopt($ch, CURLOPT_URL, 'https://api.vk.com/method/photos.getMessagesUploadServer');
curl_setopt($ch, CURLOPT_POSTFIELDS, array(
"access_token" => $token,
"v" => "5.103"
));
$result = json_decode(curl_exec($ch), true);
$upload_url = $result['response']['upload_url'];
/* Отправляем фотографию */
curl_setopt($ch, CURLOPT_URL, $upload_url);
$file = curl_file_create($image_file_path);
curl_setopt($ch, CURLOPT_POSTFIELDS, array(
"photo" => $file,
));
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: multipart/form-data'));
$result = json_decode(curl_exec($ch), true);
$server = $result['server'];
$photo = $result['photo'];
$hash = $result['hash'];
/* Сохраняем фотографию */
curl_setopt($ch, CURLOPT_URL, 'https://api.vk.com/method/photos.saveMessagesPhoto');
curl_setopt($ch, CURLOPT_POSTFIELDS, array(
"access_token" => $token,
"v" => "5.103",
"server" => $server,
"photo" => $photo,
"hash" => $hash
));
$result = json_decode(curl_exec($ch), true);
$photo_id = strval($result['response'][0]['id']);
$owner_id = strval($result['response'][0]['owner_id']);
$attachment = "photo" . $owner_id . "_" . $photo_id;
/* Отправляем сообщение */
curl_setopt($ch, CURLOPT_URL, 'https://api.vk.com/method/messages.send');
curl_setopt($ch, CURLOPT_POSTFIELDS, array(
"access_token" => $token,
"v" => "5.103",
"random_id" => rand(),
"peer_id" => $peer_id,
"message" => $message,
"attachment" => $attachment
));
$result = json_decode(curl_exec($ch), true);
curl_close($ch);
}
Говнокод для загрузки фото в ВК)
+1
public function update_balance()
{
$this->balance = $this->balance_at_end_of_day(time());
}
public function balance_at_end_of_day($time)
{
return $this->balance_at_beginning_of_day($time + 24*60*60);
}
когда окунулся в легаси
+1
// https://github.com/microsoft/PQCrypto-SIDH/blob/ebd1c80a8ac35e9ca2ef9680291a8a43b95a3bfa/src/random/random.c#L22
static __inline void delay(unsigned int count)
{
while (count--) {}
}
... guess what?
+1
SystemD нарушает философию UNIX.
Вместо больших программ которые решают несколько задач одновременно, делайте много маленьких программ, которые решают одну задачу, но делают это хорошо.
Не то, чтобы он плохо справлялся со своими задачами, но он управляет и сервисами, и udev'ом, через него уже и смотрят лог ядра, через него настраивают автозагрузку.
Много задач через одну программу.
Именно поэтому я против SystemD.
дискасс.
+1
# Python2
import sys
print sys.stderr, "Pol chasa ne mog ponyat kakoko huya nichego ne vivoditsya"
+1
У людей картина мира в значительной степени определяется системой языка, на котором они говорят.
Грамматические и семантические категории языка являются не только инструментами для передачи мыслей говорящего, но и управляют мыслительной деятельностью формируя идеи человека.
Таким образом, предполагается, что люди, которые говорят на разных языках, будут иметь и разные представления о мире, а в случае значительных структурных расхождений между их языками при обсуждении некоторых тем у собеседников могут возникать трудности с пониманием.
Хайнлайн писал: "Нормальные языки родились во времена невежества и предрассудков, и генетически содержат закрепленные в структурах неверные представления о мироздании"
А фантастичесикй язык, созданный Хайнлайном "не содержит тех ошибок, которым изобилует английский, ибо он структурирован так же, как реальный мир".
Спидток был языком, полностью основанным на логике. Количество слов в нём было минимальным, зато грамматические связи были очень сложными.
В спидтоке существовало несколько сотен звуков, при этом каждое двухбуквенное сочетание означало определенное слово.
В итоге, одно слово на спидтоке соответствовало длинному предложению обычного языка, настолько ёмок и точен был его смысл. Люди, научившиеся этому языку, считали себя следующей ступенью эволюции человека - homo novus.
Они хотели захватить власть над Землей и рассматривали, а современных людей вида homo sapiens считали чем-то наподобие домашних животных.
Поскольку идея языка описана, но не развита в работе Хайнлайна, многие попытались создать подобный язык.
Многие из идей спидтока были включены в ифкуиль.
Ифкуиль признаётся одним из самых сложных языков.
Сам автор языка признаётся, что говорить на нём – за пределами даже его возможностей.
Цель Ифкуиля - объединение всех знаний, которые накопило человечество, для того, чтобы достигнуть максимальной выразительности и эффективности использования.
https://old.computerra.ru/205383/