• Какие проблемы с питоном есть в Яндексе?

    Noizefan
    @Noizefan
    Ну, если взять репутацию обоих компаний, то проблемы должны быть у Java.
    Яндекс тесно сотрудничает с Высшей Школой Экономики (ФКН), где они уже несколько лет учат кодить студентов на питоне и на крестах. Были бы проблемы - кому бы оно было нужно, плодить кодеров на плохих технологиях?
    не забывайте, что это конкуренты.
    Ответ написан
    Комментировать
  • Может ли нанятый разработчик моб. приложения угнать идею?

    Hando
    @Hando
    Верстак
    Все носятся со своими идеями, но потом оказывается, что их идеи ничего не стоят без грамотной реализации проекта, хорошего финансирования и маркетинга. Мечтатели...
    Ответ написан
    1 комментарий
  • Может ли нанятый разработчик моб. приложения угнать идею?

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

    berezuev
    @berezuev
    #define TRUE FALSE
    И почему все думают, что кому-то нужна их идея?...

    А вообще, подобные вопросы решаются крайне просто: оформляете юр.лицо, заключаете с разработчиком договор на оказание услуг (либо, трудовой договор) и даете на подпись NDA.
    Ответ написан
    3 комментария
  • Как быстро проверить правильная ли скобочная последовательность?

    @Mercury13
    Программист на «си с крестами» и не только
    Критерий таков.
    1. Баланс ( и ) должен сохраниться.
    2. а) Либо вырожденный случай (скобку меняем дважды на противоположную);
    б) либо ) → ( идёт перед ( → );
    в) либо уровень вложенности обеих скобок не менее 3, при этом они сидят в общих скобках 2-го уровня.

    Из-за 2в без предобработки за O(n) проверить невозможно. Но предобработка хороша, если мы решаем кучу таких запросов, и с этим отдельный вопрос. В таком случае, вероятно, лучше использовать дерево отрезков, обрабатывающее каждый запрос за log n. Пока мне алгоритм понятен не до конца; если вы скажете, что действительно задача про кучу запросов — подумаю..
    Ответ написан
    Комментировать
  • Правильно ли я понимаю суть программирования?

    @jacob1237
    Формат интерпретации данных и их кодирование в памяти, а также список команд, которые способен исполнить процессор, предопределены производителем CPU и описаны в Instruction Set Architecture процессора?


    Да, все верно понимаете. Производители процессоров конечно пытаются стандартизировать свои архитектуры, но все равно остаются ньюансы как у AMD, так и у Intel (если рассматривать только ПК).

    Пример документации от Интел: https://software.intel.com/en-us/articles/intel-sdm

    В целом для ПК (именно для ПК) существуют некий стандарт x86, а также его расширение x86-64. Именно он описывает набор доступных программисту инструкций, флагов и ячеек данных (регистров).
    В рамках этого стандарта каждая инструкция имеет свой опкод.

    Т.е. после компиляции программы в машинный код (двоичную последовательность), опкоды команд будут одинаковы для всех x86-совместимых процессоров (т.е. компиляция идет не под отдельный процессор, а под архитектуру, а самих архитектур много, x86, ARM и т.д.).
    Это дает возможность запускать программы с одинаковым результатом как на процессорах Intel, так и на AMD.

    Программирование — умение кодировать алгоритмы, предназначенные для исполнения процессором, на языке, синтаксис которого, в конечном счёте - после стадий трансляции символьных масок в последовательность электрических сигналов, предназначен для понимания процессором


    Если рассматривать только сам процесс кодирования, то примерно так и есть.
    Но сейчас под термином "программирование" подразумевается нечто большее чем простой набор инструкций с клавиатуры.
    Программирование - прикладная наука. Без предметной области программирование не существует в принципе.
    И именно предметная область зачастую определяет каким будет язык и инфраструктура.

    От программиста требуется не только забить алгоритм и откомпилировать исходник, но и зачастую этот алгоритм сначала придумать/скомбинировать. Без знания предметной области этого сделать опять же не получится, либо получится, но малоэффективно.

    Вам точно не в "web-dev"..
    P.s уж слишком низко полезли. У нас же всё в абстракциях :D

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

    Это может быть потребность написать свой модуль для PHP, Python, JavaScript (Node.js), либо реализовать программный интерфейс к внешним приложениям/системам.

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

    В 90% задач конечно это не нужно (особенно где надо "натягивать верстку на движок" =D), но если хотите расти как профессионал и покрывать весь спектр возможных задач в вебе, то это, как говорится, must have.
    Ответ написан
    Комментировать
  • Какие игровые движки существуют для Python?

    @WorldEn
    На данный момент для Python есть следующие движки на выбор:

    2D:
    - Cocos 2D (сам лично им не пользовался и ничего сказать не могу, но знаю, что русскоязычное сообщество использует этот движок для с++, вместо python)

    - Kivy (это потомок Pygame, о котором напишу ниже. В основном он предназначен для создания приложений под андроид, но 2D игры тоже на нём делают)

    - Собственно PyGame (Это библиотека Python для создания 2D игр. Очень проста в освоении и есть много уроков и книг на английском и русском. Можно создать практически любую 2D игру. Русское сообщество тоже есть. Хорошая книга на русском здесь)

    - Так же есть 2D + 3D движок с внутренним языком программирования, который очень похож на Python. Т.е если знаешь Python, то этот ЯП освоишь максимум за неделю или даже меньше. Godot Engine

    3D:
    - Из 3D движков единственные это Blender Game Engine. Движок прост в освоении и, в принципе, даже не надо знать языка программирования для создания хорошей игры. Однако если знаешь Python, то это большой плюс, так как скрипты для этого движка пишутся именно на этом языке. Хорошая книжка по движку здесь, а здесь перевод. Примеры игр: раз, два.

    - И , конечно же, Panda 3D. Это не конструктор игр, как Blender Game Engine, где ты создаешь игру, не написав строчки кода. Это конкретный игровой движок, где ты с нуля пишешь код на Python используя API этого движка и создаешь 3D игру. Я сейчас сам его осваиваю и у движка есть живое русскоязычное сообщество, где могут подсказать если что. Так же по движку много видео уроков и книг на английском. Вот одна из этих книг- она на английском, но написано всё понятно, что даже я, не зная инглиш, понимаю))))) Примеры игр: раз, два, три.
    Ответ написан
    9 комментариев
  • Как систематически изучать математический анализ?

    x67
    @x67
    Я полагаю, порядок, в котором изучают математику в универах, очень даже не плох.
    Первые два курса - вся общая математика, начиная от линейки и матана, заканчивая ТФКП, ЧМ. Далее в зависимости от области задач ищете конкретику. По своему опыту скажу, что полное понимание 1 и 2 курсов позволяют с легкостью продолжить изучение всего и вся в любых направлениях
    Ответ написан
    3 комментария
  • Что сделать для безопасности в linux на домашней машине?

    @fpir
    Однажды к мастеру учения пришёл неофит и сказал:
    Учитель, меня терзают сомнения. Когда я исповедовал путь Windows, у меня были и антивирусы, и брандмаузеры, и чистильщики реестра, и другие утилиты, которые меня защищали. Сейчас-же, я чувствую себя беззащитным перед опасностями интернета.
    Тогда учитель связал ему шнурки и велел-Беги!
    Что-же это значит, Учитель?
    Когда дом изначально хорошо спроектирован, нет смысла в дополнительных подпорках.
    И тогда неофит познал дзен.
    Ответ написан
    Комментировать
  • Выбор начинающего c++ gamedeveloper-а: SDL, SFML или что-то ещё?

    maaGames
    @maaGames
    Погроммирую программы
    Обращайте внимание на даты плохих и хороших комментариев к фреймворкам.
    Лично я предпочёл SFML именно из-за плюсанутости. Писать свои обёртки над SDL желания не было никакого, а недостатки SFML конкретно меня не коснулись. Низкоуровневые вещи в SFML доступны, потому что доступен OpenGL. Просто в SFML нет обёрток для функционала, касающегося 3D.
    Игрушка завелась на Win7 и Убунте.

    SFML поддерживает и iOS и Android, но там "всё очень сложно".
    SDL тоже поддерживает, но могу ошибаться.
    Ответ написан
    4 комментария
  • С чего начать изучение Gamedev'а?

    @VictKor
    Игровая индустрия, 3d моделирование
    Как инди? Тогда вам нужно очень много знать, определить свои слабые и сильные стороны: рисовать, создавать 3D, программировать etc.

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

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

    Выберите себе игровой движок, не стоит все кодить с нуля. Изучайте уроки связанные с этим движком. Просто делайте игру и наступайте на грабли - это опыт! Не выбирайте движок по крутизне. Например, Unreal Engine крут, но для простого инди избыточен и требует для изучения много времени.

    Вы занимаетесь веб-разработкой? Может быть стоит остановиться на браузерных проектах и искать движок с учетом своих знаний. Здесь проще выйти на пользователя. Например, ничто не мешает разместить игру в Вконтакте - это бесплатно и без модерации (если, конечно, вы не захотите использовать монетизацию и разместить игру в каталоге). По крайне мере, игру увидят ваши друзья.
    Ответ написан
    2 комментария
  • Прочитал много о программирование, где взять практику?

    Больше практики и больше общения с другими разработчиками.

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

    Запоминание только через практику!

    У программистов есть такие задания, каты. Ката состоит из небольшого задания и нескольких способов его решения, то есть решение уже известно. Идея в том, что воспроизводя решение в среде разработки вы тренируете фактически мышечную память. Загоняете знания в пальцы.
    Ответ написан
    Комментировать
  • Прочитал много о программирование, где взять практику?

    AxisPod
    @AxisPod
    Просто так читать бесполезно, забывается очень быстро, нужна практика, нужно много практики, параллельно с изучением. Ну и С++ сам по себе очень непростой язык с большим кол-вом тонкостей. Читать опять же надо не всё подряд. Тут уже не раз спрашивали по списку литературы, можно поискать. А так да, сделайте простой тестовый проект и развивайте его параллельно с изучением. Внедряйте новые технологии. Это позволит не писать всё время с нуля. Будете применять именно свеже изученные технологии.
    Ответ написан
    Комментировать
  • Прочитал много о программирование, где взять практику?

    Rio
    @Rio
    Практика нужна. Для начала на каком-то одном языке, не надо всё скопом. Каша в голове будет.
    И книги не просто читать надо, а параллельно что-то писать на изучаемом языке, так и запоминается лучше и рука набивается.

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

    Alukardd
    @Alukardd
    Не буду оправдывать, просто скажу — C++ + Qt.
    Ответ написан
    Комментировать
  • Лучший выбор для программирования кросс-платформенного приложения?

    Lerg
    @Lerg
    Defold, Corona, Lua, GameDev
    Советую Python + wxWidgets. Если не понравится ещё есть Qt + С++ || Python.
    Медиа возможности в Python можно подключить разными библиотеками (ffmpeg, mplayer), достаточно просто.
    Ответ написан
    4 комментария