Pull to refresh
44
0
Кто-то Другой @foo

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

Send message

«Наследование» не от классов

Reading time5 min
Views5.2K
image
В Питоне совсем не важно, что вы поместите в определение класса. Это могут быть строки, числа, объекты, переменные. В третьем Питоне можно даже передавать именованные аргументы.
Реализация

Другое видение скучных GTD планировщиков через призму RPG игр

Reading time12 min
Views14K

10 слов об идее.


GTD планировщик в виде многопользовательской RPG для команд разработчиков, вот.

Коротко.


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

Lol, это шутка? Да, так и есть, это шутка. Но в каждой шутке, как говорится, есть доля шутки.

…Говоря о лени и ММО, сейчас я задумываюсь, если мне так влом утром вставать на работу, если мне так лень было ходить на пары, если мне нужно огромное количество усилий потратить, чтобы заставить себя наконец открыть Flex Builder и дописать этот глупый проект, почему я 4 месяца не получая за это зарплаты, вставал в 6 часов утра и весь день «работал» в игре? …

Дла заинтересовавшихся или тех, кому просто любопытно — велкам за хабракат. А вот пока картинка на затравку.



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

WiMAX. Как это работает

Reading time4 min
Views121K
В этой статье я расскажу о неоднократно упоминавшейся на Хабре технологии.
Worlwide Interoperability for Microwave Access. Так расшифровывается WiMAX.
У этой технологии нет глубоких корней, как например у GSM или CDMA. Она появилась сравнительно недавно: в 2004 году вышел первый стандарт для WiMAX, а в наш повседневный мир она проникает только сейчас.
Изначально его позиционировали, как 4G из-за его новизны и скорости передачи, но в 2008 году он однозначно занял своё место среди технологий третьего поколения. Однако этот факт не помешал продажникам, рекламщикам и прочим нечистым на язык людям рекламировать его именно под слоганом «4G интернет» (о чём это они?).
Прошлое и настоящее WiMAX

Дао Вебсервиса. (Или да хватит же изобретать велосипеды!)

Reading time12 min
Views59K
image Недавно на Хабре была опубликована статья под провокационным заголовком и призывом к прекращению изобретений велосипедов в API-строении. Поскольку тема мне интересна, то я просто не мог пройти мимо.
Увы, реальность за хабракатом меня сильно разочаровала — я увидел очередной велосипед, да еще и с квадратными колесами. (Коллеги, ничего личного, только техническое обсуждение.) Правда, авторы честно сказали, что увидели на нескольких сайтах модное слово REST и решили сделать по нему. Только вот поняли они этот «РЭСТ» по-своему, примерно как Дед Щукарь читал и понимал толковый словарь.
В этом топике я призываю по-настоящему покончить с велосипедами в API сайтов. Ведь получается какой анекдот: АПИ разрабатывается для упрощения доступа к сайту и легкости подключения внешних систем, а получается такой, что с ним еще сложнее, чем без него :)

Чуть ниже под катом я подпишу смертный приговор всем велосипедам в универсальных API. Чтобы не быть голословным, я все проиллюстрирую примерами.
Но должен предупредить сразу — после прочтения статьи вы не сможете без рвотного рефлекса смотреть на очередной велосипед Васи Пупкина под гордым названием «универсальное API сайта».

В повествовании будут рассмотрены следующие вопросы:
  1. Базовые технологии: XML-RPC, REST, SOAP и краткое сравнение
  2. Дао вебсервиса
  3. Просветленные API
  4. Как отличить сайтовое API от говна
  5. Выводы

Кто не испугался суровых реалий - вперед

Перевод Django Documentation: Models. Part 2

Reading time10 min
Views17K
image

Доброго времени суток!

Этот топик является продолжением перевода документации Django, если быть точным — раздела о моделях.

Перевод Django Documentation: Models. Part 1

_____Отношения между моделями
_______Отношение многие-к-одному
_______Отношение многие-к-многим
_______Дополнительные поля в отношении многие-к-многим
_______Отношение один-к-одному
_____Модели и файлы
_____Ограничения на имена полей
_____Собственные типы полей


Перевод Django Documentation: Models. Part 3
Перевод Django Documentation: Models. Part 4 (Last)

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

Поисковая система по C++ ресурсам

