Как стать автором
Обновить

28 Telegram-каналов для UI/UX и веб дизайнеров

Уровень сложности Простой
Веб-дизайн *Графический дизайн *Дизайн Дизайн мобильных приложений *Интерфейсы *
Ожидает приглашения

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

Я разбил их на категории, для того чтобы каждому было проще найти полезное и актуальное для себя:

Читать далее

Как JIT-компиляция изменила мир

Уровень сложности Средний
Компиляторы *
Ожидает приглашения

JIT (Just-In-Time) компиляция - это технология компиляции, которая позволяет генерировать машинный код на лету, во время выполнения программы. Это отличается от традиционной компиляции, которая генерирует машинный код заранее, на этапе компиляции исходного кода

До появления JIT компиляции, компиляторы генерировали машинный код заранее, на этапе компиляции исходного кода. Это приводило к тому, что компиляторы были ограничены тем, что могли сделать до запуска программы. Компилятор не мог адаптироваться к специфическим условиям выполнения программы, таким как ввод-вывод, динамическое изменение данных, и так далее

JIT компиляция была создана, чтобы решить проблему производительности, связанную с интерпретацией кода во время выполнения программы. В интерпретируемых языках программирования, таких как Python, Ruby и JavaScript, исходный код не компилируется в машинный код заранее. Вместо этого, он интерпретируется во время выполнения программы, что замедляет ее работу

JIT также используется в браузерах для ускорения выполнения скриптов. В браузере, JIT компилятор может оптимизировать код на основе информации о браузере, аппаратных средствах, и других факторах, которые могут влиять на производительность

Читать далее

Свободный интернет, или как мы реализовали бесплатный VPN в России

PHP *
Ожидает приглашения

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

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

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

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

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

Мы не поддерживаем использование VPN для посещения экстремистских ресурсов или запрещенных в РФ веб-сайтов, и не рекомендуем это. Наш сервис предназначен для тех, кто ищет безопасный и свободный доступ в интернет, соблюдая все законы и правила России.


Содержание статьи:

Читать далее

Полезные Snippets для Flutter-разработчика

Уровень сложности Простой
Flutter *Разработка мобильных приложений *
Ожидает приглашения

Всем привет! На связи Глеб Гусаров, flutter-разработчик в команде aim digital. Мы занимаемся разработкой цифровых продуктов и сервисов и автоматизацией процессов для бизнеса. В статье рассказываю, как создать файл конфигурации сниппетов и делюсь своей подборкой полезных сниппетов.

Snippet — это шаблон (подсказка в коде), по вызову которого можно быстро вставить готовый код.

Читать далее

Множественное наследование в PHP на собеседовании

Уровень сложности Средний
PHP *
Ожидает приглашения

Стандартным вопросом на PHP собеседованиях выступает вопрос про наследование, может ли класс наследовать нескольким классам или нет. На поверхности, конечно лежит ответ – «нет не может, класс всегда наследует только одному родителю». Далее обычно идет что-то «но если сильно нужно, то можно, так как есть трейты» и на этом все кончается. Как правило, и соискатель и интервьюер множественное наследование в деле не испытывали, и обоим просто добавить тут нечего.

А добавит есть что... Дело в том, что трейт - это механизм повторного использования кода. И этот механизм никак не влияет на типизацию, а без типизации наследование не наследование!

В случае использования обычного наследования мы имеем

Читать далее

Сделай свой код чище: JavaScript

Уровень сложности Простой
Angular *JavaScript *ReactJS *TypeScript *VueJS *
Ожидает приглашения

Часто ли у вас случалось так, что возвращаясь к написанному вчера коду вы уже не можете в нём разобраться? Не можете понять, что делает тот или иной компонент, функция, для чего используется какая либо переменная, не улавливаете как вообще работает ваш код ?

Знакомо, да?

Читать далее

Как внедрить российские сертификаты от МинЦифры в React Native приложение

Уровень сложности Простой
JavaScript *Информационная безопасность *Разработка мобильных приложений *
Ожидает приглашения

Всем привет! Меня зовут Екатерина и я React Native разработчик в компании Fortech.

Осенью 2022 года “Сбер” объявил о переводе всех своих ресурсов на работу с применением российских сертификатов от Минцифры (ссылка на новость). Это изменение затрагивало сервис онлайн-оплаты, поэтому при планировании одного из недавних спринтов я ожидаемо увидела в своем беклоге задачу по внедрению сертификатов в мобильное приложение.

Читать далее

Безопасность использование Python при создании платформ

Уровень сложности Простой
Функциональное программирование *
Ожидает приглашения

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

Читать далее

Win + R всегда от Администратора

Уровень сложности Простой
Системное администрирование *
Ожидает приглашения

