Как стать автором
Обновить
160
-4
Антон Д @atd

Самоуверенный пользователь ПК

Отправить сообщение

Data acquisition, часть 4

Время на прочтение6 мин
Количество просмотров1.6K
В предыдущих частях я описал в общих чертах процесс сбора данных из веб-источников. В этом посте я покажу как сделать общий сервис (generic host) для процессирования различных сайтов с использованием WatiN. Также, я затрону проблему многопоточности в использовании WatiN. Исходники, как всегда, тут.
Читать дальше →
Всего голосов 15: ↑10 и ↓5+5
Комментарии0

Data acquisition, часть 3

Время на прочтение6 мин
Количество просмотров1.4K
В предыдущих моих постах (часть 1, часть 2) я описал то, как получить данные из интернета как HTML, как настроить простой сервис для регулярной загрузки данных, как скорректировать HTML и загрузить его в CLR-объект. В этом посте мы обсудим то, как хранить и обновлять данные в базе. Также я приведу полное описание процесса скрейпинга.

Если интересно...
Всего голосов 24: ↑16 и ↓8+8
Комментарии7

10 способов облажаться в программировании

Время на прочтение5 мин
Количество просмотров7.4K
10ways
Недавно по наследству от грязного, вонючего контрактора (который утверждал, что его знания и умения так хороши, чтоб не трогать его пока, он не закончит проект) мне досталось веб-приложение. К сожалению, мы поверили ему на слово. На первый взгляд большинство функционала веб-приложения работало как надо. Однако, как только клиент начал использовать приложение в реальных условиях, – весна показала, кто где срал оно начало барахлить. Контрактор исчез после оплаты (умри репутация!), а я остался, чтобы попытаться починить то, с чем пока мучился клиент.
Я решил описать некоторые из тех ошибок, с которыми столкнулся. Это ошибки, которые, каждый хороший программист давно уже должен уметь избегать… но, очевидно, что некоторым людям нужно о них напоминанать.

Читать дальше →
Всего голосов 346: ↑283.5 и ↓62.5+221
Комментарии208

Data acquisition, часть 1

Время на прочтение8 мин
Количество просмотров4.2K
Одно из приемуществ всеобщего удешевления аппаратуры и интернета в том, что сбор информации из разных источников в интернете почти ничего не стоит и может производиться без особых проблем. Задача получения и обработки больших объемов данных является коммерчески превлекательной ввиду спроса на считывание («скрейпинг») веб-сайтов со стороны заказчиков (обычно это описывается термином ‘social media analysis’, т.е. анализ социальных медиа). Ну и в принципе это достаточно интересно – по крайней мере по сравнению с рутинной разработкой сайтов, отчетов, и т.д.

В этой статье я начну рассказ про то, как можно реализовать сбор и обработку данных с использованием платформы .Net. Было бы интересно послушать про то как делать то же самое в стеке Java, поэтому если кто-то хочет присоединиться к данной статье в качестве соавтора – милости прошу.

Если интересно...
Всего голосов 47: ↑35 и ↓12+23
Комментарии27

Синдром многорукого Шивы: Знания vs Навыки

Время на прочтение7 мин
Количество просмотров17K
В продолжение предыдущего поста.


Мне кажется, что большинство компьютерных специалистов «нестандартного профиля» и системных администраторов образовалось стихийно, и большинство из них прошли путь, когда приходилось и принтеры разных видов обслуживать, и с 1С возиться, и почтой заниматься, и банк-клиенты настраивать, и решать проблему с воспроизведением видео на ноутбуке начальства. Я могу ошибаться, но, насколько я могу видеть это в своём окружении, большинство шли именно этим путём.

Путь о котором я говорю — путь «многорукого Шивы». Путь множества навыков и относительно малого знания. Те, кто переключился на путь знания идут вверх. Те, кто остался на пути навыков — остаются примерно там же, где и были.
Читать дальше →
Всего голосов 221: ↑203 и ↓18+185
Комментарии205

NoSQL, используя MongoDB, NoRM и ASP.NET MVC

Время на прочтение5 мин
Количество просмотров13K


В данной статье, я хотел бы рассказать, как работать с NoSQL и документо-ориентированной базой данных MongoDB, NoRM и ASP.NET MVC 2.

