Рубрика «разработка» - 172

«Инвесторы и аналитики спрашивали нас о том, что мы запланировали на будущее. Нашим настоящим ответом было бы: «У нас вообще нет планов».»
— Пол Грэм, разработчик, инвестор, эссеист.

Мне было любопытно познакомиться с прогнозом основателя самого влиятельного бизнес-инкубатора кремниевой долины (Y combinator). Спустя 15 лет с момента публикации эссе Пола Грэма, благодаря компании Edison и отличным людям с Хабра, руки дошли до перевода. Для тех, кому интересно, как происходило зарождение нового продукта и как три программиста бодались с гигантами индустрии, добро пожаловать под кат.

Пол Грэм, «Хакеры и художники», глава 5: «The Other Road Ahead», продолжение - 1

Сентябрь 2001
Оригинал — The Other Road Ahead
(За перевод спасибо Щекотовой Яне)

Читать первую часть главы.

Подход к делу

Иметь возможность выпускать программу незамедлительно — существенный мотиватор. Часто по пути на работу я думал об изменениях, которые мне хотелось внести в приложение, и вносил их в тот же день. Это также работало и для более крупных фич. Даже если на написание чего-то требовалось две недели (а на некоторых проектах и того больше), я знал, что смогу увидеть результат как только все будет реализовано.

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

Крупные компании вместо реализации фич планируют их. По этой причине мы в Viaweb иногда сталкивались с трудностями. Инвесторы и аналитики спрашивали нас о том, что мы запланировали на будущее. Нашим настоящим ответом было бы: «У нас вообще нет планов». У нас были общие представления о том, что бы мы хотели улучшить, но если бы мы знали как, то уже давно бы это сделали. Что мы собираемся делать с течении следующих шести месяцев? Все, что могло бы привести нас к максимально выигрышному положению. Не знаю, осмелился бы я когда-нибудь так ответить, но такова была правда. Планы — это всего лишь синоним к слову «идеи». Когда нас посещали хорошие идеи, мы реализовывали их.Читать полностью »

Алгоритмы сжатия данных без потерь: что они говорят о рынках - 1

В нашем блоге на Хабре мы не только рассматриваем различные технологии финансового рынка, но и описываем различные инструменты, использующиеся аналитиками в ходе его анализа. В частности, не так давно мы писали о том, как гипотезу случайного блуждания можно использовать для прогнозирования состояния финансового рынка. Количественный аналитик хедж-фонда NMRQL Стюарт Рид опубликовал на сайте Turing Finance результаты своего исследования, где применил эту гипотезу для тестирования случайности поведения рынков.

Идея заключалась в следующем: генераторы случайных чисел «прогоняются» через группу тестов NIST, чтобы понять, где возникает уязвимость, позволяющая использовать неэффективность рынка для извлечения прибыли. В ходе эксперимента автор пришел к выводу, что поведение рынка нельзя описать в терминах простого подбрасывания монетки, как считают отдельные авторитетные ученые. Некоторым тестам удалось зафиксировать определенный уровень «шума» в поведении рынка. Один из них – тест на линейную сложность – привлек внимание автора, поскольку напоминает об идее отношения случайности и степени сжатия.

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

Представляем вашему вниманию общий обзор Intel System Studio for Microcontrollers 2015. Мы поговорим о том, как использовать этот пакет приложений в деле разработки и отладки приложений для микроконтроллера Intel Quark D1000 на платформе Linux. В частности, рассмотрим организацию взаимодействия компьютера разработчика и микроконтроллера.
Для того, чтобы загрузить на Intel Quark D1000 код (прошить устройство), достаточно mini-USB кабеля. Кроме того, то же самое соединение используется для запуска сеанса отладки GDB с OpenOCD-соединением и обменом командами с UART.

Intel System Studio for Microcontrollers 2015: первые шаги - 1
Подключение Intel Quark D1000 к компьютеру
Читать полностью »

Вольный перевод статьи «Should we use a coding standard?» из блога «Virtuous Code» Avdi Grimm. Мнение автора оригинальной статьи может не совпадать с мнением редакции.
Примечание переводчика: лично я согласен с автором.

Нужен ли стандарт разработки? - 1Читать полностью »

С днем шифровальщикаǃ - 1

5 мая 1921 года в России была создана служба криптографии и шифрования.

В этом же году Эйнштейн получил нобелевку «За заслуги перед теоретической физикой и особенно за открытие закона фотоэлектрического эффекта», была создана организация «Госстрах», а Гитлер стал председателем NSDAP.

Я поспрашивал коллег из хакспейса и из компании Edison: «Шеннон, Тьюринг, Фейстель, Шамир, Шнайер, наконец. Вот назовите мне хоть одну фамилию советского криптографа?» Все равно что спросить у ясеня или у тройки. Не дают ответа. Видать, советская криптография была настолько хороша, что отлично шифровала все сведения о самой себе.

У меня была попытка раскопать что-нибудь про советскую криптографию, я даже вышел на компанию Анкорт (это те товарищи, которые сделали бриллиантовый криптотелефон и при помощи калькулятора Электроника МК-85С предотвратили «чеченский фрод»), статья была написана, но в последний момент заказчик срулил, а NDA надолго похоронил статью в черновиках.

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

image Книга «Хакеры и Художники», глава 10.

Эта глава есть только в книге, на сайте Пола Грэма она отсутствует.
Кстати, осталось совсем чуть-чуть и будет готова последняя глава книги, тем самым будет полный русский хабраперевод «Хакеров и художников». (Предыдущий перевод — Пол Грэм: «The Other Road Ahead».)

За помощь с переводом спасибо Щекотовой Яне.

Языки программирования «в разрезе»

У любой машины есть набор действий, которые на ней можно выполнить.
Иногда этот набор сильно ограничен. Со своим электрическим чайником я могу совершать только два действия: включать и выключать его. Мой CD проигрыватель будет уже посложнее. Помимо включения и выключения, я могу повышать и убавлять на нем громкость звука, воспроизводить и приостанавливать песни, перейти к следующей или предыдущей композиции, а также воспроизводить все это в случайном порядке.

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

Машинный язык

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

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

put the number 10 in memory location 0
a if location 0 is negative, go to line b
beep
subtract 1 from the number in location 0
go to line a
b ...rest of program…

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

И, кстати, взгляните еще раз на программу. Она и вправду воспроизведет короткий звуковой сигнал 10 раз? Неа, 11. В первой строке мне надо было указать 9 а не 10. Я намеренно поместил в наш пример ошибку, чтобы продемонстрировать важный аспект по поводу языков. Чем больше вам приходится писать для выполнения тех или иных действий, тем сложнее разглядеть ошибки.
Читать полностью »

Привет GT. Не так давно я со своей командой запустил проект проект быстрозарядного повербанка Baton на boomstarter.
Технический обзор быстрозарядных powerbank - 1
В этом материале я не буду поднимать вопросы ценообразования, в этом материале я хочу разобрать технические подробности и нюансы каждой батарейки. Кому интересно — под кат Читать полностью »

image

Полное водоизмещение «Морского охотника» составляет около 140 тонн при перевозке 40 тонн дизельного топлива. Корабль оснащен двумя дизельными двигателями, которые могут достигать максимальной скорости 27 узлов (49,8 км в час) и рассчитан на условную 70-дневную миссию. В случае успеха испытаний ВМС США планируют построить целую флотилию беспилотных кораблей этого типа.

«Морской охотник» был разработан Агентством по перспективным оборонным научно-исследовательским разработкам США (DARPA) и оборонной фирмой Leidos. В течение двух лет судно будет проходить испытания у берегов Калифорнии. По словам представителя DARPA Джареда Адамса, беспилотные суда позволят подвергать людей меньшей опасности в ходе военных операций.
Читать полностью »

image

Клод Шеннон любил на выходных вместе с женой Бетти и коллегой сгонять в Лас-Вегас, чтобы поиграть в блэкджек. Они не поленились и даже разработали первый wearable-компьютер, чтобы заниматься «подсчетом карт» (метод High-Low).

image

Сегодня, 30 апреля 2016 года исполняется 100 лет со дня его рождения. Вместе с компанией Edison, поздравляем основателя теории информации. Кстати, Шеннон является дальним родственником Томаса Эдисона.

Под катом немного интересных достижений именинника.
Читать полностью »

Работа с MySQL: как масштабировать хранилище данных в 20 раз за три недели - 1

Ранее в блоге на Хабре мы рассказывали о развитии нашего продукта — биллинга для операторов связи «Гидра», а также рассматривали вопросы работы с инфраструктурой и использования новых технологий. К примеру, мы рассмотрели плюсы Clojure, ситуации, когда стоит и не стоит использовать MongoDB и ограничения в PostgreSQL.

Сегодня речь пойдет о масштабировании. Разработчики open-source почтового приложения Nylas опубликовали в своем блоге материал о том, как им удалось масштабировать систему в 20 раз за три недели с помощью инструмента ProxySQL. Для этого им пришлось переехать с Amazon RDS на MySQL на EC2. Мы представляем вашему вниманию основные моменты этой интересной заметки.Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js