Pull to refresh
1
0
Владимир Пестов @KozzyKoder

User

Send message

W.Script языки программирования, или как мы развлекаемся в нашей компании

Reading time2 min
Views4.9K
Наша компания (Австралия, Сидней) существует уже 2 года. Так вот — решили мы год назад сделать для разработки свои языки программирования. Точнее сама основа уже была — закрытые языки программирование нашей компании-предшественницы.

В итоге мы получили три языка программирования — R.Script (микропроцессоры, вычислительные программы), L.Script (GUI, Web приложения) и главный — W.Script (этот язык — основа двух предыдущих и с ним можно делать все, что хочешь).

В этой статье я впервые в интернете расскажу о этих мозгоубивающих увлекательных языках программирования.
Читать дальше →

Применение Data mining в продажах

Reading time6 min
Views18K
Существует множество компаний, которые продают товары клиентам или оказывают какие-то услуги. Часто продавцы интуитивно принимают решения, какой именно товар из всей существующей линейки лучше подходит клиенту. Также интуитивно определяется, какой массив клиентов более интересен для компании, а для каких клиентов продажа и дальнейшее обслуживание будут слишком затратные и невыгодные.
Для технологичного понимания всех этих вопросов хорошо подходит анализ информации с помощью технологии Data mining. Автоматизируя процесс сегментации клиентов с помощью кластеризации Data mining, компания может найти ответы на множество вопросов.
Рассмотрим вариант, когда компания занимается продажей товаров или услуг и дальнейшим послепродажным обслуживанием. Соответственно у компании есть потенциальные клиенты, которым осуществляются продажи. Также есть клиенты, которые обслуживаются или были ранее на обслуживании, т.е. которым ранее уже продавали. Для простоты будем их называть обслуживаемыми клиентами.
Кратко опишу цель и идею. Для анализа необходимо взять несколько показателей (15-20), которые есть у потенциальных и обслуживаемых клиентов одновременно. Также надо выбрать 2-3 показателя, которые есть только у обслуживаемых клиентов – это целевые показатели. Провести анализ кластеризации Data mining на массиве обслуживаемых клиентов. На выходе получим несколько кластеров со своими характеристиками. Далее кластеры группируем в сегменты по целевым показателям и даем какие-то понятные для маркетологов определения. Полученную модель анализируем, и полученные кластеры проецируем на потенциальных клиентов. На выходе получаем просегментированных потенциальных клиентов. На основании полученных сегментов можно выстроить стратегию и методологию продаж для каждого сегмента клиентов.
Рассмотрим подробнее данную методику и последовательность шагов для достижения результата.
Читать дальше →

15-минутное правило продуктивности

Reading time6 min
Views41K
Я люблю откладывать

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

Я научилась преодолевать эти слабости, стараясь быть более продуктивной, чтобы компенсировать утраченное время.

Бла, бла, бла, продуктивность системы… откладывание со дня на день… бла-бла-бла!

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

Так в чем моя проблема?

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

Проблемы с апрувом: Apple погребена под валом приложений?

Reading time1 min
Views13K
Недавно в Q&A на Хабре кто-то из разработчиков жаловался на то, что приложение в App Store ждет утверждения уже больше 3 недель и все никак его не за апрувят. Оказывается, что это общемировая проблема. AllThingsD пишет, что многие из тех, кто попытался сейчас войти в магазин со своим приложением и сыграть на новогоднем ажиотаже, столкнулись с увеличенным временем ожидания.

«Это настоящий кошмар. Хуже, чем когда-либо», — говорит один из разработчиков.

Apple по телефону говорит о трех неделях, но как видно по вопросу нашего разработчика, в отдельных случаях можно думать о четырех неделях и даже больше. Кроме того, официально компания заявляет, что все те, кто хочет попасть в App Store до нового года, должен выслать свое приложение на рассмотрение до Дня Благодарения (четвёртый четверг ноября), т.е. фактически в течение ближайших двух недель.

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

