• Как создать язык программирования?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Берешь перфокарту и начинаешь программировать.
    Ответ написан
    6 комментариев
  • Как создать язык программирования?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Как создать свой язык программирования?

    Точно так же, как и любую другую программу: сначала спроектировать, а потом реализовать.

    Без другого языка программирования! Полностью с нуля.

    В самом низу находится машинный код. Выглядит примерно вот так:
    08 04 83 fa 08 04 83 fb 08 04 83 fd 08 04 84 00
    У каждого процессора есть свой набор инструкций, которые кодируются машинным кодом. Открываем справочник и пишем нужный код для нужной ОС/железа. Ничего сложного, правда же? =)

    Ведь как-то создали первый ЯП.

    Достаточно почитать историю появления первых ЭВМ. Они представляли из себя набор переключателей отдельных битов, которые позже эволюционировали в перфокарты, которые в свою очередь представляли из себя прообраз современных исполняемых файлов. С увеличением количества доступных команд, усложнением техники и появлением накопителей программы так же становились все сложнее и сложнее: поэтому решили упростить запись и придумали первый ассемблер. Дальнейшее развитие привело к появлению первого ЯП высокого уровня и далее более высокие уровни абстракции, используя которые сегодня пишутся все программы.

    Так что в вашем случае вам надо пройти весь этот путь самостоятельно. Примерно так:
    1. На машинном коде реализовать минимальный ассемблер
    2. Используя свой минимальный ассемблер реализовать простейший компилятор этого ассемблера
    3. Расширить компилятор ассемблера до стандартного набора инструкций
    4. На ассемблере реализовать транслятор и компилятор ЯП высокого уровня
    5. Реализовать необходимый набор инструкций для написания компилятора этого же ЯП
    6. Написать этот самый компилятор своего ЯП на нём же и далее уже скомпилировать первую самостоятельную версию своего ЯП без использования других ЯП
    Ответ написан
    3 комментария
  • Есть ли сайты с задачами по с++, по типу лит код, только на русском?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Есть ли сайты с задачами по с++, по типу лит код, только на русском?

    Нет смысла искать такие сайты. Во первых программисту полезно прокачивать свой уровень
    английского. А во вторых английское комьюнити в десятки раз больше по количеству
    пользователей и от этого и задачи разнообразнее.

    Искать русский литкод - это сидеть всю жизнь как ракушка в раковине. Зачем такой изоляционизм?
    Ответ написан
    Комментировать
  • Какие решения существуют для поиска кадров в небольшую команду?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Подъëм зарплаты всегда работает.
    Ответ написан
    Комментировать
  • Как прокачаться до middle frontend?

    opium
    @opium
    Просто люблю качественно работать
    Работать не пробовали?
    Ответ написан
    Комментировать
  • Как создать свой домен?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    ICANN периодически проводит рассмотрение заявок на регистрацию доменов верхнего уровня. Стоимость такого домена порядка $200000 плюс отчисления от продаж поддоменов. Кроме этого вы должны создать и поддерживать инфраструктуру для обслуживания домена.
    Ответ написан
    3 комментария
  • Насколько сложно сейчас устроиться фронтенд разработчиком?

    xez
    @xez
    TL Junior Roo
    Очень сложно.
    Пока ещё ни одного разработчика на работу не взяли, ни стажёра, ни даже с опытом.
    Ответ написан
    Комментировать
  • На каких движках написаны приложении с красивым стилем например Билайн, Авито, и другие?

    @402d
    начинал с бейсика на УКНЦ в 1988
    Что такое "движок" в вашем вопросе ?
    Как дизайн зависит от движка ?
    Что делает в вопросе название среды разработки ?

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

    Теперь к мобильной разработке.
    Нормальные приложения не делаются на "движках".

    Есть язык программирования (ява,котлин,свифт и другие)
    Есть наборы готовых библиотек.
    Есть рекомендованные требования к внешнему виду.
    Например Material Design (2 и 3)
    Есть типовые подходы к архитектуре приложения

    И если узко рассуждать о красивом стиле, то сейчас это материал дизайн
    Ответ написан
    Комментировать
  • Почему запрос к mysql внутри цикла while выполняется очень долго?

    nokimaro
    @nokimaro
    Меня невозможно остановить, если я смогу начать.
    Время получения 40000+ записей из таблицы offers = 0.2s

    Вот такой код отрабатывается за 4s

    то есть в цикле делается 40тыс запросов к таблице clients каждый из который выполняется за 0.0001 sec

    вам точно надо прочитать про JOIN'ы чтобы одним запросом получить все нужные данные
    https://www.w3schools.com/sql/sql_join.asp
    Ответ написан
  • Можно ли роутер заразить вирусом?

    Adamos
    @Adamos
    Роутер имеет не только файловую систему, но и операционную. Обычно, если это роутер для домашнего сегмента - жестко кастрированный производителем и сто лет не обновлявшийся Линукс на древнем ядре, эксплойты для которого в даркнете есть у каждого пекинеса. Роутер может быть как заражен вирусом, который вмешивается в ваш трафик, так и быть включен в ботнет и атаковать сервера в интернете - а вы об этом даже не будете знать, если ваш провайдер не отловит эту активность и не заблокирует ваш канал.

    Лечатся такие проблемы (по крайней мере, временно) скачиванием с сайта производителя свежей прошивки для этого роутера и принудительной ее установкой. А еще лучше - подбором какой-нибудь OpenWRT и сменой хомячковой прошивки на открытую, более современную и лучше защищенную от заразы.
    Ответ написан
    4 комментария
  • Независимый Embedded разработчик - что учить и осваивать, какие компетенции (составляю чек-лист)?

    CityCat4
    @CityCat4
    Внимание! Изменился адрес почты!
    Это возможно, вот так работать одному, выполняя проекты в одиночку?

    Чтобы ответить на этот вопрос - лучше всего посмотреть глазами клиента :) Вот мне нужно автоматизировать нечто. Есть Вася-фрилансер, а есть контора "Рога и копыта", в которой и электроники, и программисты-эмбеддщики и производство с налаженной цепочкой заказов. Вася за месяц сделает макет и начнет его отлаживать, "Рога и копыта" за месяц сделают три-четыре варианта макетов и прошивок, еще двадцать успеют забраковать, найдут десяток багов и готовую плату передадут в производство. Вася же с таким обьемом работы будет чебурахтаться полгода.
    Что выгоднее?
    Если мне нужен разовый образец и времени вагон - можно и Васю.
    Если мне нужно что-то, что я собираюсь продавать - Васю нафиг.

    Время одиночек-универсалов прошло, Вам не выдерждать конкуренции
    Ответ написан
    3 комментария
  • Бывают ли вакансии на frontend без лайвкодинга и тестовых работ?

    @VegasChickiChicki
    Бывают. Мне один из бывших работодателей написал и позвал на проект. Даже собеседования не было.
    Ответ написан
    1 комментарий
  • Что должен знать Middle+ разработчик Go?

    opium
    @opium
    Просто люблю качественно работать
    так ты ж мидл мы у тебя должны спрашивать
    Ответ написан
    Комментировать
  • Не хожу на работу, но меня не увольняют и не платят зарплату, как быть?

    BasiC2k
    @BasiC2k
    .NET developer (open to job offers)
    У Вас отличный кейс! Отличный в плане того, что есть возможность получить всю заработную плату с дня заключения трудового договора, до его расторжения. Перечитайте трудовой договор, проконсултируйтесь с юристом. И если Вас что-то не устраивает - всегда можно уволиться )
    Ответ написан
    2 комментария
  • Тип с точностью до 4 знаков C++?

    wataru
    @wataru Куратор тега C++
    Разработчик на С++, экс-олимпиадник.
    Есть. Называется int. Вам надо хранить количество десятитысячных в числе. Иными словами, вы вместо x храните в int x*10000. При выводе делите на 10000 (и установите выводить 4 знака).

    Такие числа можно просто складывать и вычитать. При умножении надо будет результат поделить нацело на 10000 (или округлить к ближайшему, делящемуся на 10000 и потом отбросить 4 нуля). При делении - наоборот. Надо сначала домножить числитель на 10000, а потом поделить нацело на знаменатель (возможно стоит подумать об округлении к ближайшему целому).

    Upd: И вообще, раз уж разговор о C++, то можно реализовать свой класс. Там можно даже отдельно хранить целую часть и 4 знака после запятой. Если вам встроенной точности int/int64_t не хватает. Все математические операции можно переопределить и работать, как со встроенным типом. Вообще, по-умному, это называется fixed point numbers.
    Ответ написан
    Комментировать
  • Почему в windows такой медленный поиск в проводнике в отличии от macOS/Ubuntu?

    @Chitinets
    Может, индексирование выключено
    Ответ написан
    Комментировать
  • Сайты для поиска единомышленников?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Нигде. Незачем middle+ разрабу работать над чужими идеями, он скорее всего завален высокооплачиваемой работой, очень ценит личное время и полон собственных идей.
    Ответ написан
    24 комментария
  • Почему мы имеем право решать уравнения методом замены переменной?

    wataru
    @wataru Куратор тега Математика
    Разработчик на С++, экс-олимпиадник.
    Ну, это просто подстановка. Если, как в моем примере, предположить, что z=x^2, то из-за равенства получается и x^2=z. А дальше можно каждый x^2 переписать как z, ведь они равны.

    Или это можно еще понимать как абстрактное мышление. Вот есть у вас уравнение на x. Вы можете заметить какое-то повторяющееся выражение. Оно имеет какое-то значение. Вот это значение можно обозначить новой буквой. Вот вы же можете буквой x обозначить "сколько у вас яблок". Вы точно также можете обозначить буквой z "сколько у вас яблок в квадрате".

    Это можно делать всегда, но в результате этого могут получиться лишние корни. Как например тут, если есть решения с отрицательными z, то никакой x ему не соответствует. Надо аккуратно проверять все значения z и искать соответсвующие им x.

    Кто это придумал, я хз. Наверно примерно тогда же, когда догадались вообще буквы в уравнения вставлять, там же и придумали вставлять их по мере надобности.
    Ответ написан
    1 комментарий