Sylar

[info]kpobococ_


Mr. Spock

Человек с длинными ушами. И густыми бровями. И не человек


Смищной сабжэ
Sylar
[info]kpobococ_
Что за хуйня во френдленте? Вы что, поубивались все, опять, как дрессированные белки, штампами говорить? Макдак им вредно и отвратно, вконтакт — зло, размножение естественным способом, оказывается, тоже зло, а беременные женщины у них уродливы. Идите еще в чайлдфри запишитесь, боты. Там явный деффицит долбоебов. А я теперь, судя по всему, быдло, раз мне размножение естественным путем больше нравится, чем клоны из пробирки. Идите в жопу, лучше я буду быдлом и сдохну вместе с остальным быдлом, чем жить в тупой хуевой реальности, где отупевшие вкрай интернетчики решили, что М и Ж равны, что рожать должны пробирки, а готовить будут роботы (жрите пирожки из автоматов, а я буду кушать бабушкины).

Собственно, это касается гулидара и аингера, остальные могут не волноваться.

(no subject)
Sylar
[info]kpobococ_
Отсосите мой хуй.

Ben Newman
Sylar
[info]kpobococ_
Может кто еще не сталкивался, я нашел блог офигенного художника. Чувак рисует просто шедеврические картинки, я с некоторыми из них уже сталкивался в сети, но автора не знал. И да, они в некоторой степени извращенские, но в этом-то и их прелесть!





Картинки кликабле

Интернет
Sylar
[info]kpobococ_
Теперь мой интернет интернетистее. До моего дома дошла первая домашняя сеть. Теперь у меня есть быстрый и относительно дешевый интернет. Относительно — потому что до этого я платил по 600-800 грн (порядка 100 долларов) за месяц. Теперь я буду платить 200 грн за максимальный доступный у провайдера тариф:


Ах да, это наконец-то анлим! Старый модем снял со стены и спрятал в шкафчик. Завтра буду звонить текущему провайдеру чтоб отключали (аккурат первого числа, но что делать).

Смотрите, что у меня есть
Orly?
[info]kpobococ_
Еще один эпизод приключений Джона Локка by [info]xobit!

Комментировать можно здесь либо у меня.

Обожаю такие нарезки
Sylar
[info]kpobococ_


Нужно срочно придумывать какой-то контент, ато моя жежешечка превращается в поток милых видяшек.

(no subject)
Evil
[info]kpobococ_
Детское евровидение огорчает Демидовича )

Google Wave и все все все
Sylar
[info]kpobococ_
Про волну.
Дали инвайт, зарегился (найти меня можно по адресу kpobococ@googlewave.com). В целом хорошо, но в файрфоксе там сидеть просто невозможно. Ждем оптимизаций и багфиксов, а пока с этим глухо, сижу в хроме.

Про хром.
Хром неплох, кстати, но никак не убийца файрфокса. Панель веб девелопера в хроме и сафари ну вообще не дотягивает до файрбага. Да, последние новости говорят, что в сафари панель функциональнее, но в файрбаге она быстрее и намного удобнее. И потом, console.log() — я без него вообще жить теперь не могу при отладке js.

Про файрфокс.
У меня дома глюкнул фф и не сохраняет сессии на сайтах после перезагрузки. Тысячу раз уже проверил все настройки, тупо сбой. Переустановил бы фф, но система в принципе загинается, нужно переустанавливать винду, да и семерку хочу поставить. Единственное, что сдерживает — как игрушки-то на вин7 идут, нормально? А еще, сегодня заценил фф 3.6 бета 2. Хороший, годный файрфокс, теперь с поддержкой тем, которые мне нах не нужны, пока нет вин7. Но нашел тему хрома, все-таки хорошая цветовая гамма. Половина плагинов с бетой не дружат, ждемс, но файрбаг работает, это положительно.

Про работу.
Сегодня звонил [info]xobit, говорил что заказчики счастливы от наших макетов. А я потихоньку ковыряю свой фреймворк. Сомнительно, конечно, местами выходит, но в целом мне нравится. Поставил его на гитхаб, теперь между домом и офисом вообще круто обменивается инфой. Сижу, радуюсь. Когда закончу первый раунд рефакторинга, кину ссыль. Хотя, если сильно хочется взглянуть, могу, пожалуй, и так дать ссыль.

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

