SaintCode Bootcamp — школа программирования в Санкт-Петербурге – Telegram
SaintCode Bootcamp — школа программирования в Санкт-Петербурге
30 subscribers
282 photos
31 videos
146 links
👌Помогаем разобраться в веб-программировании за три месяца.

📲 По вопросам обучения к нему — @SaintCodeMNG

💬 Чат для вопросов по фронтенд-разработке — https://news.1rj.ru/str/scbootcamp

👀 Сайт — https://saintcode.ru

📞 Чтобы поговорить, звони +7 993 370 39 73
Download Telegram
Объяснение задачи:

Почему конкатенация, а не сложение? Если любой из операндов в выражении оказывается объектом (а массив — это особый вид объекта), то интерпретатор преобразует его в элементарное значение. После этого проверяется тип значений — и если какой-то из аргументов окажется строкой, то другой тоже преобразовывается в строку, происходит конкатенация.

Почему массив преобразуется в строку? При преобразовании в элементарное значение к объектам применяется встроенный алгоритм no-preference, который в зависимости от класса будет использовать либо алгоритм prefer-string (для Date), либо prefer-number (для всех остальных). Prefer-number сперва попробует valueOf(), затем toString().

Но valueOf() не возвращает элементарное значение для объекта. Поэтому пытаясь преобразовать массив, мы получаем метод toString() как следующий по порядку. И массив с единственным элементом преобразуется в ту же строку, что и элемент. В нашем случае — пустой массив станет пустой строкой.
Git выглядит просто, пока ты коммитишь в свой уютненький репозиторий и никак не взаимодействуешь с другими разработчиками 👌

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

Важно, чтобы рядом был опытный наставник — у нас в буткемпе ты выполнишь командный проект с другими студентами, а преподаватель поможет разобраться во всех этих fetch, blame, merge, branch, checkout и diff 🤯
🐳2🤣2
Мы запускаем вечерний онлайн-курс — его можно проходить без отрыва от работы и других дел 😎

Специально для ребят, у которых не получается выделить три месяца на полное погружение в веб-разработку 🙌
👍5
🤔 В чем суть курса? Мы растягиваем трехмесячную программу буткемпа на девять месяцев — ты занимаешься только в онлайне и не каждый день, а по вечерам в будние дни и на выходных. Между занятиями преподаватель доступен для вопросов в общем чате.

🤔 Сколько занятий в месяц? Выбираешь ты. Может быть 12 в месяц — три раза в неделю на буднях, по два часа. Либо 16 занятий: два раза в неделю на буднях по два часа и четыре часа в один из выходных дней.

🤔 С каким уровнем можно приходить? С любым — чтобы всем было интересно, мы собираем два разных потока. В первом будут заниматься абсолютные новички, во втором — ребята с опытом изучения фронтенд-разработки.

🤔 Сколько стоит и как платить? В зависимости от уровня группы и количества занятий в неделю вечерний курс будет стоить 20–40 тыс. руб. за месяц. Оплата по месяцам, тебе не придётся искать большую сумму на оплату всего курса.

🤔 Когда начало? Первые потоки вечернего курса начнут учиться первого июня (1.06.2023) — о следующих напишем отдельно.

Если хочешь на вечерний курс SaintCode, оставь заявку на сайте — https://saintcode.ru/?utm_source=telegram_direct&utm_medium=post&utm_campaign=organic_social&utm_content=parttimecourse 👌

Или пиши напрямую нашему менеджеру Косте — @lopatikkk 🙇‍♂️
🔥4
Задачка по JS — вспоминаем, что такое && и как это работает 🤓

Взгляни на код и ответь, что мы увидим в консоли 🤔
👀1
😉 Объяснение задачи:

&& — это логический оператор «И»

Он действует слева направо и преобразует операнды в логическое значение, true или false. Если все истинны, возвращает последний операнд. Если же находится ложный, то «И» останавливается и возвращает этот операнд.

В нашем случае первый ложный (falsy) операнд — это null. Кстати, 0 и undefined тоже относятся к ложным, но логический оператор «И» до них просто не доберётся.
👌1
Ждём тебя в четверг, 18 мая, на бесплатном вебинаре SaintCode Bootcamp 😇

Вместе с основателем школы и одним из наших преподавателей обсудим, как учиться веб-разработке — полный день или в вечернем формате.
🔥1
А чем вообще отличаются форматы

⚡️Классический формат — это три месяца хардкорного погружения во фронтенд. Ты занимаешься полную пятидневку в буткемпе в Петербурге или онлайн. Преподаватель всегда доступен в рабочее время, а по ситуации — и в выходные дни. Подходит людям, которые твёрдо решили стать программистами, не хотят терять время впустую и могут позволить себе отказаться от всех дел на три месяца. Следующий поток начнётся 13 июня.

⚡️Вечерний формат — это девять месяцев онлайн-обучения фронтенд-разработке без отрыва от работы и других дел. Ты учишься несколько раз в неделю по вечерам и выходным, а между занятиями можешь задавать вопросы преподавателю в общем чате. Подходит людям, которые не могут полностью отказаться от нынешней работы или семейных дел, но очень хотят вкатиться в программирование. Первый поток вечернего формата начнётся 1 июня.

Вебинар проведут Женя Гриценко (основатель школы SaintCode Bootcamp, карьерный консультант) и Данил Данилов (фулстек-разработчик, преподаватель в нашей школе). Другие гости: выпускники буткемпа, которые уже устроились на работу.

🕖 Начало в 18:00 (МСК), четверг, 18 мая. Каждый участник получит в подарок подробную дорожную карту для самостоятельного изучения фронтенда. Регистрируйся на сайте — https://saintcode.ru/webinar_one?utm_source=telegram_nondirect&utm_medium=post&utm_campaign=organic_social&utm_content=webinar1805
⚡️Бесплатный вебинар SaintCode Bootcamp начнётся через 10 минут ⚡️

Основная тема — сравнение классического буткемпа и нашего нового продукта, вечернего курса.

Но ты можешь приходить с любыми вопросами и получить ответы вживую, даже если не собираешься учиться у нас 👌

Ждём тебя в Zoom — https://zoom.us/j/91883548187?pwd=Rk00QjlHUVZxTWk5T1VOQndPNHcxQT09
Хочешь обучаться программированию, но пока не знаешь где и в каком формате? 🤓

Посмотри запись последнего вебинара SaintCode Bootcamp — его провели основатель школы Женя Гриценко и преподаватель Данил Данилов.

Ребята рассказали, чем отличается буткемп от нового вечернего курса, какие проблемы возникают у новичков и как не растерять мотивацию по пути к своей цели 💪

👉 Видео на Youtube — youtu.be/tvW7fvD2-0s 👈
👍5
Помнишь сравнение строк в JavaScript? 😺

Давай проверим — укажи, что будет в консоли, если мы запустим этот код.
😅 Объяснение задачи:

Чтобы понять, как JS сравнивает строки, надо понимать два правила:

☝️Строки сравниваются посимвольно. Если первый символ первой строки больше или меньше первого символа второй строки — сравнение заканчивается. Если они одинаковы, то сравнение продолжается по следующим символам и заканчивается на том месте, где символы отличаются друг от друга.

☝️Символы сравниваются по таблице юникода, а не по алфавиту. Например, новички часто не могут понять, почему заглавная буква меньше строчной. Но если взглянуть на таблицу юникода в десятичной системе, у заглавной «Д» код 1044, а у строчной «д» — 1076. И так со всеми буквами во всех языках — код строчной буквы по юникоду больше заглавной.

В нашей задаче первые два символа одинаковые. Код «д», третьего символа в первом слове — 1076. Код «т», третьего символа во втором слове — 1090. JavaScript сравнивает коды и выясняет, что «т» больше «д».

На этом сравнение завершено — получается, что «Кот» больше, чем «Кодер», несмотря на то, что в последнем больше символов.
«Да что за CORS такой?», — часто злятся наши студенты, когда начинаются проекты с обращением к сторонним API. Давай разбираться 👌
👍1
CORS (Cross-Origin Resource Sharing) — это механизм, который контролирует использование ресурсов между источниками. CORS встроен во все современные браузеры, он защищает клиентскую сторону от утечки данных и вредоносного кода.

Ошибка появляется в консоли, когда ты пытаешься обратиться с одного URL на другой. Клиент и сервер обмениваются заголовками, твой браузер не видит заголовков CORS и блокирует действие.

У новичков чаще всего происходит при использовании метода fetch для обращения к стороннему API. Например, ты хочешь обратиться к бесплатному API с прогнозом погоды и забрать у него актуальные данные. Ошибка может возникать и когда вставляешь в теги <img>, <video> и другие контент из внешнего источника, а не из директории проекта — но здесь сосредоточимся на fetch.

Предположим, полный адрес твоей локальной среды разработки в строке браузера выглядит как “http://localhost:3000” или “http://localhost:5500”. Ты хочешь обратиться через fetch к “https://super-api.net”. У вас не совпадают хосты (localhost и super-api.net), протоколы (http и https) и порты (http на 80, https на 443). Комбо: как раз все три причины, почему CORS может быть недоволен твоим запросом.

Самое простое решение проблемы для fetch — передать в параметрах метода заголовок запроса Access-Allow-Control-Origin: *. Таким образом ты разрешаешь все запросы. Но «звёздочку» желательно использовать только в учебных целях. С оговорками она подходит и если ты просто получаешь данные, твоё приложение не требует аутентификации или авторизации, источник доверенный (рабочий или учебный сервер).

Если хочешь углубиться в CORS, можешь прописать в заголовке адрес сервера с протоколом и портом, либо запустить локальный прокси-сервер. Но когда работаешь в команде, у тебя обычно есть доступ к бэкендерам. Оптимальное решение в коммерческой практике — это попросить коллег установить на сервере заголовки со списком доступных ответов 🙌
У новичков часто возникают ситуации, когда в конце или в середине проекта приходится всё переписывать заново 😰

Но это нормально — пока ты учишься, кривой код неизбежен. Наверняка на предыдущей работе у тебя тоже не всё получалось сразу 🤷‍♂️ Не падай духом и не ленись улучшать свои веб-приложения, даже если для этого придётся начинать практически с нуля.

Когда твой проект лежит на GitHub или подобной платформе — не перезаливай новую версию отдельно, а подробно опиши изменения в коммитах. Это займёт больше времени, зато ты покажешь своё умение работать над ошибками. Работодатели любят, когда можно посмотреть прогресс разработчика наглядно, чтобы понять, какой код ты писал раньше и как прокачался с тех пор 💪
👍1😁1🤔1🤯1
Привет! 👋 Лето близко, но наверняка ты задумываешься, как провести его с пользой 💪 У тебя ещё есть время, чтобы попасть на один из наших курсов и стать фронтенд-разработчиком 🤓

👉 13 июня стартует следующий поток буткемпа. Это интенсивный трёхмесячный курс, где ты занимаешься каждый день — в школе в центре Петербурга или онлайн из любого удобного места. Записывайся — https://saintcode.ru/?utm_source=telegram_direct&utm_medium=post&utm_campaign=organic_social&utm_content=lastcalljune2023

👉 15 июня стартует первый поток вечернего онлайн-курса. Это новый продукт: за основу мы взяли программу буткемпа, только идёт этот курс 9 месяцев. Здесь ты учишься онлайн и можешь стать веб-разработчиком, продолжая работать на основной работе. Записывайся — https://saintcode.ru/eveningcourse/?utm_source=telegram_direct&utm_medium=post&utm_campaign=organic_social&utm_content=lastcalljune2023
👌1
Помнишь, как работает оператор typeof в JavaScript?

Давай проверим — укажи, какое значение вернётся в консоль, если мы запустим этот код 👩‍💻