Search
Write a publication
Pull to refresh
203
0
Александр @jasiejames

Инженер (210406)

Send message

9 статей на тему круглых кнопок

Reading time2 min
Views11K
9 статей на тему круглых кнопок

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

Здесь представлены
9 отличных статей на тему создания кнопок с изменяемой шириной

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

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

PS Heroперейти


PSD tutsперейти


Tutorial 9перейти

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

Резиновая верстка — линейная зависимость горизонтального положения DIV-ов

Reading time2 min
Views12K
Задача: менять горизонтальное положение блочных элементов по линейной зависимости при изменении размера окна браузера.
Решение: термин «пропорциональность» подразумевает линейную зависимость двух параметров. Вспоминаем школьный курс геометрии: линейная зависимость — это прямая, её уравнение выглядит следующим образом: Y=aX+b. Для построения уравнения прямой необходимо и достаточно знать координаты двух точек, принадлежащих этой прямой. Если принять за Y горизонтальное положение блока, а за X — ширину окна, то задача сводится к определению параметров a и b.
Читать дальше →

MoreCSS — Сделаем css полноценным!

Reading time1 min
Views825
morecss-logo.png

MoreCSS — небольшая библиотека JavaScript, весом всего 14кб, для решения повседневных задач, таких как создать всплывающие окна, сделать вкладки меню, таблицы и списки с оформлением «зебра»-стиль… и т.д. С помощью этой библиотеки Вы сможете это делать средствами обычного css.
Читать дальше

Io programming language

Reading time3 min
Views9.6K
По факту защиты мной диплома образовалось некоторое свободное время и я таки решил собраться и написать про эту чудесную штучку.
Мы в последнее время видим всплеск интереса ко всяким языкам очень высокого уровня, с анонимными функциями, каррингом, мапом/фолдом, метапрограммированием и прочим блэкджэком. Слава богу, я считаю.
Задачи усложняются и если люди применяют относительно низкоуровневые средства разработки зачастую наступает ситуация, когда набор абстракций оказывается мал в рамках решаемой задачи, примерно так появляется «спагетти» и велосипеды. Хорошего мало. Хотя умалять роль низкоуровневого программирования не хочется совершенно, по понятным причинам.

Совсем недавно, в 2002 году, бравый американец Стив Декорте понял, что ему как-то все вокруг не нравится. Ну то есть нравится, но как-то по частям. Нравится Smalltalk своей Ъ-ООП природой, нравится Lisp своей системой метапрограммирования и общей мегаизвратностью, нравится Self своими прототипами, нравится Lua, потому что маленькая и клево встраивается куда угодно. А вот что бы все и сразу — что-то не то. Погоревал бравый американец, да и наколбасил свой собственный язык программирования — Io.

Io


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

Ну что, поехали.
Читать дальше →

Helma — и снова серверный JavaScript

Reading time3 min
Views1.6K
Немного ранее я уже рассказывал о разработке компании Aptana — серверной платформы Jaxer, которая позволяет развёртывать приложения на JavaScript на стороне сервера, и объединять таким образом код клиентской и серверной стороны. Конечно, есть много спорностей в таком подходе, как и вообще применимости такого языка как JavaScript для разработки полноценных веб-приложений на сервере, но это не останавливает разработчиков — несмотря на ограничения, вполне можно разрабатывать интереснейшие приложения. Но вот уникальна ли эта платформа? Теперь нет.

Открытый проект Helma — написанная на Java платформа для исполнения серверных приложений на JavaScript. Сейчас поддерживается версия 1.7, однако с развитием движка Rhino, который отвечает во всех проектах подобного рода за интерпретацию JS, будем ожидать, что и вторая версия будет поддерживаться. Платформа обладает и встроенным веб-сервером, в качестве которого используется Jetty, и даже собственная объектно-ориентированная база данных (на основе XML), которая прозрачно интегрирована в платформу и позволяет сохранять и кешировать объекты между сессиями. Также есть встроенные средства отладки приложений, при этом все доступно через веб-интерфейс.
Читать дальше →

Кино для гика

