8 заметок с тегом

инструменты

Logitech M590 или лучшая мышка для mac

Больше полугода я активно использую эту мышку со своим личным ноутбуком и рабочей машиной. Главными критериями при выборе были:

  • Возможность работы с macOS через bluetooth без вспомогательных донглов.
  • Полноценная поддержка macOS так много мышек вели себя неадекватно.

Остановился я на Logitech M590.

Из особенностей что мне понравились

  1. Работа с 2 компьютерами. MacBook по Bluetooth, а с фрабочим компом на винде через донгл.
  2. Настройка дополнительных кнопок. И тут есть один очень крутой момент. ПО от logitech позволяет очень гибко настроить под себя мышку. В том числе на ней можно воспроизводить всем знакомые жесты macOS.

Для себя я настроил 2 режима

  • Нажатие на колесико вправо или влево — переключает рабочий стол в соответствующую сторону.
  • Передняя кнопка на левой стороне имитирует касание тачпада трема пальцами. Так зажав эту кнопку и проведя мышку вверх можно открыть Missing Control.

Минус один, если взять такую же расцветку как на картинке — то мышь очень быстро пачкается.

 2 комментария    65   1 мес   инструменты   обзор   техника

Разработка на C# с помощью Visual Studio Code

Пару недель назад решил перейти на VS Code в качестве основной IDE для .NET приложений. Составил список плагинов, которые использую каждый день.

  1. C#
  2. vscode-solution-explorer — позволяет работать с файлами .sln. Добавляет для этого дополнительное меню.
  3. Visual Studio IntelliCode
  4. PowerShell — отличное расширение, которое полностью заменяет PowerShell ISE.
  5. GitLens — Git supercharged
  6. Code Spell Checker
  7. C# Extension
  8. .NET Core Test Explorer
  9. Bookmarks
 Нет комментариев    38   3 мес   .net   c#   инструменты   программирование

Мои расширения в Google Chrome

Решил поделиться расширениями для браузера, которыми пользуюсь каждый день.

  1. Marinara: Ассистент Pomodoro — очень прикольный трекер помидорок. Можно смотреть отчеты и графики применения данной техники.
  2. Instapaper — быстрое добавление статей в Instapaper.
  3. Google Переводчик — так как читаю большое количество статей на английском языке, то данное расширение часто помогает понять смысл слова не переходя на другую вкладку с переводчиком.
  4. Follow this feed by Feedly — ищет на сайте возможность подписаться на обновления с помощью RSS
  5. uBlock Origin — как по мне самый лучший блокировщик рекламы, который можно заточить под себя. Оставлю здесь ссылку на настройки, которые позволяют убрать надоедливые окна-консультанты на сайтах
  6. JSONview — наверное самое популярное расширение для просмотра JSON в браузере.
  7. Trelabels for Trello — красивое отображение тегов на карточках в Trello.
  8. OneTab — мега крутое расширение которое я советую поставить прямо сейчас. Оно позволяет закрыть все открытые вкладки и сохранить их URL на одной единственной. Помогает разгрузить браузер и оперативку.
  9. Octotree — добавляет на github древовидное представление репозитория, как в IDE.
 Нет комментариев    18   5 мес   инструменты

Sublime Merge

В ходе прохождения курса по гиту решил посмотреть какие есть GUI клиенты помимо SourceTree. И нашел sublime merge.

Решил попользоваться им неделю и посмотреть как приживется. Теперь это мой основной клиент после cli.

Что зацепило:

  1. Простой и удобный UI
  2. Можно выполнять команды гита в самом клиенте
  3. Очень удобный поиск, в котором можно писать свои запросы
 Нет комментариев    19   6 мес   инструменты

Конспект: работа с командной строкой

Данная статья это конспект по пройденному курсу: Основы командной строки.

Обозначения пути

  • / — самый верхний уровень файловой системы
  • ~ — домашняя директория

Сайт на котором можно посмотреть что делает та или иная команда. Ссылка
Иформация о стандартных директориях *nix систем. FHS

Работа в файловой системе

  • pwd — отображает путь рабочей (текущей) директории
  • ls — показывает все файлы и директории в текущему или указанному пути
  • cd — служит для перемещения по директориям. Если выполнить без параметров — переместит нас в домашнюю директорию.
  • stat — показывает дополнительную информацию о папке или файле

Чтение файла

  • сat — Отображает содержимое файла
  • head — Отображает первые 10 строк файла, можно вывести больше с помощью флага -n 20
  • tail — Отображает последние 10 строк файла, можно вывести больше с помощью флага -n 20
  • less — Представляет из себя пейджер. С его помощью можно перемещайся и искать в файле. Также он может открыть файл любого размера, так как отображает только те строки, которые может поместить в окно консоли и при перемещении по файлу — дочитывать нужную информацию.

