DavaScript... ...буду проституткой / javascript :: программирование :: картинки

картинки javascript программирование 
DavaScript... ...буду проституткой,картинки,javascript,программирование
Подробнее
DavaScript... ...буду проституткой
картинки,javascript,программирование
Еще на тему
Развернуть
Как не вспомнить баян из времён шуток про одминов и креведок.

1) Тебе приходится работать сверхурочно. Как проститутке!
2) Обычно ты работаешь допоздна. Как проститутка!
3) Как правило, ночью твоя продуктивность повышается. Как у проститутки!
4) Тебе платят за то, чтобы клиент остался доволен. Как проститутке!
5) Клиент платит много, однако почти все забирает твой шеф. Как у проститутки!
6) Тебе платят фиксированную сумму, но работать нужно пока не закончишь. Как проститутке!
7) Ты никогда не станешь гордиться своей работой. Как проститутка!
8) Тебе платят за удовлетворение фантазий твоих клиентов. Как проститутке!
9) Тебе трудно завести и содержать семью. Как проститутке!
10) Когда у тебя спрашивают, чем ты занимаешься, ты не можешь объяснить. Как проститутка!
11) У тебя теряются связи с друзьями, и ты общаешься только с себе подобными. Как проститутка!
12) Клиент оплачивает тебе проживание в гостинице и рабочие часы. Как проститутке!
13) Шеф у тебя имеет роскошный автомобиль. Как у проститутки!
14) Когда ты удовлетворяешь клиента, тебя ценят. Как проститутку!
15) Но в конце ты себя чувствуешь так, как будто из ада вернулся. Как проститутка!
16) Тебя проверяют на профпригодность изощренными способами. Как проститутку!
17) Клиент всегда стремится заплатить поменьше, но в то же время ждет от тебя чудес. Как от проститутки!
18) Каждое утро, просыпаясь, ты говоришь себе: "Я не собираюсь этим заниматься всю жизнь! " Как проститутка!
19) Ничего не зная о своих проблемах, клиенты ждут, что ты дашь им нужный совет. Как от проститутки!
20) Если что-то не так, виноват всегда ты. Как проститутка!
21) Тебе приходится оказывать бесплатные услуги начальнику, друзьям и знакомым. Как проситутке!
22) И ты себя спрашиваешь сейчас: "Так кто я все-таки, программист или ..."
В 13 должно быть "как у сутенёра"
Там имеется ввиду шеф, как у проститутки. Тоже на роскошном авто.
Но авто-то у него как у сутенёра же.
Полагаю, что-то при переводе пошло не так.
По русски это должно быть скорее что-то:
Если ты и заработаешь на крутую машину - то только для своего босса. Как проститутка
Однако, там написано:
Шеф у тебя... Как у проститутки.
Ибо нехуй юзать неявное приведение типов.
И сам, блин пишу на таком. Да ну нахуй, пора менять специализацию.
А что счас пользуется спросом на рынке, кстати?
Вот эта срань и пользуется, все эти ноды, ангулары
Скажем так: ноды и ангулары вкупе с jQuery и ему подобными фреймворками делают из этой срани нечто более-менее удобное и приемлемое.
Они отлично используются во всяких стартапах, когда надо побыстрому сделать прототип и срубить бабла. А потом нанять прогеров и те уже будут ваять норм систему на нормальных языках. С возможностью расширения и прочими прелестями ООП.
Ты, кажется, что-то путаешь. NodeJS - асинхронная платформа, которая решает свои определённые проблемы. jQuery - фреймворк для работы с DOM страниц, тоже решает свой стек проблем. Angular - тоже клиентский фреймворк, на каком языке ты собрался его заменять?
На любом, шарп, джава. Или скажеш что ниодин не способен заменить? Я понимаю, что доказывать что либо фанату джиэса про другие языки бесполезно, у них даже есть агрумент, что на джиэсе можно и под ардуину писать. Вопрос только в надежности и дальнейшем использовании проекта.
Я вообще не фанат JS и даже не пишу на нём, но, блядь, я в упор не пойму, как ты собрался на шарпе управлять элементами страницы в браузере.
Очевидно - подождем сборки шарпа в webassembly :-)
JS - язык, на котором никто старается не писать, а все юзают транслятор из в JS. Всякие CoffeeScript, ClosureScript.
Шарп, кстати, вроде рулит аяксовыми запросами. MS как обычно старается всю цепочку разработки занять собой.
> язык, на котором никто старается не писать

