Как стать автором
Обновить
11
0
Пятинский Михаил @zenn

Веб-программирование

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

PHP: фрактал плохого дизайна

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

Предисловие


Я капризный. Я жалуюсь о многих вещах. Многое в мире технологий мне не нравится и это предсказуемо: программирование — шумная молодая дисциплина, и никто из нас не имеет ни малейшего представления, что он делает. Учитывая закон Старджона, у нас достаточно вещей для постижения на всю жизнь.

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

PHP — единственное исключение. Фактически каждая деталь PHP в какой-то мере поломана. Язык, структура, экосистема: всё плохо. И даже нельзя указать на одну убийственную вещь, настолько дефект систематичный. Каждый раз, когда я пытаюсь систематизировать недостатки PHP, я теряюсь в поиске в глубину обнаруживая всё больше и больше ужасных мелочей(отсюда фрактал).

PHP — препятствие, отрава моего ремесла. Я схожу с ума от того, насколько он сломан и насколько воспеваем каждым уполномоченным любителем нежелающим научиться чему-либо ещё. У него ничтожно мало оправдывающих положительных качеств и я бы хотел забыть, что он вообще существует.
Читать дальше →
Всего голосов 450: ↑392 и ↓58+334
Комментарии538

Шесть подработок для ИТ-специалиста, за которые платят в долларах

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


Не поймали за хвост удачу в виде главного бага известного сервиса, нет желания “толкаться” на oDesk или не хочется делать то же, что уже и так делаете в рабочее время?

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

Три пункта не про работу
Всего голосов 75: ↑40 и ↓35+5
Комментарии62

WebTorrent: торренты через браузер. Без плагинов, чистый JavaScript

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


Теперь для скачивания и просмотра фильмов с торрентов не нужен отдельный торрент-клиент. Также как и для раздачи файлов по протоколу BitTorrent тоже не нужен отдельный клиент. Достаточно обычного браузера, поддерживаются Chrome, Firefox и Opera (десктоп и Android).

Всё это благодаря WebTorrent — гибриду BitTorrent и WebRTC. Скачивание и раздача происходят прямо через сайт. Встроенный плеер начинает показ фильма, как только скачано несколько процентов.
Читать дальше →
Всего голосов 22: ↑20 и ↓2+18
Комментарии26

МТС: яйцом к клиенту, или как бороться с заменой sim

Время на прочтение10 мин
Количество просмотров62K
На хабра-сайтах не раз (см. тут и здесь) выходили статьи о том, как защитить себя от замены sim-карты. Но, не смотря на то, что все эти советы — дельные, в них есть одно слабое и при этом — очень значимое место, которое с юридической точки зрения называется добросовестность одной из сторон, т.е. провайдера.

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

Цель статьи простая — дать людям, не имеющим специальных юридических знаний, краткий список норм, спасающих от произвола операторов сотовой связи, в частности, МТС, потому как заменить sim могут не только без вашего ведома, но даже без поддельного паспорта и просто — по сговору с сотрудником, т.е. технически тут помочь нечем.

При подготовке искового изучил несколько десятков форумов, на которых повторялись типовые вопросы по нормативной базе. Попробовал изложить их в систематизированном виде.
Читать дальше →
Всего голосов 40: ↑39 и ↓1+38
Комментарии134

Производительность C++ vs. Java vs. PHP vs. Python. Тест «в лоб»

Время на прочтение5 мин
Количество просмотров133K
/update/ Статья обновлена по результатам обсуждения. Поправлен код Python (около 40% ускорения), написан код на Perl и Ruby (но меня терзают смутные сомнения, что с ruby я что-то сделал неправитьно), поправлен код на Java (на моей машине корректнее тестировать int, а не long. к тому же int в Java эквивалентен long в C++).

Вопрос производительности (скорости работы) различных языков часто всплывает в комментариях, на форумах, часто необоснованные :). Встречаются статьи, в которых авторы приводят примеры, где выигрывает реализация на том или ином языке.

