CODE BLOG
12.1K subscribers
5.13K photos
36 videos
99 files
2.91K links
IT юмор, обучающие видео и многое другое.

YouTube: https://youtube.com/codeblog
VK: https://vk.com/codeblog
Чат: @codeblog_chat

По всем вопросам: @p_shvanov

Ресурс включён в перечень Роскомнадзора: https://www.gosuslugi.ru/snet/67c04851241cbc1f487e5054
加入频道
«Профессии будущего» в области программирования

Директор по маркетингу сервисов компании «Яндекс» Андрей Себрант — о том, каким навыкам программистам стоит учиться сейчас, чтобы не остаться на обочине в будущем.

Профессии в программировании, которые можно смело считать профессиями будущего:

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

2. Эксперт по open source
Вторая профессия будущего находится на стыке менеджмента и IT. Этот человек вместо того, чтобы писать задачу на разработку чего-либо с нуля, знает, где и какой открытый код можно быстро приспособить, или где и какие API могут быть доступны.
Сейчас «изобретением велосипедов» занято огромное количество команд. Нужны будут специалисты, которые являются экспертами по open source и понимают, какие велосипеды не надо изобретать. Они, наоборот, возьмут готовые части, которые лежат, из них быстро соберут — может быть, тот же велосипед, но собственный из готовых частей — и не будут поднимать здесь производство отдельных колес, шин и так далее.

3. Специалист по интерфейсному программированию
Необходимо уметь работать с API облачных сервисов, знать эти сервисы, уметь их быстро связывать, да и вообще — понимать какой с чем можно связать. Это не написание всего с нуля, а максимальное использование того, что уже доступно и написано другими людьми.

Каким профессиям, наоборот, суждено погибнуть:
Я бы не ставил так вопрос. Хороший программист умеет учиться. Сама профессия программирования будет модифицироваться, она уже сегодня использует совершенно другие инструменты и другие языки, чем 20 лет назад. И надо сказать, что те, кто им научились 20 лет назад, никуда не исчезли, они просто стали программистами, работающими в другой среде. Так будет и дальше. Некие отдельные умения программиста или некие среды, в которых он работает, будут, несомненно, изменяться.

Можно сказать, что те люди, которые сейчас являются веб-программистами, станут программистами для других устройств, так как важность веб-сервисов становится все меньше по мере роста портативных устройств или интернета вещей. Да, по этой же причине появляются новые языки программирования — Swift или Go. Но они благосклонно приняты программистами.

В общем, программисты, несомненно, останутся, просто будут работать в изменившейся среде, к чему им не привыкать.
Криминальное чтиво программиста (Переозвучка)

Переозвучка отрывка из фильма Криминальное чтиво (Pulp Fiction) о тяжелой жизни программиста в IT компании.
​​Алгоритмы Программирования

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

http://smbx.me/AwbGe

#video #algorithms
​​Блэк Рекс. Ключевые процессы тестирования

В этой книге Рекс Блэк, опираясь на свой богатый опыт, выделяет двенадцать процессов тестирования, являющихся ключевыми для достижения успеха. За описанием каждого из этих процессов следует отменно выстроенный пример использования процесса в различных организационных, операционных и технологических условиях. Вместо громоздких правил представлены списки контрольных вопросов - легкие, гибкие инструменты для внедрения тестирования, ориентированного на процесс, для сбора измерений и внесения последовательных изменений.

Год: 2006
Размер: 566 с.
Формат: pdf
Блэк_Р_Ключевые_процессы_тестирования.pdf
41.4 MB
Блэк Рекс. Ключевые процессы тестирования

#book #qa
​​Да ну, бред какой-то! Я лучше сразу ринусь быдлокодить, не зная ни контекста, ни предметной области и потрачу в 3 раза больше времени, сил, буду проклинать работу и дурацкое руководство, которое ставит тупые задачи...

#ithumor
Высокооплачиваемые языки программирования, которые стоит выучить прямо сейчас

Зарплаты в сфере информационных технологий растут независимо от экономического положения в стране, а программирование – востребованный навык не только настоящего, но и будущего. Мы рассмотрели несколько языков программирования, знание которых поможет зарабатывать больше сейчас и в ближайшие годы.

1. Java (Средняя зарплата Java-разработчика в РФ – 138 000 рублей по данным Superjob)
дна из причин успеха – на #Java разрабатывают приложения операционной системы для смартфонов Andoid, которая является самой распространённой в мире. Также Java используется для разработки продуктов в банковской сфере и в автоматизированном тестировании.

2. Ruby (Средняя зарплата Ruby-разработчика в РФ – 110 000 рублей по данным портала trud.com)
Язык программирования #Ruby используется для разработки мобильных и веб-приложений. Особенно востребован написанный на этом языке фреймворк Ruby on Rails, который упрощает интеграцию веб-приложений с сервером и базами данных.

