Как стать автором
Обновить
0
0
clumsy @clumsy

Пользователь

Отправить сообщение

Обзор инфраструктуры Кремниевой долины

Время на прочтение11 мин
Количество просмотров8.1K

Введение


Последние четыре года я живу и работаю программистом в США, в Кремниевой долине. За это время у меня скопились некоторые наблюдения, которыми я бы хотел поделиться. Я сосредоточусь на вопросах инфраструктуры: как там с транспортом, интернетом, дорогами, преступностью, водой, развлечениями и т. п. Я буду рассказывать лишь о том, с чем встретился сам. Надеюсь, этот пост будет интересен специалистам, думающим о работе в долине.

Читать дальше →
Всего голосов 340: ↑336 и ↓4+332
Комментарии361

Более ста тысяч человек подписались на открытые занятия по искусственному интеллекту

Время на прочтение1 мин
Количество просмотров1.9K

Новость о том, что первый полный курс академии Стэнфорд будет доступен в Интернете, стала вирусной. В течение недели на него подписалось более ста тысяч человек со всего мира. Поскольку новости относительно курса продолжают распространяться, в конечном итоге размер класса может разрастись до эпических размеров — мы сможем легко увидеть, как он достигнет 200 тысяч, 300 или больше. Классы 1 миллиона или десятков миллионов могут быть в нашем будущем. Если Стэнфорд может обучать за раз от ста тысяч студенты, что это будет означать для образования вообще?
Читать дальше →
Всего голосов 43: ↑39 и ↓4+35
Комментарии32

App Store — получение денег

Время на прочтение2 мин
Количество просмотров32K
Когда мы только начинали заниматься вопросом создания приложений для iPhone/iPod Touch, остро стоял вопрос легализации получения денег, т.к. яблочники их отправляют только на банковский счет.
Аккаунт мы регистрировали на физлицо, но, в связи с нашим интересным законодательством, проблема абсолютно актуальна и для аккаунтов компаний.

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

Итак, есть 2 основных варианта открытия валютного счета для получения денег из-за границы SWIFT-переводом: счет предприятия (ЧП, ООО, ОАО — без разницы) и счет физлица (частного лица).

Больше под катом
Всего голосов 51: ↑44 и ↓7+37
Комментарии117

OAuth: описание протокола простым и понятным языком

Время на прочтение16 мин
Количество просмотров190K
OAuth — популярный протокол, который позволяет социальным сервисам интегрироваться между собой и дает безопасный способ обмена персональной информацией. OAuth может связать между собой 2 сервиса, каждый из которых имеет свою пользовательскую базу — именно их я в данном случае называю «социальными». Когда начинаешь работать с OAuth, первое ощущение — что протокол весьма сложен и избыточен. В этой статье я попытаюсь объяснить основы OAuth человеческим языком.

Пример кросс-авторизации


Вернемся в 2005-й год и представим, что мы пишем социальную сеть. В ней имеется форма импорта контактов из адресной книги GMail. Что нужно для доступа к контактам GMail? Конечно, логин и пароль от ящика. Но если мы попросим ввести их на нашем сайте, пользователь заподозрит неладное. Где гарантия, что мы не сохраняем на сервере введенные пароли? Поэтому нам хочется, чтобы пароль вводился только на сайте GMail, и после этого доступ к контактам через API GMail предоставлялся нашей социальной сети (возможно, на время).
Под катом - повествование с примерами
Всего голосов 134: ↑124 и ↓10+114
Комментарии34

Использование инерциальной навигационной системы (ИНС) с несколькими датчиками на примере задачи стабилизации высоты квадрокоптера

Время на прочтение8 мин
Количество просмотров84K
В данной статье я постараюсь рассказать о своем опыте создания и реализации алгоритма для обработки сигналов с нескольких стандартных датчиков, входящих в состав ИНС (в английской версии IMU), для решения задачи стабилизации высоты многороторного летательного аппарата (в моем случае — квадрокоптера). На хабре уже был ряд статей, описывающих, что это за игрушка и как её сделать самому. Как программисту по профессии, мне было интересно не только его собрать, но и поковыряться в «мозгах» и сделать что-то полезное для сообщества. В качестве «мозгов» я выбрал Arduino и замечательный проект MultiWii. Он полностью открытый, динамично развивается, но в нем пока есть «белые пятна». Например, неудовлетворительно работает стабилизация положения по высоте. И я решил разобраться, можно ли с имеющимся оборудованием улучшить эту часть системы.
Читать дальше →
Всего голосов 38: ↑37 и ↓1+36
Комментарии37

Почему стоит пользоваться PDO для работы с базой данных

Время на прочтение9 мин
Количество просмотров323K

Перевод статьи Why you Should be using PHP’s PDO for Database Access.

Множество PHP-разработчиков привыкли использовать для работы с базами данных расширения mysql и mysqli. Но с версии 5.1 в PHP существует более удобный способ — PHP Data Objects. Этот класс, сокращенно именуемый PDO, предоставляет методы для работы с объектами и prepared statements, которые заметно повысят вашу продуктивность!

Введение в PDO


«PDO – PHP Data Objects – это прослойка, которая предлагает универсальный способ работы с несколькими базами данных.»

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

Эта статья написана для людей, которые пользуются mysql и mysqli, чтобы помочь им в переходе на более мощный и гибкий PDO.
Читать дальше →
Всего голосов 127: ↑115 и ↓12+103
Комментарии165

Отказоустойчивый IP-адрес с помощью ucarp

Время на прочтение4 мин
Количество просмотров48K

Задача


Требуется обеспечить работоспособность определённого IP-адреса (шлюза, важного сервера и т.д.) при пропадании связи с устройством, которому этот адрес первоначально принадлежит, с помощью резервных устройств.

В статье для этой цели будут использованы Debian Linux, протокол CARP и утилита ucarp.
Читать дальше →
Всего голосов 30: ↑29 и ↓1+28
Комментарии25

Чёртова дюжина советов начинающим верстальщикам. Часть вторая

Время на прочтение6 мин
Количество просмотров5.5K
Доброго времени суток!

О том, что вы читаете


Вот оно и свершилось — перед вами продолжение советов начинающим верстальщикам. Если вы не читали первую часть, то можете сделать это прямо сейчас.
В данной части вы ознакомитесь ещё с 11 советами (именно столько в моей второй заметке их находится).
Сперва мы пройдём нововведения в визуализации, а затем пофилосовствуем на тему семантики.

Ещё немного лирики


После выхода первой части я получил огромное количество feedback'a. Если честно, я не ожидал такого желания изучить что-то новое. Да-да, быдлокодеры там тоже есть. Но сейчас не об этом…
Также, как вы можете заметить, что количество человек, добавивших мой топик в избранное достигло миллиона, достаточно велико, что не может не свидетельствовать об огромном интересе к HTML5. Итак, поехали.
Читать дальше →
Всего голосов 115: ↑86 и ↓29+57
Комментарии51

Подборка html/javascript/css инструментов и библиотек от SmashingMagazine

Время на прочтение5 мин
Количество просмотров22K
Разработка вебинтерфейсов дело не самое легкое. Причем начать вроде бы несложно, а вот добиться совершенства поистинне проблематично. Уж очень многое необходимо учесть. Просто масса настроек и ньюансов, в которых легко запутаться и сделать что-то не так. К счастью, разработчики и дизайнеры склонны упрощать этот нелегкий труд и постоянно изобретают всяческие инструменты позволяющие сделать больше и лучше за то же самое время, а главное не погрязнуть в мелочах и состредоточиться на чем-то более важном.

Множество удобных инструментов, найденных командой популярного онлайн журнала SmashingMagazine, приводится под катом
Читать дальше →
Всего голосов 125: ↑123 и ↓2+121
Комментарии19

LRU, метод вытеснения из кэша

Время на прочтение3 мин
Количество просмотров114K
К сожалению, в очередной раз заметил, что почти все мои коллеги не знают, что такое LRU, и как реализовать кэш определенного размера. Поэтому я решил написать небольшую статью, где расскажу как быстро реализовать метод LRU, и не вынуждать коллег вручную сбрасывать кэш там, где не требуется.

Мы будем под кэшированием понимать сохранение результатов вычислений в ответ на некоторые запросы. То есть, повторный результат запроса не всегда вычисляется заново, но иногда берется из таблицы, называемой кэшем. Сложно переоценить роль кеширования в современных системах. При этом часто возникает проблема, связанная с недостатком памяти. Действительно, что делать, если запросов много, а памяти хватает лишь для хранения ограниченного числа результатов? В этом случае, как правило, кеш стрится следующим образом. Фиксируется размер кэша, пусть будет N, и сохраняются результаты только для N самых «популярных» запросов.

То есть сохраняются результаты вычислений, которые скорее всего запросят заново.
Как определять эти «популярные» запросы? Наиболее известным способом является LRU, о котором я и расскажу в этой статье.
Читать дальше →
Всего голосов 32: ↑28 и ↓4+24
Комментарии9

Чёртова дюжина советов начинающим верстальщикам. Часть первая

Время на прочтение6 мин
Количество просмотров32K
Доброго времени суток!

Введение


Я являюсь фрилансером. Раньше я не особо задумывался над тем, как и что делают верстальщики. Я делал серверную часть, а мой друг верстал и набивал контент. Совсем недавно мне захотелось попробовать «что и как». Пару дней назад мне на глаза попался материал, который мне очень понравился. Он наглядно обЪяснял, что и как нужно писать. К сожалению, сылку дать не могу, так как я не запаомнил, где располагался сей мануал, но… Казалось бы, можно это и запомнить, но я пошёл ещё одним путём — законспектировал это дело. Собственно, добро пожаловать в мою записку.
Читать дальше →
Всего голосов 233: ↑192 и ↓41+151
Комментарии186

Новичкам про управление шириной канала в Linux

Время на прочтение7 мин
Количество просмотров73K
Некоторое время назад меня попросили настроить в удаленном филиале простейшую балансировку трафика. Работают они, бедолаги, через ADSL, и отправка электронных писем большого объема (сканы документов) забивает им весь обратный канал, что приводит к проблемам в работе с офисными онлайн-программами через VPN.
В качестве шлюза у них используется Linux (Fedora). До этого я пару раз видел, как подобная балансировка настраивается через ipfw на FreeBSD, а так как знаю механизм iptables достаточно хорошо, не ожидал особых проблем. Но поискав в Интернете, я был неприятно удивлен тем, что iptables мне тут совсем не помощник. И знания о порядке прохождения пакетов через его таблицы и правила мне почти не пригодятся. Нужно изучать tc из пакета iproute2.

Неожиданно для себя, я потратил два дня, для того чтобы более-менее разобраться в балансировке трафика средствами iproute2. Сначала попалась не самая лучшая для новичка статья про HTB(здесь). Различные примеры из Интернет тоже порой вводили в ступор, так как в них часто не было описания конкретных опций или смысла их применения. Поэтому я и попытался собрать полученные мною знания в одну статью, а главное описать все на доступном для новичков уровне.
Читать дальше →
Всего голосов 115: ↑109 и ↓6+103
Комментарии21

Первая работающая атака на SSL/TLS-протокол

Время на прочтение8 мин
Количество просмотров56K
Передаваемые по SSL-соединению данные можно расшифровать! Для этого Джулиану Риццо и Тай Дуонгу удалось использовать недоработки в самом протоколе SSL. И пусть речь пока не идет о полной дешифровке трафика, разработанная ими утилита BEAST может извлечь из зашифрованного потока то, что представляет собой наибольший интерес, — секретные кукисы с идентификатором сессии пользователя.


Читать дальше →
Всего голосов 84: ↑77 и ↓7+70
Комментарии22

Слайдинг экранов с помощью ViewPager

Время на прочтение4 мин
Количество просмотров83K
Вступление

Горизонтальная прокрутка экранов — удобная и модная вещь. На Хабре уже был топик, посвященный данной теме. Однако использование ViewFlipper не позволяет с легкостью добиться эффекта привязки, когда экраны двигаются вместе с пальцем. Также нужен механизм автоматической доводки экранов в ту или иную сторону. Примера, где это было бы хорошо разъяснено и реализовано, так и не нашел. В комментариях предлагали посмотреть исходники гугловского кода, где это реализовано. Однако удобнее было бы воспользоваться готовым решением. Такой механизм реализован в Android Support Package. Использовать эту библиотеку можно для версий Android 1.6 и старше. Конкретно нам понадобятся классы ViewPager и PagerAdapter.
Читать дальше →
Всего голосов 40: ↑37 и ↓3+34
Комментарии26

Лондонский филармонический оркестр исполнил музыку из компьютерных игр

Время на прочтение2 мин
Количество просмотров7K
2го сентября 2011 года в Royal Festival Holl лондонский филармонический оркестр исполнил композиции из популярных компьютерных игр. Это представление стало частью фестиваля Vision Sound Music

Видео анонса:



Под катом список композиций.

Читать дальше →
Всего голосов 77: ↑73 и ↓4+69
Комментарии84

Шортики — короткие и смешные, или как мы готовили сайт к Хабраэффекту

Время на прочтение7 мин
Количество просмотров3.1K


Намба 0: Вступление

Однажды, задумчиво листая башорг, я вдруг понял, что большинство цитат довольно длинные и очень часто их просто лень читать. В наш век всеобщей спешки — на это уходит много времени. Таким образом родился новый формат: Шортики (от английского слова Short — короткий). Шортик — это короткая (из одного-двух предложений) шутка, жестко ограниченная 255 символами (чтобы не повадно было).

Как раз в этот момент я хотел подучить программирование и искал несложную задачу. Сайт я накидал довольно быстро — за пару вечеров, рассказал о нем коллегам по работе и паре знакомых в IRC, и собирался уже о нем забыть, как вдруг обнаружил, что за два дня сайт посетило 500 человек, из которых чуть ли не треть подписалась на RSS. Стало понятно, что концепция людям понравилась. Немного прилизав сайт внешне, я решился показать его Хабрасообществу — Шортики — короткие и смешные, прошу любить и жаловать.

P.S. Учитывая то, что это не совсем стартап (проект пока некоммерческий, да и «стартап» — слишком громкое слово для моей поделки), приобретенная за годы пребывания на сайте хабрасовесть не позволила мне написать нетехническую статью. Поэтому, под катом вас ждет занимательная история о том, как мы готовили Шортики к Хабраэффекту.

Читать дальше →
Всего голосов 230: ↑193 и ↓37+156
Комментарии205

Правильная работа с БД в Android

Время на прочтение7 мин
Количество просмотров153K
Приветствую всех дроидеров в эти непростые для нас времена.
Честно говоря, заколебала эта шумиха о патентах, войнах и т.д., но в данной статье речь пойдет не об этом.
Я не собирался писать статью на данную тему, так как везде всего полно о работе с базой данных в Android и вроде бы все просто, но уж очень надоело получать репорты об ошибках, ошибках специфичных и связанных с БД.
Поэтому, я рассматрю пару моментов с которыми я столкнулся на практике, чтобы предостеречь людей, которым только предстоит с этим разбираться, а дальше жду ваших комментариев на тему решения указанных проблем после чего внесу изменения в пост и мы сделаем отличный туториал, который будет образцом работы с SQLite в Android не только для начинающих, но и для тех, кто уже знаком с основами и написал простые приложения.
Читать дальше →
Всего голосов 43: ↑41 и ↓2+39
Комментарии31

Layar объявил о запуске новой платформы Layar Vision

Время на прочтение1 мин
Количество просмотров5.8K
Layar – один из популярных браузеров дополненной реальности, позволяющий создавать интересные, информативные приложения для быстрого получения точной информации об окружающем нас мире.

Layar заявил о запуске новой платформы - Layar Vision, которая дает возможность распознавать объекты в режиме реального времени.

Если раньше Layar предоставлял пользователям информацию, базируясь исключительно на основе показаний встроенного компаса и географических координатах, то сейчас Layar способен «видеть», т.е. распознавать цветные изображения.



Читать дальше →
Всего голосов 15: ↑15 и ↓0+15
Комментарии9

Обзор бесплатных инструментов для аудита web-ресурсов и не только

Время на прочтение4 мин
Количество просмотров39K

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

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

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

В злых целях знания использовать не буду!
Всего голосов 189: ↑174 и ↓15+159
Комментарии43

Google открывает LevelDB: ещё одна внутренняя разработка

Время на прочтение2 мин
Количество просмотров13K
Компания Google открыла исходные коды LevelDB — это созданный в Google быстрый движок (библиотека) для работы с хранилищем пар ключ-значение.

Библиотеку LevelDB на C++ можно использовать для разных целей. Например, веб-браузер может обрабатывать с помощью LevelDB кэш недавно посещённых страниц. Операционная система — список установленных пакетов и зависимостей между ними, а любое приложение может использовать LevelDB для хранения пользовательских настроек.
Читать дальше →
Всего голосов 49: ↑41 и ↓8+33
Комментарии34
1

Информация

В рейтинге
Не участвует
Откуда
Россия
Зарегистрирован
Активность