Результати пошуку за запитом: обучение c
Подвійна вигода! Акційний пакет CodeMaster
Автор: Редакція ITVDN
Минули свята і акція скоро закінчиться. До 18 лютого ви можете придбати акційний пакет CodeMaster зі знижкою 50%.
Що входить до пакету “CodeMaster”:
🤩Доступ до всіх відео курсів ITVDN (300+ з різних мов і технологій) на 9 місяців
✅Вихідний код навчальних проєктів
✅Презентації, опорний конспект, д/з
✅Перевірка 10 домашніх завдань
✅Консультації з тренером – 60 хвилин
✅Доступ до інтерактивних практикумів
✅Онлайн тестування (16 тестів) та сертифікати
✅Дипломи з пройдених спеціальностей
✅Доступ до нових курсів, які виходитимуть під час дії підписки
🎁Ключі на професійний софт від JetBrains (IntelliJ IDEA, PyCharm, Webstorm та Rider) на 6 місяців
Повна вартість пакету – 134 USD
Акційна вартість – 67 USD🔥(це 7,5 USD на місяць!)
Що можна вивчати на ITVDN:
програмування мовами Python, Java, JavaScript, TypeScript, C#, С++, PHP та ін.;
тестування програмного забезпечення (Manual QA + Automation QA);
веброзробку і вебдизайн (UX/UI);
розробку ігор на Unity;
Android Mobile Development;
технології для роботи з базами даних.
Обирайте з "Оплату частинами" – це вигідно
Скористайтеся зручним варіантом оплати частинами від Монобанку або ПриватБанку. Ви отримаєте повний пакет за акційною ціною без комісій і зможете розподілити оплату на кілька місяців.
З історії свята World Computer Day
Всесвітній день комп'ютера (World Computer Day) відзначається щорічно 15 лютого на честь запуску першого електронного комп'ютера ENIAC у 1946 році.
ENIAC (Electronic Numerical Integrator and Computer) — це перший у світі повністю електронний, програмований комп'ютер загального призначення, який був розроблений в США під час Другої світової війни. Його створили вчені Джон Преспер Еккерт і Джон Вільям Мочлі в Університеті Пенсильванії, і він був офіційно представлений 15 лютого 1946 року.
Що міг робити ENIAC?
🔹 Розраховувати балістику — спочатку комп'ютер розробляли для армії США, щоб швидко обчислювати траєкторії снарядів.
🔹 Обчислювати складні математичні задачі — він міг виконувати до 5000 операцій додавання або 357 операцій множення на секунду.
🔹 Допомагати у наукових дослідженнях — його використовували для розрахунків ядерних реакцій, прогнозування погоди, створення моделей аеродинаміки та навіть для досліджень у криптографії.
Технічні характеристики
🖥 Вага: ~27 тонн
⚙ Розмір: ~30 метрів у довжину і 2,4 метра у висоту
💡 Використовував 17 468 електронних ламп (вони часто перегоряли)
⚡ Споживав 150 кВт електроенергії (що еквівалентно освітленню цілого кварталу)
⏳ Пам’ять: 20 10-значних чисел
⏲ Швидкість обчислень: у 1000 разів швидший за тодішні механічні калькулятори
Як програмували ENIAC?
Програмування відбувалося вручну, за допомогою перемикання тисяч проводів і перемикачів. Одна програма могла налаштовуватися від кількох годин до кількох днів.
ENIAC був першим у світі повністю електронним, програмованим комп'ютером, який ознаменував початок ери цифрових обчислень. Відтоді 15 лютого стало професійним святом для фахівців у сфері комп'ютерних технологій.
Вітаємо вас із святом і запрошуємо вивчати програмування на ITVDN!
Вивчай програмування безкоштовно. Розіграш 10 “Преміум” підписок!
Друзі, привіт! У нас крута новина. Такого ще не було і, можливо, більше не буде, тому ловіть можливість.
14 грудня ми проведемо розіграш 10 підписок “Преміум” вартістю 169,99 USD. Для когось це стане крутим подарунком – можливістю протягом року вивчати програмування, тестування, вебдизайн та інші технології безкоштовно.
Буде 10 переможців, яких ми визначимо в прямому ефірі за допомогою сервісу random.org.
Що отримають переможці:
🔥 Доступ до 250+ відео курсів на ITVDN на 12 місяців
✅ Вихідний код навчальних проєктів
✅ Презентації, опорний конспект, д/з
✅ Перевірка 20 домашніх завдань
✅ Консультації з тренером – 120 хвилин
✅ Доступ до інтерактивних практикумів
✅ Онлайн тестування (24 тести) та сертифікати за пройденими курсами
✅ Дипломи з пройдених спеціальностей
🚀 Доступ до нових курсів, які виходитимуть протягом року
🔥 “Преміум” – це чудова можливість підвищити ваші шанси на працевлаштування: ви зможете опанувати декілька напрямків або стати Full-stack розробником.
Вже влаштовуючись на роботу, ви можете використовувати наш ресурс як додаткову базу знань, що дозволяє поглиблювати та систематизувати ваші знання для більш швидкого професійного зростання.
Як взяти участь в розіграші?
Бути зареєстрованим користувачем на нашому сайті. Реєстрація – в правому верхньому кутку сайту.
Підписатися на наш канал в Telegram.
Підписатися на YouTube-канал CodeUA.
Поділитися інформацією про розіграш в одній із соціальних мереж (Facebook, LinkedIn, Twitter (X), Instagram чи TikTok). Переконайтеся, що ваш пост відкритий для загального доступу.
Заявки приймаємо до 12:00 14 грудня. Розіграш відбудеться 14 грудня о 16:00 в прямому етері на YouTube-каналі CodeUA. Десятеро переможців будуть визначені за допомогою сервісу random.org. Посилання на трансляцію ми надішлемо на email, який ви вкажете у реєстраційній формі.
Що можна вивчати на ITVDN?
ITVDN містить велику базу знань з найрізноманітніших мов програмування та супутніх технологій, починаючи з FrontEnd, Python, Java, C#, Node.js та QA напрямків і закінчуючи технологіями для опанування мобільної розробки під Android, розробки ігор на Unity та DevOps.
З усіма спеціальностями, які ви можете опанувати у форматі відео курсів, ви можете познайомитися тут. А перелік відео курсів дивіться в нашому Каталозі.
Все це буде доступно для наших 10 щасливчиків протягом 12 місяців!
Бажаємо удачі в розіграші та щасливих новорічних свят!
UPD від 14.12.2023
Переможці:
Shumelchyk Kateryna
Галапа Ігор
Мельнічук Михайло
Мацан Віталій
Кириленко Катерина
Валентин Вавілов
Грипіч Надія
Зятковський Богдан
Володимир Ткачук
Mariia Kraievska
Запис розіграшу: https://www.youtube.com/watch?v=xVZ3-8c7Fps
Техніки тестування для С# розробників. Рівень Advanced. Частина 2.
Автор: Наурінський Юрій
<p>На вебинаре мы продолжим знакомство с «продвинутыми» техниками тестирования, которыми должен владеть опытный C# разработчик. Первая встреча по этой теме состоялась 4 марта, <a href="https://itvdn.com/ru/webinars/description/testing-techniques-csharp">запись вебинара</a> доступна на нашем сайте.</p>
<p>На первой встрече были рассмотрны такие техники тестирования:</p>
<ol>
<li style="margin-left: 36pt;">Property based testing.</li>
<li style="margin-left: 36pt;">Performance testing.</li>
<li style="margin-left: 36pt;">Load testing.</li>
</ol>
<p>Ниже перечислены техники, которые мы рассмотрим на встрече 27 мая.</p>
<p><strong>Approval</strong><strong> testing</strong><strong>.</strong></p>
<p>Техника тестирования, применяемая зачастую в юнит-тестах, для наглядного человеко-читаемого сравнения тестовых результатов. Данная техника тестирования призвана решить проблему, возникающую при попытке протестировать функции, который имеют на выходе более сложный результат чем обычные строка, число, или даже простой объект с несколькими полями.</p>
<p><strong>Mutation</strong><strong> testing</strong><strong>.</strong></p>
<p>Техника тестирования, применяемая для проверки достаточности и корректности покрытия кода тестами. Основана на так называемых мутациях – небольшие изменения кода программы, само мутационное тестирование проверяет реакцию изначальных тестов на заранее заданный набор мутаций.</p>
<p><strong>Architecture</strong><strong> testing</strong><strong>.</strong></p>
<p>Техника тестирования, применяемая для постоянно растущих проектов, в которых происходит постоянное усложнение кодовой базы и сценариев использования. Данная техника использует специальные тесты, которые инкапсулируют в себе конвенции об именовании классов, пространств имён, проектов, а также о самом дизайне приложения и о его зависимостях.</p>
<p>Участников вебинара ждет немного теории, примеры и ответы на вопросы. Все примеры будут на языке С#.</p>
<p><strong>План </strong><strong>вебинара:</strong></p>
<ol>
<li>Approval testing.</li>
<li>Mutation testing.</li>
<li>Architecture testing.</li>
</ol>
<p><strong>Целевая аудитория:</strong></p>
<p>Данный вебинар будет интересен С# разработчикам, а также тестировщикам, которые уже знакомы с пирамидой тестирования и желают узнать больше про остальные техники тестирования, которые не ограничиваются пирамидой тестирования. Перед просмотром вебинара желательно иметь представление о базовых темах, вроде Unit testing, Integration testing, Functional testing.</p>
З Сибіру до Кремнієвої долини. Особистий досвід.
Автор: Олександр Залуцький
<p>Приглашаем вас на онлайн встречу с <a href="https://www.linkedin.com/in/alex-zalutskiy-40a76a48/" rel="nofollow" target="_blank">Алексом Залуцким</a>, Senior Business Analyst, Epam Systems, California, на которой вы сможете в прямом эфире задать вопросы, связанные с профессиональным и карьерным ростом в IT. Это будет краткий рассказ программиста, перековавшегося в менеджеры и аналитики ради мечты. История про то, как не сдаваться даже в самой безвыходной ситуации.</p>
<p>Какие трудности и вызовы возникают на пути начинающего айтишника и какие есть методы для их решения. А также много практических примеров без заумной теории.</p>
<p> </p>
<ol>
<li>Сибирь:
<ul>
<li>Школа</li>
<li>Первая программа в 12 лет.</li>
<li>Олимпиада по информатике.</li>
<li>Первая игра на qbasic и Pascal.</li>
</ul>
</li>
<li value="2">Москва
<ul>
<li>Мест нет, но Вы держитесь)))</li>
</ul>
</li>
<li value="3">Питер
<ul>
<li>Мест нет, но может в связисты пойдешь?</li>
<li>Олимпиада среди вузов на космическую тематику.</li>
<li>Дипломная работа и автоматизация космоса.</li>
</ul>
</li>
<li value="4">Опять Москва
<ul>
<li>Первая работа Python-программистом.</li>
<li>Перековаться в C++ инженера по безопасности.</li>
<li>SQL девелопер в страховой компании.</li>
</ul>
</li>
<li value="5">Как переехать в Силиконовую долину из Москвы?
<ul>
<li>Системный аналитик.</li>
<li>Бизнес аналитик.</li>
<li>Менеджер проектов.</li>
<li>Работа в почти западной компании.</li>
</ul>
</li>
<li value="6">Переезд внутри компании
<ul>
<li>Бизнес-анализ в супер технологичной компании.</li>
<li>Первые шаги на новой местности.</li>
<li>Ретроспектива 10 летнего пути.</li>
<li>Можно было переехать быстрее за 2 года просто девелопером.</li>
</ul>
</li>
<li value="7">Плюсы и минусы США</li>
</ol>
<p> </p>
<p><strong>Целевая аудитория:</strong> IT сециалисты, которые столкнулись с трудностями, хотят найти новые пути и резервы для успешной карьеры, профессионального и личного роста, а также те, кого интересует работа в США.</p>
Огляд популярних сервісів тестування
Автор: Редакція ITVDN
Так как 2017 год совсем недавно остался позади, наша команда решила сделать небольшой новогодний подарок в виде разбора лучших сред автоматического тестирования, обладающих, помимо прочего, открытым исходным кодом.
1. Robot Framework
Robot Framework – это фреймворк для приемного тестирования (Acceptance Testing) и, помимо прочего, так называемого ATDD (Acceptance Test-Driven Development). Среда написана на языке Python, но также может быть развернута в рамках Jython (Java) и IronPython (.NET). По сей причине считается кроссплатформенной, ибо поддерживает Windows, Linux и MacOS соответственно.
Достоинства:
Упрощает автоматическое тестирование благодаря использованию подхода keyword-driven тестирования, в значительной мере помогая тестерам в создании читабельных, легко производимых тестов.
Простота в использовании «тестового синтаксиса».
Имеет в наличии отменную среду, включающую в себя богатый набор различных инструментов и библиотек, выполненных в виде отдельных проектов.
Огромное количество различных API делает систему очень гибкой.
Хотя и не в виде встроенной функции, однако Robot Framework позволяет проводить параллельные тесты при использовании библиотеки pabot или Selenium Grid.
Недостатки:
Трудно настроить структуру html-отчетов.
Примечание: эта среда будет очень полезной, если Вы нацеливаетесь на Keyword-Driven тестирование – и обширная база библиотек и расширений вряд ли заставит Вас в этом усомниться. Однако, чтобы добавить новые ключевые слова (RF test library API) базовые познания Java/Python/C программирования обязательны.
2. JUnit
JUnit – это среда для проведения юнит-тестов для приложений, написанных на языке Java.
Достоинства:
Тесты пишутся при помощи чистейшего Java – одного из лидирующих языков программирования современности.
Поддерживает TTD.
Позволяет создать свой собственный пакет для юнит-тестирования.
Прекрасно интегрируется в различные инструменты разработчика (к примеру – Maven) или среды разработки (к примеру, IntelliJ).
Благодаря достаточно высокой популярности поиск документации не составляет труда.
Недостатки:
Если необходимо использовать возможности mock-объектов, пользователь вынужден прибегать к помощи сторонних библиотек (Mockito или другие).
Чтение тестов у людей без технического образования может вызвать затруднения, так как, к примеру, имена методов в JUnit ограничены условностями языка Java.
Примечание: для тех разработчиков, которые желают писать юнит-тесты для собственных Java-приложений JUnit, пожалуй, лучшее из того, что можно бы пожелать. Однако, в случае если речь идет о функциональном тестировании программ, написанных на других языках, вероятно, Вам стоит выбрать другую среду.
3. Spock
Spock – это среда тестирования и спецификации для приложений, написанных на языках Java или Groovy. За основу взята среда JUnit.
Достоинства:
Позволяет создавать читабельные тесты с поддержкой чисто английских предложений, без необходимости следовать ограничениям языков программирования.
Предоставляет информативный контекст возникнувшей проблемы. Плюс, дает легко понять, что необходимо сделать, дабы исправить обнаруженный недостаток.
Имеет встроенную поддержку mock и stab объектов.
Поддерживает DDT (Data-Driven Tests).
Недостатки:
Требует базовых знаний языка программирования Groovy.
Примечание: идеально подойдет, если Ваше приложение базируется на JVM, плюс, Вы нацеливаетесь на BDD автоматическое тестирование с DSL.
4. NUnit
NUnit – среда для юнит-тестирования языков .NET виртуальной машины. Имевшей однажды огромное влияние JUnit, среда NUnit была полностью написана на C#. Помимо прочего, в арсенале так же имеется целый спектр новых возможностей, позволяющих использовать все преимущества языков .NET.
Достоинства:
Быстрая инициализация и выполнение теста.
Использует методы типа Assert с поддержкой аннотаций.
Позволяет проводить параллельное тестирование.
Поддерживает TDD.
Недостатки:
Так как использует только языки .NET стандарта, не является кроссплатформенным.
Интеграция в среду Visual Studio не представляется возможной. Использование NUnit означает больше расходов на сопровождение проекта.
Примечание: прекрасный фреймворк юнит-тестирования для C# с открытым исходным кодом, долгой историей и проверенной репутацией. Однако, в случае, если вы уже активно работаете с .NET языками, обратите свое внимание на MSTest.
5. TestNG
TestNG – сервис автоматического тестирования для Java. По сути, это те же JUnit и NUnit, но с улучшениями и новым функционалом (ибо NG читается как «новое поколение» - Next Generation). Среда была разработка для покрытия всех видов тестирования, которые только могут понадобится. А именно: юнит-тестирование, функциональное тестирование, тестирование интеграции и прочее.
Достоинства:
Прост во внедрении в проект.
Позволяет разработчику писать гибкие и всеобъемлющие тесты.
Поддерживает DDT.
Простые в понимании аннотации.
Простота в группировании тестовых кейсов.
Позволяет создавать параллельные тесты.
Недостатки:
Так как поддерживает только Java, Вы должны иметь хотя бы базовые познания этого языка.
Установка и калибровка среды тестирования занимает время.
Примечание: если вы работаете с Java, ищите инструмент для мульти задачного тестирования и можете уделить некоторое время на установку программы – TestNG определенно для Вас.
6. Jasmine
Jasmine – среда для юнит-тестирования JavaScript. Так же известен как Behavior Driven Development (BDD) подход JavaScript тестирования. Идеально подходит для веб-сайтов, проектов Node.js и вообще для всего, где JavaScript может найти свое применение. В основном используется в связке с AngularJS.
Достоинства:
Кроме JavaScript, так же может быть применен по отношению к Python или Ruby. Чрезвычайно полезен, если Вам нужен один сервис тестирования как для клиентской разработки, так и для серверной.
Поддерживается множеством CI (Codeship, Travic и прочее).
Имеет встроенный Assert-синтаксис.
Недостатки:
В большинстве сценариях требует прогонщика тестов (такого как Karma).
В случае с асинхронным тестированием возникают трудности.
Примечание: Jasmine может оказаться прекрасным решением, если Вы нуждаетесь в унифицированном (клиент-серверном) сервисе юнит-тестирования.
7. Mocha
Mocha – это еще один сервис JavaScript юнит-тестирования с занятным для русскоязычного сектора названием и отнюдь не банальным функционалом. Используется на NodeJs, в основном часто применяется в связке с ReactJS.
Достоинства:
Обладает встроенным тестовым прогонщиком.
Поддерживает асинхронное тестирование.
Позволяет большую гибкость, так как Вы спокойно можете использовать любую Assert-библиотеку (Chai, expect.js, Must.js прочие), которая будет отвечать Вашим требованиям (как замена стандартной NodeJs функции «assert»).
Недостатки:
Относительно новый сервис (появился в 2012 году), что означает он в активном развитии и некоторые аспекты технологии могут быть не до конца задокументированными.
Предоставляет только базовую структуру тестов, плюс требует дополнительную ручную установку и конфигурацию (для кого-то может быть плюсом).
Примечание: если Вы ищите независимую среду юнит-тестирования для JavaScript, Mocha – Ваше все!
А какую среду автоматического тестирования используете Вы? Что хорошего и что не очень Вы могли бы о ней сказать? Пожалуйста, приобщайтесь к дискуссии в комментариях! 😊
Автор перевода: Евгений Лукашук
Оригинал статьи
Система контролю версій "просто, як двері" або як навчитися користуватися git за пару годин
Автор: Дмитро Івченко
Введение
Я достаточно давно использую git практически во всех проектах. За это время я успел многому научиться и хочу поделиться опытом с читателями. Как известно, все новое пугает. Так говорит половина моих знакомых, которые не захотели потратить пару часов, чтобы разобраться с git раз и навсегда. Скорее всего, после прочтения этой статьи и они, и вы поймете, что это проще, чем кажется.
Я постараюсь показать, как эта VCS (Version Controll System) помогает разрабатывать проект. Эта статья рекомендована к прочтению тем, кто только делает первые шаги в разработке больших проектов.
Итак, Git — это «распределенная система контроля версий», где «система контроля версий» означает то, что она запоминает историю изменения своих файлов, а распределенная значит то, что мы можем работать с ней без доступа к интернету.
Для того чтобы начать:
Git акаунт на https://github.com
Консоль или же графический интерфейс.
Человек по ту сторону монитора, что сможет это поставить под свою ось, будь то Windows, Mac OS или Linux .
Моё окружение - это Mac OS X + Webstorm + Git + Bash .
Если у вас Windows, то, скорее всего, будет msysgit (git-bash) + TortoiseGit.
Как вы уже поняли, придется работать с консолью, потому вам будет необходимо усвоить несколько команд для установки git на вашу операционную систему.
Поговорим немного о том, как же установить git:
Установка для Linux
Установить Git под Linux как бинарный пакет можно, используя обычный менеджер.
Если у вас установлена Fedora, можно воспользовать yum:
$ yum install git-core
Если же у вас дистрибутив, например, Ubuntu, то вам нужно:
$ apt-get install git
Установка для Mac
Существует два способа установки Git на Mac OS X.
Первый - использовать графический компоновщик Git, который вы можете скачать здесь:
http://goo.gl/nB31LK
или же, для более продвинутых пользователей, просто вставьте следующую строчку в терминал
$ sudo port install gitweb + git-core +doc + bash_completion
Установка в Windows
Настроить Git в Windows просто: у проекта msysGit процедура установки самая легкая. Просто скачайте *.exe инсталлятор на GitHub:
http://goo.gl/cmGQSj
После установки у вас будет и консольная версия, и стандартная графическая.
Остались вопросы по установке?
Тогда вам сюда - https://goo.gl/lec2M0
Git — это коллекция инструментов для решения определенных проблем. Давайте рассмотрим компоненты Git пошагово:
Коммиты
Коммит (патч) — показывает некоторые изменения в файлах, что подверглись изменениям с момента предыдущего коммита. Коммит также содержит заголовки, в которых есть автор, время его создания и прочее. Git-коммит шифрует это в заголовке «parent», указывая, после какого коммита его нужно наложить.
Как применить коммит к другому коммиту?
Мы можем применить коммит только к полному набору файлов. Но после этого мы получим измененный набор файлов. Поэтому «коммит» также показывает состояние репозитория после добавления нового патча.
История Git — это вся цепочка изменений для воссоздания кодовой базы с нуля, коммит за коммитом. История коммиттов может выглядеть так:
Commit C: Родитель — B.
Добавь “Systematics” в конец файла «readMe.txt».
Commit B: Родитель — A.
Добавь “Bionic” в конец файла «readMe.txt».
Commit A: Создай файл «readMe.txt», содержащий “Cyber”.
Commit A здесь первый, это значит, что у него нет родителя. Это значит, что его патч может только добавить новые файлы — в репозитории нет никаких существующих файлов для изменения. Во всем остальном это такой же коммит, как и все остальные.
Итак, мы начинаем с пустого файла. Затем мы применяем патч A, который дает текст “Cyber”. Затем мы можем применить патч B, который даст нам “Cyber Bionic”. Наконец, мы применяем C, который дает “Cyber Bionic Systematics”.
Визуализация Git изображает историю коммиттов слева-направо, описанное выше будет выглядеть так:
A → B → C.
Тэги
Тэги — имена для коммитов, чем-то похожие на ветки. Однако, тэги должны быть постоянными: они, в основном, используются для названий версий релизов. Вы можете переключаться по тэгу, но тэг не может быть вашей «текущей веткой», и тэг никогда не появится автоматически, если вы коммитите впервые.
Также тэги (чаще всего) глобальные, с неограниченным пространством имен, как ветки.
Как просмотреть историю последних коммитов:
git log покажет название последних трех коммитов в ветке.
git log --oneline --graph --decorate намного лучше для просмотра (можете сами убедиться). Вы также можете установить tig, который делает, в основном, то же самое, но вы сможете использовать Enter на коммите, чтобы увидеть различия.
git log --follow показывает нам все изменения, только для конкретного файла (директории). --follow означает - следить за историей файла, включая изменение имени файла.
А сейчас время для команд, которые вы будете писать каждый день по многу раз
$ git status покажет, в какой ветке вы находитесь и какие файлы подверглись изменениям.
git add file_name добавляет только указанный файл (файлы) к патчу.
git add -A (all) добавляет к патчу все изменения, которые нужны вам в последующем коммите.
git commit -a откроет редактор для ввода текста коммита, затем будет создан коммит со всеми произведенными изменениями.
git commit -m “what is to change” запишет коммит и даст ему то описание, которое есть в скобках
git branch name создает новую ветку под названием name, основаную на коммите, но не переключается на нее. Для этого тебе понадобиться команда: git checkout -b origin/develop, которая создаст новую ветку, основанную на origin/develop, или на той, в которой вы находитесь, и переключится на нее.
git checkout производит переключение в ветку, которую вы укажите. Вы также можете перейти в удаленную ветку, в тэг или в конкретный коммит.
git rm file_name говорит Git, что ты собираешься удалить файл, а также удаляет его физически.
Конфликты слияния
Если вы делаете слияние или отправку изменений, возможно, ваши изменения будут конфликтовать с чужими. Git выведет сообщение:
"Автоматическое слияние не удалось, вы должны сделать это вручную".
Если вы посмотрите git status, то обнаружите новую секцию для конфликтующих файлов. И вам нужно это исправить, чтобы завершить слияние.
Откройте конфликтующий файл и увидите что-то вроде этого:
<<<<<<<
то что мы изменили
========
то что сделал ваш предшественник
>>>>>>>> origin/develop
Это говорит нам о том, что двое людей отредактировали одни и те же строки в том же самом файле по-разному, а Git не знает, что должно быть результатом.
Просто отредактируйте файл, как нужно, и выполните git add -А, чтобы сообщить Git, что вы готовы к отправке. Когда все конфликты будут решены и все файлы добавлены через git add -A, сделайте простой git commit для полного слияния.
Примечание:
Проверяйте, что вы действительно исправили все конфликты в файлах после слияния.
Иногда, конфликт - это когда один программист отредактировал файл, а другой удалил этот файл. Когда такое случается, Git покажет тебе, кто что сделал.
Надеюсь, что статья дала вам много новых знаний. И если это так - то вперед, создавать первый репозиторий на github.com и закреплять все, что прочитали.
Огляд текстових редакторів та деяких корисних плагінів
Автор: Антон Гончаров
Введение
Привет всем. Многие студенты, которые решили связать свою жизнь с програмированием, задаются такими вопросами:
- что выбрать своим главным инструментом в работе?
- чем пользуется большинство?
- чем пользоваться при написании своего кода?
- что лучше?
На эти вопросы нет однозначного ответа, каждый редактор по-своему хорош. Но постараюсь описать главные возможности тех редакторов, с которыми я сам столкнулся и пользовался в своей практике.
Сразу внесем ясность и расставим точки над i. Средства разработки делятся на два главных класса:
1 – Интегрированные среды разработки (IDE)
2 - Текстовые редакторы (text editor)
Официальное определение интегрированная среда разработки можно найти по адресу: https://ru.wikipedia.org/wiki
Официальное определение текстовый редактор по адресу: https://ru.wikipedia.org/wiki
Попытаюсь объяснить разницу между двумя этими классами своими словами.
Интегрированная среда разработки - это как швейцарский нож или трактор, он мультифункционален, а следственно, и граничен. Может делать много, но некоторые вещи делает не так, как нам хотелось бы. Посудите сами: трактор ведь может тянуть тяжелый груз, копать и, главное, может передвигаться. Но все это он делает медленно. К примеру, если стоит задача переместиться из пункта “А” в пункт “Б” (что является одной из функций трактора), для этого лучше пригодится спорткар или обычный легковой автомобиль, для этой операции нами не нужен трактор со всеми его функциями. Следовательно, мы можем сделать вывод, что для определенных операций нам нужны определенные инструменты. В этой статье я не буду рассматривать IDE и их фичи (feature). Хочу рассказать о главных текстовых редакторах и их возможностях.
Мой TOP текстовых редакторов:
1. Sublime Text
2. Brackets
3. Visual Studio Code (на этом месте был Atom)
Пробовал, но не понравились/не подошли, по каким-либо причинам (поэтому не рассматриваю их тут)
1. Notepad++ (Сайт https://notepad-plus-plus.org/)
2. Komodo Edit (Сайт http://komodoide.com/komodo-edit/)
3. Atom (Сайт https://atom.io/)
4. Textmate (Сайт https://macromates.com)
Итак ,начнем.
Sublime Text 3
сайт: http://www.sublimetext.com/3
Чем нравится:
кроссплатформенный
легкий
большая и понятная библиотека плагинов (дополнений)
легко настроить под себя
Что следует сделать после установки.
Зайти на сайт https://packagecontrol.io/installation
И сделать все согласно инструкции, открыть консоль Саблайма: найти вкладку View и кликнуть Show Console. В появившемся снизу поле ввода вставить следующий код:
import urllib.request,os,hashlib; h = 'eb2297e1a458f27d836c04bb0cbaf282' + 'd0e7a3098092775ccb37ca9d6b2e4b7d'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( 'http://packagecontrol.io/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)
Должно получиться вот так:
Жмем Enter.
Так мы установили Package Control в наш Sublime. Теперь мы можем устанавливать плагины в редактор, нажав сочетание клавиш
Ctrl+Shift+P on Windows/Linux, ⇧⌘P on OS X
На сайте https://packagecontrol.io/ вы найдете множество плагинов с детальным описанием, руководством установки и руководством использования.
Теперь о плагинах.
Плагин – грубо говоря, это дополнение программы. Официальное определение
https://ru.wikipedia.org/wiki
Плагины, которые пригодились мне в работе, возможно, пригодятся и вам.
1. Emmet - https://packagecontrol.io/packages/Emmet
Плагин, который помогает быстро набирать код. С помощью шпаргалки вы быстро научитесь быстро набирать сложные конструкции html, указав лишь название тега и порядок иерархического положения елемента на странице. Его официальный сайт http://emmet.io/ и шпаргалка http://docs.emmet.io/cheat-sheet/
Еще одно условие: для работы этого дополнения нужен предустановленный nodeJS. Найти его можно тут: https://nodejs.org/
Думаю, что nodeJS у вас уже был предустановлен, а если не был, то он вам точно еще пригодится не раз.
2. SublimeCodeIntel - https://packagecontrol.io/packages/SublimeCodeIntel
Плагин портирован из текстового редактора Komodo Editor, помогает автодополнением к языкам программирования JavaScript, Python, Ruby, XML, HTML, CSS, PHP и другим.
3. SideBarEnchancements - https://packagecontrol.io/packages/SideBarEnhancements
Плагин открывает новые возможности боковой панели для работы с Вашими проектами.
4. BracketHighlighter - https://packagecontrol.io/packages/BracketHighlighter
Плагин позволяет отображать дополнительные скобки возле номеров строк, отображая, к примеру, блоки кода.
5. AutoFileName - https://packagecontrol.io/packages/AutoFileName
Плагин говорит сам за себя, когда мы пишем пути к нашим фалам, помогает, выводя дополнительное выскакивающее окошко, с выбором папок или файлов.
6. HTML-CSS-JS Prettify https://packagecontrol.io/packages/HTML-CSS-JS%20Prettify
Плагин “расческа”. Причесывает наш код, делает его более читабельным для человеческого глаза.
7. Color Highlighter - https://packagecontrol.io/packages/Color%20Highlighter
Плагин подсвечивает цвета при написании вайлов CSS/Less/SASS/SCSS/Stylus.
Остальные плагины, для работы с такими библиотеками как jQuery, Bootstrap, AngularJS, советую устанавливать осторожно, потому как постоянно выскакивающие окошки с помощью какого либо плагина если не пугают, то начинают очень надоедать. Поэтому советую не превращать текстовый редактор в “неубранный балкон”.
Также есть возможность установки из того-же Package Control множества тем и цветовых схем. Темы и цветовые схемы отличаются тем, что тема меняет полностью весь внешний вид Sublime, цветовая схема меняет только цвета подсветки синтаксиcа.
Файл настроек находится во вкладке Preferences>Settings Default/Settings User. Почему именно два файла? Потому что вы сможете изменять только Settings User. Оба файла являются, по сути, JSON объектами, поэтому разобраться и изменять свои настройки вы научитесь довольно быстро.
Brackets
сайт - http://brackets.io/
Этот текстовый редактор также поддерживает большинство перечисленых плагинов, и даже если таковых вы не найдете, то их аналоги точно есть в песочнице.
На правой боковой панели вы найдете несколько кнопок:
Первая в виде молнии – LivePreview. Запускает страницу с рашрирением html в вашем браузере, который установлен по умолчанию, браузер будет сам обновлять страницу.
Вторая в виде лего – Extension Manager. При клике вызывает модальное окно в, котором содержатся вкладки меню для выбора плагинов, тем, их установке и удалению.
Третья в виде “слоев торта” со стрелочкой вверх – Extract for Brackets. Ради этой кнопки и стоит устанавливать этот редактор.
Она позволяет после регистрации загрузить файлы psd формата для верстки прямо из текстового редактора, не загружая ничего больше.
Кликаете по кнопке Open PSD
Регистрируетесь или же входите под своим Adobe ID, загружаете PSD шаблон и начинаете верстать в разы быстрее.
Кликнув по какому либо элементу на шаблоне, вы можете моментально перенести: текст, css свойства, или же выгрузить картинку из шаблона пряму в папку с проектом.
С такими возможностями верстка становится в разы быстрее! Не агитирую, просто советую попробовать)
Visual Studio Code
сайт - https://code.visualstudio.com/
Бесплатный кроссплатформенный текстовый редактор, основанный на технологиях замечательного текстового редактора Atom от GitHub. Подробное описание можно прочитать по ссылке ниже:
https://uk.wikipedia.org/wiki/Visual_Studio_Code
Также будет полезна ссылка с документацией:
https://code.visualstudio.com/Docs/setup
Отличный текстовый редактор от компании Microsoft.
Облегченная и кроссплатформенная версия Visual Studio. Имеет схожий дизайн со своим старшим собратом. Похожие темы и подсказки в виде выпадающих окошек (контекстные подсказки). Так что разработчикам, перешедшим с Visual Studio, будет гораздо легче адаптироваться.
Еще несколько плюсов с коробки:
поддержка таких языков програмирования: JavaScript, C++, C#, PHP, XML, Java, Objective-C, HTML, CSS, Less, Sass и т.д. (полный перечень находится в документации).
отладчик
инструменты для работы с Git
автодополнения в стиле Emmet.
Настоятельно рекомендую обратить внимание и попробовать Visual Studio Code. Даже просто потому, что вы установите его и все, дальше просто приступаете к работе :)
На этом все. Думаю, что изложил свои мысли достаточно простым языком. Помните, что не важно, в каком текстовом редакторе или IDE вы работаете, это всего лишь инструмент, в конечном итоге вы можете остановить свой выбор на обычном блокноте и там разрабатывать приложения, для того, чтобы писать программы не обязательно иметь подсветку синтаксиса, всякие плюшки, главное, чтобы вам было удобно и при написании вы чувствовали себя комфортно.
Выбор за вами. Удачи!
Застряли в поиске работы? Вам необходим карьерный консультант, а не еще один курс
Автор: Виктория Чабан
Карьерный путь сегодня выглядит совсем иначе, чем десять лет назад.
Рынок труда меняется быстрее, чем мы успеваем обновлять резюме. Новые профессии появляются каждый год, компании сокращают штаты или перестраивают процессы, а конкуренция за хорошие вакансии растёт.
В таких условиях даже опытные специалисты иногда теряются — не понимают, в каком направлении двигаться, как выгодно подать себя или как вернуть уверенность после неудач.
Именно здесь появляется карьерный консультант — специалист, который помогает разобраться в профессиональных целях, выстроить стратегию развития и сформировать сильное позиционирование на рынке.
Когда стоит обратиться к карьерному консультанту
Карьерная консультация — это не только для тех, кто «не знает, кем быть».Она полезна на любом этапе профессионального пути.
1. Если вы студент или джун, который делает первые шаги
Вы закончили курсы, получили базовые навыки, но не понимаете, как попасть на первую работу? Карьерный консультант поможет:
составить резюме, которое действительно читают рекрутеры,
правильно оформить профили на джоб-бордах и LinkedIn,
понять, какие навыки нужно прокачать в первую очередь,
подготовиться к собеседованию без стресса и паники.
💡 Результат: вы не тратите месяцы на безуспешные отклики, а быстрее получаете приглашения и первый оффер.
2. Если вы хотите перейти в IT из другой сферы
Карьера-свитч — это смелый шаг, но без стратегии легко застрять. Карьерный консультант поможет превратить ваш предыдущий опыт в преимущество, а не в «пустое место» в резюме. Он покажет, как грамотно объяснить, почему ваш прошлый опыт ценен, даже если он не связан с технологией напрямую.
💬 Пример:
Бухгалтер, переходящий в тестирование, может подать себя как внимательного аналитика с высоким уровнем ответственности. Учитель, ставший фронтенд-разработчиком, — как человека, умеющего структурировать информацию и объяснять сложное простыми словами.
Карьерный консультант поможет найти именно эту историю.
3. Если вы уже работаете, но хотите карьерного роста
Часто специалисты годами остаются на одной позиции не потому, что не заслуживают повышения, а потому что не умеют заявить о себе. Консультант поможет проанализировать ваши достижения, выстроить аргументацию для повышения или подготовить стратегию перехода на новый уровень (Middle → Senior, Senior → Team Lead).
💡 Вы получите:
чёткую стратегию развития,
план по обучению и развитию soft skills,
новое видение рынка и своих возможностей.
4. Если вы ищете работу после перерыва
После декрета, релокации, переезда или профессионального выгорания сложно восстановить уверенность и понять, с чего начать. Карьерный консультант поможет:
обновить резюме и профили,
определить актуальный уровень знаний,
найти подходящие вакансии,
вернуть уверенность в диалоге с рекрутерами.
🎯 Особенно это важно в IT, где технологии обновляются каждый год, и нужен взгляд со стороны, чтобы оценить, как вернуться в профессию.
5. Если вы не понимаете, чего хотите дальше
Даже опытные специалисты порой теряются в вопросе «что дальше?».
Карьерный консультант не даст готового ответа, но поможет найти собственные ориентиры:
понять, в чём ваша профессиональная ценность,
какой формат работы вам подходит (офис, remote, фриланс),
что вас действительно мотивирует.
После консультации вы перестаёте действовать хаотично — и начинаете двигаться осознанно.
Как карьерный консультант экономит ваше время и деньги
На первый взгляд может показаться, что консультация — это дополнительные расходы. Но на деле — это инвестиция, которая возвращается в виде ускорения результата.
1. Экономия времени
Консультант помогает избежать месяцев хаотичного поиска.Он уже знает, как работает рынок, где искать вакансии, как общаться с рекрутерами и что действительно ценится. Вместо того чтобы теряться в десятках сайтов, вы получаете чёткую дорожную карту.
💬 Например:
Без стратегии можно рассылать резюме полгода и не получить ни одного ответа. С консультантом вы понимаете, какие позиции вам подходят, как адаптировать резюме под каждую — и получаете обратную связь уже через пару недель.
2. Экономия денег
Карьерная консультация часто стоит меньше, чем один месяц безуспешного поиска.
Но она помогает вам:
получить высшую зарплату благодаря правильно построенной самопрезентации,
избежать неправильного выбора (курсов, направлений, компаний),
не тратить деньги на бессмысленные тренинги и сертификаты.
💡 Консультант подскажет, куда действительно стоит вложить ресурсы, а что не принесёт пользы именно вам.
3. Объективный взгляд со стороны
Мы часто недооцениваем собственные достижения. Карьерный консультант помогает оценить себя глазами работодателя, найти сильные стороны и убедительно их показать. В IT, где много похожих кандидатов, это критично — важно уметь выделиться.
4. Стратегический эффект
Консультация — это не разовая услуга. Это стратегия. После неё вы понимаете, куда движетесь, какие шаги нужны для следующего уровня и как выстроить карьеру надолго.
Это не просто поиск работы — это управление своим профессиональным развитием.
🔹 Вывод
Карьерный консультант — это не «психолог по работе», а партнёр, который помогает увидеть свои сильные стороны и превратить опыт в возможности.
Он не ищет вакансии за вас — он учит вас делать это осознанно и эффективно.
Помощь консультанта нужна не только новичкам, но и тем, кто хочет роста, смены направления или ясности в будущем.
Главное, что вы получаете после такой работы, — это чёткое понимание: кто вы, куда идёте и как туда попасть.
Если посчитать, сколько времени, нервов и ресурсов тратят люди, ищущие работу без системы, — становится ясно: консультация карьерного эксперта — это не расход, а разумная инвестиция в себя.
💬 Помните: одна правильная консультация может сэкономить вам месяцы поиска — и привести к работе, которая действительно изменит жизнь.
Angular vs React - що крутіше?
Автор: Dominik T
Angular – технология с полным набором инструментов и к тому же с лучшими вариантами подхода к решению. Кому-то он подходит, а кому-то – нет. С другой стороны, React – небольшая технология, которая необходима вам только при создании какого-то приложения. Обе технологии имеют свои достоинства и недостатки. Какая из них подойдёт вам больше? Попытаемся выяснить в этой статье.
Технологии
Вот основные технологии, о которых я буду говорить:
Angular
React
Vue
Кривая обучения
Допустим, вы знаете JavaScript + ES2015 достаточно хорошо. Какую следующую технологию будет проще выучить?
Vue – наилучший выбор, если вы ищите легкости в процессе изучения технологии.
React – менее абстрактный, тем не менее, вам понадобится больше времени, чтобы изучить best practices, так как есть много вариантов написать одно и то же или ошибиться.
А вот после изучения Angular вы также будете знать всё, что связанно с ним (typescript, MVC…). Angular - большая технология и учить придётся долго.
Масштабируемость
Angular - легко масштабируемый благодаря своему дизайну, который так же хорош, как и мощная командная строка.
React требует больше проверок и поэтому более масштабируемый, чем Vue и, я думаю, что частично это правда.
Vue идёт сразу после React. Он хорош, однако ему не хватает лучших практик масштабируемости, из-за чего вы получаете очень запутанный код.
Совместимость с другими технологиями
React. Несмотря на то, что он не работает с DOM-деревом, он основан на чистой JavaScript логикe и популярeн настолько, что содeржит в сeбe альтeрнативы библиотeкам, работающим с DOM.
Vue прекрасно работает как с ДОМ-деревом, так и с JavaScript. Второе место занимает лишь потому, что у него меньше библиотек, которые могли бы быть действительно полезны для обоих (как для ДОМ, так и для JavaScript).
Angular мог бы быть лучше, если бы не typescript, который требует строгой типизации.
Инструменты
React, Angular and Vue. Все перечисленные технологии имеют отличные CLI и работают с любым инструментом по типу webpack.
Пользователи и популярность
React точно стал наиболее популярным в 2016, когда его стали использовать англоговорящие frontend и full stack разработчики. React – хороший выбор для мобильных и даже десктопных приложений на JavaScript.
Vue и Angular. Vue – потому что он очень быстро развивается. Angular – потому что он создан Google, а его предшественник Angular 1 был когда-то очень популярен.
Востребованность
React и Angular. В зависимости от того, где вы находитесь, зависит, какая технология будет доминировать. Angular больше используют в Азии, особенно в Индии, а React – в англоязычных странах, таких как US и UK.
Vue менее популярен и не поддерживается большими компаниями, поэтому остальные отдают предпочтение Angular и React.
Производительность
По этому параметру не ставлю ранги, так как все они сопоставимы. Возможно, React станет немного быстрее, когда полностью будет поддерживать Fiber, но сейчас существует только бета-версия.
Перспективы для компаний
Angular имеет open source лицензию. Он поддерживается Google, что, возможно, делает его лучшим выбором для компании, и разница между проектами Angular невелика.
React был бы очень хорошим выбором, если бы не лицензия с патентом. Однако, существуют бесплатные альтернативы, которые работают также, как и React. Например, Infernojs или мой любимый rax.
Vue – не дитя большой компании, это очень успешный сторонний проект одного человека. Компании часто игнорируют его, хотя, возможно, и не стоило бы.
Вне сети
Рендеринг – как раз то, о чем можно много говорить. Все технологии способны осуществлять его, но некоторые справляются лучше, чем другие.
React – лучший выбор благодаря react native, alibaba rax, reactWindows и next.js.
Vue подойдёт vue-разработчикам, которые предпочитают разработку под мобильные устройства. Спасибо за это alibaba weex.
У Angular есть ionic 2 и nativescript, но эти технологии не позволяют достичь производительности react native.
Простота и длина кода
Vue имеет предварительно встроенные привязки данных и MVC модель, его легче настроить, нежели Angular и React.
React пугающе прост для понимания, но нужно реально много времени, чтобы настроить react project.
Angular совсем непростой. Эта сложность вызывает много путаницы 3rd party libraries и синтаксиса.
Время разработки
Vue, безусловно, лёгок в установке и не требует много изменений или синтаксиса, за что его и любят. Он был создан для борьбы с утомительной работой.
React настраивается дольше, но после начала работы над приложением будет легко добавлять новые фичи.
Angular хоть и является весьма конкурентоспособным, но количество ненужного синтаксиса, который он требует для работы простых вещей, отбрасывает его на последнее место.
Размер
Vue - наименьший и много в себе содержит. Вы можете подумать, что это не имеет значения, но если речь пойдёт о дешёвом Android 3G смартфоне, то вы уже не будете так уверены.
React - больше чем Vue, но все же меньше, чем Angular.
Angular - больше всех предыдущих, что вызывает увеличение времени загрузки и проблемы производительности на мобильных устройствах.
Будущее
Вот лично мои прогнозы для этих технологий на 2017 год:
Vue будет приобретать популярность и всё большее количество разработчиков переключится на него. Вполне вероятно, что это может заставить крупные компании продвигать и поощрять Vue.
Команда React представит Fiber и сделает React быстрее, чем Vue и Angular.
Создатели Angular попытаются привлечь больше людей, но, скорее всего, им это не удастся.
Так что же лучше для вас?
Подводя итог, можно сказать, что нет идеального решения, и никогда не будет. Тем не менее, вот полезные советы, которые помогут вам сделать выбор:
Если вы разработчик «до мозга костей», тогда попробуйте все и выбирайте между Vue или React, доверяйте своему чувству.
Если вы новичок в разработке, выбирайте или Vue, или React.
Angular подойдёт компаниям с большими командами.
Google -> Angular.
Если любите простоту, тогда выбирайте Vue.
Если нравится использовать шаблоны, тогда выбор стоит между Vue или Angular.
Если предпочитаете JavaScript и JSX, попробуйте поработать с каждой технологией.
Если вы работаете с Typescript, используйте Angular или Vue.
Выбирайте подходящую технологию поскорее, не стоит пребывать в неопределённости. Я сомневался несколько месяцев, и это было невесело. Я решил пожертвовать популярностью и выбрал то, что считал для себя наилучшим вариантом – Vue.
Ютубер funfunfunction сказал лучшее, что я когда-либо слышал про JS framework fatigue:
«Существует точка в вашей карьере программиста, когда вы понимаете, что это не лучший инструмент».
Здесь нет правильного или неправильного выбора, его просто необходимо сделать. Так что, продолжайте учиться и исследовать. Все будет учить Вас чему-то новому.
Оригинал статьи на английском языке.
Як не здатися і все ж таки стати програмістом?
Автор: Дмитро Хорошилов
Вы день и ночь в поте лица изучаете синтаксис, фреймворки, решаете задачи, посещаете курсы, смотрите видеоуроки, читаете книги, но все никак не можете сдвинуться с мертвой точки — наконец-то начать программировать самостоятельно или найти первую работу.
Вы раз за разом открывает IDE, чтобы начать писать код, но потом откладываете это занятие. Потому что в данный момент вам меньше всего хочется писать код. И вы по пятому кругу читаете посты на фейсбуке, смотрите видео с котиками и глупые гифки. Вам начинает казаться, что изучать программирование - это не ваше.
Вы в очередной раз открываете важную и сложную книгу по программированию, но, как бы вы не пытались сосредоточиться, информация не откладывается в памяти. Более того, постоянно приходится по несколько раз перечитывать предложение за предложением, чтобы хоть немного понять, о чем речь.
Знакомо? Иногда, особенно в процессе изучения чего-то нового и сложного, ваш мозг начинает играть с вами в каверзные игры. Он всеми силами пытается сопротивляться обучению, вгоняя вас в состояние прокрастинации и ступора. Самым неверным в сложившейся ситуации будет сдаться и отдаться во власть отчаяния. В этом материале мы поговорим с вами, как справиться с прокрастинацией, как заставить мозг учиться и как в конечном итоге получить желаемую работу, влиться в среду профессиональных разработчиков.
Что такое прокрастинация?
На самом деле, прокрастинация — это привычка. Вы шаблонно реагируете на какой-то раздражитель, когда вам следует заниматься тем, чем вы не хотите. Как следствие, вы пытаетесь отложить «нелюбимое» дело в долгий ящик и придумываете какие угодно дела взамен, лишь бы не делать что-то важное. Но то, что приносит удовольствие на короткое время, не всегда полезно в долгосрочной перспективе. Благо, с прокрастинацией можно бороться, как и с любой другой плохой привычкой.
Как бороться с прокрастинацией?
Вот несколько советов, что стоит делать и на что необходимо обращаться внимание:
- Не тратьте силу воли на борьбу с прокрастинацией. Потому что это настолько же безрезультатно, как и бороться с пятиголовым драконом без специального оружия. Вы будете отрезать голову и усилием воли заставлять себя учиться, то есть тратить много сил, а голова будет опять вырастать. В итоге, вы в какой-то момент просто бросите эту затею и уйдете с поля битвы.
- Не оставляйте все на последнюю минуту. Представьте спортстмена, который начинает тренироваться за два дня до забега. Как думаете, как он будет себя чувствовать и в каком состоянии будут его мышцы, если он будет заниматься два дня по 10 часов каждый, вместо 2-х месяцев по часу? Как думаете, после такого у него будут шансы пробежать марафон? Очевидно, что нет. Как и с мышцами, мозг необходимо тренировать постепенно, понемногу, но постоянно. Лучше учитесь по 20 минут, но на протяжении 10 дней, чем по 10 часов, но на протяжении двух дней.
- Делайте перерывы во время учебы. Да, позволяйте себе отдыхать и хорошо высыпаться. Не зубрите дни и ночи на пролет. Подолгу сидя над учебой, вы не усвоите больше. Благодаря небольшим передышкам, наш мозг получает возможность «переварить» полученную информацию.
- Не откладывайте на потом. Чем на дольше откладываем, тем больше всего нам надо изучить. А значит, тем страшнее и больнее нам этим заняться. Парадоксально, но факт, чем лучше вы овладеваете каким-то навыком, тем больше вам нравится им заниматься.
- «Коллективная мудрость». Не бойтесь обращаться за советом к коллегам, другим студентам. Если вы занимаетесь в одиночку, найдите обязательно себе ментора, к которому сможете обращаться за советом в моменты ступора. Если у вас нет возможности найти наставника, сходите на курсы. Старайтесь больше задавать вопросов, даже если они вам кажутся чрезвычайно глупыми.
- Ориентируйтесь на процесс, а не на результат. Очень часто мы зацикливаемся на результате. И если он не достигнут, нас посещают мысли, отзывающиеся болью в мозгу, провоцируя нас прокрастинировать. Например, мы думаем: чтобы найти свою первую работу, так много еще надо всего выучить. Отпустите эти мысли, лучше сосредоточьтесь на процессе: я учу, я пишу, я делаю. И вы не заметите, как в скором времени скажете: я работаю.
В этой части мы поговорили с вами о том, как лучше учиться, как бороться с ужасной и неукротимой прокрастинацией.
Когда прокрастинация побеждена
Теперь я бы хотел дать несколько рекомендаций о том, что делать, когда вы победите своего змея.
Как только вы научитесь держать себя под контролем, ваши дела заметно пойдут вверх. Вы будете все больше получать удовольствия от процесса получения и практического применения новых знаний. В какой-то момент вам покажется, что вы готовы начать работать. Чтобы опять не попасться в капкан прокрастинации, поставьте себе цель и придумайте мотивацию.
Например, цель: я найду первую работу за 3 месяца.
Обязательно спланируйте, какие шаги вы будете предпринимать для того, чтобы найти работу:
- напишу хорошее резюме на двух языках,
- буду отслеживать вакансии и реагировать на них,
- составлю список компаний, которые подходят мне по профилю — разошлю им резюме с мотивационным письмом,
- начну готовиться к собеседованиям: подтягивать теоретические знания, подготовлю свое первое программистское «портфолио».
А вот мотивация — это очень индивидуально, но обязательно важно. Найдите что-то свое: деньги, отдых, друзья, любимые, покупки и т.д.
Надеюсь, теперь, когда вы знаете, что такое прокрастинация и как с ней бороться, вам станет намного проще двигаться по намеченному вами пути и не сбиваться с него. Главное, помните, что отдых тоже полезен. Борясь со своими чертиками, не забывайте хорошо высыпаться (это самое главное условие для хорошего усваивания знаний), отвлекаться, например, заниматься спортом, хорошо и вкусно питаться. Я уверен, что следуя этим полезным советам, вы очень скоро добьетесь успеха!