Pull to refresh
4
0
Михаил Евгеньевич @Kefir

User

Send message

JavaScript: исследование объектов

Reading time 10 min
Views 26K
Материал, перевод которого мы сегодня публикуем, посвящён исследованию объектов — одной из ключевых сущностей JavaScript. Он рассчитан, преимущественно, на начинающих разработчиков, которые хотят упорядочить свои знания об объектах.



Объекты в JavaScript представляют собой динамические коллекции свойств, которые, кроме того, содержат «скрытое» свойство, представляющее собой прототип объекта. Свойства объектов характеризуются ключами и значениями. Начнём разговор о JS-объектах с ключей.
Читать дальше →
Total votes 30: ↑24 and ↓6 +18
Comments 6

Личный опыт: Data Engineering на Upwork

Reading time 8 min
Views 42K
Я много лет работал Data Engineer'ом и Data Scientist'ом, решал сложные бизнес-кейсы, строил большие системы, выводил это все в продакшен. В начале 2017го я бросил пить, курить и работать в офисе и ушел фрилансить, экспериментировать с альтернативными формами занятости. Довольно много времени я провел на Upwork. Судя по многочисленным комментариям, уважаемая аудитория не до конца представляет себе, что это такое. Вещаю.

Upwork это крупнейшая в мире биржа фриланса. Дата сатанисты и дата инженеры мало кому в этом мире нужны (по сравнению с переводчиками, веб-мастерами и переписывателями текстов), так что задач для нас относительно мало, так что они тяготеют к крупнейшей бирже в мире. Других фриланс-бирж с постоянным потоком задач для дата саентистов в мире нет — ни Guru, ни Toptal, ни отечественный fl.ru спросом похвастаться не могут. Что важно — для специалистов более массовых специальностей опыт фриланса может сильно отличаться.
Читать дальше →
Total votes 94: ↑89 and ↓5 +84
Comments 120

Шпаргалка с командами Docker

Reading time 5 min
Views 643K
Прим. перев.: Неделю назад Aymen El Amri, руководящий компанией eralabs и создавший обучающий курс «Безболезненный Docker», опубликовал свой Docker Cheat Sheet — шпаргалку по основным командам Docker. Git-репозиторий этого документа на GitHub уже набрал 1000+ stars и несколько сторонних контрибьюторов, что подтвердило его актуальность и пользу.



Представленные здесь команды описаны минимально (с акцентом на читаемость как есть) и включают в себя установку Docker, работу с реестрами и репозиториями, контейнерами, образами, сетью, Docker Swarm. Ниже представлен перевод шпаргалки в её состоянии на 2 сентября с дополнениями из комментариев ниже.
Читать дальше →
Total votes 46: ↑42 and ↓4 +38
Comments 15

Реализация индикатора производительности запросов, хранимых процедур и триггеров в MS SQL Server. Автотрассировка

Reading time 25 min
Views 14K

Предисловие


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

Так как же определять состояния запросов? И как запускать трассировку при обнаружении проблем с запросами без участия человека?

В данной статье приведу реализацию индикатора производительности запросов, хранимых процедур и триггеров, а также их использование для запуска трассировки.
Читать дальше →
Total votes 22: ↑22 and ↓0 +22
Comments 12

Измеряем концентрацию CO2 в квартире с помощью MH-Z19

Reading time 4 min
Views 97K
Практически любая метеостанция, включая дешевые китайские модели за несколько долларов, умеет измерять основные параметры воздуха — температуру и влажность. С углекислым газом все сложнее: бытовых приборов, способных его измерять, практически нет в продаже. Усложняет ситуацию и то, что CO2 — газ без цвета и запаха, так что «носом» ощутить его концентрацию практически невозможно.

Подробности и измерения под катом.
Читать дальше →
Total votes 18: ↑14 and ↓4 +10
Comments 59

woSign продолжение китайской халявы (хоть и не такой большой как раньше)

Reading time 1 min
Views 25K
Некоторое время назад на хабре появилась новость о том, что Китайская компания WoSign изменила политику раздачи бесплатных сертификатов и позволяла выпустить сертификат только на один год и только на один домен. Что ж, теперь условия поменялись в лучшую сторону. Подробности под катом.

image

Читать дальше →
Total votes 24: ↑21 and ↓3 +18
Comments 43

Замеряем производительность с помощью BenchmarkDotNet

Reading time 6 min
Views 34K
imageДобрый день. Неделю назад я в третий раз применил библиотеку для создания\запуска .NET бенчмарков BenchmarkDotNet. Библиотека оказалась достаточно удобной, но практически не освещенной на хабре, что я сейчас и исправлю.