Иногда команды в меню «Выполнить» необходимо выполнять с правами администратора, иначе некоторые действия, например, в консоли (cmd.exe) будут недоступны.

Читать далее

Кто такие «Кванты»? И почему им платят до 500 000 долларов в год

Уровень сложности Простой
Python *R *Криптовалюты
Ожидает приглашения

Термин «Квант» охватывает не одну, а несколько специализаций, таких как Quantitative Analyst, Quantitative Developer, Quantitative Researcher и Quantitative Trader. Все они относятся к направлению Quantitative Finance. Направление Quantitative Finance зародилось еще в 1900 году с диссертации Луи Башелье «Теория спекуляции» в которой была представлена модель ценообразования опционов при нормальном распределении. Однако современная версия началась с исследования Эдварда Торпа. Торп использовал теорию вероятности и статистический анализ, чтобы создать систему для успешного выигрыша в Блэкджек, известную сейчас как «подсчет карт». Впоследствии инвестиционные компании с Wall Street начали использовать его исследования для получения прибыли на финансовых рынках, используя статистические методы анализа. Однако популярность профессия начала набирать только в последние годы вместе с развитием Data Science.

Читать далее

Как добавить секцию с различными элементами на макрос шаблонного процессора в phpWord

PHP *
Ожидает приглашения

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

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

Для этого как бы подходит метод setComplexBlock() (ссылка на док'у), но если этому методу передать объект секции выпадет ошибка об отсутствии данного класса в пространстве имён Writer'а для Word2007.

Читать далее

Типы данных

Уровень сложности Простой
Java *
Ожидает приглашения

Типы данных

Примитивные типы. Преобразование данных. Переменные. Литералы.

Читать далее

Продуктовый дизайн. Инструкция по Agile методологии для новичка

Уровень сложности Простой
Usability *Веб-дизайн *Высокая производительность *Дизайн мобильных приложений *Интерфейсы *
Ожидает приглашения

Продуктовый дизайн - это процесс создания продукта, который удовлетворяет потребности и желания пользователей. Важным аспектом этого процесса является использование методологии Agile. Agile - это методология разработки программного обеспечения, которая подчеркивает взаимодействие, гибкость и быструю адаптацию к изменениям.

В этой статье я хочу рассказать о том, как новичку работать с методикой Agile при создании продуктового дизайна.

Читать далее

Inspections vs PHPStan: так ли плохи инспекции, как их малюют

Уровень сложности Простой
PHP *
Ожидает приглашения

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

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

Читать далее

Если вы выбираете OAUTH, то это ничего не значит. По крайней мере для Яндекса

Уровень сложности Простой
Информационная безопасность *Яндекс API *
Ожидает приглашения

Привет всем.

Хочу поделиться опытом использования OAuth. И более того, немного окунуться в то место куда макают лицом в тупизм Яндекса в этой области. Как оказалось, даже если ты используешь этот метод, то это ничего не значит.

Читать далее

Стресс глазами ребенка. Или нас самих?

Здоровье Научно-популярное Читальный зал
Ожидает приглашения

Мир стремительно меняется. Постоянная тревога о будущем, эмоциональные срывы, ощущение бессилия перед сложившимися обстоятельствами… Всем нам непросто, но что же происходит с нашими детьми?

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

Также с удовольствием отвечу на Ваши вопросы. 

Ну что, пойдем дальше?

Неочевидные вещи в TypeScript

Уровень сложности Средний
JavaScript *TypeScript *
Ожидает приглашения

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

Утверждения типа

Утверждения типов позволяют разработчикам переопределять систему вывода типов по умолчанию в TypeScript. Они используются, когда разработчик знает о типе значения больше, чем может вывести TypeScript. Утверждения типа записываются в виде значения или значения как Type.

Читать далее

ЖЦ кастомного UI в андроиде с примерами кода на Котлине?

Уровень сложности Средний
Kotlin *Дизайн мобильных приложений *Разработка под Android *
Ожидает приглашения

ЖЦ (жизненный цикл) кастомного UI-компонента в Android схож с жизненным циклом обычных компонентов (Activity, Fragment, View и т.д.). Жизненный цикл состоит из нескольких этапов: создание, инициализация, изменение, уничтожение и т.д. Каждый этап предоставляет возможность для выполнения определенных действий, таких как установка атрибутов, обработка событий и т.д.

Пример кастомного UI-компонента, который наследуется от View и имеет жизненный цикл:

Читать далее

Практики и инструменты для стартапа

Уровень сложности Средний
DevOps *IT-стандарты *JavaScript *Python *Развитие стартапа
Ожидает приглашения

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

Цель статьи: дать общее представление о “правильных” подходах при создании стартапа.

Читать далее