
Apple внесла изменения в SDK, позволяющие приложениям совершать VoIP-звонки через сотовые 3G сети оператора. Ранее это можно было делать только через WiFi.
Apple объясняло применение ограничения тем, чтобы пользователи чрезмерно не нагружали сотовые сети. Также это было прописано в договоре с AT&T.
После вмешательства Федеральной комиссии по коммуникациям данные ограничения были сняты.
Первой подобной программой, появившейся в AppStore стало приложение iCall
Архив Январь 29, Пятница, 2010

Не знаю, почему Гугл перевел Annotations как аннотации, а не примечания. Но тем не менее свершилось — теперь будет гораздо проще вспомнить, с чем был связано то или иное изменение графика.
Ура!
Под катом — коротенькое видео на английском о том, зачем нужны примечания, и как их использовать.
Утечка памяти — довольно серьезная и опасная проблема. Быть может, пользователь и не заметит однократной утечки каких-нибудь 32Кб памяти (а ведь это целые 5% от 640Кб, которых «хватит всем»), но постоянно теряя сложные иерархические структуры или массивы размером больше INT_MAX (которые мы так любим создавать на 64-битной архитектуре) мы обречем его на страдания, а наш продукт на провал.
Не допускать ситуации вроде бы и не трудно — воспользуемся правилом «класть на место всё что взяли», но на практике это сильно осложняется человеческим фактором (банальная невнимательность), хитростью архитектуры и нелинейным порядком выполнения операторов, например, из-за применения исключений.
А можно было бы просто «отдаться» автоматическому сборщику мусора, ценой потери производительности (и это не обязательно Managed C++, для Native C++ / C есть библиотеки сборки мусора, вот, например).
Но мы поговорим о ситуации когда уже «всё плохо».
… или как перейти с PHP + Javascript на Javascript + Javascript
Идея реализовать проект на сервер-сайд Javascript была уже давно. Проблема была в отсутствии подходящего серверного программного обеспечения. Существующие открытые проекты не устраивали по разным причинам. Устанавливать дополнительный модуль для Apache было не самой хорошей идеей, потому что производительность и оптимизация использования памяти при этом были бы не на высоте. С помощью jslibs можно настроить FastCGI, но очень не хотелось оставлять ни малейших шансов «502 Bad Gateway», проект ngx_http_js_module так и остался в зачаточной стадии, а ngxv8 недостаточно развит для реализации реальных приложений. Поэтому я решил сделать собственную реализацию серверного javascript. Причем постараться сразу запрограммировать всю базовую функциональность, чтобы можно было ее тестировать в условиях, близких к реальности.
В качестве основного веб-сервера было решено использовать nginx, в качестве «движка» javascript — TraceMonkey (javascript-движок из Mozilla Firefox, бывший SpiderMonkey), и написать модуль для nginx, который бы их «склеил». Ничего сложного, на первый взгляд, но очень хотелось иметь определенную функциональность (и это получилось!), чтобы можно было нормально работать дальше. Большинство идей заимствованы, кстати, из PHP.
- Корректная работа в multi-thread условиях
- Возможность выполнять скрипт, указанный в URL, а не настраивать отдельно скрипт-обработчик и функцию-обработчик для каждого location
- Возможность вызывать include(), sleep(), alert() из скрипта, использовать __FILE__ и __LINE__
- Ограничение памяти, выделяемой каждому скрипту, и времени работы скрипта
- Защита открываемых скриптом файлов, указав в настройках список разрешенных папок. Примерно как open_basedir в PHP
- Автоматический разбор данных запроса (параметров GET, POST, и, конечно же, cookies), чтобы не писать обработку данных на javascript
- Поддержка запросов application/x-www-form-urlencoded и multipart/form-data
- Поддержка basic-авторизации
- Работа с базами данных (в первую очередь, MySQL и SQLite)
- Работа с файловой системой: чтение и запись файлов, проверка существования файлов, и т.п.
- Кэширование байт-кода скриптов, как, например, в eAccelerator
Плюс некоторые другие возможности (инструменты для шаблонизации, для создания конфигурационных файлов, и т.п.), но их в основной список я не включил — их позволяют сделать языковые возможности TraceMonkey.
От слов — к делу! Как скомпилировать и настроить, как протестировать и сравнить…
Недавно на Хабре была опубликована статья "Вива Китай,
Россия", из которой следовало, что, согласно исследованиям американских ученых, российские ученые безнадежно отстают и вообще российская наука загибается. Заинтригованный, я полез смотреть, откуда, собственно, дровишки. Дровишек не нашел (уж больно много букв), но набрел на прекрасное. Вот здесь: www.nsf.gov/statistics/seind10/, глава 7.
Те, кому эта тема небезынтересна, вероятно помнят опросы, которые устраивает данная организация среди взрослого населения, чтобы, типа, установить уровень знаний среднего гражданина США (Японии, России, Евросоюза и т.п). Типа, «правда ли, что электрон меньше атома» или «Земля вращается вокруг Солнца или Солнце вокруг Земли». Что характерно, судя по приведенным на 19 странице данным, вопросы не меняются минимум с 2001 года.
На 20 странице исследования приведен новый, 2008 года опросный лист (General Social Survey) под названием «New Science Knowledge Questions». Это, доложу я вам, просто песня. Еще и с припевом. При прочтении сего монументального труда у меня в голове вертелось в основном что-то, смутно похожее на «НУ ТУПЫЫЫЫЕ». Кто составлял этот список, интересно мне.
Первый же вопрос убивает наповал.
Я думаю что у многих была такая ситуация когда, появляется необходимость перенести систему с одного винта на другой. Вот и у меня назрела такая необходимость.
И так имеем:
Установленную систему на диск объемом 80 Гб (второй канал SATA — sdb). На диске одна пратиция /deb/sdb1, swap у системы отсутствует.
Необходимо сделать:
перенести систему на другой винчестер объемом 320 Гб, подключенный на первый канал SATA (sda), создать и подключить на новом винчестере раздел подкачки swap, каталоги пользователей разместить так же на отдельном разделе.
Поехали:

А что — неплохая идея — выпустить флешки для каждой профессии отдельно. Для медиков в частности в магазине USBgeek продают вот таких медсестру и санитара. Емкость каждого медработника — 4ГБ, стоимость 22 доллара.
Добрый вечер Хабр! Сегодня пятница, и я снова в эфире!
Этот топик не будет отличаться оригинальностью, и в нем я снова буду сыпать соль на раны клиентам бесплатных почтовых служб. В комментариях к моему предыдущему топику «Ограбление по-дилетантски или о том, как Яндекс хранит пароли» bar_boss указал, что Mail.ru так же не отличается заботой о защите пользовательских учетных данных. Я решил проверить, и вот результат — та же самая уязвимость во всей красе. Пользователи Майл.ру, привет! Говорить о неповоротливости службы поддержки Майла, в отличие от аналогичной службы у Яндекса, можно часами. Делаем ставки, как долго указаная уязвимость не будет закрыта…
Представители компании Oracle сообщили о своих намерeниях прекратить развитие платформы для совместной разработки открытых проектов — Kenai (www.kenai.com). Сервис был создан компанией Sun в 2008 году и получил популярность среди разработчиков открытых приложений на языке Java.
В настоящий момент на сайте Oracle утверждается, что планируется прекратить публичную доступность Kenai, а наработки сервиса задействовать для использования во внутренних проектах компании.
Недавно обнаружил новый способ, которым мошенники при содействии операторов зарабатывают себе на жизнь.
Суть в следующем: вам в аську/личку приходит сообщение от симпатичной девушки (для девушек думаю, сообщения приходят от парней) с предложением познакомиться / встретиться / созвониться. Девушка сетует, что она не очень дружит с интернетом, и предлагает созвониться, чтобы пообщаться или договориться о встрече. Сама спрашивает ваш телефончик и с фразой «я пойду положу себе денег на телефон чтобы тебе позвонить» исчезает…
Тем временем на ваш телефон приходит SMS с короткого номера примерно такого содержания:
Код для активации вашего доступа - 12345. Справки по tel 8-800-3339008
Вы как человек, привыкший к спаму недоуменно пожимаете плечами и на время забываете… но тут появляется Она!