Продвинутые чуваки - да, но по моему опыту в общем море процент таких языков-надстроек не так уж велик.
Ну раньше да, а сейчас вы опоздали с заявлением. Тренд современного веба - vanilla js ES 6 harmony. А транслируют его в тот же js, только 5 и более ранних версий под старые браузеры. Последняя версия js так чиста и хороша, что большинство отказывается даже от ts в его пользу.
Я мягко говоря не фанатею от жабоскрипта, но - как дела с асинхронностью у конкурентов (особенно с учётом того, что нам нужна целая куча хреноты, использующей её, а не синхронные средства)? За вычетом, пожалуй, golang-а - ЕМНИП, там таки с ней всё неплохо.

Ну и да, с клиентсайдом вроде же всё совсем грустно.
Вот и я о том же, JS плох по многим параметрам, но сегодня он - единственное адекватное средство запускать код на стороне клиента. И, как ни крути, с этим приходится жить. И со своими задачами он справляется, проблемы скорее с зоопарком браузеров.
На PHP - phpdaemon, на голом С - плагины для nginx как минимум, а вообще несколько фреймворков, на Java - приложения под томкат с разными библиотеками, на C# - несколько фреймворков с нативной поддержкой async/await в языке, на Erlang - нативная поддержка в языке. В общем, у конкурентов с асинхронностью всё более чем хорошо.
Шта? Вроде ж речь идет про клиента (я не беру в расчет имбецилов, которые на JS клепают бекэнд и вообще серверную часть). Увы и ах, акромя JS на клиенте больше ничего вменяемого нет. Мы конечно можем достать из могилы Flash и Silverlight, посмотреть на них и вернуть обратно, ибо уже померли они считай что... Вот и приходится жить с этим.
Читай внимательнее - то я про киллерфичу ноды спрашивал, вот.
Извиняюсь, пьян был. Ну про другие фреймворки не скажу, но шарп 5.0 научили из коробки в асинхронное программирование, в том числе есть оно и в ASP+MVC.
Ну - tomcat из коробки не предоставляет подобного ноде, емнип (из коробки в жабе только многопоточность, не?)
Да и киллерфича в том, что любой говнокод васи пупкина будет таки асинхронен (если он не писал специально синхронно).
Ну а шарповые - спасибо, надо глянуть, как оно там организовано.
Ну всё-таки нода предоставляет очень много того, чего нет в джаваскрипте. Это то же самое, что юзать не голый шарп, а уже с каким-нибудь фреймворком. Хочешь не хочешь, а напишешь так, как он требует. К тому же даже в ноде есть синхронные функции :) Так что если вася совсем пупкин, то он не будет заморачиваться пониманием асинхронности, и даже в ноде напишет блокирующийся говнокод :)
Ну так-то да, просто раз уж завели речь за ноду - чего бы не поинтересоваться состоянием дел конкурентов.

И да - в ноде таки есть синхронные функции, но рекомендуются по умолчанию асинхронные. Читай - вагон и телега говнокода скорее всего таки асинхронны. Чего не скажешь о, как минимум, части конкурентов.
мне кажется или кто-то хуйню написал?
TypeScript
Правильно, JS - унтерязык и пишут на нём унтерлюди.

Шучу, конечно, если голова есть, можно и на JS нормально писать, но вся эта свобода и расхлябанность позволяет плодить ещё больше нечитаемых спагетти, чем даже на PHP.
Кстати, любители php говорят, что в js всё плохо, а в php конкатенация отдельным значком обозначается!!!
Ну в том смысле, что нельзя написать так, как на ОП-картинке.
Так это же наоборот плюс. Несмотря на неявное приведение типов, ты всегда знаешь, какая операция произойдет - конкатенация или сложение, независимо от типа данных в переменной. И таких граблей, как на картинке, не будет. А насчёт того, что это вынесено в отдельный оператор, а не сделано функцией - ну так PHP прикладной язык, в работе с вебом самая частая задача - оперировать строками.
По хорошему насрать в каком языке как приводятся типы, надо стараться всегда приводить их явно.
Более того, в вэбе это - необходимость по вопросам безопасности.
А что там с безопасностью, если не секрет?
Знаю про хрень вида "0" =="0fndbfhfbfhfhd" в более старом пхп.
С безопасностью я имел в виду в первую очередь проблему с вводом от юзера. Экранирование строк - это понятно, но очень часто встречаюсь с тем, что люди, вроде даже опытные, то ли из-за лени, то ли по незнанию, не приводят данные, которые должны быть int, к нему же. Допустим, id статьи или элемента, просто берётся из URL или POST и посылается в БД, при том, что вместо него может быть что угодно. Хорошо, если фреймворк сам решает этот вопрос и экранирует вообще всё, что в БД уходит, а если нет, то вот вам готовая дыра для инъекции.