Reading time2 min
Views3.6K
Revolution OS — обложка.
Revolution OS (год: 2001).
Фильм о Linux и движении свободного программного обеспечения. Какого-либо сюжета в фильме замечено не было — фильм однозначно документальный. Содержит многочисленные интервью с такими людьми, как Линус Торвальдс (Linus Benedict Torvalds, создатель ядра Linux, а также автор книги Just for Fun), Ричард Столлман (Richard Matthew Stallman, создатель идеологии свободного программного обеспечения), Эрик Рэймонд (Eric Steven Raymond, автор книги The Cathedral and the Bazaar — Собор и Базар), и ещё с некоторыми. Содержит в себе различные довольно интересные рассказы, например про то, как линуксоиды, впервые пожелавшие вернуть деньги за Microsoft Windows, пошли учинять беспорядки в Microsoft и как их там заблокировали. =)
В России фильм издан не был, а вот в Японии — очень даже: справа обложка именно японского издания. Тем не менее, есть субтитры на русском языке. Трэйлер (18.84 MB).


Pirates of Silicon Valley — обложка.
Pirates of Silicon Valley (год: 1999).
Также известен у нас в стране как «Пираты Кремниевой Долины» и, прости меня, Ктулху, «Пираты Силиконовой Долины» (ужас, кто это придумал? создаётся ощущение, что речь идёт о порнухе). Фильм, наделённый воистину великолепным сюжетом, основанный на реальных событиях, а точнее даже на книге Fire in the Valley: The Making of The Personal Computer. Собственно, фильм описывает те самые волшебные события, происходившие с начала семидесятых прошлого века и до 1985 (Steven Jobs ушёл из Apple). С одной стороны рассматриваются Стив Джобс и Стивен Уозняк (Steven Paul Jobs и Stephen Gary Wozniak), основавшие Apple, а с другой — Билл Гэйтс, Стив Баллмэр и Пол Аллэн (William Henry Gates III, Steven Anthony Ballmer и Paul Gardner Allen). Конкретно в фильме можно встретить историю создания синих ящиков (blue boxes), первого пользовательского графического интерфейса и мыши вместе с ним, покупку операционной системы DOS компанией Microsoft и дальнейшую её перепродажу IBM… Трэйлер.


Antitrust — обложка.
Antitrust (год: 2001).
Ну и в заключение фильм, название которого на русский можно перевести как «Антимонополия», а в нашем замечательном прокате фильм этот называется «Опасная правда».
В отличие от двух предыдущих фильмов, этот вовсе даже не документальный, а скорее развлекательный. Тем не менее, сюжет весьма и весьма затягивает. Рассказывается о некоей большой I.T.-корпорации, которая, как можно понять из сюжета, гораздо круче всяких там Apple и Microsoft, а также о некоем гениальном хакере, которого позвали работать в эту корпорацию. Как позже выяснилось, с корпорацией не всё чисто (и не удивительно) — например, она ставит наблюдение за программистами, пишущими свободное ПО и снимает с их мониторов исходники программ (просто превосходно: зайти на CVS/SVN и скачать исходники, вероятно, сложнее), которые в дальнейшем вставляет в свою очень крутую проприетарную разработку SYNAPSE… Ладно, на самом деле фильм интересный, это просто я так описываю по-гиковски. =) Советую посмотреть (хотя бы из-за красивой девушки-разработчика графических интерфейсов). Кроме того, в фильме можно наблюдать, например, самую настоящую KDE версии того времени, а также совершенно нормальную UNIX'овую оболочку, без всяких там несуществующих 3D-штучек, как было в… не буду тыкать пальцем, где. Трэйлер.

Создаем портлетное приложение по JSR286, часть первая

Reading time9 min
Views2.6K

Цель

Приобщиться к портальным технологиям, исследовать возможности, которые дает спецификация JSR286

План работ

1. Создать проект
2. Создать настройки портлета, вывести их на страницу портала

3. Сохранить настройки, проверять настройки валидатором
4. Создать режим просмотра, зависящий от настроек портлета
5. Генерировать и обрабатывать события в рамках одного портлетного приложения.

Я уже писал раньше о том, как активно развивается спецификация JSR286, как Sun один за одним клепает версии порталов, пичкая их разными вкусностями. После выхода в свободное плавание GlassFish, являющегося прямым родственником Sun Java system Server, стоит ожидать, что свободному сообществу отдадут ветку портала, который, как я писал раньше, сейчас мало чем уступает порталу от IBM. Надо внимательно присмотреться к портлетам и тем бонусам, которые появляются при их использовании. О ложках дёгтя тоже збаыать не будем.
И так, приступим

