Точка входа в программирование
20.5K subscribers
1.17K photos
207 videos
2 files
2.7K links
Фундаментальные знания по основам программирования

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Сайт: https://tprg.ru/site

Регистрация в перечне РКН: https://tprg.ru/zrgj
Download Telegram
Учим PHP с нуля

Полный видеокурс по языку программирования PHP. В первом видео рассматривается область применения PHP и фреймворк Laravel. Курс поможет изучить переменные, операторы, конструкторы и многое другое в языке PHP.

Посмотреть можно тут:

https://youtu.be/XUUxlNY5oOg


#php
Руководство по PyQtGraph для создания интерактивных графиков

PyQtGraph — это библиотека, в которой элементы интерфейса реализованы на PyQt4, PySide и NumPy. PyQtGraph позволяет легко настраивать графики с помощью графических виджетов Qt и имеет больше преимуществ, чем matplotlib в сборе и отображении данных в реальном времени.

Гайд по реализации интерактивных графиков:

https://www.pythonguis.com/tutorials/pyqt6-plotting-pyqtgraph/

#python
Что нужно знать начинающему фронтенд-разработчику

В этой статье автор поделился советами как стать фронтенд-разработчиком. Кроме профессиональных навыков по вёрстке HTML, CSS и JavaScript, в статье рассматриваются проекты для портфолио:

https://tprg.ru/mRou

#фронтенд
Разработка веб-приложений с помощью .NET и Visual Studio: серия практических уроков

Этот проект из 6 частей, который поможет научиться создавать веб-приложения на C#. На примере создания простого сайта для пиццы автор объясняет Razor Page, API и Azure:

https://github.com/dotnet/intro-to-dotnet-web-dev

#c
This media is not supported in your browser
VIEW IN TELEGRAM
Объясняем Kotlin Multiplatform на крестиках-ноликах

KMM позволяет разработчикам объединить всю бизнес-логику в единые модули и запускать один и тот же код на разных платформах. За последние несколько лет эту модель обсуждают всё чаще.

Разработчик Тихон Устинов рассказал о плюсах и минусах работы с KMM в проекте, а также на примере создания игры «крестики-нолики» на Android, iOS и JS продемонстрировал, как применять KMM:

https://habr.com/ru/company/rostelecom/blog/682160/

#kmm #android #ios
Браузерные игры, которые помогут легко изучить CSS

1. Flexbox Froggy — с помощью подсказок нужно помочь группе лягушек добраться до их кувшинок. На каждом уровне нужно выбрать какое свойство CSS использовать.

2. CSS Diner — в игре даётся таблица блюд, HTML форма и таблица с элементами. Игроку нужно подготовиться к ужину и разместить все предметы. Эта игра отлично подойдёт для изучения CSS селекторов.

3. Flexbox Defense — классическая игра жанра Tower Defense. Вам нужно отбить свою базу от врагов, расставляя защитные башни с помощью знаний в CSS.

#css
JIT-компилятор на Python в 300 строк

По сравнению с C++, стандартная реализация на Python достаточно медленная. Одним из решений этой проблемы является библиотека Numba, которая переводит подмножество Python и NumPy в быстрый машинный код.

Однако автор статьи решил написать свой JIT-компилятор и посоревноваться с Numba. Созданный компилятор был протестирован на простых алгоритмических задачах и, с помощью timeit() и repeat() автор сравнил время выполнения задач.

Читаем здесь: https://habr.com/ru/post/674206/

#python
Полезные библиотеки, которые помогут при работе с исключениями на C#

Polly — библиотека, которая позволяет разработчикам свободно и потокобезопасно использовать политики Retry, Circuit Breaker, Timeout, Bulkhead Isolation, Rate-limiting и Fallback.

Xeption добавляет дополнительную информацию к Exception, что помогает при отладке. Для этого нужно просто добавить модель Xeption к Exception вашего проекта.

Ben.Demystifier помогает создать более простые и понятные stack-trace.

#c
StatelessSession: что это такое и как использовать

StatelessSession — это командно-ориентированный API для контроля над SQL-запросами в Hibernate. StatelessSession используется для вставки или обновления огромных наборов данных.

В этой статье рассматривается, как внедрить экземпляр и методы StatelessSession в приложение:

https://struchkov.dev/blog/hibernates-statelesssession/

#hibernate
Подборка актуальных вакансий

Frontend-разработчик
Где: Москва
Опыт: можно без опыта

Golang-разработчик
Где: удалённо
Опыт: от 1 года

Golang-разработчик
Где: Москва, можно удалённо
Опыт: от 1 года

Старший разработчик в команду IaaS
Где: Москва
Опыт: от 1 года

iOS-разработчик
Где: Москва
Опыт: можно без опыта

Разработчик DWH / ETL
Где: Москва, можно удалённо
Опыт: от 1 года

Auto QA-инженер
Где: удалённо
Опыт: от 1 года

DevOps-инженер
Где: Москва, можно удалённо
Опыт: от 1 года

