Pull to refresh
0
0

Пользователь

Send message

Повышение энергоэффективности дата-центров: опыт Apple, Google, Microsoft, Active Power и Burland Energy

Reading time3 min
Views6.5K
На обеспечение эффективной работы дата-центров тратится очень много электроэнергии. Поэтому электричество является одной из основных статей затрат владельцев ЦОД. И эти расходы постоянно растут, поскольку появляются новые и новые хранилища данных. Увеличение энергопотребления влечет за собой повышение расходов на эксплуатацию вычислительной инфраструктуры. Также усугубляется проблема загрязнения окружающей среды из-за выработки дополнительной электроэнергии.

В посте описаны варианты повышения энергоэффективности дата-центров от ведущих корпораций.



Читать дальше →
Total votes 19: ↑16 and ↓3+13
Comments3

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

Reading time12 min
Views80K

Введение


Написание технического документа — трудное дело. Чтение плохо написанного технического документа является более трудным и, вероятно, более болезненным делом, чем его написание. Требуется большая работа, чтобы создать ясное, точное, интересное техническое описание. Поэтому, чтобы сделать жизнь хоть немного проще для всех участвующих сторон, я хотел бы поделиться с вами семью правилами, которым я следую, создавая техническую документацию.

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

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

Итак — эти 7 правил:
  1. Скука убивает
  2. Прежде чем начать, выясните точно для себя, какие действия вы ожидаете от читателя, осилившего ваш труд
  3. Пишите в соответствии с правильно сформированной структурой
  4. Избегайте неоднозначных местоимений
  5. Ясность = иллюстрации + слова
  6. Когда имеете дело с понятиями, концепциями и т.п., используйте логическую иллюстрацию и пример
  7. Не опасайтесь переделок

Читать дальше →
Total votes 26: ↑25 and ↓1+24
Comments17

Получение удаленных данных в iOS

Reading time10 min
Views15K
Это авторский перевод главы 6 Retrieving remote data из книги iOS7 in Action. В отличие от книги, весь интерфейс сделан программно, соответственно убран текст, описывающий, как делать все это в storyboard. Для простоты выбрано единственное положение экрана Portrait и целевая платформа iPhone.

Мы создадим приложение с единственной Label на экране, в которой будет отображаться случайная шутка о Чаке Норрисе, загруженная через API сайта api.icndb.com/jokes/random в момент запуска приложения.


Рис.1 Наше приложение, показывающее шутку о Чаке Норрисе.
Читать дальше →
Total votes 11: ↑11 and ↓0+11
Comments0

Do good code: 8 правил хорошего кода

Reading time9 min
Views122K
Практически всем, кто обучался программированию, известна книга Стива Макконнелла «Совершенный код». Она всегда производит впечатление, прежде всего, внушительной толщиной (около 900 страниц). К сожалению, реальность такова, что иногда впечатления этим и ограничиваются. А зря. В дальнейшей профессиональной деятельности программисты сталкиваются практически со всеми ситуациями, описанными в книге, и приходят опытным путём к тем же самым выводам. В то время как более тесное знакомство могло бы сэкономить время и силы. Мы в GeekBrains придерживаемся комплексного подхода в обучении, поэтому провели для слушателей вебинар по правилам создания хорошего кода.

В комментариях к нашему первому посту на Хабре пользователи активно обсуждали каналы восприятия информации. Мы подумали и решили, что тему «совершенного кода» стоит развить и изложить ещё и письменно — ведь базовые принципы хорошего кода едины для программистов, пишущих на любом языке.
Читать дальше →
Total votes 46: ↑35 and ↓11+24
Comments111

Лоукост VDS хостинг в России. Возможно ли?

Reading time8 min
Views45K
Айхор

