Как стать автором
Обновить
15
0
Lexx ツ @alexriz

frontend developer

Отправить сообщение

Создание нейронной сети Хопфилда на JavaScript

Время на прочтение8 мин
Количество просмотров15K

Столкнувшись в университете с нейронными сетями, одной из любимых для меня стала именно сеть Хопфилда. Удивительно, что она оказалась последней в списке лабораторных, ведь ее работу можно наглядно продемонстрировать при помощи изображений и она не так сложна в реализации.

В этой статье при помощи нейросети Хопфилда будем решать задачу восстановления искаженных изображений. Нейросеть предварительно обучим на эталонных изображениях.

Пошагово напишем программу, позволяющую прямо в браузере поиграть с нейросетью, обучить ее на собственноручно нарисованных образах и проверить работу на искаженных образах.

Читать много кода
Всего голосов 15: ↑15 и ↓0+15
Комментарии2

20 небольших, но вдохновляющих вызовов веб-разработчику

Время на прочтение7 мин
Количество просмотров21K
Специально к старту нового потока курса «Frontend-разработчик» делимся переводом подборки с 20 проектами для освоения фронтенда. Эта подборка хорошо подходит, если вы хорошо знакомы с какой-то областью разработки ПО и хотите глубже копнуть во фронтенд. Также она прекрасно подходит людям, которые не хотят начинать знакомство с фронтендом со стандартных проектов. Проекты довольно небольшие, и у каждого указан уровень сложности. С помощью этих проектов вы ознакомитесь с Tone.js — обёрткой над Web Audio, освоите необычно мягкую смену темы со светлой на темную, и наоборот, а почти в конце ждёт самое вкусное — управляемая голосом векторная графика SVG.


Приятного чтения!
Всего голосов 42: ↑35 и ↓7+28
Комментарии18

Математика верстальщику не нужна 2: Матрицы, базовые трансформации, построение 3D и фильтры для картинок

Время на прочтение19 мин
Количество просмотров16K


В прошлый раз мы говорили о графиках и траекториях для покадровых анимаций, а сегодня речь пойдет про матрицы. Мы разберемся с тем, как строятся базовые трансформации в CSS, SVG и WebGL, построим отображение 3D-мира на экране своими руками, попутно проводя параллель с таким инструментом, как Three.js, а также поэкспериментируем с фильтрами для фотографий и разберемся, что же за магия такая лежит в их основе.

Напомню, что в этой серии статей мы знакомимся с разными штуками из области математики, которые пугают верстальщиков, но могут быть полезны при решении рабочих задач. Мы стараемся избежать излишней теоретизации, отдавая предпочтение картинкам и объяснению на пальцах, с акцентом на практическое применение во фронтенде. В связи с этим формулировки местами могут быть не совсем точными с точки зрения математики, или не совсем полными. Цель этой статьи – дать общее представление о том, что бывает, и откуда можно начать в случае чего.
Читать дальше →
Всего голосов 16: ↑16 и ↓0+16
Комментарии4

Математика верстальщику не нужна, или Временные функции и траектории для покадровых 2D анимаций на сайтах

Время на прочтение15 мин
Количество просмотров14K


«Математика верстальщику не нужна!», — говорили они. «Арифметики за 2 класс школы хватит!», – говорили они. «Верстальщик – не программист, так что нечего себе голову забивать точными науками!», — чего только не услышишь на просторах интернета на тему нужности тех или иных знаний при разработке сайтов. И на самом деле в большинстве случаев человеку, который делает интерфейсы, и правда хватает умения складывать числа. Что-то более сложное встречается редко и обычно уже есть готовый алгоритм где-то в недрах NPM. Но сайты – понятие растяжимое, и иногда все же нужно включить голову, и разобраться в каком-то вопросе. И один из таких вопросов – это траектории в 2D анимациях.


Наблюдая за людьми, которые осваивают JS, и, в частности, покадровые анимации в вебе, я заметил, что у многих возникают сложности, когда нужно сделать движение какого-то объекта на странице по определенной траектории. И, если эта траектория не нарисована заранее заботливым дизайнером в виде path в SVG-картинке, а формулируется какими-то общими словами и ссылками на референсы из сети, или, что еще хуже, должна генерироваться на лету, то задача приводит их в полный ступор. По всей видимости все упирается в тотальное непонимание того, как получить кривую той или иной формы в рамках JS. Об этом мы сегодня и поговорим в формате своеобразной лекции о временных функциях для анимаций в самых разных их проявлениях.


