Алексей Добрый

Алексей Добрый

Compiling vs Transpiling
compile

Compiling vs Transpiling

Компилятор общими словами это программа которая получает исходный код, написанный на каком-то языке программирования и создает  файл (или несколько файлов) на другом языке. Обычно компиляцией называют преобразование исходного кода в двоичный (бинарный) исполняемый  файл (машинный код).  Примером может служить компилятор gcc. Транспилятор, или компиляторы исходного кода, берут файл исходного кода
1 min read
Nuxt 3
nuxt

Nuxt 3

Nuxt это платформа с открытым исходным кодом под лицензией MIT для создания современных и производительных веб-приложений, которые могут работать практически на любых платформах где выполняется JavaScript. Чтобы понять что такое Nuxt, разберемся что необходимо для современного приложения: * JavaScript фреймворк, для "реактивности" и использования веб-компонентов, в Nuxt это Vue.js * Сборщик
2 min read
Мигающий текстовый курсор Chrome
chrome

Мигающий текстовый курсор Chrome

Мигающий курсор, текстового ввода, вертикальная черта, используется для указания точки ввода. Например, поля формы. Курсор мигает показывая текущую точку для ввода данных, текста. Некоторые пользователи обратили внимание, что в браузере  на страницах в разных позициях появляется мигающий текстовый курсор. Причем поведение изменилось. Если раньше курсор был в полях ввода, то
1 min read
История Интернет
история

История Интернет

В конце 60-х, Управление передовых исследований США (ARPA, или DARPA позднее) запустило финансирование экспериментальной глобальной сети ARPANet. Тогда основной задачей сети было объединение исследовательских организаций. Стоимость компьютерных ресурсов была высока в тем времена. И идея состояла в том, чтобы иметь возможность использовать компьютерные ресурсы совместно. Но как обычно это бывает
1 min read
Разделы MAN Linux
linux

Разделы MAN Linux

Чтобы посмотреть список доступных MAN страниц для команды Linux, или по ключевому слову, или даже по нескольким буквам используем apropos $ apropos crontab вывод anacrontab (5) - configuration file for anacron crontab (1) - maintain crontab files for individual users (Vixie Cron) crontab (5) - tables for driving cron Разделы MAN
1 min read
Состояние аккумулятора в Ubuntu
ubuntu

Состояние аккумулятора в Ubuntu

Проверить состояние аккумулятора ноутбука в Ubuntu. Общая информация об аккумуляторе, проценте заряда отображается на верхней панели, на рабочем столе. Для отображения данных в командной строке можно использовать  несколько разных утилит. upower Посмотреть список, пути устройств upower -e На выходе получим примерно следующее /org/freedesktop/UPower/devices/line_power_ADP1 /org/
2 min read
Отношения в Strapi
strapi

Отношения в Strapi

В реляционной модели данных отношение - это фундаментальное понятие. В общем поэтому и модель называется реляционной от relation. Вся информация в реляционной базе данных, это набор таблиц с данными. Каждая таблица хранит строго определенный тип сущностей. В терминах реляционной модели каждая строка в  таблице, также запись или кортеж, столбец таблицы,
2 min read
Rails 7.0 - Релиз
rails

Rails 7.0 - Релиз