Может быть такая ситуация что файл очень интенсивно изменяется, например логи, и нужно постоянно выводить содержимое файла. Для этого у команд head и tail есть флаг -f. Данный файл сразу выводит на экран добавленные строки.

Grep

Grep — консольная утилита, которая производит поиск в файле или файлах по заданному шаблону.
Пример:

grep services Startup.cs  # выведет по очередно строчки, которые содержат services.

Иногда нужно посмотреть не только сами строчки содержащие текст, но и текст вокруг.
Для этого есть несколько дополнительных флагов:

  • -B — количество строк до искомой строки
  • -A — после искомой строки
  • -C — до и после одновременно
  • -R — рекурсивный поиск по директориям и под директориям
  • -n — отобразит номер строки, возле каждого результата поиска

Примеры:

grep -R .getUsers() . - найдет все файлы в которых есть строчка .getUsers(), начиная с текущей.
grep -C 10 text file.txt - найдет строку text и отобразит ее и 10 соседних строк с каждой стороны

Текстовые редакторы

Для редактирования файлов в командной строке используют редакторы Nano, Vim и Emacs. Первые два, обычно, установлены по умолчанию.

Nano
Самый простой текстовый редактор. Удобно редактировать небольшие файлы.

Vim
Данный редактор имеет очень много возможностей и особенностей.
Работа в Vim состоит из разных режимов.
Когда только открыли файл, редактор работает в режиме команд. Любое нажатие выполняет какую-то определенную команду.

В Vim есть четыре основных режима работы:

  1. Командный режим (обычный режим) — это режим по умолчанию. Перемещение по файлу, быстрое (при помощи команд, комбинаций клавиш) редактирование, удаление, поиск текста.
  2. Режим вставки (режим ввод) — ввод текста с клавиатуры. То, как вы привыкли это делать в обычных редакторах.
  3. Визуальный режим — выделение произвольных участков текста.
  4. Режим командной строки — собственная командная строка для редактора текста, из которой можно выполнять великое множество разнообразных команд.

Для перехода в режим вставки — нажать i.
Для перехода в режим команд — нажать ESC.

Как выйти с Vim? :-)
Для начала нужно перейти в режим команд.

  • :q! — Закрывает файл без сохранения изменений
  • :wq — Сохраняет и закрывает файл
  • :w — Просто сохраняет файл

Хороший гайд по Vim — https://guides.hexlet.io/vim/

Перенаправление потоков

В *nix системах есть такое понятие как потоки. В начале работы программы ОС связывает ее с тремя потоками: STDIN, STDOUT и STDERR.
Для всех приложений они выглядят как обычные файлы.
Что же делает каждый из них?
* STDIN — отвечает за ввод программы.
* STDOUT — отвечает за вывод программы.
* STDERR — отвечает за вывод ошибок.

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

ls -l > output.txt

На экране ничего не отобразится, но в текущей директории появится файл output со всем выводом команды ls -l. Данную операцию можно сделать с любой программой, которая что-либо выводит на экран. Но есть одна особенность данного оператора, он перезаписывает все данные в файле, для того чтобы дописать используйте >>.

echo Hello_World > output.txt
# Hello_World
echo Hello_World1 > output.txt
# Hello_World1
echo Hello_World2 >> output.txt
# Hello_World1
# Hello_World2

Также можно перенаправлять в другую сторону поток. Например у нас есть файл и мы ходим посмотреть сколько в нем строк. Для этого существует команда wc. Она принимает на вход текст, но с помощью оператора < мы можем передать в нее содержимое файла.

wc -l < result.txt
# 2432

Также можно как читать так и писать в файл:

wc -l < result.txt > output.txt

Пайплайн (Конвейер)

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

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

grep alias .bashrc | grep color

Алгоритм такой команды очень прост:

  1. Выбираем строки, которые содержат alias
  2. Потом в строчках, которые получили на выходе первой команды, ищем слово color

| — этот символ называется пайп, он указывает шелу взять STDOUT одного процесса и соединяет его с STDIN другого процесса. 

Также команду выше можно переписать на такую:

cat .bashrc | grep alias | grep color

Манипулирование файловой структурой

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

Команды:

  1. touch filename — изменяет время последнего доступа к файлу, если его нету — создает
  2. rm — удалить файл
    • -r  — удаляет папку
    • -f — не спрашивает подтверждение пользователя
  3. mv — переименовывает файл. В *nix системах не существует понятия «переименовать файл». Переименование всегда равносильно перемещению, которое выполняется командой mv.
  4. cp — копирует файл.
    • -r — позволяет скопировать директории
  5. mkdir — создание директории
    • -p — позволяет создать вложенные директории. mkdir /folder/subfolder

Переменные окружения

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

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

Для вывода переменной используется echo, а перед самой переменной ставится знак $.

echo $HOME

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

HOME=/var cd

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

export HOME=/var

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

