Pull to refresh
39
0
questor @questor

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

Send message

Разработка через страдание

Reading time6 min
Views55K
От переводчика:
Немало копий сломано в спорах о том, когда уместнее KISS, а когда DRY, когда лучше как можно быстрее и проще решить задачу любыми средствами, а когда стоит создавать красивые и универсальные абстракции. Натан Марц, автор популярного фреймворка Storm, используемого в Твиттере, предлагает свой вариант. Чтобы не создавать тонны бесполезного кода ради абстрактной универсальности и в то же время не позволять системе превращаться в кашу из костылей, он использует «разработку через страдание» (suffering oriented programming).



Однажды меня спросили: «Как ты решился пойти на такой страшный риск — писать Storm одновременно с запуском стартапа?» (Storm — фреймворк для распределённых вычислений в реальном времени). Да, пожалуй, со стороны создание такого крупного проекта для стартапа кажется крайне рискованным. Тем не менее, с моей точки зрения это вообще не было рискованным делом. Трудным, но не рискованным.

Я использую стиль разработки, который сильно уменьшает степень риска таких больших проектов, как Storm. Я называю этот стиль «разработкой через страдание». В двух словах: не занимайтесь реализацией технологий, от отсутствия которых вы не испытываете страданий. Этот совет применим как к большим, архитектурным решениям, так и к маленьким повседневным задачам. Разработка через страдание существенно уменьшает риск, гарантируя, что вы всегда работаете над чем-то важным, и что вы хорошо разобрались в предметной области, прежде чем вложить в решение много сил.

Я придумал такую мантру разработки: «Сначала сделай, чтобы было. Затем — чтобы было красиво. Затем — чтобы было быстро».
Читать дальше →

Как устроен Forex и нужен ли он

Reading time8 min
Views401K
Когда речь заходит о фондовом рынке и торговле на бирже, первое, что приходит на ум многим людям – это форекс. Действительно, реклама этого вида инвестиций (хотя таковыми операции на этом рынке можно назвать с натяжкой) проникла во многие сферы нашей жизни – успешные трейдеры, которые зарабатывают тысячи долларов параллельно с основной работой или лежа на пляже, смотрят на нас и с плакатов в вагонах метро, и с баннеров в Сети. Между тем, здесь все далеко не так просто.

image
Читать дальше →

FileAPI 2.0: Загрузка файлов на сервер год спустя

Reading time11 min
Views70K
FileAPI 2.0Привет Хабр! Примерно год назад я представил вашему вниманию первую версию open-source библиотеки FileAPI, предназначенную для работы с файлами на клиенте и последующей загрузки на сервер.

За это время был пройден долгий путь. Библиотека заработала 670+ звезд и 90+ форков. С помощью github-сообщества удалось исправить множество «детских» проблем и внести ряд улучшений. Было закрыто более 100 тасков, и благодаря Илье Лебедеву сделана загрузка файлов по частям. Сегодня я с гордостью хочу представить вам FileAPI 2.0.
Читать дальше →

Настоящая жизнь

Reading time3 min
Views56K
Всю неделю Пашка пахал, как проклятый: уроки в школе, работа по дому, домашка. Причём сделав основную, он ещё решал задачи повышенной сложности по математике и прочитал тот роман, что будет в программе по литературе только в следующем месяце. Даже сестрёнку из детсада подрядился забирать. Пашке было ради чего, Пашка старался. В конце-концов, родители сказали, что от его поведения будет зависить вопрос с доступом к компьютеру на выходных. Если он всё сделает верно — никакого компьютера целых два дня он видеть не будет.
Читать дальше →

Как стать руководителем

Reading time7 min
Views35K


Мы в Alconost’е очень любим стройную мысль в хорошем изложении. Именно так пишет Бен Хоровиц, в далеком прошлом — обычный программист, а сегодня — соучредитель одного из самых успешных мировых венчурных фондов. В свободное от инвестирования время Бен делится всеми нажитыми знаниями в своем блоге. Мы не можем молчать. Впечатлились и перевели один из его постов, очень уж он хорош и полезен.

Управленцы, налетай!

Читать дальше →

Прекратите скручивать (восклицательный знак)

Reading time6 min
Views1.8M
Ну действительно, прекратите. Есть куча прикольных штук для соединения самых разнообразных проводов, а все равно технология «откусить зубами изоляцию, скрутить, замотать изолентой» жива до сих пор.

Дальше много текста, фотографий, разборок. Ну все как обычно

«Он видел их семью своими глазами»

Reading time6 min
Views66K

Можешь выбрать подходящую к заголовку поста картинку?





Тогда научи робота! Он тоже хочет.


Команда проекта Открытый корпус просит хабралюдей помочь разметить свободно доступный (CC-BY-SA) корпус текстов. Под катом мы расскажем о том, что такое корпус, зачем он нужен, как обстоят дела с корпусами в России и за рубежом, почему так плохо и какой у нас план.

