Pull to refresh
89
0
Алексей Пеньков @koreec

Ученый-физик

Send message

Точное время: измеряем, применяем

Reading time12 min
Views40K
   Цель данной статьи – изложить, полученный в ходе работы над проблемой материал о способах максимально точного измерения времени и использования на практике этих способов, а также рассмотреть варианты управления чем-либо программным с максимально достижимой точностью.

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

   Наша задача – найти лучший метод точного измерения малых временных интервалов (желаемая точность – 10^-6 секунды), определить наиболее эффективный способ программирования задержек в исполнении кода, с такой же точностью.

   Программист, который уже пробовал разрабатывать различные прикладные приложения, например, связанные с передачей данных или с генерацией/анализом сигналов мог заметить, что все стандартные функции (sleep, beep, GetTickCount, таймеры) обладают большой погрешностью при работе с малыми значениями временного интервала.
Читать дальше →
Total votes 48: ↑33 and ↓15+18
Comments65

Квантификаторы в регулярных выражениях

Reading time8 min
Views76K
imageРегулярные выражения — это арифметика для алгоритмов. Они доступны во многих языках программирования, редакторах и настройках приложений. Как и сложение с умножением они просты в использовании.
Но для правильного и эффективного использования regexp-ов нужно понимание того, как они работают. Я постараюсь описать принцип работы регулярных выражений, покажу в каких случаях бывают проблемы и как их решать.

В продолжение общих советов.
Читать дальше →
Total votes 113: ↑109 and ↓4+105
Comments40

Какие бывают META теги и зачем они нужны

Reading time7 min
Views265K

META-теги


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

META-теги имеют два возможных атрибута


— <META HTTP-EQUIV="имя" CONTENT="содержимое">
— <META NAME="имя" CONTENT="содержимое">
META-теги должны находиться в заголовке HTML-документа между <HEAD> и </HEAD> (особенно это важно для документов, использующих фреймы).

Стандартом HTML 4.01 значения и имена мета-тегов НЕ оговариваются, поэтому мы будем рассматривать те значения, которые уже устоялись в интернете и используются чаще других.
подробнее о META тегах
Total votes 118: ↑89 and ↓29+60
Comments47

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

Reading time8 min
Views71K
Это не попытка создать список всех существующих инструментов для CSS разработки. Только некоторые, наиболее полезные были отобраны и размещены в соответствующих категориях.


Чтобы инструмент был по-настоящему полезен, у него должна быть хорошая документация и дружелюбный интерфейс. К сожалению, некоторые инструменты в списке не полностью попадают под данные критерии. Если кто-то знает лучшие альтернативы с более дружелюбным интерфейсом и большей функциональностью, пишите в комментариях.
Читать дальше →
Total votes 179: ↑170 and ↓9+161
Comments65

Скругление углов на чистом CSS с анти-алисингом

Reading time5 min
Views8.8K
Вношу свои 5 копеек в проблему скругления уголков. Хочу предложить метод, который не революционный, а просто несколько усовершенствует другой.

Многие знакомы с методом скругления уголков средствами CSS, который активно использует Гугл. Я лично познакомился с ним на сайте Шторкин.ру.

Метод сделан на чистом CSS, без картинок, без JS, полностью кроссбраузерный. Он спокойно тянется в ширину и высоту. Единственный его недостаток: отсутствие сглаженности (алиасинг). В принципе, все вполне поправимо.
Немного кода и все работает
Total votes 87: ↑72 and ↓15+57
Comments44

Создание сайта из готовых компонентов на примере сайта заказа еды в офис

Reading time14 min
Views8.6K
В окрестностях нашего офиса нет приличного общепита, поэтому обеды нам привозят на заказ из одного кафэ. Заказ осуществляется за день (на понедельник заказ делается с пятницы), по телефону, с перечислением всех блюд и их количества (в случае если заказ не изменился относительно вчерашнего достаточно просто сказать это). Как компания, занимающаяся разработкой ПО, преимущественно веб, мы до недавнего времени жили по принципу «Сапожник без сапог», и весь учет заказов велся ответсвенным за заказ еды человеком на листочке, в случае изменения заказа нужно было писать письмо этому ответственному человеку, а он уже пересчитывал общий заказ.

Выкроив немного свободного времени в перерыве между проектами реализовал (именно реализовал, а не написал — почему именно так, расскажу немного ниже) систему для заказа еды. За основу, как нетрудно догадаться исходя из тематики блога, была взята CMS Drupal, которая является моим основным инструментом уже около полутора лет.