Ну и да, фишка с приведением строки к int 0 по-моему всё ещё работает, потому что это соответствует логике приведения типов в PHP, хоть и неочевидно. поэтому надо юзать === в таких местах.
Порою это несколько нудновато. Хотелось бы настраиваемости. Скажем, int в double разрешать автоматически кастить, если для задачи обратное не нужно.. В C++ можно тонко настроить преобразования пользовательских типов - удобно.
Хооя, Слабая типизация и самоконтроль тоже могут дать плоды...
Поскольку с ванильным js в браузере ничего не сделать, мы выкручиваемся трансляторами - typescript, coffee script, etc
Нужно уметь им пользоваться. Ошибки с типами просходят в основном с теми у кого руки кривые. Я отлично себя чувствую с динамическими типами.
Угу. "Законом не запрещено" и т.д.
А вот на счёт "на 95% безопасней" я сомневаюсь.
Ну, как минимум -в теории возможен сторонний код с достаточно неочевидными входными/выходными данными (да, документация - гавно).
И да, хоть я уже давно не стреляю себе в ногу таким образом - зачем вообще давать такую возможность? :-)
Ошибиться с типом данных - это не выстрел в ногу, это грабли. Выстрел в ногу - это ошибиться с указателем в C. Или упереться в Stack Overflow. И всё это на микроконтроллере, без возможности отдебажить.
Я таки, наверное, дофига ньюфажен, но в чём качественная разница?
"Выстрел в ногу - это ошибиться с указателем в C."
Так-то в обоих случаях софтина в лучшем случае - падает, в худшем же - творит НЁХ, не? Не в отладчике же суть, думаю.
И да, я таки прочёл фразу трупа страуса, но она вроде не говорит о том, что в остальных нельзя.
Да на самом деле качественной разницы никакой, есть только количественная.
Пфф, переполнение стека, это легкое почесывание ноги после укуса комара, ну погавкает собака да и хрен с ней, а вот динамическое выделение памяти - это самый настоящий выстрел в ногу причем с попаданием в бедренную артерию.
Как я сказал выше, если голова на месте, можно на чём угодно нормально написать. Только вот голова на месте далеко не у всех, и постоянно приходится сталкиваться с чужим кодом.
Согласен, просто в ЖС порог входа очень низкий, поэтому тааааак много гавнокода. Современный набор разнообразных тулзов помогает писать все чисто, красиво и правильно. Другой вопрос что до этого доходят не все, кто-то так и сидит на багфиксе жикверных проектах и ему похуй чего там и с чем, а кто-то пользуется всеми удобствами современного фронт-енда и все в радугах и единорогах вокруг.
Ну это обратная сторона доступности и востребованности кодинга. Благодаря этому у нормального программиста всегда будет хлеб с маслом, потому что в серьёзных конторах понимают, как много вокруг говнокодеров, и насколько дороже обойдётся за ними потом всё подчищать.

P.S. Серьёзная контора != большая контора, бывают большие, но населены идиотами, а бывают маленькие, но адекватные. Как бы то ни было, с тех пор, как широко стал доступен интернет, я ни разу не видел хорошего кодера, который бы долго сидел без работы.
Полностью согласен, я помню как тяжело мне искалась junior позиция, куча тестовых и прочей херни. Когда собеседовался на уровень middle - совсем другое общение. Для offer достаточно просто прийти и поговорить с teamlead. И сейчас ко мне стабильно 1 рекрутер в день добавляется в linkedin и каждый третий присылает вакансию.
это как сказать "почему все пишут с багами? потому что у всех руки кривые", ага
deepbunnyhole или типа того на pornhub, но она убрала инфу о том что она node JS разраб, или только хотела им стать.
И проституткой стала и в код может.
"буду проституткой"

Конечно будешь, куда ж ты денешься...
http://thedailywtf.com/articles/bidding-on-security - тоже забавно.

