Как стать автором
Обновить
2
0
Sergey Shoshin @shoshins

Full stack .Net Developer & Project Manager

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

Распарсить HTML в .NET и выжить: анализ и сравнение библиотек

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

В ходе работы над одним домашним проектом, столкнулся с необходимостью парсинга HTML. Поиск по гуглу выдал комментарий Athari и его микро-обзор актуальных парсеров HTML в .NET за что ему огромное спасибо.

К сожалению, никаких цифр и/или аргументов в пользу того или иного парсера найдено не было, что послужило поводом к написанию данной статьи.

Сегодня я протестирую популярные, на данный момент, библиотеки для работы с HTML, а именно: AngleSharp, CsQuery, Fizzler, HtmlAgilityPack и, конечно же, Regex-way. Сравню их по скорости работы и удобству использования.


TL;DR: Код всех бенчмарков можно найти на github. Там же лежат результаты тестирования. Самым актуальным парсером на данный момент является AngleSharp — удобный, быстрый, молодежный парсер с удобным API.

Тем, кому интересен подробный обзор — добро пожаловать под кат.
Читать дальше →
Всего голосов 31: ↑26 и ↓5+21
Комментарии36

Руководство по установке и настройке Web Deploy в среде Windows Server 2008 R2

Время на прочтение3 мин
Количество просмотров58K
В этом руководстве мы настроим Web Deploy в среде Windows Server 2008 R2 для простого развертывания приложений из Visual Studio 1 кликом мыши. Web Deploy позволяет настроить публикацию пользователем, не обладающим правами администратора.
Читать дальше →
Всего голосов 10: ↑5 и ↓50
Комментарии2

Оптимизация Windows для использования SSD диска: мифы и реальность

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


Когда весь интернет пестрит холиварами на тему «SSD ненадежны» и «SSD настолько быстрые, что я больше никогда не буду работать с HDD», думаю самое время внести немного ясности в то море противоречевой информации о самих SSD и о настройке Windows для работы с ними.

Кто заинтересовался, прошу под кат.

Читать дальше →
Всего голосов 129: ↑81 и ↓48+33
Комментарии293

Обучаем сотрудников английскому: опыт Edison

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

«Moving from the one-room schoolhouse to the one-world schoolhouse is now a reality» (Cisco Systems)


«One-room schoolhouse» — это американская сельская школа времен Марка Твена; в такой учился ещё Том Сойер — формат обучения, который до сих пор знаком каждому, кто ходил на какие-либо курсы, включая обучение английскому. Не слишком-то прогрессивно для мира облачных сервисов и глобальных видеоконференций?


Мы учились английскому у этого парня
Читать дальше →
Всего голосов 31: ↑23 и ↓8+15
Комментарии21

9 бесплатных тестов для профориентации

Время на прочтение2 мин
Количество просмотров67K
Итак, сегодня мы собрали для вас бесплатные тесты, которые позволят вам лучше узнать себя, понять, чего вам на самом деле хочется, и в профессиональных своих интересах разобраться. В самопознании все средства хороши.


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

Недопонимание про async/await и многопоточность в C#

Время на прочтение4 мин
Количество просмотров80K
Привет, Хабр! Тема async/await в .NET Framework и C# 5.0 не нова и объезженна: все давно знают, что это, как оно работает, все знакомы с тем скромным фактом, что это очень текучая абстракция и поведение зависит от SynchronizationContext. Об этом очень много писали на хабре, ещё чаще этот вопрос размусоливался в блогах различных респектабельных персон .NET-сообщества.

Тем не менее, мне очень часто приходится сталкиваться с тем, что не только новички, но и матёрые тимлиды не совсем понимают, как правильно пользоваться этим инструментом в разработке.
Читать дальше →
Всего голосов 27: ↑24 и ↓3+21
Комментарии16

9 невероятно успешных людей и первая работа, которая сделала их теми, кто они есть

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

Вы помните лето, в которое вы работали спасателем, или тот семестр в колледже, когда были кофеваром? Можете провести параллель между тем загорелым ребенком и профессионалом своего дела, которым стали теперь? Та внутренняя молодость все еще в вас – она формирует каждое ваше решение. В этой статье мы расскажем о девяти успешных людях и их первых местах работы.
Читать дальше →
Всего голосов 21: ↑15 и ↓6+9
Комментарии4

Разные версии JIT в .NET