#личное тьфу, блин.

Правильное употребление водки
Sylar
[info]kpobococ_
Блядь, второе видео за неделю, но это того стоит!


Ржака
Sylar
[info]kpobococ_
Я обычно не посчу видео, потому что меня раздражают потоки МиЛыХ ВиДяШеЧеГГгГгГг во френдленте, но это охуенно. Знание английского языка и небольшого кол-ва сленга и внимательное вслушивание в слова необходимы.


(no subject)
Sylar
[info]kpobococ_
404

Эй, фотографы!
Sylar
[info]kpobococ_
Все, кто уверен, что клево умеет фоткать — вот вам задачка:

http://www.moillusions.com/2006/03/transparent-desktop-trick.html

И вновь Джон Локк
Sylar
[info]kpobococ_
[info]xobit вновь порадовал нас приключениями Локка.

Я не пользуюсь катами (с). Обсуждение здесь, ну или у меня.

Мираж - Я больше не прошу
Sylar
[info]kpobococ_


Песня 1989 года. Я под нее в детстве остервенело катал машинки по ковру :) Про группу можно много прочесть на Last.fm. И да, я считаю, что это круто.

Джон Локк
Sylar
[info]kpobococ_
Мы с другом [info]xobit уже достаточно давно на тему этого замечательного персонажа фантазировали, но недавно, совершенно спонтанно, родилась идея создать на эту тему комикс! Встречаем!



Все комментарии к самому комиксу прошу писать в оригинальном посте, потому как я просто пиарю. Все права не мои.

Гребаные тесты
Sylar
[info]kpobococ_

Я грязная шлюха
Sylar
[info]kpobococ_

http://community.livejournal.com/ctrlaltdel_rus/119437.html

Javascript - часть 1. Введение.
Sylar
[info]kpobococ_
Итак, начну-ка я, пожалуй, свою серию статей, посвященных javascript. По результатам опросов, некоторые люди, желающие освоить javascript, имеют о нем слабое представление, поэтому первые несколько статей будут посвящены достаточно базовым вещам. Если вы — крутой js программер, написали уже стопиццот веб-приложений, то вам, скорее всего, эти статьи будут не интересны.

Для начала определим инструментарий: при разработке веб-приложений я пользуюсь фреймворком mootools, поэтому все мои примеры будут основаны именно на нем. Мой выбор основан, скорее, личным предпочтением. Для справки, mootools используется в таких системах, как Joomla (версии 1.5.), валидатор HTML w3c, vimeo. Еще вам понадобится Firefox с установленным на него аддоном Firebug, в котором есть консоль, с возможностью исполнять произвольный javascript код (а также многими другими возможностями, которые нам в этой статье не понадобятся).

1. Типы данных.
Основные типы данных в javascript — это number (целые, или с плавающей точкой), string, boolean, object, array и function. По своей сути, все это — объекты. Это значит, что у каждого из этих типов данных есть (или может быть) набор методов. Особенно удивительно лично для меня в свое время было такое отношение к функциям. Небольшой пример:
var bool = true // или var bool = new Boolean(true);
var num = 42 // или var num = new Number(42);
var str = "hello world" // или var str = new String("hello world");
var arr = [1, 2, 3]; // или var arr = new Array(1, 2, 3);
var obj = {foo: 'bar'}; // или var obj = new Object({foo: 'bar'});
var fnc = function() { alert('hello world'); } // или var fnc = new Function("alert('hello world');");

Как видно, у любого типа данных есть соответствующий ему объект.

2. Среда исполнения.
Нужно понимать, что, независимо от того, чему вас там учат всякие "javascript за 5 дней", на самом деле понятия "глобальная область видимости" в том виде, в котором мы к нему привыкли, в javascript не существует. Объявляя переменную с ключевым словом var, мы всего лишь объявляем свойство глобального объекта, которым в браузерах является объект window. Всякий раз, когда мы обращаемся к переменной, которая не объявлена в текущей области видимости, интерпретатор ищет одноименное свойство глобального объекта, и, если находит, использует его. Поэтому, следующие две строчки кода равносильны:
alert('hello world');
window.alert('hello world');