Мы постараемся избежать излишней теоретизации, отдавая предпочтение картинкам и объяснению всего на пальцах, с акцентом на практическое использование в вопросах 2D анимаций на сайтах. Так что местами формулировки могут быть не совсем точными с точки зрения математики или не совсем полными, цель этой статьи – дать общее представление о том, что бывает, и откуда можно начать в случае чего.

Читать дальше →
Всего голосов 11: ↑11 и ↓0+11
Комментарии11

Веб-разработчику: 10 полезных инструментов

Время на прочтение3 мин
Количество просмотров21K
Статья, перевод которой мы публикуем сегодня, посвящена 10 полезным инструментам, которые предназначены для веб-разработчиков. Автор материала считает, что это — как раз такие инструменты, которые позволяют, как говорится, «работать с умом, а не до ночи».


Читать дальше →
Всего голосов 34: ↑33 и ↓1+32
Комментарии5

Работа со структурами в C#

Время на прочтение13 мин
Количество просмотров140K
По следам недавнего топика «Обработка больших объемов данных в памяти на C#» представляю перевод упоминавшейся там статьи о структурах.

Структуры являются фундаментальными типами данных в C# и большинстве других современных языках программирования. По своей сути структуры просты, но вы можете удивиться, насколько быстро работа с ними может стать сложной. Чаще всего проблемы возникают, если вы должны работать со структурами, созданными в других языках и сохраненными на диске или полученными в результате вызова функций из библиотек или COM-объектов. В этой статье я подразумеваю, что вы знакомы с понятием структуры, умеете определять их и владеете базовыми навыками работы со структурами. Предполагается, что вы имеете представление о том, как вызывать API функции с использованием p/Invoke, а также что такое маршалинг. В случае неуверенности в своих знаниях вы можете обратиться к документации.
Множество техник, описанных в данной статье, могут быть расширены и применены к любым типам данных.
Читать дальше →
Всего голосов 96: ↑82 и ↓14+68
Комментарии11

Веб-компоненты в реальном проекте

Время на прочтение16 мин
Количество просмотров9.4K


Всем привет! Меня зовут Артур, я работаю frontend-разработчиком в Exness. Не так давно мы перевели один из наших проектов на веб-компоненты. Расскажу, с какими проблемами пришлось столкнуться, и о том, как многие концепции, к которым мы привыкли при работе с фреймворками, легко перекладываются на веб-компоненты.


Забегая вперед, скажу, что реализованный проект успешно прошел тестирование на нашей широкой аудитории, а размер бандла и время загрузки удалось ощутимо сократить.

Читать дальше →
Всего голосов 11: ↑11 и ↓0+11
Комментарии7

Компьютер в столе своими руками

Время на прочтение3 мин
Количество просмотров141K
Приветствую, Habr! Я фанат ПК в столе, давно ими занимаюсь и сегодня хочу показать вам свой новый проект.

Самый компактный и тонкий Компьютер в столе, что я делал.


Читать дальше →
Всего голосов 162: ↑159 и ↓3+156
Комментарии139

3D своими руками. Часть 1: пиксели и линии

Время на прочтение13 мин
Количество просмотров26K


Этот цикл статей я хочу посвятить читателям, желающим изучить мир 3D-программирования с нуля, людям, которые хотят узнать основы создания 3D-составляющей игр и приложений. Каждую операцию мы будем реализовывать с чистого листа, чтобы понимать каждый аспект, даже если есть уже готовая функция, которая делает это быстрее. Научившись, мы будем переходить на встроенные инструменты по работе с 3D. По прочтению цикла статей вы поймете как создаются сложные трехмерные сцены со светом, тенями, текстурами и эффектами, как все это сделать без глубоких познаний в математике и многое другое. Сможете все это делать как самостоятельно, так и при помощи готовых инструментов.
Начать обучение
Всего голосов 40: ↑38 и ↓2+36
Комментарии11

10 отличных Github репозиториев, которые должен знать каждый веб-разработчик

