• С чего начать изучение программирования 3D графики?

    Начните с основ https://habr.com/post/248153/
    Затем переходите к более прикладным задачам https://habr.com/post/310790/

    Если ваша цель не с графикой разобраться, а просто писать игры, то берите сразу готовый движок. Unity там или Unreal Engine.
    Ответ написан
    Комментировать
  • Сколько математики нужно программисту?

    Therapyx
    @Therapyx
    Data Science
    - булева алгебра (везде)
    - дискретная математика (желательна(не все темы, но для логики всегда будет полезно) + для сложных задач)
    - линейная алгебра (геймдев, machine learning...)
    - дигитальная схемотехника(неуместно, но на уровне булевой - мне лично она помогла хорошо, тут уж от человека к человеку)

    Приведу тебе 2 примера из личного опыта, так как основное уже и писали - "все зависит от места работы". Когда меня ставили "джуном",<-подчеркиваю, пару лет назад, уже тогда ожидали, что я буду спокойно писать свои алгоритмы сортировок под ту или иную задачу. Проводить анализ больших, терабайтных, данных с охереть какими сложными структурами данных. Использовать такие понятия как интерполяция, экстраполяция и тому подобное. Так же и чинить сортировку данных по 4-5 различным критериям с использованием максимум 3-4 индексов(пусть будет в массиве), а в идеале вообще в рил тайме без задержек - это все сложные алгоритмы, и это я еще не далеко не в самое далекое и глубокое место попал, есть немеренно позиций с куда большими требованиями к кандидатам. Но меня вот не спрашивали и мне приходилось в самом прямом смысле - страдать, это притом, что я довольно таки не плохо знал математику, в множестве ее направлениях(не школьных), ну или по крайне мере - так думал :D И Вряд ли бы без помощи с многими задачами смог бы справиться. Тогда то у меня и появилось первое "восхищение" каким-либо человеком за всю жизнь, после того как видел, что творит мой начальник с 30 летним стажем работы))

    А вот тебе второй сценарий, когда еще начинал учиться и работать в маленькой конторке, сайтики, сайтики, базы данных и вот там все, что приходилось использовать это ифелс, и написать формулу расчета грязных-чистых выплат (Привет 5-й класс).
    Ответ написан
    2 комментария
  • SICP — на чем лучше проработать курс?

    @lastkrick
    Любую между вторником и четвергом)
    Ответ написан
    2 комментария
  • Обязательно ли читать книгу по языку/технологии что бы быть тру и продвинутым кодером?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Вы не найдёте ни одного авторитетного программиста с мировой известностью, который бы утверждал, что курсы и видео-уроки лучше книг. Обычно это утверждают либо профаны, оправдывающие своё нежелание читать, либо авторы курсов, делающие деньги на лентяях и глупцах. И я лично за 18 лет в отрасли встретил множество программистов, но ни одного хорошего, выучившегося по курсам и видео-урокам.

    Видеокурс может запилить любой дурак. Чтобы написать книгу, нужно иметь авторитет достаточный для издательства. Кроме того, текст пройдёт редактуру нескольких профессионалов. Поэтому знания в книгах качественные и систематизированные. Для начинающего это очень важные качества.

    К тому же, после достижения профессионального уровня достаточного чтобы называться специалистом, вы обнаружите, что необходимые на этом уровне знания можно почерпнуть только из документации. То есть всё равно придётся читать. Много и часто.

    Наконец, постоянная практика чтения неизбежно приводит к увеличению скорости чтения. И наступает момент когда прочитать учебник будет в 10 и более раз быстрее, чем просмотреть видеокурсы по той же теме и в том же объёме.

    Кроме того, чтение развивает абстрактное мышление - основной инструмент разработчика.
    Ответ написан
    16 комментариев
  • Где можно практиковаться в программирование на С++ и Java?

    AlexXYZ
    @AlexXYZ
    O Keep Clear O
    Я не поклонник А. Лебедева, но иногда он говорит правильные вещи. Например, по поводу "Вышлете мне тестовое задание?" Он говорит - "а придумайте его сами!" Так и вообще с задачами. Нужно увидеть задачу. Точнее увидеть, как с помощью программирования вы можете перевести проблему из некоторого нерешённого состояния в решённое. В жизни задача никогда не скажет вам, что "вот она я, задача" и добровольно отдаст своё решение.
    Когда я занимался легкой атлетикой, то думал, что есть два состояния, одно, когда я тренируюсь, а второе, когда я выступаю. Тренер мне объяснил, что состояние только одно - тренировка. Только на соревнованиях выкладываешься больше. Это вообще изменило моё отношение к поиску задач.
    Если вы считаете, что способны решить задачу, то разве вы не способны её придумать? Каждая задача - это проверка своих возможностей, вызов. Если вы не работаете над решением задачи в таком ключе, значит вы неправильно и занимаетесь и работаете, т.к. нет развития.
    Ответ написан
    Комментировать
  • Возможно ли заработать, зная только HTML и CSS с помощью фриланса?

    Punkie
    @Punkie
    Рекомендую доучить HTML5+CSS3+JS+jQuery а так же Wordpress. Можно так же ознакомится с Bootstrap. Плюс параллельно фотошоп (в плане нарезки макетов и их вёрстки в pixel-perfect).
    А в плане фриланса - тот же upwork позволяет работать без особых вложений. Просто зарегистрируй аккаунт на отца например (для вывода денег нужны паспортные данные и кредитка).
    Ответ написан
    2 комментария
  • Возможно ли заработать, зная только HTML и CSS с помощью фриланса?

    Не слушай тех, кто говорит, что нет возможности. Возможность есть всегда. Все относительно - по сравнению с опытными профи, ты ничего не знаешь, а по сравнению с людьми, далекими от веба или вообще от компьютеров - ты довольно подкован. Только пока нет портфолио забей на фриланс-биржи. Пока клиентов ищи только оффлайн, т. к. в онлайне конкуренция слишком высокая. Давай объявления о создании сайтов, сделай визитки и т.д. Одного клиента в месяц тебе хватит, чтобы набивать шишки пока. Я с абсолютного нуля начал. Тоже не верил, что без опыта и знаний смогу как-то быстро начать и в первые три месяца сделал три сайта на заказ. В сумме на 27 тысяч. Не много, но это и не основной доход, а хобби, по вечерам. Зная CSS и HTML ты можешь спокойно делать сайты-визитки. Разберись как при помощи CSS и HTML делать шаблоны под CMS, например, вордпресс. Если по минимуму какой-то функционал нужен будет, по типу обратной связи на сайте и т.д. гугли готовые решения и пользуйся ими, пока не научишься сам программировать.
    Ответ написан
    Комментировать
  • Есть ли смысл изучать Ассемблер?

    @nnnice
    Асм - это хорошая база для тех, кто хочет разобраться в тонкостях взаимодействия с микроконтроллерами и машиной в целом. В нашей стране это не особо популярно: дровами никто не занимается, равно как и разработкой чего-то стоящего отечественного. Почти все из-за бугра. НО! Если вы все же хотите углубиться в тонкости работы этого языка, я очень рекомендую просмотреть перечень книг для начинающих. Возможно, вы продвинетесь и будете востребованным заграницей специалистом, а может и нет. Тут уж от вас зависит. От себя порекомендовал бы еще видео-туториалы. Тоже неплохая и наглядная штука. Надеюсь, эти материалы смогут вам помочь.
    Ответ написан
    Комментировать
  • Есть ли смысл изучать Ассемблер?

    @Viacheslav78
    V
    Литература по Debugging, Vulnerability Analysis, Asm, ARM.

    Debugging:
    Bill Blunden. Software Exorcism. A Handbook for Debugging and Optimizing Legacy Code.
    Brian W. Fitzpatrick. Debugging Teams. Better Productivity through Collaboration.
    Butcher Paul. Debug It. Find, Repair, and Prevent Bugs in Your Code.
    Debugging Linux Systems with GNU GDB.
    Eric Lawrence. Debugging with Fiddler. The complete reference from the creator of the Fiddler Web Debugger.
    Mario Hewardt, Daniel Pravat. Advanced Windows Debugging.
    Mario Hewardt. Advanced .NET Debugging.
    Matthew A. Telles, Yuan Hsieh. The Science of Debugging.
    Norman Matloff. Peter Jay Salzman. THE ART OF DEBUGGING WITH GDB, DDD, AND ECLIPSE.
    Rajaram Regupathy. Bootstrap Yourself with Linux-USB Stack. Design, Develop, Debug, and Validate Embedded USB Systems.
    Richard Foley. Pro Perl Debugging. From Professional to Expert.
    Richard H. Carver, Kuo-Chung Tai. Modern Multithreading Implementing, Testing, and Debugging Multithreaded Java and C++ & Pthreads & Win32 Programs.
    Richard Stallman, Roland Pesch, Stan Shebs, et al. Debugging with GDB - the GNU Source-Level Debugger.
    Steve Maguire. Debugging the Development Process.
    Tarik Soulami. Inside Windows Debugging. A Practical Guide to Debugging and Tracing Strategies in Windows.
    Thorsten Grötker, Ulrich Holtmann, Holger Keding, Markus Wloka. The Developer's Guide to Debugging.
    Cristina Cifuentes. Reverse Compilation Techniques.

    Vulnerability Analysis:
    Abraham Ghebrehiwet Ghebremedhin. Combining Static Source Code Analysis and Threat Assessment Modeling For Testing Open Source Software Security.
    Adam Loe Doup´e. Advanced Automated Web Application Vulnerability Analysis.
    Antti Vayrynen. Finding third-party components with binary analysis.
    David B. Dewey. FINDING AND REMEDYING HIGH-LEVEL SECURITY ISSUES IN BINARY CODE.
    David Brumley. Analysis and Defense of Vulnerabilities in Binary Code.
    Fabian Yamaguchi. Automated Extraction of API Usage Patterns from Source Code for Vulnerability Identification.
    Fabian Yamaguchi. Pattern-Based Vulnerability Discovery.
    Falko Strenzke. Efficiency and Implementation Security of Code-based Cryptosystems.
    Francisco Jose Marques Vieira. Realistic Vulnerability Injections in PHP Web Applications.
    George Perera. PURPOSEFULLY MANUFACTURED VULNERABILITIES IN U.S. GOVERNMENT TECHNOLOGY MICROCHIPS. RISKS AND HOMELAND SECURITY IMPLICATIONS.
    Guidelines for Implementation of REST.
    Gustav Ahlberg. Generating web applications containing XSS and CSRF vulnerabilities.
    Jay-Evan J. Tevis. AUTOMATIC DETECTION OF SOFTWARE SECURITY VULNERABILITIES IN EXECUTABLE PROGRAM FILES.
    Jing Xie. INTERACTIVE PROGRAMMING SUPPORT FOR SECURE SOFTWARE DEVELOPMENT.
    Mario Heiderich. Towards Elimination of XSS Attacks with a Trusted and Capability Controlled DOM.
    Martin Johns. Code Injection Vulnerabilities in Web Applications - Exemplified at Cross-site Scripting.
    Prateek Saxena. Systematic Techniques for Finding and Preventing Systematic Techniques for Finding and Preventing.
    Rami M. F. Jnena. Modern Approach for WEB Applications Vulnerability Analysis.
    Richard Wartell. REWRITING X86 BINARIES WITHOUT CODE PRODUCER COOPERATION.
    Runar Moen. Creating secure software.
    Ryan Dewhurst. Implementing Basic Static Code Analysis into Integrated Development Environments (IDEs) to Reduce Software Vulnerabilities.
    Sidney E Valentine. PLC Code Vulnerabilities Through SCADA Systems.
    Sooel Son, B.S., M.S. Toward Better Server-side Web Security.
    SRUTHI BANDHAKAVI. AUTOMATED DETECTION OF INJECTION VULNERABILITIES IN WEB APPLICATIONS.
    Steven Craig Hanna Jr. Attacks on Emerging Architectures.
    Thomas Hofer. Evaluating Static Source Code Analysis Tools.
    Tyler Bletsch. Code-Reuse Attacks. New Frontiers and Defenses.
    Wolf-Steffen Rodiger. Merging Static Analysis and Model Checking for Improved Security Vulnerability Detection.
    Yuchen Zhou. Improving Security and Privacy of Integrated Web Applications.

    Assembler:
    Blum Richard. Professional Assembly Language.
    Cavanagh Joseph. X86 Assembly Language and C Fundamentals.
    Duntemann Jeff. Assembly Language Step-by-Step. Programming with Linux.
    Irvine K.R. Assembly Language for x86 Processors. Seventh Edition.
    Irvine K.R. Assembly Language for x86 Processors. Sixth Edition.
    Kusswurm D. Modern X86 Assembly Language Programming. 32-bit, 64-bit, SSE, and AVX.
    Leiterman J.C. 32-64-Bit 80x86 Assembly Language Architecture.
    Neveln Bob. Linux Assembly Language Programming.
    Rose Chris. Assembly Language Succinctly.
    Seyfarth Ray. Introduction to 64 Bit Intel Assembly Language Programming for Linux.
    Hyde R. The Art of Assembly Language (Second Edition).
    Dandamudi S.P. Guide to Assembly Language Programming in Linux.

    ARM:
    Holt W. ARM Assembly Language. Fundamentals and Techniques.
    Langbridge J.A. Professional Embedded ARM Development.
    Магда Ю.С. Программирование и отладка C C++ приложений для микроконтроллеров ARM.
    Tay Raymond. OpenCL Parallel Programming Development Cookbook.
    Mahout Vincent. Assembly Language Programming ARM Cortex-M3.
    Sloss Andrew N. Symes D. Wright C. ARM System Developers Guide. Designing and Optimizing System Software.
    Valvano J.W. Embedded Systems. Introduction to Arm Cortex™-M Microcontrollers. Volume 1.
    Yui J. The Definitive Guide to ARM Cortex-M0 and Cortex-M0+ Processors.
    Ответ написан
    2 комментария
  • Ассемблер для начинающего?

    Dit81
    @Dit81
    Security researcher, pentester, internet-marketer
    Была такая подборка и даже книга Калашникова... Вот она просто для абсолютных новичков в Ассемблере. Там все азы были. А дальше только справочники по вызовам и прерываниям... Еще советую книгу «Хакинг. Искусство эксплойта» автора Джон Эриксон, там тоже с азов и ассемблера...
    Ответ написан
    1 комментарий
  • Ассемблер для начинающего?

    @JSmitty
    Ассемблер для чего? На интел есть x86 (32-битная) и x64 (64-битная) архитектуры, современные процессоры до сих пор должны выполнять и 8086 код (16 бит). Асм под винду - то ещё занятие, кмк, да и польза практическая сомнительна.

    Если что - современные ассемблеры - их немного актуальных осталось. В линуксе есть gas (at&t синтаксис), и win/linux nasm (интел синтаксис, более человеческий), для винды в Visual Studio есть продолжатель masm (в т.ч. x64).

    По NASM есть книжка Столярова бесплатная, описывается ассемблер x86 под линукс 32-разрядный.

    Но с практической точки зрения лучше потратьте время на изучение какого-нибудь AVR, MSP403 или PIC - он существенно проще, куча реальных применений до сих пор, и сама архитектура простая. Тестироваться на симуляторе или дешевой Arduino. Потом можно поучить ARM для кортексов, тоже какая-никакая практическая польза - см. https://habrahabr.ru/post/274541/ . Хотя уже начиная с ARM программируют в основном на Си, хороший курс вот - https://www.edx.org/course/embedded-systems-shape-...
    Ответ написан
    1 комментарий