Pull to refresh
-8
0
Send message

Простой прием для управления прокрастинацией

Reading time2 min
Views84K
Попробую поделиться советом, как можно немного осознать свое состояние и выработать полезный навык. Все написанное основано только на личном опыте, желании им поделится и почерпнуть из обратной связи полезное.
Читать дальше →
Total votes 90: ↑87 and ↓3+111
Comments165

Мой опыт эффективной удалённой работы

Reading time7 min
Views46K
Мой друг, у которого уже много лет опыта удалённой работы, давно подначивал меня поехать на пару зимних месяцев в Таиланд поработать удалённо, а я в свою очередь каждый раз находил одну из сотен надуманных причин, и отказывался:

  • это дорого, я потрачу все деньги;
  • я там упаду с мопеда, меня укусит крокодил-змея-комар, я заболею и умру;
  • я там не смогу работать, всё будет отвлекать;
  • меня уволят из-за того, что будут думать, что я ничего не делаю;
  • меня не отпустит менеджмент.

Список можно продолжать бесконечно. Прекрасно это понимая, я составил противоположный список с позитивными утверждениями и принял железное решение: я поеду, даже если мне придётся сменить работу и продать машину.

После этого, я тут же пошёл пообщался со своим менеджментом насчёт перехода на постоянную удалённую работу и к моему удивлению меня отпустили для начала поработать из дома в Киеве. А затем — насовсем.

Так я стал удалённым сотрудником, работающим с января по апрель из Таиланда.

image
Если вы думаете, что удалённая работа это вот так — смею вас разочаровать. Так не будет.
Как минимум нужно будет включить компьютер.
Читать дальше →
Total votes 40: ↑39 and ↓1+51
Comments96

Изучаем С используя GDB

Reading time6 min
Views107K
Перевод статьи Аллана О’Доннелла Learning C with GDB.

Исходя из особенностей таких высокоуровневых языков, как Ruby, Scheme или Haskell, изучение C может быть сложной задачей. В придачу к преодолению таких низкоуровневых особенностей C, как ручное управление памятью и указатели, вы еще должны обходиться без REPL. Как только Вы привыкнете к исследовательскому программированию в REPL, иметь дело с циклом написал-скомпилировал-запустил будет для Вас небольшим разочарованием.

Недавно мне пришло в голову, что я мог бы использовать GDB как псевдо-REPL для C. Я поэкспериментировал, используя GDB как инструмент для изучения языка, а не просто для отладки, и оказалось, что это очень весело.
Читать дальше →
Total votes 70: ↑66 and ↓4+62
Comments30

Механизмы выделения памяти в Go

Reading time11 min
Views39K
Когда я впервые попытался понять то, как работают средства выделения памяти в Go, то, с чем я хотел разобраться, показалось мне таинственным чёрным ящиком. Как и в случае с любыми другими технологиями, самое важное здесь скрывается за множеством слоёв абстракций, сквозь которые нужно пробраться для того, чтобы что-то понять.



Автор материала, перевод которого мы публикуем, решил добраться до сути средств выделения памяти в Go и рассказать об этом.
Читать дальше →
Total votes 42: ↑36 and ↓6+30
Comments2

Что новенького в нашей документации по .NET (за декабрь 2019)

Reading time1 min
Views3.9K
Добро пожаловать в «Что новенького в нашей документации по .NET (за декабрь 2019)». Ниже перечислены некоторые из недавно опубликованных нами документов. Узнайте больше в полной статье ниже.

.NET Core


Новые статьи



Читать дальше →
Total votes 7: ↑6 and ↓1+8
Comments7

Введение в GitHub Actions

Reading time2 min
Views17K
В этой статье Senior App Dev Manager Джейсон Джордано (Jason Giordano) покажет нам, как использовать GitHub Actions для создания очень простого CI/CD решения.

GitHub Actions, релиз которого состоялся 13 ноября 2019 года, позволяет легко автоматизировать все ваши рабочие процессы в области программного обеспечения. Вы можете ознакомиться с подробностями здесь.



Также рекомендую ознакомиться с данной документацией перед тем, как решите расширить свое решение.
Читать дальше →
Total votes 13: ↑9 and ↓4+8
Comments4

Ловим утечки памяти в С/С++

Reading time8 min
Views64K


Приветствую вас, Хабровчане!


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


На Хабре уже существует две статьи, а именно: Боремся с утечками памяти (C++ CRT) и Утечки памяти в С++: Visual Leak Detector. Однако я считаю, что они недостаточно раскрыты, или данные способы могут не дать нужного вам результата, поэтому я хотел бы по возможности разобрать всем доступные способы, дабы облегчить вам жизнь.

Читать дальше →
Total votes 15: ↑13 and ↓2+17
Comments12

10 практических рекомендаций по безопасности образов Docker. Часть 1

Reading time5 min
Views11K
Перевод статьи подготовлен специально для студентов курса «Безопасность Linux».




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

Итак, начнем с нашего списка из 10 практических рекомендаций по безопасности образов Docker.
Читать дальше →
Total votes 12: ↑12 and ↓0+12
Comments14

