Программирование без математики
Здравствуйте, уважаемое, сообщество.
Хочу задать вам таков вопрос, возможно ли программирование без знаний математики? Возможно ли стать более-менее успешным программистом и получать фан от работы (то есть не чувствовать себя имбицилилом) ?
Пишу здесь в последнюю очередь, после месячных скитаний в поисках истины. Очень надеюсь получить от вас адекватную оценку и разумный совет, т.к. от этого зависит моя дальнейшая жизнь. Программирование всегда со стороны привлекало меня, ведь я всегда был связан с компьютерами, но всю жизнь я сторонился этого, т.к. считал что необходимы хорошие знания математики, поэтому я всегда этого сторонился.
Но примерно год назад что-то зародило во мне желание все таки к программированию, сначала это просто была мысль, кроме которой я ничего не делал. После посещения IT Jam 2012 желание усилилось в несколько раз. Также остальные мероприятия подогревали мой интерес. В результате я достиг того уровня, когда покинул компанию, где развился с помощника системного администратора до руководителя IT-отдела, только, что бы прислушаться к себе и понять чем я хочу заниматься. Но плотный психологический барьер, который был всю жизнь, не позволяет мне просто сесть и начать изучать код, т.к. есть страх после потраченого года оставаться все также в аутсайдерах.
Эта тема не раз поднималась на форуме, но каждый раз обсуждался разный уровень математики, поэтому хочу описать конкретно мою ситуацию.
Уровень моих математических способностей закончился в 5 классе. Я пропустил почти весь год
В
Далее было обучение где как обычно, я не «вьежал» в материал. Бесконечные просиживания на пересдачах, еле еле закрывая двойки. В результате последний долг был закрыт за пирожки. Следующий преподаватель где я получал «тройку» лишь бы не мешал проводить урок.
В общем математика для меня всегда оставалась больной темой. При этом, по физике я очень даже преуспевал, однажды даже растроив преподавателя, что за экзамен пришлось поставить
И так наше время. Мне 24 года. Начал изучать Java по книге Г. Шильдта «Java. Руководство для начинающих», книга которая расчитана, на то что вы до этого не были знакомы с языками программирования, легко читается и усваивается, задачки вполне решаемы (насколько я это могу субьективно сидеть, правда на решение задачи поиска простых числе заняло пару дней), По совету Bionic Univercity забросил и достал книгу Ставровского «Турбо Паскаль 7.0». Книга оказалась для меня очень сложной и не интерестно. Поэтому поискал другого автора, и начал читать Лукина «Турбо-Паскаль 7.0. Самоучитель.» Книга намного легче читалась чем Ставровский, но неактуальность языка меня угнетала, а также невозможность выполнить всех примеров на fpc. В общем, отдалившись от цели у меня утих пыл. Я начал искать другие способы входа и начал иузчать JS по сайту learn.javascript.ru (сейчас я нахожусь в этой точке) Но изучение одновременно HTML5, CSS, JS, C# (Что необходимо для Bionic) меня теряют, т.к. не пойму как их одновременно читать. Ну и конечно же опять же бесконечные терзания, а способен ли я программировать, мешают мне целеустремленному изучению. Как языки мне нравятся Java, Python и Web.
Склоняюсь все таки к возврату на Java, т.к. ООП намного легче понимается, а также за счет высокого спроса на этот язык большая вероятность попробовать в будущем себя в деле, а потом при желании и уверенности перейти на другой язык.
Я понял, что мне нужна уверенность в своих способностях, но как это проверить на начальных уровнях. В Luxoft иногда проводят наборы на стажировку Java почти с полного нуля, они делают тестирование на логику + собеседуют. Насколько обьективный такой тест я не знаю, но к сожалению мне не удается попасть хотя бы на такое тестирование, т.к. нет набора. В программирование я устремлен, не из-за денег, а из-за поиска творческой реализации (возможность что-то создавать), т.к. в администрировании этого практически нет. Т.к. есть множество идей, но чувствую себя глухим скрипачем.
Не один раз говорилось, что сильные знания высшей математики не нужны, что достаточно знаний первого курса, но что если даже этих знаний нет.
В основе любого языка составление алгоритмов, верно? Как проверить способность составлять алгоритмы. Было неоднократно сказано, что порешав Кнута, можно забыть, что у тебя были проблемы с математикой. Но тут у меня опять полнейший провал. Я прочитал первые 30 страниц. Дошел до самых первых примеров. Мало того, что я не смог решить ни одной его задачки, так я еще и не понял ни одного его объяснения как работает алгоритм. Любую информацию я визуализирую для понимания, даже к примеру я визуально представляю три основных потока в Linux, но здесь когда я читаю формы, я не вижу картин, а только белые пятна, я читаю текст, но пропускаю формулы и значения. Да у меня визуальная память и если это также влияет, то я левша. Возможно есть учебники с упором на визуальное обучение математики, возможно есть какой-то другой подход.
Но даже после таких «фейлов» есть люди, которые продолжают давать надежду, приведу цитату таких слов:
Не стоит зацикливаться на Кнуте, особенно начинающим, в программировании есть много областей, где мало математики, больше дизайна, или программы для создания игр без программирования или с минимальными знаниями. К сожалению, это не моя область, я специализируюсь на Oracle и C++ . Темка, что выбрать для изучения человеку, который не сильно силен в алгоритмах и математике — как раз для форума.
Вот и все.. Спасибо тем людям, которые дочитают этот пост до конца :) Невольно много текста получилось, видимо накипело. Очень нуждаюсь в адекватной оценке, а не просто советы забить, т.к. отказаться от этого, все таки будет тяжело.
222 коментарі
Додати коментар Підписатись на коментаріВідписатись від коментарів