ITmozg
2.67K subscribers
1.52K photos
92 videos
3 files
5.86K links
Программисты, дизайнеры, новости из мира IT. Официальный канал. (vk.com/itmozg, ITmozg.ru)
Download Telegram
Practical Linux Forensics: A Guide for Digital Investigators
Автор: Bruce Nikkel (2021)

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

Скачать книгу

@itmozg
👍3
10 полезных сертификаций и курсов по Node.JS

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

https://itmozg.ru/10-poleznyh-sertifikacij-i-kursov-po-node-js/

@itmozg
Декораторы в Python

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

@itmozg
👍4
The Missing README: A Guide for the New Software Engineer
Авторы: Chris Riccomini, Dmitriy Ryaboy (2021)

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

Вы узнаете:
✔️Как использовать устаревший алгоритм изменения кода и оставить код чище, чем он был;
✔️Как написать работающий код с ведением логов, метриками, конфигурацией;
✔️Как писать детерминированные тесты, отправлять обзоры кода и давать отзывы о коде других людей;
✔️Как справляться с производственными инцидентами;
✔️Архитектурные приемы, облегчающие изменение кода;
✔️Методы гибкой разработки, такие как планирование спринтов, стендапы и ретроспективы.

Скачать книгу

@itmozg
👍5
Индекс TIOBE за январь 2023 года

C++ – язык программирования года 2022 по версии TIOBE!

C++ – язык программирования 2022 года по версии TIOBE. Он завоевал это звание потому, что C++ приобрел наибольшую популярность (+4,62%) в 2022 году. На втором месте – C (+3,82%) и Python (+2,78%). Интересно, что C++ обогнал Java и стал номером 3 в индексе TIOBE в ноябре 2022 года. Причиной популярности C++ является его отличная производительность при том, что он является объектно-ориентированным языком высокого уровня. Благодаря этому на C++ можно разрабатывать быстрые и огромные программные системы (более миллионов строк кода), не впадая при этом в кошмар технического обслуживания.

https://itmozg.ru/indeks-tiobe-za-janvar-2023-goda/

@itmozg
👍41🔥1
Algorithms for Optimization
Авторы: Mykel J. Kochenderfer, Tim A. Wheeler (2019)

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

Скачать книгу

@itmozg
👍8
Natural Language Processing with Transformers
Авторы: Lewis Tunstall, Leandro von Werra, Thomas Wolf (2022)

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

Скачать книгу

@itmozg
👍2🔥1
Big Data and Artificial Intelligence
Автор: Hans Weber (2020)

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

Скачать книгу

@itmozg
👍5
Spring REST: Building Java Microservices and Cloud Applications, 2nd Edition
Автор: Balaji Varanasi, Maxim Bartkov (2022)

Книга содержит краткое введение в REST и веб-архитектуру приложений. Вы узнаете о экосистеме Spring: Spring Boot, Spring MVC, Spring Data JPA и Spring Security, а также о роли, которую они играют в упрощении разработки приложений

Скачать книгу

@itmozg
👍3
Пишем игру змейка (Snake) на C++ (+архив)

Управление змейкой клавишами управления курсором. Esc — завершение игры. Для выхода из игры надо нажать Esc или клавишу N на вопрос «Once more?». Змейка не должна натыкаться на стенки и на собственный хвост. Это — смерть. Змейка не умеет ползать хвостом вперёд. Попытаться заставить её это сделать — верная смерть. Кормить змейку надо, естественно, долларами. Когда змейка ест, она растёт.

Программа написана для Windows 2000 Professional (и выше). Для переноса под другие операционки необходимо переписать реализацию класса CScreen и иметь порт библиотеки conio.h.

https://itmozg.ru/pishem-igru-zmejka-snake-na-c/

@itmozg
👍3
Цитаты великих программистов📌

0. Билл Гейтс. «Аккуратный программист — быстрый программист».

1. Маркус Перссон. «Если твой код работает, значит это хороший код».

2. Гейб Логан Ньюэлл. «Чтобы понять код мида, нужно быть мидом. Чтобы понять код сеньора, достаточно быть джуном».

3. Брайан Керниган. «У каждого языка есть время жизни. За исключением ’Кобола’, конечно».

4. Линус Торвальдс. «Настоящий программист гораздо больше читает, чем пишет».

5. Марк Цукерберг. «Комментарии в коде должны быть похожими на кружевные трусики: маленькими, прозрачными, и оставляющими достаточно места для воображения».

6. Павел Дуров. «Скорость имеет значение».

7. Расмус Лердорф. «Когда я не знаю, с чего начать, я открываю чистый файл и пишу: ’// С чего бы начать?’. Дальше всё идёт как-то само собой».

