Как стать автором
Обновить
0
@andrei-panderread⁠-⁠only

Пользователь

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

3 необычных онлайн-сервиса для заядлых картографов

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров5.9K

В наше время доминирования таких сервисов как GoogleMaps, 2ГИС, Яндекс.Карты и т.п. обычного пользователя трудно удивить онлайн-картами. Однако есть проекты, которые по-прежнему способны заинтересовать. В этой подборке я собрал наиболее интересные геоинформационные сервисы - приготовьтесь к погружению в историю, водный апокалипсис и царство цветов!

Читать далее
Всего голосов 13: ↑11 и ↓2+9
Комментарии7

Принципы общения с людьми при провалах — 25 тезисов для обретения дзена

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров14K

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

Создал две версии. Одна — стерильная (на заглавной картинке выше), для обсуждения на вечернем чаепитии благородных девиц. Её можно скинуть совету директоров для распространения на бизнес-завтраках или для обучения сотрудников на тренингах по деловой коммуникации. Вторая — гораздо более доходчивая, для погружения в суровую жизненную реальность. Выбирайте что по вкусу.

Читать далее
Всего голосов 35: ↑26 и ↓9+17
Комментарии19

По локоть в легаси: пошагово перезапускаем устаревший портал на PHP

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров11K

PHP — один из самых популярных языков веб-разработки уже около 20 лет, а самому языку скоро стукнет 30. За это время на нем написали огромное количество больших и маленьких проектов. Некоторые сайты, созданные в 90-х, 00-х и 10-х, хранят код еще с тех давних времен. И чем больше времени проходит с начала разработки, тем меньше на рынке специалистов, готовых разбираться в легаси и не самых современных технологиях.

В похожей ситуации оказался портал fishingsib.ru — один из крупнейших в рунете сайтов о рыбалке, который посещают больше 10 000 человек ежедневно. Он создавался в начале 2000-х как форум для рыбаков-любителей и пережил несколько довольно серьезных обновлений кодовой базы. Последнее из них — переезд на CakePHP 2 в 2012 году. На этом фреймворке и PHP 5 сайт жил до 2017 года.

Владелец fishingsib.ru планировал поддерживать и развивать сайт, внедрять новую функциональность, однако столкнулся с техническими проблемами. Любые доработки были очень долгими из-за неудачных архитектурных решений и сильной зависимости от устаревающего и не особенно популярного CakePHP 2. После каждого обновления появлялось множество багов. В то же время не удавалось найти новых разработчиков, потому что большинство специалистов не хотели работать в проекте с неактуальным стеком. Развитие проекта сильно замедлилось и стало понятно, что с технической частью нужно что-то делать.

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

Сравнение тяжеловесности популярных библиотек UI компонент для Vue 3

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров8.8K

Библиотеки UI компонент популярны и удобны в некоторых случаях, но у них тоже есть обратные стороны. Одно дело, когда делаешь админку и используешь десятки компонент, другое - когда тебе надо всего пару компонент.

Было проведено исследование - взяты три HTML элемента: Button, Input и Select, и проверено, насколько увеличатся js и css бандлы если использовать для них одну из 10 распространенных UI библиотек для Vue 3.

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

Гайд по Scratch для детей: как запустить игру на Android

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров2.7K

Детское программирование стремительно набирает популярность. Многие школьники, интересующиеся видеоиграми, нередко задумываются о создании собственного виртуального мира. К счастью, сейчас для этого есть множество технических возможностей: в большинстве современных семей есть компьютеры, а дети идут в первый класс уже со смартфонами. 

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

Как вырастить из ребёнка айтишника долгими зимними вечерами?

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров7.5K