Chipmunk для создания анимации в iOS

Reading time3 min
Views8.2K
С каждым годом мобильные устройства становятся все более производительными, а пользователи — более требовательными к приложениям и пользовательским интерфейсам. Удивить пользователя становится все сложнее, поэтому приходится много работать именно над способом представления информации. Качественный дизайн и проработанная анимация в iOS-приложении несомненно повышают шансы заинтересовать аудиторию.

Под катом — создание нестандартной анимации на примере приложения We Heart Pics.


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

До старта первого раунда Russian AI Cup остались считанные часы

Reading time2 min
Views4.7K
До старта Раунда 1 чемпионата Russian AI Cup остались считанные часы. Ажиотаж продолжает нарастать: в умении писать искусственный интеллект будут состязаться жители разных стран.

В связи с тем, что желающих поучаствовать становится все больше, организаторы Russian AI Cup — Одноклассники и Саратовский государственный университет — решили увеличить число стратегий, участвующих в Раунде 1. Таким образом, для первого раунда будет отобрано не 600, а 900 стратегий.

Измененная турнирная сетка выглядит так:


Раунд 1 будет проводиться с 10 по 11 ноября 2012 года. Тип боев — 6x1. Этот этап будет состоять из двух частей. Между двумя частями будет сделан перерыв, на время которого возобновит работу Песочница. Кстати, перерыв можно использовать для того, чтобы улучшить свою стратегию, приняв во внимание результаты первой части. Каждая часть будет длиться 12 часов, перерыв — 24 часа.

Для боев в каждой из частей Раунда 1 будет выбираться последняя корректная стратегия, отправленная до начала соответствующей части. Бои будут проводиться волнами. В каждой волне каждая стратегия примет участие ровно в одном бою. Количество волн будет не меньше 10, но не более 100. Мы надеемся успеть протестировать ровно 100 волн в каждой части, но многое будет зависеть от скорости работы ваших стратегий.

Внимание, изменение!
Читать дальше →

7 паттернов рефакторинга толстых моделей в Rails

Reading time6 min
Views29K
Толстые модели сложны в поддержке. Они, конечно, лучше, чем контроллеры, захламленные логикой предметной области, но, как правило, нарушают Single Responsibility Principle(SRP). “Всё, что делает пользователь” не является single responsibility.
В начале проекта SRP соблюдается легко. Но со временем модели становятся де-факто местом для бизнес-логики. И спустя два года у модели User больше 500 строчек кода и 50 методов в public.
Цель проектирования — раскладывать растущее приложение по маленьким инкапсулированным объектам и модулям. Fat models, skinny controllers — первый шаг в рефакторинге, так давайте сделаем и второй.
Второй шаг

Обзор программы для аудита Microsoft SQL Server- NetWrix SQL Server Change Reporter 2.5

Reading time7 min
Views8.9K
SQL Server представляет собой сложную систему, в которой постоянно происходят изменения, — будь то конфигурация сервера или содержимое баз данных. Отследить изменения сложно, особенно в тех случаях, когда изменения касаются тонко настроенных правил делегирования для тех сред, которые управляются несколькими администраторами и операторами.
В Рунете мы смогли найти следующие материалы по аудиту SQL Server:



Хабр также не отстаёт – здесь есть хороший пост по отслеживанию изменений в SQL Server.

Однако вопрос о написании актуального и полного руководства по аудиту SQL Server остается открытым (у нас в планах написать такое руководство – наподобие этого и этого).

Пока же в этом посте мы рассмотрим возможности по аудиту SQL Server’a с помощью нашей программы NetWrix SQL Server Change Reporter. Программа выпускается в двух версиях: базовой бесплатной и расширенной коммерческой. Сначала мы рассмотрим, что есть в базовой версии программы, а затем более подробно остановимся на расширенной версии.
Тем более, недавно мы выпустили новую версию нашего решения для аудита изменений SQL Server – NetWrix SQL Server Change Reporter 2.5. В новой версии мы добавили поддержку аудита содержимого баз данных – той функции, которую давно ждали пользователи.
Заинтересованных приглашаем под кат.
Читать дальше →

