Search
Write a publication
Pull to refresh
0
0
Эйтор @ilder

User

Send message

Концепция web-проекта или почему мы убиваем свои идеи?

Reading time7 min
Views56K
Ежедневно десятки людей загораются идеей создать нечто своё, реализовать свой web-проект. В большинстве случаев все эти начинания ни к чему не приводят. Как не удивительно, основной причиной провала проекта служит отсутствие или недоработаность концепции.
В этой статье рассмотрены анализ успешности «зелёных» web-проектов, причины их провалов и методика написания концепции проекта. Статья рекомендуема для прочтения всем людям, решившим создать свой web-проект впервые.
Читать дальше →

Сборник советов и фактов по оптимизации PHP-скриптов

Reading time9 min
Views45K
image Эту статью давно стоило переписать (слишком много «экономии на спичках»), но руки не доходят. Пускай весит и напоминает о том, как мы глупы в молодости.
Одним из основных критериев успешности любого интернет-ресурса является скорость его работы и с каждым годом пользователи становятся всё более и более требовательными по этому критерию. Оптимизация работы php-скиптов — это один из методов обеспечения скорости работы системы.
В этой статье я бы хотел представить на суд общественности свой сборник советов и фактов по оптимизации скриптов. Сборник собирался мною достаточно долго, основан на нескольких источниках и личных экспериментах.
Читать дальше →

Решение обратной задачи аналитической геометрии. Теория R-функций

Reading time3 min
Views9.6K
Навеяно недавним постом о построении различных картинок с помощью кривой Гильберта. Будет немного теории и немного картинок.

Немного теории


Компьютерный век породил теорию R-функций — функций с «логическим зарядом», возникшую на стыке дискретного и непрерывного анализов, использующую аппарат булевой алгебры, который органически присущ и ЭВМ. На основе теории R-функций была решена обратная задача аналитической геометрии, появилась возможность строить в виде элементарной функции уравнение границы сложного объекта, и притом такое уравнение, которое обладало бы необходимыми дифференциальными свойствами. В. Л. Рвачев с помощью конструктивного аппарата теории R-функций разработал единый подход к проблеме построения координатных последовательностей для основных вариационных и проекционных методов. К настоящему времени метод R-функций был применен для решения большого числа задач электродинамики, механики деформируемого твердого тела, теории пластин и оболочек, гидродинамики и магнитной гидродинамики, теплофизики и др.
Читать дальше →

Код StarchartJs раскрыт под лицензией MIT

Reading time1 min
Views1.1K
StarchartJs рисует с помощью canvas карту звёздного неба в стереографической проекции для заданного места и времени. К сожалению, свой проект, в котором я хотел использовать эту библиотеку, я так и не начал. Но в эту библиотеку я вложил много сил, поэтому решил больше не прятать её от чужих глаз, чтобы не пропадала зря. Надеюсь, кто-нибудь найдёт ей применение. :) Я раскрыл код специально к Новому году :)

Демо: www.skyandme.com
Исходный код: bitbucket.org/monoid/starchartjs/overview

Проект использует мою другую библиотеку StarJs: github.com/monoid/starjs.

Усовершенствование взаимодействия с маленькими контролами посредством touch-интерфейса

Reading time1 min
Views1.6K
Читая обычный сайт с телефона или планшетного компьютера с touch-интерфейсом я постоянно промахиваюсь мимо нужных ссылок и мелких контролов.

Touch несовершенен, а подушечка пальца имеет площадь. Что происходит под ней не видно. Результат действия непредсказуем до его завершения. Постоянно уменьшать или увеличивать страницу неудобно, а стилусы — это то, от чего мы ушли 5 лет назад.

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

image

В основе решения лежат некоторые реализации экранных клавиатур и quad-menu, которые присутствуют во многих редакторах трехмерной графики.

Всех с наступающим!

QtDockTile — кроссплатформенное использование доков!

