Обновить
1098.25

Программирование *

Искусство создания компьютерных программ

Сначала показывать
Порог рейтинга
Уровень сложности

Junior FPGA Design Engineer: как стать?

Время на прочтение11 мин
Охват и читатели155K
Всем привет!

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

Разработка под FPGA (ПЛИС) — это не просто какой-то язык. Это очень объемная область, с огромным количеством подводных камней и нюансов.

В этой статье вы найдете:
  • список тем, которые должен освоить начинающий разработчик под FPGA
  • рекомендуемую литературу по каждой из тем
  • набор тестовых вопросов и лабораторных работ
  • классические ошибки новичков (и советы по исправлению)

Добро пожаловать под кат!
Читать дальше →

Как отправить электронное письмо с помощью Python: руководство для «чайников»

Время на прочтение6 мин
Охват и читатели192K


В нашем блоге мы много пишем о создании email-рассылок и работе с электронной почтой. В современном мире люди получают множество писем, а у некоторых даже есть несколько почтовых ящиков. Все это усложняет процесс их администрирования, что вынуждает искать пути решения проблемы. Не так давно мы рассказывали о том, как инженер из США упорядочивал свои письма с помощью нейронной сети (1, 2), а сегодня речь пойдет об автоматизации отправки писем для разных почтовых ящиков.

Редактор издания Motherboard Майкл Берн (Michael Byrne) написал материал о том, как отправлять электронные письма для различных почтовых ящиков с помощью Python. Мы представляем вашему вниманию адаптированный перевод этой заметки.
Читать дальше →

Сервер очередей Gearman: опыт практического использования и веб-приложение Gearman Monitor && Control

Время на прочтение9 мин
Охват и читатели16K
Сервер очередей Gearman — прекрасный инструмент. Но в работе сервер очередей в чем-то напоминает системный блок: что-то делает, но для того чтобы знать, что именно, и управлять процессом, нужен монитор с клавиатурой, и представление о том, что вообще происходит в системном блоке.
Зачастую кажется, что Gearman — как диковинный инструмент без рукоятки: интересен и красив, но неясно, зачем нужен, а пользоваться болезненно.
Нужно выбраться из этой ситуации, Gearman действительно хорош.
Давайте рассмотрим:
  • Gearman «на пальцах»
  • примеры реальных задач с использованием Gearman
  • веб-приложение и класс для мониторинга в реальном времени и управления процессами на сервере очередей Gearman


Интересно? Прошу под кат.
Читать дальше →

День рождения Ершова

Время на прочтение17 мин
Охват и читатели23K
«Элитарность программистов представляется мне очевидной и в этом представлении является интереснейшим вызовом человечеству в целом.»
— Андрей Петрович Ершов



«Суть проблемы в том, чтобы признать, что программирование требует от человека несколько особого взгляда на мир, его потребности и эволюцию, особой моральной подготовленности к своему долгу. Программист — это солдат технической революции и как таковой должен обладать революционным мышлением.»
— А. П. Ершов

Дональд Кнут вспоминал: «Это началось еще когда я был студентом последнего курса. Тогда только появилась книга Андрея «Программирование для БЭСМ», и мы, группа студентов, смогли убедить преподавателя русского языка включить её в курс в качестве одного из двух сборников текстов для изучения научной лексики».

Ершов потом водил дружбу с Кнутом и Сеймуром Пейпертом, разработал Русский алгоритмический язык, который народ за глаза называл «Ершол». В 1985 создал серию обучающих телепередач для обучения программированию школьников (советский MOOC), через год свозил группу школьников-программистов в Америку, а еще через год принял в Новосибе ответную делегацию американских школьников-программистов. (Кстати, если вы знаете участников этих событий — отпишитесь в комментах или в личку.)

Заслуги и вклад Ершова в советское (и мировое) программирование описаны в Википедии, мне же захотелось заглянуть чуть глубже и поискать фоточки первоисточники. Пару часов покопался в архиве. Нашел кое-что интересное. Под катом — много картинок и две фундаментальные науч-поп статьи Ершова про важность программирования.