Впечатлившись успехами американского хостера DigitalOcean (чего уж скрывать), мы в 2014 году решили создать недорогой и качественный VDS хостинг в России. На тот момент в нашем распоряжении был небольшой «дата-центр» из 4 стоек, располагавшийся в здании бывшего общежития, а в качестве системы охлаждения использовалось две недорогие сплит-системы. Канал на 100 мегабит, 2 древних маршрутизатора Cisco и сотня относительно новых серверов. Было бы смешно обещать клиентам хорошее качество с таким Starter Kit-ом. Но мы решили постараться достигнуть своей цели. Попробуем дать ответ на заголовок данного поста, и параллельно расскажем о нашем опыте создания лоукост хостинга.
Читать дальше →
Total votes 65: ↑60 and ↓5+55
Comments232

Создание канала с автопостингом в Телеграме без единой строчки кода

Reading time4 min
Views162K

Вступление


Предупреждаю сразу: технического в статье очень мало. Это практически пошаговая инструкция для не очень сведующих в техническом плане пользователей. Для людей сведущих (и тех, кому лень читать много текста), приведу две ссылки: Telegram Bots API + IFTTT Maker Channel.

Теперь подробнее. Думаю, все слышали про мессенджер Telegram. Вероятно, многие даже знают про нехитрый API для создания ботов в этом мессенджере. Кроме того, не так давно в T появилась возможность создавать так называемые «каналы» (channels), упрощающие мгновенную рассылку сообщений практически любому количеству подписавшихся на канал лиц. Наконец, самая свежая новость: ботов стало можно добавлять в качестве администраторов в каналы, то есть такие рассылки стало можно делать автоматизированно.

Думаю, не надо объяснять, что это открывает довольно широкие возможности для различных сервисов. Например, у меня довольно быстро получилось сделать следующее:
  • три канала (@RedditTop, @r_pics, @gone_wild — осторожно, последний с «взрослым» контентом), которые ежечасно импортируют топовые посты с Реддита (и двух его сабреддитов);
  • ещё канал, делающий то же с постами с 9GAG;
  • и, наконец, завел хитрого бота @JamesBot, который анонимно пересылает все сообщения, написанные ему, в общий канал (@secret_ru, @secret_en, @secret_es, @secret_ar или @secret_fa — в зависимости от языка). Получился анонимный чат средней степени трэшовости.

Уже после создания всех этих ботов и каналов мне пришло в голову, что простейший автоимпорт постов откуда-то «снаружи» можно наладить вообще без всякого кода и хостинга — буквально минут за 5. На помощь нам придет прекрасный сервис IFTTT — If This Then That, имеющий множество интеграций с социальными сетями и прочими сервисами. Правда, к сожалению, прямой интеграции с Телеграмом у него (пока?) нет — зато есть т.н. IFTTT Maker Channel, позволяющий делать простые HTTP(S)-запросы при срабатывании триггера. К сожалению, мы не сможем принимать сообщения, отправленные боту (входящие запросы IFTTT Maker принимать может, но, увы, только в строго определенном формате) — интерактива не выйдет. Зато сможем по срабатывании любого события (например, новый твит или пост в FB):
  • публиковать сообщение в канале,
  • отправлять сообщение в заранее выбранный чат (куда добавлен наш бот),
  • отправлять сообщение заранее указанному пользователю (который добавил себе бота).
Читать дальше →
Total votes 29: ↑25 and ↓4+21
Comments16

Обновление контента IPhone приложения

Reading time3 min
Views11K
Многие мобильные приложения показывают пользователю контент с сервера, и этот контент можно показывать в онлайне и оффлайне. Работа в онлайне тривиальна — при определенном UI событии, приложение читает данные с сети и показывает их пользователю. Работа в оффлайне может быть гораздо интереснее — возможность работы с документами в метро и тп. Но работа вне сети приносит и проблемы: теперь необходимо проводить синхронизацию данных и этот процесс не должен блокировать интерфейс пользователя.

Элементы в исходном коде


— доступ к сетевым ресурсам
— обработка xml
— доступ к файловой системе
— работа с потоками
Читать дальше →
Total votes 49: ↑37 and ↓12+25
Comments8

