Задать вопрос
  • Конверсия просмотров на Хабре?

    TomasHuk
    @TomasHuk
    Для голосования за топик необходима карма ≥10. Для голосования в опросе карма не нужна.
    Ответ написан
    2 комментария
  • Какие инструменты и методики существуют для изучения больших проектов?

    @DancingOnWater
    Скорее всего человека ожидал услышать процесс разбора, а не используемые методы. Т.е. то, что вы перечислили это все верно, но теперь из этого надо выстроить логическую схему где и когда из этих инструментов применять.

    К примеру:
    1) Нахожу точку входа в программу.
    2) Глядя в код определяю какие классы создаются и что они запускают.
    3) Если есть дока — читаю, что эти классы делают
    4) С помощью навигации по коду вычленяю какой код за какие функции отвечает.
    5) Ну и т.д.
    Ответ написан
    1 комментарий
  • Cервисы, где можно заказывать написание небольших фрагментов кода за небольшие деньги?

    Как интересно вы определите что там небольшой фрагмент кода? Порой результат половины рабочего дня умещается в пару строк кода.
    Ответ написан
    4 комментария
  • Что изучать веб-программисту самоучке, кроме самого языка?

    knekrasov
    @knekrasov
    Мне кажется, веб-программист в первую очередь должен быть программистом. Потому рекомендую Алгоритмы и структуры данных Н. Вирта (это азбука и второй курс, но весьма полезная).

    Обязательно рассмотрите древовидные структуры и алгоритмы на графах. Когда был школьником, мне взорвала мозг (в хорошем смысле) книга Кубенского.

    Почитайте (погуглите) про генетические алгоритмы.

    Еще есть классная книга по анализу программистских задач (и нетривиальных решениях) — Жемчужины программирования Дж. Бентли

    Ну и в остальном — начните с того, что вы знаете о своем языке (инструменте, библиотеке, фреймворке и т.п.). Вы пользуетесь ассоциативными массивами? А знаете, как они устроены? Как происходит доступ по ключу? Насколько трудоемкая это задача?

    Пользуетесь TreeMap? В javadoc к нему упоминается красно-черные деревья. А что это?
    Как выполняется программа на моем языке? Мне нужно встроить в свое приложение язык отчетов, похожий на SQL, как мне это сделать?

    Если вы в состоянии внятно рассказать об устройстве и принципах своего инструмента, можете предсказать поведение, оценить сложность того или иного подхода — значит, вы уже не самоучка.
    Ответ написан
    Комментировать
  • Кто в курсе, как дела с доставкой Почтой РФ в данный момент?

    RedOctoberCZ
    @RedOctoberCZ
    Если есть возможность воспользоваться курьерской службой — то воспользуйтесь :)
    Ответ написан
    5 комментариев
  • Что изучать веб-программисту самоучке, кроме самого языка?

    Нужно изучать то, что требуется. Если задались таким вопросом, значит почувствовали, что вот тут что-то делаете не так. Возьмите и загуглите "<язык программирования> как сделать <вещь>". Но при этом не забывайте изучать более полно, а не ограничиваться одной статьей и рваться в бой. Прочитали про технологию, прочитайте еще пару статей. Постарайтесь понять какие минусы и недостатки, как и где эта технология применяется. Как оптимизировать ее. Это и есть база. Плюс этого способа в том, что не требует сразу тратить много времени. По сути, вы будете делать тоже самое, что и сейчас, но более полно, более основательно подходить к изучению. Со временем накопиться тот самый бэкграунд.

    А всякий матанализ скорее всего и не пригодится. Дискретка еще возможно, но тоже редко. Согласитесь, 80% кодинга — рутина :) Если вы не используете этого в работе, то они вам не помогут, а когда столкнетеся с реальной задачей, то, наверняка, сами захотите ее загуглить.

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

    Если хотите самой-самой базы, то возьмите книгу по интересующему языку — это лучший способ. Просмотрите все системные функции (не заучивайте, а просто просмотрите, чтобы представлять возможности языка). У php-программистов частая ошибка — писать свои велосипеды (особенно по обработке массивов), хотя есть очень много нативных функций, которые работают быстрее.
    По алгоритмам — читайте то, что используете. Например, в вебе нужны сортировки, редко что-то сложнее. Поэтому погуглите алгоритмы сортировки.
    Изучать то, что вы не используете полезно, но скучно и быстро забывается.
    Прочитайте про паттерны, хотя инфа о них, как правило, трудно воспринимается, кроме тех, что используете реально. Например, active record для работы с базой. Последнее и будет полезным.
    Для улучшения практического скилла советую читать чужой код и смотреть скринкасты опытных людей. Такие вещи часто богаты мелкими-оптимизациями. А если автор еще и озвучивает ход своих мыслей при проектировании функционала, вообще замечательно. (Именно этим полезны курсы по питону на udacity, например.)

    p.s^ Старайтесь знать все о чем-то и что-то о всем :)
    p.s.s^ длинновато вышло :(
    Ответ написан
    2 комментария
  • Что изучать веб-программисту самоучке, кроме самого языка?

    @koriaf
    Базы данных. Принципы работы и, как указал предыдущий оратор, оптимизации.
    Книжки советуют, сам не читал (хотя как минимум вторую стоило бы):
    Мартин Фаулер, «Шаблоны корпоративных приложений»;
    Cтив Макконнелл, «Совершенный код»;
    Джеф Раскин, «Интерфейс: новые направления в проектировании компьютерных систем».

    Advanced-level книжки по используемому языку.

    В плане профессионального роста удобно работать с людьми, старше-умнее-опытнее тебя.

    Далеко не во всех институтах, где учат программистов, дают полезные в профессии навыки. Я, студент-разгильдяй, научился в институте сдавать, а не делать. Сдавать что получится. И мне в большинстве веб-задач нисколечко не требуются фундаментальные данные там знания. Разве что логика, чтобы оптимизировать разросшиеся выражения в условиях.
    Ответ написан
    1 комментарий
  • Что изучать веб-программисту самоучке, кроме самого языка?

    barmaley_exe
    @barmaley_exe
    Онлайн-курсы чем не угодили? Там и теория, и практика и с кровати вставать не надо.

    Если говорить предметно, то:
    1. Алгоритмы. Must have для программиста. Тут можно посоветовать известную книгу Кормена и Ко «Алгоритмы: Построение и анализ». Практиковаться можно на известных архивах вроде тимуса или площадках вроде codeforces.
    2. Дискретная математика. Тоже важная область. Сюда можно приписать теорию графов, логику, комбинаторику, основы теории вероятностей. Сильно пересекается с предыдущим пунктом.

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

    Ну и что-нибудь про проектирование, ООП и паттерны. По паттернам библией считается книга банды четырёх, по ООП вроде прилична книга Гради Буча «Объектно-ориентированный анализ и проектирование». Но я не читал её.
    Ответ написан
    6 комментариев
  • Что изучать веб-программисту самоучке, кроме самого языка?

    AterCattus
    @AterCattus
    Люблю быстрый backend
    Я бы предложил почитать разные вариации на тему «Алгоритмы и структуры данных».
    А потом найти интересные задачи/реализации на известных вам ЯП и посмотреть как они реализованы.
    После можно начать делать велосипеды. Не обязательно их доводить до завершения (хотя это не должно становиться практикой, тут нужно начинать с небольших задач), главное на практике решать интересные вам задачи, а потом сравнивать, если есть такая возможность, с другими подобными решениями.
    Ответ написан
    2 комментария
  • Python for Android. Как начать?

    mysticmirage
    @mysticmirage
    Питон для Андроида — достаточно мозгозатратное занятие.
    Я бросил эту затею, хотя иногда слежу за проектами, подающими надежду в этом направлении.

    Если нужно создавать игры, то это PyGame for Android — pygame.renpy.org
    Если нужно бизнес-приложения, то это Kivy — kivy.org (их гитхаб — github.com/kivy/python-for-android)

    Недостатки первого:
    1. проект не развивается
    2. ориентирован на создание игр
    3. только arm-архитектура
    4. поддерживается только одно касание

    Достоинства первого:
    1. ниже порог вхождения — достаточно легко устанавливается (не без бубна, но легче, чем kivy)
    2. куча документации по самой PyGame, которую можно использовать при разработке

    Недостатки второго:
    1. требует от устройства поддержку gles 2.0 (даже для простенького интерфейса)
    2. везде с собой тянет библиотеку для построения интерфейсов
    3. нужно постараться, чтобы установить всё это добро (кросс-компиляция и всё такое)

    Достоинства второго:
    1. любая поддерживаемая Андроидом архитектура
    2. проект развивается
    3. поддержка мультитач
    4. использует наработки PyGame for Android

    По поводу sl4a — он не позволяет создавать обособленные пакеты — требуется отдельно установленный интерпретатор Питона. По этой причине я его не рассматриваю.

    В любом случае, стоит быть готовым к тому, что размер пакета будет минимум 3 МБ даже в случае HelloWorld — каждое приложение будет тянуть с собой интерпретатор и стандартную библиотеку.

    Следует отметить, что это не аналитическое сравнение — я отметил те пункты на которые обращал внимание. Возможно дела обстоят по-другому и я заблуждаюсь — я не использую Питон для Андроида ни в одном из своих проектов, хотя хотел бы.
    Ответ написан
    Комментировать
  • Кого посоветуете в качестве sms-провайдера?

    EugeneOZ
    @EugeneOZ
    smsdirect.ru
    Ответ написан
    Комментировать