Pull to refresh
56
0
Dmytro Zharii @Dmitry_Zhariy

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

Send message

Как выбрать VPS хостинг

Reading time4 min
Views24K
Неприятности начались с того момента, когда мой любимый американский хостер вдруг перенес мой многолетний аккаунт на новый сервер и установил хитрый лимит на память php для всего аккаунта. И вроде бы memory_limit 90M на первый взгляд достаточно для любого сайта, но этот лимит действует на весь аккаунт в целом. Т.е. сайты, расположенные на одном аккаунте, начинают «душить» друг друга. Начались проблемы с форумом phpbb посещаемостью всего 2000 уников в сутки. При превышении лимита памяти сервер отдавал 500 ошибку.

Опытные люди, не читая далее, сразу скажут, что предложила мне техподдержка: конечно же переход на их VPS. Для отечественного хостинга это обычное дело, но от буржуев я такое услышал впервые. Выход в таком случае один — переход на другой хостинг, ибо с «террористами переговоров не ведут» да и 15$ за их 300Mb VPS мне показалось несколько дороговато.

Выбрал Open VZ VPS в России 768Mb за ~500 рублей. Все поставил, вроде работает. Но тут черт меня дернул перед сменой DNS проверить нагрузку с помощью loadimpact.com и меня накрыл тихий ужас: при одновременном доступе к сайту 50 посетителей страницы грузились по 60 секунд.
Читать дальше →
Total votes 91: ↑82 and ↓9+73
Comments95

Обзор C# библиотек для работы с PDF

Reading time5 min
Views166K
topic image
На написание данной статьи меня подтолкнул топик HTML в PDF, правда по причине того, что он посвящен языку php, лично мне он был мало полезен, т.к. весь опыт работы с php у меня сводился в переводе нескольких скриптов на C#, поэтому я решил сделать небольшой обзор того, что доступно для работы с pdf по средствам языка C#.

Ко мне в список попало 7 библиотек, о которых я скажу несколько слов, а для самой популярной (судя по ответам на stackoverflow), я напишу, как с помощью неё сделать простейший документ. Сразу скажу, что это iTextSharp и работа с ней будет описана в конце статьи.
Читать дальше →
Total votes 87: ↑77 and ↓10+67
Comments24

Избавление .NET программы от регистрации на примере BEM

Reading time5 min
Views4.6K
Не так давно я решил изучить, а заодно попробовать поправить одну библиотечку, избавив программу работающую на данной библиотеке от лицензии.

Началось все с того, что как то мне в руки попала программа для бухгалтерской отчетности, некий бюджетный вариант 1С. Как заверяли разработчики этой программы, что она является, чуть ли не самой защищенной и устойчивой к взломам. Именно это хвастовство и подтолкнуло опровергнуть излишнюю самоуверенность разработчиков.
Читать дальше →
Total votes 39: ↑29 and ↓10+19
Comments8

Три самых полезных навыка, которые я приобрел 5 лет назад

Reading time5 min
Views11K
Я работаю в автоматизации тестирования уже более пяти лет. Более всего я работал с ОС Windows. Мы пишем скрипты на Borland SilkTest. Я знаком и с другими средами разработки автоматизированных тестов, такими как QTP и TestComplete – у каждого продукта есть свои достоинства, но, к сожалению, и свои недостатки. Возникают проблемы, которые очень сложно решить «не выходя из системы»*
Читать дальше →
Total votes 122: ↑85 and ↓37+48
Comments66

Список Возможностей: Я могу! (I Can-Do!)

Reading time5 min
Views25K
Наверняка, вы неоднократно слышали про списки дел (To-Do). Возможно, вы уже когда-то очень давно их использовали и успешно забросили. В чем проблема? По моему мнению, вся проблема в негативной мотивации To-Do. Ведь это дела, которые вы вынуждены сделать. Я предлагаю заменить негатив долга перед самим собой на позитив возможности. И в этой статье, я хочу поделиться с вами списками возможностей. Списками «Я могу!»
Читать дальше →
Total votes 96: ↑83 and ↓13+70
Comments54

