Задать вопрос
  • Зарубежный регистратор домена (.com)?

    sainnr
    @sainnr
    godaddy.com
    moniker.com
    name.com
    namecheap.com
    directnic.com
    domaincontext.com
    Ответ написан
    Комментировать
  • Какие паттерны проектирования в своих веб-приложениях вы использовали

    sainnr
    @sainnr
    Abstract Factory, Singleton, Facade, Adapter, вроде бы все. Остальные значительно реже.
    Ответ написан
    Комментировать
  • Нужны ли статьи о Yii?

    sainnr
    @sainnr
    Конечно нужны!

    Хотелось бы про работу с AJAX во фреймворке почитать. Главное, чтобы поподробнее и с примерами кода :)
    Ответ написан
  • Куда податься C#-программисту, кроме веба?

    sainnr
    @sainnr
    Есть еще Silverlight (web или WPF, на выбор), XNA (чаще всего, игры). Причем и то, и другое можно использовать для разработки под WP7.

    В Саратове, например, есть 2 крупные компании, разрабатывающие WPF-приложения (EPAM, Mirantis).
    Ответ написан
    Комментировать
  • Как делать сайт-биржу разовой удаленной работы?

    sainnr
    @sainnr
    Я бы порекомендовал начать с разработки прототипа (wirefram'a). Это позволит вам
    1) зафиксировать все ваше нынешнее представление проекта,
    2) наглядно демонстрировать другим людям (потенциальным разработчикам, участникам команды) то, как вы это представляете,
    3) упорядочить собственные мысли, найти неявные недочеты и др.

    Для прототипирования есть достаточно много неплохих веб-приложений. Из тех, которыми пользовался сам, рекомендую gomockingbird и gliffy.

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

    Разработанный прототип с такой «первичной» документацией можно показывать уже другим людям, чтобы они могли задавать вам конкретные вопросы, по существу. И кроме того, вам самому будет легче объяснять другим, что вы хотите.
    Ответ написан
    2 комментария
  • Оценка уровня программиста?

    sainnr
    @sainnr
    Позвольте и мне высказать свою точку зрения. Как правильно отметили выше, объективно оценить знания программиста по числовой шкале (хоть по 100..0-бальной), пожалуй, невозможно. Да и наверное не нужно, так как в каждой компании требуют различные знания (кто еще кроме компаний будет вас оценивать?).

    Тем не менее, можно выделить несколько категорий знаний, по которым можно составить более-менее объективную картину программиста. Например, сюда можно отнести:
    — владение различными ЯП;
    — опыт работы с каждым из них;
    — работа в команде;
    — участие в OpenSource-проектах;
    — наличие собственных разработок;
    — знание паттернов;
    — знание алгоритмов, структур данных;
    — знание методологий разработки;
    — знакомство с системами контроля версий, тестирования;
    — и т.д.

    Несомненно, картина получается далеко не полная — важную роль играют, например, и личные качества или другие индивидуальные характеристики, + в каждой организации требуется что-то свое. Но по вышеперечисленным категориям можно сопоставить себя и другого программиста, понять свой уровень относительно кого-то еще.

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

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

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

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

    По поводу собеседований. Ходить на них — весело, если выбрать верный настрой. Представьте себе, что вы вообще не хотите попасть в эту компанию, а пришли лишь показать все, что вы умеете, «какой вы из себя хороший специалист». Конечно, не стоит выпячивать свое ЧСВ при собеседовании — ведите себя естественно; в тоже время, убиваться в случае неудачи не стоит — вы же совсем и не хотели к ним идти работать.

    А чтобы было о чем рассказать, в свободное время (оно же у вас есть?) разрабатывайте «для себя» разные программки. Ну например, напишите какой-нибудь парсер, поработайте с API различных систем (того же Яндекса), сделайте собственный таск-менеджер, придумайте сами интересную вам небольшую идею и доведите ее до конца. В каждой такой задаче можно найти много тонких моментов — оптимизация скорости алгоритма, структуры БД, применение паттернов, взаимодействие компонент, написанных на разных ЯП и т.д.

    Многовато текста получилось…
    Ответ написан
    3 комментария
  • Создание сайта

    sainnr
    @sainnr
    Начнем с того, что на составление тех.задания существуют ГОСТы (например, ГОСТ 19.201-78), в которых строго указанно, что там должно быть, а чего не должно.

    Вообще, ТЗ — это, грубо говоря, «руководство к действию», максимально формализованное и написанное техническим языком, которое трактуется разработчиками (исполнителями) однозначно. Чтобы составить именно ТЗ (техническое задание), а не список требований, вам нужно как минимум неплохо разбираться в данной области.

    Я бы посоветовал вам найти пару примеров качественно написанного тех.задания. Посмотрите различные сайты с технической документацией. Особенно обратите внимание на структуру документа, сколько там всего должно быть. После этого, спросите себя — «смогу ли я все это написать, причем понятным разработчику языком?».

    Если вы твердо решите, что «да», то вперед! Если же засомневаетесь или решите, что вряд ли сможете, то лучше не начинать писать — есть другие пути. Например, вы можете найти т.н. «посредника» между вами и разработчиками, который перевел бы ваши слова — представление, требования, пожелания — на понятный разработчикам язык, формализовал бы их. В компаниях таких людей называют техническими менеджерами или техническими директорами.

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

    Кстати, а почему вы сами не хотите попробовать стать разработчиком? Посмотреть различные «движки» (CMS — например, LiveStreet), фреймворки (Yii особенно хорош)? Или вы твердо решили, что вы хотите быть исключительно руководителем и организатором (и уверены в том, что у вас это получится)?
    Ответ написан
  • Нетбук & планшет?

    sainnr
    @sainnr
    Как вариант, Win7-планшет с док-станцией. Например, Acer Iconia Tab w500.

    Являюсь обладателем такого девайса, только без док-станции. Неплохо держит батарею, удобный.
    Ответ написан
    Комментировать
  • Посоветуйте донейт-сервисы без привязки к конкретному сайту

    sainnr
    @sainnr
    Я бы порекомендовал сервис Flattr (http://flattr.com/), разве что он пока не так сильно распространен в России.
    Ответ написан
  • Странное зацикливание Firefox с AJAX скриптами Microsoft

    sainnr
    @sainnr
    Думаю, дело в этом фрагменте кода MicrosoftAjax.js:

    Sys._Application.prototype.get_stateString=function(){
    var a=null;
    if(Sys.Browser.agent===Sys.Browser.Firefox){
    var c=window.location.href, b=c.indexOf("#");
    if(b!==-1)a=c.substring(b+1);
    else a="";
    return a
    } else a=window.location.hash;

    if(a.length>0&&a.charAt(0)==="#")
    a=a.substring(1);
    return a
    };


    И кстати, работает похоже только в 6й версии ФФ.
    Ответ написан
  • Чистый код: имена классов?

    sainnr
    @sainnr
    Я думаю, что именно Parser их также не устраивает, как и Manager или Processor. В качестве допустимого названия, они приводят в пример AddressParser, т.е. парсер, применимый конкретно к адресу. Аналогично, были бы допустимы варианты, например, AccountManager или TemplateProcessor.
    Ответ написан
    2 комментария
  • Что случилось с вопросами хабра к министру связи?

    sainnr
    @sainnr
    Тогда не совсем понятен смысл сего деяния со стороны министерства — если они изначально не особо собирались отвечать на все эти вопросы…
    Ответ написан
  • Как получить зарубежную практику?

    sainnr
    @sainnr
    Есть такая организация, AIESEC, которая как раз предлагает студентам различные стажировки практически по всему миру. Несмотря на все камни в ее сторону, у нее есть один жирный плюс — реальная база зарубежных компаний, которые ищут молодых людей на стажировку.

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

    Больше всего вакансий представлено в Китае, Корее, Тайване, а также в Восточной Европе. З/п везде разные, но на жизнь примерно должно хватать, + некоторые компании предлагают помощь в аренде жилья.

    При наличии знаний и опыта работы здесь, есть очень приличные возможности быть принятым. Сужу по собственному опыту — если бы не наличие семьи (по стажировке предоставить визу могут только стажируемому, но не его семье), то пожалуй сейчас бы я проходил стажировку в Дании. Также есть пара знакомых людей, которые сейчас проходят стажировки в Европе.
    Ответ написан
    3 комментария
  • Когда в PHP использовать интерфейсы, а когда абстрактные классы?

    sainnr
    @sainnr
    Как пишут умные люди (Шилдт, Троелсен) в своих умных книжках, интерфейс определяет функциональные возможности, поведение — «что именно следует делать, но не как это делать» (Г.Шилдт, Полное руководство C#). В абстрактном классе «определяется лишь самая общая форма для всех его производных классов, а наполнение ее деталями предоставляется каждому из этих классов» (там же).

    Простой пример, в контексте графического редактора можно определить:
    Абстрактный класс — Figure (геометрическая фигура), от него могут быть образованы классы конкретных фигур — например, Rectangle, Circle и т.д.
    Интерфейс — Drawable (то, что можно нарисовать). Он может быть реализован как во всех классах конкретных фигур (Circle, Rectangle), так и в других классах, не образованных от абстрактного Figure.
    Ответ написан
    Комментировать
  • Как заставить себя сделать работу?

    sainnr
    @sainnr
    В выходные лучше найти возможность «проветриться»: прогуляйтесь и подышите свежим воздухом, побегайте, поплавайте, поиграйте с друзьями в футбол — одним словом, проявите двигательную активность! Конечно, в идеале двигаться нужно несколько раз в неделю, но в выходные это будет уж точно полезнее, чем сидеть за компом.
    Ответ написан
    Комментировать
  • Нужен ли на Хабре обзор библиотеки для склонения ФИО?

    sainnr
    @sainnr
    Цах Наталья — на русском не определяется как женская фамилия и соот-но склоняет по полной
    Ответ написан
    2 комментария
  • Нужен ли на Хабре обзор библиотеки для склонения ФИО?

    sainnr
    @sainnr
    Прочитал бы с удовольствием. Особенно интересно, как происходит обработка «сложных» и иностранных фамилий.
    Ответ написан
    Комментировать
  • Тема для диссертации?

    sainnr
    @sainnr
    Мне самому ближе мат.моделирование, поэтому я во многом согласен с хабраюзером MealstroM. Но я бы еще предложил посмотреть на возможность «скрещивания» защиты информации и инф.безопасности с вопросами авторского права.

    Может быть (абстрактно), какие-то альтернативные методы защиты от нелегального распространения (в основе которых лежит математический или ИТ-подход), что-то в таком духе.
    Ответ написан
    1 комментарий
  • Работа Европе: Что необходимо знать?

    sainnr
    @sainnr
    Можно еще попробовать найти работу/стажировку через AIESEC. Технических специалистов там любят (по собственному опыту скажу). В основном, приходят предложения в восточную европу (Венгрия, Польша), но если искать самому, то можно попробовать податься в западную европу. Сделать это, конечно, несколько сложнее, но если есть знания PHP, Java или .NET, то шансы очень и очень хорошие.
    Ответ написан
  • Работа Европе: Что необходимо знать?

    sainnr
    @sainnr
    Если у вас уже есть законченное высшее, то советую посмотреть в сторону получения рабочей визы по программе Rot-weiss-rot card: rwr-card.net/
    Ответ написан
    Комментировать