Обновить
8
0
crazyprog @crazyprog

Пользователь

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

Как сделать подключенный к Стриму домашний комп веб-сервером

Время на прочтение4 мин
Количество просмотров3K
Pre-Scriptum: насколько я знаю, некоторые из моих статей постились кем-то в Хабр, я же здесь всего второй день. Поэтому извиняюсь, если этот пост покажется вам «бояном». Чтобы меня не обвиняли в плагиате, приведу ссылку на оригинал моей статьи. Вообще же я собираюсь писать в своем хабра-блоге в основном на тему носимых компьютеров. Над одним из подобных устройств я работаю второй год. Собственно, приведенные ниже действия были направлены на создание «внешних мозгов» моему НК (носимому компу), чтобы тот мог передавать какие-то задачи на домашний комп или брать с него данные.

Итак, начнем…
Читать дальше →

Горячая линия: разработка сайта на заказ

Время на прочтение2 мин
Количество просмотров2.9K
Уважаемый bobos создал правильный блог «Юридическая консультация». Пока вопросы задаются в виде комментариев к первому посту-объявлению или отдельными постами.

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

Поэтому предлагаю организовать и провести тематическую горячую линию.
Читать дальше →

маленькие особенности Zend Framework-a

Время на прочтение1 мин
Количество просмотров470
Думаю будет полезно тем, кто начинает разбираться с ZF

Вопрос-Ответ:

1. Хочу писать нормальные имена action-ов, например MySuperCuperAction, выдает ошибку.
Для этого в url-e пишет /mycontroller/my-super-cuper/ или через току, разделитель можно менять Zend_Controller_Dispatcher_Abstract->setWordDelimiter

2. В моделях приходиться каждый раз получать адаптер к базе
делаем Zend_Db_Table_Abstract::setDefaultAdapter($db) при инициализации и забываем в модельках про это.

3. Как рендерить в Named Segments response объекта (Часто применяется в лайаутах, например $this->layout()->sidebar)
Способов много
— в action-ах пишем render('MyActionName', 'MyNamedSegment'), тем самым результат рендеринга акшена MyActionName, запишется в MyNamedSegment, т.е. в лайаутах можно будет выводить $this->layout()->MyNamedSegment
— добавляем в объект Response $response->append('MyNamedSegment', 'myContent')

Назад в будущее, или изучение Java

Время на прочтение2 мин
Количество просмотров1.5K
Привет! Это мой первый пост на Хабре. И решил я написать про то, как пришлось мне восстанавливать знания программирования и изучать новый для себя язык. К слову, я отучился в техническом вузе, и раньше очень неплохо программил, но уже года 4 ни строчки сам не написал. Юзал С, С++, были какие то еще глупости. Сейчас я управляю большим интернет-стартапом, где приходится иметь дело с большим количеством программистов, которые взрывают голову и усложняют жизнь нам, честным бизнесменам%). Проморочившись с ними я понял, что спорить с ними можно только очень хорошо понимая о чем они мне пытаются рассказать. В результате я принял решение поближе узнать Java, Jboss и всю подноготную. Задачей является полное проектирование софта для сети терминалов моментальной оплаты и БД. Оценка трудозатрат на реализацию всего проекта. Заодно узнаю больше про технологию для расширения кругозора.
Собственно буду писать что удалось сделать за какой период, откуда взял инфу и с какими проблемами столкнулся. Принципиально не стал покупать книги, потому что знаю, что язык молодой, развивающийся, а JBoss еще моложе, пока у нас выйдет книжка, там успеют 2 новых версии выпустить.
Начало: 5 декабря 2007 года.
Скачан NetBeans. Установлен. Все работает%)) дальше Хеллоу ворлда мануала нет%)) Пришлось искать туториалы. На сайте IBM шикарные туториалы. Надо только зарегиться и вперед.
https://www6.software.ibm.com/developerworks/education/j-intjava/index.html
http://www.ibm.com/developerworks/edu/j-dw-java-intermed-i.html
Заканчиваю первый туториал. Все концепты ООП. Все что нужно- желание и английский. Тут Вы узнаете как работать с Eclipsе IDE и вообще начало. Основные фишки, синтаксис Java, возможности. Некоторые методы стандартной библиотеки. Вы узнаете как работать с объектами, как перезагружать методы и тд. В общем язык предстанет во всей красе. Единственное в туториале допущены кое-где ошибки и в тупую не работает один из примеров, но человек знающий все поймет%).
Буду писать и дальше об этом, оставайтесь на связи.

Сервер дома — AMD, Debian x64, Bind9, Apache 2, PHP5, MySQL5, Trac, Subversion и море удовольствия