Установка неподписанных программ на устройства с iOS 9 без Jailbreak

Reading time3 min
Views118K
Дорого дня, уважаемые хабражители!

Сегодня я расскажу вам о том, как можно установить неподписанное (или плохо подписанное) приложение на устройство с iOS 9. Да, без Jailbreak. Да, бесплатно. Нужен лишь компьютер с OS X и Apple ID. Как такое возможно? Читаем под катом.



Осторожно! Много картинок!
Читать дальше →
Total votes 40: ↑33 and ↓7+26
Comments33

Как работает VMware DRS

Reading time1 min
Views42K
Сегодня мы поговорим о профильной теме — балансировке нагрузки с помощью VMware DRS (Distributed Resource Scheduler). Для осуществления этой задачи он использует доступные ресурсы виртуальной инфраструктуры.

Читать дальше →
Total votes 16: ↑12 and ↓4+8
Comments20

Ищем стабильность в ритейле, XYZ–анализ ассортимента

Reading time7 min
Views52K
XYZ–анализ — одна из форм анализа товарного ассортимента магазина, сети или отдельной товарной группы в ритейле.



XYZ–анализ определяет стабильность продаж товара за определенный период. Полезен для управления ассортиментом и поставками товаров, организации работы с поставщиками. Результаты позволяют разделить товары по категориям и выделить для них место на складе, уровень запасов и организацию доставки.

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

Начнем с рассмотрения его особенностей и возможностей применения.
Читать дальше →
Total votes 9: ↑9 and ↓0+9
Comments0

Как без мата создать игру на Unity3D

Reading time9 min
Views128K

Пролог


В начале 2015 года я решил написать свою первую игру. В качестве движка я, не долго думая, выбрал Unity3D, так как у меня был опыт в C# и JavaScript, и знакомые, которые могли помочь. Я вспомнил одну мини-игру, в которую я играл в детстве, и решил сделать нечто похожее. Установил себе Unity и поставил себе цель сделать рабочий прототип за пару недель, параллельно изучая движок.

Я начал реализовывать эту идею в свое свободное время. Через неделю был рабочий прототип, через полтора месяца у меня уже был работоспособная версия игры со всей прописанной логикой. Я удовлетворился этим и на время отложил игру на полочку. В июне я снова взялся за нее, с мыслями, что мне понадобится максимум месяц на то, чтобы ее доделать. Ох, как же я был не прав…
Читать дальше →
Total votes 25: ↑22 and ↓3+19
Comments25

Удачи в цифровую эпоху! Или включите параноика и проверьте защиту своих данных

Reading time8 min
Views86K
Долго полемизировать не буду, просто приведу 2 жизненных примера от близких людей, которые столкнулись с проблемами аутентификации в обычном современном мире и чуточку своих выводов.


Читать дальше →
Total votes 38: ↑27 and ↓11+16
Comments72

Сетевые оверлейные технологии для ЦОД. Часть 2

Reading time9 min
Views32K


Всех приветствую! В предыдущем посте мы постарались разобраться с предпосылками появления новых оверлейных технологий для ЦОД, а также их общей классификацией. В данной части статьи хотелось бы остановиться чуть более подробно на TRILL, FabricPath и VXLAN.
Читать дальше →
Total votes 7: ↑7 and ↓0+7
Comments2

Подборка полезных статей для iOS-разработчиков за текущую неделю

Reading time2 min
Views7.6K
Надеюсь, все успешно обновились до 9.0.2 и El Capitan. Уже успело подзабыться с презентации, что же там такого нового. Тем приятнее находить изменения. Сегодня вечером встреча Cocoa Heads Moscow. Большая программа. Не забывайте.
Кстати, 29 октября планируется ежегодная встреча разработчиков LLVM. Возможно там будет что-нибудь сказано про Swift и то, когда он станет Open-Source.



Читать дальше
Total votes 23: ↑18 and ↓5+13
Comments1

