Азбука айтишника
2.97K subscribers
1.2K photos
38 videos
1 file
662 links
Айти для неайтишников: познаем азы из мира программирования.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/d6fce3cb

Для обратной связи: @proglibrary_feeedback_bot
加入频道
💻 Модель TCP/IP: Основы Интернета

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

Включает четыре уровня модели:
▪️Уровень сетевого доступа отвечает за физическое подключение устройств Ethernet и Wireless LAN
▪️Сетевой уровень занимается маршрутизацией пакетов с помощью протокола IP
▪️Транспортный уровень обеспечивает надежность передачи данных через протоколы TCP и UDP
▪️Уровень приложений предоставляет интерфейсы для программ и сервисов, используя протоколы вроде HTTP, TLS и DNS.

Понимание модели TCP/IP важно для работы с сетями и разработки сетевых приложений.

#база
👍101
Что означает ошибка TypeError: unsupported operand type(s)
Разбираемся с ошибками компиляции на Python, которые приводят новичков в ступор.

Что это за ошибка?

Ошибка TypeError: unsupported operand type(s) в Python возникает, когда вы пытаетесь выполнить операцию между несовместимыми типами данных, например, вычесть число из строки. Обычно это связано с функцией input(), которая возвращает строку.

Как исправить?

Чтобы исправить ошибку, необходимо преобразовать строковое значение в числовое с помощью функции int().

Пример: замените
num = input("Сколько раз: ") 

на
num = int(input("Сколько раз: ")).


Прошлый пост:
Что означает ошибка Exception has occurred: TypeError
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
Kanban vs Scrum: что выбрать управленцу

Kanban и Scrum — два популярных метода управления проектами, особенно в IT. Оба подхода основаны на Agile-методологиях, но имеют свои особенности.

➡️ Гибкость: Kanban позволяет вносить изменения в задачи в любой момент, Scrum работает с фиксированными спринтами
➡️ Структура: Scrum жестко структурирован (ролями и спринтами), Kanban — более свободный, без четких ролей
➡️ Фокус на потоке работы: Kanban помогает управлять задачами по мере их поступления, Scrum направлен на завершение задач в пределах спринта

➡️ Когда выбирать Kanban: если нужно гибко адаптироваться к изменениям и управлять потоком задач в реальном времени

➡️ Когда выбрать Scrum: если важна регулярная отчетность и четкие временные рамки для достижения целей
Выбор зависит от потребностей команды и особенностей проекта.

#управленцам
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🤔1
🔐 Работа VPN

Без VPN:

▪️ Ваше устройство напрямую подключается к интернету через провайдера (ISP)
▪️ Ваш реальный IP-адрес (например, 60.129.30.119) виден в интернете, что делает вас уязвимым

С VPN:


▪️ VPN-клиент на вашем устройстве шифрует данные и отправляет их через VPN-сервер
▪️ Ваш IP-адрес маскируется IP VPN-сервера (например, 80.233.52.189), а данные шифруются
▪️ Провайдер не видит конечный адрес, и хакеры не могут перехватить данные

#база
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥3
📊 Основы клиент-серверной архитектуры

🌻 Что это такое?

Клиент-серверная архитектура — это основа взаимодействия приложений и сервисов в интернете.

🌻 Из чего состоит?

Клиент — устройство или программа, которая отправляет запросы на сервер (например, веб-браузер).
Сервер — система, которая принимает запросы, обрабатывает их и возвращает ответ (например, веб-сайт или база данных).

🌻 Какие основные принципы?

Запрос-ответ: клиент посылает запрос, сервер обрабатывает и возвращает ответ
Распределение задач: сервер отвечает за логику, хранение данных, клиент — за интерфейс
Протоколы: для связи часто используется HTTP/HTTPS

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


#база
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8😁3
💻🔍💼 Кризис IT-рынка: как джуны и кадровый голод меняют правила игры

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

Читать статью

#почитать
👍5
📂 Типы баз данных

Вот основные типы баз данных:

Graph (графовая) — NoSQL Используется для хранения и обработки данных, которые можно представить в виде графов (например, социальных сетей)

Key-Value (ключ-значение) — NoSQL: Простая структура, где данные хранятся как пары ключ-значение, что подходит для быстрых операций с кэшем

Document (документная) — NoSQL: Идеальна для хранения данных в формате JSON, XML или других документов

