Pull to refresh

Инвертирование страницы только средствами CSS

Reading time2 min
Views7.3K
Я недавно увидела jQuery-плагин Paul Irish для инвертирования страницы. Он инвертирует каждый цвет на странице, включая изображения и CSS. Это мне напомнило о существовании ключевого слова invert для цвета контуров (outline) (к сожалению, поддерживаемом только в Opera и IE9+). В общем, я задумалась, как можно добиться такого же эффекта только средствами CSS.

Оказалось, что это достаточно просто:
Читать дальше →
Total votes 51: ↑45 and ↓6+39
Comments24

iOS tips and tricks: Динамический Default.png

Reading time2 min
Views3.4K
При разработке под iOS время от времени у заказчиков, да и у некоторых программистов возникает закономерный вопрос: «А можно ли каким-нибудь образом при старте приложения подменять картинку?».

Немного порыскав по интернету, и покопавшись в документации, то напрашивается ответ, что сделать это невозможно по следующим причинам:
  • Файл, который показывается при запуске приложения лежит внутри папки приложения, и, ак следовательно переписать его не является возможным
  • По аналогичной причине нельзя изменить файл Info.plist, в котором сохраняется относительный путь к файлу стартовым изображением

Однако, все же, это возможно сделать стандартными способами, без всякого рода Jailbreak'а. Впрочем, как и у каждого решения есть свои плюсы, минусы и особенности.

Читать дальше →
Total votes 7: ↑4 and ↓3+1
Comments10

Как я использую git

Reading time6 min
Views90K

Intro


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


  • git add <path>
  • git commit
  • git checkout <path/branch>
  • git checkout -b <new branch>

И дополнительно:


  • git push/pull
  • git merge <branch>
  • git rebase master (а что, можно еще и на другие ветки ребейзить? О_о)

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

Читать дальше →
Total votes 117: ↑106 and ↓11+95
Comments195

7 трюков при работе с массивами в Ruby

Reading time2 min
Views29K
ruby arrays

В данной статье описаны некоторые интересные трюки как можно эффективно использовать и работать с массивами в Ruby. Конечно же, есть РубиДок и множество других ресурсов, где подробно описаны все доступные методы, но здесь я хочу поделиться именно способами использования.
Читать дальше →
Total votes 39: ↑28 and ↓11+17
Comments6

5 приемов и хитростей для работы с SSH и кое-что ещё

Reading time8 min
Views22K
image

В этой статье мы поговорим о полезных приемах и командах при работе с SSH. А именно:

  • Как использовать двухфакторную аутентификацию для SSH-подключений.
  • Безопасное использование «проброса ключа» (agent forwarding).
  • Завершение зависшей сессии.
  • Оставляем терминал открытым при выходе или разрыве связи.
  • Расшариваем удаленный терминал с другом (без Zoom!).
Читать дальше →
Total votes 37: ↑29 and ↓8+21
Comments7

TypeScript: Раскладываем tsconfig по полочкам. Часть 2 — Всё про строгость

Reading time18 min
Views34K

В данной статье я хочу предоставить переработанную и упорядоченную выжимку документации по настройке "флагов строгости" tsconfig.json. Статья будет полезна как тем, кто только начинает работать с TypeScript, так и тем кто уже давно работает, но при этом использует конфиг по умолчанию. Для разработчиков, которые хорошо ориентируются в вопросах строгости в TypeScript статья может открыть некоторые тонкости работы флагов и послужить шпаргалкой.

Читать далее
Total votes 16: ↑16 and ↓0+16
Comments5

Хуки времени компиляции в Elixir

Reading time5 min
Views1.4K

Elixir снабжен сложной, очень хорошо продуманной, инфраструктурой макросов. С легкой руки Криса Маккорда, в сообществе существует негласный закон, который неизбежно озвучивается сразу, как только речь заходит о макросах: «Первое правило использования макросов — вы не должны их использовать». Иногда с малозаметной ремаркой, набранной бледно-серым шрифтом четвертого кегля: «только если вам этого не избежать, и вы очень хорошо понимаете, на что идете, и чем рискуете». Это связано с тем, что макросы имеют доступ ко всему AST модуля, в котором они используются, и, вообще говоря, могут до неузнаваемости изменить получившийся код.