Системный аналитик
Где: Москва
Опыт: от 1 года

Специалист группы дежурных администраторов выноса изменений
Где: Москва
Опыт: от 1 года

#вакансии #работа
This media is not supported in your browser
VIEW IN TELEGRAM
В чём различия между Data Science, машинным обучением, ИИ, глубоким обучением и Data Mining

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

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

https://habr.com/ru/post/682932/

#datascience
Курс по Jetpack Compose для начинающих Android-разработчиков

В августе вышло обновление по изучению Jetpack Compose. Пакет состоит из 6 тем с уроками по архитектуре, Layout, анимации и т.д.

В конце каждой темы вас ожидает квиз на закрепление знаний. Если вы давно хотели изучить JetPack Compose, то это руководство как раз поможет в этом:

https://developer.android.com/courses/jetpack-compose/course

#compose #android
Как работают движки JS и зачем они нужны

Чтобы преобразовать исходный код в машинный, существует два подхода: компиляция и интерпретация. Ранее движок JavaScript реализовывался только как интерпретатор, который считывал и исполнял исходный код на JS.

Для улучшения производительности браузеры начали использовать компилятор Just-In-Time (JIT) , который представляет собой комбинацию интерпретатора и компилятора.

В этой статье подробно разбирается механизм работы V8, SpiderMonkey, JavaScriptCore движков и парсинг на различных движках:

https://nuancesprog.ru/p/15991/

#js
This media is not supported in your browser
VIEW IN TELEGRAM
Почему ваш веб-сайт должен быть меньше 14 КБ

Если следовать рекомендациям Google, то оптимальное время загрузки страницы составляет менее трёх секунд.

Чем меньше размер страницы, тем быстрее загружается веб-сайт, но почему 14 КБ? Несмотря на небольшую разницу в размере между 14 КБ и 15 КБ, страница на 14КБ будет загружаться быстрее из-за алгоритма медленного старта TCP.

Transmission Control Protocol (TCP) — это протокол управления передачи пакетов данных. Серверы используют алгоритм медленного старта, чтобы определить, сколько пакетов можно отправить за раз.

Изначально сервер не знает, сколько данных может обработать соединение, поэтому сначала отправляет только 10 TCP-пакетов.

Подробнее о TCP и о правиле 14 КБ в этой статье:

https://habr.com/ru/post/684836/

#web
Сборник шпаргалок для фронтенд-разработчика

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

Шпаргалка по тегам HTML5
Шпаргалка по методам JavaScript для работы с DOM
Шпаргалка по работе с медиа в браузере
Шпаргалка по HTTP-заголовкам, связанным с безопасностью
Шпаргалка по доступности веб-приложений
Шпаргалка по Internationalization API
Шпаргалка по Temporal API и Dayjs

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

#js #html #фронтенд
Three.js: создаём игру Тетрис

Если вы давно хотели разработать свой тетрис, то автор этой статьи покажет вам, как с помощью Three.js можно создать 3D Тетрис с цветными блоками.

В статье детально разобраны функции для создания фигур и их вращения, методы для обработки коллизии,
и Audio API для добавления звука в игру:

https://habr.com/ru/company/ruvds/blog/680666/

#js
Как закачивать файлы на сервер с помощью Retrofit

Библиотека Retrofit используется для работы с REST API и отправки запросов на удалённый сервер в Android.

Этот видеоурок поможет разобраться начинающим, как загружать файл на сервер, используя Retrofit:

https://youtu.be/fEYhQOUe0g0

#android
Полное руководство по работе с терминалом на Mac OS

В этом гайде вы найдёте как:
— работать с командной строкой, файлами и каталогами,
— загрузить файлы с помощью curl,
— установить пользовательскую тему и шрифт,
— изменить настройки .zshrc,
—работать с Github с помощью git.

Подробнее: https://tprg.ru/of1F

#ios
Telegram-бот на Java и Spring Boot

Простой видеоурок для начинающих по созданию Telegram бота с помощью Spring Boot. Автор подробно объясняет, как создать Maven проект, зарегистраровать бота в Telegram и реализовать базовый функционал.

Ссылка на видео: https://youtu.be/t9OTDHuF7_M

#java #бэкенд
Какой проект реализовать для практики навыков программирования?

Один из проектов, на котором вы можете проверить ваши знания и подготовиться к тех-собеседованию — это создать собственный календарь.

Мы собрали для вас варианты реализации календаря на разных языках программирования, которые вы можете скачать или добавить в закладки на GitHub.

1. Экономический календарь для трейдинга на Python. Для его реализации вам понадобятся сторонние библиотеки, например Zipline.

2. Календарь задач на день, неделю и месяц на JS. Простой календарь, дизайн которого похож на Full Calendar.

3. Приложение календарь для бронирования на PHP (Laravel). Это более сложный проект, поэтому для реализации, вы должны понимать Bootstrap, jQuery и
Moment.js.

4. Календарь с расписанием уроков на С# для детей и учеников (вы можете выбрать любую другую сферу).

#python #js #c