Под бенчмарком я подразумеваю измерение времени выполнения метода(ов). Для начала представим процесс написания бенчмарка руками. Создаем тестируемый метод, выбираем Release билд, создаем «замеряющий» метод, в нем собираем мусор, ставим StopWatch в начале и в конце, запускаем прогрев, запускаем тестируемый метод. Если тестируемый метод выполняется быстрее одного «тика» StopWatch, запускаем тестируемый метод много раз (пусть будет миллион), делим суммарное время на миллион, получаем результат (при этом нужно не забыть вычесть из суммарного времени время «холостого» прогона цикла на миллион операций).

А ведь это еще не все!
Total votes 20: ↑17 and ↓3 +14
Comments 19

Не пельменем единым жив программист или история о том, как все успеть

Reading time 7 min
Views 135K
image

По заявкам трудящихся и в связи с переносом — возвращаю пост, который многих порадовал. Надеюсь НЛО будет не против.

На написание этого поста меня сподвиг замечательный пост «За что конкретно я ненавижу некоторых отдельно взятых маркетологов — или как айтишник по магазинам ходил». Сразу хочу извиниться за возможные опечатки — пишу с планшета, сидя в микроавтобусе и вытягивая сеть телефоном. Hacker's keyboard очень удобен для ssh-доступа, но большие тексты писать им не очень удобно.

IT- специалисты — народ любопытный. То соберут на базе микроконтроллеров автоматическую систему полива и освещения для любимого фикуса, то пропатчат прошивку мультиварки для раздачи торрентов. Но, по непонятной и загадочной причине, когда дело доходит до еды, пресловутый принцип DIY дает сбой. И наш герой, способный часами переделывать кинескоп старого телевизора в Луч Смерти, идет на кухню утолить голод соевым текстуратом пополам с гидроцеллюлозой и «коллагеновым сырьем».

В этом посте я хочу разрушить миф о том, что еда может быть либо быстрой и удобной, либо съедобной. Не секрет, что многим из нас приходится работать по 12 часов в сутки, что не способствует кулинарным подвигам с участием 28 приправ и перьев с зада дракона, омытых слезами единорога. Вы получите замечательную возможность посмотреть в глаза своей половинки на 8 марта после того, как она получит не контроллер для дистанционного управления шторой, а свежевыпеченный хлеб ручной работы рано утром. Если вам надоело есть синтетику — добро пожаловать под hubracut.
Читать дальше →
Total votes 269: ↑263 and ↓6 +257
Comments 292

Лучшие бесплатные коллекции векторных иконок

Reading time 2 min
Views 332K
Привет, Хабр! Сегодня я хочу представить вам огромную коллекцию из 51 набора бесплатных векторных иконок. Да, есть потрясающие ресурсы Flaticon или Iconfinder, но бывают случаи, когда необходима именно группа иконок в едином стилистическом оформлении. Определиться с выбором, вам поможет эта подборка. Я старался собрать не как можно больше, а действительно самое лучшее.

Среди веб-разработчиков существует много споров о том, что лучше: иконочный шрифт или SVG спрайты? Четкого ответа на этот вопрос нет. Каждый выбирает свое. Данные наборы иконок вас неограничиывают в выборе, поскольку представлены в различных форматах: @font-face, SVG, EPS, AI, PSD, Sketch.

В целом данная подборка содержит более 10 000 иконок, охватывающих множество категорий: интерфейсы, технологии, наука, спорт, маркетинг, среда, транспорт и тд. Полые, заполненные, цветные, во Flat, Material, Elegant, Cartoon, Hand drawing стилях.

Responsive Icons (100 иконок, PSD, AI, EPS, SVG)


Responsive Icons

Читать дальше →
Total votes 91: ↑82 and ↓9 +73
Comments 23

Эволюция домашнего 3d принтеростроения

Reading time 4 min
Views 21K
На написание публикации меня подтолкнула переписка с одним товарищем из моего города. Суть ее заключается в следующем: он советует другому собрать принтер по его схеме, а не так давно я разобрал свой первый 3d принтер Mendel 90.

image

Это был мой первый принтер, и он познакомил меня с удивительным миром 3d-печати. Прошло уже больше года с того момента, но я нисколько не жалею о своем выборе, хоть и было достаточно неприятных моментов, истрачено много нервов от непонимания происходящего процесса и возникающих проблем. Данный принтер я купил у человека в моем городе за 43 тысячи рублей, по сравнению с тем, что предлагали на рынке официальные представители (на данный момент цены только ползут вверх) за 100 тысяч, а такую сумму я явно не собирался тратить на неизвестную игрушку, то данный принтер выглядел вполне себе нормально: имелся подогрев стола, печать с SD-карты, сопла разного калибра, простота конструкции… Но были и недостатки, из-за которых я спустя год его и разобрал. Со временем я стал понимать ущербность данной компоновки:

  1. Жестко закрепленный стол без возможности тонкой калибровки в виде пружинок и болтов, все было скручено жестко;
  2. Из предыдущего пункта вылазит следующий — требуется строго соблюдать горизонтальность оси Z, если будет разница в 200-300 микрон по высоте в разных углах всё, печать бесполезна, первый слой просто не ляжет нормально;
  3. Сама конструкция, которая подразумевает одновременное движения столика взад/вперед по оси Y и самой оси X, которая двигается в это же время перпендикулярно оси Y, со стороны выглядит волшебно, но на практике это приводит к ненужным колебаниям модели на столе, а если вы делаете что-то высокое и небольшое по размеру в основании, то велик риск того, что модель просто упадет (что иногда происходило);
  4. Медленная печать, нет смысла разгонять тяжелую каретку с экструдером и мотором свыше 60 мм/сек — будут артефакты и прочие прелести;
  5. Большие размеры при стандартной области печати 20х20х20 см, все размещено крайне не компактно;
  6. Далее список можно продолжить, но там будут уже относительно небольшие недостатки принтера...

Читать дальше →
Total votes 26: ↑23 and ↓3 +20
Comments 25

Новогодний релиз PVS-Studio 6.00: проверяем Roslyn

Reading time 16 min
Views 11K
PVS-Studio 6.00, C,C++,C#
Настало долгожданное событие. Мы выпустили релизную версию статического анализатора кода PVS-Studio 6.00, поддерживающего проверку C#-проектов. Теперь осуществляется проверка кода, написанного на следующих языках: C, C++, C++/CLI, C++/CX, C#. К выпуску шестой версии анализатора мы приурочили проверку открытого проекта Roslyn. Именно благодаря Roslyn в анализаторе PVS-Studio появилась поддержка C#, и мы очень благодарны компании Microsoft за реализацию и развитие этого проекта.
Читать дальше →
Total votes 39: ↑32 and ↓7 +25
Comments 38

Бесплатные инструменты для разработчиков баз данных

Reading time 6 min
Views 32K
После прочтения статьи о полезных и бесплатных плагинах для SSMS — TOP (10) бесплатных плагинов для SSMS, я решил поделиться своим списком бесплатных инструментов, которые могут быть очень полезны разработчикам баз данных, и не только. Инструменты ориентированны на разработку под Microsoft SQL Server. Некоторые инструменты, платные, однако содержат достаточно полнофункциональные бесплатные редакции, которых с головой хватает для небольших проектов.
Читать дальше →
Total votes 17: ↑13 and ↓4 +9
Comments 6

TOP (10) бесплатных плагинов для SSMS

Reading time 3 min
Views 50K


До того, как начать работать с SQL Server я толком то и баз данных в лицо не видел… Помню, что мне установили SQL Server Management Studio 2005 и дали задание активно «крутить педали». По прошествии пары недель, как бы так сказать, моя производительность по написанию запросов была явно в районе плинтуса…

Более опытный коллега с недоумением на меня посмотрел и посоветовал поставить пару плагинов для SSMS… после этого работать стало явно веселее.

В данном посте я хочу поделиться моим топ списком бесплатных плагинов для SSMS, которыми чаще всего пользовался.
Подробнее
Total votes 24: ↑20 and ↓4 +16
Comments 12

Dynamic T-SQL и как он может быть полезен

Reading time 6 min
Views 59K
В наших проектах нам приходится решать различные задачи. Для решения некоторых из них мы используем dynamic T-Sql (далее по тексту dynamic sql).

Для чего нужен dynamic sql? Каждый решает для себя. В одном из проектов с помощью dynamic sql мы решили задачи построения динамичных отчетов, в других — миграцию данных. Также dynamic sql незаменим в случаях, когда требуется создать/изменить/получить данные или объекты, но значения/названия приходят в качестве параметров. Да, это может показаться абсурдом, но есть и такие задачи.


Читать дальше →
Total votes 11: ↑11 and ↓0 +11
Comments 7

Как правильно пасти котов. История построения системы контроля и учета рабочего времени для ИТ-компании

Reading time 9 min
Views 19K

Эта история построена на ряде удачных совпадений, в которых нам, как нам кажется, удалось распознать правильную тенденцию и создать продукт, который может подойти многим похожим на нас. Потому, что… впрочем, обо всем по порядку.
Читать дальше →
Total votes 21: ↑13 and ↓8 +5
Comments 23

