Канал сайта code.mu
1.34K subscribers
20 photos
15 files
102 links
Все новости сайта code.mu. А также другая полезная информация: видеоуроки, бесплатные тренинги, курсы и конкурсы.
Download Telegram
Как вызвать состояние потока
Как я уже говорил, состояние потока очень ценное. Поэтому вас следует научиться сознательно впадать в такое состояние. Давайте расскажу, как делаю это я.

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

Поэтому я пользуюсь специальными приемами.
О них будет в следующих постах!
Прием 1
Я не стараюсь сразу писать все начисто. Я не стараюсь сразу писать хорошо. Я просто сажусь и 5 минут заставляю себя писать хоть что-нибудь. В голове я держу мысль о том, что это просто черновик и я его выброшу. В итоге я в начале пишу ужасный текст, но затем перехожу в состояние потока и начинаю писать намного лучше. А начальный ужасный текст я просто затем переписываю. При этом опять-таки я не пишу текст начистовую. Пока я в состоянии потока, я пишу очень быстро, не стараясь делать сильно красивые формулировки. Затем, уже в плохое время и без состояния потока, я перечитываю текст и вношу правки, доводя текст до приемлемого состояния.
Прием 2
В начале я трачу 5-10 на перечитывание предыдущих постов. В процессе перечитывания меня посещают различные идеи, о чем еще можно написать и я плавно впадаю в состояние потока и начинаю быстро писать дальше.
Прием 3
Чтобы легко было войти в состояние потока, я всегда стараюсь начинать работу не с нуля, а заранее сделать некоторый задел. Под заделом я понимаю уже начатый кусочек работы. В случае с постами это могут быть заранее набранные названия постов и может несколько предложений о чем этот пост. Тогда, когда я сажусь за работу, я начинаю не с нуля, а подхватываю уже начатое дело. Таким образом гораздо проще начать и попасть в состояние потока.
Гаджеты для экономии времени
В этом посте я хочу обсудить гаджеты для экономии времени, которыми я пользуюсь. В современном мире у всех есть стиральная машина, которая экономит массу времени, которое раньше люди тратили на ручную стирку. А вот следующие три гаджета менее распространены, хотя тоже экономят много времени. Это посудомойка, робот-пылесос и мультиварка. Посудомойка ежедневно экономит мне 1 час времени, которые я бы потратил на мытье посуды. Робот-пылесос также экономит 1 час в день, которое я бы потратил на уборку. При этом робот-пылесос убирает гораздо лучше, чем это сделал бы я, и дома гораздо чище. Тем более, что его можно запускать каждый день. А вот подметать пол каждый день очень накладно по времени.

Итого, если посчитать, то за неделю получается 14 сэкономленных часов!

Мультиварка экономит скорее не время, а внимание. Вместо того, чтобы бегать смотреть, как там каша варится в кастрюле и контролировать процесс, выпадая из состояния потока, можно просто засыпать кашу в мультиварку и забыть о ней - мультиварка сама ее сварит и выключится.
О скорости печати
Я очень быстро печатаю, как на русском, так и на английском.
Однажды, во время созвона, мой ученик, услышав, как я строчу по кнопкам, как пулемет,
сказал: "Не печатай так быстро, я комлексую!". На самом деле, программисту настолько быстро печатать и не нужно. Дело в том, что большая часть времени тратится на обдумывание, что написать, а не на сам процесс набирания букв на клавиатуре. Конечно, быстро печатать полезно, но не сильно критично.
Моя работа, однако, связана не только с написанием кода, но и с написанием книг, а также на ответы вопросы учеников. И тут скорость печати уже критична.