После прочтения очередной статьи мне захотелось самому разобраться «здесь и сейчас». Сначала захотелось сравнить Java и C++ (не верил я, что в вычислительных тестах ява может догнать и обогнать cpp). 10 минут и простой код на C++ и яве готов: простой цикл и математические операции. После написания теста подумал и перевёл их на php и python. Позже добавился код на perl и ruby.

Читать дальше →
Всего голосов 111: ↑67 и ↓44+23
Комментарии216

PHP-Дайджест № 73 – интересные новости, материалы и инструменты (18 октября – 5 ноября 2015)

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


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

Приятного чтения!
Читать дальше →
Всего голосов 41: ↑38 и ↓3+35
Комментарии13

Kali Linux 2.0

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


Прошло уже более двух лет с момента выхода дистрибутива Kali 1.0. Сегодня вышла 2.0 версия этого дистрибутива.

Краткий экскурс: Kali linux представляет из себя дистрибутив, содержащий множество утилит для проведения тестирования на проникновение — от анализа уязвимостей веб-приложений, до взлома сетей и сервисов и закрепления в системе. Ранее этот дистрибутив был известен под названием Backtrack.
Читать дальше →
Всего голосов 54: ↑49 и ↓5+44
Комментарии23

Чат-помощник на сайт с помощью Telegram за 15 минут

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


Про чаты-помощники


Многие люди продают через интернет товары и услуги. Еще больше людей — покупает что-то через интернет.
Во время выбора покупок, часто возникают вопросы, которые можно решить позвонив и пообщавшись с менеджером.
Скорее всего я — не единственный человек на хабре, который общению с менеджерами по телефону предпочитает переписку.
И тут на помощь приходят всплывающие чаты-помощники, которые вроде-как повышают конверсию, но многих нервируют.
(Для тех, кто не в курсе: в углу сайта всплывает окошко, в котором можно он-лайн переписываться с консультантом).