NoSQL и документо-ориентированная база данных


В этом году особенно заметны активные движения в направлении NoSQL и люди постоянно обсуждают о применении  документо-ориентированных баз вместе с веб-приложениями. Согласно Википедии “NoSQL — движение, продвигающее свободный класс не реляционных хранилищ данных, которое прервало длинную историю реляционных баз данных.  Данные хранилища могут не требовать фиксированных схем для таблиц, чаще всего избегают join-операций и обычно имеют горизонтальное масштабирование. Преподаватели часто ссылаются на подобные базы данных, как на структурированные хранилища.
Читать дальше →
Всего голосов 42: ↑30 и ↓12+18
Комментарии23

Наш вклад в поиск жилья без посредников: проект «Море летом»

Время на прочтение3 мин
Количество просмотров952

Общественность негодует


Не далее как сегодня в блоге «Я пиарюсь» появился пост про аренду жилья, посредников, которые повсюду, и про сайт, который призван с ними бороться.

Прочитал я эту статью и увидел, что к теме существует неподдельный интерес со стороны сообщества. Действительно, все, кому приходилось снимать жилье на долгий или короткий срок, в своем городе либо на отдыхе, сталкивались с проблемой посредничества. Можно обсуждать, является ли посредничество проблемой, но стоимость аренды оно повышает точно.

Предыстория


Так вот, перейдем от теории к практике.
Как-то летом, я с друзьями впервые в жизни собрался на наше черноморское побережье. И не куда-нибудь, а в Абхазию. Очевидно, что ситуация с проникновением интернета там была плачевной (то был 2008 год). Я, привыкший находить информацию в интернете максимум за несколько минут, был обескуражен. Информации было мало, и чуть более, чем полностью она представляла собой контакты посредников. Телефоны настоящих владельцев пришлось отрывать на форумах и в прочих сомнительных местах.
Отдохнуть в тот раз я съездил, но желание что-то изменить к лучшему во мне затаилось.
Читать дальше →
Всего голосов 86: ↑74 и ↓12+62
Комментарии70

Пример web-проекта на VS2010

Время на прочтение9 мин
Количество просмотров9.5K
Выход VS 2010 для меня, в первую очередь, это возможность работать с .Net 4, Entity Framework 4, ASP.NET MVC 2.
Все полученные теоретические знания, на мой взгляд должны быть выражены в практическом опыте. Поэтому как только представилась возможность, я реализовал проект с использованием VS 2010. И теперь готов поделиться своими впечатлениями от новых возможностей.
Статья рассчитана на искушенных разработчиков )

Читать дальше →
Всего голосов 87: ↑60 и ↓27+33
Комментарии27

Галерея эффектов кэшей процессоров

Время на прочтение10 мин
Количество просмотров25K
Ядро PenrynПочти все разработчики знают, что кэш процессора — это такая маленькая, но быстрая память, в которой хранятся данные из недавно посещённых областей памяти — определение краткое и довольно точное. Тем не менее, знание «скучных» подробностей относительно механизмов работы кэша необходимо для понимания факторов влияющих на производительность кода.

В этой статье мы рассмотрим ряд примеров иллюстрирующих различные особенности работы кэшей и их влияние на производительность. Примеры будут на C#, выбор языка и платформы не так сильно влияет на оценку производительности и конечные выводы. Естественно, в разумных пределах, если вы выберите язык, в котором чтение значения из массива равносильно обращению к хеш-таблице, никаких результатов пригодных к интерпретации вы не получите. Курсивом идут примечания переводчика.
Читать дальше
Всего голосов 181: ↑177 и ↓4+173
Комментарии47

Enterprise Library 5

Время на прочтение1 мин
Количество просмотров8.1K
imageЗамечательный набор инструментов от команды patterns & practices – Enterprise Library выпущен в пятой версии. Для тех, что не знает, Enterprise Library — это архитектурные блоки, которые реализуют наиболее частые задачи при разработке программного обеспечения. Примеры таких задач: кеширование, логирование, валидация данных. Наверное, самой популярной частью библиотеки является IoC-контейнер Unity.

Из названия Enterprise Library понятно, что библиотека построена самым серьезным образом и может использоваться для самых ответственных задач. Для каждого блока могут быть установлены системные счетчики производительности.