Время на прочтение3 мин
Количество просмотров97K

Кроме огромных репозиториев с источниками для подготовки к интервью, здесь много чего интересного


Я собрал список из десяти отличных репозиториев на Github, которые помогут вам существенно расширить свои знания.


image


А я его перевел, т.к. показалось, что пост многим будет интересен. Перевод очень вольный: я опустил нерелевантные промо-ссылки и гипер эмоциональные похвалы автора оригинала, чтобы оставить только суть. Еще, обновил цифры, чтобы информация была более актуальной к моменту публикации этого перевода. Итак, перейдем к списку.
Читать дальше →
Всего голосов 76: ↑69 и ↓7+62
Комментарии8

Обзор новшеств ECMAScript 2016, 2017, и 2018 с примерами

Время на прочтение13 мин
Количество просмотров95K
Сложно уследить за новшествами различных версий ECMAScript, а ещё сложнее — найти полезные примеры их применения, не перекапывая горы информации. Поэтому сегодня мы публикуем перевод материала, автор которого проанализировал 18 новых возможностей ECMAScript, в число которых входят те, что имеются в уже вышедших стандартах ES2016 и ES2017, а также — те, которые должны появиться в стандарте ES2018. Автор этой статьи обещает, что каждый, кто её прочтёт, узнает много интересного и полезного о новых возможностях JavaScript.


Читать дальше →
Всего голосов 41: ↑38 и ↓3+35
Комментарии13

5 малоизвестных возможностей JSON.stringify()

Время на прочтение4 мин
Количество просмотров29K


Доброго времени суток, друзья!

В этой небольшой заметке я хочу рассказать вам о некоторых редко используемых возможностях JSON.stringify(). Возможно, они окажутся вам полезными.

JSON.stringify() часто используется при отладке для преобразования объекта или обычной строки в строку в формате JSON. Но как данный метод используется, и можем ли мы обойтись toString()? Давайте попробуем это сделать.

// создаем объект user
const user = {
    name: 'Harry Heman',
    age: 29,
    job: 'developer'
}

// преобразуем объект в строку, используя стандартный метод toString(), и выводим результат в консоль
console.log(user.toString()) // [object Object]

[object Object] — это не совсем то, что мы хотели увидеть, не правда ли?

Не спрашивайте, зачем мы вообще используем toString(). Предположим, что нам жизненно необходимо перевести объект в строку.

Теперь попробуем использовать JSON.stringify():

console.log(JSON.stringify(user)) // {"name":"Harry Heman","age":29, "job": "developer"}

Мы сделали это, Карл!

Однако возможности JSON.stringify() этим не исчерпываются.
Читать дальше →
Всего голосов 61: ↑54 и ↓7+47
Комментарии5

70 вопросов по JavaScript для подготовки к собеседованию

Время на прочтение43 мин
Количество просмотров864K
Доброго времени суток, друзья!

Надеюсь, эта статья будет полезна как начинающим разработчикам, так и опытным.

В вопросах, которые показались мне сложнее прочих, приведены ссылки на дополнительную литературу.

Буду признателен за развернутые комментарии. Все замечания будут учтены при редактировании статьи.

Итак, поехали.
Читать дальше →
Всего голосов 46: ↑43 и ↓3+40
Комментарии135

Обзор базовых возможностей ES6

Время на прочтение9 мин
Количество просмотров119K

JavaScript сильно изменился за последние годы. Вот 12 новых возможностей, которые можно начать использовать уже сегодня!


История


Новые добавления в язык называются ECMAScript 6. Или ES6 или ES2015+.


С момента появления в 1995, JavaScript развивался медленно. Новые возможности добавлялись каждые несколько лет. ECMAScript появился в 1997, его целью было направить развитие JavaScript в нужное русло. Выходили новые версии – ES3, ES5, ES6 и так далее.



Как видите, между версиями ES3, ES5 и ES6 есть пропуски длиной в 10 и 6 лет. Новая модель – делать маленькие изменения каждый год. Вместо того, чтобы накопить огромное количество изменений и выпустить их все за раз, как это было с ES6.

Читать дальше →
Всего голосов 51: ↑41 и ↓10+31
Комментарии41

Как ужиться с поколением Z

Время на прочтение12 мин
Количество просмотров73K