3. PHP (Средняя зарплата PHP-разработчика в РФ – 105 000 рублей по данным Superjob)
#PHP – один из самых популярных языков для разработки серверной части веб-сайтов. Портал для поиска работы Superjob отмечает, что на рынке труда не хватает PHP-разработчиков, поэтому работодатели повышают оклады и прислушиваются к условиям соискателей.

4. Python (Средняя зарплата Python-разработчика – 105 000 рублей по данным Superjob)
#Python один из самых мощных языков программирования: он используется для математических вычислений, анализа данных, веб-разработки, машинного обучения, автоматизации задач. Python подойдёт для новичка в программировании, потому как код на нём проще писать и читать по сравнению с другими языками.

5. Swift (Средняя зарплата разработчика iOS приложений от 64 000 до 120 000 рублей в зависимости от региона по данным Superjob)
#Swift – основной язык разработки приложений для macOS, iOS, watchOS и tvOS. Это универсальный язык программирования для работы с продуктами корпорации Apple, который был разработан не так давно, в 2014 году.

Существует множество других объективных и субъективных факторов для выбора языка программирования и уровень заработной платы лишь один из них. Для начала стоит определиться с областью разработки и изучить язык, который подойдёт для новичка. А на уровень заработной платы специалиста в IT также влияют опыт и непрерывное обучение, ведь технологии обновляются с большой скоростью и востребованный профессионал обязан поспевать за изменениями.
​​Система умный дом на Arduino Uno

Уроки для Arduino Uno для чайников. Как сделать систему умный дом своими руками при помощи модулей Arduino, ESP8266, ESP32, ESP-12E. Самые простые примеры построения элементов умного дома с arduino uno и умного дисплея NEXTION для начинающих.

http://smbx.me/PXXq5

#video #arduino
​​Джозеф Хокинг. Unity в действии. Мультиплатформенная разработка на C#

Unity зачастую представляют как набор компонентов, не требующих программирования, что в корне неверно. Для создания успешной игры необходимо многое: великолепная работа художника, программистские навыки, интересная история, увлекательный геймплей и дружная и слаженная работа команды разработчиков. А еще нельзя забывать про безупречную визуализацию и качественную работу на всех платформах - от игровых консолей до мобильных телефонов. Unity объединяет мощный движок, возможности профессионального программирования и творчества дизайнеров, позволяя воплотить в жизнь самые невероятные и амбициозные проекты. Осваивайте Unity и быстрее приступайте к созданию собственных игр!

Год: 2016
Размер: 336 с.
Формат: pdf
Джозеф_Хокинг_Unity_в_действии_М.pdf
13 MB
Джозеф Хокинг. Unity в действии. Мультиплатформенная разработка на C#

#book #gamedev #unity #csharp
Этот сисадмин выглядит настолько брутально, что от одного его присутствия в серверной хосты поднимаются, пинг уменьшается в 10 раз, а нагрузка на сервер снижается втрое.

#ithumor
Футболка с Чаком-программистом +1000 к навыку программирования

#ithumor
Три пути развития программиста

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

1. Работа в офисе
Работая в офисе, ты быстрее всего будешь набираться опыта, потому что постоянно будешь общаться с коллегами. Поэтому в качестве первого места работы я рекомендую выбирать именно такой вид работы. Из минусов – это необходимость выходить из дома и тратить время на дорогу.

2. Работа на удаленке
Для работы удаленно необходимо иметь самодисциплину и определенный уровень знаний – никто особо сюсюкаться с тобой не будет. Задача поставлена и ее нужно выполнить в срок. Также при таком формате работы могут страдать социальные навыки, ведь видеть коллег ты будешь только на экране. Из плюсов – комфортный лично для тебя график, домашний уют, экономия времени на дорогу.

3. Работа на себя
Создаешь свой бизнес и уже только ты сам себе босс. Опять-таки очень важна самодисциплина, но также добавляется дополнительная ответственность за смежные направления (налоги, юридическая волокита, управление подчиненными). Из плюсов – значительно больший доход (если руки не из жопы и мозги на месте), нет начальства, но и ответственность тоже вся на тебе.

Не важно какое именно направление ты для себя выберешь, главное делать свою работу и делать ее качественно. Поставить цель и постепенно двигаться к ней. Чудес не бывает, постоянная работа над собой способна сделать из тебя специалиста чем бы ты ни занимался.
​​Создание блога на Ruby on Rails

Реализация базового функционала блога: создание, редактирование, удаление и отображение статей. Создание приятного дизайна пользовательского интерфейса.

http://smbx.me/4YvIL

#video #ruby
​​Привет, друзья! 😉

