- 1
Зачем "\r", если достаточно "\n"?
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
0
Зачем "\r", если достаточно "\n"?
−16
https://habr.com/ru/company/alfa/blog/447416/
Тестирование от профессионалов показало, что одинарные кавычки в "PHP" быстрее двойных; а, между тем,
именно по одинарным кавычкам я всегда и тёк (двойные вечно казались мусором). Всегда, после того, как я
машинально-нервически производил в чужом коде замену двойных кавычек на одинарные после мамкиных
дипломатов влажных "Курсов PHP за две недели", замечал, что код начинает работать значительно быстрее.
Поэтому я за "PHP" - в нём задачи оптимизации работы сайтов решаются проще пареного хуя.
+1
#define SWITCHCALL \
dtrick \
switch(cnt){ \
case 0: r = fp(); break; \
case 1: r = fp(d[0]); break; \
case 2: r = fp(d[0], d[1]); break; \
case 3: r = fp(d[0], d[1], d[2]); break; \
case 4: r = fp(d[0], d[1], d[2], d[3]); break; \
case 5: r = fp(d[0], d[1], d[2], d[3], d[4]); break; \
case 6: r = fp(d[0], d[1], d[2], d[3], d[4], d[5]); break; \
case 7: r = fp(d[0], d[1], d[2], d[3], d[4], d[5], d[6]); break; \
case 8: r = fp(d[0], d[1], d[2], d[3], d[4], d[5], d[6], d[7]); break; \
case 9: r = fp(d[0], d[1], d[2], d[3], d[4], d[5], d[6], d[7], \
d[8]); break; \
case 10: r = fp(d[0], d[1], d[2], d[3], d[4], d[5], d[6], d[7], \
d[8], d[9]); break; \
case 11: r = fp(d[0], d[1], d[2], d[3], d[4], d[5], d[6], d[7], \
d[8], d[9], d[10]); break; \
case 12: r = fp(d[0], d[1], d[2], d[3], d[4], d[5], d[6], d[7], \
d[8], d[9], d[10],d[11]); break; \
case 13: r = fp(d[0], d[1], d[2], d[3], d[4], d[5], d[6], d[7], \
d[8], d[9], d[10],d[11],d[12]); break; \
case 14: r = fp(d[0], d[1], d[2], d[3], d[4], d[5], d[6], d[7], \
d[8], d[9], d[10],d[11],d[12],d[13]); break; \
case 15: r = fp(d[0], d[1], d[2], d[3], d[4], d[5], d[6], d[7], \
d[8], d[9], d[10],d[11],d[12],d[13],d[14]); break; \
case 16: r = fp(d[0], d[1], d[2], d[3], d[4], d[5], d[6], d[7], \
d[8], d[9], d[10],d[11],d[12],d[13],d[14],d[15]); break; \
case 17: r = fp(d[0], d[1], d[2], d[3], d[4], d[5], d[6], d[7], \
d[8], d[9], d[10],d[11],d[12],d[13],d[14],d[15], \
d[16]); break; \
case 18: r = fp(d[0], d[1], d[2], d[3], d[4], d[5], d[6], d[7], \
d[8], d[9], d[10],d[11],d[12],d[13],d[14],d[15], \
d[16],d[17]); break; \
case 19: r = fp(d[0], d[1], d[2], d[3], d[4], d[5], d[6], d[7], \
d[8], d[9], d[10],d[11],d[12],d[13],d[14],d[15], \
d[16],d[17],d[18]); break; \
case 20: r = fp(d[0], d[1], d[2], d[3], d[4], d[5], d[6], d[7], \
d[8], d[9], d[10],d[11],d[12],d[13],d[14],d[15], \
d[16],d[17],d[18],d[19]); break; \
case 21: r = fp(d[0], d[1], d[2], d[3], d[4], d[5], d[6], d[7], \
d[8], d[9], d[10],d[11],d[12],d[13],d[14],d[15], \
d[16],d[17],d[18],d[19],d[20]); break; \
case 22: r = fp(d[0], d[1], d[2], d[3], d[4], d[5], d[6], d[7], \
d[8], d[9], d[10],d[11],d[12],d[13],d[14],d[15], \
d[16],d[17],d[18],d[19],d[20],d[21]); break; \
case 23: r = fp(d[0], d[1], d[2], d[3], d[4], d[5], d[6], d[7], \
d[8], d[9], d[10],d[11],d[12],d[13],d[14],d[15], \
d[16],d[17],d[18],d[19],d[20],d[21],d[22]); break; \
case 24: r = fp(d[0], d[1], d[2], d[3], d[4], d[5], d[6], d[7], \
d[8], d[9], d[10],d[11],d[12],d[13],d[14],d[15], \
d[16],d[17],d[18],d[19],d[20],d[21],d[22],d[23]); break; \
case 25: r = fp(d[0], d[1], d[2], d[3], d[4], d[5], d[6], d[7], \
d[8], d[9], d[10],d[11],d[12],d[13],d[14],d[15], \
d[16],d[17],d[18],d[19],d[20],d[21],d[22],d[23], \
d[24]);break; \
case 26: r = fp(d[0], d[1], d[2], d[3], d[4], d[5], d[6], d[7], \
d[8], d[9], d[10],d[11],d[12],d[13],d[14],d[15], \
d[16],d[17],d[18],d[19],d[20],d[21],d[22],d[23], \
d[24],d[25]);break; \
case 27: r = fp(d[0], d[1], d[2], d[3], d[4], d[5], d[6], d[7], \
d[8], d[9], d[10],d[11],d[12],d[13],d[14],d[15], \
d[16],d[17],d[18],d[19],d[20],d[21],d[22],d[23], \
d[24],d[25],d[26]);break; \
case 28: r = fp(d[0], d[1], d[2], d[3], d[4], d[5], d[6], d[7], \
d[8], d[9], d[10],d[11],d[12],d[13],d[14],d[15], \
d[16],d[17],d[18],d[19],d[20],d[21],d[22],d[23], \
d[24],d[25],d[26],d[27]);break; \
case 29: r = fp(d[0], d[1], d[2], d[3], d[4], d[5], d[6], d[7], \
d[8], d[9], d[10],d[11],d[12],d[13],d[14],d[15], \
d[16],d[17],d[18],d[19],d[20],d[21],d[22],d[23], \
d[24],d[25],d[26],d[27],d[28]);break; \
case 30: r = fp(d[0], d[1], d[2], d[3], d[4], d[5], d[6], d[7], \
d[8], d[9], d[10],d[11],d[12],d[13],d[14],d[15], \
d[16],d[17],d[18],d[19],d[20],d[21],d[22],d[23], \
d[24],d[25],d[26],d[27],d[28],d[29]);break; \
/******* ну вы понели *******/
Какой кавай )))
https://github.com/jsoftware/jsource/blob/master/jsrc/x15.c
+1
/* Create a JSON object from JSON data stream. The stream should be opened and configured. All other behavior of this method is the same as the JSONObjectWithData:options:error: method.
*/
open class func jsonObject(with stream: InputStream, options opt: ReadingOptions = []) throws -> Any {
var data = Data()
guard stream.streamStatus == .open || stream.streamStatus == .reading else {
fatalError("Stream is not available for reading")
}
repeat {
var buffer = [UInt8](repeating: 0, count: 1024)
var bytesRead: Int = 0
bytesRead = stream.read(&buffer, maxLength: buffer.count)
if bytesRead < 0 {
throw stream.streamError!
} else {
data.append(&buffer, count: bytesRead)
}
} while stream.hasBytesAvailable
return try jsonObject(with: data, options: opt)
}
Потоковое чтение JSON от авторов "iСделаль"
0
Я кое-что забыл уточнить. За родителями тоже ведется слежка, их смартфоны взломаны (не верят мне).
Я подключал их к ноуту, когда еще не догадывался.
Следит за мной не спецслужба, а просто кучка людей, среди которых и мои знакомые есть.
Что-то наподобие китов, может скоро узнаете о таких случаях в новостях.
Можно взломать даже пиринговую сеть, я где то читал, суть просто в том, что достаточно перехватить 80% нод подключенных к концу.
Как долго вообще физически взламывать все ноды?
Наверное, достаточно найти один эксплоит, и всё.
Тор может и выход, но я боюсь использовать его, после прочитанного мной.
Как насчет аналогового телефона?
Радио? Я вообще в этом не разбираюсь.
Главное для меня - чтобы не вычислили моё местонахождение.
−2
#include <stdio.h>
int* laɡ(int memory) {
int* hui = malloc(memory);
if (hui == NULL) {
fprintf(stderr, "malloc failed\n");
}
laɡ(memory);
return hui;
}
int main() {
laɡ(1048576); // any number
return 0;
}
Просто оставлю это здесь
+1
var XMLHttpRequest = function(XHR, type, listener) {
return function() {
var xhr = new XHR;
xhr.addEventListener(type, listener);
return xhr;
};
}(XMLHttpRequest, 'loadend', function(e) {
if (this.status == 0) {
console.log(e.type, 'network error');
} else {
console.log(e.type, this.status);
}
});
// js-library code...
+2
Есть какие советы, как уехать за границу так, чтобы поддерживать связь с родителями и не быть найденным?
Я думаю, что даже через мобильник связываться опасно.
Пеленг, все дела, хоть там и схемы на жесткой логике, чаще всего. Но боязно.
В конце концов, доступ к таким операциям можно получить через взлом сервера\технического отдела.
+1
xhr.upload.addEventListener('progress', function (e) {
if (e.lengthComputable) {
let percents = Math.round(e.loaded / e.total * 100)
$(`#preloader-${preloaderId}`).html(`${percents}%`)
$(`#preloader-${preloaderId}`).append(`<style>#preloader-${preloaderId}:before{ width: ${percents * 0.94}px;}</style>`);
}
}, false);
Прогрессбар на псевдоэлементах.
+1
function natRound() {
var out = []
, fib = [0, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233] // etc
, _data = function() { // random values
var out = []
, count = Math.round( Math.random() * 100)
;
for(var i=0; i < count; i++ ) {
out.push( Math.random() * 100 ); // in km
}
return out.sort(function(a,b){ return a-b; });
}()
, roundTo = function (value) {
var i = fib.length;
while(i--) {
if ( value < fib[i] ) continue;
return i? i: value; // natural sorting
}
}
;
for( var i=0; i<_data.length; i++ ) {
out.push( 'Value: [' + _data[i] + ']; Sort = [' + roundTo(_data[i]) + ']' );
}
return out;
}
Необходимо было учесть дискретность при сортировке расстояний в километрах.
Например, в синтаксисе Elastic это выглядит так:
"ranges" => [
[ "to" => 1 ],
[ "from" => 1, "to" => 3 ],
[ "from" => 3, "to" => 5 ],
[ "from" => 5],
// etc
]