А это Ершов и МакКарти если что:
image

PyNSK #7 — апрельская встреча Новосибирского Python сообщества

Время на прочтение2 мин
Охват и читатели2.8K
image

Питонисты Новосибирска и ближайших регионов, приглашаем вас на встречу сообщества Python сообщества — PyNSK.

30-го апреля (суббота) состоится седьмая встреча. Она пройдет в Культурном Центре «Этаж» и начнется 13-00.

Регистрация: http://bit.ly/pynsk_7

В прошлый раз было бурное обсуждение про юнит-тестирование и вот мы решили продолжить, но уже под другим углом — BDD. И в первый раз мы поговорим об играх. Мы выбрали два интересных доклада и приглашаем всех питонистов.
Читать дальше →

Kite: контекстные подсказки и автодополнение при написании кода

Время на прочтение1 мин
Охват и читатели26K


Во время написания кода часто приходится открывать Google, искать образцы кода, документацию и подсказки. Разработчики приложения Kite предлагают продвинутое решение — интерактивный «помощник», который в процессе набора кода в фоновом режиме вытягивает контекстную информацию из общедоступных образцов кода в интернете (и из кодовой базы текущего проекта) и показывает на экране в удобном виде.

Kite интегрируется в редактор кода и консоль.
Читать дальше →

От паспортного сканера к автономному распознающему устройству

Время на прочтение3 мин
Охват и читатели16K
Прошло около трех месяцев с момента создания нашего первого рабочего образца паспортного сканера. Получив хорошие результаты по качеству и скорости распознавания, мы, подняв на флаг практически Олимпийский девиз “Быстрее! Качественнее! Компактнее!”, приступили к созданию следующей модели ПАК. Если вам интересно, что у нас получилось в результате, добро пожаловать под кат.


Читать дальше →

Делаем UI плагина в IntelliJ Idea «как у maven'a»

Время на прочтение5 мин
Охват и читатели8.5K

Предыстория


Встала задача создать для разработчиков и QA удобный способ стартовать порядка 20 серверных приложений, живущих в общем репозитрии (Spring с XML конфигурацией и общим для все частей приложения бутстрап классом).


Как сделать нечто удобное человеку, который последний раз GUI рисовал в Borland Delphi 6.0? Взять что-то уже готовое и приспособить для своих нужд, ну и раз уж будущие пользователи работают в IntelliJ Idea, появилась мысль соорудить плагин, который будет выглядеть и вести себя так, как это делает Maven Integration Plugin.


image


Под катом классы и некоторые утилитарные методы, которые помогут это сделать.

Читать дальше →

Привычка Stack Overflow

Время на прочтение4 мин
Охват и читатели43K
Stackoverlow уже стал незаменимым инструментом для множества разработчиков. Продвигаемая авторами модель использования – это “база знаний”. Набираем вопрос в гугле → попадаем на stackoverlow → читаем ответ → profit! Так сайт работает для большинства – за счет гораздо меньшей группы разработчиков, которая отвечает на вопросы. Зачем они это делают? Большинство – для повышения собственной квалификации и социальной реализации. И для карьеры полезно, и комплексы стороной обходят, и кризис среднего возраста не придет. Под катом – перевод статьи одного такого разработчика, который делится своими практическими наработками о том, как ему удалось отвечать на вопросы начинающих разработчиков каждый день.

stackoverflow for fun and profit!

HoloLens, Xbox One Dev Mode и возможности для разработчиков с конференции //Build

Время на прочтение23 мин
Охват и читатели9.9K
Здравствуйте, дорогие читатели!

В этом году на конференции Microsoft //Build представлено не только много технологических анонсов и нововведений, но и не мало интересных возможностей на самом мероприятии.


HoloLens и Holographic Academy, Xbox One Developer Mode и подробности интересных технологических проектов с финала Imagine Cup США — об этом я хочу рассказать вам в данной статье.
Читать дальше →