Как я научился так быстро печатать?
Все началось в древние времена, когда компьютеры были не в каждом доме, а я был школьником. В нашей школе был компьютерный класс и нас учили работать на компьютерах. Я, как и все начинающие юзеры, печатал одним пальцем. Затем я решил научиться печатать быстрее (как знал, что в жизни пригодится). Однако, компьютерное время было ограничено. Поэтому я просто нарисовал клавиатуру на листе бумаги и тренировался печатать на нем текст с помощью двух рук. Да, это странно и неудобно, но принесло свои плоды и со временем я стал печатать двумя руками, пусть и медленно. Затем, когда у меня появился стабильный доступ к компьютеру, я начал проходить специальные клавиатурные тренажеры. Скорость печати выросла еще больше. А дальше я уже специально не тренировался, а просто много печатал по работе:) С 2012 года я преподаю программирование и фактически каждый будний день отвечаю на кучу вопросов учеников. И теперь я могу набирать текст в слепую, строча как пулемет, параллельно обсуждая вопросы голосом на созвоне. Цезарь нервно курит в сторонке:)
Нужен ли английский программисту?
Да, безусловно нужен. Для начала можно на минимальном уровне, чтобы давать имена переменным. Но удобнее конечно знать на уровне чтения профессиональной литературы. Дело в том, что не всякая документация переведена на русский, особенно у новинок или редко используемых вещей. И навык чтения документации в оригинале бывает полезным. Поэтому параллельно с изучением программирования стоит учить и английский. Ну, а если знать его на достаточно высоком уровне, то можно работать с иностранными заказчиками или удаленно устроится работать в иностранную фирму. Так что учите!
Лайфхак изучения лексики
В этом посте я поделюсь с вами лайфхаком, который позволит вам за минимальное вложение времени выучить огромное количество английской лексики. Этим лайфхаком в свое время воспользовался я сам и теперь свободно читаю книги на английском и смотрю фильмы и сериалы.
Итак, суть. Покупаете бумажный англо-русский словарь на 10 тысяч слов, а лучше на 30 тысяч. Все словари состоят из скрепленных групп страниц. В группе примерно 20-40 страниц. Аккуратно вырываете первую группу и кладете себе в карман. И затем носите ее с собой везде. Как только выдается свободная минутка - достаете листки и запоминаете 1-2-3 слова.
Норматив - группа за несколько дней. Затем вырываете следующую группу и так далее.
Этим можно заниматься, где угодно. На работе можно каждые 5-10 минут посматривать в листок и запоминать еще одно слово. Стоя в любой очереди. В транспорте. Вечером за сериальчиком. На прогулке. На созвоне.

И так за 3-6 месяцев, практически без затрат времени, можно изучить большое количество лексики.
Проблемы с доступностью code.mu


В соответствии с распоряжением Оперативно-аналитического центра при Президенте Республики Беларусь, с 19:00 24 марта до 23:59 25 марта 2025 года белорусские хостинг-провайдеры ограничили доступ к виртуальному хостингу из-за пределов Республики Беларусь. Эти меры обусловлены угрозами для объектов информационной инфраструктуры и информации, обрабатываемой с их использованием.

Воспользуйтесь офлайн версией:
crack.txt
2.1 KB
Начал изучать язык Kotlin:)
При изучении нового языка зачастую сталкиваешься с проблемой, когда в учебнике есть далеко не всё. Учебники по Kotlin пока не сильно развиты.

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

Для примера. Я изучаю Kotlin по сайту metanit, вот тут: https://metanit.com/kotlin/tutorial/
Учебник достаточно хороший, но благодаря своему списку, я вижу, что в учебнике есть далеко не всё. Например, нет работы с файловой системой, нет работы с регулярками, нет работы с базами данных. Эти темы придется искать где-то еще.

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

1. JavaScript
function square(n) {
return n * n;
}

2. PHP
function square($n) {
return $n * $n;
}

3. TypeScript
function square(n: number): number {
return n * n;
}

4. Python
def square(n):
return n ** 2

5. Java
public static int square(int n) {
return n * n;
}

6. Kotlin
fun square(n: Int): Int {
return n * n
}

7. C++
int square(int n) {
return n * n;
}

8. C#
public int Square(int n)
{
return n * n;
}

9. Go
func square(n int) int {
return n * n
}