Время на прочтение6 мин
Количество просмотров21K
Каждый C#-разработчик знает, что C#-компилятор переводит исходный код программы в промежуточный язык под названием Intermediate Language (IL). А за превращение IL в последовательность машинных команд чаще всего отвечает Just-In-Time-компилятор (JIT). Да, на сегодняшний день есть NGen, Mono AOT, .NET Native, но JIT-компиляция всё ещё лидирует в мире .NET-приложений. А вот работает этот самый JIT, знают далеко не все. Если брать в расчёт только реализацию .NET от Microsoft, то стоит различать JIT-x86 и JIT-x64. А ещё за дверями стоит RyuJIT который уже совсем скоро займёт почётное место основного JIT-компилятора. А если вы любите старые версии .NET, то полезно знать, что в разных версиях CLR логика работы JIT отличалась. Исходники у нас теперь открыты, вы можете их посмотреть и осознать, насколько же это большая и сложная тема. Сегодня мы не будем пытаться охватить её, а лишь кратко посмотрим на несколько интересных особенностей отдельных версий JIT-компиляторов. Итак, сегодня в номере:
  • Почему короткий метод может не быть заинлайнен и как этого избежать
  • JIT-баги: опасные и беспощадные
  • Кто и как разматывает циклы
  • Чем отличается размотка маленьких и больших циклов

Читать дальше →
Всего голосов 42: ↑42 и ↓0+42
Комментарии4

Точное количество времени для ежедневного труда

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

Недавние исследования научно обосновывают необходимость расчёта точного времени, которое следует тратить на отдых в течение рабочего дня. В этой статье вы найдете подборку советов, которые помогут грамотно организовать достаточное количество перерывов в течение рабочего дня.
Читать дальше →
Всего голосов 22: ↑15 и ↓7+8
Комментарии4

Улучшаем код JavaScript на примере StarWars API

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

Привет, меня зовут Рэймонд, и я пишу плохой код. Ну, не совсем плохой, но я точно не следую всем «лучшим практикам». Однако давайте я расскажу вам, как один проект помог мне начать писать код, которым я могу гордиться.

Как-то в выходной я решил отказаться от использования компьютера. Но ничего не вышло. Я наткнулся на Star Wars API. Этот простой интерфейс основан на REST, и с его помощью можно запрашивать информацию о персонажах, фильмах, космических кораблях и других вещах из вселенной SW. Поиска нет, но сервис свободный.
Читать дальше →
Всего голосов 15: ↑13 и ↓2+11
Комментарии4

Секрет о том, как всё делать вовремя

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

Вам кажется, что в сутках недостаточно часов? Попробуйте убрать один пункт из своего плана на день грядущий. Об этом сегодня расскажет Лайза Эванс (Lisa Evans).

Итак, даем слово Лайзе!
Читать дальше →
Всего голосов 22: ↑18 и ↓4+14
Комментарии1

5 основных тенденций в хостинге в 2015 году

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


В 1899 году Чарльз Дьюелл, член комиссии патентного бюро США, сделал заявление, что «все, что могло быть изобретено, уже изобретено». Многочисленные открытия и инновации тех дней были настолько впечатляющими, что многие думали: больше быть уже не может. Спустя столетие, развитие технологий продолжает производить серьезные изменения в нашей жизни, и видимых ограничений для этого все еще нет.

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

Также, опишем, как ХостТрекер может помочь следовать этим тенденциям.
Читать дальше →
Всего голосов 14: ↑6 и ↓8-2
Комментарии0

Путь к финансовой независимости от Бодо Шеффера (Часть 1)

Время на прочтение8 мин
Количество просмотров43K
Продолжаю писать конспекты с известных книг вот из этого списка от Milfgard. Сегодня это очень известная книга Бодо Шеффера «Путь к финансовой независимости».

Автор рассказывает, как работает личный успех и деньги вообще.


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

300 потрясающих бесплатных сервисов

Время на прочтение11 мин
Количество просмотров1.6M


Автор оригинальной статьи Ali Mese добавил ещё 100 новых бесплатных сервисов. Все 400 потрясающих сервисов доступны здесь. И еще подборку +500 инструментов от 10 марта 2017 г. смотрите здесь.



A. Бесплатные Веб-Сайты + Логотипы + Хостинг + Выставление Счета

  • HTML5 UP: Адаптивные шаблоны HTML5 и CSS3.
  • Bootswatch: Бесплатные темы для Bootstrap.
  • Templated: Коллекция 845 бесплатных шаблонов CSS и HTML5.
  • Wordpress.org | Wordpress.com: Бесплатное создание веб-сайта.
  • Strikingly.com Domain: Конструктор веб-сайтов.
  • Logaster: Онлайн генератор логотипов и элементов фирменного стиля (new).
  • Withoomph: Мгновенное создание логотипов (англ.).
  • Hipster Logo Generator: Генератор хипстерских логотипов.
  • Squarespace Free Logo: Можно скачать бесплатную версию в маленьком разрешении.
  • Invoice to me: Бесплатный генератор счета.
  • Free Invoice Generator: Альтернативный бесплатный генератор счета.
  • Slimvoice: Невероятно простой счет.

