Доброго времени суток, Михаил. Как вы думаете, зачем Microsoft продолжает поддерживать VBasic в пакете Visual Studio. Вы не задавались таким вопросом?)
С появления .NET поддержка Visual Basic свелась к банальной поддержке синтаксического анализатора. Я думаю, это основная проблема. Я конечно не могу знать реальных затрат на поддержку, но могу предполагать. Дело в том, что нужно только прочитать из исходного кода синтаксис VB и сгенерировать код .NET, а дальше уже все классы и все типы данных одинаковы для всех языков .NET.
На мой взгляд интеллект SQL Server очень мозговитый и он умеет многое. Вот чего мне еще хотелось бы, так это возможности проверки на случайную глупость при создании индексов. У нас громадная база и с целью оптимизации один программер решил создать новый индекс. Но индекс не помог, потому что точно такой же с другим именем уже существовал. Сейчас два индекса поддерживают одни и те же данные. Радует то, что эта таблица обновляется не часто, поэтому затраты не большие, но она используется очень часто, поэтому даже этих маленьких бессмысленных затрат на поддержку двух одинаковых индексов хочется избежать.
В случае с индексами поговорка "ломать не строить" не работает. Тут наоборот проще построить индекс, чем сломать. Из-за того, что таблица используется ооооочень часто, на таблице почти постоянно есть проблемы в виде Dead Lock-ов. В таких условиях SQL сервер просто отфутболивает меня, а останавливать сайт чтобы освободить блокировки я не могу.
Хотелось бы, чтобы сервер сам сообщал, что в каком-то месте есть уже индекс с таким именем и создание нового является бесмысленной глупостью. 2005-й сервер не предупреждает. Может более новые версии более интеллектуальны.
Я уже столько времени не занимался классическими приложениями и не писал ни строчки кода, что уже отвык это делать. Сейчас занимаюсь тем, что пишу небольшую программку для телефона, которая будет использовать мой сайт и его базу данных через XML запросы. Любители красивых слов сказали бы что мое приложение реально будет работать в облаке и предоставлять данные мобильному пользователю на сотовый телефон. В траншее мое приложение будет работать, просто землекоп будет передавать данные из гробика наружу. Ненавижу это дебильное выражение «облако» и все это маркетинговое дерьмо, которое крутится вокруг этого пиара.
Моя программа просто будет с телефона обращаться к Web и работать с ним совместно. Это банальное клиент серверное соединение.
Кстати, свою программку я не планирую выкладывать на маркет. Это стоит денег, а я не собираюсь платить Microsoft. Просто потому, что не собираюсь зарабатывать. Вот если появится идея, на которой можно будет заработать, вот тогда реализую и заплачу MS.
Судя по затратам усилиям, которые Microsoft направляют в свою мобильную платформу, становится ясно, что компания на этом рынке всерьез и просто так отступать не будет.
Качаем бесплатную и официальную книгу Microsoft по программированию под Windows Phone 7: Microsoft Press ebook Programming Windows Phone 7
Очередной письмо
Я очень давно и с интересом читаю (блин звучит очень политкорректно) короче слежу за тобой :) сидел на Дельфях, но после переезда в Солнечную Калифорнию пришлось переучиваться, многим приходилось рассказывать что такое Паскаль, ну да ладно забыли. Так вот, я сейчас быстро переключился в QA дабы купить хотябы колбасы и Кинект :) вспоминая мой институт - мне даже там вещали про Black&White Box Testing, а тут пришлось впитывать всеми чакрами... Михаил, ежели если опыт общения - с QA опиши плиз, разные ли департменты, дружите/cжигаете, как спорите за bug status, мудаки ли эти тестеры или просто валенки, ну и все такое..
Утечки памяти просто капитально убивают производительность. У меня в сетевых утилитах есть модуль тестирования сайта и он использует IE для загрузки страниц. Просто я считаю это хорошим тестом, проверять производительность страниц именно на IE.
Так вот, я банально расслабился из-за того, что C# все чистит за меня и не убивал IE компонент и только на прошлой неделе заметил, что он уедает память. После тестирования 200 страниц программа съела 300 мегабайт оперативки и производительность программы просто ушла вниз. Скорость тестирования стала нереальной.
Я уже код пофиксил, но все никак не закачаю обновление на сайт. Все нету времени.
Я всегда думал, что основная проблема нынешних программистов - не уменее эффективно решать алгоритмы и разделять код на классы. Программисты просто не видят, где нужно выделить логику в отдельный класс и лепят все в одном файле сплошной массой кода. Ну а алгоритмы дальше цикла используются в программах очень редко. Но сегодня получил следующее письмо:
Около 5 лет я решал алгоритмические задачи на разных олимпиадах. Пришло время, и мне надоело этим заниматься, захотелось чего-то другого. Но мне уже 18, а кроме того как решать задачи ничего толком не умею. Сейчас начал читать книжки по С# (Троулсен, Ватсон, Микелсен и т.д.). Написал несколько несложных программ (файловый менеджер, работа с таблицами(упрощенная версия екселя :) ), ну и еще там мелкие программы)
Теперь в жизни случилась такая ситуация, что очень нужна работа(финансовые проблемы). Но куда меня возьмут то такого?! Пожалуйста, посоветуйте, как прискорить мое обучения? какие типы программ нужно объязательно уметь писать?
Очередной вопрос от читателя:
Михаил интересно ваше мнение об 1с и возможно ли его развитие до полноценного языка или же он так и будет относиться к попсовым??
А он и не создавался как полноценный язык. С точки зрения бухгалтерии для создания бухгалтерских модулей для 1C это офигенная весчь По крайней мере на много лучше JDEdwards от Oracle. Я вообще нормально отношусь к 1С, потому что это очень хорошая система и создается нормальными российскими программистами, а не индусами. Я как-то работал с ней и вполне был доволен.
Очередной вопрос, который упал в мой ящик:
ЭТО ПРАВДА ЧТО ИГРЫСЛОЖНО ДЕЛАТЬ И ТРЕБУЮТ ВЫСОКОЙ КЛАФИКАЦИИ
Не знаю, зачем автор все написал большими буквами, потому что остальное в письме было нописано нормально, но это и не важно. Игры создавать не сложно особенно тетрисы. А квалификация нужна в зависимости от сложности игры, которую ты создаешь. Для 3D шутера желательно конечно же хорошие знания. Хотя DirectX сильно все упрощает и программирование игр стносится все доступнее, искусственный интеллект писать не так уж и просто.
В зависимости от игры могут понадобиться разные знания. Опять же, если делать плоскую стратегию, то можно забить на многие законы физики (не на все, но на многие), потому что мир у вас будет плоским. Ну а для тех же 3D шутеров на физику класть не стоит. Пользователь просто не простит.
Новая рубрика на сайте. Теперь буду регулярно выкладывать на сайт ответы на самые интересные ваши письма. Имен и координат авторов писем конечно же выкладывать не буду. Сегодня эту честь предоставляю следующему письму:
Здравствуйте Михаил.Мне 19 лет,я изучаю программирование(самоучка).Всем известно,что без практики познать невозможно практически ничего.Вопросов по программированию у меня нету(всё что читаю всё понимаю),но когда хочется по практиковаться,то в голову абсолютно ничего не лезет.Посоветуйте,что нибудь по этому поводу.Как изучали вы?