Привет, Хабр! Жизнь удалёнщика вдвойне веселее с детьми. Изредка переводя взгляд от монитора вовне, я пытаюсь воспитывать дочку. Пока чаще получается наоборот. Эта гибридная нейросеть неохотно соглашается переключаться в режим обучения с учителем, но при этом требует 200% внимания. Такое взаимодействие требует немалых душевных сил, а за выходные я порой устаю сильнее, чем за рабочую неделю. Чего уж говорить о длинной череде красных дней календаря!

Приближаются новогодние праздники, а значит — снова назревает вопрос о том, как провести время с детьми и не свихнуться помочь им развиваться в увлекательной форме. Раньше я рассказал как играю с дочкой «в шифры», а один из читателей предложил более простой вариант — настолки. Как сотруднику компании «Криптонит», мне стало интересно: а есть ли настольные игры на тему криптографии? Сходу нашлось две, а затем я решил опробовать с дочкой ещё одну — более универсальную и направленную (как заявлено) на всестороннее развитие когнитивных функций. Результат нашего небольшого эксперимента оказался слегка неожиданным, и я спешу поделиться с вами свежим опытом.

Читать далее
Всего голосов 14: ↑11 и ↓3+8
Комментарии1

Пакуем весь трафик в Ping message, чтобы не платить за интернет | ICMP NAT traversal

Уровень сложностиСложный
Время на прочтение29 мин
Количество просмотров85K

Бывало ли у вас такое, что вы подключились к общественной сети или мобильному интернету, но он себя странно ведёт. Надпись «Подключено, без доступа к интернету» отсутствует, устройство думает, что всё нормально. Вы открываете браузер и видите «Пройдите проверку личности в сети нашего кафе» или в случае с мобильным интернетом «Пополнить баланс можно тут, тут и тут».

Так вот, переходя ближе к теме. Вы можете воспроизвести подобное поведение очень просто прямо сейчас при помощи вашего мобильного телефона и ноутбука. Я в своём конкретном кейсе буду пользоваться услугами оператора красного цвета, однако проблема актуальна для всех текущих 4 монополистов рынка сотовой связи. Как вам, скорее всего, уже известно, они около года меняют свою политику, внедряя одно интересное нововведение — с вас требуют дополнительной платы за раздачу интернета поверх основного пакета. То есть вы не можете взять и использовать свои 7 гигов на месяц как ресурс для раздачи при помощи точки доступа. Для точки доступа вам предлагают отдельный, зачастую совсем невыгодный тариф. Конечно, можно сменить основной тариф на специальный «тариф для раздачи» и платить втридорога, но, как вы понимаете, сегодня мы в потребителя будем играть совсем недолго. Сейчас по пунктам нужно доказать нечестность подобной политики и с чувством завершённого введения перейдём к непосредственно технотексту.

Подобные условия пользования, само собой, порождают внутреннее недовольство пользователей:

За интернет они платят? — Да.

Раздача как-либо использует ресурсы провайдера сверх нормы? — Нет.
Читать дальше →
Всего голосов 298: ↑296 и ↓2+294
Комментарии91

Диспетчер Задач для Микроконтроллера

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров10K

В программировании микроконтроллеров часто нужно написать простые тестировочные прошивки. При этом надо некоторые функции вызывать чаще, а некоторые реже. Для этого, конечно, можно запустить FreeRTOS, однако тогда этот код не будет переносим на другие RTOS например Zephyr RTOS или TI-RTOS. Поэтому надо держать наготове какой-нибудь простенький NoRTOS планировщик.

В этот тексте я представил основные идеи алгоритма такого кооперативного планировщика.

Читать далее
Всего голосов 26: ↑24 и ↓2+22
Комментарии26

Безопасно стираем файлы с цифровых носителей

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров13K

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

Читать далее
Всего голосов 22: ↑20 и ↓2+18
Комментарии9

Nuxt as fullstack server: frontend + backend API Server (Часть 1)

Время на прочтение6 мин
Количество просмотров25K
Nuxt as fullstack server: frontend + backend API Server