Свершилось. 15 декабря 2021 года официально вышел Rails 7.0. Основный посыл -  упрощение работы над современными веб-приложения. Это достаточно масштабный переход. Так же обновилась главная страница сайта. А DHH записал новые видео. * Комментарии к релизу [https://rubyonrails.org/2021/12/15/Rails-7-fulfilling-a-vision] Факты * Более 600 человек участвуют в разработке
Rails 7 (RC1)
rails

Rails 7 (RC1)

И так,  6 декабря 2021 года представлен релиз-кандидат Rails 7. И команда разработки готова в скором времени готова объявить о завершении работы над новой версией Rails 7. С момента альфа версии было исправлено множество проблем. Если все пойдет по плану, то мы увидим финальный релиз Rails 7 уже в этом,
1 min read
Память. Оперативная память.
hardware

Память. Оперативная память.

Получить детальную информацию о памяти в Linux при помощи утилиты lshw. lshw может показать детальную информацию о памяти, firmware, конфигурацию системной платы, процессора, шины и т.д. Для ограничения вывода по конкретному классу устройств используем -class,-C # общая информация sudo lshw -class MEMORY # кратко sudo lshw -class MEMORY -short dmidecode
1 min read
SQLite dumps
sqlite

SQLite dumps

Установить SQLite в Ubuntu sudo apt install sqlite3 libsqlite3-dev Открыть конкретную базу данных, консоль: sqlite3 ~/database.sqlite3 sqlite> Для сохранения дампа базы используется  команда .dump: sqlite> .output dump.sql sqlite> .dump sqlite> .exit Для сохранения отдельной таблицы sqlite> .output users.sql sqlite> .dump users sqlite> .quit Будет сохранена схема и
1 min read
Nuxt 3 beta
nuxt

Nuxt 3 beta

И так, через 468 дней после первого коммита Nuxt 3 вышел в бета-версии. Более года интенсивной разработки Nuxt 3. Документация [https://v3.nuxtjs.org/] и код [https://github.com/nuxt/framework]. Новая основа Помимо Vue3 и Vite, Nuxt 3 содержит новый серверный движок, который открывает новые возможности. Это  JavaScript сервер
1 min read
«O» большое - скорость алгоритма
алгоритмы

«O» большое - скорость алгоритма

Специальное соглашение «О-большое» описывает скорость работы алгоритма. Важно понимать, знать насколько быстро или медленно работают алгоритмы. Время выполнения алгоритма может расти с разной скоростью.  Например при поиске элементов. Допустим один шаг, одна итерация алгоритма выполняется 1мс. Значит при обработке 100 элементов время выполнения будет 100мс. Для бинарного поиска, чтобы найти
2 min read
Nuxt 3 is coming
nuxt

Nuxt 3 is coming

Созданные полностью с нуля для современного web. Гибридный статичный и серверный рендеринг, API маршруты и  native serverless. Что нового ожидается в Nuxt 3 До 75 раз меньше при развертывании сервера и меньший клиентские скрипты для современных браузеров. Оптимальный холодный старт с динамическим разделением кода на стороне сервера, на основе nitro.
2 min read
Python venv - виртуальное окружение
python

Python venv - виртуальное окружение

Начиная с версии Python 3.3. Модуль venv предоставляет поддержку создания легковесного виртуального окружения с собственными директориями, изолированными от общих системных. Каждое виртуальное окружение имеет свой собственный набор бинарных исполняемых файлов и может иметь собственный независимый набор установленных пакетов. Для создания виртуального окружения # Создать директорию проекта mkdir next-porject cd next-project
1 min read
Rails Multibase and Models
rails

Rails Multibase and Models

Rails 6.1 предлагает возможность использования одновременно нескольких баз данных. Для чего? Во первых можно распределить нагрузку и использовать одну из баз только для чтения, другую только на запись, например для админки. Конечно можно использовать разные типы баз данных в одном приложении. Это открывает еще больше возможностей, например для объединения
2 min read
OAuth 2
security

OAuth 2

Роли / Roles Стороннее приложение: Клиент Клиент это приложение которое пытается получить доступ к учетной записи пользователя. Для этого клиенту нужны разрешения от пользователя. API: Сервер ресурсов Сервер ресурсов это API сервер используемый для получения доступа к информации пользователя. Сервер авторизации Это сервер предоставляющий интерфейс где пользователь разрешает или запрещает запрос
4 min read
Grape Rails.
grape

Grape Rails.

Grape - это API-фреймворк для Ruby. Grape создан для работы с Rack приложениями. Для создания API используется простой DSL (domain specific language). Grape поддерживает разнообразные общепринятые практики при создании API. Для установки, добавить в Gemfile: gem 'grape' или сразу "всё" необходимое для Rails # grape gem 'grape' gem 'grape-entity' # swagger gem
3 min read
Nuxt load JSON
nuxt

Nuxt load JSON

Вопрос: Есть json файл, в котором есть данные для инициализации страницы, какой способ загрузки следует использовать? В 2017 году создатель Nuxt [https://github.com/nuxt/nuxt.js/issues/123#issuecomment-272246782] ответил примерно так: Запрос на сервере // wrong export default { asyncData() { return axios.get('/data.json').then((res) => res.data)
2 min read
Nuxt Fetch. How?
nuxt

Nuxt Fetch. How?

Начиная с версии 2.12 в Nuxt появился новый подход к получению данных приложением. Хук Fetch и жизненный цикл Nuxt Сверху вниз NuxtServerInit | Route Middleware | validate | asyncData() | beforeCreate() | created() | [$fetchState.pending = true] >>> fetch() <<< | mounted() [$fetchState.pending = false] Хук fetch() вызывается  после  того, как экземпляр компонента создан на стороне сервера. Это
3 min read
Bearer Token
bearer

Bearer Token

Один из типов токенов ( tokens), используемых в платформе авторизации OAuth 2.0. Bearer Token или «Токен на предъявителя» - сторона владеющая токеном («предъявитель», bearer), может использовать токен ( token ) любым способом (как и любая другая сторона, например разные клиенты или приложения). Использование токена не требует  от предъявителя доказательства владения. То есть,
1 min read