Renderscript часть вторая

Reading time8 min
Views5.7K
Renderscript — новая фича, введенная в Honeycomb. Также известно, что ранее Renderscript уже использовался разработчиками Android'a (например встроенные живые обои в 2.1(Eclair) были написаны на нём). Так или иначе, полный доступ к API был открыт только в Honeycomb. В первой вводной статье из блога разработчиков (оригинал|перевод) обещалось, что скоро будет вторая, с более подробным описанием архитектуры Renderscript и примером его использования. Собственно, под катом и то и другое.
Читать дальше →
Total votes 26: ↑23 and ↓3+20
Comments10

CSS спрайты из командной строки

Reading time3 min
Views4.2K
Да, инструменты для создания CSS спрайтов существуют. Я даже сделал один такой сервис. Но они время от времени ломаются (как сейчас, мой). Но и командная многого стоит, и imagemagick. Давайте посмотрим, как мы можем создавать CSS спрайты только из командной строки.

Создание картинки


Начнем с того, что у нас есть список отдельных файлов:
$ ls

1.png  2.gif  dot.png  phoney.gif  tw.gif

  • — 1.png
  • — 2.gif
  • — dot.png
  • — phoney.gif
  • — tw.gif

Сделаем из них спрайт:
$ convert *png *gif -append result/result-sprite.png

Да, это все. Смотрим результат.

Читать дальше →
Total votes 139: ↑129 and ↓10+119
Comments22

Транзакции и многопоточный доступ к базе данных

Reading time5 min
Views30K
Недавно мне понадобилось выполнить следующий код (представлен в максимально упрощенном виде):

public void Start()
{
    using (var transactionScope = new TransactionScope())
    {
        ...
        GetOrCreateCompany(someValue);
        ...
        transactionScope.Complete();
    }
}

private Company GetOrCreateCompany(string companyName)
{
    var company = _companiesRepository.GetCompany(companyName); //простая выборка из таблицы по названию; если компания не найдена - возвращается null
    if (company == null)
        company = _companiesRepository.Add(companyName);
    return company;
}


Код этот выполнялся в многопоточной среде, где каждый поток на вход получал метод Start (а значит у каждого потока была своя транзакция).

У этого, казалось бы, простого кода есть несколько нюансов, о которых и пойдет речь под катом.

Читать дальше →
Total votes 48: ↑34 and ↓14+20
Comments116

О том, почему мы будем использовать HTML(5) вместо Silverlight

Reading time6 min
Views6.6K
Недавно я провел исследование о том, какая технология создания пользовательского интерфейса будет наилучшим выбором для приложений, которые собирается создавать мой клиент в следующие несколько лет. Мой клиент – это команда .NET разработчиков, а это значит, что двигаться можно в двух основных направлениях: разработка с использованием стандартных веб-технологий или Silverlight. Когда необходимо рекомендовать одну технологию в противовес другой, то в идеале выбор должен быть основан на чем-то большем, чем на нескольких мнениях. Мы создали список технологий-кандидатов. После чего мы создали перечень критериев, связанных в категории. Всем критериям был назначен некоторый вес, и мы оценили каждый из них для всех технологий-кандидатов.
Читать дальше →
Total votes 94: ↑66 and ↓28+38
Comments93

Android Development Tutorial. Часть 2/?

Reading time14 min
Views87K
Ларс Вогель — евангелист Eclipse.
Под катом Вы обнаружите продолжение перевода его статьи, которая описывает процесс создания Android-приложений с помощью Eclipse. Используется Eclipse 3.6, Java 1.6 и Android 2.3 (Gingerbread).
Часть 1
Читать дальше →
Total votes 49: ↑41 and ↓8+33
Comments15

Простой конвертер текста в речь с использованием Google Translate

