Имбирь - твой спиритический овощ. Войти !bnw Сегодня Клубы
УНЯНЯ. У нас есть немножечко инфы об этом пользователе. Мы знаем, что он понаписал, порекомендовал и даже и то и другое сразу. А ещё у нас есть RSS.
Теги: Клубы:

В тред призываются люди, состоящие одновременно в следующих множествах:

I. люди, разрабатывающие (или делавшие это в прошлом) нетривиальный софтверный проект (не хуйню в стол) в команде (т.е не аутизм в одно ебало) больше одного года;

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

Так вот I U II, можете начать в коментариях обосновывать, почему вы не долбоебы, например.

#FIULH2 (61) / @ninesigns / 77 дней назад

Почти все охуенные разработчики, которых я встречал (ирл или в интернетах) обладают двумя признаками:
1. шарят в численных методах
2. могут разобраться в любом самом страшном говнокоде

Буду продолжать наблюдения

#SLC0AS (19+1) / @ninesigns / 101 день назад

Почему julia дает пизды вашим любимым* язычкам программирования.

https://julialang.org/blog/2017/01/moredots

Используя dot call как здесь:

X .= f.(2 .* X.^2 .+ 6 .* X.^3 .- sqrt.(X))

или

@. X = f(2X^2 + 6X^3 - sqrt(X))

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

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

Кроме того, есть возможность при помощи библиотеки GPUArrays обсчитывать массивы на opencl/cuda, используя тот же самый код, как и для обычного кода, но используя специальные типы. Все благодаря multiple dispatch и макросистеме.

[*] кроме, пожалуй, хаскеля, если ghc сделает loop fusion и вы не обосретесь с ленивостью

#BD4GXR (37+5) / @ninesigns / 208 дней назад

https://blog.racket-lang.org/2017/10/racket-v6-11.html

Typed Racket supports refinement types and dependent function types. Previously
an experimental feature, refinement types allow types to describe more
interesting properties of values, especially integers. For example, this type
shows that the max function always produces a number at least as big as its
inputs:

(-> ([x : Integer] [y : Integer])
(Refine [z : Integer]
(and (>= z x) (>= z y))))

#JMH83R (6) / @ninesigns / 234 дня назад

Короче copy-pastные ошибки заебали, хочу мод в емаксе, который подсвечивает похожести в скопипащеных строках, может уже есть такое?

#NKD460 (27) / @ninesigns / 283 дня назад

Хуевый дизайн?
Нет времени разбираться кто владеет временем жизни объекта?
Хочется применить чего-нибудь такого новенького?
Не уверен в собственной job security?

std::shared_ptr - твой выбор!

#6HKTWG (5+2) / @ninesigns / 326 дней назад

John Carmack
Using React (JavaScript) has turned out to be a bigger win for VR app

development than I expected -- UI dev is several x faster than Unity.

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

#99DXEH (10+4) / @ninesigns / 455 дней назад

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

вот есть язык программирования. на нём можно написать абсолютно всё. причём можно было и десять лет назад. а для неосиляторов можно делать сбоку песочницы, «умные» указатели (видимо, для неумных программистов они нужны, потому что с обычными указателями нет никаких проблем), даже сборку мусора за теми, кто сам за собой подтереть не способен. но все эти песочницы не должны влиять на стандарт. ни в коей мере.
Iron_Bug ★★ (17.03.2017 18:48:54)

пакетный менеджер (внезапно) в плюсах не нужен. потому что это (ещё более внезапно) - язык программирования, а не комбинат питания для тех, кто не знает, как работать в консоли. не должно быть у языка программирования ни железно приколоченной IDE, ни «пакетного менеджера», ни чего бы то ни было подобного, дикого и несуразного. вся эта шелуха не нужна.

Iron_Bug ★★ (17.03.2017 18:34:36)

Бля, охуенно.

#GGZD0Z (311+1) / @ninesigns / 461 день назад

http://nanapro.org/en-us/
https://github.com/ocornut/imgui

Чо там QT уже можно выбрасывать?

#48TU44 (12) / @ninesigns / 462 дня назад

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

#J2P0EV (12) / @ninesigns / 464 дня назад

Короче, вышел Type driven developement with Idris
Есть СКИДОС на 15$: ``ctwbastacon17'' , то есть чистые байтики можно купить за всего-лишь 25 баксов.

#KFOOF5 (2) / @ninesigns / 464 дня назад

Читаю статью про то как в крестах переизобретают миксины
https://en.wikipedia.org/wiki/Policy-based_design
Ну статья как статья.

Дочитал до низу, а там:

Categories: Romanian inventions

Пиздос.

#0P6ZOM (0) / @ninesigns / 481 день назад

Будущее, которое мы проебали.
https://www.youtube.com/watch?v=5IJ8Kf7mwDY

#PARCG5 (2) / @ninesigns / 490 дней назад

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