Reading time2 min
Views6.8K
Не самый популярный, но оттого не менее полезный сервис Google — возможность создать свою поисковую систему. Технология простая — вы отбираете сайты, в которых поисковик будет искать прежде всего, сужая, таким образом область поиска и получая красивые релевантные результаты.
Мне захотелось найти поисковик для C++, но я ничего полезного не увидел. Зашел на Google Custom Search, накидал список сайтов (штук 15, не больше) и увидел, что это хорошо — ищет уже гораздо лучше стандартного гугл-поиска. Вот ссылка на эту мини-искалку. Буду рад, если хабрасиплюсплюсеры помогут мне в развитии и пополнении списка допустимых сайтов. Тут есть следующие варианты:
  • "ха! дык это ведь уже есть!" вы тыкаете меня носом в уже созданный тематический поисковик по C++, я посыпаю голову пеплом, закрываю топик и радостно этим поисковиком пользуюсь,
  • "ура, мы создадим СВОЙ поисковик, с функторами и аллокаторами". Тут видится два разумных варианта. Первый — я раздаю 100 инвайтов желающим присоединиться к наполнению базы сайтов поисковика и они непосредственно включаются в редактирование. Или же можно содать общедоступную и свободно редактируемую страничку (да хоть эту), на которую сваливать все ссылки. Ну а страничка в качестве источника ссылок будет съедаться гуглом.
  • также принимаются предложения по смене системы создания custom search, идеи о том, как можно подключать штуки вроде закладок delicious (или, например, ), помеченных соответствующими тегами, страниц MSDN, URL которых никак не связан с темой, и прочее.
Пока добавлены следующие ресурсы

Перевод Django Documentation: Models. Part 1

Reading time8 min
Views20K
image

Доброго времени суток!

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

_Модели
___Небольшой пример
___Использование моделей
___Поля
_____Типы полей
_____Параметры полей
_____Автоматические первичные ключи
_____Подробные имена полей


Перевод Django Documentation: Models. Part 2
Перевод Django Documentation: Models. Part 3
Перевод Django Documentation: Models. Part 4 (Last)

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

Абстрактные классы и интерфейсы в Питоне

Reading time5 min
Views187K
Абстрактные базовые классы и интерфейсы — близкие по назначению и смыслу сущности. Как первые, так и вторые представляют собой своеобразный способ документирования кода и помогают ограничить (decouple) взаимодействие отдельных абстракций в программе (классов).

Питон — очень гибкий язык. Одна из граней этой гибкости — возможности, предоставляемые метапрограммированием. И хотя в ядре языка абстрактные классы и интерфейсы не представлены, первые были реализованы в стандартном модуле abc, вторые — в проекте Zope (модуль zope.interfaces).

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

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

Прогресбар и нити в PyGTK

Reading time10 min
Views2.4K
Недавно появилась необходимость и желание ознакомится с PyGTK. Литературы на русском по данному вопросу практически нет, а то, что находит гугл в разных блогах — бывает немного устаревшим. Также с удивлением обнаружил, что и на хабре тема PyGTK не особо популярна.

Итак, не буду рассказывать про компоновку элементов интерфейса, ибо такие статьи уже есть. Расскажу про следующий шаг: создание приложения, которое выполняет некую работу, в процессе отображая свой прогресс.
Читать дальше →

Использование Vim для редактирования простого текста

Reading time5 min
Views20K
Про Vim сказано и написано более чем достаточно. Но большинство материалов представляют собой либо самые первоначальные сведения, либо же советы матерых профессионалов. В результате для того, чтобы приспособить редактор для решения стоящих перед пользователем задач, приходится перелопатить кучу мануалов. Перед осознанием масштаба необходимой работы, нужен нешуточный стимул, чтобы решиться на такое. И вполне может возникнуть резонный вопрос: а зачем мне это? Помимо того, что интересно «пощупать» редактор, о котором столько разговора, должно быть что-то еще?

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

Забегая вперед, скажу, что информацию пришлось собирать фактически по крупицам. Основное направление в использовании Vim в качестве редактора «для программистов» привело к тому, что вопросам обработки «простого» текста уделяется мало внимания. В конце-концов, с поставленной задачей, как мне кажется, удалось справиться.
Читать дальше →

7 шагов для систематизации процесса дизайна и разработки

