понедельник, 17 ноября 2014 г.

php шное

Хоть формат блога - заработок в интернете, но кодингом я заработал не меньше, чем на всем остальном. У меня даже свой спамер написан на php (enginexsub), причем мне тогда лет 18-19 было. Так что пох, буду писать про код и дальше.

На чем лучше писать сайт? CodeInteger, Yii или другом фреймворке (далее Ф)? Мой ответ до этого был, однозначно на чистом пхп без фреймворка, но сейчас я понял- бесмысленно боротся с пропагандой вещающей, что "хороший продукт" должен быть написан не с нуля. Поэтому вот анонсирую свой фреймворк, название еще не придумал. Основные отличия по традиции: простота, много готовых модулей (галереи, блог, магазин, новости, доска обьявлений, переписка, поиск, социальная сеть, билинг, модули оплаты, crm, кэширование, интеграция с социалками - все это сам написал), высокая скорость работы. Я ориентируюсь на бизнес, с их KPI, GTD, немного на маректологов с их SEO, SMM, но при этом хотелки программистов с их ООП, MVC будут рассматриваться в последнюю очередь.

типичные проблемы популярных фреймворков (по материалам http://we-love-php.blogspot.ru/2012/10/php-framework-comparison.html статья хоть и старая, но сейчас это уже статус кво):

Typical problems in frameworks

  • необходимо писать много кода который просто ничего не делает, но "нужен" (example)
  • Слишком много абстракций (example)
  • Невероятно огромное количество строк кода (e.g. ZF1 260,000, ZF2 146,000 loc, Symfony2 173,000 loc, Doctrine2 70,000 loc), очень сложно оптимизировать, сложно поддерживать
  • Осень много различных функций (e.g. ZF1 13,000, ZF2 7,800, Symfony2 9,500, Doctrine2 4,400), сложно для обучения (у php я использую не более 500).
  • Огромное количество переопределений переменных (когда одни и те же данные просто перемещаются в памяти) (e.g. ZF2 4,080, Symfony2 3,800 (analysis from nikic))
  • Тяжелая документация (e.g. ZF2 1000 pages and 500 examples)
  • Очень много include (example)
  • плохое форматирование кода (e.g. ZF2 echo StaticFilter::execute($str, "HtmlEntities", array("quotestyle"=>ENT_QUOTES)); echo (new Zend\Filter\HtmlEntities(array("quotestyle" => ENT_QUOTES)))->filter($str);
  • навороченный код (например, чтоб сделать запрос к базе нужно писать несколько строк кода, хотя это делается одной функцией)
  • несовместимость различных версий одного Ф, если вы написали сайт знакомств на yii 1+, то уже сейчас вышла версия 2 
  • постоянное желание разработчиков "написать все с нуля" или выпустить "другой более легкий фреймворк"
Тесты показывают, что тот же YII в самом базовом варианте потребялет (за один заход посетителя) не менее 3 мб. оперативной памяти, когда например сайт знакомств на чистом пхп 0.5 мб. Это значит, что где обычному пхп понадобится один сервер, фреймворк затребует не менее 6ти. Конечно можно и нужно использовать кэширование и оптимизацию, но и для фремйворка и для чистого пхп это будет внешнее решение, например memcache и nginx

Существует так же большое заблуждение, что большой плюс Ф уже сразу идет с валидацией форм, проверкой входящих данных, автоматически подключает jquery. jQuery уже давно подключают верстальщики прямо в верстку одной строчкой (о боже, верстальщики делают то, для чего программистам нужен фреймворк! я сваливаю). Валидация форм так же подключается одной строкой, а проверка на заполненность форм по стандарту HTML 5 уже давно выполняется самим браузером (то есть вообще ничего кодить не надо). Остается проверка входящих данных и прочая безопастность и защита.

Почему же Ф так популярны? Основная причина, в том, что люди ищут "золотую пулю", одним выстрелом убить всех зайцев и ускорить разработку, мой личный опыт говорит ровно об обратном. Кодер тратит в 5-10 раз больше времени на исправление глюков, 90% из которого вслепую блуждая по файлам Ф и документации пытаясь понять "почему он работает не так".

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

Сейчас у меня уже сформировался дизайн собственного фреймворка, началось все с того, что два файла кочевали у меня из проекта в проект это
db.php - подключение к базе, позже туда добавились две основный функции работы с базой "q"  (выполнить запрос) и "r" (получить данные)
func.php - рабочие функции, а именно
-dod($unixtime) время между датами со склонениями числительных
-pager($sql) функция генерации "пагинатора" который анализируя sql запрос на его основе выдает постраничную навигацию
-me($txt) функция делает данные "безопастными", ну там кавычки и прочее.
-sendmail отправка html сообщения на почту
-getsitebyid($id) получить пользователя по id
-balance_change($user,$summ,$descr,) изменить баланс пользователя с сохранением лога транзакции (незаменима для проектов пропускающих бабки)
-cache($src,$w,$h) выдает уменьшенную картинку заданного размера, правильно закешированную
-getk,setv функции для работы с key-value хранилищем, проще говоря кэширование
-declination склонение числительных

Остальные функции дописываются и удаляются, но эти используются почти всегда.

Структура базы данных так же практически всегда одинаковая, есть одна основная таблица users с полями id,email,fio,pass,datareg,balance
Если работаем с баблом то еще обязательно transactions

Так как большинство моих проектов коммерческие, цикл их следующий:
1. прототип + одновременно работа дизайнера
2. завершение прототипа + верстка дизайна
3. натягивание верстки
4. плотное тестирование
5. запуск
6. отладка и оптимизация

Далее если проект по фрилансу ищется начинающий php'ник для поддержки и мелких улучшений. Спасибо, что мой фреймворк очень прост и не нужно читать 2000 страниц документации, чтоб что то исправить.

Стоимость фреймворка $10 000, шучу. Не спешно ищется сильный менеджер, для доведения продукта до коробочной версии, пиара и зарабатывания миллионов.

PS: Я  в 

воскресенье, 16 ноября 2014 г.

блоговое

Нахожусь в городе Гатчина, неистово кодю. Есть знакомые местные блоггеры? В Питере из интересного только Хабаровский, который перехал сюда на пмж из Москвы :) Но тот чето не отвечает, бизнес делает

Еще пытался связатся с безколесным, тоже глухо)) Зато спрутэ радуе умотал аж в южную америку (этож дальше чем США даже).