Есть с десяток подобных сервисов и все они работают по принципу "пробная версия бесплатно, а дальше за деньги".
На хабре есть несколько статей, вот одна из них (http://habrahabr.ru/company/tuthost/blog/165365/), но, я уверен, аудитория Хабрахабра знает о чем речь.
Большинству людей подойдет бесплатный вариант любого такого сервиса: нужно всего-навсего зарегистрироваться и вставить на сайт кусок JS кода. Для тех у кого много менеджеров — придется платить: например Редхелпер на 10 операторов обойдется Вам:
115200 руб. за 1 год



Скорее всего — цена адекватная для тех, кто платит зарплату десяти менеджерам.

Но я решил изобрести бесплатный «велосипед» из подручных материалов.
Запуск у себя на сервере займет 15 минут. Всем, кому идея интересна — прошу под кат.
Читать дальше →
Всего голосов 41: ↑37 и ↓4+33
Комментарии43

Немецкие физики подтвердили работоспособность «невозможного» двигателя на электромагнитной тяге

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

Немецкие учёные подтвердили, что «невозможный» двигатель на базе электромагнитных волн действительно может создавать ненулевую тягу. Результаты своего исследования они презентовали 27 июля на конференции, посвящённой двигателям и энергетике, которую проводил Американский институт аэронавтики и астронавтики. Представлял работу профессор Мартин Таджмар из Дрезденского технологического университета.

Британский подданный и инженер Роджер Шойер основал компанию Satellite Propulsion Research Ltd в 2001 году специально для разработки электромагнитного двигателя (EmDrive) собственной конструкции. Инженер ранее работал в военной промышленности, принимал участие в космических проектах, включая разработку европейской системы глобальной навигации «Галилео».

image

Придуманный им двигатель на первый взгляд нарушает закон сохранения импульса — он создаёт тягу из-за отражения электромагнитного излучения от стенок отражательной камеры без какого бы то ни было реактивного выброса. Из-за сомнительной природы двигателя его долго не принимали всерьёз, однако, за проверку работоспособности в конце концов принялось НАСА — агентство с достаточно хорошей репутацией.
Читать дальше →
Всего голосов 102: ↑91 и ↓11+80
Комментарии357

36 млн запросов в час, 10000+ постоянно работающих клиентов, на одном сервере, nginx+mysql

Время на прочтение5 мин
Количество просмотров115K
Сложилась ситуация, что участвую в проекте, который работает с достаточно большой нагрузкой. Как уже написал — 36 млн запросов в час. Я много чего прочитал и перепробовал за последний месяц, настраивая сервер; хотелось бы просто сжато и компактно выдать тезисно то, что работает хорошо в такой конфигурации.

Первое, что я заметил — множество советов как все настроить под большую нагрузку. Читайте их внимательно, обычно в тексте найдете, что речь про «высокую нагрузку» в 15-20 тысяч клиентов в сутки. У нас клиентов примерно миллион, активных, ежедневных.

У нас нет денег и мы все делаем за свой счет, поэтому экономим. Итог — весь миллион клиентов обслуживается на одном сервере, вот на таком — EX-60 на hetzner.
Читать дальше →
Всего голосов 111: ↑96 и ↓15+81
Комментарии102

Чем плох свой Open Source проект

Время на прочтение3 мин
Количество просмотров73K
Все мы знаем как хорошо и похвально принимать участие в разработке открытых проектов.
К тому же потом можно мерятся количеством коммитов в rails и зарплату попросить побольше.

А что если вы решили написать свой open source проект?

Читать дальше →
Всего голосов 301: ↑285 и ↓16+269
Комментарии140

Учёные обнаружили, что планктон производит 50% всего кислорода на планете

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

Амфипод из рода Фронима — один из обитателей океана

Биологи и океанологи опубликовали результаты самого масштабного и скрупулёзного исследования миниатюрной морской жизни за всю научную историю. Миссия длиною в 3,5 года проходила на судне Тара. За это время исследователи прошли 140 000 километров, и взяли 35 000 проб планктона в 210 различных местах Мирового океана. Одним из интересных результатов исследования была названа роль планктона в снабжении планеты кислородом. Статья опубликована в журнале Science.
Читать дальше →
Всего голосов 59: ↑36 и ↓23+13
Комментарии32

Раскрыта тайна притягательности картофельных чипсов, шоколада и арахисового масла

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

Моника Пишетсридер (Monika Pischetsrieder) с коллегами из Эрлангенского университета в Германии обнаружили, что крысы, имея возможность выбора, тяготеют к пище с определённым сочетанием жиров и углеводов. Волшебная формула – 50 к 35, то есть еда, в которой содержится 35% жиров и 50% углеводов. А это практически полностью совпадает с картофельными чипсами, шоколадом и арахисовым маслом. Это исследование было опубликовано 17 марта в журнале Nature.

В процессе эволюции организм научился накапливать как можно больше калорий «на чёрный день». Мозг, получая калории, вырабатывает дофамин, поощряя поглощение питательной еды. На этой почве и на фоне доступности еды у некоторых людей и образуется склонность к перееданию, ведущая к ожирению. Учёные называют это явление "гедонической гиперфагией" – склонность к поглощению пищи, не связанную с необходимостью восполнения энергетических запасов.

image

Бытует точка зрения, что мозг просто предпочитает высококалорийную еду. Исследователи проверяли правоту этого утверждения — будут ли подопытные крысы выбирать себе еду по содержанию калорий, или отдадут предпочтения какой-либо из комбинаций питательных веществ.
Читать дальше →
Всего голосов 44: ↑42 и ↓2+40
Комментарии60

Бесплатные SSL-сертификаты — теперь на 3 года от WoSign

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


Вчера обнаружил, что WoSign дает бесплатно сертификат, теперь уже на 3 года.
Читать дальше →
Всего голосов 60: ↑54 и ↓6+48
Комментарии80

10 полезных фреймворков, о которых нужно знать разработчику

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

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

1) UIkit