8. Ада Лавлейс. «Если ваша работа не документирована, значит вы не работали».

9. Дональд Эрвин Кнут. «Писать книги сложнее, чем писать программы. Любой писатель может стать хотя бы посредственным программистом. Обратное, к сожалению, неверно».

10. Бьёрн Страуструп. «Если над кодом работали 20 человек, значит его можно сделать в 20 раз меньше и в 20 раз быстрее».

11. Ричард Мэттью Столлман. «Если бы Омар Хайям жил сейчас, он наверняка был бы пиратом».

12. Стив Возняк. «На собеседованиях я обычно спрашиваю, часто ли испытуемый использует костыли. Это хороший способ отсеять патологических лжецов».

13. Сид Мейер. «Не ожидайте ухоженных ногтей от первопроходцев».

14. Алан Кёртис Кэй. «Можно сделать довольно большой проект, вообще не прикасаясь к мыши. Но зачем?».

15. Брэм Коэн. «На длинных дистанциях выигрывают стайеры».

16. Джон Кармак. «Всегда начинайте со структуры данных».

17. Джеймс Гослинг. «Кофе не помогает программировать, зато он приятен на вкус».

18. Андерс Хейлсберг. «Не бывает хороших языков, бывают хорошие программисты».

19. Кен Томпсон. «Проще отучить собаку лаять на почтальона, чем отучить админа работать под рутом».

20. Давид Хейнемейер Ханссон. «Когда-то я был достаточно наивен, надеясь, что мне достаточно будет хорошо выучить один язык».

21. Эндрю Таненбаум. «Завидую тестировщикам: все хотят с ними дружить».

22. Юкихиро Мацумото. «Отдавайте распоряжения в письменном виде: программист вы, в конце концов, или нет?».

23. Ларри Уолл. «И где теперь ваш ассемблер?».

24. Крис Хьюз. «Чем опытнее программист, тем лучше он осознаёт всю скудность своих знаний и навыков».

25. Эрик Стивен Рэймонд. «Хакер всегда выигрывает в честной схватке, потому что он нечестен».

26. Питер Нортон. «Идеальному коду место в музее: там ценят всякие древности».

27. Дастин Московиц. «Не экономьте на дизайне: конечный пользователь ровным счётом ничего не понимает в программировании».

28. Стив Возняк. «Довольно сложно руководить программистом, которому не нужны деньги».

29. Ричард Мэттью Столлман. «Выучите LISP, и вы не будете работать ни одного дня в своей жизни. Выучите PHP, и вы таки сумеете заработать себе на кусок хлеба».

30. Брендан Эйх. «Прежде, чем начать сеанс парного программирования, уберите из комнаты все острые предметы».

@itmozg
👍14🤡1
51 год автору WinRAR и FAR Manager

10 марта 1972 в Челябинске родился Евгений Лазаревич Рошал — российский программист, автор файлового менеджера FAR Manager, формата сжатия RAR (Roshal ARchiver, которому в этом году исполняется 30 лет!), архиваторов RAR и WinRAR.

Евгений начал осваивать программирование ещё в школьные годы, затем окончил Приборостроительный факультет Челябинского политехнического института по специальности «Вычислительные машины, комплексы, системы и сети», где на старших курсах изучал алгоритмы сжатия информации — это же стало и темой его дипломной работы.

Идея создать RAR возникла ещё в 1991-м. Но первая попытка к осязаемому результату не привела. Через год-два Евгений занялся этим опять, и на этот раз более успешно. Первой версией RAR, которую он рискнул отдать нескольким своим знакомым, был RAR 0.1, выпущенный в марте 1993. Потом были версии 0.9, 1.0, 1.1, 1.15, и тому подобные, с вариациями алгоритма сжатия. Но реально RAR пошел в распространение осенью 1993 после выхода версии 1.30. Во-первых, эта версия паковала намного лучше предшествующих за счет 64Kb окна поиска повторяющихся строк, а во-вторых, Евгений тогда познакомился с Андреем Спасибожко, который и помог двинуть RAR в массы.

Желая сосредоточиться на совершенствовании формата и архиваторов RAR и WinRAR, Евгений Рошал в 2000 году прекратил работу над файловым менеджером FAR Manager и передал авторские права на него группе программистов FAR Group, а в 2004 году передал авторские права на программы RAR и WinRAR своему старшему брату Александру (р. 1965), оставшись лишь разработчиком.

@itmozg
👍18👏1
Kali Linux Penetration Testing Bible
Автор: Gus Khawaja (2021)

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

Скачать книгу

@itmozg
👍4
Парсинг веб-страниц с помощью C++

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