Читать дальше →

Астрология и Data mining

Reading time4 min
Views24K

Как и многие люди технического склада ума, я с крайним недоверием отношусь к астрологии, гороскопам и прочим псевдонаукам. Моё мировозрение пошатнулось когда я от скуки решил изучить влияение времени года в которое рождается человек, на его психические особенности. Оценка психических особенностей производилась по результатам соционического теста из приложения VK, которое насчитывает более 500000 пользователей. Надёжность и валидность теста небольшая, да и вся соционическая модель имеет ряд проблем. Но нам важно другое: понять есть ли хоть какие-то отличия между людьми родившимися в разное время. Объём выборки в полмиллиона человек позволяет надеяться на положительный результат. В ходе исследования ожидалось получить линейную зависимость между продолжительностью светлого времени суток в день рождения человека и его психотипом, но получилось
нечто совсем иное.

Делаем ядерную люстру на 100'000 люмен

Reading time4 min
Views285K
Существует стереотип, что «IT»-шник должен сидеть в полумраке, освещаемый лишь светом монитора. Не знаю как вам, а мне всегда было комфортнее при ярком освещении. Сначала это было 3x100W обычных лампочек, потом 250W люминесцентных ламп, после последнего переезда — одна 500W галогенка… Но этого все-же было недостаточно. Всегда хотелось иметь такое освещение, чтобы не хотелось свет сделать ярче. О создании такой люстры я сейчас и расскажу.
Читать дальше →

Простой пример использования WCF в Visual Studio 2010. Часть 2

Reading time5 min
Views27K
Вы читаете вторую часть:

image

Предыдущая часть описывала простейший пример создания службы (service) WCF и её вызова из клиентского приложения. В этой части вы сможете узнать, как можно достичь точно такого же результата, но теперь мы будем настраивать всё вручную. Таким образом, мы переопределим (override) стандартные конечные точки, настроим наши собственные, и в итоге получим точно такое же поведение нашего приложения.
Читать дальше →

Преждевременное масштабирование — главная причина гибели стартапов?

Reading time2 min
Views2.3K
Компания Startup Genome опубликовала приложение к майскому аналитическому отчёту по стартапам. Теперь собрана информация уже по 3200+ компаниям и подробно рассматривается главная причина, по которой стартапы разваливаются.

Изучив опыт тысяч стартапов, Startup Genome делает вывод: 70% неудач объясняются преждевременным масштабированием.
Читать дальше →

Оптимизация PNG и JPEG без потери качества. Часть 2

Reading time5 min
Views26K
Здравствуй Хабр!
Вот и настало время второй, и, надеюсь, долгожданной части. Настоятель рекомендую ознакомится с первой частью, ибо без этого будет тяжело понять, о чем я буду писать. В этой части я отойду от теории к практике, а именно покажу небольшое проект для комплексной оптимизации изображений.
Читать дальше →

Двойное проникновение теории Джеффри Мура

Reading time2 min
Views2.5K
Наверное многие стартаперы знают, как развиваются рынки по теории Джеффри Мура — от новаторов к раннему большинству(прагматикам), прыгая через пропасть.

Оказалось, эта теория применима не только к рынкам, а также к развитию, собственно, людских сообществ. Вот у нас в Копини теория сработала в этих двух плоскостях.
Читать дальше →

Как Symantec взломала Stuxnet

Reading time4 min
Views12K
imageИстория, стоящая за спиной Stuxnet — червя ориентированного на Иранские атомные электростанции, была описана уже не раз (в том числе и на Хабре) с того момента, как прошедшей весной группа разработчиков из Symantec выпустила этот документ — досье, посвященное этому беспрецедентно сложному творению чьих-то рук. Но видеть — значит верить. И у меня был шанс присутствовать на специальном брифинге в штаб-квартире Symantec, расположенной в Mountain View — California, где Патрик Гарднер, директор их группы безопасности, показывал как все происходило на самом деле. Это был великолепно.

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

Этот софт очень специфичен, и затрагивал отдельный программируемый логический контроллер от компании Siemens, проводящий серию из 9 000 различных центрифуг, используемых для разделения урана. Червь начисто уничтожал около 1000 из них, наносив серьезный ущерб и отбрасывая всю атомную программу Ирана на год, или даже более, назад.

Компьютерная сеть атомной электростанции имеет т.н. «воздушную дыру» между компьютерами используемыми для работы с контроллерами Siemens и обычными компьютерами бизнес-отделения, подключенными к Интернету. Это значит, что компьютеры подключенные к технике от Siemens не имели доступа к внешней сети, что является стандартной и хорошей практикой в сетевой безопасности такого уровня. Как же тогда они оказались заражены червем? Оказалось, в результате человеческого фактора.
Читать дальше →

О такси в Москве