GECOn 2016: Первая Гомельская IT-конференция (24 апреля)

Время на прочтение2 мин
Охват и читатели4.6K

Признайтесь себе, когда вы в последний раз были на IT конференции? Такой, чтобы от профессионалов и для профессионалов? А такой, чтоб взять и никуда не ехать, а сходить на нее прямо в Гомеле? То то же. Значит, у меня есть, что вам предложить :)
Первая Гомельская IT-конференция!



Что это


Минимум воды, максимум технической начинки:


  • 24 апреля – это уже совсем скоро;
  • ОКЦ, ул. Ланге 17 – самый центр города;
  • 13 докладов – на актуальные темы, затрагивающих все аспекты разработки программного обеспечения;
  • 3 потока – докладов много, часов в сутках мало, а рассказать хочется обо всем;
  • 17 экспертов – и я не вру, когда называю их экспертами – это было доказано и подтверждено годами опыта и количеством успешных проектов;
  • 250 участников, среди которых вас до сих пор нет?!
  • Цена – бесплатно, нужна только регистрация.
Читать дальше →

Краткий обзор Kotlin и сравнение с C#

Время на прочтение10 мин
Охват и читатели43K

От автора:


Эта статья представляет собой заметки на коленке и является скорее кратким обзором Kotlin, включая небольшое сравнение с языком С# с точки зрения синтаксиса. Это мое мнение и мои размышления по поводу этого сравнительно молодого языка в мире Java-платформы, который на мой взгляд имеет хорошие шансы добиться успеха.

Читать дальше

Объяснение эксперимента о ветвлениях, или философские изыскания на тему бенчмарков в вакууме и в… реальности

Время на прочтение11 мин
Охват и читатели7.2K
Надеюсь, кто хотел, ознакомился с моим пробным экспериментом на Хабре в этой статье. Теперь я считаю, что будет правильным огласить его результаты и даже дать более детальное объяснения причин, по которым вообще подобные эксперименты проводятся. Пост будет наполовину философским, поскольку сейчас в компьютерном мире всё настолько сложно, что без философского осмысления принять какие-то осмысленные решения просто невозможно. Я постараюсь вообще выразить своё мнение о сферических измерениях в вакууме, поэтому будет много букв. В статье есть опрос, проводимый до 1-го мая 2016. Под катом целиком ИМХО.

Читать дальше →

Ближайшие события

Новости мира IT. Апрель

Время на прочтение4 мин
Охват и читатели18K
Мы в GeekBrains стараемся не отставать от жизни и предлагаем вам нашу подборку новостей и новинок мира IT за апрель, которые обратили на себя наше внимание.



Новости компаний


XP живее всех живых


Не новость, но факт интересный.

Два года назад официально прекратилась поддержка Windows XP. Тем не менее, согласно свежей статистике, система по-прежнему функционирует на 181 миллионе машин, что составляет 11% от всех существующих компьютеров. Цифра оказывается ещё значительнее, если сказать, что вплоть до октября 2015 года версий Windows XP использовалось больше, чем OS X (а это подавляющее большинство MacBook-ов).

Согласно ирландскому статистическому агентству StatCounter около 47 миллионов машин с XP на борту работает в Китае. И это тоже удивительный факт, если вспомнить. какие усилия прилагал Microsoft для продвижения 10-й версии именно в КНР (например, контракт с крупнейшим поисковиком в регионе Baidu).
Читать дальше →

Сортировка слиянием по-простому

Время на прочтение4 мин
Охват и читатели227K
Кто-то сказал однажды, что
...any scientist who couldn't explain to an eight-year-old what he was doing was a charlatan.

Оказывается, это был Курт Воннегут.

Я не стремился доказать это высказывание. Я стремился опровергнуть свою тупость.


Допустим у нас есть два массива чисел, отсортированных по возрастанию.