В этом руководстве вы узнаете, как использовать C++ для реализации веб-скрапинга с помощью библиотек libcurl и gumbo. Вы можете следить за развитием событий на GitHub.

@itmozg
👍3
Big Data Using Hadoop and Hive
Автор: KumarNitin (2021)

Эта книга является базовым руководством для разработчиков, архитекторов, инженеров и всех, кто хочет начать использовать Hadoop и Hive для создания распределенных, масштабируемых параллельных приложений для обработки больших данных. Hive будет использоваться для чтения, записи и управления большими файлами с наборами данных. Книга представляет собой краткое руководство по началу работы с общим пониманием Apache Hadoop и Have и того, как они работают вместе, чтобы ускорить разработку с минимальными усилиями.

Скачать книгу

@itmozg
👍6
YTsaurus: основная система для хранения и обработки данных Яндекса теперь open source

Привет! Меня зовут Максим Бабенко, я руковожу отделом технологий распределённых вычислений в Яндексе. Сегодня мы выложили в опенсорс платформу YTsaurus — одну из основных инфраструктурных BigData-систем, разработанных в Яндексе.

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

В Github-репозитории находится серверный код YTsaurus, инфраструктура развёртывания с использованием k8s, а также веб-интерфейс системы и клиентский SDK для распространённых языков программирования — C++, Java, Go и Python. Всё это — под лицензией Apache 2.0, что позволяет всем желающим загрузить его на свои серверы, а также дорабатывать его под свои нужды.

@itmozg
👍51
Началась эпоха искусственного интеллекта

Искусственный интеллект – такая же революция, как мобильные телефоны и Интернет.

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

Первый раз это было в 1980 году, когда мне представили графический интерфейс пользователя – предтечу всех современных операционных систем, включая Windows. Я сидел с человеком, который показал мне демонстрацию, блестящим программистом по имени Чарльз Симони, и мы сразу же начали мозговой штурм по поводу того, что можно было бы сделать с помощью такого удобного подхода к вычислениям. В конечном итоге Чарльз перешел в Microsoft, Windows стала основой Microsoft, а наши размышления после той демонстрации помогли определить программу компании на следующие 15 лет.

https://itmozg.ru/nachalas-jepoha-iskusstvennogo-intellekta/

Автор Билл Гейтс

@itmozg
👍8👎1
Сможет ли ИИ заменить программистов?

Привет! Задумывались ли вы когда-нибудь, сможет ли искусственный интеллект (ИИ) заменить программистов-людей? Этот вопрос волнует многих представителей технологической индустрии, и его изучением занимается OpenAI, ведущая исследовательская организация в области ИИ.

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

https://itmozg.ru/smozhet-li-ii-zamenit-programmistov/

@itmozg
👍6
Apple хочет отслеживать каждое движение пользователя для здоровья, AR и многого другого

Apple хочет знать каждый раз, когда вы двигаете мышцами любой части тела, чтобы более точно составить картину вашей физической формы, а также, возможно, лучше определять ваше местоположение в помещении.
Apple уже использует такие технологии, как акселерометры в часах Apple Watch, что позволяет им автоматически определять, что вы идете, даже если вы забыли включить тренировку Outdoor Walk. Недавно компания также подала заявку на патент на камеру в Apple Watch, которая, помимо фотосъемки, предназначена для обнаружения движения.

https://itmozg.ru/apple-hochet-otslezhivat-kazhdoe-dvizhenie-polzovatelja-dlja-zdorovja-ar-i-mnogogo-drugogo/

@itmozg
👍4
TypeScript in 50 Lessons
Автор: Stefan Baumgartnercoll.Harrison E. Salisbury (2020)

Все, что вам нужно знать о TypeScript, в 50 коротких уроках Находите ошибки до того, как они произойдут, и укрепляйте свою кодовую базу, используя обширную и гибкую систему типов TypeScript

Скачать книгу

@itmozg
👍4
CI/CD Pipeline Using Jenkins Unleashed: Solutions While Setting Up CI/CD Processes
Автор: Pranoday Dingare (2022)

В книге описывается непрерывная интеграция (CI), непрерывную доставка и непрерывное развертывание (CD) с помощью Jenkins. Эти процессы позволяют программистам, а также администраторам выявлять проблемы, как только они появляются в коде. Эта книга начинается с введения в Jenkins и описывает его архитектуру и роль в CI/CD.

Рассматриваются основы, включая установку и настройку Jenkins. Обсуждается конфигурация инструмента и плагины, а также доступные меры безопасности, такие как учетные данные. Вы узнаете, что подразумевается под джобой в Jenkins, ее типы, разделы и многое другое.

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

Скачать книгу

@itmozg
👍5