Как стать автором
Обновить
-1
0

Программист

Отправить сообщение

Руководство по материалам электротехники для всех. Часть 3

Время на прочтение10 мин
Количество просмотров48K
Продолжение руководства по материалам электротехники. В этой части заканчиваем разбирать проводники: Углерод, Нихромы, термостабильные сплавы, припои — олово, прозрачные проводники.

image

Добро пожаловать под кат (ТРАФИК)
узнать о материалах
Всего голосов 54: ↑53 и ↓1+52
Комментарии81

Как Айтишнику на Руси работа ищется

Время на прочтение5 мин
Количество просмотров11K
В предыдущих двух статьях (Я, Айтишник и Царь Горох) я рассказал как пришел к такому этапу своей жизни, в этой хочу рассказать о парадоксе искомых и ищущих, о рынке труда Айти в Москве и зарубежом.

image

Итак, отдохнув свой законный месяц, я взялся за поиск работы. Прекрасно понимая дефицит кадров на рынке труда, зная уровень кандидатов и зарплаты на которые они претендуют я решил рассматривать все варианты. За годы жизни в Москве и за динамику работы у Царя Гороха я сильно подустал, подустал от ритмов Москвы, хочется чего то поменьше, но подушевнее — создавать что то, что дарит кому то радость и доставляет удобство. Для начала я разместил три резюме, подход был следующий:
Читать дальше →
Всего голосов 47: ↑14 и ↓33-19
Комментарии47

Руководство по материалам электротехники для всех. Часть 4

Время на прочтение11 мин
Количество просмотров42K
Продолжение руководства по материалам электротехники. В этой части начинаем разбирать диэлектрики, часть полностью посвящена неорганическим диэлектрикам: фарфору, стеклу, слюде, керамике, асбесту, элегазу и воде.

image

Добро пожаловать под кат (ТРАФИК)
узнать о материалах
Всего голосов 43: ↑40 и ↓3+37
Комментарии44

Выбираем бесплатный сервер в облаке для тестовых целей, домашних проектов и т.д

Время на прочтение7 мин
Количество просмотров371K
Всегда хотелось познакомиться с облачными сервисами, но на моих работах они либо не использовались, либо не в моём отделе. Платить свои деньги не очень хотелось за такое знакомство, да и всё это казалось довольно сложным. Куча разных тарифов, что-то бесплатно, что-то платно. Но на самом деле каждый может разобраться с этим и самое главное легко. Настолько легко, что вы просто обязаны получить свой собственный бесплатный облачный сервер прямо сейчас. Осталось только выбрать какой.

Статья будет полезна тем, кто ещё не пользовался облачными серверами.


Читать дальше →
Всего голосов 37: ↑36 и ↓1+35
Комментарии110

По следам highloadcup: php vs node.js vs go, swoole vs workerman, splfixedarray vs array и многое другое

Время на прочтение8 мин
Количество просмотров28K
Рассказ о том как я участвовал в highloadcup (чемпионат для backend-разработчиков) от Mail.Ru, написал на php сервер обслуживающий 10000 RPS, но всё равно не получил победную футболку.


Читать дальше →
Всего голосов 39: ↑39 и ↓0+39
Комментарии43

Наш путь к грин картe

Время на прочтение9 мин
Количество просмотров18K
В США мы приехали в лихие 90е, но с тех пор тут изменилось немногое, и наш опыт может оказаться ценным для многих. Муж программист и математик, способный писать на всем, насколько я понимаю (а вот я нисколько не программист, так что простите если что не так), от ассемблера до С, С++ и далее везде.