Цели данного топика:
  • Показать новичкам на довольно простом примере, как создается сайт невысокой сложности на CMS Drupal
  • Кратко расказать про несколько основных модулей — как правило они применяются в 90% проектов на друпале
  • Показать как можно собрать сайт на друпале из готовых компонентов, не написав при этом ни одной строчки кода (на самом деле будет пара строк кода, но немного не в том виде, как он обычно пишется =))


Итак, что должно быть реализовано в проекте:
  • Меню — список блюд, разделенных на категории, с возможностью описания блюд
  • Индивидуальные заказы — пользователь может сделать и заказ, просмотреть его содержимое и изменить
  • Сводный заказ — список всех заказаных пользователями блюд с указанием их количества
  • Возможность делиться впечатлениями о блюдах — тут просто возможность комментирования и рейтингования

Поехали
Total votes 100: ↑94 and ↓6+88
Comments117

Простой калькулятор на " боярском" диалекте MSVС++

Reading time2 min
Views33K
Последующий код навеян этим крутым топиком с «боярскими» дефайнами кейвордов С++. Мы творчески дополнили набор, и получился следующий текст программы:
Читать дальше →
Total votes 188: ↑154 and ↓34+120
Comments71

Ограничение скорости скачивания файлов средствами PHP

Reading time3 min
Views17K
Иногда появляется необходимость ограничивать скорость скачивания файлов пользователями. Причин тому может быть множество (бесплатный и платный режимы, регистрация пользователя и т.д.), однако не всегда есть возможность приобрести сервер или настроить его должным образом. В данном топике предлагаю переложить задачу на плечи чистый PHP.
Читать дальше →
Total votes 30: ↑26 and ↓4+22
Comments30

Пуленепробиваемый HTML: 37 шагов к идеальной разметке

Reading time11 min
Views20K
Примечание: это не полный перевод статьи. Я выбрал только самые интересные лично для себя пункты. Статья не претендует на свежесть, но возможно даже люди хорошо знакомые с версткой найдут для себя что-то интересное. Статья затрагивает некоторые аспекты семантики верстки с конкретными примерами.

Под катом много букв! Чтоб не потеряться в их обилии все пункты выделены заголовками.
Читать
Total votes 144: ↑135 and ↓9+126
Comments83

Знакомство с jabber ботами

Reading time4 min
Views11K
imageДлительное время я использовал джаббер только в роли меседжера, однако несколько недель назад мне попался адрес джаббер бота, который был словарем, что представилось мне крайне удобным в использовании. В скором времени мой ростер пополнился десятком удобных ботов, и в поиске новых я, в том числе, исследовал хабр, но не нашел ничего. Я решил заполнить эту нишу и создать сводный список ботов, известных мне, которые, по-моему мнению, могут заинтересовать.
Читать дальше →
Total votes 217: ↑208 and ↓9+199
Comments56

Сигналы и слоты в Qt

Reading time10 min
Views275K
Сигналы и слоты используются для коммуникации между объектами. Механизм сигналов и слотов главная особенность Qt и вероятно та часть, которая отличаетcя от особенностей, предоставляемых другими фреймворками.
Читать дальше →
Total votes 46: ↑42 and ↓4+38
Comments24

И снова Fugue!

Reading time2 min
Views917
image
Я возможно уже вам все уши прожужжал про этот сет, но не смог снова его не упомянуть. Да-да, фугия снова обновилась. Данная версия 1.4.3 хоть и не последняя но все же уже актуальная для каждого. Наконец в нем есть все иконки необходимые для оформления вашего веб-приложения. Я понимаю что в сети есть множество полезных сетов иконок, но этот почему то затронул меня больше всего.
читаем дальше...
Total votes 72: ↑63 and ↓9+54
Comments32

«Hello, World!» на Qt

Reading time6 min
Views91K
Qt — это кросс-платформенный инструментарий разработки ПО на языке программирования C++. Есть также «привязки» ко многим другим языкам программирования: Python — PyQt, Ruby — QtRuby, Java — Qt Jambi, PHP — PHP-Qt и другие.
Позволяет запускать написанное с его помощью ПО в большинстве современных операционных систем путём простой компиляции программы для каждой ОС без изменения исходного кода. Включает в себя все основные классы, которые могут потребоваться при разработке прикладного программного обеспечения, начиная от элементов графического интерфейса и заканчивая классами для работы с сетью, базами данных и XML. Qt является полностью объектно-ориентированным, легко расширяемым и поддерживающим технику компонентного программирования.
В этой статье я покажу как написать простую программу «Hello, World!» с использованием библиотеки Qt4
Итак, приступим
Total votes 83: ↑74 and ↓9+65
Comments72

