Logo
TGCATALOG
Catalog Collections Blog
Entry Point - programming basics

Entry Point - programming basics

Basic knowledge on programming fundamentals for beginners.

No ratings
736
29.10.2026
736
29.10.2026
No ratings
736
29.10.2026
Safe redirect via bot
О канале

Basic knowledge on programming fundamentals for beginners.

Подписчиков 17,903
Тематика IT
Язык English
Ссылка t.me/prog_point
Description

Course of fundamental concepts: algorithms, data structures, programming languages. Ideal for beginners without experience.

Latest posts

Entry Point - programming basics
Entry Point - programming basics
🔒Открыть пост
и посмотреть медиа
Почему строка после await печатается раньше, чем вы ожидали Вы поставили await перед загрузкой постов, а строка, которая идёт ниже по коду, напечаталась первой. Выглядит как сломанный await, хотя это ровно его штатная работа. В Python time.sleep() блокирует всё, и следующая строка честно ждёт. В JavaScript await ставит на паузу только ту функцию, внутри которой стоит, а остальной код бежит дальше. Разбор написал дата-сайентист, который учит JavaScript и объясняет промисы через привычный ему Python: промис здесь объект, который обещает вернуть значение позже. Скопируйте пример себе и предскажите порядок вывода до запуска, а потом сверьтесь. Ошиблись — значит, нашли своё главное заблуждение о промисах. Пример целиком. #javascript
Entry Point - programming basics
Entry Point - programming basics
🔒Открыть пост
и посмотреть медиа
Как CI получает доступ к облаку без пароля в настройках Классическая схема: в переменных CI лежит ключ от облака, сборка его читает и загружает артефакты. Ключ живёт годами, его копируют в новые проекты, и утечка одного ключа открывает всё. Именно так в августе через непропатченный TeamCity вынесли облачные учётки самой JetBrains, мы разбирали этот инцидент. Альтернатива называется OIDC, и её теперь поддерживает и TeamCity. Идея простая. Сервер CI получает пару ключей: приватным подписывает, публичный выкладывает по известному адресу. Каждой сборке он выдаёт короткий подписанный документ, JWT, где написано, какой это проект и для какого облака. Сборка показывает документ облаку, облако скачивает публичный ключ, проверяет подпись и выдаёт временный доступ. У TeamCity документ, запрошенный сборкой по HTTP, живёт 5 минут; выданный при старте сборки действует до её таймаута плюс 10 минут. В конфигурации при этом нет ни одного секрета, только правило «сборкам проекта X можно роль Y». Так же работают GitHub Actions и GitLab CI. Если хотите понять механизм на схеме и увидеть, что внутри JWT, разобрали на сайте. #основы
Entry Point - programming basics
Entry Point - programming basics
🔒Открыть пост
и посмотреть медиа
Почему WHERE active OR NOT active не возвращает все строки В обычной логике это утверждение верно всегда. В SQL есть третье значение: NULL означает «неизвестно», и NULL OR NOT NULL тоже неизвестно, а WHERE оставляет только строки, где условие истинно. Строка с active = NULL молча выпадает. Кристофер Уинслетт из Crunchy Data собрал все места, где так происходит. Запомнить стоит три вещи. NULL = NULL даёт не true, а NULL, поэтому существует IS NULL, а для сравнения «с учётом неизвестного» есть IS NOT DISTINCT FROM. Любая арифметика с NULL даёт NULL: quantity * unit_price обнулит колонку в UPDATE, если хотя бы одно поле пустое, лечится COALESCE. И самое коварное: x NOT IN (1, 2, NULL) не вернёт ни одной строки, потому что раскрывается в цепочку AND с неизвестным внутри. Автор советует самое простое: где значение обязано быть, ставить NOT NULL в схеме. #sql #postgresql #основы
Entry Point - programming basics
Entry Point - programming basics
🔒Открыть пост
и посмотреть медиа
Почему length у строки с одним эмодзи возвращает 5 Откройте консоль браузера и проверьте: "🍋🟩".length даёт 5, [..."🍋🟩"].length даёт 3, а человек видит один значок лайма. Это не баг, это три разных способа считать. length в JavaScript считает кодовые единицы UTF-16 по 16 бит. Эмодзи лайма это два таких элемента, соединитель ещё один, зелёный квадрат ещё два, итого пять. Spread-оператор идёт по кодовым точкам Unicode, их три: лайм, соединитель, квадрат. А то, что видит человек, называется графемой, и посчитать её умеет только Intl.Segmenter, который знает правила склейки символов. На этот пример наткнулся разработчик, собиравший текстовый редактор в браузере, и в его разборе видно, где это стреляет: позиция курсора, выделение, лимит символов в поле. Проверьте у себя: если ограничиваете длину ввода через length, пользователь с эмодзи в имени упрётся в лимит раньше, чем вы думали. #основы #javascript
Entry Point - programming basics
Entry Point - programming basics
🔒Открыть пост
и посмотреть медиа
Двойное подчёркивание в Python не делает атрибут приватным Новички часто пишут self.__value и думают, что закрыли поле от внешнего мира. На самом деле Python просто переименовывает его: внутри класса Helper атрибут __value превращается в _Helper__value. Это называется name mangling, и обойти его можно, написав это длинное имя руками. Ловушка глубже, чем кажется. Переименование зависит только от имени класса, не от модуля. Если два независимых класса в разных файлах называются Helper и оба хранят __value, а кто-то наследуется от обоих, поля сталкиваются в одном и том же _Helper__value: один класс кладёт туда строку, другой число, и код падает с TypeError на сложении. Именно такой пример разбирают сейчас на форуме разработчиков Python, обсуждая, нужна ли языку настоящая приватность. Что с этим делать сегодня. Одно подчёркивание _value честно говорит «не трогай снаружи» и ничего не переименовывает. А если два класса должны хранить своё состояние независимо, чаще безопаснее не наследоваться от обоих, а держать их объекты внутри как поля. #python #основы
Entry Point - programming basics
Entry Point - programming basics
🔒Открыть пост
и посмотреть медиа
Одна настройка — и git branch показывает ветки от самой свежей Ветки в проекте копятся быстро: своя текущая, пара недоделанных, чужие после ревью, старые с прошлого месяца. По умолчанию git branch выводит их по алфавиту, поэтому нужная теряется где-то в середине списка, и вспомнить, какая из них свежая, невозможно. Обычно с этим борются самописным скриптом: пробегают по всем веткам, для каждой запрашивают дату последнего коммита и сортируют вывод. Райан Гринберг так и делал несколько лет, пока не выяснил, что современному git это не нужно. Достаточно один раз выполнить: git config --global branch.sort committerdate После этого git branch во всех ваших репозиториях сортирует ветки по дате последнего коммита, свежие оказываются внизу списка. Без --global настройка ляжет только в текущий репозиторий. Для одного запуска есть параметр: git branch --sort committerdate. Минус перед ключом переворачивает порядок, и самая свежая ветка встаёт первой: git branch --sort=-committerdate. Ключи сортировки берутся из справки git for-each-ref, и там их много. Из полезного: authordate — дата автора коммита вместо даты коммитера, refname — имя ветки, то самое поведение по умолчанию, upstream — имя ветки, за которой следит каждая из выведенных. #git #основы
Entry Point - programming basics
Entry Point - programming basics
🔒Открыть пост
и посмотреть медиа
Вставьте команду — explainshell разберёт её по кусочкам Нашли в туториале команду вроде tar -xzvf archive.tar.gz -C /tmp и не понимаете, что делает каждая буква? Сайт explainshell разбирает команду на части и к каждому флагу подтягивает объяснение прямо из man-страниц — официальной документации утилит Linux. Понимает пайпы и перенаправления, знает тысячи команд из man-страниц Ubuntu. Полезная привычка: прежде чем запускать чужую команду из интернета, вставить её сюда и посмотреть, что она на самом деле сделает. explainshell.com #основы
Entry Point - programming basics
Entry Point - programming basics
🔒Открыть пост
и посмотреть медиа
Первый проект на Python: собираем игру из знакомых конструкций После знакомства с основами синтаксиса можно перейти к небольшой программе, которую получится закончить за один курс. На Real Python собирают с нуля консольную игру «Камень, ножницы, бумага» и объясняют каждый этап. По ходу работы вы потренируетесь получать ввод от пользователя, повторять действия с помощью циклов и делить программу на функции. В проекте также используются словари и перечисления enum. Все эти элементы складываются в одну работающую игру, поэтому видно, зачем они нужны вместе. Курс состоит из 8 уроков, примерно 48 минут видео и двух скачиваемых материалов. Кроме видео, в него входят текст, упражнения и тест. Код проверен на Python 3.9, заявлена совместимость с версиями 3.4 и новее. Часть материалов платная: некоторые уроки и итоговый тест доступны только участникам Real Python. #основы #python #проект
Entry Point - programming basics
Entry Point - programming basics
🔒Открыть пост
и посмотреть медиа
«У меня работает, а на сервере падает» — про это написан свод из двенадцати правил Первый рабочий проект почти всегда проходит через один и тот же сюжет: на ноутбуке всё запускается, на сервере ломается. Пароль от базы вписан прямо в код, у коллеги другая версия библиотеки, логи пишутся в файл, который никто не читает, а перезапуск сервиса теряет загруженные пользователем картинки. Адам Уиггинс, сооснователь Heroku, где на глазах команды разворачивались сотни тысяч приложений, собрал причины таких поломок в The Twelve-Factor App — двенадцать правил для веб-приложений на любом языке. Документ в последний раз обновляли в 2017 году, и с тех пор он не устарел; есть перевод на русский. Самые полезные для начинающего: — Один репозиторий на приложение, много развёртываний из него. Прод и ваша локальная копия — это один и тот же код в разных окружениях. — Зависимости объявляются явно. requirements.txt, package.json, go.mod — чтобы «у коллеги другая версия» перестало быть диагнозом. — Конфигурация живёт в переменных окружения. Всё, что отличается между вашей машиной и сервером — адрес базы, ключи, пароли, — не должно лежать в коде. Проверка простая: можно ли выложить репозиторий в открытый доступ прямо сейчас. — База, очередь, файловое хранилище — подключаемые ресурсы. Смена адреса базы должна сводиться к правке переменной окружения. — Приложение не хранит состояние в себе. Всё, что должно пережить перезапуск, кладётся во внешнее хранилище. — Логи пишутся в стандартный вывод потоком. Собирать и хранить их — задача окружения. Документ читается за вечер и объясняет, почему привычные к этому моменту практики устроены именно так. #основы
Entry Point - programming basics
FAQ

Open Entry Point - programming basics in Telegram and press the Start button. No separate registration is required.

Yes. The service is designed to be straightforward: open the resource, follow the on-screen instructions and start using it.

No. You can use Entry Point - programming basics directly in Telegram unless the resource description says otherwise.

Access depends on the resource. Check the current information in Telegram after opening Entry Point - programming basics.

The exact features depend on the resource. Open Entry Point - programming basics to see its current functions, content and access conditions.
Subscriber dynamics
+-0.5% last 30 days
Current
17,903
Month ago
17,988
Average growth
+-3 / day
Updated
2 days ago

Reviews for channel Entry Point - programming basics

Log in to leave a review

Only registered users can share their opinion.

No reviews yet

Be the first to share your impression of this resource!

Similar resources

Loading
Switch to Light Theme
Home Catalog Collections Blog Login