Pull to refresh
21
Karma
0
Rating
Roman Gomolko @Romanych

User

  • Followers 9
  • Following 7
  • Posts
  • Comments

Домашний тлен: токсины черной плесени

Popular science Health

Если бы из всех существ, животных, грибов, бактерий и вирусов нужно было бы выбрать один, который соответствовал бы слову Тлен, пожалуй, победила бы именно плесень. Именно её мы видим в заброшенных домах Припяти, она поглощает пищу, к которой уже никто не притронется, ею обрастают старые погреба, сырые доски и вещи, брошенные на свалку, сырые обои и гипсокартон в вашем туалете.

Читать далее
Total votes 116: ↑112 and ↓4 +108
Views 43K
Comments 134

Новые идеи для нового будущего

Decentralized networks Open source *Social networks and communities The future is here
image
Для тех, кто хочет увидеть то, о чём мечтал.

Цель


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

Зачем?


Это попытка построить то будущее, в котором мы станем лучше и о котором мы мечтали.
Читать дальше →
Total votes 22: ↑17 and ↓5 +12
Views 11K
Comments 112

Comedy. Акторы в Node.JS для гибкого масштабирования

Node.JS *

Привет, хабравчане! В этой статье я познакомлю вас с фреймворком Comedy — реализацией акторов в Node.JS. Акторы позволяют масштабировать отдельные модули вашего Node.JS приложения без изменения кода.

Читать дальше →
Total votes 27: ↑26 and ↓1 +25
Views 15K
Comments 36

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

ERP-systems *Development Management *Project management *Agile *Product Management *
О том, когда задач больше чем ресурсов на их выполнение, очередь задач со временем увеличивается и часть из них можно смело назвать «дурацкими».
Дурацкая задача – когда ожидаемая от реализации польза не оправдывает количества необходимых ресурсов, но Заказчик настаивает на необходимости её выполнения.
О
  • управлении потоком задач на разработку,
    Как избавится от «дурацких» задач?
  • управлении расходами на разработку,
    Как определить и выбрать самые выгодные задачи?
  • распределении ограниченных ресурсов.
    Как сделать так, чтобы все Заказчики были довольны, а количество ресурсов при этом осталось тем же?

Читать дальше →
Total votes 27: ↑25 and ↓2 +23
Views 12K
Comments 36

Переход от монолита к микросервисам

System Analysis and Design *Perfect code *Designing and refactoring *

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


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

Читать дальше →
Total votes 36: ↑30 and ↓6 +24
Views 33K
Comments 30

Это маленькое чудо — алгоритм Кнута-Морриса-Пратта (КМП)

C++ *C *
Tutorial
Алгоритм Кнута-Морриса-Пратта используется для поиска подстроки (образца) в строке. Кажется, что может быть проще: двигаемся по строке и сравниваем последовательно символы с образцом. Не совпало, перемещаем начало сравнения на один шаг и снова сравниваем. И так до тех пор, пока не найдем образец или не достигнем конца строки.
Читать дальше →
Total votes 69: ↑67 and ↓2 +65
Views 127K
Comments 57

Удивительная история document.write

Abnormal programming *Website development *JavaScript *Programming *Browsers
Translation
Метод document.write — один из самых странных методов. Он вставляет HTML-код на страницу сразу после себя. Точнее говоря, сразу после тега <script>, внутри которого он расположен. И только в том случае, если документ еще не был загружен полностью. А если был? Тогда страница очищается и заменяется на, что было указано.

Можно вставить строку, которая явно сломает остальную страницу:

document.write('<plaintext>')

Или можно поиграть в русскую рулетку:

if (Math.random() > 0.9)
  document.write('<!--')
Читать дальше →
Total votes 86: ↑82 and ↓4 +78
Views 45K
Comments 35

Пакет-географ – первая рабочая версия

Website development *PHP *Geoinformation services *Laravel *

Прежде всего хотел бы поблагодарить за более, чем 80 звёзд на GitHub, которые мне дали читатели Хабра по результатам предыдущего поста. И это несмотря на то, что репозиторий был почти пустой, а ссылка была неочевидна. На лицо полезность этого пакета!


Для тех, кто пропустил первый пост, маленькое повторение. Если у Вас в приложении есть что-то вроде:


Читать дальше →
Total votes 35: ↑34 and ↓1 +33
Views 24K
Comments 42

Как Spotify масштабирует Apache Storm

CloudMTS corporate blog Website development *System Analysis and Design *Development of mobile applications *Development for e-commerce *
Spotify — шведский сервис потокового воспроизведения музыки с которым сотрудничают такие компании как Sony, EMI, Warner, и Universal. Сервис Spotify был запущен в октябре 2008 года, сейчас он предоставляет более 30 млн композиций. Многие считают его попыткой повторить успех Napster и легализовать его модель. Шведам все это удалось едва ли не лучше всех в мире.

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


/ фото Sunil Soundarapandian CC
Читать дальше →
Total votes 21: ↑16 and ↓5 +11
Views 11K
Comments 3

Определяем ключевые товары с помощью линейной регрессии