Приехали мы по рабочей визе L1b, мужа перевели в американский филиал восточноевропейской компании, в которой он до этого пару лет проработал. Я до приезда в США была лингвистом, лексикографом, занималась составлением словарей. С нами была 5 летняя дочь, а дочка номер два родилась вскоре после приезда. Это важно, поскольку вопрос об образовании детей встал достаточно скоро, и как только прошёл стресс связанный с рождением второго ребёнка, я начала теребить мужа — а что у нас с оформлением Грин карты? Вопрос был принципиальным — мы со старшей математику учим по русскому учебнику или по американскому? Возвращаемся в Москву или остаёмся в США? Это же две совершенно разные образовательные задачи! В общем, пришлось мужу оторваться от любимых программ и пойти к начальству выяснять, поскольку его попытки отговориться от меня тем, что они нас сюда привезли, они и решат вопрос, успехом не увенчались.

Оказалось, что начальство сильно вопросом оформления Грин карты не интересовалось — у нас есть иммиграционный адвокат, сказали они, мы платим ему за всех работников, и за вашу Грин карту уже полгода назад заплатили, все вопросы туда. Сказано-сделано, звоним туда. А я не ваш адвокат, отвечает адвокат, я адвокат компании, все вопросы туда. Тут мне уже стало реально интересно, что же происходит, и начальству пришлось убедительно попросить адвоката все-таки с нами встретиться и рассказать нам, когда же он все-таки планирует оформить нам грин карту и что ему удалось сделать за истекшие полгода.
Читать дальше →
Всего голосов 62: ↑53 и ↓9+44
Комментарии48

Интервью с Иваром Якобсоном, основоположником UML, RUP, Essence

Время на прочтение8 мин
Количество просмотров4K
image Ивар Якобсон, почти легенда — основоположник UML, RUP, SEMAT — неугомонен, продолжает попытки навести порядок в индустрии разработки ПО. И на вопрос: «Что помогает оставаться таким активным» отвечает: «Having fun!» :)
Читать дальше →
Всего голосов 15: ↑13 и ↓2+11
Комментарии2

git rebase для начинающих

Время на прочтение4 мин
Количество просмотров191K
В продолжение статьи на тему что сказать git, чтобы он сделал то, что вам нужно и перед статьей как создать PR в чужой Open Source проект на GitHub думаю стоит полезным рассказать о том, что такое git rebase.
Читать дальше →
Всего голосов 26: ↑16 и ↓10+6
Комментарии8

Основы Docker за Х часов и Y дней

Время на прочтение8 мин
Количество просмотров162K

0. Вступление


Цель данной статьи собрать в небольшую кучку основную информацию, минимально достаточную для того, чтобы начать работать с докер на ежедневной основе и удалить с рабочей машины локально установленные apache, mysql, virtualenv, python3, mongodb, memchaced, redis, php5, php7 и весь остальной зоопарк, который мы используем при разработке, и который зачастую еще и конфликтует между собой от версии к версии.
Читать дальше →
Всего голосов 43: ↑41 и ↓2+39
Комментарии16

Топ 10 стажировок для IT-специалистов

Время на прочтение4 мин
Количество просмотров61K
image

Получение теоретических знаний в университете – дело важное. Но не менее важна возможность протестировать их на практике, особенно если речь о такой прикладной сфере как информационные технологии. Если вы настроены именно на это, то стажировка во время учебы или сразу после выпуска – для вас. А чтобы облегчить ваш поиск, мы, StudyQA, подготовили подборку из 10 лучших стажировок для IT-специалистов. При выборе программ мы принимали во внимание статус компании и условия оплаты.
Читать дальше →
Всего голосов 8: ↑8 и ↓0+8
Комментарии0

7 правил хорошего тона при написании Unit-тестов

Время на прочтение4 мин
Количество просмотров38K

“Хорошими манерами обладает тот,
кто наименьшее количество людей
ставит в неловкое положение.”
Дж. Свифт


Привет, коллеги! Сегодня я бы хотел поговорить о Unit-тестировании и некоторых “правилах” при их написании. Конечно, они неформальные и не обязательны к выполнению, но при их соблюдении всем будет приятно и легко читать и поддерживать тесты, которые вы написали. Мы в Wrike видели достаточно Unit-тестов, чтобы понять основные проблемы, которые возникают при их написании и поддержке, и сформулировать несколько правил для их предотвращения.

Читать дальше →
Всего голосов 36: ↑30 и ↓6+24
Комментарии223

Внутренние механизмы V8 и быстрая работа со свойствами объектов

Время на прочтение11 мин
Количество просмотров16K
Этот материал посвящён тому, как внутренние механизмы V8 работают со свойствами JavaScript-объектов. Если рассматривать свойства с точки зрения JavaScript, то разные их виды отличаются друг от друга не так уж и сильно. Скажем, JS-объекты обычно ведут себя как словари со строковыми ключами и произвольными объектами в качестве значений. Однако, если почитать спецификацию языка, можно выяснить, например, что свойства разных видов по-разному ведут себя при их переборе. В других случаях поведение свойств различных видов, в основном, выглядит одинаково.

Казалось бы, реализация механизма работы со свойствами, учитывая их схожесть, задача не такая уж и масштабная, однако, в недрах V8 используется несколько различных способов представления свойств. Сделано это, во-первых, для обеспечения высокой производительности, во-вторых — ради экономии памяти.

image

В этом материале мы хотим рассказать о том, как V8 добивается высокой производительности при обработке динамически добавляемых свойств объектов. Знание особенностей механизма работы со свойствами необходимо для понимания сущности способов оптимизации выполнения JavaScript в V8, таких, например, как встроенные кэши.
Читать дальше →
Всего голосов 29: ↑29 и ↓0+29
Комментарии8

Ланнистеры всегда платят свои долги! (и технические тоже)

Время на прочтение10 мин
Количество просмотров11K

Практики управления техническим долгом в отдельно взятой команде


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


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


Что удалось получить в результате:


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

Давайте расскажу, как мы этого добились.


Читать дальше →
Всего голосов 17: ↑16 и ↓1+15
Комментарии12

Почему вашему мозгу нужно больше отдыхать

Время на прочтение21 мин
Количество просмотров50K
Исследования коротких перерывов на сон, медитации, прогулок на природе и привычек выдающихся художников и атлетов показывают, как перерывы в активной деятельности мозга увеличивают производительность, пополняют запасы внимательности, укрепляют воспоминания и поощряют творчество.

image

В ходе рабочей недели, обычно около трёх часов дня мой лоб и виски начинает заполнять знакомое ощущение боли. Мне кажется, что экран монитора начинает светиться ярче. Мои глаза пробегают одно и то же предложение по нескольку раз, но я не могу понять его смысла. Даже если я отважно начал свой день, пробираясь через постоянно растущий список историй к написанию и редактированию, емейлов к отправке и к ответу, документов к прочтению, в такие моменты всё это кажется таким же безнадёжным, как карабкание на постоянно растущую гору. Столько всего нужно сделать – а обычно мне очень нравится моя работа – но мозг требует остановки. Он переполнен, и ему нужно время на перерыв.
Читать дальше →
Всего голосов 27: ↑22 и ↓5+17
Комментарии13

Выразительный JavaScript: Обработка событий

Время на прочтение19 мин
Количество просмотров267K

Содержание




Вы властны над своим разумом, но не над внешними событиями. Когда вы поймёте это, вы обретёте силу.
Марк Аврелий, «Медитации».


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

Обработчики событий


Представьте интерфейс, в котором единственным способом узнать, нажали ли на кнопку клавиатуры, было бы считывание текущего состояния кнопки. Чтобы реагировать на нажатия, вам пришлось бы постоянно считывать состояния кнопок, чтобы вы могли поймать это состояние, пока кнопка не отжалась. Было бы опасно проводить другие подсчёты, отнимающие процессорное время, так как можно было бы пропустить момент нажатия.
Читать дальше →
Всего голосов 18: ↑18 и ↓0+18
Комментарии1

Погружение в CSS: метрики шрифтов, line-height и vertical-align

Время на прочтение11 мин
Количество просмотров43K
image