Время на прочтение7 мин
Количество просмотров9K
Шило в известном месте всё никак не даёт мне покоя.
И решил я поэкспериментировать с установкой сервера дома.

Итак, дано:

1. Домашний интернет с внешним ip на роутере, канал туда/обратно — 8 мбит, провайдер — QWERTY *
2. Бюджет не больше 10 тысяч рублей — чем меньше, тем лучше. **
3. Жгучее желание экспериментов и чего-нибудь эдакого ***

* К сожалению, мой дом не подключает Корбина, у которой более широкие каналы. Приходится довольствоваться тем, что есть
** Получилось путём более-менее реального подсчёта стоимости комплектующих на среднестатический компьютер
*** Для тех, кто хмыкнет и скажет — «эка невидаль, я такое регулярно делаю» — я не так часто что-то настраиваю, больше пишу под уже настроенное, и для меня это чистой воды развлечение — что-то сделать своими руками=)

Ну, все процедуры тут, под катом.

Сразу хочу сказать, что у меня это работает — так, как есть. Дополнительно с бубном я не плясал — но тут вытяжки из моих гуглений и мануалокурений.

Вероятно, что-то можно настроить более гибко или качественно, и я крайне буду рад советам или решениям=)


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

Оператор @ в PHP

Время на прочтение1 мин
Количество просмотров1.4K
Довелось доделывать проект, предыдущие авторы которого налепили @ практически перед всеми функциями. В результате все работало по принципу «сработает функция — хорошо, не сработает — ну и черт с ней, все равно ошибки никто не увидит». Вопрос — а какая реальная польза от оператора @?

ИТ аутсорсинг для сегмента малых и средних предприятий — зачем он нужен?

Время на прочтение4 мин
Количество просмотров2.5K
ИТ аутсорсинг для сегмента малых и средних предприятий — зачем он нужен?
Введение

Уважаемые читатели, для начала разберём само понятие «аутсорсинг»:
Aутсо́рсинг (от англ. outsourcing: внешний источник) — передача организацией определённых бизнес-процессов или производственных функций на обслуживание другой компании, специализирующейся в соответствующей области.
Определение очень большое и ёмкое, но хочется отметить, что мы часто пользуемся благами аутсорсинга, сами о том не ведая.
Приведём наиболее яркий пример «ИТ-аутсорсинга» — это хостинг сайта компании. Теперь, когда вы поняли, что аутсорсинг уже прочно вошел в нашу повседневную жизнь, давайте более подробно рассмотрим какие цели мы преследуем, обращаясь к услугам «аусорсеров».
Читать дальше →

Проектная документация или Говорила мне мама…

Время на прочтение2 мин
Количество просмотров1.3K
После прочтения и обсуждения хабратопика о предпроектной документации в голове стали роиться разного рода мысли. В первую очередь, разумеется, связанные с моим хобби-проектом JuffEd.
Читать дальше →

Пошаговая установка TRAC на FreeBSD для начинающих

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

The Trac project


Я не буду описывать ее возможности и для чего эта система нужна, все есть на офф. сайте (http://trac.edgewall.org) или в википедии.
Рассмотрю только установку и настройку детально для новичков (статья посвящена другу Энверу из Рязани, может еще кому пригодиться), тому кто уже с этим сталкивался пользы эта статья не принесет.

Связка FreeBSD + SVN + Apache2 + Trac


Для новичков подробнее о связке и способе работы

Все исходники разрабатываемого ПО лежат в SVN (удобно видеть все изменения и всегда легко сделать откат, если надо).
Trac — система, предоставляющая возможность интерактивной работы прежде всего с svn репозиторием, а так же вики (не считая доп. модулей).
Читать дальше →

Привязываем иконку к каждому типу файлов на CSS

Время на прочтение2 мин
Количество просмотров1.6K
Предположим, что нам нужно сделать страничку, на которой будут выкладываться файлы разных типов (архивы, картинки, документы), и при этом мы хотим, чтобы каждый тип файла выделялся, но для того, чтобы его выделить пользователю, который добавляет файл, не придется утруждаться прописыванием стилей или классов. И не надо требовать от разработчиков модификации серверной части (чтобы та выводила ссылки с иконками).

Это все очень просто можно сделать при помощи CSS.
Читать дальше →

Размышления о шаблонизаторах

Время на прочтение1 мин
Количество просмотров670
На этой неделе много раз задумывался о дальнейшей модернизации самописного шаблонизатора. Непреодолимая тяга к прекрасному не оставляет в покое. К тому же неожиданной опыт работы с XSLT в качестве шаблонизатора дал дополнительную пищу для размышлений.
Очень кстати появились сразу два топика (приемы работы с шаблонизатором, Нативный шаблонизатор), в которых описываются методы работы с нативными php шаблонами, так сказать, самой трушным шаблонизатором.
Почему-то все сравнения сводятся к Smarty или подобным. Собственные разработки в расчет почему-то мало берутся. В этом плане понравился коммент:
я считаю что боязнь перед использованием собственных разработок в коллективе прежде всего из за плохой коммуникации. Улучшайте среду общения и будет лучше! что стоят 10000 строк вашей документации если у новичка есть конкретная проблема? а что если эта проблема ранее не обсуждалась? ждать нового релиза, рыться в кодах готового продукта (который часто выглядит черным ящиком)?
в целом я ЗА использование готовых решений, но иногда это не оправдано.
В частности не оправдан страх научить других людей пользоваться вашим решением, если решение работает, и нормальный код, то даже документация большинству не понадобится

Очень повеселила проблема того же хабраюзера с медленной работы ob_start(). Но тут до меня дошло почему с нативными шаблонами нужна буфферизация — в них же все данные вставляются через echo =). Получилось, что используя резкие как понос нативные шаблоны весь выигрыш в скорости просирается буфферизацей.