datawiz.io corporate blog Algorithms *Big Data *Mathematics *Machine learning *
Ритейл, все-таки, штука интересная. Особенно, если разрабатываешь сервис для его аналитики. Каждый поход в магазин превращается в мини-исследование. Идешь себе вдоль полок и думаешь:
“С чем лучше сосиски коррелируются с кетчупом или мариноваными огурцами? А черт, ладно, беру и то, и то!”
“Hoegaarden почти раскупили, а ведь до вечера пятницы еще целых полдня. Эх, че ж так плохо спрос то спрогнозировали? ”

Интересно, а что применяют управляющие для прогнозирования продаж?

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

image


Так вот, мы в Datawiz.io, решительно не согласны с таким подходом.
Читать дальше →
Total votes 17: ↑10 and ↓7 +3
Views 9.6K
Comments 8

Человеческий фактор в разработке программного обеспечения: психологические и математические аспекты

Website development *Mathematics *
Разработка программного продукта — это процесс, в котором человеческий фактор играет очень важную роль. В статье поговорим о различных психологических и математических законах и принципах. Некоторые из этих принципов и законов вам хорошо известны, некоторые — не очень, а некоторые помогут объяснить ваше поведение или поведение ваших сотрудников и коллег.

Разработка ПО – нелинейный процесс

Разработка программного обеспечения — нелинейный процесс. Если на проект выделено 5 разработчиков, которые за 5 месяцев должны разработать продукт (25 чел./мес.), то 25 разработчиков не смогут сделать эту же работу за 1 месяц (те же 25 чел./мес.).


image
Читать дальше →
Total votes 51: ↑39 and ↓12 +27
Views 25K
Comments 14

Nokia Firmware Cooker — конструктор прошивок для 5800

Smartphones
Обещал написать обзор таковой программы для 5530, но ссылки на неё тайно пропали. Пусть это останется интригой, пока не свяжусь с автором. А пока, встречайте: редактор прошивок для 5800!

image
Nokia Firmware Cooker — программа, созданная специально для любителей оптимизировать и модифицировать свой телефон. С помощью этой программы Вы сможете собрать себе личную прошивку для 5800 (и только!). К сожалению, настолько хорошо разработанная программа написана пока только для 5800, в процессе написания уже Конструктор прошивок для 5530, для других телефонов и вовсе не видел. Но, надеюсь на то, что владельцев 5800 не меньше, чем 5530.
Под катом: скрины, инструкция, описания, ссылки.
Читать дальше →
Total votes 61: ↑55 and ↓6 +49
Views 3.2K
Comments 34

Где искать примеры для WPF и WCF?

Lumber room
Установил давно Windows Software Development Kit (SDK) for Windows Server 2008 and .NET Framework 3.5 для того, чтобы использовать стандартные профайлеры для WPF. А сегодня подсказали, что там установлено примеров на 240 мегабайт: одних только сжатых WPFSamples на 70 мегабайт, так же там есть и WCF примеры и FrameworkSamples (и с использованием ClickOnce). Для студентов и школьников есть пример калькулятора на WPF. Так же очень сильный пример notepad под WPF.
После установки я обнаружил примеры у себя в папке C:\Program Files\Microsoft SDKs\Windows\v6.1\Samples\.
P.S. Найти бы нормальный список этих примеров… А то все не пересмотреть ;) А так, думаю, полезно будет каждому.

Total votes 11: ↑8 and ↓3 +5
Views 1.1K
Comments 4

Качества перспективного работника

Personnel Management *
Не могу сказать, что с первого своего рабочего дня я был отличным исполнителем. Я был зеленый и не понимал многого, что от меня ожидалось, делал не то что нужно. Встречая хороших менеджеров, работая с отличными руководителями а, впоследствии, руководя другими, я научился многим ценным привычкам. Я начинал работать помощником ректора в коммерческом вузе и, по странному стечению обстоятельств, в последующих двух компаниях, мне также приходилось тесно работать с топ-менеджментом. А еще с точно такими же, каким я был вначале. Рефлексируя, я начинал понимать что ценится в работниках, с точки зрения руководителя.

Решил выписать самое основное — советы, зная которые с самого начала, я думаю, достиг бы сейчас много большего. Применяя их вам будет легче понимать начальство, а с вами будет проще работать, вам будут доверять, делегировать, поручать руководство другими (в которых вы, к слову, станете ценить то же самое).
Читать дальше →
Total votes 116: ↑107 and ↓9 +98
Views 2.7K
Comments 66

Основы основ: акции (часть два)

Finance in IT
Итак, в предыдущем топике мы обсудили, что такое акции, зачем они нужны и откуда они берутся. Если вы не читали его и не ощущаете себя полностью знакомыми с этими вопросами — возможно, имеет смысл прочитать. А пока мы плавно переходим к тому, что с этими акциями происходит после IPO.