Разработчики Nuxt предлагают 3 метода доступа к API:

  1. Встроенный в Nuxt сервер Connect и использование serverMiddleware
  2. Интегрированные фреймворки (Express, Koa, Hapi и т.д.)
  3. Внешние API сервера

Я покажу на простом примере как организовать API сервер с использованием serverMiddleware на том же инстансе Nuxt, который у нас отвечает за frontend.
Читать дальше →
Всего голосов 13: ↑12 и ↓1+11
Комментарии3

Краткий курс компьютерной графики: пишем упрощённый OpenGL своими руками, статья 6 из 6

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

Содержание основного курса




Улучшение кода






Official translation (with a bit of polishing) is available here.




Shadow mapping


Ну вот наш краткий курс подходит к концу, задача на сегодня — научиться отрисовывать тени (внимание, просчёт полутеней — это отдельная тема):



Как всегда, код доступен на гитхабе
Читать дальше →
Всего голосов 68: ↑65 и ↓3+62
Комментарии20

Парадокс коллективной эмпатии: как спровоцировать толпу на самоистребление

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

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

Люди по-разному отвечают на один и тот же по своей сути вопрос, сначала гордясь тем, что они в отличие от циничных логиков-эгоистов возжелали спасти всех, а потом также душевно наплевали на ближнего своего. Предложи им «умереть, если не наберётся 50%» и они, понятное дело, откажутся. Но антихрист может быть коварнее и хитрее. И коль он предложит им «выжить, если наберётся 50%», то они ринуться крутить рулетку по истреблению самих себя, считая это благим делом.

Понимаю, что мои выводы по виртуальному голосованию звучат слишком драматично. Но что является большей драмой, чем факт того, что даже гипотетический выбор толпы, зависит не от благородных чувств и пресловутой эмпатии (за которую так ратуют едоки синей таблетки), а от формулировки условия? В общем-то всё самое важное я уже написал. А всех презирающих рациональность с теорией игр и вопрошающих «с какого хрена вышеупомянутые опросы одинаковые» приглашаю к дальнейшему чтению.

Читать далее
Всего голосов 62: ↑53 и ↓9+44
Комментарии235

Просто шифруем файлы в Linux с помощью Truecrypt и Veracrypt

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров9.4K

В данной статье будет затронута тема создания криптоконтейнеров с помощью различного опенсорсного софта. Коснемся TrueCrypt и VeraCrypt, рассмотрим все с самых азов. Разберемся как создать простой том, том с двойным дном, как создать ключи шифрования и прочее. Все это проделаем под линуксом в консольном режиме.

Читать далее
Всего голосов 11: ↑10 и ↓1+9
Комментарии33

Основы полнотекстового поиска в ElasticSearch. Часть вторая

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров12K

Это вторая статья из цикла. В первой части я рассказывал про самые базовые понятия Elasticsearch. В этом же посте разберем устройство анализа текста и немного пощупаем полнотекстовый поиск.

Несколько слов про анализ текста

Анализ текста — процесс преобразования оригинального текста в структурированный формат, оптимизированный под эффективное хранение и быстрый поиск.

Мы уже познакомились с некоторыми типами Elasticsearch, но в этом разделе будем рассматривать только два — keyword и text. Тип text анализируется для полнотекстового поиска. Тип keyword преимущественно остается без изменений для точного поиска, сортировки и агрегации.

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

Как работает компьютер: глубокое погружение (на примере Linux)

Уровень сложностиСложный
Время на прочтение48 мин
Количество просмотров133K



Введение


Я делала много вещей с компьютерами, но в моих знаниях всегда был пробел: что конкретно происходит при запуске программы на компьютере? Я думала об этом пробеле — у меня было много низкоуровневых знаний, но не было цельной картины. Программы действительно выполняются прямо в центральном процессоре (central processing unit, CPU)? Я использовала системные вызовы (syscalls), но как они работают? Чем они являются на самом деле? Как несколько программ выполняются одновременно?


