Overcoder — больше, чем голова одного программиста

Много вопросов и ответов. Комментарии, примеры исходного кода и лучшие советы от экспертов.

Перейти к тегам

Вопросы и ответы по IT-темам

Найдите нужный ответ на свой технический вопрос.

Программирование

Языки программирования от Pascal до Rust.

Базы данных

SQL и СУБД от Microsoft Access до Oracle.

Фреймворки

Библиотеки и фреймворки от jQuery до Zend.

Сайтостроение

HTML, CSS, XML и CMS от Wordpress до TYPO3.

ОС и компоненты

От Ubuntu до Android, от Nginx до Tooltips.

Популярные теги

Облако тегов с наибольшим числом вопросов.

Интервью с девушкой-программистом:

Кто такой программист?
Достаточно актуальный вопрос, так как многие приписывают к этому слову все вплоть до ремонта утюгов. Для меня программист это человек, который работает с тем или иным языком программирования, это может быть что угодно, но связано это должно именно с написанием кода. То есть людей, которые собирают сайты на ЦМС на подобии Wordpress или Joomla я бы не назвала программистами, хотя они часто себя таковыми считают. И если задачи выходят за рамки привычных модулей, которые уже существуют, сделать они ничего не могут. В этом, наверное, и отличие программиста от множества схожих профессий в этой отрасли, эти люди могут создавать что-то сами, иногда с нуля, иногда нет, но писать от себя и создавать то, чего до них не существовало, а не только находить готовые решения.
Как ты стала программистом?
Это достаточно долгая история. Самим программированием я когда-то еще в школе увлекалась, там все начиналось достаточно обыденно с уроков информатики и олимпиад. Дальше я на самом деле колебалась с выбором вуза, на примете также была профессия инженера конструктора, так как черчение и математику я тоже хорошо понимала и любила. Однако после подачи документов в вуз, уже четко поняла, что хочу идти на программирование. На тот момент фраза «компьютерная инженерия» мне не давала конкретного понимания что это за профессия, а вот где-то к 3-му курсу, я уже разграничила, что именно написание кода и создание программ нравится куда больше, чем работа с платами или даже их программирование. Где-то с того момента я и начала искать варианты чем из высокоуровневых языков можно было бы заняться. В университете мы проходили тогда только C++, C#, на факультативах кто-то еще углублялся в C и Objective-C. Некоторые из моих одногруппников выбрали для себя разработку под Android или iOS, но мне хотелось большего выбора вариантов работы и как-то быстрее увидеть результат, того что я делаю. Когда на том же C# мы писали лабораторные я его сразу наблюдала, но в больших фирмах понимала, что будет совсем иначе, да и веб тогда как раз набирал обороты и был достаточно востребован. Примерно таким образом я на нем и остановилась.
Какой язык программирования самый сложный?
Тут для каждого человека сугубо индивидуально, я бы не выделила что-то конкретное. Допустим из тех с чем я сталкивалась мне не очень нравился Assembler, хотя я бы не сказала что это связанно только со сложностью, скорее мне не нравилось тратить кучу времени на написание машинных команд, которые в других языках сами подставляются компилятором и ты можешь об этом не задумываться, больше акцентируя внимание именно на самой структуре кода и необходимом функционале. Позднее я не слишком полюбила JavaScript, по возможности стараясь заменять его на jQuery, тут объяснить будет проблемнее, так как я на нем раньше частенько писала и моментами в вебе он необходим, но все-таки без лишней потребности стараюсь не использовать. И я прекрасно понимаю, что многие люди сейчас начнут меня за это критиковать и рассказывать о минусах этого самого jQuery, да я и сама с ними не раз сталкивалась, однако вопрос скорее состоит в том, что именно пишут и для чего. Лично мне без дополнительных требований и конкретной необходимости на нем работать проще и быстрее, и это не повод, что я не знаю js или не могу на нем писать без дополнительных библиотек, это скорее повод не тратить лишнее время и делать код более читабельным, по крайней мере для меня. Про многие языки, такие как Java или Python я не скажу, так как на них не писала, последний я бы хотела в ближайшее время освоить и думаю, что он мне понравится куда больше, чем вызовет сложностей.
Согласна ли ты, что все программисты - странные люди?
По себе бы такого наверное не сказала, да и многие люди очень удивляются, узнав кем я работаю. Однако некоторые бывают странноваты по своему, скорее даже как-то замкнуты и не общительны, это часто выглядит как странность. На самом деле они просто на своей волне и моментами фанатичны в своем деле, их надо понимать, и когда ты переключаешься с ними на близкую волну общаться очень даже интересно. Из минусов общения с программистами, пожалуй, выделю очень частое воспоминание или рассказы о работе, которые окружающим не всегда понятны, в итоге для людей это похоже на набор недоступного для них текста и терминов. Но мне кажется это специфика любой достаточно трудной для понимания профессии, то есть мне кажется общение с каким-то исследователем генной инженерии или физиком ядерщиком, было бы не проще, просто их куда меньше и из-за этого данные вещи про них не столь очевидны.
Минимальные требования машины для программирования
На данный момент в этом я не вижу совсем никаких ограничений, начать работать можно на любой машине, наверное при большом желании даже в компьютерном клубе. Да, это не удобно, но тут уже вопрос мотивации. Начинала я работать на нетбуке, который тупил на тот момент даже от обычного поставленного туда денвера, сейчас я бы явно организовала этот процесс по другому, но тогда меня и это не сильно останавливало. На данный момент просто можно арендовать или VPS или хостинг и заливать туда и запускать любой код, этот вариант незаменим при частой смене компьютеров или слабых характеристиках. Однако для себя я все-таки предпочитаю иметь локальный виртуальный сервер, в какой-то мере просто привычнее, да и параметры системы вполне позволяют, ну и доплачивать за хранения БД огромных размеров не приходится.
Можно ли быстро научиться программированию и как это сделать?
Можно, но скорее всего очень поверхностно и плохо. Мы все с чего-то начинали учиться, у кого-то это было дольше, у кого-то быстрее. Наверное, чтоб ответить на этот вопрос надо отталкиваться от начальных знаний человека, его способностей и мотивации это сделать. Лично у меня изучение основ веба, на тот момент это было - PHP, HTML, CSS, jQuery, MySQL и js, перед тем как я взяла первый заказ за деньги, заняло примерно 3 месяца. Хотя сейчас я бы оценила свое изучение того времени, как минимальный синтаксис и основы. Со стороны может показаться все равно достаточно быстро, но думаю сыграло роль, что на других языках я писала и до того, однако смотреть и вспоминать, что и какого уровня я тогда писала мне будет страшно. То есть слово «изучение» должно подразумевать под собой еще и определенный уровень, а иначе я до сих пор продолжаю его учить, да и все кто работают в этой отрасли меня поймут, что нельзя выучить все, вечно будет появляться что-то новое и мы будем обнаруживать что-то, чего не знали, сталкиваться с новыми задачами.
Обязательно ли программисту знать английский язык?
Чаще всего пишут что да, и соглашусь, это достаточно полезно и удобно. Ну тут бы скорее сделала акцент не на самом языке, а на чтении и его технической части, так как разговорный аспект, не считая работы с переездом за границу конечно используется очень редко, я наверное и не вспомню когда я по работе последний раз именно общалась на английском, а вот читаю постоянно. Но тут свой лексикон, это скорее основы английского с неплохим словарным запасом терминов, в принципе для начала этого будет вполне достаточно, а дальше уже зависит от того, чтоб именно вы будете делать, на кого работать или что изучать.
Напиши произвольно самую простую программу
Думаю мы все с нее начинали, это было:

<?php
echo "Hello world!";
?>


Ну это именно в моем исполнении, то есть на PHP. А на самом деле, насколько помню, эта фраза фигурировала почти везде при первых уроках изучения любого языка, как-то так повелось уже что ли, и так оно и продолжается. Для меня это своеобразный символ начала чего-то, то есть все к примеру настроено правильно, я в данном случае про сервер, и работает. В случае с другими языками будет вариант «скомпилировано» и дальше можно спокойно писать нужный вам код.
Как ты видишь будущее программирования
Трудно ответить конкретно, эта отрасль очень быстро развивается. Если говорить о программистах, то за последние лет 5 их очень сильно прибавилось, а качество работы достаточно упало, думаю именно эта тенденция и дальше будет продолжать прогрессировать, хотя меня это и не радует. Найти толковых специалистов сейчас становится куда труднее, так как очень много людей просто тормозятся на своем уровне минимума знаний и не особо даже хотят с него двигаться, я бы не сильно хотела работать с такими специалистами. Если говорить о самой отрасли, то все упрощается и заменяется все чаще готовыми решениями, не требующими абсолютно никакой разработки, а иногда даже понимания. Хотя появляются и очень интересные разработки, но все в большей мере автоматизируется. Думаю из-за этого необходимость в таком количестве программистов, которые сами ничего не пишут отпадет, а вот автоматизация всех процессов наоборот наберет колоссальные обороты, но это совсем далекое будущее. Думаю в эту ветку можно приписать и развитие искусственного интеллекта и робототехнику, это я бы назвала тоже своего рода попыткой все автоматизировать.
Сколько строчек кода можно написать за сутки?
Сколько хотите, от одной до нескольких тысяч наверное, от скорости набора зависит. Это просто забавный вопрос, мне кажется, что не один человек не преследовал написать просто энное количество строк кода, мы всегда преследуем решение определенных задач, в этом и есть основной вопрос. Так что отвечу на это достаточно просто, стоит писать столько строчек кода, сколько вам потребуется для решения той или иной задачи. Если для этого вам понадобится написать одну строку, но при этом искать место, куда ее нужно добавить, чтобы исправить какой-то баг весь день, то пусть будет даже одна.