Замечание автора: как и в предыдущих топиках, я не ставлю целью объять необъятное, и постараюсь лишь «на пальцах» объяснить некоторые базовые вещи. Если вы считаете, что информация не полна или не точна — я в высшей степени приветствую развернутые комментарии (которые я постараюсь инкорпорировать в текст статьи) — или, что еще лучше — самостоятельные топики. И еще — огромное спасибо всем тем, кто читал, комментировал, уточнял, задавал вопросы — мне приятно видеть, что людям это интересно. Мне приятно было получать ваши комментарии, и я постараюсь ответить на все возникшие вопросы.

Как торгуются акции


Большинство акций так или иначе продается на биржах (альтернативой являются внебиржевые сделки, так называемые over-the-counter). Биржа (вообще-то биржи бывают разные, а здесь речь пойдет о фондовых биржах — stock exchange) — это, в самом простом понимании, место где покупатели и продавцы встречаются и договариваются о цене. Какие-то биржи очень похожи на то, что вы видели в голливудских фильмах — люди стоят в торговом зале и кричат «Продаю…! Покупаю!!» — таковой до последнего времени (начала 2007) была биржа NYSE — знаменитый New York Stock Exchange.

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

Читать дальше →
Total votes 105: ↑93 and ↓12 +81
Views 25K
Comments 62

Как загрузить большую карту с Google Maps — два

Lumber room
В предыдущей записи этого блога обсуждалась загрузка больших фрагментов карт с Google Maps.

Я сделал новую версию своей программы BoobleMaps, которая как раз этим и занимается. Вы выделяете интересующий регион в Google Earth, сохраняете его в kml-файл и используете BoobleMaps для загрузки фрагментов и их сшивки. Загруженные фрагменты сохраняются в кэше. Программа имеет анти-бан защиту, но за её работу, понятное дело, не отвечаю. Кстати, замечено, что, во всяком случае раньше, банили только за спутник, но не за карты и оверлеи.

Небольшую статью посвященную краткому описанию, как хранятся данные на Google Maps я здесь перенабирать не буду, даю ссылку: ->

По описанию Google Maps в этой статье не актуальны только имена серверов с которых подгружаются спутниковые снимки и версии карт (меняются весьма часто).
Приводится описание первой версии программы. Вторая, вы увидите, очень похожа на первую, только чуть проще в использовании.

Архив с программой и библиотекой найдёте здесь: ->

Исходные коды программы маринуются на google.code здесь: ->

Ошибки, пожелания, замечания по коду (если кто снизойдёт) — приветствуются, буду рад.

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

UPD.
Совсем забыл, хотел обратиться к сообществу, может кому будет не лень присоединиться к проекту: нужно научить программу читать настройки из внешнего файла, сейчас они забиты в классе Settings.
Также было бы неплохо реализовать автоматическое определение текущей версии фрагментов карт и спутника.

Total votes 31: ↑31 and ↓0 +31
Views 376
Comments 34

Непроходимые дебри бизнеса, ч. 2

Lumber room
Это вторая часть заметки о том, как мы делали магазин www.Smart-Masses.ru. Если не читали первую часть — милости просим часть 1. Тем кто читал — поехали дальше.

Капитал /К. Маркс/


Чтобы сделать магазин, нужны деньги. Зачем они нужны?
о бабках и рекламе
Total votes 36: ↑30 and ↓6 +24
Views 305
Comments 32

Яндекс.Склонятор

IT-companies
Яндекс выпустил XML-склонятор русских имен. Сервис по адресу export.yandex.ru/inflect.xml?name=Вася%20Пупкин берет имя и выдает его склонения в такой форме:
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <inflections>
  3.   <original>&#1042;&#1072;&#1089;&#1103; &#1055;&#1091;&#1087;&#1082;&#1080;&#1085;</original>
  4.   <inflection case="1">&#1042;&#1072;&#1089;&#1103; &#1055;&#1091;&#1087;&#1082;&#1080;&#1085;</inflection>
  5.   <inflection case="2">&#1042;&#1072;&#1089;&#1080; &#1055;&#1091;&#1087;&#1082;&#1080;&#1085;&#1072;</inflection>
  6.   <inflection case="3">&#1042;&#1072;&#1089;&#1077; &#1055;&#1091;&#1087;&#1082;&#1080;&#1085;&#1091;</inflection>
  7.   <inflection case="4">&#1042;&#1072;&#1089;&#1102; &#1055;&#1091;&#1087;&#1082;&#1080;&#1085;&#1072;</inflection>
  8.   <inflection case="5">&#1042;&#1072;&#1089;&#1077;&#1081; &#1055;&#1091;&#1087;&#1082;&#1080;&#1085;&#1099;&#1084;</inflection>
  9.   <inflection case="6">&#1042;&#1072;&#1089;&#1077; &#1055;&#1091;&#1087;&#1082;&#1080;&#1085;&#1077;</inflection>
  10. </inflections>
Пользуйтесь на здоровье :)

Склонятор стал 17-м мини-проектом сборника Яндекс.Нано.

P. S. Обнаружил на Хабре единственную девушку-участницу разработки проекта :)
Total votes 119: ↑114.5 and ↓4.5 +110
Views 15K
Comments 64

Information

Rating
Does not participate
Location
Украина
Date of birth
Registered
Activity