3. Объекты.
По своей сути объект — это набор свойств, объединенных по какому-либо признаку. Примером может служить объект Math, содержащий в себе набор математических констант и функций, вроде round (округление) и atan (рассчет арктангенса). Подробнее про стандартные объекты javascript написано здесь (привожу английский вариант статьи, так как русский вариант неполный).

Особое внимание читателя хочу обратить на то, как можно изменять объекты во время выполнения, добавляя или удаляя их свойства. Во-первых, можно добавить или удалить свойство одного единственного объекта. В таком случае аналогичное свойство всех других объектов этого типа будет по прежнему доступно. Во-вторых, можно добавить или удалить свойство прототипа, таким образом изменив все объекты этого типа. Вот пример таких действий над типом String:
var str = new String("hello world");
typeof str.alert; // 'undefined'
str.alert = function() { window.alert(this); }
typeof str.alert; // 'function'
var s2 = new String('test');
typeof s2.alert; // 'undefined'

delete str.alert;
String.prototype.alert = function() { window.alert(this); }
typeof str.alert; // 'function'
typeof s2.alert; // 'function'
typeof 'test'.alert; // 'function'


Для подобных операций в mootools служит метод implement(), но о нем позже.

Допустим, нам нужно создать новый типовый объект с набором своих методов. Именно для этого и используется конструкция {}. Давайте посмотрим:
var cart = {
    items: [],
    length: function() { return this.items.length; }
    add: function(item) { this.items.push(item); return true; }
    remove: function(item) { this.items.erase(item); } // метод Array.erase из фреймворка mootools
}


Код, который я привел выше, это типичный пример бесполезного задротского примера из книг а-ля "за 5 минут". Потому что на самом деле он никому не нужен, и смотреть на него не интересно. Зато полезно знать, как в js объявлять уникальный объект (т.е. единственный в своем роде). В моем случае, это корзина пользователя, в которую можно добавлять и удалять товары. Но что если нам нужно создать несколько однотипных объектов? Неужели нам прийдется постоянно прописывать все их методы? Ну конечно-же нет! Ведь на свете столько ленивых людей!
cart.Item = new Class({
    name: null,
    price: null,
    initialize: function(name, price) {
        this.name = name;
        this.price = price;
    }
});

// теперь мы можем невозбранно добавлять новые объекты в корзину
cart.add(new cart.Item('какая-то хрень', 5.00));
cart.add(new cart.Item('хрень от Лебедева', 100500.00));


Не углубляясь в детали js, я сразу же использовал в этом примере объект Class из библиотеки mootools. Он принимает аргументом при вызове типовый набор свойств для нового класса. А свойство "initialize" служит в новом классе конструктором. Подробнее об объекте Class нарисовано фломастерами на заборе (на английском, потому что понаехали).

Углубляться в объекты сильнее я на данном этапе не стану.

4. Замыкания (Closures).
Одна из сложных в освоении но легких в использовании фич javascript — замыкания. Допустим, нам нужно создать обработчик события нажатия мыши на какой-либо ссылке, в котором нужно поменять текст в каком-либо другом элементе. Зацениваем код:
var global = {
    addOnClick: function(link, div) {
        link.addEvent('click', function() {
            div.set('text', 'Хватит кляцать все подряд, блин!');
        });
    }
}


И хотя в самой функции-обработчике переменной div нет, она есть в области видимости функции addOnClick, откуда успешно и вытаскивается при срабатывании события. Вот это все кто-то и назвал замыканиями. Я не знаю кто, потому что я профессиональный быдлокодер на PHP.

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

ВНЕЗАПНО
Sylar
[info]kpobococ_
Платите за порно! Платите за порно, суки!

Life quotes
Sylar
[info]kpobococ_


еще видео, цитаты

Это для тех, кто ленится посмотреть сам.

Home