+3.41
8 читателей, 60 топиков

Создание сайтов для мобильных устройств — руководство по быстрому старту

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


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

С++Builder: Класс ucGetResource v0.1

По ходу разработки я столкнулся с проблемой, мне нужно было использовать несколько картинок, плюс, чтобы они были в ресурсах, дабы не плодить файлы. Как известно, нативные картинки — это BITMAP, но весят они как кирпичи, и прилепляя к exe-шнику очередной BMP — мы получаем прибавку к размеру зачастую больше, чем вдвое! По потребностям я решил использовать JPEG-файлы, доставать их из ресурсов и преобразовывать в BITMAP (такой ход был необходимым аспектом решения моей задачи). После всех пыток и войной с TResourceStream (который, зараза, так и не заработал) я пришёл к решению, но решение это было довольно ёмким по количеству строк, чтобы без напрягов его копипастить. После я решил сделать класс, который буду расширять в будущем (например для работы с PNG, GIF). Используя класс — можно лишь парой строк получить чистый BITMAP из JPEG-а в ресурсах.

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

Опыт использования js-ctypes в Firefox 4 в Windows

Компания, в которой я работаю, занимается разработкой вспомогательных программ для интернет-пользователей. Для вызова этих программ из файрфокса у нас есть специальное расширение. Работает оно очень просто — ищет окно в системе и передает ему данные через WM_COPYDATA. Но для такого взаимодействия с Windows-программами в свое пришлось написать XPCOM компонент на C. В четвертом файрфоксе старые бинарные компоненты перестали работать и одновременно появился механизм для прямой работы с win-библиотеками из яваскрипта — js-ctypes. Пока я переписывал код с C на JS, умудрился нарваться на все подводные камни, которыми теперь и хочу поделиться.
Упрощенная версия кода выглядит так:

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

PHP: Выявляем узкие места в производительности сайта

Лирика

Каждый разработчик сайта рано или поздно сталкивается с проблемой оптимизации производительности своего проекта. Не важно по каким причинам (бурный рост, или же просто кривой код), и не важно на каком этапе (проектирование, продакшн) — нужно уметь выявлять узкие места и исправлять ситуацию. Что делать: добавлять кэш-сервера, разделять базу, оптимизировать запросы, править код и логику приложения? Решать Вам, но косвенно указать на узкое место поможет одно небольшое решение. Это обычный php-класс, который позволяет оценивать производительность любых фрагментов кода (по времени выполнения) и группировать полученные результаты. Решение с одной стороны простое до безобразия и его очень легко интегрировать в любой проект, с другой стороны может оказаться очень полезным инструментом при выявлении узких мест.


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

Избавление от минусов написания программ на WinAPI или «Верните дискеты!»

Избавление минусов написания программ на WinAPI


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

Помните ли вы времена, когда компьютеры были большими, а мониторы маленькими? Не надо вздыхать, ностальгируя по тем временам, сейчас все исправим. Ну… Все, конечно вернуть я не смогу, но постараюсь вернуть одну крайне полезную вещь из того времени — дискету со 100-ми играми на борту.

Интересно? Читайте дальше!
Читать дальше →

Программирование с основ: Pep/8

Вступление

Кому интересно как работает процессор? В наше время любой желающий может купить книжку для дураков, скачать Visual Studio и начать писать программы на VB. Через 21 день он научится бросать контролы на форму и писать простейшие обработчики событий. Программирование сведется к копированию подходящих примеров кода из Гугля, и останется черным ящиком, устройство которого будет абсолютно непонятно.

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


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

Краткий обзор DPI — Deep Packet Inspection

Побудило меня на написание этого топика недавнее принятие в США закона о сетевом нейтралитете. Тема DPI на хабре раскрыта была достаточно слабо, поэтому я бы хотел немного рассказать об устройствах, которые применяют ведущие сервис-провайдеры и
Читать дальше →

Заплатка Zend_Http_Client для поддержки кириллических доменов(ZF 1.x)

Здравствуй, уважаемый хабрачитатель. Хочу расказать о своей попытке подружить Zend Framework версии 1.8.2 с кириллическими доменами.

Работать с idn доменами Zend вроде бы умеет, однако при попытке открыть что-нибудь вроде xn--e1afmkfd.su (пример.su)
или xn--e1afmkfd.xn--p1ai (пример.рф) ругается

Fatal error:
Uncaught exception 'Zend_Uri_Exception' with message 'Invalid URI supplied' in /.../Zend/Uri/Http.php:156

Проблема замечена в версии 1.8.2, но сохраняется и до 1.11

Давайте совершим небольшой экскурс по просторам кода и посмотрим почему это происходит.
Читать дальше →

Основы программирования от любителя для любителей



Попробую описать свой опыт программирования в домашних условиях, на примере одной программы в стиле треш.
Если вы профессионал в программировании то вам не сюда. Остальным велкам. Будет любительский междусобойчик.


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