Читать дальше →
Всего голосов 341: ↑325 и ↓16+309
Комментарии107

Сад JavaScript: Объекты

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

Введение


Сад JavaScript – коллекция документации по самым странным особенностям языка JavaScript. Тут собраны советы по тому, как избежать распространённых ошибок и малозаметных багов, а также проблем с быстродействием и неправильного стиля программирования.

Это не учебник по языку. Предполагается, что вы уже предварительно знаете язык. Для обучения языку рекомендую воспользоваться этим великолепным переводом чудесной книги "Выразительный JavaScript".
Читать дальше →
Всего голосов 34: ↑18 и ↓16+2
Комментарии22

Основные 10 уроков о продуктивности, которые я извлек, предаваясь безделью в течение недели

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

Мы продолжаем знакомить вас с переводами статей Chris Bailey, где он делится советами, которые извлек во время проекта «a Year of Productivity». Ранее мы публиковали статьи этого автора, они доступны в нашем блоге в разделе «личная продуктивность». Хотим напомнить, что общая цель всех статей, поделиться опытом автора как стать более успешным и эффективным везде: в личной жизни, отношениях с друзьями, самим собой и конечно же на работе (чем бы вы не занимались)!

Итак, даем слово Крису!
Читать дальше →
Всего голосов 33: ↑24 и ↓9+15
Комментарии4

7 золотых правил одного программиста

Время на прочтение3 мин
Количество просмотров143K
Это статья про семь простых правил, которые я сформулировал для себя за годы работы программистом. Семь правил, которые подняли мою эффективность. Сделали меня лучше. Это мои правила и они работают для меня. Я не пытаюсь навязать их вам, я хочу поделиться с вами, и, возможно, узнать о том, каких правил и принципов придерживаетесь вы.

Компьютер всегда прав


Самая раздражающая ситуация в программировании — когда код верный, но не работает. “Да тут три строчки, блин, просто негде ошибиться! Наверное баг! Пойду потрачу три дня на изучение баг-репортов компилятора/интерпретатора/фреймворка...”. Возникает чувство, будто компьютер над вами издевается!

Тут главное помнить, что в этих трех строчках есть ошибка. Если код работает не верно — значит код написан не верно. Точка. Виноваты только вы. Универсальный совет — идите спать! Ну или хотя бы отвлекитесь на чашку чая. Когда, через некоторое время, вы вернетесь к коду, наверняка станет ясно, что тут лишний оператор отрицания, или перепутаны две переменные с похожими именами, или еще какая-нибудь мелочь, в которой мы никогда никому не признаемся.
Читать дальше →
Всего голосов 140: ↑120 и ↓20+100
Комментарии83

8 сортов муды в твоей веб-студии

Время на прочтение6 мин
Количество просмотров74K
Муда, что по-японски означает «потери» — это любая деятельность, которая потребляет ресурсы, но не создает ценности для клиента. (Источник).



Эта короткая заметка для тех, кто системно ищет, где его студия теряет деньги. Похвальное занятие в наше весёлое время.

Хорошо систематизировали виды потерь ребята из Toyota. Тойотовцы выделяют 7-8 видов муды, потерь на производстве. Посмотрим, есть ли аналоги между потерями в автомобилестроении и работе студии.
Читать дальше →
Всего голосов 86: ↑76 и ↓10+66
Комментарии45

Повышение квалификации руководителей. Обучение практике Кайдзен на стажировке в Японии

Время на прочтение10 мин
Количество просмотров22K
Кайдзен, кайдзэн (яп. 改善 Kaizen) — японская философия или практика, которая фокусируется на непрерывном совершенствовании процессов производства, разработки, вспомогательных бизнес-процессов и управления, а также всех аспектов жизни.

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

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

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

Под катом много интересного и фото. Трафик.
Читать дальше →
Всего голосов 22: ↑18 и ↓4+14
Комментарии27

Выразительный JavaScript: Проект: программа Paint

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

Содержание




Я смотрю на многообразие цветов. Я смотрю на пустой холст. Затем я пытаюсь нанести цвета как слова, из которых возникают поэмы, как ноты, из которых возникает музыка.

Жоан Миро


Материал предыдущих глав даёт вам всё необходимое для создания простого веб-приложения. Именно этим мы и займёмся.

Наше приложение будет программой для рисования в браузере, схожей с Microsoft Paint. С его помощью можно будет открывать файлы с изображениями, малевать на них мышкой и сохранять обратно. Вот, как это будет выглядеть:


Простая программа рисования
Читать дальше →
Всего голосов 42: ↑39 и ↓3+36
Комментарии3
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Архангельск, Архангельская обл., Россия
Дата рождения
Зарегистрирован
Активность