📚 Crafting Interpreters
Автор: Robert Nystrom (2021)
Несмотря на то, что большинство разработчиков используют разные языки программирования каждый день, они мало что знают о том, как эти самые ЯП разрабатываются и внедряются.
Для многих единственным знакомством с этим разделом информатики был ужасающий курс «Компиляторы», который они пережили в бакалавриате и постарались вычеркнуть из памяти, как только написали на выпускном экзамене последнее преобразование из NFA в DFA.
Для кого книга?
— Для тех, кто хоть раз думал: «А что, если бы у JavaScript был нормальный синтаксис?»
— Для любителей страдать над AST ночью
— Для тех, кто хочет реально понимать, как работает язык, а не просто на нём писать
👉 @bfbook
Автор: Robert Nystrom (2021)
Несмотря на то, что большинство разработчиков используют разные языки программирования каждый день, они мало что знают о том, как эти самые ЯП разрабатываются и внедряются.
Для многих единственным знакомством с этим разделом информатики был ужасающий курс «Компиляторы», который они пережили в бакалавриате и постарались вычеркнуть из памяти, как только написали на выпускном экзамене последнее преобразование из NFA в DFA.
Для кого книга?
— Для тех, кто хоть раз думал: «А что, если бы у JavaScript был нормальный синтаксис?»
— Для любителей страдать над AST ночью
— Для тех, кто хочет реально понимать, как работает язык, а не просто на нём писать
👉 @bfbook
👍6❤4😁1💩1
Книги для программистов pinned «Друзья, наш канал в max https://max.ru/bfbook Подписывайтесь!»
📚 Pragmatic Thinking and Learning: Refactor Your Wetware
Автор: Andy Hunt (2008)
Знаешь, как ты постоянно рефакторишь код, улучшая его? Так вот, пришло время для самого важного рефакторинга — твоего мозга.
С помощью книги от Эндрю Ханта ты научишься делать свой мозг лучшим инструментом для освоения технологий (и не только). Оказывается, мозг можно обучать с таким же подходом, как и программирование 🎯
Что тебя ждет:
-Как стать мастером в освоении новых навыков, а не застревать на уровне «сделал бы X, но не могу найти мотивацию»
-Откроешь секреты нейробиологии, которые помогут не забывать пароли через 5 минут
-Поймешь, как лучше учиться, чтобы в следующий раз не застрять на баге, который только что починил, и не потерять час на его поиск
Мы в MAX
👉 @bfbook
Автор: Andy Hunt (2008)
Знаешь, как ты постоянно рефакторишь код, улучшая его? Так вот, пришло время для самого важного рефакторинга — твоего мозга.
С помощью книги от Эндрю Ханта ты научишься делать свой мозг лучшим инструментом для освоения технологий (и не только). Оказывается, мозг можно обучать с таким же подходом, как и программирование 🎯
Что тебя ждет:
-Как стать мастером в освоении новых навыков, а не застревать на уровне «сделал бы X, но не могу найти мотивацию»
-Откроешь секреты нейробиологии, которые помогут не забывать пароли через 5 минут
-Поймешь, как лучше учиться, чтобы в следующий раз не застрять на баге, который только что починил, и не потерять час на его поиск
Мы в MAX
👉 @bfbook
👍9❤1🤡1
Forwarded from Системный Администратор Windows
👋 Всем админам доброго вечера!
Продолжаю тему теневых копий в Windows - на этот раз чисто PowerShell-практика. Теневые копии (VSS) не раз спасали меня, когда нужно быстро вернуть удалённый файл без полноценного восстановления из бэкапа. Ниже - мой минималистичный «набор выживальщика»: создать снапшот, смонтировать, вытащить файл, почистить и настроить расписание.
🚀 Базовые операции VSS через PowerShell
Создать теневую копию тома C:
Список доступных теневых копий:
Смонтировать самую свежую копию в папку (удобно лазить по снапшоту проводником):
Вытянуть конкретный файл из последней копии (без монтирования):
Удалить конкретную теневую копию:
🧠 Управление хранилищем теневых копий
Проверить и ограничить размер:
👉 Если места мало - VSS начнёт сносить самые старые копии. Планируйте «MaxSize».
⏰ Планирование ежедневного снапшота (02:00)
🔒 Безопасность и мониторинг
- Рансомварь любит грохать VSS: ищите команды вроде
Логи: включите аудит создания процессов (Sysmon Event ID 1) и подпишите правила под эти утилиты и ключевые слова в командной строке.
- Ограничьте утилиты: на рабочих станциях, где VSS админам не нужен — AppLocker/WDAC для
- Журналы VSS: заглядывайте в Application и Microsoft-Windows-Volume Shadow Copy/Operational при сбоях провайдера.
🧩 Типичные затыки и лайфхаки
- Доступа нет к путям снапшота — добавляйте
- Недостаточно места — расширьте
- Нужны «предыдущие версии» для пользователей - ставьте
👉 @win_sysadmin
Продолжаю тему теневых копий в Windows - на этот раз чисто PowerShell-практика. Теневые копии (VSS) не раз спасали меня, когда нужно быстро вернуть удалённый файл без полноценного восстановления из бэкапа. Ниже - мой минималистичный «набор выживальщика»: создать снапшот, смонтировать, вытащить файл, почистить и настроить расписание.
🚀 Базовые операции VSS через PowerShell
Создать теневую копию тома C:
# PS 5.1/7+ (через CIM)
Invoke-CimMethod -ClassName Win32_ShadowCopy -MethodName Create `
-Arguments @{ Volume = 'C:\'; Context = 'ClientAccessible' } | Out-Null
Список доступных теневых копий:
Get-CimInstance Win32_ShadowCopy |
Sort-Object InstallDate -Descending |
Format-Table ID, VolumeName, InstallDate, ClientAccessible, DeviceObject -Auto
Смонтировать самую свежую копию в папку (удобно лазить по снапшоту проводником):
$sh = Get-CimInstance Win32_ShadowCopy | Sort-Object InstallDate -Desc | Select-Object -First 1
$mount = 'C:\ShadowMounts\C_latest'
New-Item -ItemType Directory -Path $mount -Force | Out-Null
$dev = ($sh.DeviceObject.TrimEnd('\')) + '\'
cmd /c "mklink /d `"$mount`" `"$dev`""
# Готово: открывайте C:\ShadowMounts\C_latest
Вытянуть конкретный файл из последней копии (без монтирования):
$path = 'C:\Data\report.xlsx' # что хотим вернуть
$sh = Get-CimInstance Win32_ShadowCopy | Sort-Object InstallDate -Desc | Select-Object -First 1
$rel = $path -replace '^[A-Za-z]:\\','' # убрать "C:\"
$src = Join-Path ( ($sh.DeviceObject.TrimEnd('\')) + '\' ) $rel
Copy-Item $src $path -Force
Удалить конкретную теневую копию:
$sh | Remove-CimInstance
🧠 Управление хранилищем теневых копий
Проверить и ограничить размер:
vssadmin list shadowstorage
vssadmin resize shadowstorage /For=C: /On=C: /MaxSize=20%
👉 Если места мало - VSS начнёт сносить самые старые копии. Планируйте «MaxSize».
⏰ Планирование ежедневного снапшота (02:00)
$cmd = 'powershell.exe'
$arg = '-NoProfile -WindowStyle Hidden -Command "Invoke-CimMethod -ClassName Win32_ShadowCopy -MethodName Create -Arguments @{Volume=''C:\'';Context=''ClientAccessible''} | Out-Null"'
$action = New-ScheduledTaskAction -Execute $cmd -Argument $arg
$trigger = New-ScheduledTaskTrigger -Daily -At 02:00
Register-ScheduledTask -TaskName 'Daily-VSS-C' -Action $action -Trigger $trigger -RunLevel Highest
На серверах с PowerShell 7 можно заменитьpowershell.exeнаpwsh.exe.
🔒 Безопасность и мониторинг
- Рансомварь любит грохать VSS: ищите команды вроде
vssadmin delete shadows /all /quiet, wmic shadowcopy delete, diskshadow.exe.Логи: включите аудит создания процессов (Sysmon Event ID 1) и подпишите правила под эти утилиты и ключевые слова в командной строке.
- Ограничьте утилиты: на рабочих станциях, где VSS админам не нужен — AppLocker/WDAC для
vssadmin.exe, wmic.exe, diskshadow.exe.- Журналы VSS: заглядывайте в Application и Microsoft-Windows-Volume Shadow Copy/Operational при сбоях провайдера.
🧩 Типичные затыки и лайфхаки
- Доступа нет к путям снапшота — добавляйте
\\?\GLOBALROOT\Device\HarddiskVolumeShadowCopyN\ в исключения антивируса на время операций.- Недостаточно места — расширьте
shadowstorage или поменяйте диск-хранилище: /For=C: /On=D:.- Нужны «предыдущие версии» для пользователей - ставьте
Context='ClientAccessible' (или ClientAccessibleWriters для VSS-aware приложений).👉 @win_sysadmin
👍5❤4👎1
📚The Object-Oriented Thought Process, Fourth Edition
Автор: Matt Weisfeild (2013)
Устал писать процедуры, которые ведут себя как токсичные отношения — всё завязано на всём, а конец всегда один? Пора перейти на ООП — там хотя бы наследуется не травма, а поведение.
В этой книге:
- Почему «начни с Java» — плохой совет, если ты не знаешь, что такое инкапсуляция
- Чем интерфейс отличается от реализации
- И почему композиция — это как LEGO, а не как склеивание суперклеем,
- И как всё это внезапно работает даже в мобильных приложениях и JSON
Автор объясняет ООП без UML-ударов по голове и с упором на здравый смысл. Подойдёт тем, кто хочет понять, зачем всё это, прежде чем выбрать себе язык по душе (и зарплате).
Мы в MAX
👉 @bfbook
Автор: Matt Weisfeild (2013)
Устал писать процедуры, которые ведут себя как токсичные отношения — всё завязано на всём, а конец всегда один? Пора перейти на ООП — там хотя бы наследуется не травма, а поведение.
В этой книге:
- Почему «начни с Java» — плохой совет, если ты не знаешь, что такое инкапсуляция
- Чем интерфейс отличается от реализации
- И почему композиция — это как LEGO, а не как склеивание суперклеем,
- И как всё это внезапно работает даже в мобильных приложениях и JSON
Автор объясняет ООП без UML-ударов по голове и с упором на здравый смысл. Подойдёт тем, кто хочет понять, зачем всё это, прежде чем выбрать себе язык по душе (и зарплате).
Мы в MAX
👉 @bfbook
👍4❤2👎1
Forwarded from 1C программист
Media is too big
VIEW IN TELEGRAM
Заполнение реквизитов контрагента по ИНН в 1С
Из этого видео вы узнаете Как заполнить реквизиты контрагента по ИНН в 1С.
При работе в 1С пользователи регулярно создают новых контрагентов. Процесс заполнения реквизитов контрагента вручную может занимать много времени. Сегодня мы покажем вам как можно ускорить заполнение контрагента в 1С, используя только ИНН и данные ЕГРЮЛ (Единого Государственного Реестра Юридических Лиц).
источник
Мы в MAX
✍️ @odin1C_rus
Из этого видео вы узнаете Как заполнить реквизиты контрагента по ИНН в 1С.
При работе в 1С пользователи регулярно создают новых контрагентов. Процесс заполнения реквизитов контрагента вручную может занимать много времени. Сегодня мы покажем вам как можно ускорить заполнение контрагента в 1С, используя только ИНН и данные ЕГРЮЛ (Единого Государственного Реестра Юридических Лиц).
// <Описание функции>
//
// Параметры:
// ИНН - Тип.Строка - Строка с ИНН
// <продолжение описания параметра>
//
// Возвращаемое значение:
// <Тип.Структура> - Структура сожержит
// *ВидКонтрагента
// *КПП
// *РегистрационныйНомер
// *Наименование
// *НаименованиеПолное
// Если организация не является ИП *ЮредическийАдрес
//
// Сайт API
// https://egrul.itsoft.ru/
&НаСервереБезКонтекста
Функция ЗК_ПолучитьДанныеКонтрагентаПоИНН(ИНН)
ДанныеКонтрагента = Новый Структура;
ДанныеКонтрагента.Вставить("ИНН", ИНН);
АдресСервера = "egrul.itsoft.ru";
АдресРесурса = "/short_data/?" + ИНН;
Соеденения = Новый HTTPСоединение(АдресСервера,,,,, 30, Новый ЗащищенноеСоединениеOpenSSL);
Запрос = Новый HTTPЗапрос(АдресРесурса);
Попытка
Ответ = Соеденения.Получить(Запрос);
Исключение
Сообщить("Не удалось получить данные по ИНН по причине: " + ОписаниеОшибки());
Возврат ДанныеКонтрагента;
КонецПопытки;
ДанныеЕГРБЛ = Неопределено;
Если Ответ.КодСостояния = 200 Тогда
СтрокаJSON = Ответ.ПолучитьТелоКакСтроку();
ЧтениеJSON = Новый ЧтениеJSON;
ЧтениеJSON.УстановитьСтроку(СтрокаJSON);
ДанныеЕГРБЛ = ПрочитатьJSON(ЧтениеJSON, Истина);
Иначе
Текст = СтрШаблон("Не удалось получать данные по ИНН...
|Код состояния: %1
|Ответ сервера: %2", Ответ.КодСостояния, СтрокаJSON);
Сообщить(Текст);
Возврат ДанныеКонтрагента;
КонецЕсли;
Если ДанныеЕГРБЛ["short_form"] <> Неопределено И ДанныеЕГРБЛ["short_form"] = "ИП" Тогда
ВидКонтрагента = Перечисления.ВидыКонтрагентовСПАРКРиски.ИндивидуальныйПредприниматель;
Иначе
ВидКонтрагента = Перечисления.ВидыКонтрагентовСПАРКРиски.ЮридическоеЛицо;
КонецЕсли;
ДанныеКонтрагента.Вставить("ВидКонтрагента" , ВидКонтрагента);
ДанныеКонтрагента.Вставить("КПП" , ДанныеЕГРБЛ["kpp"]);
ДанныеКонтрагента.Вставить("РегистрационныйНомер", ДанныеЕГРБЛ["ogrn"]);
ДанныеКонтрагента.Вставить("Наименование" , ДанныеЕГРБЛ["short_name"]);
ДанныеКонтрагента.Вставить("НаименованиеПолное" , ДанныеЕГРБЛ["full_name"]);
Если ДанныеЕГРБЛ["address"] <> Неопределено Тогда
ДанныеКонтрагента.Вставить("ЮредическийАдрес", ДанныеЕГРБЛ["address"]);
КонецЕсли;
Возврат ДанныеКонтрагента;
КонецФункции // ЗК_ПолучитьДанныеКонтрагентаПоИНН()
источник
Мы в MAX
✍️ @odin1C_rus
💩18❤5👍5😁3🤡1🤨1
📌6 книг по MySQL для старта работы и погружения в технологию
MySQL — реляционная СУБД, использующая декларативный язык программирования SQL. Она предлагает все необходимые возможности для создания баз данных и написания серверных приложений.
В нашей подборке — 6 книг по MySQL, которые будут полезны как на старте, так и для развития навыков. Рекомендуйте свои книги в комментариях!
🔹«PHP и MySQL. 25 уроков для начинающих» — В. Дронов
Для кого: Наглядное визуальное оформление и поэтапное руководство подойдет для старта в MySQL. После изучения книги «PHP и MySQL. 25 уроков для начинающих» вы сможете создать веб-сайт с «привязанной» к нему базой данных.
🔹«MySQL. Сборник рецептов» — Поль Дюбуа
Для кого: Первое и второе издание подойдут начинающим разработчикам, поскольку написаны для старой версии 4.0. После прочтения вы поймете основные принципы работы MySQL. Для программистов, свободно владеющих английским языком, можно посоветовать третью редакцию книги, в которой разбирается MySQL 5.6.
🔹«MySQL 8 для больших данных» — Ш. Чаллавала, Д. Лакхатария, Ч. Мехта, К. Патель
Для кого: Книга будет полезна для администраторов баз данных MySQL и специалистов Big Data, работающих с MySQL и Hadoop. Перед прочтением нужен хотя бы небольшой опыт работы с данной СУБД. После вы будете знать, как эффективно использовать MySQL 8 для управления Big Data.
🔹«MySQL по максимуму» — Б. Шварц, В. Ткаченко, П. Зайцев
Для кого: «MySQL по максимуму» рекомендуется новичкам и опытным разработчикам, которые хотели бы увеличить производительность своих приложений на базе MySQL.
🔹«Murach’s MySQL 3rd Edition» — Джоэл Мурах
Для кого: Книга будет полезна разработчикам приложений для повышения эффективности SQL-запросов и администраторам баз данных. После прочтения вы будете готовы к более продвинутым книгам по теме. Для изучения не нужно иметь знаний в области программирования. Однако вы быстрее освоите материал, если у вас есть некоторый опыт разработки.
🔹«Murach’s PHP and MySQL 4th Edition» — Джоэл Мурах и Рэй Харрис
Для кого: Книга полезна не только разработчикам приложений и администраторам баз данных, но и веб-разработчикам. Единственное необходимое условие для изучения книги — наличие элементарных навыков работы с HTML и CSS.
Мы в MAX
👉 @bfbook
MySQL — реляционная СУБД, использующая декларативный язык программирования SQL. Она предлагает все необходимые возможности для создания баз данных и написания серверных приложений.
В нашей подборке — 6 книг по MySQL, которые будут полезны как на старте, так и для развития навыков. Рекомендуйте свои книги в комментариях!
🔹«PHP и MySQL. 25 уроков для начинающих» — В. Дронов
Для кого: Наглядное визуальное оформление и поэтапное руководство подойдет для старта в MySQL. После изучения книги «PHP и MySQL. 25 уроков для начинающих» вы сможете создать веб-сайт с «привязанной» к нему базой данных.
🔹«MySQL. Сборник рецептов» — Поль Дюбуа
Для кого: Первое и второе издание подойдут начинающим разработчикам, поскольку написаны для старой версии 4.0. После прочтения вы поймете основные принципы работы MySQL. Для программистов, свободно владеющих английским языком, можно посоветовать третью редакцию книги, в которой разбирается MySQL 5.6.
🔹«MySQL 8 для больших данных» — Ш. Чаллавала, Д. Лакхатария, Ч. Мехта, К. Патель
Для кого: Книга будет полезна для администраторов баз данных MySQL и специалистов Big Data, работающих с MySQL и Hadoop. Перед прочтением нужен хотя бы небольшой опыт работы с данной СУБД. После вы будете знать, как эффективно использовать MySQL 8 для управления Big Data.
🔹«MySQL по максимуму» — Б. Шварц, В. Ткаченко, П. Зайцев
Для кого: «MySQL по максимуму» рекомендуется новичкам и опытным разработчикам, которые хотели бы увеличить производительность своих приложений на базе MySQL.
🔹«Murach’s MySQL 3rd Edition» — Джоэл Мурах
Для кого: Книга будет полезна разработчикам приложений для повышения эффективности SQL-запросов и администраторам баз данных. После прочтения вы будете готовы к более продвинутым книгам по теме. Для изучения не нужно иметь знаний в области программирования. Однако вы быстрее освоите материал, если у вас есть некоторый опыт разработки.
🔹«Murach’s PHP and MySQL 4th Edition» — Джоэл Мурах и Рэй Харрис
Для кого: Книга полезна не только разработчикам приложений и администраторам баз данных, но и веб-разработчикам. Единственное необходимое условие для изучения книги — наличие элементарных навыков работы с HTML и CSS.
Мы в MAX
👉 @bfbook
❤7💩5👍3
📚 The DevOps Handbook: How to Create World-Class Agility, Reliability, & Security in Technology Organizations, 2nd Edition
Авторы: Gene Kim, Jez Humble, Patrick Debois, John Willis, Nicole Forsgren (2021)
Готов поднять знания в DevOps на новый уровень? Тогда хватай обновленную версию The DevOps Handbook, где помимо классики, вас ждут 15 новых кейсов от гигантов вроде Adidas, Target и даже US Air Force.
Вот что ждет внутри:
- 100+ страниц свежего контента и материалов
- Обновления от Nicole Forsgren, исследовательницы, которая делает DevOps еще более умным и эффективным
- Рекомендации по внедрению DevOps в каждую часть бизнеса, а не только в IT
Если ты думал, что DevOps только для кодеров — забудь! Это теперь про весь бизнес. От IT до HR — все могут использовать эти принципы для создания устойчивых и быстрых процессов.
Мы в MAX
👉 @bfbook
Авторы: Gene Kim, Jez Humble, Patrick Debois, John Willis, Nicole Forsgren (2021)
Готов поднять знания в DevOps на новый уровень? Тогда хватай обновленную версию The DevOps Handbook, где помимо классики, вас ждут 15 новых кейсов от гигантов вроде Adidas, Target и даже US Air Force.
Вот что ждет внутри:
- 100+ страниц свежего контента и материалов
- Обновления от Nicole Forsgren, исследовательницы, которая делает DevOps еще более умным и эффективным
- Рекомендации по внедрению DevOps в каждую часть бизнеса, а не только в IT
Если ты думал, что DevOps только для кодеров — забудь! Это теперь про весь бизнес. От IT до HR — все могут использовать эти принципы для создания устойчивых и быстрых процессов.
Мы в MAX
👉 @bfbook
👍3❤1
Forwarded from Библиотека C/C++ разработчика
This media is not supported in your browser
VIEW IN TELEGRAM
QML и Widgets в одном проекте: решение без костылей
Разработка приложения для настольных или встраиваемых платформ часто упирается в выбор между Qt Widgets и Qt Quick для создания интерфейса. У каждого подхода свои плюсы и минусы. Qt как гибкий фреймворк позволяет комбинировать их разными способами, а выбор способа интеграции этих API зависит от того, чего вы хотите добиться. В этой статье я покажу, как отображать окна Qt Widgets в приложении, написанном преимущественно на Qt Quick.
https://www.kdab.com/display-widget-windows-in-qt-quick-applications/
Мы в MAX
#cpp #programming
👉 @cpp_lib
Разработка приложения для настольных или встраиваемых платформ часто упирается в выбор между Qt Widgets и Qt Quick для создания интерфейса. У каждого подхода свои плюсы и минусы. Qt как гибкий фреймворк позволяет комбинировать их разными способами, а выбор способа интеграции этих API зависит от того, чего вы хотите добиться. В этой статье я покажу, как отображать окна Qt Widgets в приложении, написанном преимущественно на Qt Quick.
https://www.kdab.com/display-widget-windows-in-qt-quick-applications/
Мы в MAX
#cpp #programming
👉 @cpp_lib
❤2👍2
DevOps Unleashed with Git and GitHub: Automate, collaborate, and innovate to enhance your DevOps workflow and development experience
Автор: Yuki Hakatori (2024)
Книга начинается с изучения основ Git и углубления в DevOps и опыт разработчиков. По мере продвижения вы поймете, как использовать возможности GitHub для совместной работы и автоматизации, и даже сможете воспользоваться GitHub Copilot для повышения производительности. Вы также узнаете, как преодолеть разрыв в DevOps, поддерживать качество кода и применять надежные меры безопасности. Кроме того, практические занятия позволят вам повысить качество работы разработчиков, укрепить командную работу и внедрять инновации со скоростью DevOps.
👉 @bfbook
Автор: Yuki Hakatori (2024)
Книга начинается с изучения основ Git и углубления в DevOps и опыт разработчиков. По мере продвижения вы поймете, как использовать возможности GitHub для совместной работы и автоматизации, и даже сможете воспользоваться GitHub Copilot для повышения производительности. Вы также узнаете, как преодолеть разрыв в DevOps, поддерживать качество кода и применять надежные меры безопасности. Кроме того, практические занятия позволят вам повысить качество работы разработчиков, укрепить командную работу и внедрять инновации со скоростью DevOps.
👉 @bfbook
👍8❤1
Forwarded from Базы данных (Data Base)
Базы данных классифицируются в первую очередь по методу организации данных, способу их поиска и хранения, производительности при доступе к данным и способности распределять данные по нескольким узлам для повышения доступности и устойчивости
Мы в MAX
#db
👉 @database_info
Мы в MAX
#db
👉 @database_info
👍8
📚 The Phoenix Project: A Novel About IT, DevOps, and Helping Your Business Win, 5th Anniversary Edition
Авторы: Gene Kim, Kevin Behr, George Spafford (2018)
Представь: ты — Билл, типичный айтишный менеджер в вымышленной компании Parts Unlimited, и твой проект «Феникс» — это не мифическая птица, которая возрождается из пепла, а натуральная свалка багов, просроченных дедлайнов и бюджета, который улетел в стратосферу.
Шеф дает тебе 90 дней, чтобы все починить, иначе твой отдел отправят на аутсорс. Звучит как типичный понедельник, да? Но тут появляется загадочный гуру с философией Трех Путей.
Он открывает Биллу страшную тайну: работа в айти — не только кодить в подвале и молиться, чтобы сервера не упали. Это про командную игру, налаженный workflow и — держись крепче — превращение хаоса в конвейер, как на заводе.
The Phoenix Project учит нас, что DevOps — это не просто модное слово, а способ не сойти с ума, когда разработчики и операционщики перестают играть в «кто виноват» и начинают работать вместе.
Мы в MAX
👉 @bfbook
Авторы: Gene Kim, Kevin Behr, George Spafford (2018)
Представь: ты — Билл, типичный айтишный менеджер в вымышленной компании Parts Unlimited, и твой проект «Феникс» — это не мифическая птица, которая возрождается из пепла, а натуральная свалка багов, просроченных дедлайнов и бюджета, который улетел в стратосферу.
Шеф дает тебе 90 дней, чтобы все починить, иначе твой отдел отправят на аутсорс. Звучит как типичный понедельник, да? Но тут появляется загадочный гуру с философией Трех Путей.
Он открывает Биллу страшную тайну: работа в айти — не только кодить в подвале и молиться, чтобы сервера не упали. Это про командную игру, налаженный workflow и — держись крепче — превращение хаоса в конвейер, как на заводе.
The Phoenix Project учит нас, что DevOps — это не просто модное слово, а способ не сойти с ума, когда разработчики и операционщики перестают играть в «кто виноват» и начинают работать вместе.
Мы в MAX
👉 @bfbook
👍5❤2🤡1
📚 The Software Engineer's Guidebook: Navigating senior, tech lead, and staff engineer positions at tech companies and startups
Автор: Gergely Orosz (2023)
Это не просто очередная книжка о том, как стать крутым инженером. Это гайд, который ты обязательно прочитаешь, когда начнешь осознавать, что часов работы и багфиксов недостаточно для роста.
Gergely Orosz описывает структуру «типичного» карьерного пути инженера-программиста, начиная с позиции начинающего разработчика и заканчивая ролевой моделью senior/lead, вплоть до уровня staff/principle/distinguished.
Что внутри?
- Как стать не просто хорошим инженером, а таким, которого хвалят даже за обеденные перерывы.
- Советы, от которых твои коллеги начнут переживать, что ты слишком быстро растешь.
- Путь от «работаю в тени» до «все мои идеи — это будущее компании».
- Книга, которая сделает тебя не только лучшим разрабом, но и мастером созвонов.
Если ты не знаешь, что писать в performance review, и просто мечтаешь о том, чтобы кто-то оценил твой вклад в команду, эта книга точно для тебя. Рекомендуем всем инженерам, от джунов до гуру, потому что даже лучшие должны продолжать учиться!
Мы в MAX
👉 @bfbook
Автор: Gergely Orosz (2023)
Это не просто очередная книжка о том, как стать крутым инженером. Это гайд, который ты обязательно прочитаешь, когда начнешь осознавать, что часов работы и багфиксов недостаточно для роста.
Gergely Orosz описывает структуру «типичного» карьерного пути инженера-программиста, начиная с позиции начинающего разработчика и заканчивая ролевой моделью senior/lead, вплоть до уровня staff/principle/distinguished.
Что внутри?
- Как стать не просто хорошим инженером, а таким, которого хвалят даже за обеденные перерывы.
- Советы, от которых твои коллеги начнут переживать, что ты слишком быстро растешь.
- Путь от «работаю в тени» до «все мои идеи — это будущее компании».
- Книга, которая сделает тебя не только лучшим разрабом, но и мастером созвонов.
Если ты не знаешь, что писать в performance review, и просто мечтаешь о том, чтобы кто-то оценил твой вклад в команду, эта книга точно для тебя. Рекомендуем всем инженерам, от джунов до гуру, потому что даже лучшие должны продолжать учиться!
Мы в MAX
👉 @bfbook
👍7🤡5❤1🔥1
Forwarded from Bash Советы
📁Как отрезать расширение у файла в Bash
📌 Что тут происходит:
-
👀 Примеры:
Если хочешь убрать все расширения (в т.ч.
🧠 Под капотом:
-
-
Мощно и без внешних команд! 🚀
👉@bash_srv
filename="example.txt"
name="${filename%.*}"
echo "$name"
📌 Что тут происходит:
-
${filename%.*} — удаляет последнюю точку и всё после неё, то есть расширение.👀 Примеры:
filename="backup.tar.gz"
name="${filename%.*}" # Результат: backup.tar
Если хочешь убрать все расширения (в т.ч.
.tar.gz), можно использовать вот так:
filename="backup.tar.gz"
name="${filename%%.*}" # Результат: backup
🧠 Под капотом:
-
%.* — удаляет самую правую точку и всё после.-
%%.* — удаляет самую левую точку и всё после.Мощно и без внешних команд! 🚀
👉@bash_srv
👍14❤4🤯4🔥1
🔹JavaScript для начинающих, издание 6
Автор: Майк МакГрат
Руководство помогает освоить основу языка. Есть практические упражнения — можно сразу закрепить полученную теорию и понять, где и как применять новые знания.
В отличие от большинства других трудов по JS, эта книга предлагает начать изучение с чистого JDK, а не с проектов в средах разработки NetBeans или Eclipse. Автор учит создавать функциональные сайты с хорошим дизайном через главные возможности JavaScript.
🔹Справочник JavaScript. Кратко, быстро, под рукой
Авторы: А. П. Никольский, Е. В. Дубовик
В книге огромное количество информации по JavaScript. Она неплохо структурирована: можно быстро находить нужные данные и примеры использования языка. Авторы не забывают показывать и то, каким должен быть правильный стиль программирования. Рассказывают про объектные модели браузеров, отладку и обработку ошибок.
🔹Новые возможности JavaScript. Как написать чистый код по всем правилам современного языка
Автор: Т. Д. Краудер
Отличное руководство для разработчиков, которые хотят писать не только быстро, но и правильно. Авторы подробно объясняют, как использовать возможности языка, чтобы код хорошо читался и был лаконичным. А еще раскрывают такие темы:
отличие последних версий JavaScript;
расширенная функциональность объектов,
современный синтаксис языка.
🔹JavaScript. 32 урока для начинающих
Автор: В. А. Дронов
Всего в книге 32 урока, с 60 разными упражнениями по JavaScript. Конечно, они не самые сложные, ведь книга предназначена для кодеров с минимальным опытом. Но основы языка автор раскрывает неплохо: типы данных, переменные, управляющие конструкции, функции, массивы, объекты, классы, регулярные выражения, модули, средства для обработки исключений и отладки. К тому же в книге говорится об асинхронном программировании и Node.js.
🔹JavaScript в примерах и задачах
Автор: А. Васильев
Автор просто и интересно рассказывает о сложных вещах — ООП и веб-программировании на JavaScript.
Васильев создал методику, которая позволяет новичкам быстро освоить базовые принципы языка и начать работу над простыми практическими проектами. Примеры с подробным разбором деталей и разъяснениями помогают понять информацию, даже если у вас совсем мало опыта.
🔹Рефакторинг кода на JavaScript. Улучшение проекта существующего кода
Автор: М. Фаулер
Книга пригодится начинающему разработчику, который хочет разобраться с вопросом рефакторинга кода. Мы читаем об этом часто, но что это вообще такое и зачем оно нужно? Автор раскрывает принципы и методы процесса, рассказывает, когда и как его применять.
В этой книге тоже много примеров: Фаулер описал больше 60 методов, включая рефакторинг без классов. Есть даже каталог рефакторингов с примерами.
Несмотря на сложность темы, читается книга легко. Иногда возникает чувство, что держишь в руках увлекательный рассказ. Фаулер интересно и в красках показывает, с чего нужно начинать рефакторинг и каких результатов ждать.
Мы в MAX
👉 @bfbook
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9👍4🤡2