• Сколько раз вы заплатили за ноутбук с windows, которую снесли сразу после покупки?
    –3
    Мне кажется, нужен другой закон.

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

    Может, стоит требовать принятия закона о том, что производитель, продавший компьютер (включая планшеты и смартфоны), обязан предоставить покупателю полную документацию на программные интерфейсы всех его компонентов? Логично же, что если человек купил железо, он должен иметь полный доступ к его возможностям, в том числе и с помощью самостоятельно написанной программы.

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

    Наверняка есть что-то в законе о потребителях, что производитель обязан предоставлять руководство по эксплуатации. Можно было бы дополнить и расширить этот пункт для цифровых устройств.
  • Дети не умеют пользоваться компьютерами… И вот почему это должно вас беспокоить
    –8
    Прочел только половину статьи (много букв). В корне не согласен с автором, и дурацкими советами вроде «поставьте линукс». Не ставьте! Вы сэкономите уйму времени и нервов на изучение настроек и поиск драйверов, которые все равно перестанут работать через полгода.

    Я считаю, на проблемы при использовании компьютера надо смотреть с другой стороны. Не «пользователь тупой, ленивый, идиот», а «эти программисты из Индии/Украины/России опять написали кривой софт, железячники сделали неудобную кнопку», и так далее. Почему?

    Потому, что пользователь платит разработчикам софта и железа деньги, а не наоборот. Только потому, что пользователи платят вам, программистам, деньги, вы имеете возможность клепать свои серые окошечки с кнопками в офисах класса А, а не заниматься обтачиванием чугунных болванок на станке, или мойкой машин благородных господ на ближайшей автозаправке. Только потому, что пользователь платит деньги, у вас есть ретина-дисплеи и компьютеры на linux с поддержкой openGL внутри сотового телефона. И только благодаря всем этим пользователям вы имеете доступ к интернету с шириной в 100 мегабит за 20 долларов в месяц.

    Так что будьте благодарны.

    Я считаю, заставить/уговорить миллиард человек изучать устройство и костыли дурно спроектированных продуктов вроде PC/windows — бесперспективный путь. Проще сделать новые, хорошие компьютеры и новые программы для них. Посмотрите на ту же iOS и успехи, которые она делает. Вечно глючащие, зависающие, шумящие, зараженные вирусом, плюющиеся непонятными сообщениями, некрасивые, собранные из китайских некачественных деталей PC уже проигрывают ей.

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

    Увольте несколько программистов и наймите вместо них дизайнеров.

    Смешно, у меня на ноутбуке нет кнопок управления плеером или яркостью, зато есть: Insert, Caps Lock, Num Lock, кнопка с 2 стрелками влево-вправо, кнопка с утюгом с крестиком, кнопка с луной, Prt Sc, Sys Rq (что это, названия заклинаний в какой-то игре?), Scroll Lock, Fn, F1-F12, break, и еще куча кнопок с непонятными названиями, вся роль которых заключается в том, что они или портят текст или отключают другие кнопки, и потом непонятно как вернуться назад. Хотя ставить звук на паузу мне нужно гораздо чаще.

    Ах да, если вы не хотите слушать мои советы и переделывать неудобные компьютеры на удобные, не удивляйтесь, если завтра их перестанут покупать. А автору тексты хочется пожелать научиться слушать людей, открыть для себя книги по юзабилити, например, про психбольницу и книгу со штурвалом, и перестать жаловаться, когда его просят исполнить его служебные обязанности.
  • Эксперт ООН призвал мировое сообщество притормозить создание боевых роботов с искусственным интеллектом
    +3
    Боевые роботы — очень привлекательное направление разработки. Можно провести спецоперацию в другой стране, и не потерять ни одного человека. Покажите мне военного, который откажется от такого оружия. Покажите мне политика, который откажется от идеи создания таких спецотрядов (и которому не придется объяснять избирателям, почему их родственники возвращаются в гробах).

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

    А что касается ООН, я не помню, чтобы крупные страны (которые способны сделать таких роботов) хоть раз считались с ее мнением.

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

    Вообще, терроризм странная вещь. Ради борьбы с ним политики запрещают все, что только можно. От него гибнет максимум несколько десятков человек в год. Но от колес машин или от последствий потребления алкоголя гибнет куда как больше человек, почему они их не запрещают? Пусть люди пьют апельсиновый сок и катаются на велосипедах и метро. Нет логики.
  • Liberator: первый в мире огнестрельный пистолет, полностью отпечатанный на 3D принтере
    –14
    Мне интересно, какие мотивы движут разработчиком этого пистолета? Ведь это надо потратить кучу времени, сил, на разные испытания и подбор материалов, чтобы его сделать. Он ненавидит человечество? Хочет, чтобы люди чаще убивали друг друга? Он больной? Хочет скандальной славы? Или он просто хочет занять новую нише на рынке и зарабатывать на этом деньги?

    Может, его надо к психиатру сводить?

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

    Если в больном обществе каждому дать возможность сделать или купить пистолет, оно не станет ни здоровее, ни безопаснее. Посмотрите на США или на мусульманские регионы нашей страны.

    Те, кто ратует за расширение оборота оружия, видимо думают «оружие будут приобретать только адекватные, разумные граждане, которые будут применять его для защиты себя и своей семьи. Они не станут им пользоваться в ссоре, драке или бытовом конфликте, под воздействием эмоций или в пьяном виде. Они боятся наказания и потому будут соблюдать законы и правила хранения оружия». Снимите розовые очки. Вы плохо разбираетесь в людях. Разрешить свободный оборот оружия — все равно, что положить ящик с гранатами в клетку с обезьянами.

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

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

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

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

    Некоторые школьники всегда рады подраться с каким-нибудь другим школьником. Теперь у побитого школьника есть способ восстановить справедливость.

    Муж-неудачник, которому изменяла жена, теперь тоже может наказать обидчика.

    А, естественно, вас никто не оставит с голыми руками против всех этих замечательных людей. Вы тоже можете сделать или купить пистолет и соревноваться с ними в скорости реакции и меткости стрельбы. Прекрасный мир ожидает нас завтра.
  • Гормональный holywar Админа и Разраба PHP или REMOTE_ADDR vs HTTP_X_FORWARDED_FOR
    +5
    Эта статья неграмотна от первого слова до последнего. Вместо того, чтобы гадать на кофейной гуще, и определять назначение HTTP-заголовков через анализатор трафика, надо читать спецификации и руководства. Вместо того, чтобы разобраться в проблеме, автор скопипастил код какого-то индуса, он у него сломался, и теперь автор предлагает всем так же бездумно скопипастить его код аналогичного качества.

    > и весь этот код рухнул от того, что в HTTP_X_FORWARDED_FOR пришёл не один адрес, а список адресов через запятую (что строго говоря законно, допустимо, и даже не регламентировано в доке по php

    Искать описание HTTP-заголовков в мануале по PHP? Автор, вы про HTTP и про то, как работает сервер, хотя бы в википедии почитайте что ли.

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

    Насчет определения страны — естественно, заголовкам, пришедним снаружи, доверять нельзя, в них может быть что угодно. например, расширение для браузера може подставлять любой X-Http-Forwarded-For. Потому стоит их игнорировать. Однако, если наша цель — банить по IP, то брать IP из этих заголовков вполне можно.

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

  • 'Чистый' JavaScript: «Начало»
    –9
    Код местами страшный, и комментарии нечитаемые, но идея правильная. Vanilla.JS — это будущее, jQuery — темное прошлое. Вот, с каким проблемами вы сталкиваетесь, используя чужие фреймворки (jQuery, Backbone, knockout, angular):

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

    jQuery тянет за собой огромный код Sizzle для разбора CSS-подобных селекторов (естсетвенно, медленным и неэффективным способом, на явакрипте). Оно вам надо? Если вы пишете селекторы вроде '.someClass > .someOtherClass[prop^=value]', вам стоит задуматься о более эффективных способах.

    jQuery нагородил какую-то усложненную систему событий с кучей костылей и, надо же, пространствами имен, он переделывает нативные объекты событий на свои, оно вам надо?

    Jquery содержит костыли для поддержки quirks mode. Это режим поддержки написанных до 2000 года страниц времен Netscape. Неужели кто-то до сих пор его использует? Вам пора обновиться, а не тащить свои костыли в самую популярную библиотеку.

    2) Некоторые из них вносят изменения в окружение, вносят изменения в DOM, добавляют или переписывают свойства браузерных объектов, порождая несовместимости и труднообнаружимые баги. Например, добавляют фальшивый, ненативный window.JSON или Object.copy.

    3) Некоторые просто неюзабельны. Библиотека html2canvas делает window.scroll(0, 0) (то есть, прокручивает экран) и не годится для снятия изображения части окна, не прокручивая его.

    4) Лицензия на них не всегда позволяет включать их в коммерческий продукт. Или позволяет включать, но запрещает при этом их править (то, есть вы не можете убрать оттуда уродливый, неэффективный, мешающий вам код, или вырезать только нужный кусок или исправить неудачное решение).

    5) Они содержат непредсказуемое количество костылей и сомнительных решений. Ради бага в каком-то редком браузере, которым никто не пользуется, jQuery запускает лишний код, добавляет костыли и устраивает тесты прямо в браузере при каждой загрузке страницы. Вам не нужен этот код, но он там есть.

    Посмотрите код функции offset() в jQuery. getBoundingClientRect() работает гораздо проще и поддерживается нативно во всех браузерах.

    6) Библиотеки могут содержать «магию» — неявные и не описанные в документации действия, например, jQuery при анимации перетряхивает DOM, добавляет врапперы и из-за этого появляются побочные, трудноустранимые эффекты (вроде перезагрузки ифреймов или сдвигов верстки)

    Некоторые библиотеки (tinymce) содержат в себе кривой, плохо написанный, загрузчик собственных файлов (который грузит штук 30 файлов по 500 байтов по одному за раз). Используя их, вы делаете свой сайт медленным даже на быстром соединении.

    7) Легкость использования jQ привлекает новичков, которые не знают толком ни JS, ни DOM, но умеют пользоваться jQuery, и пишут на нем тот еще быдлокод, правда, как только появляется задача сложнее «показать блок по нажатию кнопки», приходится искать не-новичка.

    Вы легко можете увидеть у новичка код вроде $('*").click(....). Ведь никто не рассказал им, как эта конструкция работает, а они думали, это что-то вроде CSS.

    8) Авторы фремйворков не всегда заботятся о максимальной эффективности или производительности. Фреймворки могут работать с DOM неэффективно, вызывая массовые layuot/reflow, фреймворки для работы с канвасом вроде paper,js не знают, что такое «dirty rectangle» и перерисовывают его целиком. jQuery не использует animationFrame для анимации.

    Фреймворк Ext.js, например, имеет огромный объем, тормозит и провоцирует выравнивать элементы с помощью яваскрипта, а не CSS.

    Если ваш проект использует популярные библиотеки, то вы можете обнаружить эти проблемы, когда большой объем кода уже написан и менять коней на переправе поздно. Ох, как бы тут пригодился кто-нибудь, уже набивший шишки.

    9) Ну и наконец, библиотека может быть просто некачественно написана. Посмотрите код Jquery UI и ужаснитесь, например.

    10) Некоторые тянут ненужные, лишние зависимости. Backbone тянет underscrore, главная фича которого — возможность делать циклы вроде for… in гораздо более медленным способом через коллбеки!

    11) Они содержат крайне сомнительные решения. Не разбирающиеся в теме новички подключают на страницу какой-нибудь html5shim и думают, что теперь благодаря неведомой магии IE обретет такую же поддержку CSS3, как и Хром (и потому им даже тестировать код в этом браузере не надо). Ага, как же.

    Подобные библиотеки годятся, только если вы ненавидите заказчика и его пользователей.

    Вывод — если хочешь сделать что-то хорошо, сделай это сам. Глупо думать, что кто-тот писал библиотеку специально для вас. Использовать сторонние библиотеки, конечно, удобно, но только как основу для своего кода, с патчами и изменениями, а не в оригинальном виде.
  • История безответственности и одной уязвимости
    +1
    Я искренне удивляюсь людям, которые устанавливая Ява на компьютер, не удаляют ява-плагин. И также удивляюсь людям. кто ставит Adobe Reader с плагином в браузер. Посмотрите на любой сайт по информационной безопасности, посмотрите на самые популярные экйплойты для заражения браузера: Java, Adobe Reader лидируют уже лет 10. Сколько 0-day дырок к ним гуляет в хакерском андерграунде — неизвестно.

    Нет, даже разбирающиеся в IT люди радостно ставят себе эти по сути «бекдоры». Люди, вы адекватны? Вам нравится идея подхватить троян, и какой-то школьник будет читать все ваши файлы, личные данные и переписку, и требовать от вас выкуп по СМС?

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

    Я советую при установке Java физически удалить из каталога программы файл браузерного NPAPI и ActiveX плагинов, так как программно надежно отключить его вроде бы невозможно. Adobe Reader лучше заменить на альтернативные читалки вроде SumatraPDF с опенсурсом внутри.

    Единственным островком безопасности, лучиком света и примером правильной инфраструктуры сегодня является закрытые экосистемы вроде Эппл, или ОС для игровых приставок, где пользователи могут скачать и установить только проверенные программы и спокойно посещать любые страницы, не бояться вирусов или троянов, где практикуется подписывание кода, песочницы, шифрование личных данных и прочие меры.
  • ООП-билдер «массивных» параметров
    0
    То, что предложил автор — излишнее усложнение. Если на каждую не нравящаюсю нам особенность PHP писать по несколько классов для ее обхода, все будет работать с черепашьей скоростью и в 20-50 мс на запрос мы никогда не уложимся.

    Паттерн Builder используется не для того, чтобы заменить массивы с конфигом (да, в динамических ЯП можно использовать массивы там, где в строгих ЯП надо делать классы и структуры ради одноразового использования), а для того, чтобы заменить конструктор или метод с 20 параметрами. Как вариант — построение запроса на выборку чего-нибудь из хранилища, например.

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

    Лучшее решение для того, чтобы заменить массив чем-то строго типизированным — использование класса с публичными методами. Как бонус, получаем еще и дефолтные значения. Вот код:

    class SomeServiceConfig
    {
    public function __set($k,$v) { throw new \Exception; }
    public function __get($k) { throw new \Exception; }

    /** комментарий */
    public $maxConnectionNumbers = 100;
    public $useSomeProtocol = false;
    public $warnOnUsingSomeCommand = true;
    }

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

    $cfg = SomeService::getDefaultConfig();
    $cfg->useSomeProtocol = true;
    $service = SomeService::create($cfg);

  • Французский провайдер блокирует интернет-рекламу для всех пользователей
    –1
    Это отличная идея. Смотрите, ведь большинство пользователей сети не очень грамотно и не способно разобраться (или не в курсе) как настроить AdBlock, плюс непонятно, какие списки хорошие, какие нет. Беря эту роль на себя, провайдер и его специалист делает более качественную и квалифицированную фильтрацию, чем может сделать пользователь. Никто не может решить эту задачу лучше провайдера.

    Еще провайдеры могли бы предоставлять (по желанию) например блокировку непристойных сайтов для семей с детьми к примеру. Опять же, првайдер это сделает лучше чем типичный «чайник».

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

    Провайдеру плюс: конкурентное преимущество («а у нас нет рекламы!»), пользователю плюс: быстрее загрузка и эстетичнее внешний вид сайтов (так как типичная реклама, особенно тизеры, ничего кроме отвращения не вызывает), меньше риск подцепить вирус. В общем, всем станет лучше.

    А, есть минус, кроме рекламы, можно будет тем же оборудованием блокировать и особо буйных оппозиционеров. Ну во Франции за такие шутки провайдера накажут по полной программе, так что вряд ли кто-то решится на такое.

    Вы скажете, гугл, фейсбук закроются, ну и пусть закрываются и проваливают, я гарантирую, что на их место очередь желающих получить полумиллиардную аудиторию выстроится. Есть другие модели монетизации, кроме флеш-баннеров и попапов (например, рекламные посты, фримиум, vip-статусы, аффилиатный маркетинг, подарки). Те, кто держится за устаревшие экономические модели и не способен адаптироваться к изменениям, вымрут как владельцы конюшен с появлением автомобиля и паровоза. А заодно, может в интернете станет меньше СЕО-сайтов, вся суть которых в копипасте/перепосте/рерайте чужого контента с добавлением рекламных баннеров. А-а, мечты-мечты.
  • Борьба с DDoS глазами Highload Lab
    +1
    Как вы относитесь к вашим конкурентам — сервису Cloudflare с базовым бесплатным тарифом? Вы пишете, что 56 Гб/с — это «последнее средство», а они в своем блоге пишут, что с такими атаками легко справляются за 30 минут: blog.cloudflare.com/65gbps-ddos-no-problem. Можете ли вы это прокомментировать?

  • Анонимайзеры под угрозой закрытия
    –18
    По мне, так от закона, вопреки ожиданиям, наблюдается польза. Администрация сайтов сама, без всяких предписаний, судебных мер и затрат времени сотрудников МВД удаляет сомнительные материалы. Не прекрасно ли?

    Я бы еще ввел какой-нибудь закон про заполонившую сеть тизерную рекламу с желтыми заголовками вроде ШОК ФОТО ВИДЕО, пусть ее показывают не всем подряд, а только тем, кто на нее подписался + пусть указывают полные реквизиты закачика (чтоб знать на ком гнев вымещать). Невозможно интернетом пользоваться, всюду реклама, трояны, смс-лохотроны и «темы для вконтакте». Недавно на Хабре была статья, даже технически подкованный пользователь Хабрахабр умудрился слить свой пароль, отправить платную СМС и скачать троян. Что уж говорить об обычных пользователях?

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

    Более того, не понимаю, откуда на Хабре столько истерии по поводу этого закона. Назовите хоть один хороший сайт, который бы пострадал от закона? Таких нет.

    Я видел список, из крупных сайтов там только энциклопедия для скучающих умственно отсталых офисных сотрудников и школьников (на пользу, пусть делом займутся) и рутрекер, который не стесняется зарабатывать на распространении чужих релизов, которые, между прочим, делаются бесплатно. Откройте глаза, они это делают исключительно для собственной выгоды + ввели какие-то неудобные регистрацию и рейтинг, опять же, к лучшему, если их закроют.
  • Рендер Diablo3. Как это работает
    +1
    У Valve на сайте есть раздел с презентациями, там тоже описываются интересные вещи, например, как в Portal 2 делалась вода и пузырьки в геле, как было сделано освещение в Half Life 2.
  • Кардиостимуляторы/ритмоводители подвержены удаленному взлому
    +4
    Я придумал на основе новости сюжет для фантастического романа: представьте себе страну (или планету), где подобные устройства с удаленным управлением принудительно вмонтируются людям при рождении, и правители имеют возможность в любой момент приостановить сердце человека (для наказания, мотивирования и запугивания) или остановить полностью (за серьезную провинность и в пример другим). Естественно, делается это под благим предлогом, например, ради предотвращения преступлений и массовых беспорядков. Такая невиданная в истории степень контроля не снилась ни земным диктаторам, ни Дарту Вейдеру.

    А по сути новости, как я понимаю, хорошая разработка стоит больших денег, а ответственности за ошибки в медицинском ПО нет, так что глупо тратить на это деньги (с точки зрения компании-производителя).
  • Почему на iOS делают музыку, а на Android и Windows Phone нет?
    –1
    Вам наверно, с такими придирчивыми требованиями не понравится, но вот видео, где группа играет в Нью-Йоркском метро на айфонах:

    www.youtube.com/watch?v=19KBAcJ53ak

    А насчет молодого Вагнера — уже 200 лет прошло, сейчас другая музыка в моде.

  • Отупляет ли нас Интернет?
    –9
    > Отупляет ли нас Интернет?

    Да. Чтобы в этом убедиться, достаточно зарегистрироваться в популярной социальной сети «Вконтакте» (ей пользуются десятки миллионов российских пользователей интернета), просмотреть профили популярных пользовательниц или популярные паблик страницы со смешными картинками.

    После этого у вас не останется сомнений, что большинство пользователей сети интернет — умственно отсталые идиоты с сознанием первоклассника.
  • Новый 0day эксплоит для Java. Теперь и в Metasploit
    0
    Давно уже отключил Яву во всех браузерах, Adobe PDF никогда не устанавливал, флеш только на доверенных сайтах (ибо знаю, что в этих компаниях работают ленивые кривокодеры). Их уже много лет экплойтят по полной программе, и люди, кто их не отключает, вы реально странные, сами напрашиваетесь, чтобы вам троянов наустанавливали.
  • Скрытые послания в музыке
    +1
    У группы Idea Fix (песня «Плачь и танцуй») тоже в самом начале есть звуки, похожие на запись программы для спектрума, правда, не уверен, что в них есть какой-то смысл. Никто не хочет проверить?
  • «Доска позора» с юзерами, выдающими приватную информацию
    –1
    > Выставляя юзеров на посмешище

    А в чем посмешище-то? Пока этот студент сидит, уткнувшись в экран, и делает никому не нужный сервис, другие люди получают всяческие виды удовольствия от жизни. Что ненормального в том, что у человека похмелье или ему нравится Мария и Хуана? Что удивительного в том, что кому-то надоела его работа? И что секретного в номере телефона? Иногда это даже удобнее.

    Наоборот, если подумать, то стремление к приватности и закрытости — это не совсем нормально. Это странно, жить в человеческом обществе и прятать что-то от других людей. Если человек что-то прячет, это неспроста. Может, у него какие-то психологические комплексы или задвиги? Шизофрения и раздвоение личности? Может, он прячет свои преступные замыслы? Может, ему нужна врачебная помощь?

    Мне кажется, этому студенту и PHP-разработчику надо поменьше времени проводить за компьютером, чтобы не потерять чувство реальности окончательно.
  • Обновления ядра в Ubuntu с помощью Bash
    +1
    Вместо ручной проверки статуса выполненной команды (и ручного написания if после каждой строчки) стоит использовать либо set -e, либо trap ERR.

    Странно, что практически никто не использует эти команды. Мне кажется, это плохо, если произошла ошибка, а скрипт продолжает работать как ни в чем не бывало. так, например, получаются пустые бекапы: скрипт отработал, бекап есть, а данных в нем нет.
  • Вычисление CRC32 строк в compile-time
    +4
    А вот в языке D можно задавать функции, которые будут вычисляться в compile-time. Например, рассчитывать хеши строк-индексов для ассоциативного массива в момент компиляции, разве это не чудесно? Насколько далеко этот язык впереди порядком устревшего Си.

    И странно, что вы озаботились оптимизацией вычисления crc32 (что делается быстро), но не оптимизацией парсинга XML с переводами. Вам не кажется, что логичнее было бы в момент компиляции превращать тяжелый, трудноразбираемый XML-файл в компактную бинарную хеш-таблицу с временем поиска O(1)? Мне кажется, выгоды и в объеме, и в скорости работы программы было бы больше.

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

    Ну или использовать бибилиотеку gettext(), если лень писать свою реализацию.
  • Определение IP адреса пользователя Skype
    +3
    Найс. Почему-то в моем восприятии это исключительно позитивная новость. Обожаю, когда вот так вот весело и с чувством юмора раздают пинки всяким там защитникам приватности и дотаптывают последние остатки анонимности в интернете. Тонуть, так всем вместе, а умирать, так с музыкой.

    p.s Название проекта на гитхабе под названием skypeopensource тоже радует. Не хочешь делиться кодом, капиталист? а придется.

  • Почему не автоматизировать то, что можно автоматизировать?
    –2
    Вот что не люблю на Хабре, так это примитивный, убогий подход к решению задач (ну и ограничение на коментарии раз в неделю).

    Разве это решение — установить какой-то левый, тормозящий работу страницы и загрузку яваскрипт? Что за ограниченное мышление? И что делать пользователям без яваскрипта?

    Большинство опечаток и ошибок, вроде слов «координально» (это ж надо такое придумать!) или запятых в стиле «завтра, я напишу продолжение, этого поста,...» можно обнаруживать (а также исправлять) полностью автоматически. Автор, советую вам бросить маяться дурью и написать уже робота-спеллфиксера для полностью автоматического обнаружения и исправления ошибок.
  • Простой и приятный видеоролик о Linux
    –26
    Ядро Линукса — тяжелое, монстроидальное, излишне монолитное, во многом устаревшее.

    Для разработки важна поддержка мощных компаний. Представьте, что лет через 5 появятся новые стоядерные процессоры с многоконвейерной архитектурой и ядра ОС станут например асинхронными и микроядерными. Эппл и майкрософт перепишут свои ядра, а кто перепишет весь Линукс? Появится новая шина или новое устройство. Кто напишет драйвер под Линукс? (производитель устройства особо не заинтересован).

    Для разработки ОС важно участие лучших разработчиков в мире. Лучшие разработчики работают в Гугл, Эппл и фейсбук, как их переманишь, прикормленных, на ниву свободного ПО?

    Десктопный Линукс всегда был плох. В сравнении с оптимизированной по производительности и совместимости с приложениями виндой и вылизанным юзабилити маков. Когда-то авторы Gnome пытались разобраться, как сделать комфортной работу в среде при объеме памяти в 256 Мб, в итоге выяснилось, что проще всего подождать, пока на компьютерах станет больше памяти и проблема решится сама собой.

    Что касается телефонов, тут лидер исключительно Эппл. Линуксу нужны космические инвестиции, чтобы хотя бы рядом встать.

    Свободный софт, это конечно, красивая идея, но плохо жизнеспособная. С точки зрения бизнеса выгодно вкладывать средства в свой продукт, а не такой, который вовсю могут использовать твои конкуренты, и зарабатывать на твоих инвестициях. Эппл, например, вложила деньги, разработав превосходную проприетарную платформу, и получает огромные прибыли, выпуская хорошую технику. А была бы iOS опенсурс — мир был бы заполонен дешевыми некачественными китайскими клонами. Как он был заполонен уродливыми WinMobile и нокиами до этого.

    Также, есть множество продуктов, которых нет в виде свободного ПО, например ПО для бухучета, фотошоп, и подобные вещи.

    Также, что касается, нас, PHP-разработчиков, на мой взгляд, качество архитектуры и кода свободного ПО (а я люблю заглядывать в исходный код) очень низкое. Или же, наоборот, продукт страдает от оверинженеринга (Zend Framework).
  • Как правильно вести себя в open space
    –1
    На картинке замечательный офис. У опенспейса есть большое преимущество — (если конечно там не шумно) — вид того, что вокруг тебя сидит много людей и они все работают, мотивирует. И вообще, как-то лучше в большом помещении, чем в маленьком.

  • Разделегирован домен Xakep.Ru
    –6
    Вот блин, я думал, заплатить забыли, ан нет, отбирают, нелюди! Но ничего. Хакерский журнал, уверен, найдет менее контролируемые способы связи.
  • EQализация: устранение частотных конфликтов
    0
    Мне кажется, в начале статьи стоило бы перечислить какие вообще есть способы устранения этих конфликтов, чтобы были понятны варианты решения проблемы.

    Что касается эквалайзера, а разве звук инструмента не страдает от такой аггрессивной эквализации, когда кусок спектра вырезается начисто?

    Отрезать частоты ниже 90 Гц — не слишком ли смело? Вроде бас легко залезает ниже (например, нижняя нота E)? Не будет ли бас с отрезанной основной гармоникой звучать странно?

    А, еще вопрос при использование садчейна — ведь обычно атака басовой ноты совпадает с бочкой, и делая сайд чейн мы глушим атаку большинства нот, и линию баса становится труднее разобрать?

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

    Также, хотелось бы почитать про более интересные устройства, вроде Multiband Compressor. Говорят, они могут впихнуть в микс еще больше инструментов и сделать их еще громче.
  • Ещё раз о шаблонах
    0
    Автор показывает полное незнание темы. Смарти уже лет 5 как устарел — зачем его упоминать? Он всегда был уродливым, тормозным и неудобным (а теперь у нас есть неудобный и уродливый Twig вместо него :) ). XSLT автор скромно прошел стороной (мог бы хоть недостатки описать). Zend_view не упомняул (хотя предложенные классы — упрощенная версия Zend_view). Про наследование шаблонов и макросы в шаблонах не рассказал. Про новые идеи типа HAML не упомянул.

    Это статья о шаблонах? Это набор устаревших и неправильных занний. Код автора тоже плох. В его шаблонизаторе даже функции include нет. Также, почему имя шаблона передается в конструктор, а не в render()? Чем это объясняется? непродуманностью?

  • Трикоптер (Квадрокоптер своими руками: Часть II.2)
    0
    А зачем ставить несколько моторов? Разве это не усложняет конструкцию? Не проще поставить один, но хороший?
  • Масштабируем CSS спрайты с SVG, убивая сразу трех зайцев
    +3
    Рендеринг SVG явно медленнее, чем рендеринг растровой картинки. Плюс неизвестно, может браузер ради каждой иконки будет рендерить SVG-файл целиком. Непонятно, как это скажется на производительсности и потреблении памяти. Непонятно, что делать с IE.

    То есть минусов много, плюс — всего один, и то в большинстве случаев ненужный.
  • Практика работы с сигналами
    +1
    Неуклюжий способ, так как в сигналах куча ограничений (многое делать нельзя), и нельзя делать стек обработчиков (так как установка нового отменяет старый). Неудобная система.
  • Все о свойстве border
    0
    А как с кроссбраузерностью? сглаживание углов работает ли или пиксельными ступеньками наклнная линия рисуется?
  • Интеграционные релизы в СберТехе
    0
    Пишите больше, это же интересно, читать про всякие огромные программные комплексы, а не про то, как за 5 минут скачать плагин для jQuery.
  • Невероятно, но факт: самые курьезные аварии из жизни операторов
    +1
    Вы неадекватный идиот, если у вас больные люди вызывают агрессию.
  • Яндекс.Диск — первый взгляд
    0
    > и песня группы со странным названием «Мои Ракеты Вверх»

    Меня тоже немного это напрягает, если уж рекламировать инди-музыку, то зачем брать песню на английском, которую никто не поймет, взяли бы лучше что-нибудь из репертуара «И Друг мой Грузовик».
  • Архитектура Android-приложений. Часть IV — интеграционный уровень
    +3
    Приятно почитать статью, описывающую нормальным языком архитектуру, а не статью в стиле «скопируйте этот код в иде и запустите».
  • Программа для нарезки хлеба
    +1
    Аналогии неправильные. Когда я слышу «фреймворки не нужны», это значит, что человек либо не умеет ими пользоваться, либо просто взял не тот инструмент для решения задачи и ругается.

    Проводя аналогии, например IC и DI — это стандартные розетки и провода для хлеборезки. То есть до них все делали свою хлеборезку со своим собственным дизелем, своим типом двигателя и своим напряжением питания (а кто-то вообще на бензине), а потом догадались сделать розетку на 220В и 50 Гц и пошл-поехало. А теперь вот приходят люди и говорят: мне не нужна розетка на 220В, я свой дизель-генератор лучше соберу. Ну хозяин-барин, конечно.

    Другой вопрос, что ява-фреймоврки излишне утяжелены и усложнены, но это уже не мои проблемы. Также, люди любят делать излишнюю расширяемость: например, нарежут все на кучу абстрактных классов и фабрик с наследоваием, вместо того, чтобы написать if/else. У нас в PHP такой проблемы нет: хочешь, пиши фреймворки с XML-конфигами и DI, хочешь пиши через функции и глобальные переменные.
  • JavaScript на сервере, 1ms на трансформацию
    +3
    XML дает валидацию через всякие Relax NG (альтернатива: писать и вымучивать код валидации шаблона руками, тратя гораздо больше времени). XML дает возможность легко делать всякие блоки с параметрами и много других вещей.

    А Jade (хотя такой синтаксис по моему впервые использовался в HAML) — интересная вещь, но я бы не рискнул его применять, пока сам не потестировал и посмотрел на плюсы/минусы. Как минимум, при его использовании надо полученную от верстальщика HTML-верстку почти целиком переделывать в блоки — это надо либо автоматизировать, либо это лишняя работа. В то время как XML и HTML — братья-близнецы.
  • JavaScript на сервере, 1ms на трансформацию
    +2
    Хорошая статья. Потмоу, что я сам не раз ломал голову, как решить проблему возникающую в любом продвинутом аякс-приложении:

    > два набора совершенно разных шаблонов на сервере и на клиенте.

    От себя добавлю: не только шаблоны, если нужна офлайн работа, придется еще и модельки, их валидацию и хранилище дублировать. Мне пришли в голову такие идеи:

    1) сделать Xml-based язык шаблонов и компилировать его в PHP (или что-нибуль Си-подобное если требуется скорость) и JS для клиента — заведомо FAIL, так как после богатых возможностей PHP с циклами, вызовами хелперов, константами, массивами на нем невозможно будет программировать
    2) сделать шаблоны на PHP, а для клиента сделать транслятор PHP subset в JS — это во-первых, сложно, во-вторых, мало перенести конструкии языка, ведь в шаблонизаторе используются модели (класссы на PHP) и хелперы (PHP-функции) — их-то как перенести, а? Дублировать всю логику на клиентсайде что ли?
    3) (не выход) перенести всю логику на клиента — не подходит, так как без яваскрипта не будет работать.
    4) перейти на сторону тьмы и использовать уродливый тяжелый GWT — опять же, без JS он вроде нормально не работает.

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

    Потому ваш подход все же не впечатляет. Node.JS вместо компиляции в Си++ на сервере, плюс слабые возможности, плюс нельзя в шаблоне использовать хелперы и серверные классы. Слишком много недостатков.
  • Яндекс запускает Диск
    –9
    Самба не поддерживается? В топку тогда этот диск. Ибо я сомневаюсь, что по ихнему web-что-то-там протоколу можно перетащить сетевую папку с тысячами песен в плеер и он их распознает их, прочтет и проиндексирует теги за полминуты (через Samba — можно, его хватает даже для того чтобы тяжеленный flac играть через сеть).
  • Go for IT. Часть первая
    –1
    А для сравнения страничку на PHP?

    У вас слишком искуственные тесты. Много ума не надо, написать Hello World. Вы сделайте псевдокнтроллер, который читает данные из фейковой модели, проверяет права доступа и отдает в фейковую вьюху. В таких, приближенных к реальности условиях, будет гораздо более объективный тест.

    Для Питона, естественно, надо подключить всю махину Джанго.

    А так, ваши тесты больше походят на тесты неадекватов из shootout.alioth, которые меряют для PHP скорость построения двоичного дерева и подобную дребедень. Покажите мне хоть один сайт, который строит красно-черные деревья при выводе страницы.