Pull to refresh

Stack Overflow продали гиганту Prosus за $1,8 млрд

Studying in IT Product Management *Social networks and communities IT-companies


По информации Wall Street Journal, платформа онлайн-обучения технических специалистов Stack Overflow продана инвестиционной компании Prosus за $1,8 млрд.

Фактически покупателем культового IT-форума сообщества стала Naspers — материнская компания Prosus, которая владеет третью Tencent и Mail.ru Group, а также почти всеми акциями Avito.
Читать дальше →
Total votes 24: ↑23 and ↓1 +22
Views 8.8K
Comments 27

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

Biography of geeks
CNN сообщает (а Лента.Ru переводит), что программист Джозеф Эндрю Стэк (Joseph Andrew Stack) сел на одномоторный самолёт, взлетел, подразогнался и вогнал его в семиэтажное здание Службы внутренних доходов (Internal Revenue Service, IRS) в городе Остин в штате Техас, тем самым совершив самоубийство и месть сотрудникам этого ведомства.

Итоги этого происшествия выглядят следующим образом на фото AFP:

[фото]

Довесок.  Обратите внимание: вон там выложено предсмертное письмо Стэка.

Ещё довесок.  В СМИ появилось более обзорное фото:

[ещё фото]
Total votes 189: ↑155 and ↓34 +121
Views 2.4K
Comments 355

Прислушивайтесь к своему сообществу, но не позволяйте ему указывать, что вам нужно делать

Community management *
Translation
Перевод статьи из блога Джефа Этвуда, одного из основателей Stack Exchange Network, сети вебсайтов, посвященных работе с вопросами и ответами в различных областях. Среди прочих вебсайтов этой сети стоит выделить Stack Overflow — самый первый вебсайт, созданный в рамках Stack Exchange Network и посвященный вопросам и ответам в области программирования. Отдельная благодарность karaboz за помощь и вдохновение.


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


imageКогда люди спрашивают меня о самой большой ошибке, которую я совершил в процессе создания Stack Overflow (Прим. переводчика — далее SO) я рад, что не надо выдумывать и говорить банальности. Я могу честно и открыто рассказать об огромной, нелепой и, до смешного, дурацкой ошибке, которую совершил в самом начале разработки SO. Что ещё хуже, я могу рассказать о такой ошибке, которую продолжал совершать потом ещё и на протяжении девяти месяцев на фоне продолжающихся протестов сообщества.

Читать дальше →
Total votes 85: ↑82 and ↓3 +79
Views 1.8K
Comments 17

За клочок цветной ленты

Social networks and communities
Translation
Последние несколько лет я получаю по почте от «Пасифик гас энд электрик», нашего калифорнийского коммунального предприятия, двухстраничные отчеты по энергии, в которых сравнивается потребление электричества нашим домом с данными домашних хозяйств по соседству.

Здесь представлена интересная выдержка из последнего отчета; щелкните обе картинки для полностраничного просмотра.




Читать дальше →
Total votes 75: ↑66 and ↓9 +57
Views 24K
Comments 99

Переполнение стека вызовов JavaScript, SetTimeout и снижение производительности AJAX

JavaScript *
Sandbox

Проблема


Некоторое время назад в работе над клиентской (javascript) частью движка josi возникла, кстати, достаточно часто встречающаяся проблема переполнения стека:
Uncaught RangeError: Maximum call stack size exceeded (google chrome)
В статье рассматривается решение без использования setTimout или setInterval.
Читать дальше →
Total votes 29: ↑25 and ↓4 +21
Views 117K
Comments 29

Stack Overflow заменяет официальную документацию по всем вопросам

Open source *Development for Android *
Софтверные компании, как Microsoft или Google, публикуют миллионы статей для разработчиков с описанием программных интерфейсов, сервисов и платформ. Они вкладывают огромные усилия в создание документации.

В то же время сами разработчики всё меньше читают официальную документацию, а всё чаще получают информацию на профильных сайтах, показало исследование Ninlabs Research. Выяснилось, что около 50% времени разработчики проводят на специализированных сайтах для программистов, в том числе Stack Overflow, а вовсе не на порталах с официальной документацией.
Читать дальше →
Total votes 135: ↑121 and ↓14 +107
Views 45K
Comments 107

Девушка изучает веб-программирование: 180 сайтов за 180 дней

Website development *Ruby on Rails *
Чуть больше четырёх месяцев назад Дженнифер Девальт (Jennifer Dewalt) приняла важное решение — научиться программировать. Хотя у неё не было опыта в этом деле, она никогда не посещала технических спецкурсов в школе, а наоборот — увлекалась только искусствами, но девушка сразу же решительно взялась за дело.

Дженнифер установила правило, что каждый день будет делать по одному веб-сайту, без выходных. При этом каждый веб-сайт должен сопровождаться новой записью в блоге, а весь код выкладываться на Github. Сегодня наступил 115-й день её марафона.
Читать дальше →
Total votes 202: ↑157 and ↓45 +112
Views 301K
Comments 241

Как работает Stack Overflow — железо

High performance *
Translation
Хотелось бы сказать, что Stack Overflow — масштабный проект, но это не так. Я имею ввиду мы добились многого, но я не могу назвать наш проект “большим”, ещё рано. Давайте я приведу в пример некоторые цифры — с какой нагрузкой мы имеем дело сейчас. Срез статистики за 24 часа от 12 ноября 2013 года. Это обычный будний день. Отмечу, что здесь представлена информация только по нашим собственным вычислительным мощностям, без CDN.


Читать дальше →
Total votes 163: ↑159 and ↓4 +155
Views 79K
Comments 72

Переполненяем стек в fprintf на Linksys WRT120N

Information Security *Reverse engineering *
Translation
После того, как мы получили расшифрованную прошивку и JTAG-доступ к устройству, настало время поисследовать код на какие-нибудь интересные баги.
Как мы узнали раньше, WRT120N работает на RTOS. В целях безопасности, административный WEB-интерфейс RTOS использует HTTP Basic authentication:

image

Большинство страниц требуют аутентификацию, но есть несколько страниц, которые явно запрещают ее:

image

image

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

Некоторые из этих страниц не существуют на самом деле, другие существуют, но ничего не делают (NULL-функции). Однако, страница по адресу /cgi/tmUnBlock.cgi имеет какой-то обработчик, который обрабатывает пользовательские данные:
image
Читать дальше →
Total votes 69: ↑67 and ↓2 +65
Views 11K
Comments 12

Уязвимость в KCodes NetUSB в роутерах D-Link, NETGEAR, TP-LINK, Trendnet, ZyXEL и других

Information Security *
Как вы можете знать, некоторые производители роутеров включают в свою продукцию возможность использовать подключенные в роутер USB-устройства через TCP/IP, используя ПО KCodes NetUSB и свой собственный протокол. Технология позволяет подключать любые типы устройств: принтеры, флешки, веб-камеры, клавиатуры, звуковые карты, т.к. просто инкапсулирует USB в IP.

Специалисты из SEC Consult обнаружили вопиющую уязвимость на всех роутерах, поддерживающих данную технологию — переполнение буфера на стеке в режиме ядра, которое может привести к удаленному выполнению кода.

Модуль ядра NetUSB.ko, который прослушивает порт 20005, даже если в роутер не подключено ни одного USB-устройства, для аутентификации использует шифрование AES со статическим ключом (который, конечно же, есть и в ПК-клиенте), что уже позволяет злоумышленнику удаленно воспользоваться подключенным USB-устройством. Однако, главная уязвимость заключается в фиксированном размере буфера для имени компьютера в функции run_init_sbus(), принимающего не более 64 символов. Переполнение этого буфера и приводит к переполнению стека в ядре
Читать дальше →
Total votes 22: ↑20 and ↓2 +18
Views 24K
Comments 10

Как найти самый длинный непрерывный ряд событий с помощью SQL

SQL *Data Mining *Data visualization
Translation
Задача поиска непрерывных последовательностей событий довольно легко решается с помощью SQL. Давайте уточним, что из себя представляют эти последовательности.

Для примера возьмём Stack Overflow. Он использует клёвую систему репутации с наградами за определенные достижения. Как и во многих социальных проектах, они поощряют пользователей ежедневно посещать ресурс. Обратим внимание на эти две награды:



Нетрудно понять, что они означают. Зайдите на сайт в первый день. Затем на второй день. Затем на третий (возможно несколько раз, это не имеет значения). Не зашли на четвёртый? Начинаем считать заново.
Как отследить это с помощью SQL?
Total votes 22: ↑21 and ↓1 +20
Views 25K
Comments 16

Архитектура Stack Overflow

ua-hosting.company corporate blog
Translation
image

Чтобы понять, как все это работает, давайте начнем с показателей Stack Overflow. Итак, ниже приводится статистика за 12 ноября 2013 и 9 февраля 2016 года:

статистика
  • 209,420,973 (+61,336,090) HTTP-запросов к нашему балансировщику нагрузки;
  • 66,294,789 (+30,199,477) страниц было загружено;
  • 1,240,266,346,053 (+406,273,363,426) битов (1.24 TБ) отосланного HTTP-трафика;
  • 569,449,470,023 (+282,874,825,991) битов (569 ГБ) всего получено;
  • 3,084,303,599,266 (+1,958,311,041,954) битов (3.08 ТБ) всего отослано;
  • 504,816,843 (+170,244,740) SQL-запросов (только из HTTP-запросов);
  • 5,831,683,114 (+5,418,818,063) обращений к Redis;
  • 17,158,874 (not tracked in 2013) поисков в Elastic;
  • 3,661,134 (+57,716) запросов Tag Engine;
  • 607,073,066 (+48,848,481) мс (168 часов) выполнения SQL-запросов;
  • 10,396,073 (-88,950,843) мс (2.8 часов) затрачено на обращение к Redis;
  • 147,018,571 (+14,634,512) мс (40.8 часов) затрачено на запросы к Tag Engine;
  • 1,609,944,301 (-1,118,232,744) мс (447 часов) затрачено на обработку в ASP.Net;
  • 22.71 (-5.29) мс в среднем (19.12 мс в ASP.Net) на формирование каждой из 49,180,275 запрошенных страниц;
  • 11.80 (-53.2) мс в среднем (8.81 мс в ASP.Net) на формирование каждой из 6,370,076 домашних страниц.


Вы можете спросить, почему существенно сократилась продолжительность обработки в ASP.Net по сравнению с 2013 годом (когда было 757 часов) несмотря на прибавление 61 миллиона запросов в день. Это произошло как и из-за модернизации оборудования в начале 2015 года, так и из-за некоторого изменения параметров в самих приложениях. Пожалуйста, не забывайте, что производительность – это наша отличительная особенность. Если Вы хотите, чтобы я более подробно рассказал о характеристиках оборудования – без проблем. В следующем посте будут подробные спецификации железа всех серверов, которые обеспечивают работу сайта.

Итак, что изменилось за прошедшие 2 года? Кроме замены некоторых серверов и сетевого оборудования, не очень многое. Вот укрупненный список хардварной части, которая обеспечивает работу ресурса (выделены различия по сравнению с 2013 годом):

  • 4 Microsoft SQL Servers (новое железо для 2-х из них);
  • 11 Web-серверов IIS (новое оборудование);
  • 2 сервера Redis (новое оборудование);
  • 3 сервера Tag Engine (новое оборудование для 2-х из 3-х);
  • 3 сервера Elasticsearch (те же, старые);
  • 4 балансировщика нагрузки HAProxy (добавлено 2 для поддержки CloudFlare);
  • 2 брандмауэра Fortinet 800C (вместо Cisco 5525-X ASAs);
  • 2 маршрутизатора Cisco ASR-1001 (вместо маршрутизаторов Cisco 3945);
  • 2 маршрутизатора Cisco ASR-1001-x (новые!).

Что нам необходимо, чтобы запустить Stack Overflow? Этот процесс не сильно изменился с 2013 года, но из-за оптимизации и нового железа, нам необходим только один web-сервер. Мы этого не хотели, но несколько раз успешно проверили. Вношу ясность: я заявляю, что это работает. Я не утверждаю, что это (запуск SO на единственном web-сервере) — хорошая затея, хотя каждый раз выглядит весьма забавно.
Читать дальше →
Total votes 78: ↑77 and ↓1 +76
Views 55K
Comments 29

Автоматическое дополнение JS-кода из базы Stack Overflow

Website development *JavaScript *
Пару недель назад Stack Overflow выложил в открытый доступ дамп всего контента, опубликованного на сайтах в сети Stack Exchange за 2014-2016 гг, в формате XML. Там все вопросы и ответы, комментарии и оценки: всего 33,8 ГБ в архиве.

Разработчик веб-приложений Эмиль Шутте (Emil Schutte) нашёл полезное применение этому дампу. Он извлёк оттуда фрагменты кода, которые соответствуют критериям (одобренные ответы с более 50 голосов и тегом "javascript") и проиндексировал их.



Так появилась программка Autocomplete from Stack Overflow. Если написать что-то в форме, то она ищет подходящий фрагмент в базе Stack Overflow — и автоматически его предлагает.
Читать дальше →
Total votes 29: ↑26 and ↓3 +23
Views 24K
Comments 36

Подробности завершения периода беты Stack Overflow на русском языке

Programming *
Подробный рассказ о том, как Stack Overflow на русском вышел из статуса беты, появился на днях в блоге компании.

К моменту завершения аттестации, статистика была следующей:

  • 115.7 вопросов задают в день
  • 82% вопросов отвечены
  • 1,499 постоянных пользователей и 33,678 пользователей всего
  • 1.7 ответа на вопрос в среднем
  • 42,464 визита в день

Помимо этого:

  • Больше 2,000 участников в месяц присоединяется к сообществу.
  • Сайт наиболее популярен (по убыванию) в: Москве, Киеве, Санкт-Петербурге, Минске и Харькове.
  • Более 3,000 участников в месяц получают правильные ответы.
  • Чтобы получить столько внимания, как на Stack Overflow на русском, вам пришлось бы нанять 23,000 разработчиков на полный рабочий день.

Запуск бета-версии SO на русском состоялся в 2015 году, став результатом поглощения сайта ХэшКод. Таким образом, процесс становления равноправным участником сети Stack Exchange занял у сервиса менее восьми месяцев.
Читать дальше →
Total votes 13: ↑12 and ↓1 +11
Views 7.5K
Comments 45

Майкл Прайор, Trello: Как построить продукт для массового рынка

Alconost corporate blog Growth Hacking *Web services monetization *Internet marketing Branding
Translation
Нет сомнений, что вы слышали о Trello — как-никак, у него уже более 16 миллионов пользователей. Каково это – разработать, запустить и продвигать такой массовый продукт? Как правильно приоритизировать фичи продукта со столь широким спектром вариантов использования? Как проводить монетизацию по принципу ценности для потребителя? Об этом и о многом другом соучредитель сервиса Intercom поговорил с исполнительным директором Trello Майклом Прайором. А мы, компания-локализатор Alconost, все это перевели.



Публикуем перевод без сокращений и изменений, а если у вас совсем нет времени, вот вам пять ключевых выводов:
Читать дальше →
Total votes 20: ↑18 and ↓2 +16
Views 11K
Comments 6

Майкл Прайор, Trello: Как построить продукт для массового рынка. Продолжение

Alconost corporate blog Growth Hacking *Web services monetization *Internet marketing Branding
Translation


Вы тоже устраиваетесь в кресле поудобнее, когда создатель крупного продукта рассказывает о своих ошибках? Тогда читайте продолжение занятного интервью с исполнительным директором Trello. Майкл Прайор честно поведал о сложностях позиционирования, о тонкостях монетизации, о неожиданных открытиях и о том, что бы он изменил в прошлом. А потели над переводом этой беседы переводчики компании-локализатора Alconost.
Читать дальше →
Total votes 15: ↑15 and ↓0 +15
Views 7.5K
Comments 0

Программирование без интернета

Programming *

Кафедра гугления
оригинал на xkcd


Топ-3 повседневных вопросов программиста:


  • как сделать Х,
  • почему работает так, а не эдак,
  • как назвать переменную.

С третьим вопросом всё понятно — он неразрешим в принципе. С первыми двумя интереснее.


Чтобы получить ответы, программисты девяностых читали исходники и руководства. Программисты двухтысячных начали активно гуглить. А затем в 2008 появился Stack Overflow, и стал «внешней памятью» для разработчиков. Теперь на 95% вопросов есть готовый ответ: первая ссылка из гугла на Стек.

И что с этим не так?
Total votes 82: ↑46 and ↓36 +10
Views 34K
Comments 100

Анализ рекомендаций книг для разработчиков со Stack Overflow средствами Python

Productivity Inside corporate blog Python *
Translation
Определиться, какую книгу по программированию читать следующей, трудно, да и рискованно.

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


Итак, какую книгу вам стоит прочитать? Мы с коллегами часто обсуждаем прочитанную литературу, и я заметил, что наши мнения по конкретным книгам сильно отличаются.

Поэтому я решил углубиться в проблему. Моя идея была такова: проанализировать самый популярный в мире ресурс для программистов на предмет ссылок на известный книжный магазин, а затем подсчитать, сколько раз упоминается каждая из книг.
Читать дальше →
Total votes 22: ↑21 and ↓1 +20
Views 14K
Comments 6