Andrey Lapin: все записи

2

Бережливое программирование

Andrey Lapin
3 марта 2010 года

Перевод статьи: http://www.poppendieck.com/lean.htm, автор: Mary
Poppendieck

Где-то в 1980
году, когда NBC писало, "Если японцы могут, почему не можем мы?", я была
системным менеджером на фабрике по производству видеокассет и наша
команда управленцев задавалась этим вопросом каждый день. Наше
соревнование с японцами было по продаже более лучших продуктов по
наименее низкой цене, и мы не могли понять как они это делают. Мы
знали, что нам нужны значительные изменения или придется закрывать
лавку, но мы не знали что менять.

Читать дальше »

Метки: ,

Оставить комментарий
0

Про интерфейсы и фабрики

Andrey Lapin
25 февраля 2010 года

Копипаст из блога http://lex-kravetski.livejournal.com

С месяц назад
дорогой товарищ [info]dargot
в личной беседе посетовал на странные методы объектного
программирования, практикуемые некоторыми программистами. Совершенно
неясно, — говорил он, — зачем эти люди плодят такое множество
интерфейсов, а потом постоянно кастуют их к реализациям и обратно.
Неясно, зачем к каждому объекту граждане создают свою собственную
фабрику, которая к тому же не является доопределением других, а наоборот
каждый раз новая, своя собственная — скопипасченная.

Я согласен с
товарищем Дарготом: действительно огромное множество программистов
совершенно не в курсе, зачем нужны объектные формы абстракций, поэтому
применяют их как попало, руководствуясь где-то подслушанными общими
фразами. Вообще, на мой взгляд, проблема в том, что традиционно обучение
программированию начинается в лучшем случае с процедурного языка — если
не с псевдо-языка, лишённого даже процедур и выливающегося в огромную
простыню кода в методе main. В результате такого обучения программисту в
последствии приходится буквально переучиваться с одного метода
программирования на другой, что зачастую тяжелее даже обучению с нуля.
Нет, я настоятельно рекомендую учить сразу объектной парадигме (или,
буде оно разовьётся, функциональной). Так, будто без объектов писать и
нельзя: первое впечатление ведь — самое сильное. Оно запоминается.

Читать дальше »

Метки:

Оставить комментарий
3

Facebook превратил PHP в C++

Andrey Lapin
4 февраля 2010 года
Схема работы HipHop for PHP
Схема работы HipHop for PHP

Разработчики Facebook обнародовали проект HipHop for PHP, который
превращает код на языке PHP в код на языке C++. Последний компилируется
в обычное приложение, которое выполняется гораздо быстрее, чем сценарий
на PHP. В развитии проекта могут принять участие все желающие —
Facebook раскрыл его исходные коды.

HipHop for PHP помог крупнейшей социальной сети в мире вдвое снизить
нагрузку на процессор на ее веб-серверах и ускорить показ 400 миллиардов
PHP-страниц в месяц. Тем самым значительно снизились требования к числу
серверов, а следовательно, и расходы компании.

Разработка HipHop for PHP заняла два года. В настоящее время проект
содержит 300 тысяч строк кода и прошел свыше пяти тысяч тестов. HipHop
for PHP работает с некоторыми ограничениями, запрещая некоторые слишком
сложные для перевода на C++ или медленные конструкции PHP.

PHP — один из самых популярных языков веб-разработки. В том числе авктивно используется в ЦВТ.

Метки:

Оставить комментарий
1

Делать просто — это очень сложно

Andrey Lapin
18 декабря 2009 года

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

Советы как избежать проблем при разработке сложного программного обеспечения.
Читать дальше »

Метки:

Оставить комментарий
0

балуемся as a service (SaaS)

Andrey Lapin
4 декабря 2009 года

В связи с недавними событиями привожу цитату из википедии про SaaS

балуемся as a service (SaaS) («Программное обеспечение как услуга»), или балуемся on Demand (SoD) («Программное обеспечение по требованию») — модель продажи программного обеспечения,
при которой поставщик разрабатывает веб-приложение и самостоятельно
управляет им, предоставляя заказчикам доступ к программному обеспечению
через Интернет.
Основное преимущество модели SaaS для потребителя состоит в отсутствии
затрат, связанных с установкой, обновлением и поддержкой
работоспособности оборудования и программного обеспечения, работающего
на нём.

В модели SaaS:

  • Приложение приспособлено для удаленного использования;
  • Одним приложением пользуется несколько клиентов (приложение коммунально);
  • Оплата взымается как ежемесячная абонентская плата или на основе объема транзакций;
  • Поддержка приложения входит в состав оплаты;
  • Модернизация приложения происходит плавно и прозрачно для клиентов.

В рамках модели SaaS заказчики платят не за владение программным
обеспечением как таковым, а за его аренду (то есть, его использование
через веб-интерфейс). Таким образом, в отличие от классической схемы
лицензирования ПО, заказчик несет сравнительно небольшие периодические
затраты, и ему не требуется инвестировать существенные средства для
приобретения ПО и аппаратной платформы для его развертывания и, затем,
обеспечивать работоспособность. Схема периодической оплаты
предполагает, что в случае, если необходимость в программном
обеспечении временно отсутствует — заказчик может приостановить его
использование и заморозить выплаты разработчику.

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

Метки:

Оставить комментарий