Читаем подзамочные записи Livejournal.com в Google Reader

Время на прочтение3 мин
Количество просмотров8.9K
До появления Google Reader я активно читал френд-ленту в Livejournal.com. А потом появился habr. А потом куча интересных standalone блогов.
Постепенно greader стал основным инструментом чтения новостей. А с открытием Yahoo Pipes качество моих лент значительно возросло.
Pipes позволили отфильтровать несколько лент только по интересующим меня топикам, позволили заполнить поле description в тех лентах, где авторы по каким-то причинам не стали их заполнять (новости с сайта IRN.ru, лента Компьютерры), и многое другое.

Но была в бочке меда и ложка дегтя. Ни Pipes, ни Google Reader не умеют делать digest authentication. Pipes умеют только basic, greader не умеет и того. А digest — единственный тип аутентификации, который поддерживает Livejournal.com.
Поэтому попытки залогиниться в ЖЖ и читать ленты с подзамочными записями были обречены на неудачу.
Приходилось периодически заходить в ленту и просматривать, не написал ли кто-нибудь из друзей что-нибудь «под замком».

Да, в интернете есть сервисы а-ля
http://freemyfeed.com,

решающие эту задачу, но доверите ли вы кому попало в интернете логин и пароль от своего ЖЖ? Да и как интегрировать с pipes этот сервис мне придумать не удалось. Но нет худа без добра: автор раскрыл исходники скриптов. Вооружившись терпением и мануалом по php, на основе исходных текстов freemyfeed я написал собственный скрипт — remove-authentication.php, который делает одну простую вещь: заменяет digest authentication на basic.
C ним становятся возможными конструкции:
http://user:pass@my.server/remove-authentication.php?feed=feed-url

И эта штука замечательно интегрируется с pipes.
Кому надо, забирайте. И читайте ЖЖ в Google Reader. )
UPD: код надо сохранить как remove-authentication.php и выложить на любой сервер, поддерживающий php :) В идеале — свой.
UPD2: перенес в блог RSS
Читать дальше →

Мир лицензий: разбираемся с лицензиями BSD

Время на прочтение5 мин
Количество просмотров46K
Недавно мной была написана статья Мир лицензий: разбираемся с GNU GPL, в которой я попытался обобщить основную информацию про лицензии GPL, кратко рассказать об истории лицензии, ее версиях и совместимости других лицензий с GPL. В комментариях к статье возникло несколько вопросов и, для ответов на некоторые из них, мной был сделан частичный перевод официального GPL FAQ.

Как это часто бывает, первая статья стала поводом к продолжительным спорам, суть которых сводилась к одному вопросу: «что лучше (для людей, программ, мира, будущего) GPL или BSD лицензии?». На мой взгляд, этот спор сродни вопросу «с какого конца разбивать яйцо?» и не имеет одного определенного ответа. Использование определенной лицензии — это дело каждого и разнообразие их — лишь положительный фактор, который дает разработчикам (и авторам) больше свободы и возможностей для распространения своих трудов.

В этой статье я постараюсь рассмотреть вторую сторону споров — лицензии BSD, их различия, историю и производные. Кроме того, я попытаюсь сравнить GPL и BSD и рассказать, почему оригинальная BSD-лицензия несовместима с GPL.

UPD: обновлены разделы «Original BSD license» и «ISC license (OpenBSD license)»

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

