- 1
Новый год по владимирскому времени! Всех с.
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−2
Новый год по владимирскому времени! Всех с.
Больше говнокодов в новом году.
Пользуясь случаем, спешу поздравить говнокодовцев. Пусть у вас будет больше часов раздумий над интересными задачами и меньше часов отладки, больше довольных начальников и клиентов и меньше тупых пользователей, излишне креативных дизайнеров и менеджеров.
)))
syntax error, unexpected '--' (T_DEC)
Осталось только сделать создание временной переменной, декремент которой производится.
А ты тоже из Владимира?
Что-то я увлёкся и вовремя никого не поздравил.
Хотя, может у якутских петухов уже было и ниже.
Наверное, любитель менуэта.
=B0=D0=B1=D0=BB=D0=B5~
=81=D0=B0=D0=BD=D1=8B=D0=B5
Вобщем, гонолуловцы с новым годом!
а потом какие ОХУЕВШИЕ, просто заглядение
Железо вперёд двигает наука и техника.
До всплеска популярности JS компьютеры надо было обновлять раз в 2 года, а сейчас можно и 5-7 лет не трогать старое железо.
Прогресс железа замедлился. JS тормозит прогресс и хочет, чтобы железо вперёд не двигалось.
Точно так же железо двигает вперед и js, и китаец на заводе Qualcomm, и парень, покупающий ноутбук бабушке. "Двигать вперед" - очень абстрактная фраза и может использоваться как угодно широко
>До всплеска популярности JS компьютеры надо было обновлять раз в 2 года, а сейчас можно и 5-7 лет не трогать старое железо.
Ты точно так же можешь сейчас покупать новое железо каждые два года для новой слаки, и не менять железо по 5 лет 15 лет назад(хотя я пизжу, у меня и компьютера-то тогда не было)
>JS тормозит прогресс и хочет, чтобы железо вперёд не двигалось.
Согласен
=BF=D0=B5=D1=80=D1=8C. =D0=9A=D0=B2=D0=BE=D1=82=D0=B5=D0=B4-=D0=BF=D1=80=
=D0=B8=D0=BD=D1=82=D0=B0=D0=B1=D0=BB=D0= B5, =D0=B1=D0=BB=D1=8F=D1=82=D1=
=8C.
1. Из-за RAD «Дельфя» вокруг себя собрала людей, далёких от программирования.
2. При этом «Object Pascal» не является скриптовым: строгая статическая типизация, линковка, низкоуровневая питушня — всё это для людей, далёких от программирования оказалось сложным.
С одной стороны, его хейтят за тонны говнокода, написанного на нём людьми, далёкими от программирования (TForm1, Unit1 — вот это всё). С другой стороны, его хейтят сами люди, далёкие от программирования, за то, что сложно, нихуя не понятно.
Я разрешаю.
>> если бы MS сделал официальным языком
API Windows 3.x почему-то был основан на коллконвеншне PASCAL. Да и в Win32 взяли не cdecl, а stdcall, в котором стек чистит вызываемая функция, как в pascal. Зачем? Зачем?
Ещё у MS был «Quick Pascal» (который был плагиатом на «Turbo Pascal»), правда, выпустили они всего одну версию.
А ещё был «Apple's Object Pascal», но позже в «Эппле» решили перейти на «Objective-C», который за пределами «OSX»/«iOS» почти не используется (хотя в «gcc» есть библиотеки для разных ОС).
Возможно, «Object Pascal» не взлетел из-за обилия сишного кода, который хотелось переиспользовать. Я приводил реальные примеры, как учёные до сих пор используют «Фортран» не из-за того, что «Фортран» хороший, а из-за того, что на нём много кода, который хочется переиспользовать.
MS развивает язык «F#». Но много ли на нём пишут?
труднее ли сделать ffi, если call conventions целевого языка не поддерживаются или их нет вовсе?
Насколько помню, «Одноклассники» требовали наличия ООО, доверенности от директора и прочей бюрократической хуеты. Сейчас всё так же или бюрократию убрали?
«Фейсбук» попытке при регистрации приложения меня взял на понт: заблокировал мою учётку и потребовал выслать фотографию банковской карты для подтверждения моей личности. Я его проигнорировал, через месяц он меня разбанил и дал доступ к API.
«Твиттер» и «Инстаграм» совсем недавно (где-то в прошлом году) ограничили доступ к своим API. Теперь доступ просто так не получишь, нужно сначала отправлять запрос на доступ к песочнице, потом просить, чтобы тебя из песочницы перевели в белые люди.
*****
Ещё одна проблема — залогиниться через Oauth2 мало, нужно ещё через API конкретной соцсети получить информацию о профиле пользователя (никнейм, пол, е-мейл, аватарку), а этот API не стандартизирован. Разные соцсети будут выдавать разное количество полей. Если твоё приложение строит профиль пользователя на основе информации из соцсетей, нужно помнить, что некоторые поля не будут заполнены.
Некокококонсистентность может быть и в пределах одной соцсети. Например, в «ВК» ФИО есть у всех, а никнеймы — не у всех. Кто-то у тебя будет bormand'ом, а кто-то — id1234567.
Кроме суточных лимитов в соцсетях бывают почасовые лимиты.
Бывают запросы, которые ты можешь сделать, только пока пользователь в онлайне (когда у тебя есть свежий токен), а бывают, которые можно делать и когда пользователь в офлайне (когда у тебя только айдишник пользователя, при этом пользователь принял манифест, что он согласен с офлайновыми запросами).
Бывают запросы, которые можно делать только с айпишника сервера, а бывают, которые можно делать только с айпишника клиента (API мобильных приложений, например).
В частности, срать на стену пользователя «ВК» без согласия пользователя ты не можешь: нужно делать запрос либо с айпишника пользователя (мобильное приложение), либо каждый раз показывать ему страницу подтверждения (срать «ВК» будет, только если пользователь нажал кнопку «Да»). Есть нелегальные сервисы для спама на стену, которые делают запросы со 100500 серверов, как бы имитируя запрос от имени пользователя, но за такое, если вскроется, могут забанить и тебя, и пользователя.
Если тебя интересует только аутентификация, то такие тонкости, конечно же, изучать не придётся.
>> В вк вроде ничего не нужно.
Да, вроде бы в «ВК» и в «ФБ» аутентификацию можно сделать по-прежнему без проблем. Труднее, если ты хочешь сделать игру. Тогда для помещения её в каталог придётся пройти через песочницу.
Ещё можно сделать аутентификацию через «Mail.ru», «Яндекс» или даже через «Гитхаб».
Похоже, что полная жопа сейчас только в «Твитторе» и в «Инстаграме».
>> срать на все поля кроме email
С этим полем может быть проблема. «ФБ» его возвращает только для тех юзеров, которые в профиле поставили галочку «Разрешаю искать меня через e-mail» (или как-то так).
Я для себя нарисовал блок-схему на одной странице. И даже по ней написа́л работающий код.
Если ты на сайт вешаешь кнопку для логина, то всё тупо:
1. Твоя кнопка должна открыть страницу логина в соцсети (тупо ссылкой, через window.open, через document.href.location).
2. Если пользователь успешно залогинится в соцсети, соцсеть его перебросит на страницу-ресивер твоего сайта (её URL указывается либо при регистрации, либо параметром в ссылке в п. 1).
3. Дальше два варианта: через жопоскрипт или через серверный запрос. Переходим к 3а или к 3б.
3a. Запрос к странице-ресиверу не содержит параметра code. Жопоскриптом ищем идентификатор фрагмента в URL ( #access_token=1234567).
4a. Перенаправляем пользователя на специальную страницу своего сайта, приписав к URL ?token=1234567 (значение, полученное в п. 3а). Короче, значение, которое было в URL после решётки, любым способом должен узнать наш сервер.
Переходим к пункту 4б.
3б. Запрос к странице-ресиверу содержал параметр code.
Делаем с нашего сервера POST-запрос к соцсети, чтобы этот временный code поменять на token.
4б. Если удалось получить token, то с OAuth2 на этом всё. Переходим к API конкретной соцсети. Через её API вытаскиваем имя, е-мейл и всё, что нам нужно.
А вообще готовые плагины есть для кучи CMS и фреймворков. Даже в «PHP». Правда, есть проблема: API соцсетей периодически меняется, а авторы некоторых плагинов забывают обновлять код. Рано или поздно тебе может понадобиться патчить плагин под новый API.
Когда говоришь взрослым: «Я видел красивый дом из розового кирпича, в окнах у него герань, а на крыше голуби», — они никак не могут представить себе этот дом. Им надо сказать: «Я видел дом за сто тысяч франков», — и тогда они восклицают: «Какая красота!»
— Маленький принц (Антуан де Сент-Экзюпери)
Так и напрашивается образ лирического героя песни "я инженер на сотню рублей"
Одно дело, когда человек говорит "У меня сёмга стоит 1500 рублей за килограмм, и я купил пару кусков на бутерброды за 100 гривен", и ты сразу можешь перевести по курсу и оценить, сколько рыбы досталось человеку.
А здесь вообще неясно, сколько это в граммах и хватило ли этого количества автору.
P.S. Еврофаги всё измеряют по себе. Кажется, что когда переведёшь стоимость в евро, всё сразу станет ясно. Получать 500 евро в месяц - это мало, а помидоры по 5 евро за килограмм - вроде норм. И пофиг на страну, налоги, среднюю зарплату и уровень цен.
https://ru.wikipedia.org/wiki/Urechis_unicinctus
Не знаю, почему эта картинка вылезла по такому запросу.
а сёмгу?
.
.
.
3oJIoTou_xyu:
Раньше было лучше.
***
То самое раньше, январь (или март) 2020:
Кончил тебе на ебало излил своё семя тебе на лицо, размазав остатки членом.
.
.
.
[NSFW]