Критическая уязвимость WinRAR

Reading time2 min
Views36K
image

Иранский исследователь Mohammad Reza Espargham обнаружил уязвимость RCE (remote code execution) в одной из популярнейших утилит для создания архивов — WinRAR. Данной утилитой пользуются порядка 500 миллионов пользователей по всему миру, что делает уязвимость достаточно распространенной.

Уязвимость содержится в недостаточной обработке данных из панели модуля «Text», вкладки «Text to display in SFX window». Атакующий может снабдить sfx архив дополнительной полезной нагрузкой (payload) для атаки на целевую систему. Опасность состоит в том, что пользователь, даже заподозрив и проверив файл антивирусом скорее всего не сможет обнаружить «скрытый сюрприз» во вложении архива.

Уязвимость связана с возможностью модификации самораспаковывающихся архивов (SFX) WinRAR таким образом, чтобы в момент запуска они запускали исполняемый код.
Читать дальше →
Total votes 37: ↑19 and ↓18+1
Comments50

Использование GATT в Bluetooth LE на Intel Edison

Reading time4 min
Views7.8K
Intel Edison способен стать мозгом любого устройства из армии интернета вещей. Мозг умеет обрабатывать информацию, но для того, чтобы её получать, ему нужны органы чувств. Например, как Edison может узнать, жарко или холодно сейчас в помещении? Ответ прост – с помощью температурного сенсора.

Из этого материала вы узнаете о том, как использовать профиль общих атрибутов (Generic Attribute Profile, GATT) при организации взаимодействия Intel Edison с Texas Instruments SensorTag по протоколу Bluetooth Low Energy.
Читать дальше →
Total votes 17: ↑16 and ↓1+15
Comments0

Наиболее частые проблемы Python и решения (перевод)

Reading time2 min
Views18K
Перевод статьи «Most Frequent Python Problems and Solution» с сайта pamno.com.

Мы проанализировали Stack Overflow на предмет наиболее часто встречающихся проблем и резюмировали ответы.

1. Как мне проверить, существует ли файл, используя Python, без использования try оператора?


Совместимо с Python 2.x/3:

  import os

  print os.path.isfile(fname)

2. Лучший способ проверить список на пустоту


Совместимо с Python 2.x/3:

  li=[]

  if not li:

     print “empty"

Читать дальше →
Total votes 32: ↑12 and ↓20-8
Comments10

SAP Afaria. Маленькая SMS для взлома большой компании

Reading time7 min
Views27K
Меня зовут Дмитрий Частухин, и я уже долгое время занимаюсь информационной безопасностью различных софтверных решений для Enterprise. В основном, это, конечно, разнообразные продукты компании SAP (можно почитать предыдущие мои посты на эту тему тут, тут или тут).

Сегодня же мы с вами заглянем под «капот» SAP Afaria – MDM-решения от известного немецкого софтверного гиганта. Устраивайтесь поудобнее и откидывайтесь на спинку кресла (пожалуйста, будьте аккуратнее, если вы сидите на стуле).


Читать дальше →
Total votes 32: ↑28 and ↓4+24
Comments10

Задача из области финансовых вычислений

Reading time2 min
Views8.3K
В финансах есть задачи по оценке инвестиционных проектов, в которых находится целый ряд показателей по значениям которых даётся общая оценка. Это такие показатели как срок окупаемости проекта, приведённый доход, чистый приведённый доход и т. д. Как правило, для определения каждого из показателей существуют свои формулы, в которые, просто, нужно подставить исходные данные, вычислить и получить результат. Но есть один из показателей, который простой подстановкой данных в формулу не решается. Этот показатель называется "внутренняя норма доходности". В настоящее время существует большое множество различного программного обеспечения для финансистов, которое позволяет вести все вычисления автоматически, не задумываясь о том, как всё происходит внутри.
Читать дальше →
Total votes 10: ↑5 and ↓50
Comments0

Information

Rating
Does not participate
Registered
Activity