Я в принципе согласен, что не следует использовать макросы в процессе ознакомления с языком. Пока вы не можете, будучи разбуженным в три часа ночи с похмелья, ответить на вопрос, выполняется ли этот код на стадии компиляции, или же в рантайме. Elixir — компилируемый язык, и в процессе компиляции происходит выполнение кода «верхнего уровня», полное раскрытие синтаксического дерева до тех пор, пока мы не окажемся в ситуации, когда дальше раскрывать уже нечего, и вот этот результат в конечном итоге и компилируется в BEAM. Когда компилятор встречает вызов макроса в исходном коде, он полностью раскрывает AST для него и впихивает вместо собственно вызова. Понять это невозможно, это можно только запомнить.

Не, попробуем разобраться и понять...
Total votes 13: ↑12 and ↓1+11
Comments2

Нарастающий итог в SQL

Reading time10 min
Views131K
Нарастающий (накопительный) итог долго считался одним из вызовов SQL. Что удивительно, даже после появления оконных функций он продолжает быть пугалом (во всяком случае, для новичков). Сегодня мы рассмотрим механику 10 самых интересных решений этой задачи – от оконных функций до весьма специфических хаков.
Читать дальше →
Total votes 54: ↑52 and ↓2+50
Comments49

Приёмы в проектировании пользовательского интерфейса, которые сэкономят время

Reading time4 min
Views7.4K
В переводе этой статьи автор приводят ряд советов и приёмов, которые упростят жизнь при проектировании дизайна пользовательского интерфейса. В статье даны сведения о полезных и экономящих время возможностях работы таких программ как Sketch, Adobe Illustrator, Figma, Adobe XD.


Читать дальше →
Total votes 7: ↑7 and ↓0+7
Comments1

The Collatz conjecture is the greatest math trick of all time

Reading time4 min
Views3.1K

On the Internet and in non-fiction literature you can often find various mathematical tricks. The Collatz conjecture leaves all such tricks behind. At first glance, it may seem like some kind of a trick with a catch. However, there is no catch. You think of a number and repeat one of two arithmetic operations for it several times. Surprisingly, the result of these actions will always be the same. Or, may be not always?

Read more
Total votes 7: ↑7 and ↓0+7
Comments2

Antique toY #05, Звукоимитация на ZX Spectrum

Reading time1 min
Views1K
Tricks: Звукоимитация в музыке на ZX Spectrum. Особенности и приёмы звукоимитации на музыкальном сопроцессоре AY-8910.

У микрофона — Siril^4D (a.k.a. oisee).

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

Читать дальше →
Total votes 10: ↑6 and ↓4+2
Comments8

Tips & tricks CakePHP #2

Reading time3 min
Views1.5K
В связи с выходом пре-беты 1.2 второй выпуск tips&tricks. Продолжаем знакомить Вас с идеями и проблемами версии 1.2, особенностями пре-беты, с которыми мы встретились в процессе разработки социальной сети.
Кроме того, мы завели себе блог на Хабре — присоединяйтесь, задавайте вопросы. Думаю, нам есть что обсудить.
Читать дальше →
Total votes 8: ↑7 and ↓1+6
Comments19

Firefox3. 5 штучек помогающих выжить

Reading time2 min
Views543
Все любят Firefox, особенно за то, что его можно постоянно улучшать самому, без спроса у производителя. (Хотя Опера тоже такое, вроде разрешает, но Опера не наш выбор). В новой версии всякого наменялось, но исследователи глубин FF уже нашли методы как упростить или украсить свой браузер. Достаточно лишь понимать, что хотим и зачем мы это хотим. ;)

1. Автоподстановка в адресной строке при вводе.
* Введите about:config в адресной строке.
* Нажмите “Я обещаю, что буду осторожен!”. (англ. вариант “I’ll be careful, I promise!”)
* Введите в поле поиска текст browser.urlbar.autoFill. Двойной клик по записи установит значение равным true.

Теперь у вас будет не только выпадающий список адресов, но и автоподстановка похожего адреса.

2. Включаем проверку правописания в текстовых полях

По умолчанию Firefox проводит проверку только в многострочных полях. Если Вы хотите, чтобы Firefox проверял и однострочные поля, то вот:
* Введите about:config в адресной строке.
* Нажмите “Я обещаю, что буду осторожен!”. (англ. вариант “I’ll be careful, I promise!”)
* введите в поле поиска текст layout.spellcheckDefault. Двойной клик по записи и установите значение равным 2.
3. Тюним режим full screen

По умолчанию Firefox 3 прячет адресную строку, когда вы в полноэкранном режиме. Исправляем:
* Введите about:config в адресной строке.
* Нажмите “Я обещаю, что буду осторожен!”. (англ. вариант “I’ll be careful, I promise!”)

ведите в поле поиска текст browser.fullscreen.autohide Двойной клик по записи установит значение равным false.
* для отключения анимации при скрытии установите browser.fullscreen.animateUp равным 0.
4. Включаем поддержку профилей цвета
Теперь Firefox3 есть поддержка профилей цвета, которые помогут лучше отображать графические изображения. Включаем:
* Введите about:config в адресной строке.
* Нажмите “Я обещаю, что буду осторожен!”. (англ. вариант “I’ll be careful, I promise!”)
* ведите в поле поиска текст gfx.color_management.enabled Двойной клик по записи установит значение равным true.
5. Уменьшаем размер кнопки назад

Меня лично раздражает сей огромный баттон, исправляем: щелчком мыши по правой кнопке на тулбаре и выбираем “Настроить”. Нажимаем чекбокс с “маленькие иконки”. Помогает

Оригинал

к коментарию ckald
Эта фича позволяет ускорить загрузку страниц на 10-40%. Работала в старых версиях ФФ, но как в 3 — сам не пробовал.

1. Запускаем Firefox
2. В адресной строке пишем about:config и жмем Enter
3. Для версий ниже 1.5 находим параметр browser.tabs.showSingleWindowModePrefs
4. Двойным щелчком мыши устанавливаем значение равным true.
5. Находим параметры: network.http.pipelining, network.http.proxy.pipelining
6. Двойным щелчком мыши устанавливаем значения обоих равным true.
7. Ищем network.http.pipelining.maxrequests
8. Двойным щелчком мыши открываем редактирование и меняем значение с 4 на 100.
Total votes 25: ↑20 and ↓5+15
Comments9

Отдыхая — учусь, работая — отдыхаю

Reading time2 min
Views1.5K
Вся наша жизнь — это рабочие дни разбавленные выходными и праздниками.
А наш рабочий день — это череда часов, минут, секунд.
Наверное каждый из нас слышал о производственной гимнастике:
каждые час-два, минут на пятнадцать (вместо перекуров), хорошо бы дать отдохнуть глазам, кистям, а ещё спине и ногам.
А хорошо бы совместить полезные упражнения с получением новых навыков — и практичных и эстетичных.
Я сейчас перечислю те занятия, которыми пытаюсь заниматься сам.
По моему мнению упомянутые ниже упражнения не требуют материальных затрат и лишь минимум временных.
Дополняйте, плиз.
Читать дальше →
Total votes 75: ↑63 and ↓12+51
Comments87

Windows 7 Tips and Tricks ;)

Reading time3 min
Views8.1K
Салют Хабралюди, хабражители :)

Продолжая рубрику статей посвященных Windows 7, решил предаставить сборник несколько полезностей которые могут облегчить работу в этой ОСи.

image

Итак приступим
Читать дальше →
Total votes 155: ↑83 and ↓72+11
Comments132

Opera Unite для разработчиков

Reading time9 min
Views871
imageА не написать ли нам какой-нибудь сервис под Опера Юнайт? Здесь я расскажу об особенностях программирования под новинку от Оперы на примере своего сервиса "Stream media". Официальная документация пока что неполная и содержит много ошибок, и в этой статье мы попытаемся их обойти.
image
Далее, будем вникать в технологию постепенно. Желательно, чтобы Вы уже прочли мануал по созданию первого приложения, поскольку некоторые очевидные факты здесь опускаются.
Читать дальше →
Total votes 62: ↑55 and ↓7+48
Comments4

19 необщеизвестных приёмов

Reading time5 min
Views2.1K
Заметка не новая, но я уверен, что и сейчас не все знают всё нижеперечисленное (Здесь и далее курсив переводчика).

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

Замер скорости в контроллерах — это очень просто. Используйте метод benchmark в любой модели.
Читать дальше →
Total votes 41: ↑32 and ↓9+23
Comments30

Побит рекорд самого короткого кода по определению IE

Reading time1 min
Views3.3K
Без малого год назад, я уже писал (http://habrahabr.ru/blogs/javascript/50544/) о самом коротком способе определение браузера Internet Explorer, но вот некто Aleko нашел еще более короткий вариант:

-[1,]

Всего 5 байт. Пример использования:
if(-[1,]){
alert("Not IE!");
}
Total votes 196: ↑178 and ↓18+160
Comments76
1