На самом деле, необходимо знать технический язык, все термины, ибо вся в тех. документация будут использоваться термины и формулы, которые интернациональны...
Это тебе не многочитаемая и интерпретируемая библия сынок.
Окей, уточню -- нужно знать технический английский. 99,99% статей/документаций на инглише, форумы и стековерфлоу тоже на всеобщем, софт в первую очередь (после местного) локализируют как eng. Подавляющее большинство нанимателей в Украине также требуют знание английского, причем на должном уровне.
Знать английский не обязательно. Достаточно уметь читать по keyword-ам. Я пока не взялся за голову и не стал учить английский имел словарный запас в 3000+ слов и примерно нулевые знания по грамматике. Сам двух слов связать без ошибок не мог. Но эти самые статьи на английском, SO, и пр. читал без особых проблем. Я даже скажу больше, очень многие статьи лучше читаются когда ты игноришь текст и сразу смотришь примеры кода :)
Теперь у меня B1-B2 а не A0 уровень. Это никак не помогает мне с поиском информации\ответов\whatever. Лучше не стало. Но зато смог найти работу в Германии.
Резюмируя: вменяемый английский язык программисту нужен только чтобы свалить. В остальном вполне хватит навыка "читаю по keyword-ам" )
Практически всё что касается серьёзных алгоритмов доступно и на русском, и на немецком, и на японском. В том числе и банда 4-ёх. И это я ещё молчу о том, что действительно серьёзная алгоритмика задействуется дай бог в 0.01% проектов. В том числе и в именитых конторах.
Не перепрыгивай "это доступно на русском". Мы говорим про первоисточник на английском. Знание ключевых слов в таком случае не поможет. Сколько лет проходит после выхода книги и появления перевода? Раньше книги вообще частями вырезали с примерами и прочим, а про опечатки я вообще молчу. Да, топовых авторов сейчас уже быстро переводят за 3-4 месяца, но сколько ещё книг без перевода?
Так что хочешь развиваться - читай в оригинале, ну или спустя 4 месяца + время на оцифровку.
Слушай, ну мне то не гони. Я далеко не первый день в отрасли. Попробую кратко. Да доступ к первоисточникам это гуд. Да многие переводы кривые. Да не всё переводят. Да переводы часто уже не актуальные. И прочие да. Но по факту это всё малозначительные мелочи. Какое-то существенное значение это имеет для 0.1% от общего числа разработчиков.
Скажем если ты на передовой разработки новых видео-кодеков, то иметь доступ к передовым материалам в этой области, ездить по профильным конференциям, прокачивать свой "нетворкинг" и прочее это однозначно зергуд. Но таких людей оооочень мало. Они крутые ребята. Не отрицаю.
А для большинства же, информации на их родном языке в десять тысяч раз больше, чем они за свою жизнь освоят. Я почти на 100% уверен что и ты и я из их числа. Не ну будет на джое сидеть чувак, который пишет убийцу в области бинарных деревьев поиска или новый видео-кодек, который урвёт солидный кусок рынка.
Из софтверщиков тут сидят самые обыкновенные ребята, которые гоняют по сети туда сюда протобафы или джейсоны. Изредка может кто по графам что-то делает. Да даже если ты занимаешься картостроительным софтом (это правда крутая штука) - материалов на русском тебе на 10 лет обучения впрок припасено. И в 2гис или яндекс тебя возьмут с руками и ногами, если ты правда в этой области хотя бы миддл. И знаний английского выше чем чтения кийвордов для этого не нужно.
Короче. Кратко: знать язык не помешает. Как минимум з\п в странах СНГ можно умножить на 2-3-4... И в работе пригодится. Но говорить о том, что без языка никуда - ёбаный бред. Технические скилы на уровне даже архитекта прекрасно получают и без знания языка. Язык тут скорее катализатор.
В общем я не спорю с тем что язык знать полезно и вообще нужно. Но это точно не mandatory.
Вот именно что сидеть в странах СНГ и задрачивать одно и то же очень круто, не отрицаю. Но человеку с желанием свалить и к 50 не уйти на отдых нужен английский. Меня с 2016 года воротит от переводов худ. литературы - перешёл на оригинал и не жалею. После этого без проблем и техническая литература зашла.
С этим соглашусь. Английский язык открывает те двери, что ранее были недоступны. Жаль только что времени на его изучение уходит просто непомерно, но результат того стоит. Начинаешь чувствовать себя другим человеком :)
Как интеграл/лимит тебе поможет в составлении sql-запроса? Или в верстке страницы? В разбивки задачи на потоки? Не нужно путать программирование в целом, и предметную область. Да, скажем если разрабатываешь новый протокол шифрования, то без матанализа получишь хрень. Еще могу вспомнить что для 3d-движков нужно шарить как в механике, так и в геометрии.
Для программирования в целом более критично знать дискретку (теже графы) и алгоритмы приблизительного вычисления.
Боюсь спросить. А какое отношение программисты имеют к датацентрам и паяльникам? Ну, кроме того что они софт для первого написали, а второе почувствуют в себе, если будут лажать.
Окей, по твоему прогеру работающему с данными не нужно знание sql? Серьезно? Инфу предлагаешь распихивать по файлам, и для их выборки/групировки каждый раз ваять очередной "мегапроизводительный" риадер? Не смеши мои тапки.
Чё за демагогия, сударь? Я тебе указал на проблему суждения. Ты привёл в пример sql-запросы и вёрстку, приправив эти вещи термином "программист", хотя тут никакого отношения к программированию нет. А теперь ты вывернулся и пошёл от обратного: привёл дата-прогера, которому надо знать SQL, что так-то верно. Не обсирайся.
>>хотя тут никакого отношения к программированию нет.
SQL (ˈɛsˈkjuˈɛl; англ. structured query language — «язык структурированных запросов») — декларативный ЯЗЬІК ПРОГРАММИРОВАНИЯ, применяемый для создания, модификации и управления данными в реляционной базе данных, управляемой соответствующей системой управления базами данных.
О да, я прям запизделся и теперь выкручиваюсь...
p.s. html и css реально не касается программирования, хотя некоторые фичи и смахивают на код. По хорошему нужно было указывать front-end с его JS.
Честно говоря имеет смысл спросить автора этой строки на вики где он углядел в SQL программирование. Нет, я конечно, догадываюсь, что там пойдёт речь о хранимых процедурах и триггерах. Но ёлы палы, вот так натягивать сову на глобус :)
Переменые, типы данных, функции, IDE, дебаг, профайлер.... В зависимости от СУБД, плюс и функции/хранимки, позволяющих творить вещи, что и на обычных платформах (например рассылка по email). Видел на хабре пример с трасировкой лучей https://habr.com/ru/post/435390/
Нужно еще помнить, что ЯП может существовать отдельно от текущей платформы. Т.е. условно говоря, можно наваять свой билдер, который будет переводить в exe писанину на sql.
Да-да, я помню про всё это. Но всё таки в общем и целом SQL это именно Query Language. Язык запросов. А CSS это язык разметки. А французский это язык общения. И на CSS+HTML ребята делают игры (checkbox + css :checked), и на французком можно написать псевдо-код. Но суть их от этого не меняется.
SQL ни разу не язык программирования, что бы там не писали про него в интернетике. И не надо путать SQL с его теоретической основой - реляционной алгеброй, которой ещё и не каждый математик владеет.
Хоть как смотри - это язык запросов, а не программирования. Языками программирования являются разные расширения SQL типа PL/SQL или T-SQL, но не сам SQL. Ровно как и HTML - язык разметки, а разные навороты вокруг него типа JS это не сам HTML. Так что поешь сам.
Чтобы дискуссия не превращалась в тупиковый срач, следует сперва согласовать терминологию. В данном случае необходимо дать исчерпывающее определение термина "язык программирования". А затем проверить, можно ли такое определение применить конкретно к SQL.
Однако, я считаю, что это спор пустой. Из разряда "Вам шашечки или ехать надо?"
Существует такое вполне формально понятие "полнота оп Тьюрингу". Суть примерно в следующем:
Если на вычислителе (языке программирования) можно построить машину Тьюринга, то этот вычислитель является Тьюринг-эквивалентным. Т.е. все, что можно решить на одном Тьюринг-эквивалентном языке, можно решить на любом другом Тьюринг-эквиваленом языке.
В стандарте SQL-99 регламентирована конструкция WITH. А еще во всех современных SQL СУБД в дополнении к WITH есть конструкция REQURSIVE. Это не императивное дополнение вроде PL/SQL. Если я правильно понимаю, то при помощи рекурсивности можно достичь полноты по Тьюрингу для SQL. Впрочем имеются оговорки. Например глубина вложенности рекурсии может быть ограничена (если не реализована оптимизация "хвостовой рекурсии"). Но это уже вопросы технического характера.
Формально машина Тьюринга замкнута - она не имеет средств общения с внешним миром после начала работы программы - да ей и не надо, потому что она просто модель. Однако, давно прошло то время, когда можно было реально программировать в таком стиле: загрузил пачку перфокарт, оно посчитало и выдало результат, машинное время кончилось, останов.
При чем тут замкнута или незамкнута? Язык Си тоже "замкнут" без своей стандартной библиотеки. Однако даже без доступа во внешний мир программа, написанная на Си, способна к примеру решать системы линейных уравнений произвольной размерности. В то время как на SQL без рекурсивности (WITH RECURSIVE) такой алгоритм в принципе невозможно реализовать. Считать ли это критерием принадлежности некой формализации к множеству языков программирования - вопрос терминологический. Однако критерий полноты по Тьюрингу это действительно серьезный рубеж (качественный переход), в отличии от "комфортности" программирования, коей отличаются например Ruby и ASM, являясь при этом Тьюринг-эквивалентными.
При том, что нынче не программируют полных эквивалентах машины Тьюринга, а называть язык "языком программирования" при полной практической невозможности программировать на нём быссмысленно. Именно поэтому стандартная библиотека C его неотъемлимая часть в соответствии с ISO/IEC 9899:1990 (C90). Мне приходилось в девяностых писать, оглядываясь на стандарты C, отлаживая код под DOS/286 на MS QuickC (общение с миром через файловый ввод/вывод), а потом этот код собирался и работал под IRIX SGI и под FreeBSD.
> способна к примеру решать системы линейных уравнений произвольной размерности
На самом деле нет - произвольной размерности не способна, так как ты не сможешь предоставить ей исходные данные хоть сколько нибудь практически значительного масштаба.
> Однако критерий полноты по Тьюрингу это действительно серьезный рубеж
Можно. Я в девяностых на Bourne shell (даже не на bash) писал веб-сервер, который запускался через inetd на роутере локалки, предоставлял администратору "компьютерного клуба" интерфейс по включению/выключению доступа в сеть для хостов в сети со сбором IP-статистики, складыванием в "базу" на файловой системе (с поддержкой атомарных транзакций за счёт атомарности mkdir и rename) и ежедневными отчетами по e-mail начальству. Работало на дохлом компе с 4 мегабайтами (не гигабайтами) памяти, в которые влазили операционная система с шейпером/файрволом/планировщиком cron и все скрипты, плюс запускаемый из cron по ночам sendmail, работавший только на отправку через smarthost.
Ты говоришь так, как будто Википедию пишут боги, которые никогда не ошибаются. Или даже только специалисты высшей категории в своей области по вечерам за чашечкой кофе туда набивают странички.
Любой нормальный специалист сходу найдёт множество проблем в обычной википедиевской статье по своей теме - открой хотя бы историю правок к статьям нетривиального размера.
И Википедия, если ты не в курсе, не может быть авторитетным источником по собственным правилам Википедии, сюрприз! Туда по правилам не принимаются оригинальные исследования специалистов по предметной области, а обязательно должны быть данные из *другого* источника, а вот он уже должен быть авторитетным.
Технически могу накидать ссылок как на варианты с определение sql как ЯП (даже от того же оракла, но там вообще прикольно все расписано), так и обратное. Учитывая что в ход идут аргументы "при полной практической невозможности программировать", все же признаю что зашли в тупик согласования определения ЯП как такового, ибо я изначально расматривал:
- обобщеное определение ЯП, и соответственно более общие критерие, при которых sql вполне можно считать "прогерским"
- еще ранее речь шла про незаменимость матана, и контр-аргументация мол "sql не являетя частью программирования" что уже вообще ни в какие ворота.
>>Но ты никогда не сможешь стать разработчиком игр
Еще один забавный стереотип, что игры создают программисты... 3d дизайнеры, озвучка, сюжет, геймдизайнеры, тестеры -- все они "программисты" со знанием вышмата. И да, игры -- понятие чертовски растяжимое. Я например писал в универе мелкие поделки, угадай сколько раз мне понадобилось знание вышмата?
>>Или давай иначе, что ты вообще можешь?
Много чего, как в принципе и не могу. Учитывая что я ваяю на платформе .net, основное направление -- сайты/web-вервисы, по большей части бекенд. Скажем могу создать того же телеграм-бота, который будет отвечать на запросы нужной тематики. Но это конкретно я, шарп вполне позволяет кодить и для десктоп приложений, но для клиент-сервисных систем на сегодняшний день предпочтительнее сайт/мобилка, да и WPF не сильно жалуют.
Вообще довольно забавно наблюдать как люди берут одну вещь и возводят в абсолют. ИТ не живет одними играми и ИИ. Более того, немалые деньги крутятся на "быстрых и гибких" решениях, когда тебе подгоняют туже CMS (привет всяким друпалам и юкозам), условный "программист" (хотя наверное правильнее говорить администратор) подгоняет все это дело под клиента и вуаля -- деньги начинают крутится.
Вообще тема заеженая уже раз 100500. Как вариант https://habr.com/ru/company/yandex/blog/239339/
ну и довольно точное из коментов:
>> Я бы уточнил, какую математику в первую очередь должен знать программист. Выбираем из списка)
>> Я бы уточнил ещё какой нужен программист.
Моё почтение геймдевам и учёным от информатики, особенное почтение знатокам ФП и разрабам искуст. интеллекта. Пожалуй все эти области завязаны на продвинутую математику (правда в случае геймдева хорошо если каждый 10-й знает вышмат).
Но если посмотреть сколько таких от общего числа разработчиков, то станет понятно, что спрос в этой области очень небольшой. Дай бог 2-3%.
Если рассматривать оставшихся, то нельзя их всех под одну гребёнку расписать - мол веб-макаки, макаки для микроконтроллеров, c++ макаки, C# макаки, .Net макаки, etc. Просто сложность профессии в оставшихся 97% заключается скорее в клубке высокоуровневых абстракций. Эти навыки тоже получаются многими годами. И суть такова, что ну не завязаны они на диф. уравнения функции многих переменных. Вот прямо совсем. В первую очередь я имею ввиду архитектурные навыки (которые больше всего как раз и ценятся, architect-ы всегда имеют одни из наивысших зарплат).
Технически лимиты/интегралы юзаются в доказательствах/обьяснениях/расчета тех или иных физических явлениях. После уже оперируют исключительно выведеными формулами. Порой все еще сильнее упрощается до "для получения результата нажми кнопку A". В итоге весь вышмат тупо вылетает из головы. Так что в общем случае, все это для "неразрывности" изучения материала, т.е. чтобы обьяснить явление В, нужно сначала обьяснить базовые вещи А.
Тут больше интересно, зачем все это преподовать во всех факультетах и старших классах, порой с углубленым курсом. Я слабо представляю как эти знания применимы у юристов/дизайнеров/медиков.
Почти любая программа в теории лучше в конкретной цели с которой она создана, чем человеческий мозг. Deepmind пока ничем не впечатляет. Да круто, да шаг к будущему, но пока результаты так себе...
Даже без знания(окей, с абсолютным минимумом) программирования можно написать кривой бот для тех же игр, в которые учится играть Deepmind и этот бот будет во многих случаях не хуже, чем deepmind после своего обучения в оных... некоторые игры более сложные для написания бота, там уже deepmind бесспорно лучше, но это просто от отсталости наших технологий и ленивости... человеку никогда не стать лучше машины, которая сделана под определенные задачи.
Я не вижу, что бы ты писал о том, как жигули или велосипед аист давно превзошли человеческие ноги, ведь это более реалистичное, хоть и ироничное описание.
>>лучше чем самообучения ничего не может быть
Спорно. Адекватные универы или курсы позволяют учиться быстро и по нужным темам. Плюс наличие наставника позволяет уточнить непонятные вещи. Для некоторых вещей еще нужны спец материалы (стенды, апаратуры, платные статьи).
Другой вопрос, что без дальнейшего самообучения резко выпадаешь из технологий, ну и плюс универ/курсы на практике могут оказаться просто учериждениями выдающими корочку (но не знания) .
все бы вам говном пхп поливать, как будто на нем свет клином сошелся. Самсунг на ниокр тратит примерно столько же, сколько вся РФ. А весь мир и вовсе огромные деньги. И они все идут не на верстку хтмл.
что мы наблюдаем, переменная isusHuisos уничтожена, а меременая andy которая ссылалась на isusHuisos, даже после уничтожения содержит значение переменной isusHuisos.
Таким образом в системе можно клонировать сколько угодно сушностей...
*вдаваться в подбробности от чего интерпритатор сходит с ума - лень, проверял на последней версси пыха*
И вообще дай мне любую банковскую систему на пыхе и я ее обрушу за день, так же приветствуется старые архитектуры процессоров, где возможно воспользоваться логическими в самих инструкциях процессора.
Деньги? можешь считать что я из тех долбаебов которые забесплатно готовы положить голову за человеческий прогресс.
Я, конечно, не программист, но в чем проблема? ПХП сам потом мусор соберет. К тому же как себя поведет Питон? Если не ошибаюсь, то Анди = 1. Почему не переживаете по этому поводу?
Воу, палегче! Начнем с доки... http://php.net/manual/ru/function.unset.php
>>Поведение unset() внутри пользовательской функции может отличаться, в зависимости от того, какой тип имеет переменная, которую необходимо удалить.
>>Если переменная, которая передается ПО ССЫЛКЕ, удаляется внутри функции, то будет удалена только локальная переменная.
Насчет положить банк -- положи для начала facebook.
это ты понял после того как я тебе показал, а не кажется ли тебе что это логическая деверсия, и таким способом я могу наплодить несуществующие значения в системе, вообще ты о чем?
что касаеться фб, у меня сними дилекатные отношения, скажу более, я один из тех кто первым получает доступ к бета функциям в бизнесс и акаунтам для разработчиков.
все я тебя понял чувак, ты нихуя не понимаешь, но хочешь просто поучаствовать в дискуссии.
ок, смори, я не собирался перегружать сервер ссылками, да и в этом нету нужды, так как выделяемую память сервера можно ограничить и скорее всего она ограниченна в php.ini, я бы просто перегрузил сервер циклами, для этого нет нужно много ссылкол.
Данная баг подойдет для того чтобы плодить в системе незаинтересованные значения, к примеру: я сделал заказ в магазине, и при помощи ссылкол присвоил ему значение как два заказа...
Теперь иди ищи утечку, почему система считает как один а получается как два...
Теперь представь уровень катастрофы если это банковская система. А вообще есть мат. ошибки на уровне архитектуры процессора, дам без разницы какой язык программирования, но тут я это точно не буду выкладывать, ибо оболтусы накликают себе беды или другим.
я все равно не понимаю, почему ты называешь это багом. Создал переменную, потом 1, потом еще одну переменную, потом сослался на 1, потом удалил первую переменную. И что должно происходить по твоему? На 1 ссылается объект как ты и заказывал. Как только помрет вторая переменная, так сдохнет и 1.
О том, что ты заявляешь о "неправильной" работе функции, хотя в доке по ней расписано от и до. Подводные камни есть в любое языке, и чем дальше в лес, тем злее дятлы. При этом еще заявляешь об дырах без примера.
И насчет "легко сломаю" -- не хочешь FB, давай Tumblr. Или Yahoo.
бля
Именно это и заставило меня бросить учёбу на втором курсе. Когда мы дожили до теории поля, то я не смог выдержать это насилие над моими юными мозгами.
Помню у меня в универе была преподша - богиня усыпления. Она говорила столь монотонно, что глаза закрывались спустя 2 минуты. Даже если ты реально хотел вникнуть, о чем же она там говорит, нужно было пускать кофеин по вене...
Категорически поддерживаю. Людей науки очень мало в популяции человеков. Остальным достаточно немного языков преподавать, истории, географии вот это все. А наукой будут умные дяди и тети заниматься.
Приходит константа в поле функций и говорит:
-спасайтесь, грядед дифференцирование!
Функции в панике, все кричат "бежим! Спасаемся". Выходит еЛх и говорит: "мне пох, я елх". Все разбегаются, экспоненте остается
Приходит оператор дифференцирования, смотрит на экспоненту и говорит: -привет, я б/бу
Popcorn Function
Image credit: Smithers888 (Wikimedia Commons)
#mathelle
IH
if x = 0
if x Ls rational, x = £ in lowest terms and a > 0
ч 1
if x Ls irrational.
Отличный комментарий!