Slax — карманная операционная система

Reading time3 min
Views26K
Уже ни для кого не секрет, что открытость, удобство сборки и настройки ядра Linux позволяют устанавливать систему не только на жёсткий диск, но и на переносимые носители, такие как диски, карты памяти, флешки, плееры и т.п., а компактность и нетребовательность ядра и сопутствующего ПО к ресурсам позволяют запускать систему непосредственно с этих носителей.

Такие «компактные» варианты Linux-систем получили название live-дистрибутивы. Сейчас их создано огромное множество, под всевозможные задачи. Также, некоторые полноценные десктопные дистрибутивы (Ubuntu, OpenSUSE, Mandriva) позволяют запускать систему с CD, тем самым с ней можно легко ознакомится без установки на жёсткий диск.

В этом топике я хочу рассказать вам про один из популярных live-дистрибутивов — Slax.
Читать дальше →

Борьба с DDOS и DOS на уровне nginx

Reading time1 min
Views8.4K
FreeBSD, сетевая Intel fxp, порт 100Мбит, polling, http accept-filter
в sysctl:

sysctl kern.maxfiles=90000
sysctl kern.maxfilesperproc=80000
sysctl net.inet.tcp.blackhole=2
sysctl net.inet.udp.blackhole=1
sysctl kern.polling.burst_max=1000
sysctl kern.polling.each_burst=50
sysctl kern.ipc.somaxconn=32768
sysctl net.inet.tcp.msl=3000
sysctl net.inet.tcp.maxtcptw=40960
sysctl net.inet.tcp.nolocaltimewait=1
sysctl net.inet.ip.portrange.first=1024
sysctl net.inet.ip.portrange.last=65535
sysctl net.inet.ip.portrange.randomized=0

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

Иногда они возвращаются… снова

Reading time6 min
Views4K
Совсем недавно на хабре пользователем bur был опубликован пост про приятные ползунки TrackBar. Они мне понравились своей простотой и возможностью их использования в совокупности с jQuery. Чуть позже был так же пост про слайдер, который определял диапазон времени, но его порицали за большой вес и «тяжесть». Тогда у меня и родилась идея создать на основе TrackBar ползунков для выбора произвольного диапазона времени. Придумано – сделано. И сейчас я представляю свои наработки хабраобщественности.

Итак, было:

Стало:


Прочитать про это

Deki Wiki для ленивых

Reading time2 min
Views16K
История моего знакомства с этим движком началась очень просто — начальство потребовало корпоративный сайт, при чем желательно на Wiki движке. MediaWiki не прошел по правам доступа, DokuWiki слишком прост, JSPWiki был очень близок, но что-то не нашлось способа скрестить его с доменными учетками. Потом накинулись более важные задачи и на пару месяцев пришлось отложить весь проект.
WYSIWYG редактор
А потом в один прекрасный день натыкаюсь на опеннете на новость об открытых проектах, которые могут заинтересовать бизнес. Среди них обнаружился MindTouch Deki Wiki. Беглый осмотр показал годность движка. Больше всего удивило то, что я на него до сих пор не наткнулся. Установка с использованием готового образа виртульной машины прошла быстро и безболезненно. Интерфейс симпатичный, страницы редактируются в WISIWIG редакторе. Картинки вставляются с превьюшками, можно развешивать тэги, но это все не главное. Самое лучше в этом проекте — документация. FAQ подробный и полный, рассмотрены нужные и полезные вещи. Английский язык не сложный, команды линукса интернациональны. С помощью этого самого FAQ связал wiki с доменом и дал права по умолчанию доменным пользователям за 30 минут с перерывом на чай. Кроме логина по username подгружает полное имя пользователя. Движок поддерживает расширения, но мне они не пригодились Желающие могут связывать свой вики-сайт с фликром, диггом или гуглокартами.

Из недостатков могу отметить то, что в качестве идентификатора используется имя пользователя, соответственно смена имени — пока трудоемкий ручной процесс апдэйта таблиц. Хорошо, что он описан в том же FAQ. А еще постоянно ругается на оперу, мол не поддерживается и т.д., но на вид функционирует и в ней нормально.