Мне кажется, что любой блоггер если не путешествует то просто становится не интересно. 

пятница, 10 октября 2014 г.

кинза. конференция для вебмастеров

посетил kinza.pro , когда на почту упал анонс почти сразу же купил билет в зал тк спикеры хоть и не мои авторитеты, но известные в тусовке. Конфа получилась очень насыщенной и с большим количеством спаленных тем (не очевидных для новичков, но лично я словил дзен несколько раз). Странные чувства испытывал, когда в раздатке находил буклеты бирж текста, реклама на картоне смотрелась круто и мне тоже захотелось выкупить какой нить спонсорский пакет для noxon-text.ru

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

Что касается организации, если я не ошибаюсь всю эту кашу заварил puzat.ru - симпатяга в фиолетовом пиджачке, хоть и инфобизнесмен, но нашенский, поэтому желаю дальнейших успехов.

Почти вся cpa тема полетела мимо ушей, хотя когда выступал cpa кинг было мощно :) "Саня ВЫРУБАЙ". Доклады про прямые продажи рекламы были не огонь, но тоже содержательные. Самый полезный для меня был кейс про покупку сайтов - все таки бабло здесь есть и его много, но нужны реально хорошие сайты.

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

----------

И чтоб два раза не вставать
Позавчера был довольно заметный слив битка до 280$ , после этого он стабильно растет вверх, причем наблюдаются крупные разовые покупки, несколько раз в день по 1000+ битков, а это между прочим по 20 млн рублей за раз:


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

Пока больше интересного ничего не происходит.

четверг, 18 сентября 2014 г.

зачем нужна команда разработки

зануда mode

Пилю тут очередной проект по фрилансу, протупил с оценкой (начали без ТЗ) теперь сжимаю зубы и жду когда конец. А конца не видно, потому что у клиента "свое видение".

Пример элемент дизайна в странице настроек:








Соответственно по нажатию редактировать открываются поля ввода этого же емейла и пароля и кнопка сохранить. Полностью код этого виджета вместе с версткой занимает 60 строк кода (не считая стилей).

60 строчек даже при моей скорости набора кода это минут пять.

Как бы сделал я?

if ($_POST['email']) {$sql = "update ** ";qr($sql);?><div class='alert-info'>Сохранено</div><?}
<form action="" method='post'>
<input type='text' name='email' value=''>
<input type='text' name='pswd' value=''>
<input type='submit' name='email' value='Сохранить'>
</form>

Всего 6ть строк кода. Функционал тот же. Что можно впихнуть в сэкономленные 54 строчки? Например проверку сложности пароля, смс уведомление о смене, генератор паролей, пару строчек предупреждений о безопастности. Вещи гораздо более нужные.

То же самое с целевыми страницами, лучше сделать 2 простые но принципиально разные, чем одну большую и "все учесть".

Очень хорошее правило (от А Лебедева) - если это можно выкинуть, значит это обязательно надо выкинуть.

Вывод? Хуивод!

вторник, 26 августа 2014 г.

новости биткоина

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

Косвенно о сдувании пузыря альткоинов можно судить на моем проекте http://bitstart.biz/ где отсекаются инструменты с низким обьемом торгов. Раньше их было около десяти, сейчас всего два. Правда провайдер данных у меня только cryptsy. Все альты, с которыми я работал несколько месяцев назад упали ниже плинтуса.

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

за последние месяцы в инфраструктуру вложили различные фонды и инвесторы несколько сотен миллионов долларов (в т.ч. и русские). Скорость хеширования продолжает расти в прогрессии.

Я смотрю на график биткоина и понимаю, что нет никакого тренда. Курс уже полгода держится в районе 500$. Что совершенно не так весело, как год назад (правда тогда он стоил 200). Сейчас я занят фрилансом, всегда стопудовый способ заработать денжат.

* Кстати он сейчас сдается, никто комнатку не хочет в нем http://thelocals.ru/rooms/7600-komnata-v-panoramnom-penthause-s-vidom-na-moskva-siti ?

воскресенье, 15 июня 2014 г.

альткоины апрель, май, июнь

Пауза в отчетах была вызвана тем, что на рынках слишком мало денег. Вроде как и показывают некоторые рост 30-60% но в целом фигня какая то, так как разница между ценой покупки и ценой продажи (ликвидной стоимости) достигает половины. Поэтому альткоины перестали быть интересны. Все таки единственная криптовалюта это биткоин, все остальное это песочница.

Скорость регистрации новых адресов растет, как и объемы сделок, переводов и т.д. меня это радует, поэтому снова начал откладывать кэш в биткоин.