Кирилл Улитин @ulitin
UX & Research Lead
Быстрый ликбез по JavaFX
2 мин
4KВ этот пост хотелось бы написать простой ликбез по JavaFX и ответить на некоторые базовые вопросы тех людей, которые вообще не в курсе, что такое JavaFX и зачем это может пригодиться + кое какие базовые технические вопросы общего характера.
+5
Ditto Modx для чайников Новости, статьи
1 мин
1.3KЯ сам чайник и во всем интернете не нашла ни одной внятной статьи на эту тему, где пошагово все объясняется и в итоге работет. Долго промучившись я составил себе и другим таким же четкое руководство.
+6
Скрипты в Google spreadsheets
4 мин
39KНе так давно стал доступен сервис скриптов в таблицах Google для персональных аккаунтов (gmail).
googledocs.blogspot.com/2010/03/apps-script-gallery-for-google.html
Краткое описание
www.google.com/google-d-s/scripts/scripts.html
Кроме этого, непосредственно из таблиц стал доступен сервис публикации скриптов в галерею.
Теперь мы можем создавать скрипты для Google Spreadsheets, загружать готовые, публиковать, обмениваться с другими пользователями.
Скрипты имеют богатый набор возможностей. Мы можем использовать всё управление, доступное в сервисах Google.
www.google.com/google-d-s/scripts/overview.html
Результатом работы скрипта, например, могут быть:
- новая функция, отсутствующая в стандартном наборе;
- значение, возвращаемое веб сервисом, в том числе, SOAP, WSDL и другие;
- управление другими сервисами, например, сайтом, календарем, почтовой рассылкой;
- автоматическое заполнение таблиц (непосредственное управление нашими spreadsheets);
- создание пользовательских интерфейсов (custom spreadsheets UI).
Примеры созданных скриптов для применения в неогеографии
+44
Прагматический Процесс Разработки в «не-книжных» условиях
4 мин
1.8KДоброго времени суток.
Хочу поделиться некоторыми идеями которые помогают мне в Святой Войне с Хаосом в процессе разработки ПО. Для определенности картины добавлю несколько деталей: я — менеджер проектов, фирма средних размеров (~40 мозгов) занимается оффшорным программированием, команда смешанная (15% сеньоры, 35% девелоперы, 35 джуниоры, 15% стажеры, причем есть еще деление по специализации — разработка, качество, инфраструктура).
Источников создания хаоса более чем достаточно — длинная цепь связи с заказчиком, неоднородная и в общем, молодая команда, «славянский менталитет» ( эксцентричное творчество и частые медитации ;) ), проблемы коммуникаций, политические игры сейлс-людей (Sales — те кто нас «продают») и т.д.
Хочу поделиться некоторыми идеями которые помогают мне в Святой Войне с Хаосом в процессе разработки ПО. Для определенности картины добавлю несколько деталей: я — менеджер проектов, фирма средних размеров (~40 мозгов) занимается оффшорным программированием, команда смешанная (15% сеньоры, 35% девелоперы, 35 джуниоры, 15% стажеры, причем есть еще деление по специализации — разработка, качество, инфраструктура).
Процесс
Источников создания хаоса более чем достаточно — длинная цепь связи с заказчиком, неоднородная и в общем, молодая команда, «славянский менталитет» ( эксцентричное творчество и частые медитации ;) ), проблемы коммуникаций, политические игры сейлс-людей (Sales — те кто нас «продают») и т.д.
+11
Javascript. Отделяем мух от котлет
3 мин
720Правя часто за кем-нибудь javascript-код (да и не только его) часто сталкиваешься с
ситуацией, когда программист Вася 'не отделяет мух от котлет'. Это значит мешает глобальные переменные
вместе с функциями, даже, если эти переменные и функции как-то соотносятся друг с другом.
ситуацией, когда программист Вася 'не отделяет мух от котлет'. Это значит мешает глобальные переменные
вместе с функциями, даже, если эти переменные и функции как-то соотносятся друг с другом.
+5
BinaryHTTPService или как помочь HTTPService-у принимать ByteArray данные
4 мин
514В процессе разработки у меня стояла задача найти способ получать бинарные данные от сервера через HTTPService. Сам по себе HTTPService в mx пакете не позволяет получать результат в ByteArray. Это можно увидеть в классе mx.messaging.channels.DirectHTTPChannel в функции internalSend.
+3
Применение Теории вероятностей в IT
1 мин
6.7KТак сложилось, что я преподаю студентам IT-шных специальностей в Сибирском Федеральном Университете (СФУ) такой предмет, как «Теория вероятностей и математическая статистика». Из года в год я сталкиваюсь с таким явлением, что студенты не понимают, зачем и почему им учить эту дисциплину. Конечно, можно сказать, что математика тренирует мозг и развивает абстрактное мышление (которое весьма необходимо программистам). Но я считаю, что если подкрепить преподавание ТВ и МС яркими примерами (особенно применительно к IT), это даст необходимую мотивацию для изучения этого предмета.
+13
Getting Started IronRuby из .net
4 мин
726Понадобилось мне недавно приделать к .net проекту поддержку скриптов на Ruby, и внезапно обнаружилось что маленький helloworld пример этого в интернетах найти не так уж и просто.
+4
Еще один взгляд на Flash, Mono и Apple
2 мин
574Дискуссии по поводу того, что Apple не будет пускать приложения, написанные не на Obj-C, C++, JavaScript разгораются не на шутку. Почему-то все наехали на Flash вместо того, чтобы посмотреть на проблему в комплексе.
Мне понравилось высказывание из статьи «Why Apple Changed Section 3.3.1», где говорится:
Мне понравилось высказывание из статьи «Why Apple Changed Section 3.3.1», где говорится:
So what Apple does not want is for some other company to establish a de facto standard software platform on top of Cocoa Touch. Not Adobe’s Flash. Not .NET (through MonoTouch). If that were to happen, there’s no lock-in advantage.Свободный перевод:
Что действительно не хочет Apple — так это то, чтобы любая другая компания установила свою платформу поверх Cocoa Touch. Не Flash, не .NET (c помощью MonoTouch). Если это случится, то у Appple не будет конкурентных преимуществ.
-2
Кто покупает платный контент в интернете? Часть 1
4 мин
2.2KНаша Компания ENAZA вот уже 3 года занимается продажей цифрового контента (игры, музыка, видео, софт, Антивирусы) в Интернете. Работаем с крупными Интернет провайдерами, уже более 1 млн пользователей Интернет каждый месяц покупают игры, видео, софт, антивирусы на наших порталах turbodom.ru, shop.hitv.ru.
Не так давно мы провели крупное исследование по тому, как покупают платный контент пользователи, собственно чем решили поделится с читателями хабры.
Опрос проводился среди тех, кто совершил хотя бы одну покупку на наших порталах, то есть мы исследовали мнение именно тех, кто готов покупать платный контент и не склонен искать пиратку на файлообменниках.
Не так давно мы провели крупное исследование по тому, как покупают платный контент пользователи, собственно чем решили поделится с читателями хабры.
Опрос проводился среди тех, кто совершил хотя бы одну покупку на наших порталах, то есть мы исследовали мнение именно тех, кто готов покупать платный контент и не склонен искать пиратку на файлообменниках.
+6
Отправка сообщения с вложением по e-mail из модуля в Drupal
8 мин
1.8KПонадобилось мне недавно сделать казалось бы простейшую вещь, а именно с помощью некоторой формы на сайте отправить письмо с вложением. И сделать это надо на сайте, построенном на Друпале… Как оказалось, этот пост очень правильный — действительно нужные рецепты не найдешь даже погуглив. В рунете вообще плохо с информацией, на диком западе получше, однако по теме ничего путного найти не удалось, кроме одного способа, который требует установки двух довольно навороченных модулей — ну это просто, по-моему, ни в какие ворота… Как и в случае с джумлой, пришлось копать сорсы различных модулей, api.drupal.org ну и, разумеется, додумывать. Результаты размышлений предлагаю Вашему вниманию. На примере простейшего модуля я покажу один из способов отправки сообщения с вложением по e-mail.
+12
Вышел Ext Designer
1 мин
654Вышла финальная сборка WYSIWYG редактора интерфейса для популярного JavaScript фреймворка ExtJS.
Редактор платный и стоит $229
Напомню, что ExtJs — фреймворк предназначенный для создания RIA (rich internet application), что подразумевает использование различных, достаточно сложных элементов пользовательского интерфейса. И таких элементов в ExtJS предостаточно. Настройка всех параметров дело хлопотное.
Вот для визуальной настройки и предназначен Ext Designer. Он также позволяет настроить хранилища данных (DataStore) и привязать их к элементам интерфейса
Скачать триальную версию можно здесь
Подробный обзор возможностей обещаю позже
+10
Интеллектуальный кирпич с навигацией
4 мин
951Вот этот черный кирпичик и будет сегодняшним гостем моей статьи.
Это современный навигатор MW-500 от фирмы с простым названием PocketNavigator.
Он много чего умеет помимо того, что может лежать и придавать красивый вид столу или висеть
в машине и служить зеркальцем.
UPD: Обновил фото и добавил важную инфо о цене.
Это современный навигатор MW-500 от фирмы с простым названием PocketNavigator.
Он много чего умеет помимо того, что может лежать и придавать красивый вид столу или висеть
в машине и служить зеркальцем.
UPD: Обновил фото и добавил важную инфо о цене.
+22
Организация времени на примере работы простого гейм-дизайнера
6 мин
991 Тут уже много было сказано о том, как лучше управлять своим временем. «Чем я хуже?» — подумалось мне вдруг и как результат этой мысли – вот, пожалуйста, эта небольшая статейка. Не буду говорить, что все мысли тут оригинальны, авторского производства и штучной выделки. Скорее – это что-то вроде творческого переосмысления по мотивам. Первоисточник этой системы – это книга Яны Франк «Муза и чудовище или Как организовать творческий труд».
Так как я имею наглость причислять себя к работникам творческой сферы то с интересом ознакомился с этой книгой, подумал на досуге и теперь мой рабочий процесс выглядит примерно следующим образом.
Так как я имею наглость причислять себя к работникам творческой сферы то с интересом ознакомился с этой книгой, подумал на досуге и теперь мой рабочий процесс выглядит примерно следующим образом.
0
дерево категорий по-своему (webasyst shop-script)
3 мин
2.4KПомагал кому-то на форуме и решил увековечить здесь.
Несколько вариантов вывода дерева категорий в вашем магазине или редактирование файла category_tree.html
Несколько вариантов вывода дерева категорий в вашем магазине или редактирование файла category_tree.html
-4
Пусть твой зад увидят
1 мин
872Ogilvy разработали компанию «Get Your Butt Seen»
Рекламаная кампания включает в себя онлайн, телевизионную и наружную рекламу по борьбе с раком кишечника. Аудитории предлагается поделиться с широкой общественностью фотокопией своей задницы, старинная забава клерков. Затем фото предлагают загрузить на сайт компании. После того, как фотография будет отправлена, участнику кампании будет предложена информация о раке, его профилактике, ранней диагностике и пр. А к 31 марта ССАС обратится ко всем поддержавшим призыв показать задницу с просьбой разместить ксерокопии своих поп в качестве главных фотографий в профиле на Facebook и тем самым выразить солидарность в борьбе против рака кишечника.
+24
Коллекция описаний алгоритмов
1 мин
886Искал способ быстрого поиска строки по нескольким подстрочкам. Наткнулся на сайт с подборкой описаний алгоритмов. Спешу поделиться — думаю многим может пригодиться. Сам завис там на пару часов.
Заодно вопрос к уважаемым Хабражителям: какой бы алгоритм Вы посоветовали бы для быстрого поиска записи (название) по нескольким фрагментам (отрывки слов в названии) расположенным в случайном порядке не так как в искомой записи.
Массив информации — около 1.5 миллионов записей, требуемая скорость — 300-1000 одновременных запросов в секунду на простом железе (не-супер-пупер-многопроцессорный вычислительный комплекс).
Мне пока приходит в голову только мысль о том, чтобы сделать индекс поиска на базе какого-то хеш-алгоритма, но пока не придумал как совместить хеш с неполными словами в различных комбинациях и непредскауемым порядком их появления в запросе.
Заодно вопрос к уважаемым Хабражителям: какой бы алгоритм Вы посоветовали бы для быстрого поиска записи (название) по нескольким фрагментам (отрывки слов в названии) расположенным в случайном порядке не так как в искомой записи.
Массив информации — около 1.5 миллионов записей, требуемая скорость — 300-1000 одновременных запросов в секунду на простом железе (не-супер-пупер-многопроцессорный вычислительный комплекс).
Мне пока приходит в голову только мысль о том, чтобы сделать индекс поиска на базе какого-то хеш-алгоритма, но пока не придумал как совместить хеш с неполными словами в различных комбинациях и непредскауемым порядком их появления в запросе.
+10
Две цены в webAsyst Shop-script
2 мин
2.4KПлагин показывает еще одну или еще много цен для каждого продукта в Webasyst Shop-Script
Показывает столько цен, сколько id валют вы ему укажете.
Выводит цены согласно шаблону и форматированию вашей валюты из админ-панели и каждая цена имеет свой класс стиля (.cena1, .cena2…… )
Установка плагина:
Показывает столько цен, сколько id валют вы ему укажете.
Выводит цены согласно шаблону и форматированию вашей валюты из админ-панели и каждая цена имеет свой класс стиля (.cena1, .cena2…… )
Установка плагина:
-8
Нетривиальная задача для Node Reference поля Drupal
2 мин
975Одно из самых полезных полей, которое предоставляет CCK модуль — это Node Reference. Задача его тривиальна и понятна — связать контент сайта отношениями, что легко понять на примерах:
Задача, с которой пришлось столкнутся мне состоит в том, как показывать это поле:
CCK по умолчанию сам оформляет множественный или одиночный выбор node reference, как список или просто ссылку на соответствующий нод. Задача вывода рецепта предполагает, что рецепт и ингридиент являются нодами.
Соответственно, при рендеринге контента Views`ами мы получим:
Вместо:
Решение данной задачи к сожалению на Google и Drupal.org я не нашел, а потому пришлось выкручиваться, и получилось это довольно просто и красиво.
Для ноды Продукта добавляем еще одно мультиполе Текст, которое в Fields вьюхи ставим после Node Reference.
А в темплейте views-view-fields.tpl.php (или конкретной вьюхи как Вам нужно) пишем магию:
Это позволит отрендерить вьюху подменяя титл поля Node Reference. Есть ли у Вас решение для данной задачи?
- Компания, у которой в контенте должны быть ссылки на Рабочих
- Футбольный игрок, со связью на ноду его Статистики
Задача, с которой пришлось столкнутся мне состоит в том, как показывать это поле:
- Реценты, которые состоят из различных ингридиентов(1 курица, 2 апельсина, 50гр специй)
CCK по умолчанию сам оформляет множественный или одиночный выбор node reference, как список или просто ссылку на соответствующий нод. Задача вывода рецепта предполагает, что рецепт и ингридиент являются нодами.
Соответственно, при рендеринге контента Views`ами мы получим:
Курица по болгарски(Рецепт)
- Курица(Ингридиент)
- Апельсин(Ингридиент)
- Специи(Ингридиент)
Вместо:
Курица по болгарски(Рецепт)
- 1 курица(Ингридиент)
- 2 апельсин(Ингридиент)
- 50гр специй(Ингридиент)
Решение данной задачи к сожалению на Google и Drupal.org я не нашел, а потому пришлось выкручиваться, и получилось это довольно просто и красиво.
Для ноды Продукта добавляем еще одно мультиполе Текст, которое в Fields вьюхи ставим после Node Reference.
А в темплейте views-view-fields.tpl.php (или конкретной вьюхи как Вам нужно) пишем магию:
<?php
$nids = array();
?>
<?php foreach ($fields as $id => $field): ?>
<?php
if($id == 'field_product_nid') {
$nids = array_shift($field->handler->field_values);
continue;
}
if($id == 'field_product_title_value') {
$items = array();
$index = 0;
$titles = array_shift($field->handler->field_values);
foreach($titles as $title) {
$items[] = l($title['value'], 'node/' . $nids[$index++]['nid']);
}
// TODO: theming here
$field->content = theme('item_list', $items);
}
?>
<?php if (!empty($field->separator)): ?>
<?php print $field->separator; ?>
<?php endif; ?>
<<?php print $field->inline_html;?> class="views-field-<?php print $field->class; ?>">
<?php if ($field->label): ?>
<?php print $field->label; ?>:
<?php endif; ?>
<?php
// $field->element_type is either SPAN or DIV depending upon whether or not
// the field is a 'block' element type or 'inline' element type.
?>
<<?php print $field->element_type; ?> class="field-content"><?php print $field->content; ?></<?php print $field->element_type; ?>>
</<?php print $field->inline_html;?>>
<?php endforeach; ?>
Это позволит отрендерить вьюху подменяя титл поля Node Reference. Есть ли у Вас решение для данной задачи?
-16
Информация
- В рейтинге
- Не участвует
- Откуда
- Санкт-Петербург и область, Россия
- Работает в
- Дата рождения
- Зарегистрирован
- Активность