int[] a1 = new int[] {21, 23, 24, 40, 75, 76, 78, 77, 900, 2100, 2200, 2300, 2400, 2500};
int[] a2 = new int[] {10, 11, 41, 50, 65, 86, 98, 101, 190, 1100, 1200, 3000, 5000};

Необходимо слить их в один упорядоченный массив.

int[] a3 = new int[a1.length + a2.length];

Это задача для сортировки слиянием.

Что это такое? В интернете есть ответ, есть описание алгоритма, но я его не понял с одного присеста и решил разобраться сам. Для этого необходимо понять базовый принцип алгоритма, чтобы можно было по памяти воссоздать алгоритм применительно к своей задаче.
Читать дальше →

Подробности завершения периода беты Stack Overflow на русском языке

Время на прочтение1 мин
Охват и читатели7.8K
Подробный рассказ о том, как Stack Overflow на русском вышел из статуса беты, появился на днях в блоге компании.

К моменту завершения аттестации, статистика была следующей:

  • 115.7 вопросов задают в день
  • 82% вопросов отвечены
  • 1,499 постоянных пользователей и 33,678 пользователей всего
  • 1.7 ответа на вопрос в среднем
  • 42,464 визита в день

Помимо этого:

  • Больше 2,000 участников в месяц присоединяется к сообществу.
  • Сайт наиболее популярен (по убыванию) в: Москве, Киеве, Санкт-Петербурге, Минске и Харькове.
  • Более 3,000 участников в месяц получают правильные ответы.
  • Чтобы получить столько внимания, как на Stack Overflow на русском, вам пришлось бы нанять 23,000 разработчиков на полный рабочий день.

Запуск бета-версии SO на русском состоялся в 2015 году, став результатом поглощения сайта ХэшКод. Таким образом, процесс становления равноправным участником сети Stack Exchange занял у сервиса менее восьми месяцев.
Читать дальше →

Сравнение языков программирования относительно работы на фриланс-бирже upwork.com + опрос

Время на прочтение3 мин
Охват и читатели86K

Недавно (в конце марта 2016 года) делал исследование перспективности языков программирования на upwork.com для одного из своих проектов и подумал, что это может быть интересно кому-нибудь ещё.


В первую очередь меня интересовало соотношение спрос/предложение по наиболее популярным ЯП, а так же уровень оплаты труда по каждому из них. Так же мне было любопытно какой уровень квалификации ожидают работодатели (и соответственно сколько они предполагают платить)


image
Процентное соотношение офферов по популярным языкам программирования

Узнать ответ на главный вопрос жизни, вселенной и всего такого

Так ли нужно избавляться от ветвлений? — На примере sign, abs, min и max

Время на прочтение6 мин
Охват и читатели16K
Я бы хотел предложить сообществу поучаствовать в пробном эксперименте. Суть его состоит в том, чтобы прогнать на своём компьютере программу, написанную на C++, и поделиться результатом измерения времени, которое она выдаёт, сравнивая скорость работы функций sign(x), abs(x), min(a,b) и max(a,b) в исполнении с ветвлением и без него. В статье я объясню свою мотивацию, покажу сами функции, а в конце предложу условия участия в эксперименте и его (увы) ограничения.
Читать дальше →

Я не знаю как это сделать! Честно-честно

Время на прочтение5 мин
Охват и читатели53K
Это статья о простом приеме мотивации молодого специалиста. Если коротко: сильный специалист признается, что не знает как решить задачу, чтобы мотивировать новичка. О паре случаев из жизни под катом.
Читать дальше →

Анонс Rust 1.8

Время на прочтение3 мин
Охват и читатели9K

Мы рады представить новую версию Rust — 1.8. Rust — это системный язык программирования, нацеленный на безопасную работу с памятью, скорость и параллельное выполнение кода.

Как обычно, вы можете установить Rust 1.8 с соответствующей страницы официального сайта, а также ознакомиться с подробным списком изменений в этой версии на GitHub. В этот релиз вошло порядка 1400 патчей.

Читать дальше →

Вклад авторов