Но если серьёзно, то недоучки должны страдать. Либо ты помнишь, как работают операторы, либо будешь наёбываться. Просто в случае с js надо помнить чуть больше про один оператор, а не чуть больше операторов
Но согласись, если ты никогда ни на чём не программировал, понять вот эту абракадабру будет очень сложно.
Мне как программисту на С тоже сложно понять ту абракадабру, со мной что-то не так?
Привык к более простым правилам неявного приведения типов небось :-)
Да, в C правило неявного приведения типов одно и оно очень простое: его нет)

Ну то бишь есть, но его очень мало. Я не шарю, но по-моему там только численные переменные могут приводиться, типа int в float или float в int.
Ну так и я к тому - всё достаточно легко описывается :-)
..и поэтому C - самый простой и удобный язык на свете!)
Пока ты не начнёшь писать на нём что-то крупное с ограниченным сутенером дедлайном :-)
>что-то крупное
На этом можно уже и остановиться было.
Ну вдруг у меня совершенно случайно оказались свободны следующие 40 лет :-)
Ядро линукса достаточно крупное?
Ну :
1. оно писалось, ЕМНИП, не мгновенно :-)
2. в этой области вообще вроде не так много выбора :-)
ой, блять, нахуй, всё!
...то есть я хотел спросить: ядро линукса - это чтоле эталон разработки програмного обеспечения?.. что удерживает его от пиздеца, так это не продуманность апи, а высокий порог вхождения и жестокое ревью изменений. Имхо, кнешно же.
Об эталонах я речи не вёл, лишь спросил о том, в каких масштабах товарищ оценивает его, так что охлади свой пукан.
Ядро линукса не крупное само по себе. Оно состоит из 100500 модулей, сущностей там кот наплакал, пилят его бородатые дядьки из 80-ых, которые знают много соглашений о сокращениях. И по всюду m4, транслятор. И да, C++ там местами тоже есть. И когда у тебя тысячи контрибьютеров, написать систему на миллионы строк за десяти лет становится внезапно не таким сложным.
Тут уже ответили, что оно состоит из относительно небольших модулей. И кто скажет, что написать его было легко и просто, пусть первый кинет в меня камень. К тому же не забывай, писалось оно огромным количеством бородатых дядек, которые собаку на си съели, и код ревьюируют такие же бородатые дядьки с лупой. Другое дело, что есть задачи, для которых он необходим по вопросам производительности. Потому он и живёт по сей день, и здравствует, и здравствовать будет ещё долго, несмотря на гораздо более современные альтернативы.
Знаем мы такие задачи, в этой сфере трудимся=)
Ну было бы удивительно, если бы ты на СИ сайты писал) На моём проекте тоже сейчас нужен сишник, писать прошивку для устройства на микроконтроллере (и да, на время тестов это действительно ардуина).
Как будто ардуинка - что-то плохое) В своей сфере (на мой взгляд это рукодельщина) она очень даже хороша.
тоесть с памятью ты не работал...?
Зато ты всегда знаешь, когда она освободится. Если ты, рукозадый, не забыл её освободить.

з.ы. ассемблер не предлагать - на самом деле я даже для сей недостаточно упорот.
Только int -> float/bool, float -> bool. float->int кинет как минимум варнинг, из-за потери данных.
В C есть bool? Я думал, он там реализуется макросами и через int. Или мои знания сильно устарели?
bool exists in the current C - C99, but not in C89/90.
Они это еще бывает с undefined behaviour делают по стандарту :) Грабли куда круче.
Но ты хотя бы понимаешь, в чём тут соль, и чем она вызвана.
Типа не расстраивайся? =)
Я бы сказал - радуйся, что ты этим не занимаешься)
Там нечего понимать, нужно только запомнить приоритеты, их совсем не так много. Вот для оператора сложения для единственного, по-моему, 4 варианта приведения типов, и в приоритете приведение к строке, а для всех остальных всё намного проще - оба операнда приведут к числу, если возможно.

Ну а преобразование в логический тип, извините, он везде такой, где слабая типизация. В js просто путаница с undefined и undeclared (второго типа не существует, но плюются все из-за того, что нужно делать проверку на неупомянутость переменной, и что её неупомянутость легко спутать с undefined).
в js проблема с undefined и null, из которых по логике вещей и по примеру других языков должен остаться только null.
Если не криворук-рукожоп то undefined - необъявленная a null - объявленная в нулл.
дело не в том, криворук ли я, рукожоп ли я или 23-ех летний сеньор. дело в том, что undefined не нужен.

