dmitriid
2836465#25 > постоянные тяжбы

ну так и у эппла постоянные тяжбы, и?

отсрочки старта новых моделей

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

запреты

На модели 4-летней давности

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

Ахахаххахахаха инновации. Можно услышать, что такого инновационного создал Самсунг? А то про начинку iPhone 6S люди писали кипятком от собственно инноваций. А про Самсунг никто никогда даже близко не говорит «Самсунг внедряет инновации».

Ну и да. То, чем занимается Apple, — инновации в чистом виде. Прямо по определению

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

Можно и в гомеопатию вливать миллиарды долларов, действующих лекарств при этом не получится
dmitriid
баттл банкизло кодмазафакадуюспикит статика динамика *erlang *haskell *ктонановенького

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

Есть модуль X, реализующий API-вызов «изменить сумму заказа».

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

Заказ — это сущность, получаемая из базы данных c уже готовыми свойствами. То есть нет последовательности вызовово create_order->risk_check->....->change_sum. Когда-то кем-то где-то был создан заказ. Через две недели мы получили API-вызов, который требует изменить сумму в этом заказе.

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

Конечно, в конце концов интересут решение Шага 3. Но интересно увидеть и весь процесс Шаг 1 -> Шаг 2 -> Шаг 3

Шаг 1

— если заказ неотправлен и непредоплачен, сумму можно увеличивать и уменьшать

— если заказ отправлен, сумму нельзя увеличивать, можно уменьшать

— если сумма увеличивается, мы должны провести risk check. если risk check не проходит, товар никак не помечается, но изменение суммы не проходит

— если товар помечен, как risk, то изменять сумму нельзя


Шаг 2

Потом оказалось, что не, так нельзя, поэтому внеслись изменения.

Изменение суммы:

Все то же самое, что и в первой задаче, только:

— увеличивать можно на max(фиксированная сумма1, процент1 от оригинальной суммы заказа)

— уменьшать можно на max(фиксированная сумма2, процент2 от оригинальной суммы заказа),
где сумма1, сумма2, процент1, процент2 — это конфигурация, считываемая из базы данных

Если изменение не попадает в эти рамки, то увеличить/уменьшить нельзя

Шаг 3

И этого оказалось недостаточно

Все то же самое, что и в шаге 2. Дополнительно:

— если заказ предоплачен (неважно, отправлен или нет), можно увеличивать сумму, если это разрешено конфигурацией магазина. Сумма, на которую можно увеличивать высчитывается, как в шаге 2

— если заказ предоплачен, неотправлен, и сумма увеличивается, надо сделать auth-запрос в банк. если он не срабатывает, увеличить нельзя.

— если заказ предоплачен, отправлен, и сумма увеличивается, надо сделать auth-запрос в банк на разницу в сумме, а потом сделать capture запрос на всю сумму. Если хоть один из них не срабатывает, увеличить нельзя.
dmitriid
Диван Тут на одном програмерском форуме программисты на полном серьезе заявляют, что «От исчезнование Apple'а ничего в мире в худшую сторону не изменится. Совсем ничего. Примерно как кока-кола.». А вот если исчезнет Газпром, то не забывайте, что «это и сервисные компании и разведка и бурение и подземные хранилища и танкеры и треминалы и СПГ и производство компресоров…», всем станет хуже.

Вы говорите, каша в голове только у необразованных людей? Ага-ага
dmitriid
Apple USB lightning людиидиоты Тут рядом в #2724274 «смишно» рассказывают про Apple'овские коннекторы. Мол, надо было microUSB использовать

Как-то все забывают, что стандартов USB — штук 8 (и два уже deprecated) и почти все несовместимы друг с другом. В следующем году еще один будет, Type C (они наконец-то осилили придумать коннектор, который все равно, как втыкать). Ах да, Type C будет обратно несовместимым. Естественно, ведь единственным обратно совместимым USB-стандартом был USB 3.0.

При этом у Apple'а за 13 лет было ровно два типа коннекторов: оригинальный 30-pin и Lightning, причем lightning на голову выше microUSB.

Но, естественно, Apple — говно, и ничего не понимают :-\
dmitriid
Смешно наблюдать, как весь интернет ржет над Грибом-идиотом, вещающим про Wi-Fi на АЭС. Еще смешнее наблюдать, как все игнорируют просто прекрасную цитату из того же текста:

«Согласно нашему закону, сейчас более пятнадцати структур могут проводить личный досмотр граждан. А ФСБ не имеет на это право. Очевидно, что ликвидация этого пробела уже давно необходима», — сказал член ОП Максим Григорьев.

но действительно, Wi-Fi — это же так прикольно, быгыгыгыгыгы.

:-\
dmitriid
Макс, по поводу либерализма и Штатов: да, тоже согласен. Как всегда, тут тоже спектр :) По поводу либерализма у меня недавно появилась любимая цитата: rsdn.ru
dmitriid
имхо, квитанции, особенно на коммунальные услуги, должны огромным текстом показывать, кому и за что вносится оплата. если все формы оплаты услуг одинаковые, то да — хрен тут что докажешь
dmitriid
HR'ы убивают

Уже две, а то и три недели пишу повсюду, что опаздываю на новую работу (должен быть 21-го ноября, но хорошо, если к тому времени я только поеду в Бухарест забирать residence permit, с которым вообще можно полететь). То есть буду хорошо, если 23-24-го.

Сегодня получаю:

Hi Dmitrii,

We want to welcome you to your first day here at Klarna on Monday the 21th of November, at 09:30.

и т.п.

Пишу, мол, спасибо, и смайлик ставлю


Получаю:

Have a nice weekend and see you Monday :)


Это при том, что она полностью в курсе всех моих перипетий с документами и проч.

И шо теперь ожидать? :)
dmitriid
brew install erlang

хухъ. HiPE вылетает при компиляции LLVM (по дефолту в последних ОСях)

brew install —disable-hipe erlang

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

brew install —use-gcc erlang

все счастливы, даже hipe компилируется, В СТРАНЕ НАДОИ РАСТУТ, КУРЫ ПОРОСЯТСЯ, СЧАСТЬЕ ВСЕМ, ВСЕ ХОДЯТ ДОВОЛЬНЫЕ, УЛЫБАЮТСЯ



вот какого выхухоля оно заходит в hipe, если —disable-hipe?
dmitriid
Что меня раздражает в текущем состоянии… ну, скажем, веба — это невозможность нормально, без геморроя, повторить его поведение на собственном хостинге.

Я хочу собственный DropBox
Я хочу собственный Amazon S3 (с прозрачным и быстрым назначением CNAME'ов, как и в S3)
Я хочу собственный Jabber-сервер с гейтами в ICQ, например (сейчас пользуюсь бесплатной версией hosted.im)
Я хочу еще там что-то, что сейчас не упомню.

Ни для чего нет «установил, забыл, работает». Надо все ручками, хаками и непонятно чем
dmitriid
Думаю над редизайном и обновлением erlanger.ru. Предварительный deadline: Новый год. Но для этого надо еще форум и вики перевести на Zotonic. ыыыыы