Reading time1 min
Views48K

Недавно Гугль обновил русский язык в Google Translate, сильно улучшив произношение.
Я решил сделать конвертер текста в речь на базе их переводчика.
Читать дальше →
Total votes 93: ↑86 and ↓7+79
Comments45

Простой пример выполнения HTTP-запроса к web-сервису и разбор XML-ответа

Reading time3 min
Views51K
Привет всем хабровчанам!

Сразу хочу сказать, что, хотя тема не «Hello world», но рассматриваемая задача довольно проста и приведена здесь на Хабре скорее в качестве средства экономии времени для разработчиков, которым, возможно, надо будет поработать с XML-ответами от web-сервисов. Для XML-разбора я использовал DOMparser (я знаю и про SAXParser, конечно) как это привычно для меня в PHP.

У Приватбанка (Украина) имеется API, с которым можно ознакомиться здесь. После изучения его становится ясно, что сервис достаточно информативный и было бы удобно иметь на мобильном устройстве средство общения с ним. Посмотрим как можно опросить этот сервис и получить такую избитую, но иногда полезную информацию как актуальный курс валют. После прочтения топика, в принципе, не составит труда написать и другие полезные функции.

Читать дальше →
Total votes 41: ↑36 and ↓5+31
Comments16

Новая озвучка в Google.Translate

Reading time1 min
Views8.2K
Теперь озвучка для русского языка стала гораздо качественнее.
Сравнимо с профессиональным диктором, если не брать во внимание редкие ошибки с ударениями.
Помимо этого, некоторые языки наконец-то обзавелись функцией озвучки. В частности, арабский.
Total votes 112: ↑103 and ↓9+94
Comments140

Что почитать на выходных? Рекомендуем

Reading time2 min
Views1.9K
Это первый, пробный выпуск подборки интересных ссылок на статьи по разработке веб-приложений на платформе .NET (и не только). Сегодня я представляю первую подборку статей, которые будет полезно почитать в свободные минуты на выходных. Большинство статей написаны на английском, но, со временем, я надеюсь публиковать больше ссылок на русскоязычные статьи.

Тема номера:

Мега-подборка видео-материалов по разработке на ASP.NET WebForms, ASP.NET MVC и WebMatrix:
  • 35 видео: что нового в ASP.NET и быстрое введение в новые функции [link];
  • 114 видео: руководства по доступу к данным в ASP.NET [link];
  • 155 видео: руководства по AJAX, AJAX Control Toolkit [link];
  • 29 видео: руководства по вопросам безопасности ASP.NET [link];
  • 17 видео: введение в разработку на WebMatrix [link];
  • 24 видео: работа с IIS, развертывание ASP.NET-сайтов [link];
  • 61 видео: руководства по построению приложений на ASP.NET MVC [link];
  • 17 видео: руководства по доступу к данным в ASP.NET MVC [link];
  • 5 видео: руководства по вопросам безопасности в ASP.NET MVC [link].
WebForms:
Читать дальше →
Total votes 127: ↑77 and ↓50+27
Comments35

Android Development Tutorial. Часть 1/?

Reading time6 min
Views119K
Ларс Вогель — евангелист Eclipse.
Под катом Вы обнаружите перевод его статьи, которая описывает процесс создания Android-приложений с помощью Eclipse. Используется Eclipse 3.6, Java 1.6 и Android 2.3 (Gingerbread).
Часть 2
Читать дальше →
Total votes 63: ↑53 and ↓10+43
Comments42

Fragments API в Android 3.0

Reading time8 min
Views26K
В Android 3.0 введена новая концепция фрагментов, которая служит для упрощения работы с интерфейсом под разные размеры экранов. Данный топик является переводом статьи с android-developers.blogspot.com. В ней рассмотрены преимущества фрагментов, а также приведен простой, но законченный пример приложения, работающего по этому принципу.