10. Rust
fn square(n: i32) -> i32 {
n * n
}

11. Swift
func square(_ n: Int) -> Int {
return n * n
}

12. Ruby
def square(n)
n * n

13. Dart
int square(int n) {
return n * n;
}

14. Haskell
square :: Int -> Int
square n = n * n

15. Scala
def square(n: Int): Int = {
n * n
}

P.S.
Интересно посмотреть на вариации слова "Функция":
fn, fun, func, function
Вышел Задачник по Kotlin
https://code.mu/ru/kotlin/tasker/stager/

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

P.S.
Пока без подсветки кода, попозже добавлю)
Современные браузеры стали поддерживать импорты ES6 модулей без сборщиков, типа Webpack. На практике без сборщиков все равно не обойтись - они повышают скорость загрузки страницы из-за того, что грузится один файл, вместо многих модулей.

Однако, поддержка модулей в браузере позволила создать новый сборщик, который работает на порядок быстрее Webpack. Этот сборщик называется Vite (читается "вит").

Из-за этого Webpack можно считать устаревшим.
Переходите на Vite!

Попозже я планирую добавить учебник по Vite на code.mu, а пока можете посмотреть вот это видео (не мое, но раскрывает картину):
https://www.youtube.com/watch?v=evmIHSAn1AU
Установка React

Ранее React работал через Webpack и мы использовали
классический способ установки через Create React App (CRA). Вот он:
npx create-react-app my-app
cd my-app
npm start

Этот способ сейчас, в 2025 году, еще работает, но уже считается устаревшим и выдает deprecated.

Теперь React работает через Vite, так как новый сборщик радует нас высокой скоростью сборки проекта.

Однако, способ установки React теперь изменился и выглядит вот так:
npm create vite@latest my-react-app -- --template react
cd my-react-app
npm install
npm run dev

P.S.
Внес соответствующие изменения в учебник React, вот тут https://code.mu/ru/javascript/framework/react/book/prime/basis/install/

P.P.S
Продвинутые части учебника сразу были сделаны с учетом Vite и было некоторое несоответствие) Привел в порядок)
Бесплатные курсы по Git

Преподаватель: Трепачёв Дмитрий, автор сайта code.mu
Продолжительность: 3 недели.

Начинаем, когда соберется 1000 желающих:)
Для записи вступайте в следующий канал:
https://t.me/+EcXTs5I1dlk3Y2Uy

P.S.
Вступайте сами и приглашайте друзей:)
Проект Сказки для детей
https://skazki.prx.by/

Авторы работы: Леончик Максим, Екатерина Шмелева
Технологии: HTML, CSS, JavaScript, PHP, парсинг.

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

P.S.
Сайт сделан моими учениками в рамках практики на курсы. Подобные проекты делают все, кто занимается на тарифе Практик. Подробнее про него тут: mentor.code.mu
Проект Английские фразовые глаголы
https://phvb.prx.by/

Автор работы: Антон Ворончихин
Технологии: HTML, CSS, JavaScript, React, NodeJS, crypto-js

Данный сайт предназначен для изучения фразовых глаголов. Это такие глаголы, у которых предлог существенно меняет значение слова. Например, give - давать, а give up - сдаваться.
В английском языке таких глаголов существует достаточно много, а вот каких-то словарей по ним в чистом виде я не встречал.
Поэтому мы создали такой сайт) Для того, чтобы добыть фразовые глаголы, была проделана большая работа. Мы взяли большой словарь Мюллера over 100 тыс слов и написали программу, которая добыла фразовые глаголы (это было нелегко). А затем я лично вручную проверил каждый глагол, отбросив лишние переводы (это был совсем тяжелый труд).
НОВИНКА!
Бесплатный ЛЕТНИЙ курс по React фреймворку NextJS.
Начало: 10-го июня
Окончание: 1-го сентября

Для записи на курс вступите в данный канал:
https://t.me/+-aI2lFe6VzExZmEy