Reading time6 min
Views4.4K
Систематизация означает создание процессов или предопределенного набора мер, которые предназначены для ускорения выполнения трудоемких и повторяющихся задач.

Итак, как же можно систематизировать процесс создания дизайна и веб-сайтов в целом? Ниже приведены 7 шагов, которым вы должны будете следовать для создания системы, для выполнения повторяющихся и скучных задач, тем самым сэкономив время для креативной работы.
Читаем дальше...

Видео урок по пайке и демонтажу. Продолжение

Reading time1 min
Views35K
Начало тут

Теперь покажу как можно орудовать паяльным феном:

В роли фена у меня Актаком АТР-4501:
image
Это просто фен, является полной копией фена QUICK (о чем и не скрывает). Стоит дороговато — раза в два дороже супер популярных в народе Lukey 852D, но качество зато на уровне и не скачет от изделия к изделию.

В прошлом топике меня спросили как запаивать память SSOP корпусах (например как в роутерах) — спрашивали, отвечаем. Это, правда, не память, это конвертер USB-UART, но корпус у него с аналогичным шагом, разве что ножек поменьше.
Читать дальше →

Хабраподсветка или эксперименты в изолированном окружении Python

Reading time4 min
Views5.1K
Протестировать свежую версию любимого фреймоврка. Запустить приложение со специфичным набором библиотек. Установить необходимые библиотеки по списку зависимостей. Как решить все эти задачи не затронув системные файлы? В этой статье речь пойдет об утилитах virutalenv и pip.
Читать дальше →

Онлайн чат для сайта через джаббер (GTalk)

Reading time2 min
Views41K
image
Великолепная веб-программа позволяющая разместить на вашем сайте панель с чатом для ваших клиентов сообщения которого будут прилетать в ваш джаббер клиент.
Другими словами это способ организовать общения с посетителями сайта.

Написать подробную инструкцию меня сподвигнула обзорная заметка на сайте dikiy.com
Под катом так-сказать пошаговая инструкция как запустить онлайн чат на своем сайте
Читать дальше →

Leechcraft 0.3.0

Reading time3 min
Views1.7K
Здравствуй, %username%.
Сегодня я хочу рассказать тебе об одном своём проекте, который начался давным-давно с простого желания написать что-нибудь абстрактное, модульное и крутое.

image

Быстро пролетело чуть больше трех лет, и получился LeechCraft. LeechCraft — это модульный кроссплатформенный интернет-клиент. Модульный — все по-настоящему важное выполняется плагинами, а ядро программы только связывает их между собой, да показывает общий для них интерфейс. Кроссплатформенный? LeechCraft постоянно используется автором под Linux, запускается под Windows и, теоретически, может работать под Mac OS X. Однако, за неимением Мака работа под ним не была протестирована.

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

8 полезных регэкспов с наглядным разбором

Reading time2 min
Views274K
О мощи и гибкости регулярных выражений написано много, и их использование давно уже является стандартом для различного рода операций над текстом. Пожалуй, чаще всего регэкспы работают при валидации вводимых данных — здесь им практически нет альтернативы, если не считать громоздкий циклический разбор с кучей неочевидных проверок. Начнём с самого простого:

1. Часть ЧПУ (человекопонятный URL)


По сути, слово с дефисами.

Паттерн: /^[a-z0-9-]+$/
short_url

Примеры посерьёзнее

C++0x (С++11). Лямбда-выражения

Reading time13 min
Views306K
Буквально на днях случайно наткнулся на Хабре на статью о лямбда-выражениях из нового (будущего) стандарта C++. Статья хорошая и даёт понять преимущества лямбда-выражений, однако, мне показалось, что статья недостаточно полная, поэтому я решил попробовать более детально изложить материал.

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

.vimrc, который всегда со мной

Reading time2 min
Views67K
Моему .vimrc уже больше восьми лет. Он помнит времена PentiumII, Debian Potato и gcc настолько древнего, что я уже и не помню его версии. Он развивался с пятой версии Vim, приобретал полезные фрагменты и избавлялся от ненужных. И вот внезапно захотелось поделиться с вами его содержимым. Весь файл я показывать пока не буду, лишь пройдусь по некоторым, на мой взгляд, интересным моментам.
Читать дальше →

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity