Search
Write a publication
Pull to refresh
40
0

User

Send message

Основы Python — кратко. Строки.

Reading time4 min
Views258K
Поскольку число положительных отзывов превысило число отрицательных, продолжу выкладывание уроков. Те кто уже знаком с основами — можете или просто пропустить урок, или попробовать сделать задание 3 самым коротким способом :)

Для начала маленькое замечание.

Начиная с Python 2.3, всем, кто использует не-ASCII кодировку нужно добавлять указание о кодировке в самом начале программы. Для русского языка это будет в основном:
# -*- coding: cp1251 -*-

или использовать для хранения исходных текстов файлы utf-8 (что предпочтительней).

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

Строки

Существует множество способов задать строку в Пайтоне...

OpenDNS зарабатывает $20 тыс. в день

Reading time1 min
Views929
Бесплатный сервис OpenDNS специализируется на фильтрации сетевого трафика. Он был запущен в середине 2006 года как инструмент для защиты пользователей от фишинга и других «нехороших» сайтов (гемблинг, порнография и т.д., там полсотни категорий, из которых можно выбирать). Вы прописываете IP-адрес в настройках DNS и больше можете никогда не вспоминать о его существовании. В то же время все запросы с этого момента будут проходить через него. Если попытаться загрузить какой-то из запрещённых сайтов — то вместо него в браузере появится страничка от OpenDNS с результатами поиска и контекстной рекламой.

За неполные два года своего существования OpenDNS стал чрезвычайно популярным сервисом, особенно среди корпоративных клиентов и образовательных учреждений. Ежедневно он обрабатывает около 7 млрд DNS-запросов и показывает 2 млн поисковых страниц. Только зарегистрированных аккаунтов насчитывается 500 тыс., но за каждым аккаунтом могут скрываться тысячи настоящих пользователей.

Оказывается, OpenDNS приносит своим создателям неплохие деньги: они получают около $20 000 в день за счёт контекстной рекламы, причём эксклюзивным поставщиком рекламы является Yahoo. Ни одна услуга OpenDNS не предоставляется за деньги, всё абсолютно бесплатно. Пополнение и обновление базы «вредоносных» сайтов осуществляется с помощью самих пользователей через Digg-подобный интерфейс.

via TechCrunch

IE PNG Fix 2.0 Alpha 2 — теперь с поддержкой background position и background repeat

Reading time1 min
Views2.5K
— Кросс-пост из моего блога
Всем известный IE PNG Fix, который был всем хорош, но который не умел работать с background position и background repeat, наконец — таки исправил этот изъян.
Читать дальше →

10 лучших вебсайтов по обучению Photoshop

Reading time1 min
Views56K
Вместо того, чтобы тратить впустую время, обыскивая сеть, в поисках хороших уроков по Photoshop, придерживайтесь этого списка.

PS Heroперейти


PSD tutsперейти


Tutorial 9перейти

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

Работаем с массивами в JavaScript без велосипедов

Reading time2 min
Views42K
Эту статью я хочу посвятить тонкостям работы с массивами в JavaScript.

Наверное, у каждого JavaScript-разработчика есть фунции (самописные или библиотечные) $ (выбор элемента по id) и $$ (выбор элементов по CSS-классу). Если мы выбираем несколько элементов по CSS-классу, то мы хотим произвести с ними определенные действия. Напрашивается цикл. А если нужна выборка среди них? Преобразования? Действия над нужными элементами? Непростой получается код.

JavaScript не стоит на месте, Mozilla неустанно улучшает JavaSript в своем движке Gecko и грех не пользоваться этими нововведениями. В JavaScript 1.6 добавлены новые полезные методы для упрощения кода, необходимого в вышеописанных ситуациях.
Читать дальше →

Фоновая обработка видео в Ruby on Rails

Reading time4 min
Views2.7K
Допустим у вас есть сайт, на котором пользователи загружают видео, и это видео надо конвертировать в flv формат.
Делать это непосредственно после загрузки, в текущем рабочем потоке не хорошо, т.к. потоков этих ограниченное число, и при большой нагрузке сайт будет недоступен.
Будет гораздо лучше, если обработкой этих видео-файлов займется демон.
тонкости реализации демонов и потоков в ror

Шпаргалки по jQuery

Reading time1 min
Views1.8K
В последнее время столкнулся с тем, что Prototype не такая уж клевая библиотека. Даже в компрессии напару с scriptaculous занимают много места да и синтаксис странный. Для меня загадка, почему в Rails включили именно его. jQuery по синтаксису намного больше похож на Ruby и более легковесная библиотека. Собственно немного порыскал и нашел неплохие шпаргалки на jQuery, чтоб освоение протекало несколько легче.
  1. jQuery Color Cheatsheet (PNG)



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

DIV-ная верстка, footer прижат

Reading time2 min
Views5.1K
Много способов прижатия футера к нижней кромке окна уже изобретено и описано, стОит только погуглить. Но хочется поделиться тем, к чему пришёл самостоятельно (пришлось изобретать, т.к. не было инета под рукой :))…

Сначала пошёл ошибочным путём: основной DIV с контентом — 100% по высоте, а хидер и футер спозиционированы абсолютно. Выглядит нормально во всех браузерах, но в ИЕ6 вылезал косяк — при динамической смене контента (через javascript) футер оставался на своем месте, т.е. не перемещался вслед за кромкой окна. Поэтому сделал так: DIV с основным контентом, DIV-футер с отрицательным margin-top, DIV-хидер с абсолютным позиционированием. Нарисовался очевидный плюс данного способа: основной контент страницы в HTML-коде максимально приближен к началу документа.
Дальше код и комментарии

Ежедневный Git

Reading time3 min
Views98K
Уже были статьи про основы гита (0, 1, 2), были и статьи про внутреннее устройство репозитория. Сегодня поговорим, как простому смертному работать с гитом на автопилоте и не морочить себе голову.

Во-первых, шорткаты (в порядке убывания популярности):

alias gst='git-status'
alias ga='git-add'
alias gc='git-commit -m'
alias gp='git pull && git push'
alias gull='git pull'
alias gush='git push'
alias gb='git-branch'
alias gco='git-checkout'
alias gd='git-diff'

Во-вторых, отображение текущей ветки в командной строке:
export PS1='`__git_ps1 "%s"` \w \$ '

Выглядит так:
lazy-args-in-futures ~/Work/io/oleganza-io.git $

(Как установить: ericgoodwin.com/2008/4/10/auto-completion-with-git)

Типичный поток работы в одной ветке
Читать дальше →

Io Language: Объектная система

Reading time4 min
Views2.2K

Введение


Продолжая писать про io, совершенно необходимо остановиться отдельно на устройстве объектной системы этого чудесатого езычка. Главная проблема в том, что даже если вы «знаете» ООП, вполне может сложиться ситуация, что вы просто не поймете, как оно устроено в io. Сейчас под ООП почему-то подразумевается модель Java, чаще всего. C++ нельзя назвать объектно-ориентированным языком, потому что он язык поддерживающий парадигму ООП, но это не его основная парадигма. Java больше подходит под гордое звание Ъ-ООП языка, но вот беда, ООП диктуемое Java-like языками довольно извращено. Изначально принципы ООП зарождались в Smalltalk'е и там все выглядело несколько иначе, объекты общались друг с другом не посредством вызова методов, а посредством передачи друг другу сообщений, мне до сих пор странно, почему же от этой модели ушли, ведь такое построение позволяет ввести прозрачную параллельность в язык без костылей. Посмотрите на нынешние круто параллелящиеся языки, тот же Erlang например, там все сделано через сообщения. Опять же нагородили огородов из RPC, COM и прочего dbus'а. А ведь как все хорошо начиналось.
Читать дальше →

Подборка видео-проигрывателей на флэше

Reading time2 min
Views18K


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

Надеюсь уважаемые комментаторы помогут дополнить список и выявить абсолютного лидера среди проигрывателей.
Уже помогли. Отдельные спасибы Elected, atri, rmb. Кармы всем за мой счет ^_^

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

Проектирование баз данных. Паттерн Компоновщик (Composite)

Reading time4 min
Views17K
Web 2.0 победоносно шагает по виртуальному миру. Социальные сети растут как грибы после дождя. Теперь в одном месте вы можете хранить свои фото, видеозаписи, писать блоги и слушать музыку. Все это можно комментировать, класть в избранное, копировать… Возможностей много, контент социальных сетей разнородный и разнообразный, и в этом их преимущество.

А теперь представьте себе структуру БД какого нибудь «Вконтакте». Представили? И что вы видите? Множество таблиц с данными? А что еще? Множество таблиц для связей много-ко-многим! Необходимых, с точки зрения реляционной БД, но лишних с точки зрения логики. Но это еще не все. Среди полей таблиц мы видим огромное количество «лишних» полей, являющихся всего лишь внешними ключами, служащими для связей один-ко-много, так же необходимых с точки зрения реляционной теории, но абсолютно бесполезных с точки зрения логики.
Читать дальше →

Бизнес в стиле «Купи-продай», или о войнах с таможней

Reading time5 min
Views2.2K
Поскольку я не умею создавать хорошие сайты, рисовать дизайны, кодить и продвигать сайты в Интернет, и я достаточно ленива для того, чтобы целыми днями делать авторские украшения и расставаться с ними за копейки, направление собственного бизнеса для меня было предопределено: купи-продай!

Почти ни один из интересующих меня видов товаров не производится в России, поэтому я вооружилась гуглом и стала искать поставщиков за границей. «К черту все! Берись и делай!» – и прошлой осенью я заказала товар из Китая, Индии и Непала на 1243, 510 и 311 долларов США соответственно, совершенно не представляя, что меня ждет, когда эти заказы приедут и, как и положено, будут задержаны таможней.

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

Реализация Singleton в JAVA

Reading time4 min
Views283K
В этой статье я хочу затронуть тему одного из наиболее распространенных паттернов объектно-ориентированного программирования – Singleton. Но в данном случае я не буду описывать преимущества/недостатки и области применения этого паттерна, а попытаюсь изложить свой взгляд на его имплементацию в JAVA.

Общие сведения
Паттерн Singleton гарантирует, что у класса есть только один экземпляр, и предоставляет к нему глобальную точку доступа.
Читать дальше →

Crop & Resize на страницах ваших сайтов

Reading time3 min
Views32K
Пройдясь по хабра-поиску выяснил, что готового решения для кропа-ресайза изображений, на движке JavaScript/HTML/CSS еще не предлагалось. Поэтому, позвольте представить вашему вниманию модуль для ваших сайтов, частично реализуюший функционал редактирования, распространенный на фото-хостингах.

К делу

Внешне задумка выглядит так:


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

Пользовательские поддомены

Reading time1 min
Views21K
С появлением новых проектов в сети иногда кажется, что задача эффективной организации пользовательских поддоменов (bob.someblog.com) кому-то представляется непростой. На самом деле, этот вопрос решается за одну минуту.
 

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

Концентрированное внимание

Reading time1 min
Views13K
Бывает такое, что мысли разбегаются. Смотришь в монитор и ничего толком не видишь. Читаешь текст, но ничего не понимаешь. Нужно что-то написать, придумать или нарисовать, но никак не удается сконцентрироваться на задаче. Наверняка, такая ситуация знакома многим. Что делать? Как «собрать» себя? У каждого есть свои секреты и рецепты.

Стол для работы стояВот, например, Джамис Бак из 37signals работает за компьютером стоя. Говорит в своей статье Standing versus Sitting, что так ему намного лучше, чем в комфортабельном кресле, которое его усыпляет своим уютом. Сначала он подкладывал толстые книги под монитор, клавиатуру и мышку, а потом даже купил специальный стол для работы стоя. (на картинке справа) Теперь Джамис работает меньше по времени, но с большей отдачей.

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

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

Какие секреты концентрирования внимания есть у вас? Как вы повышаете производительность своего труда?

Работа с Ангелами

Reading time3 min
Views2.3K
Большое спасибо всем, кто принял участие в обсуждении. Комментарии получились намного интереснее статьи

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

Для начала, давайте определим кто такие Ангелы? Ангелы, это индивидуальные инвесторы, которые вкладывают в проекты свои личные деньги, обычно сумма инвестиций не превышает 5% годового дохода Ангела или не более 0.5% своего состояния. Таким образом, потеря денег в результате неудачи проекта не сильно повлияет на его финансовое положение. Так как Ангелы работают в зоне особого риска (по разным источникам от 90% ангельских инвестиций терпят фиаско), они ожидают 10Х и более возврата на свои инвестиции. Таким образом, одна неудача для Ангела не страшна, а удача приносит доход, соизмеримый с годовым (или добавит от 5% к состоянию).
Читать дальше →

Jevix: опубликована php-версия 0.9 (beta)

Reading time1 min
Views1.3K


Jevix — средство применения правил набора текстов (типографики), фильтрации тегов и аттрибутов, предотвращения XSS-атак. Jevix предназначен для использования в составе интернет-проектов, публикующих пользовательские материалы, будь то крупная социальная сеть или авторский блог.

Jevix способен полностью взять на себя все возможные проблемы с обработкой пользовательского материала в формате простого текста или HTML.

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

Map/Reduce своими руками — Apache CouchDb

Reading time5 min
Views6.3K
Логотип CouchDb Предупреждаю — мой взгляд совершенно не претендует на какую бы то ни было объективность. Но реляционные базы данных меня никогда, мягко говоря, не вдохновляли.

Нет, я вполне понимаю когда у вас действительно приложение ориентировано на обработку и хранение больших массивов данных. Ну, ERP-системы, всякие хранилища, статистика там, «в прошлом месяце продали сто тыщ карандашей, в этом двести».

С другой стороны, в большинстве случаев, когда речь идет о десктопных (или веб-) приложениях, где не нужно ворочать миллионами примитивных записей,  а приложение работает с относительно высокоуровневыми, сложными объектами, суть «дизайна и проектирования баз данных» заключается в повторении двух действий:

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

Information

Rating
Does not participate
Location
Киев, Киевская обл., Украина
Date of birth
Registered
Activity