Важная цель Android 3.0 — упростить написание программ, которые должны масштабироваться в зависимости от размеров экрана. Для этого в платформе Android уже доступны следующие средства:
  • С самого начала, UI-фреймворк был спроектирован для использования layout managers, которые позволяют описывать интерфейс так, чтобы он «подгонялся» к размерам. Примером этого является ListView, высота которого изменяется в зависимости от размера экрана, который варьируется между соотношениями QVGA, HVGA, and WVGA.
  • В Android 1.6 была введена новая концепция плотности экрана, позволяющая приложениям легче масштабировать размеры между разными разрешениями, в то время как экраны имеют почти один и тот же физический размер. Разработчики незамедлительно начали использовать эту особенность, когда были введены телефоны с высоким разрешением, такие как Droid.
  • Также в Android 1.6 разработчикам стали доступны размеры экрана, при помощи их классификации: «small» для соотношения QVGA, «normal» для HVGA и WVGA, и «large» для более больших экранов. Разработчики могут использовать систему ресурсов для выбора между различными layout'ами, в зависимости от размера экрана

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

Несколько полезных аспектов для PostSharp

Reading time11 min
Views11K
В .net-е есть несколько серьезных AOP-фреймворков, но ни один их них не «рулит» так как PostSharp. Будучи большим фанатом (а также пользователем) сего фреймворка, хочу представить сообществу несколько «рецептов». Некоторые из них я создал сам, другие нашел в интернете и адаптировал под свои нужды. Тут я покажу несколько самых «сочных» рецептов. А если вы не знакомы с фреймворком или идеологией AOP, могу порекоммендовать вот этот вебкаст. Итак, начнем?

Читать дальше →
Total votes 26: ↑18 and ↓8+10
Comments34

Разработчики не любят тестировщиков. Потому что не умеют их использовать

Reading time6 min
Views5K
Сказки про ссоры разработчиков и тестировщиков когда-то были правдой, но сейчас таких конфликтов почти не встретишь. Спокойная совместная работа над выпуском ПО, ориентация на общие цели, бла-бла-бла…

Но если присмотреться внимательнее, то под видимостью продуктивного сотрудничества зачастую скрывается абсолютное непонимание разработчиков: «зачем эти тестеры вообще нужны??». Это непонимание нередко является взаимным, и несмотря на кажущуюся миролюбивость, оставляет в совместной работе лишь видимость продуктивности.
Читать дальше →
Total votes 49: ↑39 and ↓10+29
Comments29

Holywar: iOS vs Android

Reading time2 min
Views4.1K
3 февраля в Москве в здании ГУ-ВШЭ состоялась очередная встреча сообщества Apple-разработчиков RADUG, посвященная разработке игровых приложений под iOS. На встрече были — 300 разработчиков, 4 спикера, 4 доклада, 4 часа, 1 афтепати и 1 признание аудитории, что почти все узнали о мероприятии из анонса на Хабре. Великий и ужасный Легендарный создатель Поля Чудес и игр под iOS Вадим Башуров, известный на хабре как Papabubadiop с присущим ему чувством юмора написал интересный отчёт об этом мероприятии — Яблочный четверг.



А уже 3 марта в четверг в 18-30 в Москве в технопарке Цифровой октябрь (Берсеневская набережная, д.6) состоится следующая встреча RADUG под названием Holywar: iOS vs Android, которая будет посвящена сравнению разработки на двух платформах. На мероприятие традиционно приглашаются разработчики, дизайнеры, юзабилисты, руководители проектов, предприниматели, инвесторы и все интересующиеся. Благодаря чудо-технологиям Цифрового октября, на встрече будет организована онлайн-трансляция, а видеозапись встречи будет также выложена на сайте сообщества.

Регистрация


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

Под катом подробнее о программе встречи.
Читать дальше →
Total votes 34: ↑24 and ↓10+14
Comments11

Information

Rating
Does not participate
Location
Seattle, Washington, США
Date of birth
Registered
Activity