Reading time12 min
Views2.4K
Рассматривая современные тенденции в развитии десктопов сложно не обратить внимание на то, что идея дока становится все более и более популярной. Существует как минимум три популярные реализации этого принципа: Маковский док, таскбар из windiws 7 и launcher'ы из unity. К этому списку в kde 4.8 добавится ещё и icon tasks.
Одним словом, назревает необходимость в создании универсальной библиотеки для работы со всем этим многообразием.
Встречаем qtdocktile
Читать дальше →

Психология социального шоппинга (инфографика)

Reading time1 min
Views958
Не так давно совместно с компанией InNetMedia в рамках Хабра был опубликован перевод инфографики на тему "7 способов увеличения лояльной аудитории".

Сегодня вашему вниманию предлагаем инфографику "Психология социального шоппинга". Данная инфографика разошлась за бугром тиражом почти в 400 копий и мы не смогли пройти мимо такого материала ;)
Читать дальше →

Прагматичный подход к производительности

Reading time7 min
Views2.3K
Является преждевременная оптимизация дорогой в ад? Или подход «потом исправим» превращает программистов из «специалистов» в презираемую всеми «школоту»?

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

Почему программисты работают по ночам

Reading time3 min
Views108K
Мозг шимпанзе в лондонском музее наукиСогласно поговорке, программисты — это устройства, преобразующие кофеин в код.

Если спросить первого попавшегося программиста, когда он наиболее продуктивен, — скорее всего, он назовёт ночь. Кто-то пораньше, кто-то попозже. Популярен вариант встать в 4 утра и сделать работу до начала дневной суматохи. А некоторые предпочитают ложиться в 4 утра.

Цель всего этого — избавиться от отвлекающих факторов. Но можно было бы просто закрыть дверь… Что же такого особенного в ночи?

Я думаю, что всё сводится к трём вещам: расписанию творца, сонному мозгу, и яркому экрану компьютера.

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

Скрытые Марковские модели в распознавании речи

Reading time3 min
Views24K
Самое быстрое и эффективное взаимодействие между людьми происходит посредством устной речи. С помощью речи могут быть переданы различные чувства и эмоции, а главное — полезная информация. Необходимость создания компьютерных интерфейсов звукового ввода-вывода не вызывает сомнений, поскольку их эффективность основана на практически неограниченных возможностях формулировки в самых различных областях человеческой деятельности.

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

Хранение паролей в Chrome

Reading time2 min
Views452K

Здравствуйте!

Не так давно у меня возникла идея о создании своей личной программы для бэкапа паролей Google Chrome. Да, в интернете очень много подобных программ, но результат паранойи (что пароли сливаются на чей то сервер «про запас»), да и желание узнать, чем дышит любимый браузер — перевесили чашу весов.

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

Используем $_COOKIE как $_SESSION

Reading time2 min
Views12K
Тема пришла из далекого детства, когда я только начинал программировать, разбирал особенности PHP. На тот момент меня удивляла такая несправедливость: c сессией можно было работать как с обычным ассоциативным массивом($_SESSION), а для кукисов необходимо было использовать функцию setcookie(). Потом я уже поднабрался опыта и понял зачем это сделано именно так.
Время идет и PHP не стоит на месте, в нем появилась такая прекрасная вещь как SPL, одна из возможностей которой — обращение к объекту как к массиву, т.е. реализация ArrayAccess интерфейса.
И вот сейчас я вспомнил о своей детской идее, о массиве $_COOKIE, и реализовал ее:

<?php
/*
достаточно этой строчки чтобы создать куку как на стороне сервера так и клиента
*/
$_COOKIE['lang'] = 'ru'; 


Реализацию можно посмотреть под катом
Читать дальше →

HTML.next или идеи для HTML6

Reading time6 min
Views5.1K
image
Несмотря на то, что спецификацию HTML5 планируется полностью утвердить и добиться максимально широкой функциональной совместимости лишь в 2014 году, уже сейчас начинают выкристаллизовываться идеи о том как должна выглядеть данная спецификация следующего поколения — HTML.next, как его в рабочем порядке называют в W3C-консорциуме.

Новые элементы семантики


<dеcompress>

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

Пример использования:
<decompress href="http://thisisanexample.com/mobile/familyreunion.zip">
<a href="familyreunion.zip/html/activities.html">Activities from our family reunion</a>
<img src="familyreunion.zip/img/familyreunion1.jpg">

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

DigestSDK — автоматизация работы с MSSQL на Delphi

Reading time3 min
Views5.8K

Вступление


Несколько лет назад мне пришлось реализовать работу с таблицами базы данных MSSQL сервера. После написания некоторого количества, фактически однотипного кода, пришла мысль автоматизировать эти «рутинные» действия.
Согласитесь, что написание одного и того же кода, отличающегося только структурой таблиц БД, не может никого вдохновить. К тому же, если кол-во таблиц, с которыми приходиться работать переваливает за десяток, то занятие из разряда скучное — переходит в разряд трудоемкое.
Поиск в интернете на тот момент не дал результатов, поэтому реализацию пришлось взять на себя. .
В результате был создан набор модулей (в дальнейшем DigestSDK) на языке Delphi, позволяющих избавить программиста от написания «стандартного» кода по работе с БД и сосредоточиться на логике самого приложения. .
Демонстрационные примеры, исходные коды и видео по работе с DigestSDK выложил на SourceForge (авось еще кому да и пригодится, заодно и хабр эффект проверим в очередной раз:-))..

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

Работа с моделями и делегатами на примере создания списка аля FireFox

Reading time8 min
Views27K
Не раз проскакивали сравнения сложности построения интерфейсов на Qt. В данной статье приведу пример, как можно сделать список в стиле списка модулей FireFox.



Для этого воспользуемся MVC подходом, который реализован в Qt. На выходе получим что-то вроде этого:


Весь процесс разделим на 3 части:
  1. создание модели
  2. создание делегата
  3. создание представления


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

Работа с памятью (и всё же она есть)

Reading time13 min
Views108K
Существует распространенное мнение, что «рядовому» PHP разработчику практически не нужно заботиться об управлении памятью, однако «заботиться» и «знать» всё же немного разные понятия. Попытаюсь осветить некоторые аспекты управлению памятью при работе с переменными и массивами, а также интересные «подводные камни» внутренней оптимизации PHP. Как вы сможете убедиться, оптимизация это хорошо, но если не знать как именно она «оптимизирует», то можно столкнуться с «неочевидными граблями», которые могут вас заставить изрядно понервничать.

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

Работа с бинарными файлами в стиле STL

Reading time6 min
Views32K
Я хотел бы рассказать о решении одной задачи, возникшей в процессе обучения старших школьников и младшекурсников программированию. Естественно, пишу я об этом, потому что считаю, что этот опыт может быть интересен более широкой аудитории.
Читать дальше →

Как в python снаружи проверить значения, переданные в функцию

Reading time2 min
Views6K
Небольшое HowTo для начинающих python-программистов о том как извне проверить некоторые переданные в функцию значения. На самом деле мне это понадобилось в Django, но ничего специфичного для фреймворка в этом нет и…

UPD Лирическое отступление: Изначально тут я написал много глупостей в силу своего кривого понимания работы декораторов. Теперь решение гораздо более правильное и прямое. Более того я даже внятно могу его объяснить, за что огромная благодарность комментаторам.
Читать дальше →

Мои первые шаги в SWT: Простенький блокнот со вкладками

Reading time5 min
Views23K
На Хабрахабре очень мало статей о SWT, поэтому я постараюсь исправить данное маленькое упущение.

Из данной статьи Вы узнаете:
  • Какова мотивация использовать SWT в отличии от основного конкурента — Swing
  • Основные трудности с которыми я столкнулся при разработке простенького блокнота на связке Java + SWT и Немного кода
  • Каким образом упаковать и распространить свое приложение для нескольких платформ

Если Вас заинтересовало — прошу под кат.
Читать дальше →

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity