По долгу службы мне приходиться трудиться много и в разных местах. На работе, дома и в командировках меня преследует одержимость моей работой. Я работаю в небольшой веб-студии и в мои задачи входит верстка сайтов и проектирование GUI для интранет-проектов. Не могу не упомянуть неоценимую помощь моих верных друзей, их имена iMac, Mac Pro и MacBook. В своей работе я использую джентльменский набор верстальщика в Mac OS X: Coda — для редактирования HTML/JavaScript и MAMP — для запуска локального веб-сервера. Но речь пойдет не о установке и настройке вышеперечисленных продуктов, а о том как облегчить жизнь разработчикам имеющим в своем парке два и более компьютера работающих под управлением Mac OS X.
dirtyHabrBobr @dirtyHabrBobr
Пользователь
+277
+228
Here be dragons: Управление памятью в Windows как оно есть [1/3]
8 мин
176KКаталог:
Один
Два
Три
Менеджер памяти (и связанные с ним вопросы контроллера кеша, менеджера ввода/вывода и пр) — одна из вещей, в которой (наряду с медициной и политикой) «разбираются все». Но даже люди «изучившие винду досконально» нет-нет, да и начинают писать чепуху вроде (не говоря уже о другой чепухе, написанной там же):
Грамотная работа с памятью!!! За все время использования у меня своп файл не увеличился ни на Килобайт. По этому Фаерфокс с 10-20 окнами сворачивается / разворачивается в/из трея как пуля. Такого эффекта я на винде добивался с отключенным свопом и с переносом tmp файлов на RAM диск.
Или к примеру μTorrent — у меня нет никаких оснований сомневаться в компетентности его авторов, но вот про работу памяти в Windows они со всей очевидностью знают мало. Не забываем и товарищей, производящих софт для слежения за производительностью и не имеющих ни малейшего понятия об управлении памятью в Windows (и поднявших по этому поводу истерику на пол интернета, на Ars-е даже был разбор полетов). Но самое потрясающее, что я видел всвязи с управлением памятью — это совет переместить pagefile на RAM-диск:
Из моих трех гигабайт под RAM disk был выделен один (на тот момент, когда на лаптопе еще была установлена XP), на котором я создал своп на 768МБ ...
Цель данной статьи — не полное описание работы менеджера памяти (не хватит ни места ни опыта), а попытка пролить хоть немного света на темное царство мифов и суеверий, окружающих вопросы управления памятью в Windows.
+316
Бесплатный курс Windows Phone 7 Jump Start
1 мин
720Все меньше времени остается до запуска Windows Phone 7 и все больше материалов для разработчиков появляется в открытом доступе.
Напомню, что российские разработчики могут регистрироваться в Windows Marketplace уже сейчас и с первого дня запуска смогут загружать свои приложения (как платные, так и бесплатные) для покупателей телефонов из других стран. Инструменты разработки являются полностью бесплатными.
Сегодня стали доступны все материалы курса Windows Phone 7 Jump Start – это 12 часовых уроков, которые полностью покрывают технические аспекты разработки приложений под новую платформу:
Напомню, что российские разработчики могут регистрироваться в Windows Marketplace уже сейчас и с первого дня запуска смогут загружать свои приложения (как платные, так и бесплатные) для покупателей телефонов из других стран. Инструменты разработки являются полностью бесплатными.
Сегодня стали доступны все материалы курса Windows Phone 7 Jump Start – это 12 часовых уроков, которые полностью покрывают технические аспекты разработки приложений под новую платформу:
- Introduction
- Building a Silverlight Application, Part 1
- Building a Silverlight Application, Part 2
- Building Games for the Windows Phone 7 Platform
- Building XNA Games for the Windows Phone 7 Platform, Part 1
- Building XNA Games for the Windows Phone 7 Platform, Part 2
- Advanced Application Development, Part 1
- Advanced Application Development, Part 2
- Advanced Application Development, Part 3
- Marketing Your Windows Phone 7 Application
- Working with Media
- Final Silverlight Topics and Wrap-Up
+35
(Часть 1) Преврати PSP в пульт д\у и геймпад для Windows
2 мин
7.4KВы — счастливый владелец консоли Sony PSP? Я расскажу Вам, как без лишних затрат всего за несколько минут обзавестись еще и пультом д\у для Вашего компьютера. А потратив еще немного времени, можно получить отличный геймпад.
+9
Pods — создаем любые типы контента в wordpress
1 мин
3.3KПлагин Pods позволяет вам создавать, управлять и отображать пользовательские типы контента в Wordpress. Подобно модулю Drupal CCK, эти типы контента могут связываться друг с другом.
В плагине реализованы: автоматическое разбиение на страницы, фильтры контента (Pod'ов), публичные формы, контроль доступа, редактирование меню, создание разделов сайта с использованием групповых символов (wildcards). Плагин находится в интенсивной разработке.
+2
Вопросы по PHP (собеседование)
1 мин
2.8KЗдравствуйте уважаемые ХабраЛюди!
Мой друг получил приглашение на собеседование на вакансию Web-Developer (PHP + MySQL), в связи с чем попросил меня найти ему как можно больше вопросов, которые могут появиться на интервью.
Я обращаюсь к вам с просьбой написать вопросы (типы вопросов, реальные вопросы или просто темы которым стоит уделить внимание). Особенно интересно было бы узнать реальный опыт прохождения интервью на подобную вакансию.
Заранее благодарен!
Мой друг получил приглашение на собеседование на вакансию Web-Developer (PHP + MySQL), в связи с чем попросил меня найти ему как можно больше вопросов, которые могут появиться на интервью.
Я обращаюсь к вам с просьбой написать вопросы (типы вопросов, реальные вопросы или просто темы которым стоит уделить внимание). Особенно интересно было бы узнать реальный опыт прохождения интервью на подобную вакансию.
Заранее благодарен!
+4
Правила Джоша (для деловых людей)
3 мин
1.4KПеревод
Список советов от эксперта по базам данных и члена группы разработчиков Джоша Беркуса (Josh Berkus), на мой взгляд, может оказаться полезным не только консультантам в области баз данных. Приведённые советы относятся к сфере взаимоотношений с клиентами. Некоторые рекомендации, как мне кажется, являются актуальными и для разработчиков-фрилансеров.
Джош Беркус является членом ядра группы разработчиков PostgreSQL (PostgreSQL Core Team) с 2002-го года. В данный момент он работает на Sun Microsystems, входя в группу, занимающуюся открытыми СУБД. До работы над PostgreSQL он работал с различными другими приложениями и технологиями, включая OpenOffice.org, Microsoft SQL Server, Oracle PL/SQL, и (о, ужас!) COM+.
Я провёл восемь лет, работая консультантом по базам данных. Так как в данный момент я представляю собой нечто другое и скоро могу всё позабыть, думаю, надо записать несколько полезных уроков, выученных мной за это время.
1. Состояние данных отражает состояние бизнеса. Покажите мне клиента с хроническими проблемами в базе данных — и я покажу вам клиента с хроническими проблемами в области менеджмента.
2. Три вещи, с которыми вам не придется столкнуться никогда:
3. Решения, принимаемые по отношению к базе данных, «живут» очень долго («нет ничего более постоянного, чем временное»): среднее время жизни «временного, одноразового» приложения баз данных составляет 4 года. Некоторые такие кусочки кода датируются 1960-ми и работают и по сей день. Так что сразу рассчитывайте на долгосрочное использование.
4. Плохие клиенты погубят ваш бизнес: умение вовремя распознать плохого клиента и отказаться от него или вовремя расторгнуть контракт — это половина успеха. Будьте готовы сбежать в любую минуту.
Джош Беркус является членом ядра группы разработчиков PostgreSQL (PostgreSQL Core Team) с 2002-го года. В данный момент он работает на Sun Microsystems, входя в группу, занимающуюся открытыми СУБД. До работы над PostgreSQL он работал с различными другими приложениями и технологиями, включая OpenOffice.org, Microsoft SQL Server, Oracle PL/SQL, и (о, ужас!) COM+.
Я провёл восемь лет, работая консультантом по базам данных. Так как в данный момент я представляю собой нечто другое и скоро могу всё позабыть, думаю, надо записать несколько полезных уроков, выученных мной за это время.
1. Состояние данных отражает состояние бизнеса. Покажите мне клиента с хроническими проблемами в базе данных — и я покажу вам клиента с хроническими проблемами в области менеджмента.
2. Три вещи, с которыми вам не придется столкнуться никогда:
- слишком мягкие временные рамки;
- клиент, который платит слишком быстро;
- точная и полная спецификация.
3. Решения, принимаемые по отношению к базе данных, «живут» очень долго («нет ничего более постоянного, чем временное»): среднее время жизни «временного, одноразового» приложения баз данных составляет 4 года. Некоторые такие кусочки кода датируются 1960-ми и работают и по сей день. Так что сразу рассчитывайте на долгосрочное использование.
4. Плохие клиенты погубят ваш бизнес: умение вовремя распознать плохого клиента и отказаться от него или вовремя расторгнуть контракт — это половина успеха. Будьте готовы сбежать в любую минуту.
+42
+102
Вышел релиз ExtJS 1.1
1 мин
564Данная версия включает саму библиотеку, простой WYSIWYG HTML редактор, новый класс Ext.Ajax utility, улучшенные компоненты DateField and DatePicker а также расширенную документацию и исправления.
Самое приятное нововведение – независимость библиотеки от сторонних продуктов и минимальный размер базовой библиотеки (36 KB).
+9
ExtJS по-русски
1 мин
2.8KЕсли еще есть javascript-разработчики, незнакомые с библиотекой ExtJS (http://extjs.com), то пора бы это сделать. Но а если серьезно, то в предверии выхода альфа версии ветки ExtJS 2.0 в рунете, благодаря добрым людям, появился русскоязычный ресурс, посвященный этой библиотеке: extjs.ru
+9
Обновлен Seagull PHP Framework
3 мин
1.1KСовсем недавно в свет вышла новая версия этого фреймворка за номером 0.6.2. Более 4х месяцев потребовалось для разработки, но несмотря на отсутствие коренных измнений, в фреймворк добавлены многие полезные фичи, которые в основном коснулись работы с Ajax.
Если вы уже знакомы с Seagull, настоятельно советую ознакомиться с новой версией по ссылке www.seagullproject.org/publisher/articleview/action/view/frmArticleID/80
А если нет — я проведу небольшой обзор этого мощного, но слабо раскрученого фреймворка.
+3
Symphony — WEB 2.0 платформа для веб разработчиков
1 мин
3.4KОбновилась SYMPHONY до версии 1.7.
Symphony ето уникальная в своем роде система, созданная специально для веб разработчиков с учетом последнего слова WEB 2.0. Система очень гибкая в настройке и оптимизации. Она позволит вам настроить всё по вашему вкусу включая структуру URI не ограничивая вас стандартным набором функций.
Symphony ето уникальная в своем роде система, созданная специально для веб разработчиков с учетом последнего слова WEB 2.0. Система очень гибкая в настройке и оптимизации. Она позволит вам настроить всё по вашему вкусу включая структуру URI не ограничивая вас стандартным набором функций.
+3
Материалы MoscowJS 12
1 мин
9.3KДвенадцатый митап MoscowJS прошёл 26 июня в офисе компании Mail.ru. На встрече выступили ребята из Яндекса, Mail.ru и Tai.st. Говорили об облаках, оптимизациях мобильного веба и, конечно, расчёсках! Мы собрали видео и другие материалы события в одном посте.
Вот как это было…
Вот как это было…
+23
Что такое grep и с чем его едят
6 мин
665KЭта заметка навеяна мелькавшими последнее время на хабре постами двух тематик — «интересные команды unix» и «как я подбирал программиста». И описываемые там команды, конечно, местами интересные, но редко практически полезные, а выясняется, что реально полезным инструментарием мы пользоваться и не умеем.
Небольшое лирическое отступление:
Года три назад меня попросили провести собеседование с претендентами на должность unix-сисадмина. На двух крупнейших на тот момент фриланс-биржах на вакансию откликнулись восемь претендентов, двое из которых входили в ТОП-5 рейтинга этих бирж. Я никогда не требую от админов знания наизусть конфигов и считаю, что нужный софт всегда освоится, если есть желание читать, логика в действиях и умение правильно пользоваться инструментарием системы. Посему для начала претендентам были даны две задачки, примерно такого плана:
— поместить задание в крон, которое будет выполняться в каждый чётный час и в 3 часа;
— распечатать из файла /var/run/dmesg.boot информацию о процессоре.
К моему удивлению никто из претендентов с обоими вопросами не справился. Двое, в принципе, не знали о существовании grep.
Поэтому… Лето… Пятница… Перед шашлыками немного поговорим о grep.
Небольшое лирическое отступление:
Года три назад меня попросили провести собеседование с претендентами на должность unix-сисадмина. На двух крупнейших на тот момент фриланс-биржах на вакансию откликнулись восемь претендентов, двое из которых входили в ТОП-5 рейтинга этих бирж. Я никогда не требую от админов знания наизусть конфигов и считаю, что нужный софт всегда освоится, если есть желание читать, логика в действиях и умение правильно пользоваться инструментарием системы. Посему для начала претендентам были даны две задачки, примерно такого плана:
— поместить задание в крон, которое будет выполняться в каждый чётный час и в 3 часа;
— распечатать из файла /var/run/dmesg.boot информацию о процессоре.
К моему удивлению никто из претендентов с обоими вопросами не справился. Двое, в принципе, не знали о существовании grep.
Поэтому… Лето… Пятница… Перед шашлыками немного поговорим о grep.
+160
Nginx на стероидах — расширяем функционал с помощью LUA
9 мин
54KДля обеспечения работы всех наших внешних продуктов мы используем популярный nginx. Это быстро и это надежно. Проблем с ним почти нет. Наши продукты также постоянно развиваются, появляются новые сервисы, добавляется новый функционал, расширяется старый. Аудитория и нагрузка только растет. Сейчас мы хотим рассказать о том, как мы ускорили разработку, неплохо увеличили производительность и упростили добавление в наши сервисы этого нового функционала, при этом сохранив доступность и отказоустойчивость затронутых приложений. Речь пойдет о концепции “nginx as web application”.
А именно, о сторонних модулях (в основном LUA), позволяющих делать совершенно магические вещи быстро и надежно.
А именно, о сторонних модулях (в основном LUA), позволяющих делать совершенно магические вещи быстро и надежно.
+66
RESTful API на Node.js + MongoDB
16 мин
258KТуториал
Я, будучи разработчиком мобильных приложений, часто нуждаюсь в backend-сервисах для хранения пользовательских данных, авторизации и прочего. Конечно, для подобных задач можно использовать BaaS (Parse, Backendless, etc…). Но свое решение — это всегда более удобно и практично.
И я все же решил изучить совершенно неизвестные для меня технологии, которые сейчас весьма популярны и позиционируются, как легко осваиваемые новичками и не требующие глубоких знаний и опыта для реализации масштабных проектов. Вот и проверим вместе, может ли неспециалист написать свой эффективный и правильный бэкенд.
В данной статье будет рассмотрено построение REST API для мобильного приложения на Node.js с использованием фреймворка Express.js и модуля Mongoose.js для работы с MongoDB. Для контроля доступа прибегнем к технологии OAuth 2.0 с помощью модулей OAuth2orize и Passport.js.
Пишу с позиции абсолютного новичка. Рад любым отзывам и поправкам по коду и логике!
И я все же решил изучить совершенно неизвестные для меня технологии, которые сейчас весьма популярны и позиционируются, как легко осваиваемые новичками и не требующие глубоких знаний и опыта для реализации масштабных проектов. Вот и проверим вместе, может ли неспециалист написать свой эффективный и правильный бэкенд.
В данной статье будет рассмотрено построение REST API для мобильного приложения на Node.js с использованием фреймворка Express.js и модуля Mongoose.js для работы с MongoDB. Для контроля доступа прибегнем к технологии OAuth 2.0 с помощью модулей OAuth2orize и Passport.js.
Пишу с позиции абсолютного новичка. Рад любым отзывам и поправкам по коду и логике!
Содержание
- Node.js + Express.js, простой web-сервер
- Error handling
- RESTful API endpoints, CRUD
- MongoDB & Mongoose.js
- Access control — OAuth 2.0, Passport.js
+38
Идеальный css-framework. Maxmertkit widget manager – build your own framework
10 мин
12KДобрый день!
Как и обещал некоторое время назад, я выпустил бету maxmertkit widget manager. Я давно хотел npm или gem, но для css. Добавил несколько зависимостей в json-файл, набрал команду и все установилось. Это быстро и удобно. Хороших решений я не нашел, значит пора реализовать свое. Пока не начал, ссылки на статьи о том, с чего все начиналось – первая и вторая статьи. Можно не читать, кратко я все перескажу здесь. Можно сразу зайти на портал и разобраться что к чему, а также посмотреть видео – www.maxmertkit.com.
+19
Переход на Selenium 2 + PhantomJS
3 мин
23KВ этом посте я запишу, как я переходил с Selenium RC на Selenium 2. Переход был мотивирован использованием PhantomJS в качестве браузера. В PhantomJS встроен Ghost Driver, который является WebDriver в том смысле, который использует Selenium 2. Но мои предыдущие тесты PHPUnit использовали класс PHPUnit_Extensions_SeleniumTestCase, который не умеет работать с WebDriver. Нужно было его заменить на PHPUnit_Extensions_Selenium2TestCase вместе со всем синтаксисом тестов.
+10
Информация
- В рейтинге
- Не участвует
- Откуда
- Россия
- Зарегистрирован
- Активность