Мир лицензий: Часто задаваемые вопросы про лицензии GNU GPL

Время на прочтение5 мин
Количество просмотров17K
Недавно я написал статью под названием Мир лицензий: разбираемся с GNU GPL, в которой постарался осветить мир gpl-лицензий, историю и различия в версиях. Статья вызвала большой резонанс, возникло много вопросов, споров. Чтобы немного прояснить ситуацию с GPL, я решил перевести часть официального GPL FAQ. В нем затрагиваются многие вопросы и разъясняются некоторые позиции лицензии. Надеюсь, данный перевод несколько прояснит ситуацию с GPL.

В дальнейшем я продолжу цикл публикаций про лицензии описанием BSD, Apache, MIT и других свободных и не очень лицензий. Кроме того, постараюсь затронуть вопрос лицензий в нашей стране. А пока, предлагаю почитать данный перевод.
Читать дальше →

SMS Уведомления + Логирование событий в Google Calendar на PHP

Время на прочтение2 мин
Количество просмотров2.7K
Навеяло: Чудеса автоматизации или как отправляют SMS настоящие гики.
Если люди делают такие изощрения — значит сильно надо.

За пару часов был разработан класс для добавления в Google Calendar событий. А уже календарь гугла станет нам слать СМСки.
Читать дальше →

Уместно ли давать ссылку на сайт конкурента

Время на прочтение1 мин
Количество просмотров2.5K
Уважаемое Хабросообщество, мне нужна помощь в одном вопросе. Каждое мнение для меня очень важно.

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

У нас есть интернет-проект, который решает задачу А. Безусловно, на рынке есть конкуренты, решающие аналогичную цель, но другими средствами. Мы много работали и отдали много усилий, логичо что за наше решение мы планируем брать деньги. У конкурента есть свои сильные стороны, причем их много и он предлагает что-то чего нет у нас (по крайней мере пока нас нет, и это еще даже не обсуждалось). Уместно ли на странице конечного продукта делать ссылку на сайт конкурента предлагая данную фичу (пару запросов на ее реализацию легло в наш почтовый ящик).

А теперь вопрос: уместно ли ставить ссылку/баннер на сайт конкурента. Конкурент, очень крутой. Ничего о вас (нас) не знает. Ставить обратных ссылок не будет. Цель ссылки — дополнительная монетизация за счет партнерской программы, проводимой конкурентом.

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

Интересно узнать ваше мнение. Логичное это действие или нет для вас. Результаты голосования не решает спор, просто хочется разобраться в этом вопросе.

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

Определяем нагрузку на сервер Apache

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

Как получить данные о работе web сервера Apache и представить их в удобном для анализа виде.?

Начнём с получения данных.

Для того этого, необходимо подключить модуль mod_status. Он отслеживает работу сервера и показывает данные в виде обычной html страницы. С его помощью можно узнать:

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

Создаем архив на «лету» с помощью класса «Create ZIP File»

Время на прочтение1 мин
Количество просмотров1.7K
image
Class Create ZIP File
Очень интересный класс который формирует полноценную работу с ZIP архивами
Читать дальше →

Рунет (2002–2009). R.I.P

Время на прочтение2 мин
Количество просмотров718
В 90-х Роберт Метклаф — создатель технологии Ethernet — придумал формулу, согласно которой эффективность любой сети прямо пропорциональна квадрату численности ее пользователей. Многие исследователи склоняются к тому, что именно эта формула стала едва ли не главной причиной возникновения пузыря новой интернет-экономики.

Теория доткомов гласит: единственный способ выживания для интернет-компании — максимально быстрое увеличение количества пользователей, даже если это влечет за собой огромные финансовые потери. В самый разгар бума доткомов стало возможным размещение IPO компаниями, у которых и дохода-то никакого не было. «Стань большим или умри» — такова была философия того времени.

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

Ужас как хотелось бы иметь…

Время на прочтение1 мин
Количество просмотров479
Ужас как хотелось бы иметь сервис или инструмент, который позволял бы делать кросспостинги в различные сервисы типа Livejournal.com, liveinternet.ru, blogger.com и т.п.

Задать вопрос, сообщить о новости или просто сделать какую-то пометку для себя, друзей, знакомых или незнакомых людей. Одни мои знакомые читают ЖЖ, другие — блоггер, третьи — ещё какие-то подобного типа ресурсы. Я не хочу заниматься копи-пастом, чтобы опубликоваться везде, где мне требуется. Хочется сделать это одним махом!

PS: Речь не идёт о каком-то спаме — всего лишь об обычном кросспосте в собственные блоги.

Информация

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