Enterprise Library — это open source проект под свободной лицензией MSPL. Исходные коды поставляются вместе с библиотекой либо их можно скачать отдельно.

Для удобного конфигурирования всех параметров каждого блока, с библиотекой поставляется удобный инструмент Enterprise Library Configuration.

Enterprise Library 5 содержит следующие блоки: Caching Block, Cryptography Block, Data Access Block, Exception Handling Block, Logging Block, Policy Injection Block, Security Block, Validation Block, Unity.

Кроме того, коммюнити-проект EntLinb Contrib содержит еще ряд дополнительных блоков и расширений.

Ссылки:
загрузить Enterprise Library 5;
страница проекта на codeplex.com;
документация к пятому релизу;
release notes к пятому релизу.
Всего голосов 44: ↑30 и ↓14+16
Комментарии12

Введение в разработку USB периферии

Время на прочтение4 мин
Количество просмотров49K
Последние полгода я участвую в разработке первого в своей жизни USB-устройства и прикладного ПО к нему, и сейчас хочу поделиться своим пониманием того, как там всё работает: микроконтроллер, драйвер, прикладное ПО. Также затрону вопрос о выборе идентификаторов VID/PID. Список полезных ссылок для желающих более подробно разобраться в теме прилагается.
Читать дальше →
Всего голосов 103: ↑103 и ↓0+103
Комментарии109

Кроссбраузерный text-overflow \(^_^)/

Время на прочтение5 мин
Количество просмотров27K
В случае, когда текст не влезает в ширину блока, есть несколько вариантов его визуализации:
  1. Разрешить ему вылезать за пределы блока. В большинстве случаев смотрится весьма косячно.
  2. Обрезать текст по границе блока. То же смотрится некузяво.
  3. Обрезать и нарисовать скроллинг. Это вообще жуть какая-то.
  4. Обрезать и сделать плавное затухание к краю так чтобы места обрезания букв не было видно. Сложно применять в случае неоднородного фона. Приходится вручную прятать затухание, когда текст имеет ширину меньше или равную ширине блока.
  5. Укорачивать текст, вставляя вконце многоточие.
О реализации последней стратегии и пойдёт далее речь...

А теперь долгожданное порево
Всего голосов 80: ↑59 и ↓21+38
Комментарии55

jQuery template engine

Время на прочтение2 мин
Количество просмотров11K
Началось все с прочтения вот этого поста.
Идея мне очень понравилась, и я, недолго думая, начал искать в интернете готовые решения «шаблонизаторов» для jQuery.
Читать дальше →
Всего голосов 35: ↑30 и ↓5+25
Комментарии56

.NET 4: “стройная” синхронизация

Время на прочтение5 мин
Количество просмотров18K
Наконец-то вышла RTM версия .NET 4 и Visual Studio 2010. Заключительные оптимизации в финальной версии платформы проведены, и можно смело подвергнуть её тестам.
Едем дальше
Всего голосов 39: ↑27 и ↓12+15
Комментарии2

WebMoney – на выход

Время на прочтение2 мин
Количество просмотров13K
Дорогие друзья!
В комментариях к первому посту нашего блога, вы высказали пожелания получить информацию по выводу WMR из системы. По вашим просьбам мы подготовили сравнительную таблицу по выводу этой валюты. Сравнивайте возможности и выбирайте наиболее выгодный и удобный для себя вариант. Надеемся, что в ближайшее время мы подготовим подобные сравнительные таблицы и по другим валютам системы WebMoney.