Для создания нового юмористического ролика с переозвучкой мне нужна ваша помощь. Расскажите самые интересные и смешные случаи, которые случались с вами или с друзьями в мире IT, например:
- Истории про неадекватных заказчиков и пользаков
- Фейлы на работе или учебе
- Все что можно подставить под заголовок "Тяжела жизнь программиста"

Пишите с тегом #coolstory в нашем чате @codeblog_chat или напрямую мне @shwanoff (если не хотите палиться). Лучшие истории будут использованы в моем новом ролике, а авторы будут упомянуты в описании (если конечно они не будут против)

Очень надеюсь на вашу активность )))
​​Сергей Бабин. Инструментарий хакера

Оригинальное изложение материала позволит читателю понять методы обеспечения защиты информации, как на личных компьютерах, так и в профессиональных системах. Описаны основные принципы подбора инструментария хакера. Приведено множество примеров взлома и сокрытия следов: перехват паролей, атаки на Wi-Fi-роутеры, подмена MAC-адресов, способы оставаться невидимым в Интернете.

Год: 2014
Размер: 240 с.
Формат: pdf
Сергей_Бабин_Инструментарий_хакера.pdf
10.5 MB
Сергей Бабин. Инструментарий хакера

#book #hacking
Минутка грусти, печали и безнадежности программистов...

#ithumor
5 ошибок при программировании, которых надо избегать

Почему программы, бывает, не работают? Потому что программисты делают ошибки. Они зачастую проявляют небрежность. Они не всегда используют лучшие инструменты или наилучшие практики. Давайте рассмотрим наиболее частые ошибки, которые случаются в работе программиста.

Ошибка #1. Плохая практика комментирования
Комментарии являются элементами текста программы, которые не подлежат исполнению компьютером. Они пишутся программистами как примечания, поясняющие то, что происходит в коде.
Комментарии также важны, когда вы работаете в группе, или когда ваша разработка будет продолжать свою жизнь без вашего участия. Вы можете продвинуться по карьере, и, возможно, кому-то другому потребуется понять ваш код. И тогда комментарии очень пригодятся.
Но при этом чрезмерно большое количество комментарий в коде говорит о том, что он написан очень запутанно. Лучше всего делать так, чтобы код был понятен без комментариев, но также дополнять код комментариями для большей ясности.

Ошибка #2. Плохие имена переменных
Допустим, вы встречаете в коде строку a = b/c. Что это значит? Что такое b и c? Как они связаны с остальным кодом? Написав программу, через десять минут вы это забудете. Тем более это не поймет кто-то другой, кому придется вносить в ваш код исправления или писать обновление программы.
Теперь взгляните на следующее выражение: gallons = miles/mpg. Тут сразу ясно, что означает каждая из переменных. Одна представляет галлоны, другая представляет мили, а третья — мили на галлон. Все понятно.
Стремитесь именовать ваши переменные так, чтобы имя отображало их функцию. Вы сэкономите массу времени и всем сильно упростите жизнь.

Ошибка #3. Недооценка важности лабораторных записок
Если вы еще не ведете лабораторные записки, немедленно начинайте. Фиксируйте в них сделанные вами изменения, их обоснование, вещи, которые вы рассматривали и забраковали, ссылки на полезные ресурсы и все остальное, что может пригодиться вам в будущем. Этим вы также поможете своим будущим коллегам или тем, кто займет ваше место, а при случае даже судье, если вам потребуется доказать свое авторство.

Ошибка #4. Нежелание учиться писать на человеческом языке
Вам надо уметь писать, чтобы разъяснять концепции, выдвигать идеи, получать финансирование, просить разъяснений, готовить предложения и даже приводить доводы в пользу повышения по службе. Участники Open Source-проектов сотрудничают с коллегами в очень обширных группах, и единственный способ оставаться в постоянном контакте состоит в том, чтобы писать четкие и понятные сообщения.
Отсюда вытекает простой вывод. Если вы хотите заниматься квалифицированной работой или трудиться над чем-то важным, нужно уметь писать на человеческом языке, на русском (а лучше на английском), а не только на языке программирования.

Ошибка #5. Плохое форматирование кода
Для каждого программиста (или проекта) обычно характерен определенный стиль программирования. Не так уж важно, какой у вас стиль, если он разумный и единообразный. Но желательно, чтобы формат кода стал вашим проводником.
​​Язык Lisp

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

http://smbx.me/aNZzq

#video #lisp
​​Кристиан Кеннек. Интерпретация Лиспа и Scheme

Это перевод на русский язык «широко известной в узких кругах» книги Кристиана Кеннека «Les Langages Lisp» (aka Lisp in Small Pieces). Книга затрагивает основы построения интерпретаторов и компиляторов Лиспа (в первую очередь его диалекта Scheme), а также разнообразие вариантов понимания семантики его конструкций и возможностей вроде окружений, замыканий, исключений, продолжений, рефлексии и макросов.

Год: 2013
Размер: 609 с.
Формат: pdf