Column-Family (семейство столбцов) — NoSQL
: Организует данные в столбцах, что удобно для аналитики больших объемов данных

Analytical (OLAP) — SQL OLAP: базы данных предназначены для многомерной аналитики и отчетности

Relational (реляционная) — SQL: Наиболее распространенный тип, данные организованы в таблицах и имеют четкие связи между ними

Каждый тип базы данных имеет свое применение, в зависимости от задач и характера данных

#база
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14
📌 Что такое «пушить» в разработке

Пушить (Push) — это процесс отправки ваших изменений в коде с локального компьютера на удаленный репозиторий (например, на GitHub). Когда вы «пушите» изменения, они становятся доступны для других участников проекта.

Представьте, что вы завершили работу и загружаете её на общий сервер.


#термины
Please open Telegram to view this post
VIEW IN TELEGRAM
👍104
🌐 Преимущества и недостатки работы в ИТ-аутсорсинговой компании

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

Получите основу для дальнейшего изучения более сложных нейронных сетей:
🔵 Базовые модели ML и приложения

🔗 Ссылка на статью
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
🔼 Какие бывают IT-проекты

К IT-проектам относят процессы разработки, внедрения, обслуживания и доработки различных систем: программного или аппаратного обеспечения, а также сетевой инфраструктуры.

➡️ Главная цель:

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

➡️ Рассмотрим основные виды IT-проектов:

▪️ Разработка программного обеспечения. Например, внедрение CRM-системы для управления взаимодействием с клиентами или разработка мобильного приложения для улучшения сервиса

▪️ Внедрение новых технологий и инфраструктуры. Например, установка серверов, систем хранения данных, сетевых устройств для обеспечения безопасной и стабильной работы сети

▪️ Интеграция существующих систем. Например, интеграция CRM с ERP-системой или перенос данных из одной системы в другую для удобства работы сотрудников

#проект
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
Что такое Joins в SQL?

JOIN в SQL позволяет объединять строки из двух таблиц на основе определенного условия. Посмотрим, как это работает:

SELECT * FROM left_table JOIN right_table 
ON left_table.foo = right_table.baz
AND left_table.bar = right_table.panda;

▪️2 таблицы: left_table и right_table.
▪️Условие: строки объединяются, если left_table.foo равно right_table.baz и left_table.bar равно right_table.panda.

INNER JOIN:

Возвращает все пары строк из обеих таблиц, которые удовлетворяют условию.
Пропускает строки, которые не имеют совпадений (в левой или правой таблице).

LEFT JOIN:
Возвращает все строки из левой таблицы (left_table), даже если они не соответствуют условию.
Если соответствия нет, строки из правой таблицы (right_table) заполняются NULL.

RIGHT JOIN:
Возвращает все строки из правой таблицы (right_table), даже если они не соответствуют условию.
Если соответствия нет, строки из левой таблицы (left_table) заполняются NULL.

FULL OUTER JOIN:
Возвращает все строки из обеих таблиц.
Если строки не соответствуют условию, они заполняются NULL в тех местах, где отсутствуют данные.

JOIN — это мощный инструмент для объединения данных из разных таблиц на основе определенного условия.

#база
👍122
🌐⚙️ 5 лучших альтернатив Create React App

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

🔗 Читать статью
🔗 Зеркало
👍31
Postman: Инструмент для работы с API

🌻 Что это такое?

Postman — один из самых распространенных сервисов для тестирования API и создания запросов. Большинство QA-инженеров регулярно им пользуются. Это такой же обязательный инструмент профессии, как и среда разработки для программистов

🌻 Подойдет ли новичку?

Приложение максимально дружелюбно к новичку, поэтому начать работать с postman несложно. У приложения есть бесплатная версия, которая в функциональности почти не уступает платной

🌻 Какие основные преимущества?

Его преимущество — простой графический инструмент. Основная сущность в Postman — запрос, позволяющий получить, отправить или удалить данные из API

Пост про API:
⚙️ Практическое использование API
Please open Telegram to view this post
VIEW IN TELEGRAM
👍63
📄 Типы прокрастинаторов айтишников и способы борьбы с ними

Существуют разные типы прокрастинаторов. Мы выделяем пять основных:

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

