Форма логина
Посмотреть и потрогать - в комментариях.
Использован фрагмент картины Васи Ложкина "Родина слышит".
Посмотреть и потрогать - в комментариях.
Использован фрагмент картины Васи Ложкина "Родина слышит".
Если интересна реализация, она тут: http://www.panthers.ru/tamer/login/
Писал на скорую руку, поэтому может быть с ошибками и не для смартфонных браузеров.
Забавно на этом фоне выглядит предупреждение Firefox о том, что логины и пароли в этой форме могут быть скомпрометированы.
Можешь прям здесь. Тут какой-то код прописан, что цифры сами шифруются. Вот смотри :
**** **** **** ****
***
**** *******
**/**
ЛОВИ НЬЮФАГА!
IRC и mIRC ирка и мирка, это популярные месенжеры до этих ваших асек. Там создавались групп-чаты и люди зная айпишник заходили в чат и обшались. не было всяких защит от идиотов, двойных/тройных аутоэентификаций, проебал пароль, считай проебал свой акк.
О боже, были люди, которые регали ники в ирке у чансерва? Там же надо было вроде раз в неделю заходить, чтобы не слетел (ну смотря, на каком серваке, кончно же)
Тем более, если у тебя двух или трёхсимвольный ник.
@admin, берите чувака на борт, поле логина/пароля это же лицо сайта, сделать 4-5 интересных анимаций которые будут ставиться рандомно. Вообще супер будет
Ничего не имею против автора, но программная реализация на фоне оригинального поста - очень слабая, или просто халтурная. Кроме того, идея анимации придумана другим человеком. Я лишь к тому, что рановато ты расфанател и отвлекаешь админа попусту. Если им потребуется такая анимация, то без проблем найдут специалиста, да и он у них уже есть
Зато сразу видно что человек не пригоден для профессии.
Правда что делать с кровью из глаз?
Ох уж эти frontend police и выгонятели из профессии... Как будто человек не за 5 минут по фану набросал всё в лоб, самым очевидным способом, а заявляет, что это убил на это кучу времени и, что это – вершина его профессионального мастерства.
Я не люблю обсуждать чужую работу, но сомневаюсь, что профессионал бы стал писать вот это
eval('eye' + person + 'Left').style.left = xLeft + 'px';
и городить эти переменные. Легче было создать объект persons, с полями eyeFirstLeft, eyeFirstRight, eyeSecondLeft, eyeSecondRight, и тупо обращаться к ним
var personName = 'eye' + person + 'Left';
if(personName in persons) {
var person = persons[personName];
person.style.left = xLeft + 'px';
}
Можно не делать проверку, и сразу писать короче (если нужно решение в лоб, с самым очевидным способом).
persons['eye' + person + 'Left'].style.left = xLeft + 'px';
А так же, вместо чем для обоих глаз высчитывать координаты, нужно было использовать общие координаты для них, а для второго глаза скорректировать отступ через margin.
Это было намного проще и быстрее. А использовать eval для получения объекта, ну, лучше бы тогда использовал огород из условных конструкций.
Это реально не годится для продакшина, если он новичок и использовал это чисто для демонстрации, то ок. Но оправдывать, что такое мог написать профессионал, потому, что лень - неверно. Поэтому я вынужден согласиться с мнением UndesirableAlien, какое бы оно резкое не было. Сейчас на рынке мы имеем огромное количество кадров, которые не желают учиться, т.к. им платят и за такие решения. Этот код именно демонстрирует полное отсутствие желания учиться, поэтому автор либо просто любитель (или верстальщик), либо программист, который в данный момент не пригоден для профессии.
Рубрика код-ревью на пикабу :)
Вы судите человека как будто это продакшн-решение, за которое заплатили деньги и выкатили на боевые сервера, а не по фану набросанная демка для развлекательного сайта, чтобы по-быстрому срубить плюсцов. Как будто человек говорит что его реализация безупречна и никто не сможет сделать лучше, а не "писал на скорую руку". И superqualified профи может наговнокодить что-то по-быстрому, лишь бы работало в тех случаях когда ему тупо лень заморачиваться, хотя он и сам прекрасно видит лучшие варианты решения. Потому что профи – это не какие-то святые от программирования, а тоже обычные люди, которым иногда бывает впадлу вылизывать даже очевидные вещи (тем более когда на то нет веской причины). Или вот представьте: беретесь вы за задачку уровня чуть повыше вашего из незнакомой области, обдумываете, набрасываете первый рабочий вариант... и тут вам через плечо смотрит эксперт по таким задачам и говорит: это и это сделано не самым оптимальным способом, для меня очевидно, что нужно было сделать так и так. Если этот эксперт чсвшный мудак, то он может добавить что таким людям как вы не место в профессии (ну просто чтобы ощутить свое превосходство), а если он нормальный человек, то он будет знать золотое правило: критиковать надо работу, а не человека.
Не, я не говорю, что чел вообще кодить не может. Но использовать eval в данном случае, это как перевозить бензин в ведрах, вроде и проще его туда заливать, но ведь опасно и неудобно, а решение с использованием канистры с лейкой не такое уж и сложное, и вроде даже очевидное. Куча if-else пофиг, специалисты по машинному обучению часто так делают, те кто пишет одноразовые скраперы, т.к. важен не код, а то, что он делает, если дальше его сопровождать не нужно.
В чем и суть, этот код не простой, он не прямолинейный, он странно замудренный, профи бы (да даже средний) бы в лоб решил бы его короче, а eval не использовал бы даже под веществами. Я не хочу обидеть автора данного кода, просто хочу, чтобы он любил свой код. Не надо вылизывать каждую строчку, но и сначала подумать алгоритм, а потом писать его. Всегда есть соблазн написать абы как, а потом в лучшем случае, на пикабу будут обсуждать твой код.
Меня возмутило то, что заминусовали того чела, хотя он хоть и в грубой форме, но написал то, что есть. Это критика, стоило в нее добавить конкретики, что я и сделал, и очень надеюсь, что автор ее принял без обид. Миру нужны хорошие программисты, тех, кто делает абы как, до ужасно много, что шутки про большое количество юристов переходит на айтишников. В работе ему часто придется делать аналогичные "демонстративные штуки", и он также будет иметь соблазн написать абы как - это не профессионально. Больше всего меня возмутило даже не это, а то, что люди начали защищать, и говорить, что это нормальный код, начали писать про то, что можно было конечно в одну строчку сделать (что еще хуже), вместо чем нормально написать в чем проблема. Потом другие новички это прочитают, и намотают на ус.
Абсолютно согласен, вдобавок еще куча "магических чисел". Которые хорошо бы вынести в отдельный модуль с константами, ну или хотя бы в начало модуля.
Куча нарушений DRY в коде, можно сделать гораздо короче. Скрипт не минифицирован, нифига не кроссбраузерный.
Разметка вообще через валидатор не проходит. Для поля 'email' указан тип 'text', не будет встроенной валидации. Свойства в стилях можно сократить в shorthand.
Не, ну остальное терпимо для демонстрационного проекта, но eval то зачем? Выкинь и забудь. В крайнем случае new Function, которая возвращает нужный элемент.
минифицирован
Это нет, не важно, это демонстрация.
Знаете, со временем как-то я стал терпимее к таким кускам кода. Да, это дублирование, почти как в учебниках.
Но код читается совершенно понятно, можно ли вообще написать проще? Плюс видно, что это подобранные вручную числа, чтобы было красивенько.
Можно было бы подобрать какую-нибудь хорошую функцию вместо этого. Кусочно-линейную, например, или чего-нибудь похитрее. Но получилось бы сложнее и подбор мог бы занять больше времени. К тому же нужно хорошо ориентироваться, какие функции бывают.
А основной минус дублированния - возможность изменить в одном месте и забыть в другом - этому коду не грозит.
насколько я вижу - функция сама бросатся в глаза
для примера:
eyeOneOne.style.left = len < 8 ? '250px' : 243 + len = 'px';
но чтобы сделать быстро (иногда - бесценно) - и так сойдет.
Работает - не трогай!
Я бы не хотел работать с вами в одной команде. Сразу видно человека непригодного для общения с другими людьми.
А чем так уж плох код? Быстро и понятно, хотя конечно и в одну строчку можно было :) Спрайты надежный и быстрый метод решения задачи (если не брать канвасы и вектор, но там надо потратить больше человекочасов)
Ну, наверное, правда лишнее. Можно было проще. Но в кодогенерации такое повсеместно встречается. Мне именно показалось, что это как раз автоматически сгенерированный код, ибо извращение пиксели прописывать вручную.
Десяток элс ифов на длину строки? Мда.
Напишите свой вариант, а мы потом заценим насколько он лучше будет.
Ну там можно было что то типа:
$(el).attr("class","eye-" + len);
или
el.style.left = (25 * len) + "px";
Но как уже писали, это все было for fun и не характеризует программиста.
Быдлокод это когда запрос к БД в цикле, каким бы коротким и красивым этот код не был.
Зато писать удобно, щас уже не 90-ые железо везде мощное (с) Почти все разработчики игр и приложений сегодня
Разработчики в highload и bigdata не согласятся. Да и игры сейчас не все идут на мощных ПК видимо поэтому (зато некоторые летают с шикарной графикой). Задачи стали сложнее с улучшением железа просто, то что раньше было не возможно щас работает, хоть и медленно, например нейронные сети, а часть задач и сейчас нерешаемы и ждут более мощного железа, в частности квантовых процессоров
Ага, понял вашу идею. Код, конечно, лаконичнее получается, но формулы могут получиться гораздо сложнее и проверять их правильность тоже дольше. А если потом понадобится скорректировать их, то вообще труба.
Но я правда не профи программист, и может быть ошибаюсь)
А о чем сам сайт, а то хотел зарегистрироваться и посмотреть и вместо gmail.com ввел gmail.ua...
Погуглил, сайт о EVE ???
Относительно самой картинки лучше у kudelin-alex (at) mail.ru спросить.
Остальное можно, но лучше переписать на 'высокоэльфийский' язык, в соответствии с современными тенденциями :)
картинку с mp4 перекобировать ещё в какой-то другой формат как минимум... а можно вообще в GIF - там повторный цикл вообще маленький - можно легко зациклить в 07.секунд всё видео - считай пока касета делает 1/3 оборота, остальное всё одинаково + синхронизовать с маятником чтобы не было рывков и всё.
это ты в зависимости от длины строки просто перематываешь видео на определенный тайминг что ли? просто увидел что mp4 файл КГБшников, в скрипты не заглядывал
как минимум надо несколько форматов видео пилить. каждый браузер умеет только свои форматы, единого формата видео нема... ну или GIF - скока он там будет весить?