История комнад

Для просмотра команд можно использовать клавиши вверх и вниз. Но все введенные команды хранятся в файле .bash_history, который лежит в домашней директории пользователя.

Посмотреть историю можно и более простым способом, достаточно выполнить команду history.

Последнее, и самое интересное — реверсивный поиск. Если нажать комбинацию Ctrl + r, то запустится специальный поиск по истории. Он ожидает ввода символов и сразу отображает ближайшую команду, в которой эти символы встречаются. Если найденное соответствие вас не устроило, то повторное нажатие Ctrl + r выберет следующее соответствие из истории.

Sudo

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

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

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

Пакетный менеджер

Пакетный менеджер служат для установки программ. В каждой операционной системе есть свой пакетный менеджер, но его надо устанавливать отдельно.

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

 Нет комментариев    34   6 мес   инструменты   курсы

Digital Ocean

Уже пол года использую Digital Ocean для хостинга собственных проектов и проектов моих заказчиков.

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

Управление виртуалкой
DO предоставляет удобный интерфейс для управления своей машиной. В нем можно создать бэкап и потом восстановить его. Управлять фаерволом, смотреть мониторинг системы.

Дополнительные фичи
За последние нескольких месяцев добавили возможность создавать свой Kubernetes кластер. Кроме этого зарелизили создание серверов БД (пока только PostgreSQL), что тоже существенно облегчает жизнь.

Самое приятное — ценовая политика.
Цены в Digital Ocean как по мне самые приятные. Всего за 5 долларов в месяц, можно получить виртуальную машину. Самый простой сервер БД обойдется в 15 долларов.

Оставлю здесь свою реферальную ссылку (получите 100$ на 60 дней для тестирования).

 Нет комментариев    17   6 мес   инструменты

Gudak camera

Гудак представляет из себя эмулятор пленочной камеры. Видоискатель, в который толком ничего не увидишь, 24 кадра в катушке. Когда использовал катушку, следующая появится только через час, а предыдущая отправляется на «проявку» и фотки будут доступны через 3 дня.

Также нету никаких пресетов, только рандомные эффекты.

Но результат получается действительно интересный:

 Нет комментариев    16   8 мес   инструменты   обзор

Мои инструменты

MacBook Pro

Самым главным инструментом в моем арсенале, конечно же, является MacBook Pro 13 2017 года без тачбара.
Я всегда буде его с собой, будь то путешествия или обычный поход на работу, при условии что у меня там есть полноценный рабочий компьютер. Радует то что у него очень хороший аккумулятор и можно пол, а то и целый день использовать.

iPhone XR

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

Софт для повседневного использования

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

  1. Things 3 — самый лучший, по моему мнению, менеджер задач с красивым дизайном и удобной реализацией методологии GTD.
  2. Instapaper — мой склад статей. Если вижу какую-то интересную статью, сразу кидаю ее в инбокс и когда есть возможность читаю.
  3. Дефолтные эпловские заметки — будь то идея или какая-то важная информация, всегда храню ее здесь. Есть удобная и быстрая синхронизация.
  4. Google Chrome — тут и добавить нечего, удобный и можно затюнить под себя с помощью разных расширений, таких как:
    1. One Tab — позволяет свернуть все активные вкладки в одну и по мере необходимости их открывать.
    2. Google Переводчик — всегда когда мне какое-то слово не понятно пользуюсь им. Моя любимая фича — выделить текст и сразу появляется небольшое окно с переводом слова. Не надо открывать вкладку и там переводить.
    3. JSONViewer — удобный просмотрщик JSON файлов прямо в браузере.

Профессиональный софт

  1. Rider от JetBrains — как по мне самая удобная IDE для кросс платформенной разработки, так как выглядит на всех платформах одинаково и имеет богатый функционал. В то время как VS на маке ни в какое сравнение не идет со старшым братом в виде VS под винду.
  2. Postman — красивый и функциональный клиент для тестирования API, можно писать тесты и потом запускать их с помощью Newman.
  3. iTerm на маке и ConEmu под виндой
  4. DBeaver — бесплатная и очень крутая IDE для различный БД.
  5. VS Code — очень быстрый и мощный редактор кода, который в связке с разными плагинами превращается в оружие массового поражения. Список плагинов:
    1. PowerShell — плагин, который дает возможность писать и отлаживать PowerShell скрипты, полностью заменил мне стандартную PowerShell ISE
    2. C# — добавляет поддержку C# кода.
    3. vscode-solution-explorer — позволяет полноценно работать с .sln файлами.
    4. Docker
    5. Bookmarks — закладки в коде, удобно когда возвращаешься к старому коду и сразу видишь отметки, которые когда-то оставил.
      6.** Sublime Merge **- GUI для гита.
  6. Reeder 3 — RSS читалка.
 Нет комментариев    40   8 мес   инструменты