и еще дело в том, все это говно должно хотя бы приводятся к false.
if (!null) { null == false > false if (!undefined) { undefined == false > false
Мне тут старый эпиквин скинули. Осторожно, юмор профессиональный
https://www.destroyallsoftware.com/talks/wat
но убило до слёз
ОМГ я давно так от души не ржал) Финалочка шикарная.
Ещё понравилось, как он начинает в первые раз говорить "Let's talk about JavaScript" и зал уже смеётся.
И да, со стороны это выглядит один в один как

Объясните плиз в кратце
если ты шаришь - то это смешно
это не просто смешно. я вообще почти забыл, что так сильно смеяться можно
Да, вот без шуток, я пытался вспомнить, когда я так искренне и открыто ржал, и чёт даже не смог. В детстве разве что. Какая-то особая программистская магия.
кста в webkit-jsc воспроизводится все так же, в браузерах - не все
Некоторые варианты приведения типов в разных языках дают настолько странный и неожиданный результат, что единственное, что приходит в голову, когда видишь подобное - лишь немой вопрос: э... ЧЁ?!
а меня в нем работа с запросами бесит ...
С какими запросами?
заказщиков
я про взаимодействия с северной частью(долго мозг ломал когда изучал)
Лол, если программист использует настолько сомнительные конструкции, то он сам себе злой буратина, нечего всё вешать на язык.
Экспер, блять, нашеся :)
да ладно программист, механиком попробовали бы...)
Учусь по направлению прикладная механика. Ожидал ключи гаечные, масленки..., а вместо этого какие-то, блять, вариационные исчисления, САУ, аналитическая динамика. ВУЗ меняет людей.
учился на автотехника, думал гаечные ключи, гараж, и водка.
а в итоге чертежи на а2, а3, матереаловедение, безопасность на рабочем месте
история одной трапоняши
буду кодить на питоне!
Тоже не без магии же. Хоть и более логичной.
reg_exp вам в чашку
вы так говорите будто регекспы это что-то плохое
писать-то я их люблю, а вот читать чужие..
не напоминай
И читаемой.
Отлично!
@strict и будет вам счастье.
Вы хотите поговорить о джаваскрипте?
https://www.destroyallsoftware.com/talks/wat
О да, это по нашему: Раскидать вокруг граблей, а потом удивляться - "Да что за ёбанные грабли?! Куда не наступи, везде бьют по роже!".
С другой стороны, могу сказать по опыту, что человек, который подобным образом стреляет себе в ногу в JS, найдёт способ выстрелить себе в ногу и в строго типизированных языках, вроде Java/C#/C++. Благо, что способов любой язык даёт предостаточно.
Дело не в языке, а в отсутствии культуры программирования.
+88 рейтинга у баяна который наверное старее меня.... Люди вы совсем поехавшие?
Только зарегистрированные и активированные пользователи могут добавлять комментарии.
Похожие темы

Похожие посты
e* \ ; -s Tomasz is building cloudash.dev 1d ^ npm install esllnt-conflg-airbnb '••'.K r Q 31 tn 683 5 023 ¿j Ш j BOOTCflMPS: ANYONE WANN APPEND£5 GRAND OnÆ JAVASCRlÉHcbURSE!?. ____1Ш»и ТТгТ lJ ■ R т-^И • ■ nTiiÏÏK'H'lilH i I 11 тш г П[»]| I Г* I ■ . V Я 1 I I в /»Il 1 хйшТ Щ ж Пш Hií»lMhHHil! |Д7 ijTTT [¡iff» 4 in l <- false Programmer Memes @iammemeloper Without a doubt, the best programming language 11:09 PM -Sep28, 2023 121.6K ¡ews » let l = [1,2,3,4] <- undefined » 0 in l <- true » "0" in l <- true
подробнее»

javascript языки программирования программирование geek,Прикольные гаджеты. Научный, инженерный и айтишный юмор javascript programming languages programming geek

» 4 in l <- false Programmer Memes @iammemeloper Without a doubt, the best programming language 11:09 PM -Sep28, 2023 121.6K ¡ews » let l = [1,2,3,4] <- undefined » 0 in l <- true » "0" in l <- true
Осталось добавить одну небольшую фичу Проклятый джаваскрипт!
подробнее»

javascript программирование языки программирования

Осталось добавить одну небольшую фичу Проклятый джаваскрипт!