?

Log in

No account? Create an account
entries friends calendar profile My Website Previous Previous Next Next
Разнорабочее - Уголок Школьника
scolar
scolar
Разнорабочее
Во мне всё более крепнет мысль, что водораздел между условными сторонниками C/C++ и Java/C# происходит примерно там же, где расходятся либералы и социалисты. Одни любят, чтоб о них заботились, другие искренне не понимают, почему какие-то дяди запрещают им ковыряться в носу, как будто дяди лучше знают, когда выделять память, когда её освобождать, и когда уместен подсчёт ссылок. Хотя, конечно, аналогия неполная: в случае программирования есть ещё та сторона, что за всё это платит - и им, в чьих таблицах мы проходим под гордым именем жёлтый земляной червяк ресурсы, виднее, что может написать среднестатистический ресурс, дай ему волю.

Нужно было сегодня из Web-приложения (натурально ASP.NET и C#) отдать наружу некоторую структуру, которую не дурак придумывал, а потому все целые там были в network byte order. Долго я искал в глубинах дотнета htonl и htons. Ладно, будем считать очень логичным, что статический метод HostToNetworkByteOrder() и его зазеркальный брат-близнец обнаружились в классе System.Net.IPAddress. И это очень приятно, что они определены сразу для 16-, 32- и 64-битных целых. Но: какой идиот забыл их определить для беззнаковых типов?! Этот умник хоть раз данные между разными платформами передавал? Знаете, к чему без единого писка автоматически приводится 16-битное беззнаковое целое при передаче в эти функции? Я теперь знаю: к 32-битному знаковому. Здравствуйте, лишние два нулевых байта на каждый чих. В результате стройный строго-типизированный код на C# дополнен явными приведениями ushort к short.

И аутсорсинг: то ли я уже позабыл, как это выглядело с другой стороны, то ли моим клиентам со мной везло, а мне с моими исполнителями не очень. Но становится совершенно очевидным, что нужно выстраивать инфраструктуру так, чтобы минимизировать потери на том, что у удаленного сотрудника иная рабочая среда. Перед лицом своих товарищей клянусь, больше никогда не позволю аутсорсерам работать с их собственным репозитарием - ежедневные билды, тесты, и code review до оплаты. Ещё бы это объяснить тем, кто расписание составляет. Но результат удручает: чуть меньше моей годовой зарплаты потрачено на трех контракторов за 2.5 месяца, и уже полтора месяца я вычищаю эти авгиевы конюшни, чего ни расписание, ни бюджет проекта не предусматривали.

И о приятном: вся эта гетерозиготная система с web-server'ом на дотнете, windows-клиентом на C++, общающимся с java-карточкой, зажила-таки. Завтра бета поедет к счастливым бета-клиентам.

Tags: , ,

7 comments or Leave a comment
Comments
olkab From: olkab Date: May 8th, 2007 08:56 am (UTC) (Link)
Долго и мучительно переводила твой пост обратно на английский. В уме. Ох.
scolar From: scolar Date: May 8th, 2007 08:59 am (UTC) (Link)
Да, это тот случай, когда по-английски было бы проще всё, кроме первого предложения.
olkab From: olkab Date: May 8th, 2007 09:02 am (UTC) (Link)
Ага :) а я ещё этих слов в таком виде не встречала никогда. Беззнаковое целое. Какая прелесть. Интересно, а как будет double?
Впрочем, я в своё время переводила мастер по hardware architecture с английского на иврит, причём по-аглицки его писал русскоязычный студент. :)
scolar From: scolar Date: May 8th, 2007 09:04 am (UTC) (Link)
Дабл он и в Африке дабл. Но в Париже его называют "лё дабл".
olkab From: olkab Date: May 8th, 2007 09:06 am (UTC) (Link)
Про Африку можешь не рассказывать, мы тут сами в Африке. Ну, почти.
А в Париже вообще компьютер называют пиво l'ordinateur.
pilpilon From: pilpilon Date: May 8th, 2007 12:42 pm (UTC) (Link)
число с плаваюшей точкой двойной точности?
olkab From: olkab Date: May 8th, 2007 12:46 pm (UTC) (Link)
Ну да, ну да. Сижу я это на code review и читаю название функции или там параметры - const double... угадай на какой минуте аудитория впадёт в летаргию?
7 comments or Leave a comment