Кризисный наркоман: сознательно откладывает работу до последней минуты, недооценивая необходимое время.
Совет: начни работу сразу, не жди дедлайна.

Мечтатель: строит идеальные планы, но редко воплощает их в жизнь
Совет: преврати планы в конкретные цели и работай над ними последовательно, устанавливая сроки

Перфекционист: стремится к идеалу, из-за чего затягивает выполнение задачи
Совет: сфокусируйся на достижении измеримого результата, а не на совершенстве

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

#психология_айтишника
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11👾1
📌 Что такое мердж в программировании

Мердж — это процесс объединения изменений из разных веток (branches) в одном проекте. Представьте, что вы и ваши коллеги работаете над разными частями одного кода, каждый в своей отдельной ветке. В какой-то момент вам нужно объединить ваши изменения с основным проектом — вот тогда и выполняется merge.

🌻 Зачем нужен мердж?

▪️ Параллельная работа:
Мердж позволяет одновременно работать над разными частями проекта, а затем объединять всё в целостную систему
▪️ Безопасность: Благодаря веткам можно экспериментировать с новыми фичами, не рискуя повредить стабильный код в основной ветке
▪️ Легкость управления: Мердж помогает поддерживать чистоту и порядок в проекте, позволяя внедрять изменения поэтапно

#термины
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🥰1
💻 15 лучших ноутбуков для программиста в 2024 году

Хочешь заменить свой рабочий ноут?


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

🔗 Ссылка на статью
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥4😢1
🐧🎭 10 дистрибутивов Linux на грани безумия и гениальности: от Windows-клона до самоуничтожающейся ОС

Мир Linux полон сюрпризов, и эти 10 дистрибутивов — яркое тому подтверждение.

Читать статью

#гайд
👍6
🎯 Бэклог в Agile: Как оптимизировать работу команды

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

Чтобы упростить этот процесс, команда обратилась к Agile-практике — управлению бэклогом и приоритезации задач. Для визуализации стали использовать Trello.

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

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

#управленцам
👍31
This media is not supported in your browser
VIEW IN TELEGRAM
😡👨‍💼 ТОП-7 самых раздражающих вопросов от HR-ов

Разбираем самые бесячие вопросы на собеседованиях и объясняем, для чего их спрашивают в формате короткого видео.

👉 Ссылка на полную статью
👍42
⚙️ Kotlin — современный статически типизированный язык программирования

Kotlin создан для работы с JVM, Android и веб-разработки. Он обладает лаконичным синтаксисом, высокой производительностью и полной совместимостью с Java-кодом, также имеет мощные средства проверки типов и безопасности.

🔵 Главные фишки Kotlin:
Лаконичность: Меньше кода — меньше ошибок. Kotlin позволяет писать компактный код без потери читаемости и выразительности

Совместимость с Java: Полностью совместим с кодом Java, что позволяет плавно мигрировать проекты и использовать огромный массив Java-библиотек

Безопасность: Встроенная система проверки типов и предотвращение ошибок NullPointerException (NPE) помогают избежать большинства типичных ошибок

Корутины: Мощный инструмент для асинхронного программирования, позволяющий работать с многопоточностью проще и эффективнее

🔵 Главные минусы Kotlin:

Длительное компилирование: Хотя в работе код на Kotlin быстро выполняется, время компиляции может быть больше по сравнению с Java, особенно в крупных проектах

Меньшее сообщество: Несмотря на растущую популярность, сообщество Kotlin всё ещё меньше, чем у Java. Это может осложнить поиск готовых решений или библиотек

Кривая обучения: Для Java-разработчиков переход на Kotlin может потребовать некоторого времени, чтобы привыкнуть к новым концепциям и синтаксису, особенно к корутинам и расширениям

Kotlin — мощный инструмент для современного программирования, но, как и любой другой язык, он не лишён недостатков.


#языки_программирования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
🔔 Как лучше понять потребности бизнеса при найме IT-специалистов?

Для успешного подбора в IT важно разобраться в специфике проекта и технологий. Вот несколько советов:

Подробный брифинг: уточняйте, какие технологии и навыки нужны — опыт в Kubernetes, знание Python или Node.js

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

Командные встречи: оцените, как соискатель впишется в Agile-процессы

Рынок труда: знайте, какие специалисты в дефиците (например, DevOps)

Помните, важно погрузиться в детали проекта

#HR
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2