Scala — это изумительный язык программирования, которым я наслаждался года 4 назад. Я, наверное, был его фанатом: покупал книги и курсы на Coursera, использовал в pet- и продуктивных проектах et cetera, et cetera, et cetera.
Scala открыл для меня увлекательный мир функционального программирования, вернул во времена студенчества со «сферическими задачами в вакууме» от Martin'a Odersky…
Но вот он уже года два как Scala для меня мертва. Виной этому… Читать дальше ->
Сразу скажу, пост не о политике и послании, а о том как НЕ нужно делать графики, вообще ни для кого не нужно так делать, тем более для президента, особенно когда аудитория столь обширная.
Если вы обслуживаете пару-тройку сайтов, то обновление плагинов не вызывает каких-то сложностей. Сложности появляются, если вы обслуживаете несколько десятков, а то и сотен сайтов.
CleanTalk Антиспам требует частых обновлений (нам приходится выпускать новую версию раз в 1-2 недели), на это есть много причин.
WordPress, как конструктор, имеет огромное множество плагинов, тем, виджетов и т.д. которые не всегда они разработаны с учетом WordPress Codex, имеют разную архитектуру и обработку событий. Поэтому могут возникать ошибки интеграции CleanTalk с разными компонентами, особенно редкими. Читать дальше ->
Около года назад я заприметил интереснейшую и увлекательную серию лекций Эдди Мартина, который потрясающе доходчиво, благодаря своей истории и примерам из реальной жизни, а также колоссальному опыту в обучении, позволяет приобрести понимание довольно сложных технологий.
Мы продолжаем цикл из 18 статей на основе его лекций:
Ни для кого не секрет, что .net сейчас используется в большинстве случаев как инструмент бэкенд разработки, а в клиентской разработке последние лет 5 правит js сообщество с своей экосистемой и инструментами для разработки. Это все безобразие с каждым годом усиливает пропасть между фронтэндом и бэкендом, и планка вхождения в область становится все выше и выше, разработчики начинают делиться на два лагеря и уходит такое понятие как фуллстек.
Да, под Node.js можно написать сервер, но для бэковой разработки, все же, .net бесспорный лидер. На js, на мой взгляд, очень сложно написать гибкий и легко поддерживаемый бэкенд, хотя возможно многие со мной и не согласятся.
Давайте ударим автопробегом по бездорожью попытаемся вопреки всему этому написать SPA приложение с бэком на .net core и клиентом на js, из инструментов разработки будем использовать горячо любимую Visual Studio.
После этого туториала, я надеюсь, веб и бэк разработчикам будет проще найти почву под ногами в вражьей области и понять в какую сторону двигаться для более углубленного изучения. Поехали! Читать дальше →
Привет, Хабр! Сегодня мы запускаем экспериментальную серию статей. Вы погрузитесь в реалити-шоу для программистов-самоучек, в котором Алексей Плотников, один из участников нашего сообщества Microsoft Developer, будет рассказывать о том, как он создаёт игру на UWP. Под катом — первая часть, с описанием идеи проекта и ответом на простой вопрос: «Что нужно заложить с самого начала?» Не забудьте оставить комментарии, вы можете повлиять на ход разработки.
В предыдущих статьях мы много рассказывали о Splunk. Это продукт, который позволяет собирать и анализировать данные с любых IT-систем в режиме реального времени, например, это могут быть результаты работы web-сервера, почтового сервера, Windows, различных приложений и тд. Значит ли это, что если всем сотрудникам, заинтересованным в аналитике, полученной в Splunk, необходимо разбираться в работе программы, вносить изменения в свои бизнес-процессы и делать всю аналитику только в Splunk? Конечно же, нет!
В данной статье мы покажем, как сделать так, чтобы в несколько кликов отдел продаж мог получать в MS Excel таблицу, с актуальными данными о реализации товара через интернет магазин. Читать дальше ->
В предыдущей статье мы разобрали реализацию двухпоточного bridge_server-а. На одном потоке асинхронно обрабатываются входящие HTTP-запросы посредством RESTinio. На втором потоке выполняются асинхронные запросы к delay_server-у посредством libcurl в виде curl_multi с использованием функций curl_multi_perform и curl_multi_wait.
Сегодня же мы разберем другую реализацию bridge_server-а, которая асинхронно обслуживает и входящие, и исходящие HTTP-запросы на одном и том же пуле потоков. Из libcurl-а для этих целей применяется функция curl_multi_socket_action.
Эта реализация заняла у нас больше всего времени. Давно не приходилось выкуривать столько бамбука, сколько довелось при разбирательстве с документацией к этой функции и примерами ее использования. По началу все это вообще воспринималось как какая-то черная магия, но потом свет в конце туннеля все-таки забрезжил, а код — заработал. Как именно заработал? А вот об этом сегодня и поговорим. Читать дальше ->
Как и обещали, публикуем ответы Эвана Ю (Evan You) на вопросы, которые мы долго и мучительно собирали в предыдущем посте, а также русскоязычном Vue чате в Telegram.
Специалистам в области информационной безопасности сегодня почти невозможно обойтись без знаний соответствующих стандартов и спецификаций. На то имеется несколько причин. Формальная состоит в том, что необходимость следования некоторым стандартам, таким как «криптографические» стандарты или «руководящие документы» закреплена законодательно. Однако наиболее убедительны содержательные причины. Читать дальше ->
Специалистам в области информационной безопасности сегодня почти невозможно обойтись без знаний соответствующих стандартов и спецификаций. На то имеется несколько причин. Формальная состоит в том, что необходимость следования некоторым стандартам, таким как «криптографические» стандарты или «руководящие документы» закреплена законодательно. Однако наиболее убедительны содержательные причины. Читать дальше ->
Специалистам в области информационной безопасности сегодня почти невозможно обойтись без знаний соответствующих стандартов и спецификаций. На то имеется несколько причин. Формальная состоит в том, что необходимость следования некоторым стандартам, таким как «криптографические» стандарты или «руководящие документы» закреплена законодательно. Однако наиболее убедительны содержательные причины. Читать дальше ->
Вот и пролетело полгода с тех пор, как я перевёл свой математический пакет на Андроид, “Микро-Математику”, в статус свободных приложений с открытым исходным кодом и опубликовал код на github. Благодаря такому шагу, “Микро-Математика” получила мощный импульс для развития, а я сам — ценный и весьма позитивный опыт общения с сообществом. В данной небольшой заметке я хочу представить новую версию приложения, которая сейчас готовится к релизу, а также поделиться всем тем позитивом, который был получен в рамках работы над релизом. Эта заметка для тех, кто интересуется как общими вопросами разработки под Андроид и ПО с открытым исходным кодом, так и прикладными вопросами, связанными с математическими вычислениями.
Вот и пролетело полгода с тех пор, как я перевёл свой математический пакет на Андроид, “Микро-Математику”, в статус свободных приложений с открытым исходным кодом и опубликовал код на github. Благодаря такому шагу, “Микро-Математика” получила мощный импульс для развития, а я сам — ценный и весьма позитивный опыт общения с сообществом. В данной небольшой заметке я хочу представить новую версию приложения, которая сейчас готовится к релизу, а также поделиться всем тем позитивом, который был получен в рамках работы над релизом. Эта заметка для тех, кто интересуется как общими вопросами разработки под Андроид и ПО с открытым исходным кодом, так и прикладными вопросами, связанными с математическими вычислениями.
Вот и пролетело полгода с тех пор, как я перевёл свой математический пакет на Андроид, “Микро-Математику”, в статус свободных приложений с открытым исходным кодом и опубликовал код на github. Благодаря такому шагу, “Микро-Математика” получила мощный импульс для развития, а я сам — ценный и весьма позитивный опыт общения с сообществом. В данной небольшой заметке я хочу представить новую версию приложения, которая сейчас готовится к релизу, а также поделиться всем тем позитивом, который был получен в рамках работы над релизом. Эта заметка для тех, кто интересуется как общими вопросами разработки под Андроид и ПО с открытым исходным кодом, так и прикладными вопросами, связанными с математическими вычислениями.
На хабре откровенно мало статей про АСУ ТП. Более того, подозреваю, что программирование в отрасли промышленной автоматизации для большинства хабровчан — некий магический темный лес со странными легендами и существами. И вот мне захотелось провести небольшую экскурсию по этому лесу в познавательных целях, но познавательными целями ограничиваться не будем, и постараемся, чтобы данный материал был полезен людям, только начинающим свой путь в АСУТП, либо впервые столкнувшимися с рассматриваемым типом контроллеров. Читать дальше ->
На Хабре откровенно мало статей про АСУ ТП. Более того, подозреваю, что программирование в отрасли промышленной автоматизации для большинства хабровчан — некий магический темный лес со странными легендами и существами. И вот мне захотелось провести небольшую экскурсию по этому лесу в познавательных целях, но познавательными целями ограничиваться не будем, и постараемся, чтобы данный материал был полезен людям, только начинающим свой путь в АСУТП, либо впервые столкнувшимися с рассматриваемым типом контроллеров. Читать дальше ->
На хабре откровенно мало статей про АСУ ТП. Более того, подозреваю, что программирование в отрасли промышленной автоматизации для большинства хабровчан — некий магический темный лес со странными легендами и существами. И вот мне захотелось провести небольшую экскурсию по этому лесу в познавательных целях, но познавательными целями ограничиваться не будем, и постараемся, чтобы данный материал был полезен людям, только начинающим свой путь в АСУТП, либо впервые столкнувшимися с рассматриваемым типом контроллеров. Читать дальше ->
Моя первая публикация прошла с неприятным осадком. Я обещал исправить это недоразумение и на ваш суд представляю свою первую статью-урок по VueJs. Надеюсь, она окажется полезной. Мыслей много, опыта тоже немало. Всю жизнь учусь по чужим статьям, урокам. Пришло время тоже делиться знаниями.
А будем мы творить модальные окна. Да опять они. Но не такие простые, как описаны в первой моей (не моей) публикации.
Много уже их создано для Vue. Пользовался всякими. И видимо, когда достигаешь какого-то определенного уровня владения инструментом (в данном случае Vue), сразу хочется сделать велосипед, но конечно со своими прибамбасами, типа, чтобы круче всех и т.д. И я не стал исключением из правил.
Из всех доступных модальных компонентов, использовал в основном этот — Vuedals.
Но решил я его проапгрейдить. В принципе от основы остался только EventBus и взаимодействие событий связанных с открытием-закрытием окон. Основной компонент переписан и стал оберткой-контейнером и добавлен новый компонент — само модальное окно.
Но обо всем по порядку. И статья получится очень немаленькая, кто осилит, тот красавчик :) Читать дальше ->
Моя первая публикация прошла с неприятным осадком. Я обещал исправить это недоразумение и на ваш суд представляю свою первую статью-урок по VueJs. Надеюсь, она окажется полезной. Мыслей много, опыта тоже немало. Всю жизнь учусь по чужим статьям, урокам. Пришло время тоже делиться знаниями.
А будем мы творить модальные окна. Да опять они. Но не такие простые, как описаны в первой моей (не моей) публикации.
Много уже их создано для Vue. Пользовался всякими. И видимо, когда достигаешь какого-то определенного уровня владения инструментом (в данном случае Vue), сразу хочется сделать велосипед, но конечно со своими прибамбасами, типа, чтобы круче всех и т.д. И я не стал исключением из правил.
Из всех доступных модальных компонентов, использовал в основном этот — Vuedals.
Но решил я его проапгрейдить. В принципе от основы остался только EventBus и взаимодействие событий связанных с открытием-закрытием окон. Основной компонент переписан и стал оберткой-контейнером и добавлен новый компонент — само модальное окно.
Но обо всем по порядку. И статья получится очень немаленькая, кто осилит, тот красавчик :) Читать дальше ->