• Как разместить VK Mini Apps на сервере?

    @ostiwe
    Вам нужен VPS и ssl сертификат

    1) Создаем папку на сервере, куда пользователь не сможет добраться и создаем там шаблон приложения
    npx @vkontakte/create-vk-mini-app /home/username/vkapp/project_name

    2) После загрузки шаблона, в корневой папке проекта создаем папку, где будут храниться ssl сертификаты, например "local-certificate". Далее закидываем туда сертификаты с расширениями crt и key
    3) В package.json в секции scripts немного изменяем команду start
    ....
    "scripts": {
        "start": "cross-env PORT=5000 HTTPS=true SSL_CRT_FILE=./local-certificate/ssl.crt SSL_KEY_FILE=./local-certificate/ssl.key react-scripts start",
        "build": "react-scripts build",
        "predeploy": "npm run build",
        "deploy": "vk-miniapps-deploy"
      },
    ....


    4) Запускаем npm start
    5) В настройках приложения (в вк) домен с портом, к примеру https://domain.ltd:5000.

    Не забудьте на сервере разрешить указанный порт.

    Готово, теперь осталось подключиться к серверу и начать редактировать.

    Я рекомендую использовать phpStorm:
    1) 5ede0d0491e39864921413.png
    2) 5ede0d11c713c838762831.png
    3) 5ede0d2024a3e498867056.png
    4) 5ede0d2b9232f631594585.png
    Ответ написан
    2 комментария
  • С чего начать путь в Game Dev?

    LibrarianOok
    @LibrarianOok
    переводчик, фрилансер, разработчик игр.
    Я уже многих научил делать игры. И это вовсе не так сложно. Получи пошаговую инструкцию:
    Шаг 0) Забудь про все эти юнити-шмунити, анриал энжин и прочие движки. Для первого проекта в жанре sci-fi они тебе точно не понадобятся для того, чтобы поднять самооценку и быстро сделать завершённый проект в этом жанре. Просто бестолку потратишь время, столь драгоценное перед поступлением в вуз.
    Шаг 1) Открой для себя жанр текстовых игр. Не спеши с воем биться головой о стол. Это именно тот жанр, в котором можно реализовать свою задумку самому, без привлечения всех этих сотен навыков в 3D-моделировании, компьютерной графике, звукорежиссуре и т.д. и т.п., которых у тебя, кстати, пока что и нет. «Используй то,что под рукою и не ищи себе другое!» (Ф. Фогт). Начать знакомство с этим жанром рекомендую с этой вот игры: Потом посмотри и другие игры из этого репозитория. Код любой из этих игр можно скачать, тыкнув ссылку "Скачать" и посмотреть, как что сделано.
    Шаг 2) Для создания игры тебе понадобится оффлайн-плеер для твоей операционной системы. https://instead3.syscall.ru/ (Всё верно, этот движок работает не только онлайн, но и на андроиде, этих ваших линуксах, виндовсах, макоси, бздях, гайке и бабушкином чугунном утюге.) Кроме того, понадобится текстовый редактор программиста - тут полное раздолье, Notepad++, Geany, или любой другой, лишь бы номера строк выводил, и была подсветка синтаксиса Lua. (Не пугайся, никто не заставляет тебя учить ещё один язык программирования, достаточно знакомства с его азами за 15 минут)
    Шаг 3) Ознакомься с документацией на русском языке.
    Шаг 4) Собственно написать игру.
    У движка есть активное сообщество в телеграме https://t.me/insteadtalk и дискорде https://discord.gg/mxPNdYT
    Ответ написан
    Комментировать
  • Как восстановить знания по C++ на сегодняшний день?

    @Koss1024
    0. Прочитайте Страуструпа последнее издание (англ). Если язык вы знали то это лучшая книга чтобы обновить знания

    1. C++11 C++14, в производстве чаще пока еще С++03
    2. Лучший компилятор clang++ (поддерживает любой стандарт и любую платформу)
    3. boost это набор библиотек на все случаи жизни самый хорошо сынжинереный. Стоит писать не под него а с использованием
    4. пункт 3
    5. C++ для задач требующих точного понимания стоимости каждой операции, это embedded DSP Server computing
    Math много чего еще

    Учтите, С++ это инструмент который нужно учить постоянно

    Дополню
    -----------
    С++ мультипарадигменный
    А так же много уровней абстракции поддерживает

    На нем можно писать как на чистом С - это самый низкий уровень
    Можно ООП и абстракции
    Можно паттерны
    А можно функциональный стиль

    С С++ в этом и проблема что знать нужно очень много.

    Я могу сказать что я читал на протяжении своей карьеры
    Прежде всего я умел программировать и имел представление об алгоритмах и модели памяти
    (что такое указатели, алокация удаление и т д)

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

    Потом Страуструп (тогда это было издание по стандарту 03). Здесь я дополнил свои знания деталями которые пропустил при самостоятельном изучении. Тут стоит отметить что Страуструп весьма странная книга и написана тяжело. Секцию же ООП вообще там лучше не читать (самая последняя).

    Где-то рядом я прочитал Гради Буч - ООА и ООП с примерами применения. Очень хорошая кика чтобы понять к чему все это придумали вообще. Сильно выправляла мозги

    Потом был Керниган и Ричи Язык программирования С. Эту я прочитал просто от безделья, но теперь считаю что это было необходимо. Здесь можно понять зачем придумали именно С. И насколько там все просто, задумано.

    Следом пошли техники: Герб Саттер Решение сложных задач на С++ и Новые сложные задачи С++
    читать обязательно, разобрано много костылей и проблем языка. Дано очень много дельных советов

    С Мейерс - Эффективное использование С++ туда же. Прекрасный разбор.

    Макконнел - Совершенный код. Очень крутая книга. Она отшлифует уже почти бриллиант.

    Помимо всего прочего я работал над проектами и постоянно читал всяческие форумы, блоги, дискутировал с коллегами. Решал задачки разных собеседований.

    Отдельного внимания заслуживает книга Банды четырех (Паттерны).
    Я ее с трудом дочитал, читал ее я уже аж после всего перечисленного и после примерно 7-8 лет опыта С++.
    Я уже давно был Senior dev. и наконец нашел таки время и для нее. Она мне показалась до ужаса скучной и очевидной, поскольку почти все предложенные решения я придумывал и сам неоднократно. Кроме того, большинство этих решений неоправданно тяжелы, и очень запутывают код. Тема холиварная и спать надо много, но я пожалуй остановлюсь только на том что в моей практике, худшими с точки зрения цены ошибок были разработчики которые учились начиная с этой книги. Их код недодерживаем запутан и очень плохо поддается рефакторингу. Такой код имеет самые долго отлеживаемые ошибки.

    Где-то рядом я прочитал Фаулера - Рефакторинг. Вполне себе неплохо. Рекомендую. Но тут стоит к опытному коллеге обратиться. Идея то проста Тесты - Маленькие комиты - YAGNI KISS и SRP но детали лучше познавать на практике.
    У меня был хороший лид, который меня в конце концов научил :)

    Совсем забыл! Александреску же! Скажем так - не так страшен Александреску как тот кто его начитался :)
    Фана доставил много, а так же дал возможность на эти игрища потерять около 3-х месяцев работы. Даже не знаю
    стоит ли читать. Наверное стоит, но нужно помнить что на практике лучше не использовать если вы уже не эксперт.

    Остальное С++ не касается, но чтобы стать профессионалом Вам потребуются алгоритмы и структуры данных (Кормен, Кнут), многопоточность (Энтони Уильямс), другие языки(питон, JS, java), оптимизация и профилирование.
    и много много разных специфических знаний

    Удачи Вам в этом нелегком но, безусловно, интереснейшем пути :)
    Ответ написан
    7 комментариев
  • Собираюсь учить С++, но какими знаниями надо обладать?

    @d0lph1n
    Почему-то в последнее время люди одержимы языками программирования, возносят их в абсолют, делают из них манну небесную, эдакую сакральную мудрость, особенно если речь заходит о C или C++. Для того, чтобы научиться программировать, не нужно знать ничего. Поэтому дерзайте - если Вы смогли осилить физику, осилить такую ерунду, как язык программирования, Вам труда не составит. :)

    UPD. Я, кстати, рекомендую Вам прочесть следующие книги и в следующей последовательности:
    1. "Доусон Майкл - C++ через программирование игр". Там, конечно же, не рассказывается, как в одно лицо создать "Кваку", но зато полно красивых и содержательных абстракций, которые не только упростят понимание, но и помогут по-настоящему полюбить язык.
    2. А после Доусона возьмите "Солтер - C++ для профессионалов". Именно после Доусона. Очень хорошая книга в хорошем переводе.

    После этих двух прочтите (погуглите) о современных стандартах: C++11, C++14, C++17. И все - Вы "сипипишник".
    Ответ написан
    Комментировать
  • С чего начать изучение программирования 3D графики?

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

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

    @Novamoscow
    Как обычно, много всего написали :)

    Добавлю.
    Как вариант предложи переписать сайт или его часть на флексбокс. Это будет очень удобно, сможешь развиваться на работе.

    По адаптиву. Бутстрап это Фреймворк, он помогает, а знать чистую верстку знать нужно. Да и это не сложно, поймёшь, что к чему максимум за час )

    БЭМ стоит почитать, как минимум для упрощение себе жизни. Начни с именования классов (инфа на самой странице БЭМ довольно просто написанно, можно разобраться за утренним кофе :) )

    Попробуй все, что я выше написал. Подтянешь хтмл и CSS.

    После почитай про бутстрап. Вижу не совсем понимаешь, что это за штука такая.

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

    Советую поработать в Москве или Питере, если есть желание конечно же, но выбирай компанию где ты будешь не один. Когда есть старшие товарищи, обучение пойдёт быстрее.
    Ответ написан
    2 комментария
  • Какая книга лучше по Java?

    @EgorNS
    Попробуйте Java Полное руководство Шилдта, если станет трудно, то возьмите Кэти Сьерра, а потом вернитесь к Шилтду. После Шилдта можно взять Хорстманна для закрепления материала, если имеете достаточно времени, а потом уже можно и Философию Java Эккеля взять. Думаю что этот алгоритм должен вам помочь :)
    Ответ написан
  • Учебник по математике, при почти нулевых знаниях?

    Начните с книги "Удовольствие от Х" Стивена Строгаца
    Поможет ПОНЯТЬ и получить базу для изучения вышеуказанных книг и курсов.
    Ответ написан
    Комментировать
  • Учебник по математике, при почти нулевых знаниях?

    @Northewind
    engineer
    По школьной (элементарной) математике советую учебник М.И. Сканави "Элементарная математика". Учебник ориентирован на старшие классы и повторяет всю программу по математике, которую должен был знать выпускник советской школы.
    Изложение строгое, систематическое. Пойдёт и "взрослому".
    www.twirpx.com/file/15951
    Ответ написан
    Комментировать
  • Учебник по математике, при почти нулевых знаниях?

    @SeptiM
    Мне кажется, то, с чего нужно начинать, это дискретная математика. Можно сказать, это азбука для программиста. Я ниже приложил некоторый список книг. Стоит, правда, понять, хотите вы самостоятельно изучать предмет или иметь менторов и готовую программу...

    Дискретная математика

    Есть здоровская книжка Андерсона "Дискретная математика и комбинаторика". Она довольно толстая, но главы можно читать почти в случайном порядке. Некоторые математики жалуются, что она не очень строгая и много воды, но для начала самое то.

    По дискретной математике есть русский онлайн-курс на Stepic-е.

    Если идти чуть глубже, есть неплохая книжка Кнута и др. "Конкретная математика".

    Алгоритмы и структуры данных

    Кормен "Алгоритмы: построение и анализ" в переводе А. Шеня. Осилить первые две главы, потом можно идти почти в случайном порядке. Написано достаточно просто и понятно.

    Дасгупта, Пападимитриу, Вазирани "Алгоритмы".

    Онлайн-курс по алгоритмам.

    О математике

    МЦНМО свободно распространяет много интересных книг: www.mccme.ru/free-books
    Посмотрите там в первую очередь Шеня и Арнольда. Например, В. И. Арнольд. Задачи для детей от 5 до 15 лет.

    И разумеется не упустите замечательного писателя Мартина Гарднера "Математические головоломки и развлечения".

    Задачники

    Попрактиковаться в решении с проверкой можно здесь.

    www.braingames.ru -- по математике
    https://projecteuler.net/ -- среднее, ближе к программированию
    acm.timus.ru -- по программированию

    Очные программы

    Умение самоорганизоваться -- это хорошо, но иногда нужен ментор и готовая программа.
    Если вы живете в Москве или Петербурге, попытайте счастье в этих двух организациях:
    https://yandexdataschool.ru/
    https://compscicenter.ru/
    Если нет, но есть возможность на два года уйти в учебу, попробуйте поступить в магистратуру СПбАУ на SE-направление:
    mit.spbau.ru

    Посмотрите задания на собеседования. Скорее всего вам будет что повторить или изучить, прежде чем поступить.

    Удачи!
    Ответ написан
    3 комментария
  • Какую книжку выбрать для изучения JS?

    @flameward
    Фленаган - это Библия. Лучше него - ничего нет. Плюс порекомендую Стоян Стефанов - JavaScript. Шаблоны., но это уже для продвинутых людей.
    Ответ написан
    1 комментарий
  • Какую книжку выбрать для изучения JS?

    рекомендую https://learn.javascript.ru/
    1) интерактивный & современный
    2) под каждой темой читайте комменты (все разжевано до мелочей), останутся вопросы пишите комменты, фидбек очень быстрый
    3) задачки
    4) (понимание) => основ
    5) обязательно устроится куда нибудь junior, будет много практики, ошибки и т/п если еще будет team lead можно сказать уже пол дела сделано
    6) глубокое погружение, не только по js
    7) потом уже поймете что делать дальше
    Ответ написан
    Комментировать
  • Карьера программиста после 30+. Миф или реальность?

    printf
    @printf
    Ем детей.
    Во всех фирмах, где я работал, мы брали людей вне зависимости от возраста и половых признаков. Тем более меньше 40 лет, о чем речь-то вообще.

    Тут проблематика в другом. Нужно хорошо владеть предметной областью (да-да, юниору тоже). Очень хорошо будет показать свои работы (в т.ч. работы «в стол»). Тогда всё будет ОК.

    А «свежие» выпускники это всегда ужасно, там процентов 90 вообще программировать не может ни в каком виде. Терпеть не могу, серьезно.
    Ответ написан
    Комментировать
  • За и против Bootstrap?

    @vasIvas
    Bootstrap - это золотые, не разрушаемые магические доспехи. Но для человека ростом 1,2.
    Ответ написан
    Комментировать
  • Как эффективно использовать GIT одному человеку в разных проектах?

    compilator
    @compilator
    Senior Data Engineer
    Возьмите за правило, что когда вы пишете новый функционал - всегда отводить новую ветку от основной. В основной у вас будет лежать код, который на данный момент работает на продакшене.

    Тоесть, у вас есть проект. Надо реализовать новую фичу шифрования, например. Вы отводите ветку от основной
    git checkout -b feature/encryption

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

    git clone - выкачать репозиторий
    git pull – получение изменений из удаленного репозитория
    git checkout - переключиться на ветку
    git checkout –b - отведение новой ветки от текущей с переключением на нее
    git add – добавление файлов в индекс
    git commit –m ‘’ – коммит с комментарием
    git push origin - пуш закоммиченных изменений в удаленный репозиторий origin
    git branch –d - локальное удаление ветки
    git stash save –keep-index + git stash drop – локальное удаление изменений в отслеживаемых файлах
    Ответ написан
    3 комментария
  • Что почитать frontend разработчику?

    @nk11k
    Можно отталкиваться от этого списка:

    sijinjoseph.com/programmer-competency-matrix

    Читайте блоги.

    - Того же Joel on Software
    - mpj
    - tonsky.me
    - .. десятки их

    Изучайте конференции, посмотрите:

    - Rich Hickey Simple Made Easy
    - jsconf
    - ... и т. д.

    Посмотрите, как происходит интервью в технические компании:

    - Google

    Есть замечательная книга Cracking Coding Interview

    Гуглите, гуглите, гуглите.

    Лично я завёл себе репу в гитхабе со всеми полезными ссылками, которые нашёл. Список дополняется по мере нахождения интересных и полезных вещей. Но я не один такой, есть аналогичные списки.
    Ответ написан
    Комментировать
  • Что почитать frontend разработчику?

    Neznayka1979
    @Neznayka1979
    Интересы - IT, психология...
    > есть ли ещё какие-нибудь книги, наподобие данных для общего развития, не привязываясь особо к конкретному языку

    «Алгоритмы. Вводный курс» Томас Х. Кормен
    «Алгоритмы. Построение и Анализ» Томас Х. Кормен, Чарльз И. Лейзерсон, Рональд Л. Ривест, Клиффорд Штайн.
    «Алгоритмы введение в разработку и анализ» Левитин А.В
    «Algorithms in a Nutshell, 2nd Edition»
    «Логика» Виноградов С. Н. и Кузьмин А. Ф _ 1954
    «Основы системного анализа» Спицнадель В.Н. (2000 г.)
    «Семь навыков высокоэффективных людей. Мощные инструменты развития личности» Стивен Р. Кови
    Ответ написан
    Комментировать
  • Вопрос не актуален. Как продумать свою программу и наконец начать писать код?

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

    Rou1997
    @Rou1997
    Над ним я размышляю несколько дней, и тут дошло до меня, что я не осилю такой масштаб. Из-за элементарного незнания того, КАК написать ту или иную функцию.

    А причем здесь масштаб, если вы не можете реализовать конкретную функцию?
    Не вяжется! Так что в вашем вопросе нет достоверной формулировки проблемы, поэтому я Вас не понимаю, помочь не могу, хотя через что-то подобное проходил, я думаю что вы страдаете перфекционизмом, так вот, он есть зло, а качество должно зависеть от размера оплаты, вам как я понимаю не заплатят ничего, выводы сами сделаете если конечно послушаете меня, а не как дураки.

    как можно осуществить вывод графики (отображение в окне картинок, видео) на подключенный к компьютеру не основной монитор

    Зависит от того, как он к нему подключен.
    Если как "полноценный монитор" то в API конкретной ОС не должно быть проблем создать окно именно на этом мониторе, в интернете полно примеров для такого случая.
    Ответ написан
    7 комментариев
  • Что почитать про геометрию в программировании?

    @potan
    Функциональный программист
    Голованов Н. Н. "Геометрическое моделирование"
    Бобенко А. И., Сурис Ю. Б. "Дискретная дифференциальная геометрия. Интегрируемая структура"

    Готовьтесь к сложной математике
    Ответ написан
    Комментировать