Добавленные сегодня вопросы:

2 ответа
Я пытался написать доказательство концепции для класса, расширяющего Function, чтобы продемонстрировать конструктор функций, который можно было бы инициализировать на основе другой функции, и отразить this и arguments следующим образом: class Handle extends Function { constructor(functor) { ...
call
function
metaprogramming
2 ответа
Я silverlight С# devloper, и я в ситуации, которая объясняется снимок ниже: // [IMG_OUR_ID=174551.site] Как вы можете видеть, у меня есть сетка (нужно создать prgramtically с помощью С#, только вариант, данный мне). И первая строка (всегда видимая) этой сетки имеет флажок, который при проверк...
grid
checkbox
silverlight
1 ответ
Я использую picturefill.js(Scott Jehl): https://github.com/scottjehl/picturefill/blob/master/picturefill.js Здесь, как у меня есть настройка, (в некотором коде пропущен b/c это просто больше материала для медиа-запросов), используя теги span и атрибуты данных, как в его документации: <figure>...
3 ответа
Я хочу создать 9 * 9 divs на моей странице html с помощью JQuery, также я хотел бы спросить, можно ли создать их с определенной высотой (100 пикселей) и цветом фона в зависимости от столбца (например, желтый стол 1, столбец 2 красный и т.д.), будут ли идентификаторы divs уникальными?...
1 ответ
Когда я затуманил свет, я заметил, что каскад лица Хаара с трудом обнаружил мое лицо. (Это даже не было так темно!) Когда свет погаснет, как я могу отслеживать, как если бы свет включался?
1 ответ
Мне нужно использовать библиотеку tabula версии 0.9.2. Когда я набираю следующее, все работает нормально: python -m pip install tabula Мне нужно использовать определенную версию tabula. Когда я пишу python -m pip install tabula == 0.9.2, я получаю это сообщение об ошибке: Collecting tabula==0.9....
pip
version
tabula
1 ответ
В CMD я вхожу в pip install MySQL-python. Это ошибка вывода: Collecting MySQL-python Using cached MySQL-python-1.2.5.zip Installing collected packages: MySQL-python Running setup.py install for MySQL-python ... error Complete output from command c:\users\paint\appdata\local\programs\pyt...
2 ответа
Statement stmt = con.createStatement(); String pubBooks = "select title_name " + "from publisher, title " + "where pub_name = ? " + "and publisher.pub_no = title.pub_no " + "order by title_name"; ResultSet rS = ...
2 ответа
У меня есть 2 формы, первая форма4, которая является dataGridView, содержит информационные базы из базы данных, когда я нажимаю кнопку "Создать", форма 5 показывает формуляр, который я должен заполнить, затем кликнуть на кнопку "добавить", наконец, результат Я должен появиться в datagridView формы ...
forms
datagridview
2 ответа
Я работаю на bluetooth в первый раз. Я получил список парных устройств. Теперь мое требование - мне нужно отправить некоторые данные (строку) на устройство. Как мне это сделать? Я попытался найти, но не нашел ничего полезного. Может ли кто-нибудь помочь в этом?...
bluetooth
android-bluetooth
Наверх
Меню