Fugue обновился! 1.2.5 от 19.01.09

Reading time1 min
Views831

Fugue Icons 1.2.5



image
Да-да, теперь это не "1000 замечательных иконок для веб страниц" а целых 1,263 иконок. Многие иконки были перерисованы и много добавилось новых. Появились такие востребованные иконки как user или иконки элементов интерфейса: «button, checkbox, slider» и т.д. В общем обновление шикарное, хотя до сих пор нету таких иконок как cut, copy и paste. Иконки по прежнему распространяются по лицензии Creative Commons Attribution 3.0 license а для вопросов: «Зачем кнопка purchase?» читаем это.

Прямая ссылка — 4,9Мб
Набор разработчика 7,6Мб
Пред просмотр — 1980px × 2263px 1,4Мб
Сайт

P.S. Предыдущий пост был написан давно и я решил написать новый чтобы привлечь внимание этому сету, а не использовал UPD.

UPD: Фугия снова обновилась. Теперь версия 1.2.5, вот изменения:
  • Обновлена <application_table>
  • Обновлена <document_excel_table> и <document_table>
  • Добавлена <door_open>
  • Добавлена <feed_document>
  • Обновлена <folder_open_table>
  • Обновлена <inbox_table>
  • Обновлена <mail_open_table>
  • Добавлена <server*>
  • Обновлена <table*> and <tables*>
  • Добавлена <traffic_light*>

Следите за обновлениями топика
Total votes 89: ↑83 and ↓6+77
Comments49

Иконки для ваших программных продуктов. Итоги.

Reading time1 min
Views3.1K
Прошло почти два месяца с момента объявления акции «Иконки для ваших программных продуктов», настало время подвести итоги. Трое избранников получили свои иконки, правда времени на них ушло несколько больше чем планировалось, но главное что все кажется довольны. Предлагаю и вам взглянуть на результаты.
image

Читать дальше →
Total votes 111: ↑101 and ↓10+91
Comments74

Clear или overflow:hidden — очистка всего потока или создание контекста форматирования?

Reading time2 min
Views35K
clear и overflowСвойство clear со значениями left, right, both действительно очищает поток в отличие от overflow со значеним hidden, которое создаёт отдельный контекст форматирования для выбранного элемента, тем самым локализуя действие свойства float внутри элемента к которому применён.

Читать дальше →
Total votes 130: ↑120 and ↓10+110
Comments75

Пример доски объявлений на Kohana

Reading time22 min
Views16K

Kohana — довольно молодой PHP фреймворк, форк CI, всецело завязанный на ООП. К достоинствам Kohana можно отнести использование всех возможностей PHP5 на 100%, высокую скорость работы, «легковесность» и простоту как использования, так и изучения. Из минусов отчетливо выделяется небольшое комьюнити, как следствие, не шибко качественная документация и небольшое количество модулей и библиотек.

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

Под катом пример доски объявлений, написанный с помощью Kohana, возможно местами он не претендует на рациональность и здравый смысл, но всё-же я надеюсь услышать конструктивную критику.

Статья рассчитана на людей, имеющих понятие об MVC и ООП, но не имевших, либо мало имевших, дело с фреймворками.

Итак, приступим...
Total votes 73: ↑62 and ↓11+51
Comments82

Drupal 6. Примитивная галерея CCK+ImageField+ImageCache+Lightbox2

Reading time3 min
Views4.4K
Это небольшая статья (или мануал, если угодно) о создании примитивной галереи посредством дополнительных модулей. Сам взялся за изучение друпала трое суток назад. Должен сказать, что после WordPress’а это сложновато, но вникнуть и разобраться можно. Поехали.

Читать дальше →
Total votes 26: ↑17 and ↓9+8
Comments30

Иконки для ваших программных продуктов

Reading time1 min
Views1.6K
Продолжая благое начинание г-на rumkin-а, предлагаю вашему вниманию новую акцию по иконизации населения. В этот раз будем обзаводиться иконками не для сайтов, а для программных продуктов. В рамках акции, я готова разработать главную иконку для вашего программного продукта. В связи с тем, что дело это не простое, я выберу 3 программных продукта из комментариев на свой вкус.

Читать дальше →
Total votes 42: ↑37 and ↓5+32
Comments119

Information

Rating
6,311-th
Location
Haining, Zhejiang, Китай
Date of birth
Registered
Activity