Как преуспеть со своим мобильным приложением

Reading time16 min
Views36K
Большинство приложений провальны. Эта жестокая реальность приводит многих разочарованных разработчиков к заключению, часто подсознательному, что преуспевание в App Store — всё равно, что разбогатеть на «золотой лихорадке»: нужно быть чертовски удачливым.

image

Идея «удачи» — опасное успокоительное средство, облегчающее боль неудачи. А боль — это хорошая вещь. Она показывает, что что-то идёт не так. Если моё приложение потерпело крах, я хочу знать почему. Вместо того, чтобы обвинять мироздание, почему бы не посмотреть, что ребята из tap tap tap и Tapbots делают для того, чтобы снова и снова достигать успеха.

Несмотря на то, что безупречное следование этой формуле невозможно, работа в этом направлении резко увеличит ваши шансы на успех. Эти принципы выработаны для iOS, но многие из них могут быть применены и для других платформ.
Читать дальше →

Мы сделаем этот велосипед за месяц

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

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

Велосипед


image
Итак, Вася долго трудился рядовым программистом, ведущим программистом и наконец стал Руководителем. У него есть команда отчаянных головорезов разработчиков в количестве двух единиц. Безусловно талантливых и знающих свое дело специалистов.

Вася получает первый заказ — надо сделать … велосипед.
Что же случилось далее

Как не нужно писать большие сервера

Reading time8 min
Views105K
Те, кто мог видеть мою прошлую статью (а она довольно related к данной теме), знают, что вот уже больше полутора лет я разрабатываю собственную реализацию сервера Minecraft, рассчитанную, в первую очередь, на высокие нагрузки. Тем не менее, в своей работе мы используем так же и стандартный сервер (Bukkit) для нескольких мини-серверов, просто чтобы было разнообразие. И вот, столкнувшись с очередной версией сервера, которая стала раз в 5 хуже предыдущих, я уже не выдержала, и решила написать эту статью.

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

Вам не нужно знать ничего о майнкрафте и особенно о его сервере, в данной статье я хочу просто рассказать, как работает оригинальный сервер Minecraft, а так же его «обвязка» — Bukkit, рассказать, почему такая система не работает и не должна. Я не претендую на идеальные знания о разработке серверов и не утверждаю, что мой сервер написан правильно и лучше всех. Я просто делюсь своим опытом, основанным на двух годах работы с сервером от всем известной Mojang и на полутора годах разработки своего сервера. Вся представленная здесь информация является моим личным мнением, а статья предназначена для расширения кругозора или даже обучения и может быть интересна как новичкам, так и продвинутым профессионалам.
Читать дальше →

Контекстные меню VS2010/2012 и клавиатура

Reading time2 min
Views7.6K
Как разработчик, я много времени провожу в Visual Studio. И, должен заметить, что большую часть времени Visual Studio меня вполне устраивает. Но иногда бывают и не очень приятные моменты. Одна из таких проблем, которая долго мне мешала, заключается в том, что в VS2010 контекстные меню работают немного не так, как в VS2005/2008. И в VS2012 эта ситуация не изменилась.

Итак, что это за отличия? Так сложилось, что при работе в Visual Studio я пользуюсь в основном клавиатурой. И контекстные меню в редакторе кода я тоже открываю с клавиатуры – с помощью соответствующей клавиши (Apps key). Кроме того, я давно привык использовать какие-то клавиатурные паттерны, и использую я их, не задумываясь.

В VS2008 положение курсора мыши не влияло на навигацию по контекстному меню с клавиатуры. И я был уверен, что последовательное нажатие клавиш «Apps, Down, Down, Enter, Up, Enter» всегда вызовет функцию «Organize Usings > Remove and Sort»:

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