1.Elastic stack: анализ security логов. Введение

Reading time4 min
Views44K


В связи окончанием продаж в России системы логирования и аналитики Splunk, возник вопрос, чем это решение можно заменить? Потратив время на ознакомление с разными решениями, я остановился на решении для настоящего мужика — «ELK stack». Эта система требует времени на ее настройку, но в результате можно получить очень мощную систему по анализу состояния и оперативного реагирования на инциденты информационной безопасности в организации. В этом цикле статей мы рассмотрим базовые (а может и нет) возможности стека ELK, рассмотрим каким образом можно парсить логи, как строить графики и дашбоарды, и какие интересные функции можно сделать на примере логов с межсетевого экрана Check Point или сканера безопасности OpenVas. Для начала, рассмотрим, что же это такое — стек ELK, и из каких компонентов состоит.
Читать дальше →
Total votes 12: ↑9 and ↓3+10
Comments4

Пишем Grafana reverse proxy на Go

Reading time5 min
Views11K


Очень хотелось назвать статью «Proxy-сервис на Go в 3 строчки», но я выше этого.


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


proxy := httputil.NewSingleHostReverseProxy(url)
r.Header.Set(header, value)
proxy.ServeHTTP(w, r)

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


Разберём, для чего нужен прокси-сервис, как его реализовать и что под капотом у стандартной библиотеки.

Читать дальше →
Total votes 20: ↑18 and ↓2+18
Comments5

Как добавить кодек в FFmpeg

Level of difficultyMedium
Reading time17 min
Views11K



FFmpeg — это грандиозный Open Source проект, своего рода мультимедийная энциклопедия. С помощью FFmpeg можно решить огромное число задач компьютерного мультимедиа. Но все-таки иногда возникает необходимость в расширении FFmpeg. Стандартный способ — это внесение изменений в код проекта с последующей компиляцией новой версии. В статье подробно рассмотрено, как добавить новый кодек. Также рассмотрены некоторые возможности для подключения к FFmpeg внешних функций. Если нет необходимости добавлять кодек, то статья может оказаться полезной для лучшего понимания архитектуры кодеков FFmpeg и их настройки. Предполагается, что читатель знаком с архитектурой FFmpeg, процессом компиляции FFmpeg, а также имеет опыт программирования с использованием FFmpeg API. Описание актуально для FFmpeg 4.2 «Ada», август 2019.


Читать дальше →
Total votes 18: ↑18 and ↓0+18
Comments4

Пользователи и авторизация RBAC в Kubernetes

Reading time15 min
Views36K
Прим. перев.: Продолжая недавно затронутую нами тему безопасности Kubernetes в целом и RBAC — в частности, публикуем перевод этого материала от французского консультанта из международной компании Big Data-компании Adaltas. Автор в деталях показывает, как создавать пользователей, наделять их правами и в дальнейшем обслуживать.

Настройка и запуск кластера Kubernetes – это только начало: ведь его необходимо еще и эксплуатировать. Чтобы обезопасить доступ к кластеру, нужно задать идентификационные данные пользователей и грамотно управлять настройками аутентификации и авторизации.

(Иллюстрация взята из блога CNCF — прим. перев.)

Эта статья посвящена тому, как создавать пользователей, используя клиентские сертификаты X.509, и как управлять авторизацией с помощью базовых API-объектов RBAC в Kubernetes. Мы также поговорим о некоторых открытых проектах, упрощающих администрирование кластера: rakkess, kubectl-who-can, rbac-lookup и RBAC Manager.
Читать дальше →
Total votes 42: ↑41 and ↓1+40
Comments0

Азбука безопасности в Kubernetes: аутентификация, авторизация, аудит

Reading time12 min
Views23K


Рано или поздно в эксплуатации любой системы встаёт вопрос безопасности: обеспечения аутентификации, разделения прав, аудита и других задач. Для Kubernetes уже создано множество решений, которые позволяют добиться соответствия стандартам даже в весьма требовательных окружениях… Этот же материал посвящён базовым аспектам безопасности, реализованным в рамках встроенных механизмов K8s. В первую очередь он будет полезен тем, кто начинает знакомиться с Kubernetes, — как отправная точка для изучения вопросов, связанных с безопасностью.
Читать дальше →
Total votes 33: ↑32 and ↓1+31
Comments8

Как наладить социальные отношения в удалённо работающем коллективе

Reading time7 min
Views7.6K


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

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

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

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

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

Переведено в Alconost
Читать дальше →
Total votes 4: ↑3 and ↓1+5
Comments3

Работа не волк, часть 4. Опытный сотрудник: как не перегореть и не сдаться

Reading time12 min
Views31K
Итак, первый год работы прошёл, и вы стали дедом матёрым волком, который растёт вместе с компанией, сечёт в бизнес-процессах и довольно борзо спорит с руководством. Кажется, что может случиться? Но чем больше срок работы на одном месте, тем больше моральных и профессиональных ловушек вас подстерегают. Приходит рефлексия, стремление понять своё место в команде, что-то изменить, что-то создать и как-то измениться самому. Через эти кризисы проходит каждый, поэтому о них нужно знать и быть к ним готовыми. Пятница — время поговорить о счастье в труде.


Часть 1. Поиск работы: источники, резюме, собеседование с HR
Часть 2. Устройство и адаптация: собеседуем с боссом, проходим испытательный срок с ветерком
Часть 3. Работа в роли новичка: рост в компании
Часть 4. Работа в роли опытного сотрудника: как не перегореть
Часть 5. Увольнение: я ухожу красиво
Читать дальше →
Total votes 26: ↑24 and ↓2+41
Comments3

Профилирование кода Go-проекта и решение проблемы с выделением памяти

Reading time7 min
Views6.9K
Пожалуй, каждому программисту известны слова Кента Бека: «Make it work, make it right, make it fast». Сначала надо сделать так, чтобы программа работала, дальше — надо заставить её работать правильно, а уже потом можно переходить к оптимизации. 



Автор статьи, перевод которой мы публикуем, говорит, что недавно он решил заняться профилированием своего опенсорсного Go-проекта Flipt. Он хотел найти в проекте код, который можно было бы без особых усилий оптимизировать и тем самым ускорить программу. В ходе профилирования он обнаружил некоторые неожиданные проблемы в популярном проекте с открытым исходным кодом, который в приложении Flipt использовался для организации маршрутизации и поддержки промежуточного ПО. В итоге удалось снизить объём памяти, выделяемой приложением в процессе работы, в 100 раз. Это, в свою очередь, привело к уменьшению количества операций по сборке мусора и улучшило общую производительность проекта. Вот как это было.
Читать дальше →
Total votes 42: ↑38 and ↓4+34
Comments0

10 лет на удаленке и что из этого вышло

Reading time12 min
Views96K

Содержание


1. Первая работа
2. Первый экономический кризис и первая удаленка
3. Год за два
4. Покоряем Москву, не выходя из дома в провинции
5. Второй (валютный) экономический кризис
6. А в это время в России
7. А что сейчас?
8. Выводы/Плюсы/Минусы
9. ЧаВО
Читать дальше →
Total votes 131: ↑120 and ↓11+109
Comments90

Выявляем процессы с дисковой активностью в Linux

Reading time13 min
Views78K
TL;DR: статья рассказывает об удобном, быстром и надежном способе определения Linux-программ, записывающих данные на диск, что помогает в выявлении большой или аномально частой нагрузки на дисковую подсистему, а также позволяет оценить накладные расходы файловой системы. Это особенно актуально для SSD в ПК, EMMC и Flash-памяти в одноплатных компьютерах.
В ходе написания статьи обнаружилось, что запись нескольких килобайт данных на файловую систему BTRFS приводит к записи 3 мегабайт реальных данных на диск.

Введение

«Ой, ерунда, ячейки памяти на современных SSD выйдут из строя через десятки лет обычного использования, не стоит об этом беспокоиться, и уж тем более переносить swap, виртуальные машины и папку профиля браузера на HDD» — типичный ответ на вопрос о надежности твердотельных накопителей c гарантированными ≈150 TBW. Если прикинуть, сколько типичное ПО может писать данных, то кажется, что 10-20 ГБ в сутки — уже большая цифра, пусть будет максимум 40 ГБ, куда уж больше. При таких цифрах ответ вполне разумен — нужно 10 лет, чтобы достичь гарантированных значений по количеству перезаписи ячеек, при 40 ГБ записанных данных ежедневно.
Однако за 6 лет я пользуюсь уже третьим SSD: у первого вышел из строя контроллер, а второй начал перемещать данные между ячейками несколько раз в день, что оборачивалось 30-секундными задержками в обслуживании записи.

После 7 месяцев использования нового SSD я решил проверить количество записанных данных, как их сообщает сам диск через SMART.
19.7 ТБ.
Всего за 7 месяцев я использовал 13% от гарантированного количества записанных данных, притом, что он настроен в соответствии с рекомендациями по выравниваю разделов и настройке ФС, swap у меня почти не используется, диски виртуальных машин размещены на HDD!
Читать дальше →
Total votes 119: ↑117 and ↓2+115
Comments90

Пишем на Go простой балансировщик

Reading time8 min
Views26K

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

Поигравшись с профессиональными балансировщиками наподобие NGINX, я попробовал ради веселья создать простенький балансировщик. Написал я его на Go, это современный язык, поддерживающий полноценный параллелизм. Стандартная библиотека в Go имеет широкие возможности и позволяет писать высокопроизводительные приложения с меньшим количеством кода. К тому же для простоты распространения она генерирует единственный статически скомпонованный бинарник.
Читать дальше →
Total votes 79: ↑73 and ↓6+67
Comments32

Habr Weekly #27 / Хромбуки vs макбуки, как писать крутые резюме, какую зарплату просить, AR-очки за $3500

Reading time3 min
Views5K
Total votes 13: ↑12 and ↓1+11
Comments2

Information

Rating
Does not participate
Registered
Activity