• Почему все новые устройства такие медленные?

    Jump
    @Jump
    Системный администратор со стажем.
    Раньше был минимум нужного функционала написанного на ЯП низкого уровня и прилично вылизанного.
    Сейчас топовые смартфоны морально устаревают за год.
    Поэтому производители не могут позволить себе терять время, разрабатывая на ЯП низкого уровня и вылизывая код.
    В основном приоритете время разработки, а не время выполнения!
    Если производитель будет вылизывать и оптимизировать свой код, он просто вылетит с рынка.
    К тому же сейчас кроме кода от производителя, на него устанавливаются сторонние программы, а это вообще тихий ужас.
    Большинство приложений с андроид маркета написано людьми которые с трудом представляют что такое алгоритмы и с чем их едят. Какая там оптимизация? Любой студент берет готовый фреймворк, рисует пару кнопок, пишет десяток строчек кода и в маркет.
    Ответ написан
    5 комментариев
  • Почему все новые устройства такие медленные?

    @onepavel
    Консультация и разработка мобильных приложений
    Раньше писали нативные приложения, не было виртуальных машин, фреймворков, DI и рефлексии в целом, не было 100500 сервисов проверяющих фейсбуки и твиттеры. У меня был палм от сони, черно-белый экран и никакой анимации. Ну и конечно качество кода упало.
    Ответ написан
    Комментировать
  • Почему все новые устройства такие медленные?

    eapeap
    @eapeap
    Сисадмин, Беларусь
    Старая история в ту же тему: позвали в лабораторию - там оказался 486 РС. Говорят - мы на нем протоколы записываем. Уже много лет. Боимся, чтоб не пропали, если вдруг комп сдохнет.
    Включаем - быстренько загрузился Windows for Workgroup 3.11. Прям мгновенно, по сравнению с ХР, не говоря про Висту, которая тогда только появилась. Тыц - и Ворд 6 открылся...
    Был поражен.
    Ответ написан
    Комментировать
  • План обучения Python и дальнейшие перспективы. Кто подскажет?

    sgjurano
    @sgjurano
    Разработчик
    Лучше читать не Программирование на Python (в основном описание фреймворков), а Изучаем Python (основы языка) того же автора, от нее куда больше пользы.
    Ответ написан
    2 комментария
  • Как распределить время при обучении программированию?

    @deltron
    Теория хорошо, но практика - лучше. Можно знать много алгортимов, но не уметь писать ни строчки кода. Я бы начал с одной книги по выбранному языку и пытался писать реальные программы стараясь укладываться в конкретные сроки. В процессе написания возникали бы конкретные вопросы, которые пришлось бы решать. Со времнем накапливаются паттерны, как поступать в той или иной ситуации - это и есть практика. А вот потом можно почитать всякие алгортмы и т.д.
    Ответ написан
    Комментировать
  • Как распределить время при обучении программированию?

    @woodapiary
    Рекомендую: master.cmc.msu.ru/?q=ru/node/16.
    В свое время когда там учился, были студенты, которым далеко за 40!
    Ответ написан
    Комментировать
  • Не доходит до меня тема коллекций, что я не так решаю?

    evnuh
    @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    Если задача на хешмепы, то с помощью них и надо решать. Проходите по данному хешмепу, для каждого имени из него прибавляете 1 к значению в другом хешмепе, ключомв которым и будет имя. Далее проходите по новому хешмепу и если значение у него > 1 то из старого удаляете элементы со значением равным текущему ключу.
    Ответ написан
    Комментировать
  • Не доходит до меня тема коллекций, что я не так решаю?

    @lslayer
    Программист и сисадмин
    Два варианта.
    1. Лобовой. Двойной цикл, сравнивать каждый с каждым, если равны - один удалять.
    2. Переместить все в Set, он автоматически удалит дубликаты, переместить обратно.
    Ответ написан
    1 комментарий
  • Стоит ли начинать заниматься программированием в 30+ если до этого не программировал?

    программировать стоит учиться всегда. плюс программирование учит думать. в принципе учиться стоит всегда, тем более в 30+ у Вас мозги еще не засохли и их надо напрягать все время, покуда не засохнут окончательно. единственное что меня напрягает - если Вам 30+ а мне 26, то почему я Вам об этом говорю а не Вы мне))) без обид, просто иронично получилось)
    Ответ написан
    Комментировать
  • Стоит ли начинать заниматься программированием в 30+ если до этого не программировал?

    opium
    @opium
    Просто люблю качественно работать
    Вы так говорите как будто в 30 лет у вас нет рук и ног и вывалился глаз.
    Берите и делайте и меньше задавайте глупых вопросов на тостере.
    Ответ написан
    5 комментариев
  • Стоит ли начинать заниматься программированием в 30+ если до этого не программировал?

    @AlexLIn
    Мой дед начал изучать программирование в ~75 лет.
    Теперь программирует себе самолетики да квадрокоптеры на ATxmega в atmel studio. "Полет нормальный".
    Ответ написан
    2 комментария
  • Стоит ли начинать заниматься программированием в 30+ если до этого не программировал?

    @sprour
    Однозначно стоит. Это как конструктор собирать. начните с малого javabegin.ru
    Ответ написан
    Комментировать
  • Стоит ли начинать заниматься программированием в 30+ если до этого не программировал?

    Конечно стоит. Я знавал бывшего милиционера (!!!) ставшего программистом микроконтроллеров, причем переквалифицировался он в возрасте около 30 лет.

    Надо начать, заниматься этим год, а потом честно себя спросить, стоит ли продолжать или нет. Я думаю года вполне достаточно чтобы работать на junior позициях.
    Ответ написан
    Комментировать
  • Стоит ли начинать заниматься программированием в 30+ если до этого не программировал?

    Стоит, есть знакомые которые занялись и ужасно довольны этим. Но они точно знали зачем начинали у них были определённые идеи которые нужно было воплотить, соответственно, они и язык выбрали под эти идеи и быстро их воплотили. Если php надумаете учить пишите ))
    Ответ написан
    Комментировать
  • Как распределить время при обучении программированию?

    Jeiwan
    @Jeiwan
    Никто вам точно не ответит. Никто не знает ваших обстоятельств, способностей, желания учиться. Никто не знает насколько глубоко вы будете изучать эти темы и насколько тщательно прорабатывать их. Дать точные сроки вам смогут, только если вы будете следовать какой-то отработанной учебной программе. И то даже после таких программ люди выходят с разным уровнем знаний и умений. Все зависит от вас. Да и не нужно знать все эти темы для того, чтобы начать работать.
    Главная ваша проблема (и проблема других таких же людей, которые решили научиться программировать) заключается в том, что вы почему-то считаете, что сможете обучиться программированию по книгам. Прочитал книжки и стал программистом! Это обманчивый путь, так как программирование — это чистая практика. Теория тут нужна только тогда, когда нужно решить какую-то практическую трудность. Чтобы читать книжки по алгоритмам, ООП и базам данных, нужен уже какой-то опыт, иначе всё, что там написано, пройдет мимо и забудется.
    Еще часто бывает, что задачи, с которыми сталкиваешься, не описаны в книжках, которые ты прочитал или хотел бы прочитать. Довольно часто решение задачи находится в интернете, а не в книгах. Это я к тому, что нужно начинать с практики и прорабатывать теорию под конкретные задачи. Вот вы написали что-то, вот застряли в каком-то моменте с БД, не знаете, как правильно сделать. Ищете в интернете или в книге, как решается эта проблема и решаете её. В итоге получаете и знание, и опыт, который это знание закрепляет.
    Если вы знаете, куда хотите пойти работать, узнайте, какие там задачи решают и цельтесь сразу туда: составьте себе список таких задач и попытайтесь решить их самостоятельно. И заодно сузите теоретический минимум. Умение решать конкретные задачи намного важнее горы теоретических знаний.
    Ответ написан
    2 комментария
  • Как распределить время при обучении программированию?

    Stroy71
    @Stroy71
    Век живи-век учись.
    Из опыта:
    1. Не пытайтесь изучать маловостребованные, но перспективные языки(Python, Perl и т.д.). Идеальный выбор- PHP или JavaScript. В первом случае, количество потенциальных работодателей падает в разы. Количество же претендентов("молодых-перспективных"), не так сильно, как хотелось бы.
    2. Не "растекайтесь мыслию по древу". (Решите, какие навыки оттачивать в первую очередь: практические-по американской системе, или все сразу-по советской системе. далее об амер. сис-ме)Т.е. сосредоточьтесь на решении практических задач. После получения определенного уровня можно будет перейти к практике задач требующих знания теории алгоритмов и т.д и т.п.
    ИМХО, лично я изучал(после знакомства с Паскалем в ВУЗе) в таком порядке: (нумерация исходя из Вашего списка):3(или его аналога)-до полного освоения. 4-по мере потребности 3.
    4 и 2, ИМХО, излишни, и требуют особого изучения для "особо-продвнутых"
    3. V желательно изучать на продвинутых ступенях, изучив 3 и, более-менее 4.
    Время изучения(по порядку изучения,ИМХО):
    1.3-20%(примерно)
    2.4- 5-10%
    3.5- 5-10%
    4. 1- 60%
    5..2(если оч. понадобится)-около 10%.
    P. S. Из всех книг, указанных в разделе 2, особо тщательно рекомендую проштудировать Д.Кнута.
    Ответ написан
    8 комментариев
  • Как распределить время при обучении программированию?

    God-emperor
    @God-emperor
    create a golden path
    1) Алгоритмы + база языка
    Вы изучаете/пишите реализацию алгоритмов, тем самым осваивая базовый синтаксис языка.
    2) Определяете 2-3 более обширные задачки на бизнес-логику, решаете их с помощью базовых средств вашего основного языка (Учим язык на продвинутом уровне)
    3) Решаем данные задачи с помощью парочки фреймворков, сравниваем.
    4) Дальше в любом порядке (параллельно или последовательно тоже не важно) изучаете оставшийся материал, который вас интересует на ваших же примерах. Т.е. доделываете, переделываете и т.д.

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

    Сначала найди человека, который ЗАХОЧЕТ тебя учить. Поставит реальные задачи и выстроит твое обучение в систему. Один ты не пройдешь этот путь.
    Реальная разработка далека от тем, которые ты поднял. Эти темы хороший фундамент, для разработчика. Но освоить их дело не быстрое. И без ментора, 90% вероятность уйти в излишее углубление - а значит, потерять время и стать болтуном теоретиком, который все-равно не может писать код.
    Лишнего времени у тебя нет вообще. Программистами 80% работают молодые, 20-28 летние ребята и возится с тобой они просто не захотят.
    Поэтому тебе надо бить только в цель.
    Так, что рвись за реальным опытом. За реальным пониманием - как это работает. Большая теория computer science пока не твой друг. Кстати как у тебя с английским? Скорее всего почти никак. Поэтому ближайшие год - полтора, ты будешь осваивать его, для беглого чтения. 90% полезной для разработчика информации, на английском, инет и книги.
    Попробуй сейчас поискать фирму которая тебя возмет, когда ты станешь крут - и это будет очень сложно. Возраст и отсутствие опыта это весомый фактор.
    Скорее всего, тебе надо найти узкую, востребованную специализацию и долбить ее все это время, не теорию!, а навыки. Понять какие есть несложные популярные задачи на фриланс бирже, и научиться с помощью ментора делать только их. Начать этим зарабатывать. А потом будет понятно, что дальше. Насколько ты вообще это способен делать.
    Береги здоровье. Поддерживай и развивай его. Программирование очень затратная деятельность, особенно когда тебе за 36.
    Мне сейчас 38, я сам несколько лет был любитель теории и академического самообразования для разработчика. Недавно пришло осознание, что это тупик. Программирование сейчас - это куча реальных процессов разработки, на многих уровнях, и темах. Им не обучишься самостоятельно. Недавно нашел удаленно хороших знакомых, которые ХОТЯТ помочь мне научиться. Стал видеть их глазами, и все наконец задвигалось. Мне сейчас срочно нужны не перечисленные тобой книги (хотя я их действительно частично изучил), а понимание web-протоколов, unix, принципов тестирования, ООП, кучи используемых библиотек, разговорного английского, частично frontend технологии и тп.
    Так, что братан держись! И да, сопутствует нам удача.
    Кстати, я практикую тайчи. Это поддержка на всех уровнях. Без этого я не сунулся бы в подобные авантюры.

    --
    Update 0:

    Решил пойти коротким путем (в частности, после твоего вопроса) и выделить деньги на курсы Ruby On Rails. Записался вот сюда Ссылка удалена модератором.

    Одна из целей курса: помочь человеку развиться до достаточного уровня, чтобы устроиться на работу крепким junior-программистом. Большая проблема для джуниоров на рынке RoR - это получение первой работы.

    Для курса требуется уже некоторый уровень знаний всего стека разработки (от Unix - до самого фреймворка RoR).

    Из сразу заметных плюсов курсов:
    - наличие активного форума сообщества обучающихся
    - видны топики студентов прошлых наборов, можно посмотреть какие были вопросы и ньюансы
    - в форум постятся вакансии
    - есть обсуждения: как лучше вести себя джуниору, полезная литература и другие вкусные фишки...

    Важным, оказалось, что здесь есть сообщество единомышленников; тех кто хочет изучить Ruby On Rails и устроиться на работу. Это позволяет лучше понять себя - видя работу других. А также постановка задач куратором позволяет лучше фокусировать свои усилия при изучениии, что сложно самообучаясь.

    Курсы будут идти три месяца.
    Ответ написан
    2 комментария
  • Как распределить время при обучении программированию?

    OMarchenko
    @OMarchenko Автор вопроса
    Random Expansion
    Господа, пожалуйста, представьте на минуту, что перед вами абстрактная задача - например, о воде, втекающей и вытекающей из бассейна. Зачем туда втекает вода, куда она потом утекает, какой она температуры - это, конечно, интересно. Но давайте вместе с этими рассуждениями хотя бы пытаться ответить на четко поставленный в задаче вопрос.
    Интересует соотношение времени, которое вы при заявленных условиях считаете оптимальным для изучения пяти тем. Можно в процентах.
    Ответ написан
    Комментировать
  • Как распределить время при обучении программированию?

    @suslik2015
    Современное прикладное и веб программирование низового уровня - типичное рутинное ремесло. И как в любом ремесле самое ценное -опыт. В своей работе программист использует большое количество инструментов - ide, редакторы, дебагеры, сборщики, svn и т.д. Программисту нужны навыки чтения кода, юнит тестирования, использования актуальных фреймворков и api, знания протоколов, форматов хранения и передачи данных, конвенций оформления и документирования кода.
    Получить опыт и развить навыки можно только одним путем - написание кода. Идеально участие в опенсорс проектах или что-то свое. Сначала будет говнокод - это факт. Clean code, по терминологии упоминаемого вами Мартина Р. , приходит с опытом работы в проектах, в постоянном сравнении и оптимизации того или иного кода, тех или иных практик.
    Ответ написан
    Комментировать