- 1
безысходность
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
0
безысходность
В начале нулевых миром правил пафосный и сложный интерпрайз. Люди строили многоtierные распределенные системы с кучей ролей и суровыми СУБД, и у них это отлично получалось.
Ярусы (tiers) с бизнес-логикой предоставляли интерфейсы для десктопных и веб клиентов, и для скриптов автоматизации.
Ярусы пронизвала прозрачная аутентификация: сервер приложений мог имперсонировать свой поток под клиента и обратиться от его имени в базу данных.
Единую аутентификацию обеспечивал Kerberos, а каждый объект (будь то таблица или пользователь) обладал ACLем и настраивался отдельно.
Интерфейсы описывались в WSDL или IDL и по ним генерировались прокси-классы, поддающиеся статической валидации.
Отчеты строились на многомерных OLAP кубах позволяя pivotировать и крутить данные на лету.
Бизнес-объекты могли создаваться на удаленных серверах приложений и быть там stateful (dcom, ejb) и жить, пока не кончатся на них ссылки, и они автоматически имели те же креденшелы что и создавший их клиент.
Распределенные системы напоминали системы операционные.
Форматом сериализации был XML: поддающийся валидации с помощью схем, имеющий два вида парсеров в разных средах и с кучей подстандартов вроде xquery, xpath (для указания пути в документе), xslt для преобразования документов итд.
На его же основе сделали язык разметки, и его тоже стало можно валидировать, и программно рассматривать как дерево.
−103
Довожу до сведения прихожан, что прежнего проповедника с нами уже нет.
Дух его покинул нас, когда ирод страйком именуемый откусил голову его файке.
Теперь читать псалтырь, изгонять демонов и проводить утренники буду я - "головка от часов заря"
Только бога ради, не говорите "аминь" после проповеди; молох может найти нас и заминировать...
Кричите "истинно" - и будет с Вас.
−1
Давайте ругать питон, он мне со своими отступами все мозги выебал.
−103
'Докторинхо' и 'БагорСтретора'-а забанили (
(╯︵╰,)
−102
Я был у Новиковой.
−4
Прыщеблядь VS Акнеблядь (8)
прыщеблядь играеться в Super Tux, акнеблядь в STALKER и Crysis
прыщеблядь делать пересборку системы каждый месяц, акнеблядь раз в 5 лет устанавливает новую версию винды.
прыщеблядь половину времени за компом что-то компилирует, акнеблядь может спокойно любой бинарник запустить
прыщеблядь дрочит на Compiz, акнеблядь в это время работает, акнебляди похуй какие эффекты у окон.
прыщеблядь сука с прыщавым умным лицом, акнеблядь с нормальным лицом
у прыщеблядей плохо с личной жизнью, секс бывает 1 раз в 3 года, акнеблядь ебётся когда захочет
Вы всё ещё хотите сэкономить 20$ на покупке Windows?
−104
Не могу больше молчать, прошу забанить борманда.
Этот человек причастен к спамингу! Бля буду!
0
[...]
After some configuration changes, I was able to add the 2000 ports by defining them out manually.
[...]
https://stackoverflow.com/questions/37992007/creating-ftp-service
0
Долбанный андроид.
Почему когда я обновляю приложения памяти всё меньше и меньше?
Он что, при обновлении оставляет предыдущие версии?
Просто охуеть. Телефону 3 года, поставлено 2 приложении, а памяти, блять, уже нет.
ЧЗХ?
−4
func (incident Incident) DeleteResponsibleMicroservices(microservices []string) {
var teamsDelete []string
responsibleMss := incident.GetResponsibleMicroservices()
for _, microservice := range microservices {
ResponsibleMssLoop:
for _, responsibleMs := range responsibleMss {
if microservice == responsibleMs.MicroserviceId {
service.GetInstanceDB().Delete(responsibleMs)
if team, ok := GetTeamByMs(microservice); ok != false {
for _, ms := range incident.GetResponsibleMicroservices() {
if teamFind, ok := GetTeamByMs(ms.MicroserviceId); ok != false && teamFind == team {
continue ResponsibleMssLoop
}
}
teamsDelete = append(teamsDelete, team)
}
}
}
}
if len(teamsDelete) > 0 {
incident.DeleteResponsibles(teamsDelete)
}
}
Отличное читается код на Golang