В предыдущих частях я описал в общих чертах процесс сбора данных из веб-источников. В этом посте я покажу как сделать общий сервис (generic host) для процессирования различных сайтов с использованием WatiN. Также, я затрону проблему многопоточности в использовании WatiN. Исходники, как всегда, тут.
Антон Д @atd
Самоуверенный пользователь ПК
Data acquisition, часть 3
6 мин
1.4KВ предыдущих моих постах (часть 1, часть 2) я описал то, как получить данные из интернета как HTML, как настроить простой сервис для регулярной загрузки данных, как скорректировать HTML и загрузить его в CLR-объект. В этом посте мы обсудим то, как хранить и обновлять данные в базе. Также я приведу полное описание процесса скрейпинга.
+8
10 способов облажаться в программировании
5 мин
7.4KПеревод
Недавно по наследству от грязного, вонючего контрактора (который утверждал, что его знания и умения так хороши, чтоб не трогать его пока, он не закончит проект) мне досталось веб-приложение. К сожалению, мы поверили ему на слово. На первый взгляд большинство функционала веб-приложения работало как надо. Однако, как только клиент начал использовать приложение в реальных условиях, –
Я решил описать некоторые из тех ошибок, с которыми столкнулся. Это ошибки, которые, каждый хороший программист давно уже должен уметь избегать… но, очевидно, что некоторым людям нужно о них напоминанать.
+221
Data acquisition, часть 1
8 мин
4.2KОдно из приемуществ всеобщего удешевления аппаратуры и интернета в том, что сбор информации из разных источников в интернете почти ничего не стоит и может производиться без особых проблем. Задача получения и обработки больших объемов данных является коммерчески превлекательной ввиду спроса на считывание («скрейпинг») веб-сайтов со стороны заказчиков (обычно это описывается термином ‘social media analysis’, т.е. анализ социальных медиа). Ну и в принципе это достаточно интересно – по крайней мере по сравнению с рутинной разработкой сайтов, отчетов, и т.д.
В этой статье я начну рассказ про то, как можно реализовать сбор и обработку данных с использованием платформы .Net. Было бы интересно послушать про то как делать то же самое в стеке Java, поэтому если кто-то хочет присоединиться к данной статье в качестве соавтора – милости прошу.
В этой статье я начну рассказ про то, как можно реализовать сбор и обработку данных с использованием платформы .Net. Было бы интересно послушать про то как делать то же самое в стеке Java, поэтому если кто-то хочет присоединиться к данной статье в качестве соавтора – милости прошу.
+23
Синдром многорукого Шивы: Знания vs Навыки
7 мин
17KВ продолжение предыдущего поста.
Мне кажется, что большинство компьютерных специалистов «нестандартного профиля» и системных администраторов образовалось стихийно, и большинство из них прошли путь, когда приходилось и принтеры разных видов обслуживать, и с 1С возиться, и почтой заниматься, и банк-клиенты настраивать, и решать проблему с воспроизведением видео на ноутбуке начальства. Я могу ошибаться, но, насколько я могу видеть это в своём окружении, большинство шли именно этим путём.
Путь о котором я говорю — путь «многорукого Шивы». Путь множества навыков и относительно малого знания. Те, кто переключился на путь знания идут вверх. Те, кто остался на пути навыков — остаются примерно там же, где и были.
Мне кажется, что большинство компьютерных специалистов «нестандартного профиля» и системных администраторов образовалось стихийно, и большинство из них прошли путь, когда приходилось и принтеры разных видов обслуживать, и с 1С возиться, и почтой заниматься, и банк-клиенты настраивать, и решать проблему с воспроизведением видео на ноутбуке начальства. Я могу ошибаться, но, насколько я могу видеть это в своём окружении, большинство шли именно этим путём.
Путь о котором я говорю — путь «многорукого Шивы». Путь множества навыков и относительно малого знания. Те, кто переключился на путь знания идут вверх. Те, кто остался на пути навыков — остаются примерно там же, где и были.
+185
NoSQL, используя MongoDB, NoRM и ASP.NET MVC
5 мин
13KПеревод
В данной статье, я хотел бы рассказать, как работать с NoSQL и документо-ориентированной базой данных MongoDB, NoRM и ASP.NET MVC 2.
NoSQL и документо-ориентированная база данных
В этом году особенно заметны активные движения в направлении NoSQL и люди постоянно обсуждают о применении документо-ориентированных баз вместе с веб-приложениями. Согласно Википедии “NoSQL — движение, продвигающее свободный класс не реляционных хранилищ данных, которое прервало длинную историю реляционных баз данных. Данные хранилища могут не требовать фиксированных схем для таблиц, чаще всего избегают join-операций и обычно имеют горизонтальное масштабирование. Преподаватели часто ссылаются на подобные базы данных, как на структурированные хранилища.
+18
Наш вклад в поиск жилья без посредников: проект «Море летом»
3 мин
952Общественность негодует
Не далее как сегодня в блоге «Я пиарюсь» появился пост про аренду жилья, посредников, которые повсюду, и про сайт, который призван с ними бороться.
Прочитал я эту статью и увидел, что к теме существует неподдельный интерес со стороны сообщества. Действительно, все, кому приходилось снимать жилье на долгий или короткий срок, в своем городе либо на отдыхе, сталкивались с проблемой посредничества. Можно обсуждать, является ли посредничество проблемой, но стоимость аренды оно повышает точно.
Предыстория
Так вот, перейдем от теории к практике.
Как-то летом, я с друзьями впервые в жизни собрался на наше черноморское побережье. И не куда-нибудь, а в Абхазию. Очевидно, что ситуация с проникновением интернета там была плачевной (то был 2008 год). Я, привыкший находить информацию в интернете максимум за несколько минут, был обескуражен. Информации было мало, и чуть более, чем полностью она представляла собой контакты посредников. Телефоны настоящих владельцев пришлось отрывать на форумах и в прочих сомнительных местах.
Отдохнуть в тот раз я съездил, но желание что-то изменить к лучшему во мне затаилось.
+62
Пример web-проекта на VS2010
9 мин
9.5KВыход VS 2010 для меня, в первую очередь, это возможность работать с .Net 4, Entity Framework 4, ASP.NET MVC 2.
Все полученные теоретические знания, на мой взгляд должны быть выражены в практическом опыте. Поэтому как только представилась возможность, я реализовал проект с использованием VS 2010. И теперь готов поделиться своими впечатлениями от новых возможностей.
Статья рассчитана на искушенных разработчиков )
Все полученные теоретические знания, на мой взгляд должны быть выражены в практическом опыте. Поэтому как только представилась возможность, я реализовал проект с использованием VS 2010. И теперь готов поделиться своими впечатлениями от новых возможностей.
Статья рассчитана на искушенных разработчиков )
+33
Галерея эффектов кэшей процессоров
10 мин
25KПеревод
Почти все разработчики знают, что кэш процессора — это такая маленькая, но быстрая память, в которой хранятся данные из недавно посещённых областей памяти — определение краткое и довольно точное. Тем не менее, знание «скучных» подробностей относительно механизмов работы кэша необходимо для понимания факторов влияющих на производительность кода.
В этой статье мы рассмотрим ряд примеров иллюстрирующих различные особенности работы кэшей и их влияние на производительность. Примеры будут на C#, выбор языка и платформы не так сильно влияет на оценку производительности и конечные выводы. Естественно, в разумных пределах, если вы выберите язык, в котором чтение значения из массива равносильно обращению к хеш-таблице, никаких результатов пригодных к интерпретации вы не получите. Курсивом идут примечания переводчика.
В этой статье мы рассмотрим ряд примеров иллюстрирующих различные особенности работы кэшей и их влияние на производительность. Примеры будут на C#, выбор языка и платформы не так сильно влияет на оценку производительности и конечные выводы. Естественно, в разумных пределах, если вы выберите язык, в котором чтение значения из массива равносильно обращению к хеш-таблице, никаких результатов пригодных к интерпретации вы не получите. Курсивом идут примечания переводчика.
+173
Enterprise Library 5
1 мин
8.1KЗамечательный набор инструментов от команды 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 к пятому релизу.
Из названия 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 к пятому релизу.
+16
Введение в разработку USB периферии
4 мин
49KПоследние полгода я участвую в разработке первого в своей жизни USB-устройства и прикладного ПО к нему, и сейчас хочу поделиться своим пониманием того, как там всё работает: микроконтроллер, драйвер, прикладное ПО. Также затрону вопрос о выборе идентификаторов VID/PID. Список полезных ссылок для желающих более подробно разобраться в теме прилагается.
+103
Кроссбраузерный text-overflow \(^_^)/
5 мин
27KВ случае, когда текст не влезает в ширину блока, есть несколько вариантов его визуализации:
- Разрешить ему вылезать за пределы блока. В большинстве случаев смотрится весьма косячно.
- Обрезать текст по границе блока. То же смотрится некузяво.
- Обрезать и нарисовать скроллинг. Это вообще жуть какая-то.
- Обрезать и сделать плавное затухание к краю так чтобы места обрезания букв не было видно. Сложно применять в случае неоднородного фона. Приходится вручную прятать затухание, когда текст имеет ширину меньше или равную ширине блока.
- Укорачивать текст, вставляя вконце многоточие.
+38
jQuery template engine
2 мин
11KНачалось все с прочтения вот этого поста.
Идея мне очень понравилась, и я, недолго думая, начал искать в интернете готовые решения «шаблонизаторов» для jQuery.
Идея мне очень понравилась, и я, недолго думая, начал искать в интернете готовые решения «шаблонизаторов» для jQuery.
+25
.NET 4: “стройная” синхронизация
5 мин
18KНаконец-то вышла RTM версия .NET 4 и Visual Studio 2010. Заключительные оптимизации в финальной версии платформы проведены, и можно смело подвергнуть её тестам.
+15
WebMoney – на выход
2 мин
13KДорогие друзья!
В комментариях к первому посту нашего блога, вы высказали пожелания получить информацию по выводу WMR из системы. По вашим просьбам мы подготовили сравнительную таблицу по выводу этой валюты. Сравнивайте возможности и выбирайте наиболее выгодный и удобный для себя вариант. Надеемся, что в ближайшее время мы подготовим подобные сравнительные таблицы и по другим валютам системы WebMoney.
В комментариях к первому посту нашего блога, вы высказали пожелания получить информацию по выводу WMR из системы. По вашим просьбам мы подготовили сравнительную таблицу по выводу этой валюты. Сравнивайте возможности и выбирайте наиболее выгодный и удобный для себя вариант. Надеемся, что в ближайшее время мы подготовим подобные сравнительные таблицы и по другим валютам системы WebMoney.
вывод WMR в наличные | комиссия | срок | плюсы/минусы |
---|---|---|---|
переводы без открытия счета(Юнистрим, Анелик, Контакт и т.д. | 0.5-3%(в зависимости от системы) | от 10 мин | + скорость. В отличии от банковского перевода, можно идти за средствами через 10 минут. +простота оформления (онлайн, на сайте perevod.webmoney.ru) + Много точек (особенно в крупных городах) — кому-то может показаться минусом обязательное наличие формального аттестата — есть ограничения по суммам. См. на сайте. |
Обменные пункты и дилеры | 2-3% | как правило, в теч. 1 часа | + повсеместная распространенность + быстрота — комиссия довольно большая Найти ближайшую точку можно тут или тут |
+30
nanoCAD ВК 1.0 — проектирование водопровода и канализации
2 мин
16KМы выпустили новый продукт – nanoCAD ВК 1.0. И это первый продукт, который использует 3D-ядро нашей бесплатной системы nanoCAD. Предназначен он для инженеров-сантехников. Да-да, для тех самых, без которых, уважаемый %username% ты не cмог бы прожить и дня. «Потому что без воды и не туды и не сюды». :)
+24
Место под солнцем для нового стартапа
6 мин
39KНедавно мы опубликовали историю появления на свет LinguaLeo.ru. Сервис запустился в бета-версии 1 марта. Меньше чем через месяц команда разработчиков возвращается в Москву. Но нам жаль просто так уезжать с острова Ко Чанг — уж очень много было вложено в создание комфортных условий для работы. Поэтому мы хотим поделиться своими впечатлениями, каково это — вести разработку на острове в Таиланде, и в подробностях рассказать, с чем придется столкнуться тем, кто отважится на авантюру и отправится в тропики, чтобы целиком посвятить себя реализации задуманной идеи. И объявляем акцию: мы передадим наше солнечное место хорошим ребятам с новым интересным стартапом!
+101
Куда податься с Макхоста?
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
1) www.1gb.ru
2) www.agava.ru
3) www.estt.ru
4) www.infobox.ru
5) www.parking.ru
0
Как я покупал сервер в ServerLoft
5 мин
6.9KДень 0: Предыстория
27-го марта, ориентировочно в 22.35 по московскому времени мне пришла смска — «Ping: alpha @ Hosting.UA is down». Следом за ней еще три, сервера beta, gamma и delta тоже плохо себя чувствовали. «Ладно, у них иногда бывает, сейчас все вернется», подумал я и спокойно пошел спать. Утром меня ждал непрятный сюрприз — мне позвонил хороший знакомый и рассказал что Hosting.UA сгорел. Официальной информации от них не было, следовательно ждать не имело смысла. Нужно было срочно найти хотя бы один сервер, чтобы развернуть бекапы. Я не хотел больше хостится в пределах СНГ, но неплохой пинг хотелось сохранить. Погуглив и потестировав связь было принято решение остановиться на Германии, а в ней, в свою очередь, я остановился на двух провайдерах выделенных серверов — Hetzner.de и serverloft.com (serverloft.eu если быть точным).
+102
Как быстро установить и начать эксперементировать с Cassandra
4 мин
15KCassandra — распределенная база данных, в основу которой положены идеи Dynamo и Google Big Table
Обзор основных особенноестей:
- Проверена в работе (используется в Facebook, Twitter, Digg и в др.)
- Отказоустойчива (каждая запись дублируется на нескольких узлах в кластере)
- Децентрализована (все узлы в кластере эквивалентны)
- Гибкая модель данных
- Пропускная способность чтения и записи увеличиваются линейно с добавлением новых узлов
- Безразмерна (нет ограничений на объем, поиск всегда O(1))
+10
Информация
- В рейтинге
- Не участвует
- Откуда
- Россия
- Зарегистрирован
- Активность