Черногория — не Таиланд

Reading time11 min
Views432K


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

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

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

Систематизация коммитов

Reading time2 min
Views10K
Часто ли вам приходилось просматривать список изменений что бы понять — затронуло ли оно вас?
Хотели бы вы бегло просмотрев комментарий знать всю необходимую информацию?
Хочу поделиться сокращениями устоявшимися в нашей команде.
Читать дальше →

RAII и делегирующие конструкторы в C++11

Reading time4 min
Views30K
В этом посте пойдет речь об одной интересной фичи в C++11, которая называется делегирующие конструкторы (delegating constructors): почему она интересна, и как ее можно применить для более эффективного управления ресурсами, т.е. реализации идиомы RAII.

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

Встречайте IntelliCommand (Visual Studio 2010/2012 extension)

Reading time1 min
Views15K
Как много горячих клавиш вы знаете в Visual Studio? Знаете все? Я знаю способ выучить их все. Хочу представить вам расширение для Visual Studio 2010/2012, которое я написал вместе со своими коллегами Drake Campbell и Aditya Mandaleeka. Позвольте мне просто скопировать описание расширения с Visual Studio Gallery:

IntelliCommand — это расширение для Visual Studio 2010 и 2012, которое помогает находить комбинации горячих клавиш. Данное расширение показывает окно-помощник со всеми возможными комбинациями клавиш при нажатии Control, Shift или Alt, или их комбинации (по умолчанию нужно удерживать клавишу на пару секунд). Так же данное расширение показывает список возможных комбинаций, когда вы нажимаете первую комбинацию из chord shortcut keys, например, Ctrl+K, Ctrl+C (данная комбинация закомментирует код в редакторе).
Читать дальше →

Асинхронный пинг с помощью Boost.Asio

Reading time7 min
Views21K
Одним из этапов сканирования узла на наличие уязвимостей является определение его сетевой доступности. Как известно, сделать это можно несколькими способами, в том числе и посредством команды ping.

Для одного из проектов по анализу защищенности в организации с большим количеством рабочих станций нам понадобилось разработать собственный «пингер».
Читать дальше →

Руководство по работе с Apple Push Notification Service

Reading time13 min
Views269K
Статья представляет собой вольный перевод руководства по работе с Apple Push Notification Service сайта raywenderlich.com и некоторые мои дополнения.

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

Но что если происходит что-то интересное и вы хотите сообщить об этом пользователям, даже если ваше приложение у них не запущено?
Читать дальше →

Оптимизация игр под iOS платформу. Векторизация кода

Reading time11 min
Views16K
Давно назревало желание написать парочку статей, в которых я смогу выложить свой опыт и знания на тему оптимизации игр под ARMv7 архитектуру CPU и PowerVR SGX 5 серию GPU, читай iOS платформу. Но все, или почти все, советы в равной степени применимы под другие системы с тем же железом, читай Андроиды. Данный материал в может быть применен не только в играх но и в большинстве ресурсоемких приложений — обработка изображений, аудио, видео и т.д. Начну свою первую статью с наиболее важной, ИМХО, оптимизации – векторизации кода под NEON.

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

«Мнемотехника» и «изучение иностранного языка» несовместимые понятия?! Давайте разберемся

Reading time13 min
Views284K
Здравствуйте, Уважаемые Хабрапользователи!



На написание данной публикации меня сподвигло возмущение от прочитанной недавно статьи одного хабраюзера, утверждающего, что мнемотехника «очень хороший способ запоминания информации, совершенно не подходящий для изучения иностранных слов». Я с этим высказыванием в корне не согласен, а потому, хотелось бы доказать обратное.
Если вам интересно, как использовать мнемотехнику для запоминания иностранных слов, то добро пожаловать под кат.
Читать дальше →

Information

Rating
Does not participate
Location
Челябинск, Челябинская обл., Россия
Date of birth
Registered
Activity