Архив рубрики: Информационные технологии

Про искусственный интеллект и творчество

Вроде бы было много интересных тем, на которые можно было бы поговорить, но как до дела, все не уходило дальше нескольких строк. Но тут я наткнулся на это видео, музыка сочинененная искуственным интеллектом. Лишних строк не требуется.

 

 

 

Если Вы нашли ошибку, пожалуйcта выделите ее и нажмите Shift + E или нажмите здесь чтобы информировать меня. Спасибо.

Используем HTTPS

Понадобилось мне, наконец-то, поставить на домен реальные сертификаты. Теперь можно открывать сайт по https, и это прям прекрасно и вообще практика из хороших, на мой взгляд.

Первое что я заметил, это WordPress, а именно на нем работает сайт сейчас, отлично отвечает и на http и на https, но никаких предпочтений не имеет. Заходишь себе по http, ну и сиди так.

Первым делом конечно пришло поискать ресурсы на WordPress, а там предлагаются плагины различного рода, чтобы переключаться, перенаправлять и т.п.

Но это мне показалось как-то странно.

В общем, все просто. Дело решается добавлением пары строк в файл .htaccess:

php_flag display_errors on
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

RewriteCond %{ENV:HTTPS} !=on
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [R,L]

RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

А чтобы не чувствовать себя персонажем из примеров Хайпа, рекомендую ознакомиться с простенькой документацией по .htaccess.

Теперь если вы попробуете открыть скажем такой адрес https://pelevin.pro/2016/12/07/forcehttps/ веб-сервер все равно направит вас на секьюрный https://pelevin.pro/2016/12/07/forcehttps/.

Если Вы нашли ошибку, пожалуйcта выделите ее и нажмите Shift + E или нажмите здесь чтобы информировать меня. Спасибо.

Hype Driven Development

Hype Header

Перевод одноименной статьи Marek Kirejczyk из daftcode.pl.

Команды разработчиков программного обеспечения часто принимают решения о программной архитектуре или базовом технологическом стеке на основе спорных мнений из социальных медиа, да и в целом выбирая то, что считается «горяченьким», вместо того, чтобы провести скрупулезное исследование и серьезно рассмотреть возможный эффект от их применения на своих проектах. Я называю эту тенденцию Hype Driven Development (прим. разработка управляемая беззастенчивой рекламой или обманом, но обман… в общем я склонен считать что хайп это хайп, но в переводе иногда буду использовать другие слова), считаю ее вредной и выступаю за более профессиональный подход, который называю «Solid Software Enginering». Приглашаю узнать больше о том, как это работает, и выяснить, что можно сделать вместо этого [HDD].

Читать далее

Если Вы нашли ошибку, пожалуйcта выделите ее и нажмите Shift + E или нажмите здесь чтобы информировать меня. Спасибо.

Про git flow в разработке

В общем-то история будет о том, на что стоит обратить внимание, когда решился использовать git-репозиторий, как его удобно приготовить и зачем нужны все эти плюшки.

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

Читать далее

Если Вы нашли ошибку, пожалуйcта выделите ее и нажмите Shift + E или нажмите здесь чтобы информировать меня. Спасибо.

Про автоматизацию

— Смотрите, мы уже 100 лет рубим лес стальными топорами. Нам нужно усовершенствовать инструменты, чтобы мы могли заготавливать больше леса.

— Хорошо, вот супер-новая пила, работающая на холодном синтезе, заряда хватит на несколько сотен лет.

— Эта ваша пила совершенно не удобная и плохо работает.

— Почему неудобная, ведь с её помощью можно заготавливать больше леса и она не требует ни топлива, ни подзарядки?

— Нет нельзя, она тяжелее топора и лесорубы устают ей махать, а эта цепь очень плохо рубит дерево.

— Но это пила, ей не надо махать, просто уприте её вот так и направляйте.

— Не учите нас рубить лес, мы уже 100 лет рубим лес, просто сделайте нам на пиле лезвие как у топора.

Если Вы нашли ошибку, пожалуйcта выделите ее и нажмите Shift + E или нажмите здесь чтобы информировать меня. Спасибо.

Zeitnot — Цифровая крепость