«Ах, вы знаете господа я давеча читал про комбинатор неподвижной точки. Ах, ах, божественно! Ах, какая прелесть лябмда-исчисление! Какой блеск, функции высшего порядка, рекурсия. Ах! Ах! Высший класс! Циклы? Ах, глупости! Императивщина. Фи, как скучно!»

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

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

#1QBJZA (13+2) / @ninesigns / 503 дня назад

За три дня стал специластом в Android. Привкус говна во рту еще не прошел, но как-то привыкнуть смог.
До сих про впадаю во фрустрацию когда возникают ошибки типа can not resolve symbol R.layout.activityXXX, который генерится из XML-говна.
Причем вроде все формально верно (ошибок в XML нет), однако - хуй.
Ехал XML через XML.

Уже пришлось поебаться с NDK - собирал gstreamer-andoroid и NDK-13 не мог собрать код под armv7, была проблема с какой-то NEON-овкой инструкцией.

Хотя нормальный комплишен в IntelliJ IDEA это все-таки неплохо.

Короче хуй знает. Пока что удобнее инструментов по создании GUI чем QML я не видел.

#ALAYUX (22+1) / @ninesigns / 524 дня назад

I learned to program on a course that follows SICP, I spent all my college years learning how to program from first principles, building all the pieces from scratch. Building compilers, soft threads implementations, graph parsing algorithms... and I was happy with that way of programming!

Today I'm an iOS developer

#RZ09ME (3) / @ninesigns / 722 дня назад
  • Ставим rtags через ``M-x package-list-pachages''
  • Ставим rtags daemon
  • Для текущего проекта генерим JSON compilation datatabse cmake . -DCMAKE_EXPORT_COMPILE_COMMANDS=1
  • Если проект не на cmake, ставим bear (есть в debian).
  • Делаем bear make
  • Делаем rc -J . в каталоге с compile_commands.json

Наслаждаемся несосущей навигацией по плюсовому проекту из любимого редактора.

#9009YZ (8+1) / @ninesigns / 766 дней назад

Зачем брать язык под задачу, когда можно брать задачи под язык?

#LYCVJR (5+1) / @ninesigns / 784 дня назад

http://ivan-gandhi.livejournal.com/3493927.html?thread=57238311#t57238311
Я общался со спутникостроителями, а также с любителями Ады (я не спрашивал где они работали, насколько я понимаю - военка).

Так вот если в двух словах, на спутниках ничего не верифицируют, но в правильных конторах у них есть стенды - софтверный эмулятор спутника и в особо правильных еще и хардверный эмулятор спутника (то есть буквально макет спутника, в котором есть часть исполнительных устройств и датчиков, и программа на нем отрабатывает какие-то этапы полета).

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

Да, еще в спутниках обычно встроен хардверный отладчик, в смысле по каналу телеметрии можно остановить бортовой компьютер, прочитать/записать регистры проца и ячейки памяти; периферию подергать, типа там предохранители попередергивать и прочие телодвижения сделать.

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

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

Ну и собственно у ракеты расклад такой, что там есть математическая формула задающая трубку допустимых траекторий, и для каждой ступени есть диапазон ускорения которое эта ступень должна дать.
И задача софта рулить рулевыми движками чтобы идти в пределах трубки траектории и плюс временем работы выжать из нижней ступени максимум, а верхние вовремя отключить (топлива обычно с некоторым запасом на всякий случай, поэтому если выжимать всё то орбита будет слишком высокой), а собственно для определения когда вовремя, есть специальный интегратор ускорений, можно сказать спидометр, то есть вобщем тоже нечего верифицировать.

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

Вобщем какой там ООП - там процедурно всё.

У любителей Ады не верификация, а что-то похожее на TDD - у них методология почти всегда водопад, и когда сверху приезжает ТЗ, то заранее известно какой диапазон значений могут принимать входные параметры ну и некоторые переменные тоже, и они просто создают под каждый параметр тип с ограничением диапазона а потом тестируют чтобы при работе проги переменные не вылезли за диапазон, плюс эмуляторы.

Теоритически можно ожидать что верификацию делают энергетики и химпром, и тут это как раз моя первая специальность, я живьем часть проектов видел и с людьми общался, но реально у них контроллеры часто эмулируют релейные схемы, и тоже методология водопад, так что там все проверки делаются на уровне главного инженера и/или архитектора и плюс закладывается некоторая избыточность средств защиты от ошибок, а потом во время эксплуатации объекта ошибки постепенно отлавливают (естественно вместе с аварийными отключениями).

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

С самолетчиками общался, так у них автопилот совершенно тупая, но чувствительная машина, чуть кто на борту чихнет, он сразу отключается и больше рулить не пытается.

А эти которые "буран" делали, у них тоже был водопад, и они для типа верификации сделали язык графический, у которого программы являются чертежами, которые соответствуют требованиям госта на ЕСКД :))))

#HPZNC9 (4+2) / @ninesigns / 863 дня назад
ipv6 ready BnW для ведрофона BnW на Реформале Викивач Котятки

Цоперайт © 2010-2016 @stiletto.