Наконец, я сломалась и начала это выяснять. Мне пришлось перелопатить тонны ресурсов разного качества и иногда противоречащих друг другу. Несколько недель исследований и почти 40 страниц заметок спустя я решила, что гораздо лучше понимаю, как работают компьютеры от запуска до выполнения программы. Я бы убила за статью, в которой объясняется все, что я узнала, поэтому я решила написать эту статью.


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


Более удобный формат статьи.

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

Переход с Vue-CLI и Webpack на Vitejs

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

Веб-приложение Qvault, в котором размещаются все мои курсы по кодированию, представляет собой одностраничное приложение, написанное на Vue 2, с планами перехода на Vue 3 в ближайшее время​. Тем временем я обнаружил новое классное инструментальное приложение под названием Vite, которое предложило несколько вещей, привлекших мое внимание.

Читать далее
Всего голосов 9: ↑8 и ↓1+7
Комментарии5

Что почитать (НаучПоп / Научная Фантастика)

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

Некоторые время назад сильно увлёкся потреблением информации с научно-популярным уклоном. Но как не заблудиться в миллионах книг? Ресурс то ограничен. А значит придётся выбирать.

Удалось собрать библиотеку по 4 разделам:


Раздел 1. Законы науки и мышление
(Математика, Рациональность, Научный метод, Когнитивные искажения, Нейрофизиология, Ошибки мышления, Доказательная медицина)

Раздел 2. Законы природы
(Физика, Математика, Теория относительности, Квантовая механика, Астрофизика, Астрономия, Изобретения и открытия)

Раздел 3. Законы жизни
(Абиогенез, Теория эволюции, Молекулярная биология, Биоинформатика, Биология клетки, Антропогенез)

Раздел 4. Художественный научпоп / Научная фантастика

Обменяться рекомендациями
Всего голосов 44: ↑41 и ↓3+38
Комментарии253

Ядро планеты Python. Интерактивный учебник

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

Добрый день! Меня зовут Михаил Емельянов, недавно я опубликовал на «Хабре» небольшую статью с примерным путеводителем начинающего Python-разработчика. Пользуясь этим материалом как своего рода оглавлением книги, я написал первые четыре главы мини-учебника «Ядро планеты Python», где постарался коротко, но достаточно ёмко раскрыть специфику, удобство, красоту и силу этого прекрасного языка.


Оригинал учебника лежит на GitHub, вы вольны сколько угодно дополнять и переделывать его. Самое главное — учебник написан на Jupiter Notebook, а это значит, что вы можете интерактивно редактировать код, мгновенно добавляя новые сущности или проясняя непонятные моменты.


Core of the planet Python

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

Темная сторона исследований пользователей: как когнитивные искажения портят результаты

Уровень сложностиСредний
Время на прочтение44 мин
Количество просмотров7.7K

Интро

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

Естественно, читаю не все (сорри, но темы, которые уже знакомы, проходят только поверхностный фильтр адекватности), однако часто встречается и то, что привлекает внимание и заставляет прочитать полностью и делать для себя заметки. Еще реже появляются статьи, которые прямо хочется прокомментировать или тем более перевести. В этот раз мне попалась отличная, но платная, статья The dark side of User Research: How cognitive biases taint results, которую не только захотелось перевести, но и дополнить собственными комментариями и ссылками.

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

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

Ультимативная дорожная карта для изучения SQL и баз данных в 2023 году + источники для знаний

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров45K

Roadmap, который поможет вам научиться работать с SQL. Чтобы стать настоящим экспертом в SQL, нужно много практиковаться и изучать различные аспекты языка на протяжении многих лет. Мой Roadmap предлагает отличный старт для начала изучения SQL, поэтому я рекомендую вам приступить к обучению согласно плану.

Читать далее
Всего голосов 17: ↑14 и ↓3+11
Комментарии12

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность