20 полезных навыков, которые можно освоить за 3 дня

Renelio

Зеленый человечек
Joined
May 25, 2017
Messages
345
Reaction score
78
Даже в программировании есть легко усваиваемые навыки, и относятся они не только к регуляркам, базам данных и VCS.

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

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

Рекомендуем посмотреть «Всё о парсинге сайтов на Python».

2. Vim редактор
Освоить линуксоидный Vim редактор, который стал более функциональным за счет расширений и надстроек. Vim нельзя отнести к интуитивно понятному, поэтому обучение необходимо. Поддерживает 2 режима ввода (текстовый и командный), между которыми можно переключаться.

Рекомендуем посмотреть «Vim: 7 привычек для эффективной работы с текстом».

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

4. Освоить одну из распределенных баз данных
Если вы еще не освоили SQL, сделайте это для начала. Базы данных используются везде, начиная от веб-приложений и заканчивая искусственным интеллектом. В продакшене используются распределенные базы данных, такие как MySQL или PostgreSQL. Также важно ознакомиться с теоремой CAP, алгоритмом MapReduce.

Рекомендуем посмотреть «SQL за 20 минут».

5. Освоить extends в Java (swing)
Навыки программирования с extends Java упростят работу с фреймами и панелями: class Frame extends JFrame/JPanel. С таким подходом не нужно задавать новый JFrame и всякий раз прописывать JFrame.set*, Jframe.add*. Достаточно просто использовать set* или add* в коде. На первый взгляд, улучшение незначительное, но в работе с огромным количеством элементов экстендить классы в Java не помешает.

Рекомендуем посмотреть «6 книг по Java для программистов любого уровня».

6. LaTeX, BibTex, pgfplots
TeX — язык для вёрстки текста с применением научного подхода, для серьёзных людей. LaTeX — макросы для TeX’а. TeX был изобретён и популяризован знаменитым программистом/математиком Дональдом Кнутом — если не отцом, то во всяком случае дедушкой всего нынешнего программирования. Навык в LaTeX позволит быстро создавать PDF-файлы, в которых могут содержаться математические формулы, код, графики.

7. Учимся проходить собеседование
Подготовиться к собеседованию, найдя в сети и выполнив ТЗ любого работодателя на том языке, который хуже всего изучен. Это позволит ознакомиться с общими требованиями на рынке IT-услуг и усовершенствовать навыки программирования.
Рекомендуем посмотреть «Стандартные задачи на собеседовании».

8. Linux
Научиться основам работы с Linux. Linux — одна из наиболее популярных операционных систем для разработки, часто используемая для удаленных серверов. Также дистрибутив Kali Linux часто используется хакерами и специалистами в информационной безопасности.

Рекомендуем посмотреть «10 лучших видеокурсов для изучения Linux».

9. Основы теории графов
Графы в современном мире используются повсеместно, начиная от дерева файловой системы и заканчивая алгоритмами поисковой выдачи и графом друзей в социальных сетях.

10. Система контроля версий
Научиться работать с одной из VCS (например, система контроля версий Git). Такой инструмент страхует от ошибок, так как позволяет произвести откат в том случае, если изменения в программе не привели к желаемому результату, и нужно вернуться на несколько этапов назад.

Рекомендуем посмотреть «Гайды по работе с Git».

11. Реализовать один из алгоритмов машинного обучения
За 3 дня можно освоить какой-нибудь алгоритм машинного обучения и его реализовать с нуля: прочесть CSV-файл, создать обучающее и тестовое множества, запустить алгоритм с перестраиваемыми параметрами и простой вывод из релевантной статистики.
Рекомендуем посмотреть «Основы машинного обучения за неделю».

12. Научиться пользоваться важными ресурсами
Завести профиль на сайте Stack Overflow и его русскоязычном аналоге Hashcode, после чего научиться пользоваться этими системами вопросов и ответов. Кто-то найдет полезные подсказки и советы, а кто-то получит бесплатную практику.

13. Изучить ООП/шаблоны проектирования
Если вы знаете ООП, сразу изучайте шаблоны проектирования. Они часто используются в индустриальном коде, об их знании часто спрашивают на собеседованиях. Освоив их, вы станете лучше как специалист.
Рекомендуем посмотреть «3 лучших книги по объектно-ориентированному программированию» и «4 лучших книг о шаблонах проектирования».

14. Основы JavaScript
JavaScript – самый популярный язык программирования на Github. После появления node.js, JavaScript кроме как технологии, используемой для фронтенда, стал активно применяться в создании бекенда и консольных утилит.
Рекомендуем посмотреть «Изучение JavaScript с нуля» и «Подборка бесплатных ресурсов для изучения Node.js».

15. Сортировка
Освоить несколько полезных сортировочных алгоритмов. Систематизация делает работу проще, а жизнь кодера – в разы легче.

16. Работать в командной строке
Работа в командной строке позволяет существенного ускорить работу и является необходимым навыком для работы с удаленным сервером. Часто умение работать в терминале фигурирует в требованиях к различным вакансиям.

17. Тестинг
Научиться разрабатывать эффективные тесты для кода. Это сведет к минимуму возможные ошибки.

18. Python
Понять, как используется генератор списков в Python. Да, это «синтаксический сахар», без которого можно обойтись, однако с генерацией намного удобнее. Прочтите о встроенных функциях в питон и поймите, что каждая делает, предварительно поигравшись в консоли интерпретатора. Освойте модель itertools. Начните играть в CheckIO.

Рекомендуем посмотреть «9 Youtube-каналов для изучения Python».

19. AWK, sed и grep
Поработать с AWK. Это неплохой C-подобный язык, который используется в bash скриптах. sed — потоковый текстовый редактор (а также язык программирования), применяющий различные предопределённые текстовые преобразования к последовательному потоку текстовых данных. Он и grep позволят вам сэкономить массу времени для обработки текстовой информации на сервере.

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

Рекомендуем посмотреть «Регулярные выражения: 5 сервисов для тестирования и отладки».
 

asdas

Member
Joined
Jun 21, 2017
Messages
80
Reaction score
5
Age
28
Годно.
2 ч / д * 3 д =6 ч
6 ч * 20 п =120 ч
--!120 ч / 24 ч = 5 д
--!120 ч / 2 ч=60 дн
Итог один,знания! и это куда лучше,чем пустая трата времени...
 
Joined
Jul 9, 2017
Messages
127
Reaction score
7
Age
36
Не плохие скиллы можно качнуть,автору спасибо однозначно!
 
Top