Reading time7 min
Views1.8K
В последнее время вокруг «Такси» не крутятся лишь ленивые разработчики. Почему тема «Такси» так привлекает русских старпёров стартаперов, я не знаю. Для нас, 2Товарища, полтора года назад идея сделать некий проект для такси являлась не понтом или попыткой вытянуть денег из инвестора. Нас интересовала финансовая выгода и идея. Но о проекте я хотел бы рассказать чуть позже. А сейчас, кому интересно, я расскажу о такси в Москве. Так получилось, что только в Москве наш проект объединил более 200 таксопарков, порядка 120 из них всегда онлайн. И под таксопарками я понимаю официальных перевозчиков, с круглосуточными диспетчерскими итп, о которых пойдёт речь далее. За полтора года я узнал о такси больше, чем видел, читал или слушал в любых других источниках. И чем больше я узнаю, тем больше понимаю, насколько действительно велик айсберг. И даже если данный топик не по формату хабра, он необходим при дальнейшем описании проекта, чтобы вы понимали, что к чему и почему всё именно так.
Читать дальше →

Версионная миграция структуры базы данных: основные подходы

Reading time15 min
Views139K
Проблемы контроля версий баз данных и миграций между версиями уже не раз поднимались как на Хабре (1, 2, 3 и др.), так и в Интернете (преимущественно, англоязычном).

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

Эффект второй системы

Reading time4 min
Views7.3K
Когда технический долг команды потихоньку начинает превышать все мыслимые и немыслимые границы, то у команды появляется как минимум два способа его погашения: отрефакторить систему таким образом, чтобы стоимость будущих изменений была не столь высокой или оставить текущую версию системы в покое и переписать все заново. В первом случае легко столкнуться с синдромом рефакторинга, когда изменения делаются не с расчетом уменьшения стоимости будущих изменений, а вносятся просто ради изменений. Во втором же случае может возникнуть «эффект второй системы», когда развиваются и совершенствуются уже никому не нужные функции системы, а мысль «а не переписать ли все нафиг» является первой и единственной, которая приходит в голову команде, как только она сталкивается с чужим кодом.

И хотя в классическом понимании «эффект второй системы» немного отличается от паталогической нелюбви к чужому коду и постоянному его переписыванию, оба эти случая имеют и что-то общее, так что имеет смысл оба эти симптома рассмотреть совместно.
Читать дальше →

Что может Ctrl в Visual Studio

Reading time2 min
Views234K
Одна простая клавиша Ctrl может значительно упростить работу в Visual Studio. Помимо типичных комбинаций, которые нам очень хорошо знакомы, существует также и большое количество других, менее известных, но от этого и более ценных.

Далее список того, что можно делать с клавишей Ctrl.

Читать дальше →

Фламп заставляет людей писать отзывы!

Reading time2 min
Views6.2K
Однажды, блуждая по интернетам, наткнулся на пост одного хорошего человека, вольный пересказ которого сводится к следующему:
Что заставляет людей писать отзывы?
1. Сильные эмоции.
2. Производственная необходимость.
3. Фламп.
Читать дальше →

Открыта регистрация на бесплатный семинар для веб-разработчиков!

Reading time1 min
Views1.8K
Приглашаем вас посетить семинар «Технологии Microsoft для веб-разработчиков». Известный так же как WebCamp, семинар пройдет по адресу БЦ «Крылатские Холмы», ул. Крылатская, д. 17 стр. 1, Москва Россия.

Мероприятие предназначено, прежде всего, для: начинающих веб-разработчиков; разработчиков, осваивающих веб-платформу Microsoft; разработчиков, использующих веб-платформу Microsoft, но не знакомых с возможностями новейших версий компонентов стека веб-технологий (IIS, ASP.NET, SQL Server).

Программа семинара:

11:30-12:00 – Регистрация
12:00-13:00 — WebMatrix – инструмент для быстрого создания веб-сайтов, Гайдар Магдануров, эксперт, Microsoft. В докладе будет рассказано и показано как с помощью бесплатного и простого в использовании инструмента WebMatrix можно быстро создавать, тестировать и публиковать веб-сайты.
13:00-13:30 – Перерыв
13:30-14:00 — Внедряем HTML5 сегодня, Константин Кичинский, эксперт Microsoft. В докладе будут даны ответы на вопросы, тревожащие разработчиков в последнее время: Что такое HTML5? Зачем нужен HTML5, когда и как его внедрять? Как обеспечить совместимость между различными браузерами? Как заставить работать новые элементы в старых браузерах?
14:00-14:30 – Перерыв
14:30-15:30 — Использование SharePoint для разработки корпоративных порталов, Юрий Гугнин, Технический директор, ADV Возможности платформы. Преимущества. Область и примеры применения.

Регистрация на семинар обязательна.

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

Торопитесь! Количество мест на мероприятии ограничено.

Information

Rating
8,632-nd
Location
Москва, Москва и Московская обл., Россия
Registered
Activity