вывод WMR в наличные комиссия срок плюсы/минусы
переводы без открытия счета(Юнистрим, Анелик, Контакт и т.д. 0.5-3%(в зависимости от системы) от 10 мин + скорость. В отличии от банковского перевода, можно идти за средствами через 10 минут.
+простота оформления (онлайн, на сайте perevod.webmoney.ru)
+ Много точек (особенно в крупных городах)
— кому-то может показаться минусом обязательное наличие формального аттестата
— есть ограничения по суммам. См. на сайте.
Обменные пункты и дилеры 2-3% как правило, в теч. 1 часа + повсеместная распространенность
+ быстрота
— комиссия довольно большая

Найти ближайшую точку можно тут или тут
Читать дальше →
Всего голосов 70: ↑50 и ↓20+30
Комментарии115

nanoCAD ВК 1.0 — проектирование водопровода и канализации

Время на прочтение2 мин
Количество просмотров16K
Мы выпустили новый продукт – nanoCAD ВК 1.0. И это первый продукт, который использует 3D-ядро нашей бесплатной системы nanoCAD. Предназначен он для инженеров-сантехников. Да-да, для тех самых, без которых, уважаемый %username% ты не cмог бы прожить и дня. «Потому что без воды и не туды и не сюды». :)
image
Технические подробности под катом
Всего голосов 38: ↑31 и ↓7+24
Комментарии16

Место под солнцем для нового стартапа

Время на прочтение6 мин
Количество просмотров39K
Недавно мы опубликовали историю появления на свет LinguaLeo.ru. Сервис запустился в бета-версии 1 марта. Меньше чем через месяц команда разработчиков возвращается в Москву. Но нам жаль просто так уезжать с острова Ко Чанг — уж очень много было вложено в создание комфортных условий для работы. Поэтому мы хотим поделиться своими впечатлениями, каково это — вести разработку на острове в Таиланде, и в подробностях рассказать, с чем придется столкнуться тем, кто отважится на авантюру и отправится в тропики, чтобы целиком посвятить себя реализации задуманной идеи. И объявляем акцию: мы передадим наше солнечное место хорошим ребятам с новым интересным стартапом!

091 -- DSC_9057
Читать дальше →
Всего голосов 116: ↑108.5 и ↓7.5+101
Комментарии96

Куда податься с Макхоста?

Время на прочтение4 мин
Количество просмотров2.2K
В помощь всем перебежчикам с виртуалок МакХоста, решил сделать небольшой обзор предложений по Windows VPS на рынке. Главные условия отбора — безлимитный или условно-безлимитный трафик, приемлимая цена, репутация компании в результате было отобрано неколько компании:

1) www.1gb.ru
2) www.agava.ru
3) www.estt.ru
4) www.infobox.ru
5) www.parking.ru

Краткий обзор тарифов подкатом
Всего голосов 56: ↑28 и ↓280
Комментарии56

Как я покупал сервер в ServerLoft

Время на прочтение5 мин
Количество просмотров6.9K
image

День 0: Предыстория


27-го марта, ориентировочно в 22.35 по московскому времени мне пришла смска — «Ping: alpha @ Hosting.UA is down». Следом за ней еще три, сервера beta, gamma и delta тоже плохо себя чувствовали. «Ладно, у них иногда бывает, сейчас все вернется», подумал я и спокойно пошел спать. Утром меня ждал непрятный сюрприз — мне позвонил хороший знакомый и рассказал что Hosting.UA сгорел. Официальной информации от них не было, следовательно ждать не имело смысла. Нужно было срочно найти хотя бы один сервер, чтобы развернуть бекапы. Я не хотел больше хостится в пределах СНГ, но неплохой пинг хотелось сохранить. Погуглив и потестировав связь было принято решение остановиться на Германии, а в ней, в свою очередь, я остановился на двух провайдерах выделенных серверов — Hetzner.de и serverloft.com (serverloft.eu если быть точным).

Читать дальше →
Всего голосов 140: ↑121 и ↓19+102
Комментарии159

Как быстро установить и начать эксперементировать с Cassandra

Время на прочтение4 мин
Количество просмотров15K
image

Cassandra — распределенная база данных, в основу которой положены идеи Dynamo и Google Big Table

Обзор основных особенноестей:
  • Проверена в работе (используется в Facebook, Twitter, Digg и в др.)
  • Отказоустойчива (каждая запись дублируется на нескольких узлах в кластере)
  • Децентрализована (все узлы в кластере эквивалентны)
  • Гибкая модель данных
  • Пропускная способность чтения и записи увеличиваются линейно с добавлением новых узлов
  • Безразмерна (нет ограничений на объем, поиск всегда O(1))

Читать дальше →
Всего голосов 16: ↑13 и ↓3+10
Комментарии8

Информация

В рейтинге
Не участвует
Откуда
Россия
Зарегистрирован
Активность