Программирование {BookFlow}
16.1K subscribers
1.58K photos
470 videos
145 files
2.1K links
Мы публикуем лекции и книги по программированию, видеоуроки, доклады с IT конференций, новости технологий.

Группа в https://vk.com/bookflow.

По всем вопросам @evgenycarter

РКН https://clck.ru/3KoAbH
Download Telegram
Из джуна в мидла: рекомендации, как справиться с проблемами роста

Планомерный и беспроблемный рост — мечта любого IT-специалиста. Но, к сожалению, так бывает только в идеальном мире. В реальной жизни всегда встречаются сложности, которые нелегко обойти, особенно джунам. Далее

👉 @bookflow
👍2👎1
This media is not supported in your browser
VIEW IN TELEGRAM
В Python так и не закрыли уязвимость, найденную ещё в 2007 году, утверждается в отчёте Trellix. Под ударом сейчас находится более 350 тысяч проектов с открытым исходным кодом.

Как пишет Bleeping Computer, в связи с тем, что ее не могли устранить так долго, она проникла в несколько сотен тысяч проектов, написанных на Python. Проблема CVE-2007-4559 была найдена в пакете tarfile и относится к типу path traversal (обход каталога), то есть позволяет злоумышленнику перезаписывать произвольные файлы.

Уязвимость существует из-за того, что код в функции extract в Python-модуле tarfile доверяет информации в объекте TarInfo.

@BookPython
👍7
Руководство по CMake для разработчиков C++ библиотек


В этой статье я расскажу о том, как правильно писать современные CMakeLists.txt файлы для C++ библиотек. Идеи, используемые в ней, основаны на докладе Крейга Скотта (разработчик CMake) и докладе Роберта Шумахера (разработчик vcpkg) c CppCon 2019. Поскольку мне достаточно часто приходится разрабатывать С++ библиотеки, я создал для себя небольшой шаблон cpp-lib-template, который будет использоваться в этой статье в качестве примера.

Замечу, что я предполагаю, что читатель этой статьи имеет опыт работы с CMake, однако, как и я, часто задается вопросом, как правильно ему сделать сборку своей библиотеки.

#cpp #programming

👉 @cpp_lib
👍4
Программирование — это про общение

Люди стареют. Вместе со щёлкающей шеей, сединой в бороде и морщинами проявляется ещё одно возрастное изменение - непреодолимое желание вещать.

Политики садятся за мемуары. Спортсмены открывают тренировочные площадки . Режиссёры катают жемчужины воспоминаний о встречах с легендарными коллегами по цеху.

Программисты же бросаются излагать свои философские системы. Меня время тоже не щадит.

https://habr.com/ru/post/684282/
👍7
Forwarded from BigData
Google представил нейросеть для детекции туберкулеза на радиограммах

https://pubs.rsna.org/doi/10.1148/radiol.212213

👉 @bigdata_1
👍5
Языки программирования, которые стоит рассмотреть к изучению в 2022 году

Javascript — Наиболее используемый, простой язык, имеет большое комьюнити.
(scripting, frontend, backend, ML)

Python — простой в изучении, имеет широкое применение.
(backend, ML, data science, visualization, scripting, hacking)

Dart — Используется в Android, iOS, Web App, Desktop/Laptop програмы, Linux, embedded. Flutter.

C# — Независимый от платформы, простой язык общего назначения, может использоваться для разработки приложений любого типа, разработки игр, VR, AR.

Go — Решает проблемы масштабируемости, простой элегантный код, легкий в освоении.

https://medium.com/@zriyans/programming-languages-to-avoid-and-learn-in-2022-ace5cf9fd11b

👉 @bookflow
👍4🔥2
Представления в SQL

Здравствуйте, в этой статье будут разобраны представления или view в SQL. На простых примерах объясним как создавать представления и как к ним обращаться. Также затронем понятие модифицируемого представления в SQL.

#SQL

👉 @database_info
👍7
Грехи программиста

Лень
Отсутствие желания что-либо делать, тоскливые взгляды, брошенные на график GitHub. Порой становится некогда оттачивать скилы, готовиться к новым собеседованиям и искать решения для «застойных» проблем.

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

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

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

Гнев
Держать себя в руках сложно, особенно когда сыплются краш за крашем, а очевидных причин тому никаких. Иногда нужно перелопатить весь код, чтобы понять, где затаилась ошибка.

👉 @bookflow
👍20
Чистый код — практический подход

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

Поэтому я попытаюсь показать вам практический подход к чистому коду. Не вдаваясь в теорию, покажу, как я пишу Чистый Код.

👉 @bookflow
👍3
Прогнозирование атмосферного CO2 с помощью Python

Как создавать модели прогнозирования временных рядов с помощью Darts.
https://telegra.ph/Prognozirovanie-atmosfernogo-CO2-s-pomoshchyu-Python-10-06

Forecasting Atmospheric CO2 with Python
original https://towardsdatascience.com/forecasting-atmospheric-co2-concentration-with-python-c4a99e4cf142

👉 @bookflow
👍3🤣1
Глубокое погружение в Java Memory Model

В этой статье мы подробно разберем Java Memory Model (JMM) и применим полученные знания на практике. Да, в интернете накопилось достаточно много информации про JMM/happens-before, и, кажется, что очередную статью про такую заезженную тему можно пропускать мимо. Однако я постараюсь дать вам намного большее и глубокое понимание JMM, чем большинство информации в интернете. После прочтения этой статьи вы будете уверенно рассуждать о таких вещах как memory ordering, data race и happens-before. JMM — сложная тема и не стоит верить мне на слово, поэтому большинство моих утверждений подтверждается цитатами из спеки, дизассемблером и jcstress тестами.

👉 @bookflow
Пишем свою библиотеку под Arduino

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

👉 @bookflow
👍7👎1
С++ с нуля

1 - переменные, оператор присваивания
2 - арифметические операции
3 - директивы препроцессора
4 - условные операторы if и switch
5 - операторы циклов while, for и do while
6 - массивы, метод всплывающего пузырька
7 - строки и функции работы с ними
8 - функции: прототипы, перегрузка, рекурсия
9 - области видимости переменных, статические переменные
10 - битовые операции И, ИЛИ, НЕ, XOR и сдвиговые операции

#cpp #programming

👉 @cpp_lib
👍9