Angular Light для jQuery/JS разработчиков

Reading time 3 min
Views 18K


Я на Тостере периодический вижу вопросы типа «как скрыть блок по клику» или «как раскрасить по условию», поэтому я хочу вам показать 4 «приема» которые могут улучшить ваш jQuery-код и скорость разработки.

Начальный пример


Примеры к описанию ниже: jQuery пример и Angular Light пример
Этот пример состоит из 2-х «моментов»: 1. Кликом выбрать «панель», 2. Отобразить выбранную «панель».
Читать дальше →
Total votes 14: ↑10 and ↓4 +6
Comments 3

Microsoft добавил средство сбора телеметрии в Windows 7/8/8.1

Reading time 1 min
Views 300K
Сегодня на MS Windows 7 и 8.1 прилетели обновления KB3080149 и KB3075249. Телеметрическая информация передаётся на следующие сервера:
vortex-win.data.microsoft.com
settings-win.data.microsoft.com

Передача осуществляется через TCP по порту 443 с использованием SSL.
Для параноиков людей, беспокоящихся о несанкционированной передаче информации Microsoft (далее возможно и третьим лицам), предлагаю добавить сервера в список исключений маршрутизатора, а следующие строчки в файл hosts (%windir%\System32\drivers\etc\hosts):
127.0.0.1 vortex-win.data.microsoft.com
127.0.0.1 settings-win.data.microsoft.com
Total votes 86: ↑76 and ↓10 +66
Comments 279

Используем официальный docker-образ NGINX в InfoboxCloud: часть 1

Reading time 12 min
Views 59K
За последний год в Docker Hub стало доступно уже более 100 000 образов, а загружались образы с Docker Hub уже более 300 миллионов раз. Из них более 20 миллионов загрузок пришлись на 70 официальных образов разработчиков Docker, таких как Oracle, CentOS и NGINX.

NGINX используется на более 40% самых больших сайтов в мире, не только как веб-сервер, но и как реверс-прокси сервер, балансировщик нагрузки и HTTP кэш. Официальный образ NGINX был загружен 3.4 миллиона раз.



В этой статье вы узнаете:
  • как развернуть и использовать Docker-образ с NGINX.
  • как быстро развернуть реверс-прокси на NGINX и несколько сайтов в Docker
  • как развернуть геораспределенную инсталляцию, состоящую из нескольких сайтов и реверс-прокси в каждом из 3х регионов InfoboxCloud.

Если раньше вы не использовали Docker, рекомендуется к прочтению:
Используем Docker и не волнуемся о vendor-lock
Погружаемся в Docker: Dockerfile и коммуникация между контейнерами
Обзор новшеств Docker Engine с 1.0 до 1.8. Введение в Docker Compose

В конце статьи мы раздаем пробные версии InfoboxCloud бесплатно.
Читать дальше →
Total votes 14: ↑11 and ↓3 +8
Comments 5

Недопонимание про async/await и многопоточность в C#

Reading time 4 min
Views 80K
Привет, Хабр! Тема async/await в .NET Framework и C# 5.0 не нова и объезженна: все давно знают, что это, как оно работает, все знакомы с тем скромным фактом, что это очень текучая абстракция и поведение зависит от SynchronizationContext. Об этом очень много писали на хабре, ещё чаще этот вопрос размусоливался в блогах различных респектабельных персон .NET-сообщества.

Тем не менее, мне очень часто приходится сталкиваться с тем, что не только новички, но и матёрые тимлиды не совсем понимают, как правильно пользоваться этим инструментом в разработке.
Читать дальше →
Total votes 27: ↑24 and ↓3 +21
Comments 16

Высокопроизводительный код на платформе .NET

Reading time 16 min
Views 34K
Здравствуйте, дорогие читатели!

Не так давно мы занялись проработкой книги "Writing High-Performance .NET code", которая до сих пор не переведена на русский язык, хотя ей и скоро год.



Нас, конечно, не удивило, что такую книгу уже растаскивают на цитаты, однако выяснилось, что уважаемый автор Бен Уотсон даже выложил на сайте «Codeproject» целую статью, написанную по мотивам одной из глав. К сожалению, объем этого материала слишком велик для хабропубликации, однако мы решили все-таки перевести первую часть статьи, чтобы вы могли оценить материал книги. Приглашаем к прочтению и к участию в опросе. Кроме того, если все-таки целесообразно перевести и вторую часть — пишите в комментариях, постараемся учесть ваши пожелания.
Читать дальше →
Total votes 31: ↑30 and ↓1 +29
Comments 12

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity