Тревожные новости приходят со всех фронтов. Программистов активно сажают в open space даже в тех компаниях, где это раньше не практиковалось. Может кто-то книжку написал и она стала новой религией? А заветы Спольски забыты?
Краткая справка для тех, кто случайно не знает, что такое open space - это огромная комната без каких-либо перегородок.
Update: поскольку у людей возникли вопросы по поводу open space - вот вам картинка отсюда. Одна команда (человек 10) в одной комнате, где все друг друга знают - это не open space.
Объяснение этому безобразию всегда одно и то же. "Мы делаем это чтобы программисты лучше коммуницировали".
Я всегда думала, что программисты должны программировать. Если мне
нужно с кем-то поговорить - ну загляну я к коллеге в соседний офис,
пройду пару метров.
Отношение программистов к этому однозначное - open space все люто ненавидят. Кьюбиклы вспоминают с нежностью. Работать в open space невозможно, слишком шумно, сложно сосредоточиться. В open space вы узнаете о своих коллегах сильно больше чем хотели. Вы полностью в курсе, что у Васи напряженные отношения с тещей, что Оля любит бормотать когда работает, и что Максим коммуницирует ну просто без остановки и совершенно невозможно заткнуть этот фонтан красноречия. А вон в том углу ребята поют - день рождения у кого-то. Поэтому люди работают либо рано-рано утром, либо сидят на работе ночами. Либо увольняются (как вариант - не идут работать в open space).
Пока единственное разумное объясение рассаживания программистов в open space, которое я смогла придумать - так дешевле на первый взгляд. Но интересно подсчитать насколько при этом падает производительность.
Дорогие друзья! Если вы работаете (работали) в open space, опишите свои ощущения. Особенно интересно послушать людей, которым это нравится. Я пока ни одного не встречала.
вторник, декабря 18, 2012
понедельник, ноября 26, 2012
Что такое TCP Incast
TCP Incast - неприятная проблема, возникающая в датацетрах, связанная с работой протокола TCP.
Возникает при следующем сценарии: некий сервер шлет запрос кластеру машин. Все эти машины ему одновременно отвечают. Ответ может быть довольно большой, несколько десятков килобайт. Эти килобайты доходят до свитча, за которым находится наш кластер. Свтич, как это сейчас модно, самый обычный. И буфер у него небольшой. Та часть данных, что в буфер не влезла, будет сброшена. Протокол TCP гарантирует доставку, так что все потерянные пакеты будут посланы еще раз. Вопрос когда. Стандартный RTO (retransmission timeout) - 200 ms. Для какого-нибудь облачного сервиса это много. В результате получаем латентность, наша распределенная система работает слишком медленно.
Здесь описание TCP Incast с правильной картинкой: TCP Incast and Cloud application performance
Еще одно хорошее описание: Fine-grained TCP Retransmissions
Как с этим можно бороться. Простой и действенный способ - уменьшить RTO до 1 ms. Еще можно изменить протокол TCP: Data Center TCP (DCTCP)
Еще пара работ с анализом проблемы с красивыми картинками:
Understanding TCP Incast Throughput Collapse in Datacenter Networks[.pdf]
Safe and Effective Fine-grained TCP Retransmissions for Datacenter Communication[.pdf]
Возникает при следующем сценарии: некий сервер шлет запрос кластеру машин. Все эти машины ему одновременно отвечают. Ответ может быть довольно большой, несколько десятков килобайт. Эти килобайты доходят до свитча, за которым находится наш кластер. Свтич, как это сейчас модно, самый обычный. И буфер у него небольшой. Та часть данных, что в буфер не влезла, будет сброшена. Протокол TCP гарантирует доставку, так что все потерянные пакеты будут посланы еще раз. Вопрос когда. Стандартный RTO (retransmission timeout) - 200 ms. Для какого-нибудь облачного сервиса это много. В результате получаем латентность, наша распределенная система работает слишком медленно.
Здесь описание TCP Incast с правильной картинкой: TCP Incast and Cloud application performance
Еще одно хорошее описание: Fine-grained TCP Retransmissions
Как с этим можно бороться. Простой и действенный способ - уменьшить RTO до 1 ms. Еще можно изменить протокол TCP: Data Center TCP (DCTCP)
Еще пара работ с анализом проблемы с красивыми картинками:
Understanding TCP Incast Throughput Collapse in Datacenter Networks[.pdf]
Safe and Effective Fine-grained TCP Retransmissions for Datacenter Communication[.pdf]
воскресенье, ноября 25, 2012
Несколько крупных IT компаний договорились не переманивать программистов
Обсуждаемая новость последних дней - Пакт о ненападении: Parallels договорилась с «Яндексом», «Касперским» и другими не хантить программистов.
Очень странное решение. Во-первых, оно дает преимущество компаниям, которые в данной инициативе не участвуют.
Во-вторых, интересно, насколько это вообще легально и что по этому поводу думает ФАС.
Программисты недовольны, что ожидаемо. (На недовольных программистов можно посмотреть, например, тут)
Очень странное решение. Во-первых, оно дает преимущество компаниям, которые в данной инициативе не участвуют.
Во-вторых, интересно, насколько это вообще легально и что по этому поводу думает ФАС.
Программисты недовольны, что ожидаемо. (На недовольных программистов можно посмотреть, например, тут)
среда, ноября 21, 2012
Статья Storage Layout of Polymorphic Objects
Начинающим С++ программистам часто бывает непонятно каким образом и где хранятся виртуальные функции. Статья Storage Layout of Polymorphic Objects рассказ в картинках о том, как будут размещены поля и виртуальные функции объекта, рекомендую.
via Code_Analysis
via Code_Analysis
вторник, октября 30, 2012
Статья про сортировку 1 миллиона чисел с ограничением по памяти
На Stack Overflow кто-то сформулировал следующую задачу: по сети приходят восьмизначные числа. Их приходит миллион штук, их надо отсортировать и переслать дальше. Проблема в том, что устройство, на которое они приходят - это компьютер с 1 Мб оперативной памяти. И это вся память что есть, жесткого диска нет. Короче говоря, реализовать сортировку по-тупому не получится, ибо не лезет.
Вот здесь описано решение этой задачи 1MB Sorting Explained. Подход выбран следующий: числа накапливать и сортировать кусками. Отсортированную последовательность хранить в пожатом виде.
Вот здесь описано решение этой задачи 1MB Sorting Explained. Подход выбран следующий: числа накапливать и сортировать кусками. Отсортированную последовательность хранить в пожатом виде.
понедельник, июля 09, 2012
Отказ амазоновского облака 29-го июня
29 июня, это пятница вечер, в Северной Вирджинии штормило. Что привело к проблемам с электричеством в датацентрах Амазона. Переход на резервное питание прошел не очень гладко, поэтому некоторые американские сервисы, которые используют амазоновское облако, либо не работали вообще, либо работали с перебоями. Среди этих сервисов были Netflix, Instagram и много-много других поменьше. Пользователи расстроились, потому что пятница вечер, хочется фильмов и фоток, а тут ничего не работает.
После этих печальных событий Амазон написал отчет на тему "что это было?". Summary of the AWS Service Event in the US East Region
Netflix написал свой отчет: Lessons Netflix Learned from the AWS Storm
А Дмитрий Самовский проанализировал отчет Амазона Applying 5 Whys to Amazon EC2 Outage
Ссылки по теме:
Отказ Windows Azure 29-го февраля
Перевод статьи Summary of the Amazon EC2 and Amazon RDS Service Disruption in the US East Region
После этих печальных событий Амазон написал отчет на тему "что это было?". Summary of the AWS Service Event in the US East Region
Netflix написал свой отчет: Lessons Netflix Learned from the AWS Storm
А Дмитрий Самовский проанализировал отчет Амазона Applying 5 Whys to Amazon EC2 Outage
Ссылки по теме:
Отказ Windows Azure 29-го февраля
Перевод статьи Summary of the Amazon EC2 and Amazon RDS Service Disruption in the US East Region
понедельник, июня 18, 2012
Интервью Алексея Пахунова на OpenQuality.ru
Хорошее интервью и название правильное: Нужно дело делать, а не языком трепаться
В послужном списке Алексея Пахунова, известного как «Not a kernel guy», более семи лет работы в трех подразделениях Microsoft (Office, OSD и MSR), участие в двух крупных проектах (Axapta и Windows) и нескольких мелких. Текущее место работы – Google. Низкоуровневая разработка, “серьезность” разработчика, тестирование Windows и Chrome, “шерифы” в Google, TDD “по-взрослому”, время-качество-деньги, импровизация как причина авралов – вот некоторые темы нашей беседы.
понедельник, июня 11, 2012
Обзор исходников Doom3
Некоторое время назад исходники Doom3 были выложены в открытый доступ. Но в исходниках без доков разбираться довольно тяжело. Так вот, Фабьен Санглар написал по ним обзор со схемами, картинками, видео. Также он позадавал вопросы Кармаку по исходникам. Если вы мечтаете писать игры, но не знаете с чего начать, то Фабьен сделал вам прекрасный подарок.
Несколько фактов оттуда:
Несколько фактов оттуда:
- Впервые в истории id Software код написан на С++, а не на С
- В коде широко используются абстракция данных и полиморфизм
- Темплейты используются только для низкоуровневого кода
- По мнению Фабьена это вторая по качеству кодобаза от id Software после Doom iPhone
- Благодаря инкапсуляции код легко читать
- Дни оптимизации ассемблерного кода на низком уровне прошли
понедельник, июня 04, 2012
Статья Hash Functions for C++ Unordered Containers
И еще одна интересная проблема из переписки. С ней сталкиваются все, кто более-менее серьезно пытается использовать хэш-контейнеры в С++.
Итак, вы пытаетесь положить свой класс в, скажем, unordered_map. И получаете сообщение об ошибке примерно такого вида:
О том как это сделать есть хорошая подробная статья Hash Functions for C++ Unordered Containers.
Пример оттуда с самым простым способом определить хэш-функцию
cannot convert from 'const Name' to 'size_t'
Это крайне невразумительное сообщение об ошибке означает, что вы должны определить хэш-функцию для своего класса, чтобы можно было его использовать с данным контейнером.О том как это сделать есть хорошая подробная статья Hash Functions for C++ Unordered Containers.
Пример оттуда с самым простым способом определить хэш-функцию
//
// This program uses a simple user-defined function
// to provide a hash function for use in unordered_map
//
// Compile this example with Visual Studio 2010
// or g++ 4.5 using -std=c++0x
//
#include <iostream>
#include <unordered_map>
#include <string>
#include <functional>
using namespace std;
typedef pair<string,string> Name;
size_t name_hash( const Name & name )
{
return hash<string>()(name.first) ^ hash<string>()(name.second);
}
int main(int argc, char* argv[])
{
unordered_map<Name,int,decltype(&name_hash)> ids(100, name_hash );
ids[Name("Mark", "Nelson")] = 40561;
ids[Name("Andrew","Binstock")] = 40562;
for ( auto ii = ids.begin() ; ii != ids.end() ; ii++ )
cout << ii->first.first
<< " "
<< ii->first.second
<< " : "
<< ii->second
<< endl;
return 0;
}
вторник, мая 15, 2012
Обзор ультрабука ASUS Zenbook UX31E у Экслера
Алекс Экслер написал обзор ультрабука ASUS Zenbook UX31E. У меня такой, только UX31 без E. Отличный ультрабук, скажу я вам. Алекс жалуется на клавиатуру, у меня с ней проблем не возникало. И про камеру он ничего хорошего сказать не смог, тут я с ним соглашусь, фиговая камера.
В остальном - экран с высоким разрешением, шустрый, а главное - легкий. Для меня вес был главным критерием, обычные ноутбуки таскать мне было тяжело. Тихий, не греется, ибо SSD. В комплекте есть простенький чехол.
Короче, рекомендую. Я очень довольна.
В остальном - экран с высоким разрешением, шустрый, а главное - легкий. Для меня вес был главным критерием, обычные ноутбуки таскать мне было тяжело. Тихий, не греется, ибо SSD. В комплекте есть простенький чехол.
Короче, рекомендую. Я очень довольна.
четверг, мая 10, 2012
Как работается в Valve
Valve Software находится у нас тут неподалеку в городе Бельвью, занимаются они разработкой игр. Half Life, Counter Strike, слышали наверное. И Steam еще они делают.
Недавно в открытом доступе появилась их New Employee handbook, в которой рассказывается, что в Valve вообще нет менеджеров и начальников и каждый сам себе начальник. Народ в интернетах активно это дело обсуждает.
Valve Handbook for New Employees
Bosses are for slackers like Google - статья на gigaom.com
Valve employee manual describes the greatest workplace I've ever heard of - обсуждение на BoingBoing
Ramblings in Valve Time - блог Майкла Абраша
Valve handbook - пост в ЖЖ anton-irinev
Недавно в открытом доступе появилась их New Employee handbook, в которой рассказывается, что в Valve вообще нет менеджеров и начальников и каждый сам себе начальник. Народ в интернетах активно это дело обсуждает.
Valve Handbook for New Employees
Bosses are for slackers like Google - статья на gigaom.com
Valve employee manual describes the greatest workplace I've ever heard of - обсуждение на BoingBoing
Ramblings in Valve Time - блог Майкла Абраша
Valve handbook - пост в ЖЖ anton-irinev
четверг, апреля 19, 2012
Исходники Принца Персии
ТОГО Принца Персии. Конечно ассемблер.
Prince-of-Persia-Apple-II
Prince-of-Persia-Apple-II
* auto
DemoDisk = 0
org = $5400
tr on
lst off
*-------------------------------
*
* PRINCE OF PERSIA
* Copyright 1989 Jordan Mechner
*
*-------------------------------
org org
jmp AUTOCTRL
jmp CHECKSTRIKE
jmp CHECKSTAB
jmp AUTOPLAYBACK
jmp CUTCHECK
среда, апреля 11, 2012
Статья Теренса Тао об анонимности в Интернете
Известный математик Теренс Тао рассказывает об анонимности в Интернете и об использовании дезинформации:
in today's online world, a crowd of billions of other people is considerably less protection for one's anonymity than one may initially think, and just because the first 20 or 30 bits of information you reveal about yourself leads to no apparent loss of anonymity, this does not mean that the next 20 or 30 bits revealed will do so also.
среда, апреля 04, 2012
воскресенье, марта 18, 2012
Книга Programming Interviews Exposed
Народ периодически спрашивает про книжки для подготовки к интервью. Мой мудрый бородатый коллега посоветовал книгу
Programming Interviews Exposed: Secrets to Landing Your Next Job. Посмотрела ее по диагонали - достойная книга, могу рекомендовать. Хорошо подойдет тем, кто ищет свою первую работу, а если не первую, то кое-какие вещи тоже будет полезно освежить в памяти.
Обложка только у нее странная, напоминает фильм Office Space.
Updated 8.5.2015: Это старое издание, уже есть новое.
Старое издание можно купить на Озоне здесь.
Programming Interviews Exposed: Secrets to Landing Your Next Job. Посмотрела ее по диагонали - достойная книга, могу рекомендовать. Хорошо подойдет тем, кто ищет свою первую работу, а если не первую, то кое-какие вещи тоже будет полезно освежить в памяти.
Обложка только у нее странная, напоминает фильм Office Space.
Updated 8.5.2015: Это старое издание, уже есть новое.
Старое издание можно купить на Озоне здесь.
суббота, марта 17, 2012
Отказ Windows Azure 29-го февраля
The three truths of cloud computing are: hardware fails, software has bugs and people make mistakes.
29-го февраля были серьезные перебои в работе Windows Azure. Вызваны они были багой в коде, работающим с датами, то есть понятно почему именно 29 февраля.
Вот тут подробный постмортем: Summary of Windows Azure Service Disruption on Feb 29th, 2012
Также там есть немного об архитектуре Azure.
Здесь статья на High Scalability: The Azure Outage: Time Is a SPOF, Leap Day Doubly So
Ссылки по теме:
Перевод статьи Summary of the Amazon EC2 and Amazon RDS Service Disruption in the US East Region
вторник, марта 06, 2012
Бесплатные тесты по С++ на Brainbench
Brainbench предлагает бесплатные тесты по C++, С#, Яве, Питону. Обычно такая щедрость длится недолго.
(Brainbench - известный ресурс, предлагающий такое тестирование. Результаты тестов иногда признаются работодателями. Сами тесты хороши, чтобы набить руку перед собеседованием)
Ссылка на страницу с регистрацией.
via Boris Rozenshteyn
(Brainbench - известный ресурс, предлагающий такое тестирование. Результаты тестов иногда признаются работодателями. Сами тесты хороши, чтобы набить руку перед собеседованием)
Ссылка на страницу с регистрацией.
via Boris Rozenshteyn
пятница, февраля 17, 2012
Рекрутеры Бинга приедут в Москву где-нибудь в начале апреля
Рекрутеры Бинга приедут в Москву где-нибудь в начале апреля. Мэт Коннот (Mat Connot) просил меня запостить объявление и уточнил, что речь идет о позициях Principal Software Engineers, Senior Software Engineers и Software Development Engineers и что крайний срок отправки резюме 21 марта 2012.
(Об этом уже было у меня в твиттере, просто повтор для тех, кто твиттер не читает)
![]()
Bing Search Team, Microsoft
Have you ever considered relocating to the U.S.? Do you like to work on the hardest problems in computing with the biggest user impact? Have you ever dreamt about revolutionizing the way the world interacts with the web? Engineers at Bing are working on the biggest challenges in computing related to social search, local, relevance, computer vision, machine learning, semantic discovery, R&D, data mining and NLP and have some of the best resources in the world available to them.
The Bing Search Engineering Team will be visiting Moscow for a recruiting event in early April. If you’re interested in learning more, please email me (Mathias Connot) right away at mconnot@microsoft.com and please include a copy of your curriculum vitae.
We work on the cutting edge of computer science, where a petabyte of data is “small”, ten thousand machines is a “little cluster”, and one second is an “eternity”. Our tools include machine learning models and the world's largest distributed system. We are a high powered startup inside of Microsoft, working on technology and products that are critical to our company’s success and at the heart of the customer experience of the internet.
Hopefully you’ve had a chance to experience Microsoft’s new search engine Bing and seen how we're changing the game in Search. Bing is receiving amazing reviews and generating lots of great buzz. Bing has had a fantastic year so far. After the successful brand launch earlier this year, the team has been working hard, both on closing the gap with our competitors in key areas like relevance, as well as driving thought leadership with new paradigms for search and user experience. This is probably one of most exciting times to be on the team, and you have an opportunity to help shape its future.
We are looking for cream of the crop - motivated developers with excellent architecture, design, coding, debugging and problem solving skills and a track record of shipping high quality software. Qualified candidates should be able to work independently as well in a collaborative team setting to research innovative solutions to challenging business/technical problems.
Although we welcome candidates with experience in one of information retrieval, machine learning, data mining, building large-scale distributed systems or building high-performance systems, we do NOT require it.
Required skills:
• BS in Computer Science or equivalent required. MS/PhD welcome.
• Strong theory/algorithms background and exceptional problem solving and analytical skills.
• Extensive software design and development skills/experience with C/C++/C#/Java
• Excellent communications skills, both verbal and written
• Ability and willingness to work independently and in a team to research innovative solutions to challenging technical problems.
The Bing Engineering Team will be visiting Moscow for a recruiting event in early April. If you’re interested in learning more, please email me (Mathias Connot) right away at mconnot@microsoft.com and please include a copy of your curriculum vitae.
(Об этом уже было у меня в твиттере, просто повтор для тех, кто твиттер не читает)
Bing Search Team, Microsoft
Have you ever considered relocating to the U.S.? Do you like to work on the hardest problems in computing with the biggest user impact? Have you ever dreamt about revolutionizing the way the world interacts with the web? Engineers at Bing are working on the biggest challenges in computing related to social search, local, relevance, computer vision, machine learning, semantic discovery, R&D, data mining and NLP and have some of the best resources in the world available to them.
The Bing Search Engineering Team will be visiting Moscow for a recruiting event in early April. If you’re interested in learning more, please email me (Mathias Connot) right away at mconnot@microsoft.com and please include a copy of your curriculum vitae.
We work on the cutting edge of computer science, where a petabyte of data is “small”, ten thousand machines is a “little cluster”, and one second is an “eternity”. Our tools include machine learning models and the world's largest distributed system. We are a high powered startup inside of Microsoft, working on technology and products that are critical to our company’s success and at the heart of the customer experience of the internet.
Hopefully you’ve had a chance to experience Microsoft’s new search engine Bing and seen how we're changing the game in Search. Bing is receiving amazing reviews and generating lots of great buzz. Bing has had a fantastic year so far. After the successful brand launch earlier this year, the team has been working hard, both on closing the gap with our competitors in key areas like relevance, as well as driving thought leadership with new paradigms for search and user experience. This is probably one of most exciting times to be on the team, and you have an opportunity to help shape its future.
We are looking for cream of the crop - motivated developers with excellent architecture, design, coding, debugging and problem solving skills and a track record of shipping high quality software. Qualified candidates should be able to work independently as well in a collaborative team setting to research innovative solutions to challenging business/technical problems.
Although we welcome candidates with experience in one of information retrieval, machine learning, data mining, building large-scale distributed systems or building high-performance systems, we do NOT require it.
Required skills:
• BS in Computer Science or equivalent required. MS/PhD welcome.
• Strong theory/algorithms background and exceptional problem solving and analytical skills.
• Extensive software design and development skills/experience with C/C++/C#/Java
• Excellent communications skills, both verbal and written
• Ability and willingness to work independently and in a team to research innovative solutions to challenging technical problems.
The Bing Engineering Team will be visiting Moscow for a recruiting event in early April. If you’re interested in learning more, please email me (Mathias Connot) right away at mconnot@microsoft.com and please include a copy of your curriculum vitae.
понедельник, февраля 06, 2012
Закончилась конференция GoingNative 2012

Давайте я расскажу про те доклады, на которых я побывала, а вы уж сами решайте - смотреть вам их или нет.

Ханс Боэм рассказывал про потоки, довольно много было про race conditions, примеры кода где они есть, примеры кода где их таки нет...
Лававей рассказывал про STL в С++11 на такой космической скорости, что мне было трудно следить за его мыслью.

Don't think I'll be able to stay up to see whatever Cthuloid-template-horror Andrei Alexandrescu has in store. #GoingNative
после чего сказал "и я здесь не для того, чтобы вас разочаровать" и показал, что можно закрутить variadic templates по-разному. Что-либо оттуда на практике я не буду применять, думаю, никогда. На следующий день он рассказывал, что один из слушателей ему сказал: "Андрей, мне понравился твой доклад, но я ничего не понял". Очень правильная фраза.
Следующий день начался с доклада Саттера. Прекрасный и полезный доклад, с примерами, разбором каких-то не очевидных вещей. Если у вас особенно нет времени, но вы хотите получить общее представление о С++11 можно послушать только один этот доклад. Он, кстати, привел даты выхода книг по С++11:

Дальше Чандлер Карус рассказывал про Clang. Было бодро и весело, но я так и не поняла, чем все то, о чем он рассказывал, отличается от других статических анализаторов кода.

Неожиданным для меня оказался состав пришедших на конференцию. Индусов и китайцев было очень-очень мало. Больше половины пришедших составляли американцы. И где-то треть - русскоязычные. Если послушаете вопросы-ответы на конференции, то не раз услышите родной акцент. На обеде народ разговаривал на двух языках - русском и английском.
Кстати про обед. Кормили шикарно, причем был не только обед, но и завтрак со свежими фруктами, и перерывы на чай с тортами и печеньками.
Итого: Герб Саттер сказал нам, что C++11 feels like a new language, посмотрим как оно на самом деле.
(Спасибо моему коллеге Артему за фотографии)
суббота, января 14, 2012
Статья "Notes On Scalability"
В статье Notes on Scalability сформулированы пять принципов построения масштабируемых систем. Я привожу краткий перевод, по ссылке все подробнее и интереснее.
1. Build it to Break.
Что бы вы ни разрабатывали, оно сломается. Будьте к этому готовы.
2. Everything is a Feature
Ваше приложение - это набор решений и компромиссов.
3. Scale Out, Not Up
Хорошо, когда проблемы масштабирования можно решить добавлением серверов.
4. Buy More Storage
Много маленьких дисков обычно быстрее одного здорового.
5.You’re Going to Do It Wrong
Вы ошибетесь. Будьте готовы переписывать свой код и пробовать новые идеи.
По ссылке с highscalability.
1. Build it to Break.
Что бы вы ни разрабатывали, оно сломается. Будьте к этому готовы.
2. Everything is a Feature
Ваше приложение - это набор решений и компромиссов.
3. Scale Out, Not Up
Хорошо, когда проблемы масштабирования можно решить добавлением серверов.
4. Buy More Storage
Много маленьких дисков обычно быстрее одного здорового.
5.You’re Going to Do It Wrong
Вы ошибетесь. Будьте готовы переписывать свой код и пробовать новые идеи.
По ссылке с highscalability.
понедельник, января 09, 2012
Карта С++11
English translation
В последнее время на землях языка С++ происходили масштабные изменения. И старая карта стала безнадежно устаревшей. Поэтому в новогодние праздники мы с Джимом напряглись и изобразили их все на карте. Вернее, изображал все конечно он, умение рисовать не относится к числу моих талантов. Он не только добавил бои за новый стандарт, но и значительно улучшил старые территории.
Так что встречайте новою версию! Осторожно, она здоровая - 13 мегов.

Для тех, кто не осилил закачать 13 мегов (кто вы, люди?) - JPEG на 4 мега
Кроме банального "распечатать и повесить на стену" народ нашел старой карте множество применений. В одном немецком вузе ее используют для обучения студентов. Несколько раз она была использована во время выступления на конференциях. Магазин из какого-то российского города (забыла уже откуда именно), торгующий холодным оружием, зачем-то использовал элемнты карты в своей рекламе.
Мы не против того, чтобы вы делали с картой что угодно. Но помните, что часть картинок честно стырена из интернетов и копирайтов на них у нас нет.
О найденных ошибках и опечатках сообщайте в редакцию, пожалуйста. Updated: опечатку с management поправили
Исходники:
cppmap-2012.cdr - собственно исходник
cppmap-2012.svg - он же, конвертнутый в более популярный формат
reikland_paper.jpg - текстура потертой бумаги
Ссылки по теме:
Карта языка C++ (The C++ Lands) - cтарая карта
В последнее время на землях языка С++ происходили масштабные изменения. И старая карта стала безнадежно устаревшей. Поэтому в новогодние праздники мы с Джимом напряглись и изобразили их все на карте. Вернее, изображал все конечно он, умение рисовать не относится к числу моих талантов. Он не только добавил бои за новый стандарт, но и значительно улучшил старые территории.
Так что встречайте новою версию! Осторожно, она здоровая - 13 мегов.

Для тех, кто не осилил закачать 13 мегов (кто вы, люди?) - JPEG на 4 мега
Кроме банального "распечатать и повесить на стену" народ нашел старой карте множество применений. В одном немецком вузе ее используют для обучения студентов. Несколько раз она была использована во время выступления на конференциях. Магазин из какого-то российского города (забыла уже откуда именно), торгующий холодным оружием, зачем-то использовал элемнты карты в своей рекламе.
Мы не против того, чтобы вы делали с картой что угодно. Но помните, что часть картинок честно стырена из интернетов и копирайтов на них у нас нет.
О найденных ошибках и опечатках сообщайте в редакцию, пожалуйста. Updated: опечатку с management поправили
Исходники:
cppmap-2012.cdr - собственно исходник
cppmap-2012.svg - он же, конвертнутый в более популярный формат
reikland_paper.jpg - текстура потертой бумаги
Ссылки по теме:
Карта языка C++ (The C++ Lands) - cтарая карта
пятница, января 06, 2012
CodeFlow - тулза для code review

A Bar, an Idea, and a Garage: The Story of CodeFlow
CodeFlow - прекрасная вещь, вся из себя интуитивно понятная, рекомедую. Мы ей пользуемся и довольны.