Привет, я Виктор. Двенадцать лет назад я пришел в веб-студию в Самаре. Так начался мой путь в разработке. У нас не было гита, CI/CD, тестовых стендов и много чего еще. Я видел, как это мешало развитию команды и бизнеса. Приходилось на ощупь собирать грабли, открывать для себя хорошие практики и внедрять их. С тех пор я поработал старшим разработчиком в российском финансовом холдинге и немецком b2b-стартапе. Был тимлидом в фудтех-проекте, СTO в образовательных стартапах для российского и латиноамериканского рынка — и почти везде поначалу натыкался на похожие проблемы. Недавно переехал в Израиль, стал консультировать стартап. И что бы вы думали…
Пользователь
7 интересных API на JavaScript для создания веб-сайтов, о которых вы (скорее всего) не знали
В связи с быстро меняющимися технологиями разработчикам предоставляются невероятные инструменты и технологии.
Но было замечено, что различные функции и возможности API не так активно используются, и многие даже не знают о некоторых из них.
Давайте взглянем на некоторые полезные веб-API, которые могут помочь вам поднять ваш сайт до небес! (ну или около того)
Гайд по созданию лженауки
И так вы вдохновились великими Ганеманом и Хаббардом, и наконец решили создать свою лженаучную гипотезу. Не важно хотите вы славы или денег, будете продавать артефакты или книги. Начните свой путь прочитав это руководство. И не забудьте купить наш курс “Первые шаги профессионального мракобеса”. Гайд в основном направлен на новичков, мастера давно используют всё это и в советах не нуждаются.
6 Python декораторов, которые значительно упростят ваш код
"Простое лучше сложного".
Лучшая функция Python, которая применяет эту философию из "дзен Python", - это декоратор.
Декораторы могут помочь вам писать меньше кода для реализации сложной логики и повторно использовать его повсюду.
Более того, существует множество замечательных встроенных декораторов Python, которые значительно облегчают нам жизнь, поскольку мы можем просто использовать одну строчку кода для добавления сложных функций к существующим функциям или классам.
Болтать не буду. Давайте посмотрим на отобранные мной 6 декораторов, которые покажут вам, насколько элегантен Python.
У нас проблемы с промисами
У нас проблемы с промисами
Дорогие JavaScript разработчики, настал момент признать это — у нас проблемы с промисами.
Нет, не с самими промисами. Их реализация по спецификации A+ превосходна. Основная проблема, которая сама предстала передо мной за годы наблюдений за тем, как многие программисты борются с богатыми на промисы API, заключается в следующем:
— Многие из нас используют промисы без действительного их понимания.
Если вы мне не верите, решите такую задачку:
Вопрос: В чем разница между этими четырьмя вариантами использования промисов?
doSomething().then(function () {
return doSomethingElse();
});
doSomething().then(function () {
doSomethingElse();
});
doSomething().then(doSomethingElse());
doSomething().then(doSomethingElse);
Когнитивные искажения с примерами для айтишников
Про когнитивные искажения много пишут и много говорят.
Однако всегда не хватало более чёткого понимания, как именно это влияет на профессиональную деятельность, мою и моих коллег. Какие решения я как тимлид и программист принимаю неправильно. Что мне подправить, на что обратить внимание.
Поэтому я решил взять справочник когнитивных искажений и поискать примеры из реальной IT-жизни по каждому пункту.
Если вам интересно, добро пожаловать под кат.
Ладно, по каждому пункту — это я погорячился, так как я нашел аж 176 видов искажений. Поэтому выберу рандомно лишь некоторые из них.
Как проводить Code Review по версии Google
Вопросы код-ревью меня интересуют очень давно. Много раз возникали те или иные проблемы то с качеством кода, то с климатом в коллективе. И действительно, code review — это если не единственное, то одно из самых главных мест для возникновения конфликтов в коллективе разработчиков.
И вот недавно при подготовке к очередному выпуску подкаста "Цинковый прод" я узнаю, что Google опубликовал свод правил по проведению Code Review, битком набитый ценными мыслями. Весь материал довольно объемный и не влезет в одну статью, поэтому я постараюсь выделить наиболее интересные (мне) мысли.
Итак, поехали
Базы данных. Тенденции общемировые и в России
Эта статья не является ответом на множество вопросов по базам данных (БД) и системам управлениям базами данных (СУБД). Я как автор выражаю своё собственное мнение о трендах, стараясь опираться на беспристрастные показатели, статистики и т.д., но для примера приводя собственный опыт. Я не являюсь ангажированным представителем какой-либо компании и выражаю точку зрения опираясь на опыт более 25 лет работы с разными СУБД, в том числе, которую создавал своими руками. Не так много даже опытных программистов и архитекторов, которые знают все термины, технологии, какие подводные камни и куда идёт движение. Тема поистине огромная, поэтому в рамках одной статьи не раскрыть даже верхний уровень информации. Если кто-то не встретит свою любимую СУБД или её невероятный плюс, который стоит упомянуть, то прошу в комментариях указать и этим дополнить общую картину, что поможет другим разобраться и понять лучше предметную область. Поехали!
Open Source DBMS vs Commercial DBMS
Для начала приведён график с сайта, db-engines.com, по моим ощущениям, неплохо отслеживающим тренды БД. Именно этот график добавил желания написать статью о текущем положении дел.
150+ хакерских поисковых систем и инструментов
Все таргетированные хакерские атаки начинаются с разведки. Социальные инженеры, красные команды и отдельные пентестеры также собирают информацию о своих целях перед тем, как перейти к активным действиям. Им помогают десятки инструментов и хаков. Под катом ссылки на некоторые из них.
Пост состоит из 8 объемных разделов:
1. метапоисковики и поисковые комбайны;
2. инструменты для работы с дорками;
3. поиск по электронной почте и логинам;
4. поиск по номерам телефонов;
5. поиск в сети TOR;
6. поиск по интернету вещей, IP, доменам и поддоменам;
7. поиск данных об уязвимостях и индикаторов компрометации;
8. поиск по исходному коду.
В этом списке собраны инструменты, которые члены нашей команды используют в работе. И все же, эта подборка пригодится не только пентестерам, но и разработчикам, журналистам, HR, маркетологам и всем, кто много ищет в интернете. Знания — это сила. Используйте их во благо.
Как работают нейронные генераторы картинок (в формате ELI5)
Хочу очень кратко рассказать, на каких принципах построены современные нейронные генераторы картинок, чтобы немножко разбавить флёр волшебства и магии, который окружает публичное обсуждение результатов их работы. Для того, чтобы понимать перспективы собственных профессий в мире, где похожие генераторы производят вообще все виды электронных артефактов (видео, тексты, программы, 3D-модели и так далее), – а этот мир нас, безусловно, ожидает в самом ближайшем будущем – надо понимать, что за генерацией стоит довольно простая математика на основе данных, которые ввели клавиатурой и мышкой и закачали в интернет люди.
(Должен сразу предупредить, что для специалистов текст окажется может оказаться смехотворным. Например, я полностью опускаю детали применения градиентного спуска при обучении, вообще не упоминаю слои в нейронках, уже не говоря о развёртках или там, рекурренции. Также я ловко обхожу вопрос довольно значительного различия между классической многослойной архитектурой и трансформерами. Мне кажется, что это детали реализации, хотя в них, конечно, и вложены мегалитры программистской крови. В общем, если вы работаете в этой области, то вам может быть не очень интересно, зато мне будет интересно прочитать ваши комментарии, чтобы улучшить статью и сделать её ещё более простой и понятной.)
Устаревшие Python-библиотеки, с которыми пора попрощаться
В Python, с каждым релизом, добавляют новые модули, появляются новые и улучшенные способы решения различных задач. Все мы привыкли пользоваться старыми добрыми Python-библиотеками, привыкли к определённым способам работы. Но пришло время обновиться, время воспользоваться новыми и улучшенными модулями и их возможностями.
Базовое понимание принципа Eventloop
Все мы слышали ни раз: JavaScript однопоточный язык программирования. Но, что это означает? Из вышесказанного следует, что интерпретатор языка идет по коду и выполняет команду за командой пока не достигнет конца. Но тогда это означало бы, что если требуется обратиться к серверу, то приходилось бы ждать ответа и только затем переходить к следующей операции, а пользователь ничего бы не смог сделать, пока идет обработка. К счастью, это не так, но как же происходят асинхронные действия и каким образом JavaScript может обрабатывать несколько операция одновременно?
Как красиво избавиться от switch-case посредством перечисления
Привет, хабр! Применение switch-case в коде - давняя тема холиваров на форумах на предмет чистоты кода. Лично я склоняюсь к простому мнению: инструмент необходимо использовать по назначению.
Сегодня хотелось бы рассмотреть несколько простых кейсов, где switch-case является не лучшим выбором и предложить красивое и удобное решение проблемы.
Как мы кикшеринг взломали
В этой статье я поведаю вам кейс о взломе одного из крупнейших сервисов шеринга самокатов путем подмены TLS сертификатов и использования Python и mitmproxy.
Атрибуты HTML, которыми вы никогда не пользовались
В январе этого года Мэдисон Канна спросила у своих подписчиков в Twitter:
Какие языки/технологии вам бы хотелось изучить или узнать глубже в этом году?
Мой выбор: typescript, next.js, react, graphql, solidity, node — Мэдисон Канна (@Madisonkanna) January 3, 2022
Мой ответ был очень простым: HTML. И я ни в коей мере не был саркастичным или насмешливым. Разумеется, я неплохо знаю, какие теги использовать в каких случаях и как обеспечивать семантику и доступность моего HTML.
Однако существует целая куча малоиспользуемых атрибутов, о которых я забыл, и, вероятно, целая куча атрибутов, о существовании которых я и не знал. Этот пост стал результатом моих исследований, и я надеюсь, что он окажется для вас полезным при создании страниц на HTML.
Кофеин: как это работает?
Привет, мы решили подготовить серию статей про то, как работают разные ноотропные ингредиенты – нас часто спрашивают об этом, а найти качественную информацию не так уж и просто. Если такой формат будет интересен подписчикам Хабра, будем делать еще.
Как использовать CSS ::before и ::after для создания пользовательских анимаций и переходов
Как сделать плавный анимированный переход на сайте без использования специальных библиотек? Урок использования псевдоэлементов CSS для создания эффектов: от анимированной кнопки до карточки профиля. Подходит новичкам.
Программирование необычных шахмат
Написание своего шахматного движка - обширная тема, про которую пишут целые книги.
Однако очень многие шахматные программы работают со "стандартными" правилами шахмат и не могут работать при других правилах, хотя существуют сотни вариаций шахмат.
В этой заметке я покажу, каким образом можно написать достаточно быстрый и гибкий шахматный движок на С++, в котором можно задавать произвольный размер доски, расположение фигур, и создавать новые типы шахматных фигур.
Я запрограммировал 15 шахматных вариаций - для каждой опишу неожиданные ходы и результаты партий компьютера друг с другом.
Гид по цвету: физиологические эффекты, социокультурные ассоциации и связанные эмоции
Дикий лонг-рид о цвете в разработке дизайна: какое влияние цвета оказывают на людей как на вид животных, на какие ассоциации мы должны обратить внимание и как работать с эмоциями пользователей.
Информация
- В рейтинге
- Не участвует
- Дата рождения
- Зарегистрирован
- Активность