В минувшее воскресенье прошли квест «Цифровая крепость» от товарищей Zeitnot. Квест должен показаться интересным людям неравнодушным к информационным технологиям и промышленному шпионажу.

Читать далее

Если Вы нашли ошибку, пожалуйcта выделите ее и нажмите Shift + E или нажмите здесь чтобы информировать меня. Спасибо.

Установка PHP на Mac OS X

С тех пор как я попробовал после Windows систем сесть на Linux, а потом и на Mac ничего кардинально не изменилось. Пока нужно сделать что-то не сложное — это делается в один клик, как только нужно сделать что-то очень простое, это просто невыполнимо.

Ну в общем, мне нужно настроить Mac OS для разработки на PHP. Надо заметить что Apache на моем Mac уже стоит, причем это по умолчанию. (У меня Yosemite, для справки).

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

Читать далее

Если Вы нашли ошибку, пожалуйcта выделите ее и нажмите Shift + E или нажмите здесь чтобы информировать меня. Спасибо.

Создание простейшей WCF-службы. Часть 3.

Примечание автора: эта статья была написана в районе 2008 года, и, скорее всего, она уже морально устарела. Однако, судя по отзывам, все еще кому-то полезна. Статья разделена на несколько частей.

Часть 1, Часть 2, Часть 3

Создание клиентского приложения WCF

Итак, настало время создать клиентское приложение и попробовать нашу службу в действии.

Добавим в наше решение новый проект — консольное приложение Windows и назовем его CalcClient.

Читать далее

Если Вы нашли ошибку, пожалуйcта выделите ее и нажмите Shift + E или нажмите здесь чтобы информировать меня. Спасибо.

Создание простейшей WCF-службы. Часть 2.

Примечание автора: эта статья была написана в районе 2008 года, и, скорее всего, она уже морально устарела. Однако, судя по отзывам, все еще кому-то полезна. Статья разделена на несколько частей.

Часть 1, Часть 2, Часть 3

Реализация сервиса

Итак, мы создали контракт нашей службы, теперь нужно этот контракт реализовать. Сразу переименуем файл Service1.cs в CalcService.cs (VS спросит, хотите ли вы переименовать тип, хранящийся в файле — нужно согласиться) и откроем его.

В xml-комментарии перед описанием класса сервиса видим то же самое предупреждение, что и в случае с интерфейсом. Удаляем его, а также все автоматически сгенерированное содержимое класса — оно нам не понадобится.

Теперь переводим курсор на имя наследуемого интерфейса, нажимаем Alt+Shift+F10 и в появившемся меню выбираем Implement interface ‘ICalcService’. Осталось лишь реализовать наш метод Calc:

Читать далее

Если Вы нашли ошибку, пожалуйcта выделите ее и нажмите Shift + E или нажмите здесь чтобы информировать меня. Спасибо.

Создание простейшей WCF-службы. Часть 1.

Примечание автора: эта статья была написана в районе 2008 года, и, скорее всего, она уже морально устарела. Однако, судя по отзывам, все еще кому-то полезна. Статья разделена на несколько частей.

Часть 1, Часть 2, Часть 3

Введение

Эта статья для тех, кого заинтересовала технология WCF, и те преимущества, которые она дает разработчику распределенных и сервис-ориентированных приложений.

Сегодня я расскажу о том, как создать простейшую WCF-службу. Для примера будем использовать классический вариант — калькулятор.

Создание службы

Для создания нашего приложения мы будем использовать Visual Studio 2008. Итак, вызовем диалоговое окно создания нового проекта и выбираем шаблон проекта под названием «WCF Service Library» и дадим ему имя «WcfCalcService».

Проект сейчас состоит из трех основных файлов. Посмотрим, за что каждый из них отвечает.

1. App.config — файл конфигурации приложения. В этом файле также находятся настройки службы;

2. IService1.cs — файл с интерфейсом (контрактом) службы;

3. Service1.cs — файл с классом, реализующим интерфейс (т.е. функционал службы).

Читать далее

Если Вы нашли ошибку, пожалуйcта выделите ее и нажмите Shift + E или нажмите здесь чтобы информировать меня. Спасибо.