Знаете, когда читаешь публикации в СМИ насчёт очередных особенностей очередного поколения молодых людей, начинает казаться, что мир катится в пропасть. Все эти фразы про молодёжь, которая не умеет работать, не признаёт авторитетов и скоро погубит мир, свежестью своей мысли заставляют вспомнить глиняные таблички времён Хаммурапи.

Чушь. Познакомьтесь с поколением Z. Они скоро станут вашими коллегами, подчинёнными и даже начальниками. Они обычные люди, просто получившие смартфон раньше, чем научились читать. Умные, целеустремлённые, образованные. Да, они не жгли тряпки на заброшенной стройке и не ели муравьёв в песочнице, но зато многие из них уже успели собрать свой первый школьный проект на Arduino и вовсю осваивают 3D-печать.

Эта тема всё больше нервирует рекрутеров, которые ещё не совсем понимают, как правильно их нанимать, и руководителей, которые не уверены, что получится ужиться с этим поколением. Всё не так страшно. Я хочу рассказать немного больше о социологических аспектах поколений. А ещё попробуем понять, почему бывает так сложно работать с центениалами, и как направить их творческую натуру на благо компании.
Всего голосов 134: ↑115 и ↓19+96
Комментарии604

Знакомьтесь, <details>

Время на прочтение3 мин
Количество просмотров62K

Я хочу рассказать о замечательном элементе <details> и показать несколько примеров его использования, от простых до безумных.

Всего голосов 66: ↑63 и ↓3+60
Комментарии37

Спать мало, но правильно?

Время на прочтение7 мин
Количество просмотров897K
Навеяно этим постом от юзера case. Пост не новый, и на главную он не попал.
Но я вот наткнулся на него сегодня и решил написать кое-что о сне. Уверен, что это будет полезно многим хабравчанам, да и случайным читателям тоже.
Читать дальше →
Всего голосов 713: ↑670 и ↓43+627
Комментарии420

Team Lead на удаленке: как я путешествовал с семьей и работал из Греции и Вьетнама

Время на прочтение15 мин
Количество просмотров21K


Всем привет, меня зовут Александр Буланов, я разработчик и Team Lead в компании Django Stars. Я люблю свою работу, а еще я люблю ездить по миру, исследовать новые страны и вместо одного и того же пейзажа за окном видеть разные.

Совмещая работу и путешествия, я побывал уже в трех странах: Германия, Греция и Вьетнам. Ездил не сам, а с семьей — женой и двумя детьми (сейчас им 3 и 6 лет). Конечно же, поначалу я сомневался, а получится ли совмещать и работу, и активное получение новых впечатлений, но очень быстро втянулся и собираюсь продолжать в том же духе.
Читать далее
Всего голосов 67: ↑60 и ↓7+53
Комментарии53

Использование let объявлений переменных и особенности образуемых связываний в замыканиях в JavaScript

Время на прочтение7 мин
Количество просмотров11K
Написать данную заметку меня сподвигло прочтение статьи на Хабре «Var, let или const? Проблемы областей видимости переменных и ES6» и комментариев к ней, а также соответствующей части книги Закаса Н. «Understanding of ECMAScript 6». Исходя из прочитанного я вынес, что не всё так однозначно в оценке использования var или let. Авторы и комментаторы склоняются к тому, что при отсутствии необходимости поддержки старых версий браузеров имеет смысл полностью отказаться от использования var, а также использовать некоторые упрощенные конструкции, заместо старых, по умолчанию.

Про области видимости этих объявлений уже сказано достаточно, в том числе и в указанных выше материалах, поэтому я хотел бы заострить внимание только на некоторых неочевидных моментах.
Читать дальше →
Всего голосов 23: ↑22 и ↓1+21
Комментарии1

Подборка полезных слайдов от Джулии Эванс

Время на прочтение1 мин
Количество просмотров52K
Перевели новую порцию слайдов. Права доступа в Unix, файловые дескрипторы, потоки, магия proc. И на закуску пара советов о том, как общаться, когда ты не согласен. А вдруг пригодятся =)



Читать дальше →
Всего голосов 115: ↑111 и ↓4+107
Комментарии42
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Украина
Дата рождения
Зарегистрирован
Активность