Резюме: Если хочется корпоративный вики-сайт — присмотритесь к Deki Wiki.

изображения взяты с wiki.opengarden.org/Deki_Wiki

Обходим ограничения браузера на число соединений

Reading time1 min
Views6.7K
Несколько дней назад эта видео-запись размещенная на metacafe высветилась на digg. В ней объяснялось, как увеличить скорость открытия сайтов путем тонкого тюнинга браузера и изменения его настроек, отвечающих за число параллельных соединений. Чтобы объяснить, почему это работает, давайте немного углубимся в то, как браузеры обслуживают серверные соединения.

Утилитарный выбор



При разработке любых приложений всем разработчикам приходится делать то, что называется «утилитарным» выбором (utilitarian choice). Если несколько вычурно перефразировать Jeremy Bentham, то «утилитарным» можно назвать тот подход, «в результате которого мы получаем наибольшее количество добра для наибольшего числа [людей]». Много раз производительностью жертвовали для небольшого числа пользователей, чтобы, в результате, средняя производительность для всех пользователей в совокупности была бы лучше.

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

читать дальше на webo.in →

Основы Python — кратко. Часть 5. Определение функций, основы.

Reading time3 min
Views169K
Начав писать главу про ООП, понял что совсем забыл освятить такой большой и нужный раздел Пайтона как функции. Тема это большая и обширная, потому, чтобы не сильно растягивать паузу между уроками, решил разделить ее на 2 части. Сначала расскажу основы, потом уже углубленные особенности Пайтоновского функциестроения.

Функции в Пайтоне объявляются не просто, а очень просто. Вот пример самой простой:

def empty_func():
    pass

Начинается объявление с ключевого слова def, что как не сложно догадаться является сокращением от define. После него идет имя функции. После имени в круглых скобках задается список параметров, в данном случае отсутствующих.
Читать дальше →

Почему у свободного программного обеспечения убогое юзабилити и как это исправить

Reading time11 min
Views3.8K
Предлагаю хабросообществу свой перевод статьи Мэттью Пола Томаса, которую он недавно опубликовал в своем блоге. Томас — программист из Новой Зеландии, работающий в команде разработчиков проекта Launchpad — детища компании Canonical, более известной как коммерческий спонсор самого популярного Linux-дистрибутива Ubuntu.
Что самое интересное:
первый вариант этой статьи вышел еще 6 (!) лет назад.
— скорее всего появление второго варианта навеяно недавним громким заявлением основателя компании Canonical Марка Шаттлворта, в котором он предложил сообществу свободного программного обеспечения создать в течении 2 ближайших лет интерфейс операционной системы, который был бы «приятнее» Mac OS X.
— в статье прослеживается четкое разделение между volunteer designers и dedicated designers, при этом первые не пользуются у автора особой лаской. Это интересно, потому что судя по словам Томаса, он таковым и является.
Читать дальше →

«Остекляем» Firefox 3 в Vista

Reading time1 min
Views714
­
Стеклянная панель кнопокСегодня речь пойдет об использовании некоторых преимуществ Firefox 3 (используется бета 5) в Vista, а именно — применение эффекта стекла Aero для панели инструментов.

Наткнулся я на это замечательное расширение на форуме "Мозилла Россия", и оттуда меня привело на форумы MozillaZine

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

Uz-Translations: иностранные языки, онлайн образование

Reading time1 min
Views2.7K


Уважаемые хабрапользователи, хочу представить вашему вниманию мой языковой проект: Uz-Translations — информационный блог для филологов и переводчиков. Сайт был запущен в 2004 году.

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

Буду рад услышать вашу критику и замечание в адрес сайта!

jQuery File Tree — браузер файлов на jQuery

Reading time1 min
Views5K
jQuery File Tree — это AJAX браузер файлов написанный на jQuery. Он полностью конфигурируемый, легок в установке и настройке. Внешний вид изменяется простым редактированием CSS. jQuery File Tree работает во всех браузерах, поддерживаемых jQuery. Он также полностью протестирован в Internet Explorer 6 / 7, Firefox 2, Safari 3 и Opera 9.



Дайте же мне почитать дальше!

Information

Rating
Does not participate
Location
Екатеринбург, Свердловская обл., Россия
Date of birth
Registered
Activity