getuikit.com

99% проблем юзабилити возникают из-за медленного ответа веб-интерфейсов. Очень важно создавать быстрые интерфейсы. UIKit полезен именно для этого. Он лёгкий, модульный, и идеальный для разработки фронтенда. Предоставляет богатый набор HTML, JavaScript и CSS компонентов.
Читать дальше →
Всего голосов 47: ↑25 и ↓22+3
Комментарии10

Яндекс выпустил антивирус для сайтов — Manul

Время на прочтение4 мин
Количество просмотров116K
Поиск Яндекса ежесуточно показывает людям больше восьми миллионов предупреждений о том, что страница, на которую они хотят перейти, заражена. Часто владелец сайта вспоминает о том, что его сайт может быть взломан и на нём может быть размещен вредоносный код, только тогда, когда худшее уже случилось, трафик упал, и пользователи успели заразиться.

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



Однако всегда хочется лучшего. Одна из главных проблем, с которыми мы сталкиваемся при общении с владельцами зараженных сайтов, — это поиск источника заражения на стороне сервера. У Яндекса, который каждые сутки размечает тысячи сайтов как зараженные вирусом и опасные для устройств человека, есть регулярно обновляемая база вирусов. И у нашей команды появилась идея, выросшая в большой проект, – антивирус для сайтов. Так мы создали Manul, который решили выложить в open source. Это утилита, которая поможет вебмастеру понять, что произошло с сайтом и вылечить его. Под катом я расскажу подробнее о том, как он устроен и какие проблемы решает.
Читать дальше →
Всего голосов 117: ↑110 и ↓7+103
Комментарии161

Установка бесплатной GPL панели управления сайтами VestaCP

Время на прочтение2 мин
Количество просмотров30K
Если вы ищете бесплатную, простую и удобную панель управления сайтами с дружественным интерфейсом — VestaCP для вас. Многие коммерческие панели управления гораздо более функциональны, но при этом и более сложны. Vesta CP решает простые задачи просто и в этом ее преимущество.



Автор панели и бессменный разработчик — Сергей Родин.
В этой статье мы рассмотрим процесс установки VestaCP на облачный VPS с Ubuntu 14.04 LTS. В последующих статьях мы рассмотрим процесс использования панели.
Читать дальше →
Всего голосов 11: ↑5 и ↓6-1
Комментарии8

Статический анализ PHP кода на примере Symfony2 (часть 2)

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

Аннотация


Второй части этой статьи не планировалось, но тема нашла отклик, так что можно продолжить.

Итак, статический анализ кода в больших проектах необходим, и проекты на PHP — не исключение. По сути, проблемы и методология внедрения средств статического анализа будут те же, что и, скажем, в С++.

При повседневном использовании средств статического анализа можно добиться не только заметного уменьшения количества ошибок, но и улучшения качества кода в целом — показать это на практике и есть цель данной статьи.

О том, что можно найти и исправить с минимальным вложением времени (и максимальной отдачей) я расскажу под катом.
Читать дальше →
Всего голосов 13: ↑12 и ↓1+11
Комментарии20

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

Как мы написали helpdesk (часть 2)

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

В продолжении части 1, мы решили написать статью, как вышли на «новый уровень» по созданию веб-продукта. Хочу сразу уточнить, что это не совсем хелпдеск, который основан на создании заявок клиентами (хоть такая возможность и присутствует), а больше рассчитан на внутреннюю работу организации или IT-департамента. Так же хочу напомнить, что система создавалась конкретно под наши требования, поэтому она не лучше других, но и не хуже. Она просто «другая», у которой есть свои функции под конкретные задачи и возможно займёт достойное место в общем мире продуктов, делающих IT-мир лучше.
Читать дальше →
Всего голосов 25: ↑20 и ↓5+15
Комментарии22

Информация

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