line-height и vertical-align — это простые свойства CSS. Настолько простые, что большинство из нас уверены, что понимают, как они работают и как их использовать. К сожалению, это не так — на самом деле они, пожалуй, являются самыми сложными свойствами, поскольку играют важную роль в создании малоизвестной особенности CSS под названием «строчный контекст форматирования» (inline formatting context).

Например, line-height можно задать в виде длины или безразмерного значения, но его значение по умолчанию — normal (стандартное). Хорошо, но что значит «стандартное»? Зачастую пишут, что это (как правило) 1, или, может быть, 1,2. Даже в спецификации CSS нет четкого ответа на данный вопрос.

Нам известно, что безразмерное значение line-height зависит от значения font-size, но проблема в том, что font-size: 100px выглядит по-разному для разных гарнитур. В связи с этим возникает вопрос: всегда ли line-height будет одинаковым или может различаться? Действительно ли это значение находится в промежутке от 1 до 1,2? А как vertical-align влияет на line-height?

Давайте углубимся в не самый простой механизм CSS…
Читать дальше →
Всего голосов 28: ↑28 и ↓0+28
Комментарии9

Настройка среды разработки Webpack 3 + Angular 4: от сложного к простому

Время на прочтение13 мин
Количество просмотров23K
Всем привет!

Современное front-end-приложение на Angular должно включать в себя следующие характеристики:

  • Возможность использования типизированного JS — Typescript
  • Обеспечение удобства и производительности разработки с помощью HMR (hot module replacement);
  • Модульность приложений и возможность отложенной загрузки модулей (Lazy Loading);
  • AoT — режим (ahead-of-time), повышающий производительность приложения.

Существует много вариантов сборки, решающих эти задачи (angular cli, A2 seed и т. д.). Обычно они имеют сложную структуру, плохо настраиваются/расширяются и представляют собой монолит, который невозможно изменить.

В статье я расскажу, как совместить Angular 2+ с webpack и разобраться со всеми этапами сборки/разработки.

Вы удивитесь, как это просто.
Читать дальше →
Всего голосов 22: ↑21 и ↓1+20
Комментарии23

О-о-очень долгожданный релиз Sublime Text 3.0

Время на прочтение1 мин
Количество просмотров85K

Спустя долгие годы ожидания в beta и alpha релизах (а это около 3.5 лет) наконец-то вышел Sublime Text 3.0!


linux

Читать дальше →
Всего голосов 96: ↑88 и ↓8+80
Комментарии206

Практика формирования требований в ИТ проектах от А до Я. Часть 7. Передача требований в производство. Заключение

Время на прочтение9 мин
Количество просмотров7.3K

XI Специфицируем требования


Требование — всего лишь временный посредник для решения проблемы реального мира.
«Фабрики разработки программ» [8]



Когда основные артефакты проектирования готовы, можно приступать непосредственно к специфицированию Требований с целью передачи их разработчикам, реализующим потребности заказчика в целевом продукте. От того насколько точно созданные спецификации подходят конкретной команде для переработки их в готовый программный продукт, зависит качество и конечная себестоимость этого продукта.

Цель данной группы работ: на основании собранной информации о целевом продукте подготовить качественные спецификации требований, позволяющие максимально эффективно организовать процесс их реализации.
Читать дальше →
Всего голосов 10: ↑6 и ↓4+2
Комментарии2

Как я перестал любить Angular

Время на прочтение21 мин
Количество просмотров115K

Вступление


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


На дворе 2017ый год и для каждого нового продукта/проекта встает вопрос выбора фреймворка для разработки. Долгое время я был уверен, что новый Angular 2/4 (далее просто Angular) станет главным трендом enterprise разработки еще на несколько лет вперед и даже не сомневался что буду работать только с ним.


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


Дисклеймер: данная статья строго субъективна, но таков мой личный взгляд на происходящее и касается разработки enterprise-level приложений.

Читать дальше →
Всего голосов 118: ↑112 и ↓6+106
Комментарии519

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Дата рождения
Зарегистрирован
Активность