- 1
- 2
- 3
Где говнокод? В FF или в/на сайте?
goo.gl/6XhZpH
goo.gl/4EC3Lg
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−16
Где говнокод? В FF или в/на сайте?
goo.gl/6XhZpH
goo.gl/4EC3Lg
Кстати, на говнохостинге картинок было упоминание, что "вот эту ссылку вы можете передавать по почте или _ICQ_". Г-ди, неужели кто-то ещё пользуется этим говном?
Вот я почему-то был 100% уверен, что именно ты первым откликнешься, видать, нехило печёт, коль ты меня и через год помнишь :)
Ты жутко банален, с тобой скучно даже флеймить (серьёзно), так что в игнор.
Расскажи, кого ты НЕ добавишь в игнор. Я уже кстати забыл как ты тут оказался.
> именно ты первым откликнешьс
http://i1.kym-cdn.com/photos/images/newsfeed/000/633/939/021.gif
Качаем отсюда чистые сборки браузеров и сравниваем ощущения:
http://portableapps.com/apps/internet/
Я линуксоид (вот уже 8 лет), самому качать какие-то говносборки с говносайта под говноплатформу не резон в принципе. Ничего личного :)
Не поверишь, но люди до сих пор пользуются не только аськой, но и всяким говном типа Viber, Whatsapp, Telegram. Я даже вживую видел пользователей Хрома.
Если вынуть оттуда накопившееся, станет посвободней, и хром легко установится.
А в хроме не маркетинг, в хроме дизайн.
Дизайн интерфейса. Именно с хромом мы перешли от множества тулбаров к минимальному виду с только нужными кнопками. Сначала их было пять, а теперь осталось четыре самых нужных, но управление не страдает.
Жаль, но множество панелек и менюшек не упокоилось с миром, а переехало на сайты.
Дизайн взаимодействия с пользователем. По умолчанию всё работает; если нужно большего, есть настройки с поиском; если нужно ещё что-то, есть флаги, ... Порог вхождения нулевой, затраты на погружение пропорциональны экзотичности запроса.
Имея знания об открытых мною страниц, гугл предлагает более эффективный поиск.
Пока другие пользуются интернетом, пердолик настраивает интерфейсы и фаерволы.
Пока другие пользуются интернетом, пердолик настраивает свой браузер.
Пока другие получают результат через живой поиск на основе персонализации, пердолик ещё вводит запрос.
Выгода очевидна.
А сейчас мне очень нравится, что браузеры и пользователи более-менее успокоились. В основном всем пофиг.
У многих браузеров так же либо по дефолту, либо можно настроить.
В начале нулевых на некоторых браузерах так сделать было нельзя, но в начале нулевых и Хрома не было.
> постоянно свежая версия
А смысл? Цифры в менюшке «About»?
фи! в эффективном поведении по дефолту и заключается ценность
чем меньше изменений сделает пользователей, тем больше успех команды разработчиков
> А смысл? Цифры в менюшке «About»?
Смысла нет. Это я уже переключился в режим разработчика, когда писал.
Смысл в поддержке новых стандартов
(ни разу не хромог, просто во имя справедливости)
самое ебанутое, это когда в хроме/яндекс-броузере с ютюба скачивается именно vp8/9 вариант, который на текущих поколениях не декодируется аппаратно, и потому на 4К тормозит как последняя сука, и приходится ставить отдельный плагин, который истребует с ютюба именно h.264
Кстати, в приложениях для Андроида встречаются картинки в формате WebP, которые не может отобразить ни десктопный Хром, ни популярные конверторы из формата WebP (основанные на официальной™ библиотеке). Похоже, что у WebP есть недокументированные или плохо документированные варианты.
https://developers.google.com/speed/webp/faq#why_should_i_use_animated_webp
Веб — говно.
как и любая поебень, где куча вендоров и каждый тянет одеяло на себя, пытаясь ещё и заработать на текущем положении дел
а т.к. веб слишком массовое говно, то накал пиздеца тут особо явный
Не в курсах ли местная публика, когда окончательно подохнет Flash?
1. Игры. Можно сделать на HTML+JS (и таких игор уже много), но тогда придётся добиваться поддержки игры в каждом браузере. На Флеше же игра пишется под некую виртуальную платформу.
2. Видео.
2.1. В HTML5 есть проблема кодеков: набор кодеков, поддерживаемых IE, Safari, Хромом и Фуррифоксом, не совпадает.
2.2. В HTML5 не подразумевается поддержка протоколов, за исключением http(s). А борцы за авторские права так любят протокол RTMP, который не оставляет после себя ничего в кэше браузера.
2.3. Подгрузка при перемотке будет работать во всех браузерах, когда сдохнут браузеры, не поддерживающие Media Source Extensions.
2.4. Как можно реализовать вставку рекламы в HTML5?
3. Слежка. Например, зомби-кукис:
http://samy.pl/evercookie/
И вообще флешка размером 1×1 пиксель может много чего передавать на сервер. В отличие от подыхающего Java applet, флешка обычно даже не просит разрешения на запуск. Хорошо хоть, что спрашивает разрешение на использование камеры и микрофона.
4. Кроссдоменные запросы. Да, есть CORS, но он не такой гибкий.
5. Флеш больше, чем JS, подходит для обфусцирования кода. Он требует как минимум утилиты для распаковки swf-файла и дизассемблера для данной версии языка.
6. Actionscript, в отличие от Javascript, имеет строгую статическую типизацию и модульную структуру. Переносить программы с него на JS нелегко, ибо заведомо приходится писать говно.
реально проблема передавать видео в реальном времени прямо в этот ваш браузер
современная срань типа http live streaming и иже еси (mpeg-dash) - это заведомо задержка 15+ секунд, потому подходит только для бродкаста мероприятий (концертов), где похер на задержку в минуту
и это значит, что надо писать такой плеер такого формата/протокола, который нативно не вшит в браузер, и на js его не напишешь
все надежды были на webrtc, но у микрософта свой путь, а у эппла вообще фейспалмтайм, ей не нужен ещё один способ передачи медиа в реальном времени, срать они хотели
И уж совершенно ойчевидно что стримать видео нужно по udp
http://rublacklist.net/13287/
и он не работает в браузере, пока не поставишь флеш-плеер или, того хуже, active-x плагин для ишака
так что на что в итоге пошло?
А разве нельзя попросить провайдера стримать мне видео? IPTV же так работает: я подписываюсь на рассылку, провайдер это видит, подписывается тоже, и дальше от это все: https://habrahabr.ru/post/217585/
>>и он не работает в браузере
С козырей зашел.
В разметке сайта элемент EMBED/OBJECT, как для Флеша, только кнопки пуск/стоп будет рисовать сам VLC. Веб-дизайнерам не понравится...
он хочет из бани смотреть свои камеры, друзьям показывать, тыкая евоным пальцем
снапшотили камеру где-то 10-15 fps, слали жипеги по сокету, на второй стороне эти картинки показывали
технологии 21 века ёптыть
Эталонная говноархитектура :)
то ли дело срать mjpeg по вебсокету и показывать каждый его кадр путем подмены жопега в диве, это прельстиво, стильно, модно и молодёжно, и, главное, кросс-платформенно!
если по существу, то webrtc между хромом и фаерфоксом работает
но только между ними
а вышеуказанный способ мы как пруф оф концепт запилили за день, там для ноды уже полуготовая библиотека была причем - т.е. люди всерьез это ковыряли так-то
было бы смешно, если бы не было так грустно
БСОД бывает только на Винде. А у раба божьего в водолазке был идеально безглючный телефон! Откуда на нём взяться бсоду, если на нём нет Винды?
Вот луддиты: http://os2fund.halfos.ru/
Люди тупые, у них отсутствует абстрактное мышление?
Одно дело, когда в новом мессенджере появляется, скажем, возможность перетягивать файлы прямо в окно - можно как-то понять пересевших, т.к. они хотя бы оптимизируют своё взаимодействие с компьютером. Но лезть туда-сюда из-за нефункциональных особенностей, рвать совместимость со своими друзьями - это сумасшествие.
Браузеры хотя бы пытаются стандартам следовать. Хм, можно было написать проплаченные хвалебные отзывы о хроме? Чёрт, а я бесплатно писал.
Ой, ви таки словно первый день в Интирнете. Каждому сетевому полемизатору давно известно, что точка зрения, несовместимая с его точкой зрения, является проплаченным Гуглем/Путиным/Торвальдсом неискренним пиаром :)
Ну не может браузер показывать страницу быстрее, чем она загрузится, не может :)
Но ведь браузер может и умеет! Каждый уже что-то начинает по ходу отображать, пока не получил всё.
Вообще да, хотя и быстрая обработка всего говна, что всосалась из интернетов, приятна.
А вообще, у нас же есть кэш. Миллионы пользователей ходят по сути только в соцсети, жмут там F5 в ожидании лайков и смотрят там те же картинки, что и их друзяффки.
Предсказываю ещё большие доходы хозяев соцсетей с приходом IPv6, быстрых смартфонов и мощных нейронных сетей. Фильтры инстаграма уже давно успешно уменьшают количество полезной информации на картинках, мода уверенно уменьшает уникальность фотографий. Осталось только ввести пуш-уведомления, жёсткое кэширование, п2п, передачу диффов фотографий на основе искусственного интеллекта (многие даже будут рады, когда при достаточно большом сжатии станут походить на эталонную ТП) и обновление страницы из кэша по нажатию F5. Социальная сеть будет физически находиться на ПК у какого-нибудь лесника в Сибири и будет лишь изредка подвисать, когда зарегистрируется какая-нибудь уникальная творческая личность.
"Облако уже плохо продаётся, теперь в моде нейронные сети" (с) opennet
Как раньше до блевоты заёбывали сраными облаками, так теперь начинают заёбывать нейронными сетями. А ведь ни одного нейрона-то там нет, одно маркетинговое сраньё.
Ну это же абстракция!
И хорошо, что пиарят что-то полезное. Простой интерфейс в хроме и айфонах, удобство и абстракции облаков, перспективность нейронных сетей. Теперь неспециалисты-спонсоры с большей вероятностью дадут деньжат на запиливание искусственных мозгов, а мы лет через 50-200 получим новые архиваторы, адблок, более захватывающие игры, скачок в науке (науку наконец автоматизируют не хуже банков/торгов) и жизни в целом (если не дадим права на запись нечестным и озабоченным деньгами товарищам).
Вот когда рекламируют очередной мессенджер, это грустно. А тут столько пользы.
Как же я ненавижу drug-and-drop. Самый неочивидный элемент UI.
Или ты долбаный нервозник или Паркинсон
У всего этого новомодного говна всего одна киллер-фича - нет каких-то новых идентификаторов и не надо добавлять друзяшек. Достаточно просто поставить прогу. Для большинства юзеров эта фича и стала решающей.
Почему создатели популярных ЯП считают своим долгом создавать свой язык хоть и не синтаксически, но логически с нуля? Ну то есть у нас есть в итоге куча языков, несовместимых синтаксически, бинарно и идеологически.
Где C++ с синтаксисом питона? Где JavaScript с чистыми функциями? Почему нельзя просто сделать свою небольшую модификацию, а не целый язык с отдельными бинарниками?
Ну почему же нет? Видал цпп-шный инклуд, где дефайнами стандарные операторы плюсов были заменены Питоновскими (кстати, мини-срач - "Питон или Пайтон?") и человек по сути писал на Пистоне, но компилировалось всё в плюсы.
Из groovy, kotlin, scala и прочих JPython/JRuby можно вызывать java-код без всяких конвертаций и обёрток.
> Где C++ с синтаксисом питона?
Ну вот взять, к примеру, Vala. Бинарно совместима с сишечкой и гномьей объектной системой. Упоротый разработчик не успокоился и зачем-то запилил питоноподобный Genie.
Равно как из любых DLR япов (ironpython, ironruby итд) можно вызвать код на С#, лол
Погодите-ка!
Из любого языка можно вызвать код на любом другом языке если они скомпилированы под совместимые платформы!
Например из паскаля я могу вызвать код на си
а из си -- код на ассемблере
внезапно 1024 традиционно хрюкнул в лужу
что взять с джаваскриптщика?
что взять с того, кто не смог даже учётку зарегистрировать?
забавноч то чувак под моим ником (ума не приложу как он пароль подобрал) написал тоже самое 3 месяца назад
http://govnokod.ru/21775#comment360818
Стандартную библиотеку всё равно заново пишут. Хоть обёрточки над сишной, но всё равно пишут. Совместимость только условная и наблюдается только в конкретных случаях. Обычно это экспорт функций или окостыливание значений.
сразу видно что кроме JS ты других языков не видел
прекрасно работают коллекции из Java SE в Kotlin и Groovy
Прекрасно работают .NETовские System.* в VB.NET И C#
>> наблюдается только в конкретных случаях
Но применимо ли это ко всем популярным языкам, кроме специализированной питушни вроде JS для браузеров и Java для карточек?
Бинарники могут быть у виртуальной машины, интерпретатора или реальной машины (суть едина) и уж конечно они не имеют отношения к ЯПу!
PE под Windows@x86 написаные на сях отлично совместимы с ими же, написанными на Pascal или на ассемблере.
.class файлы на java совместимы с kotlin
итд
не говори никому о том, что скомпилированный гццой ELF прекрасно работает со скомпилировнным шлагом ELFом.
Правда речь о C конечно, с крестами могут быть сюрпризы
Но когда он уже собран в .so или в .dll, снабжен загоовком (ELF, PE) и линкуеца динамически то проблем не будет. Не так-ли?
Можно, конечно, наступить ещё на грабли, но относящиеся уже к операционной системе, а не к языку.
Экспортировать класс из неймспейса может оказаться не простой задачей, если у тебя разные конпеляторы
Настоящие поцаны пишут на плейнсях же
> Бинарники могут быть у виртуальной машины, интерпретатора или реальной машины (суть едина) и уж конечно они не имеют отношения к ЯПу!
Привет, дитя идеального мира.
Давайте легко скомпилируем код на произвольном языке (в т.ч. интерпретируемом) и используем его как функцию в другом произвольном, а потом поговорим про мифические бинарники, которые не имеют отношения к языку.
shell / fork/exec?
Для случаев, когда функция работает слишком малое время по сравнению с созданием процесса.
для случаев когда фукнция работает слишком малое время по сравнению с call, ret и пр в x86.
Еще раз: бинарный формат связан с исполняющей его машиной, так как явлется ассмемблером под ISA это машины.
Бинарник есть заголовок (обычно нужный линкеру и ОС) плюс ассемблер под конкретную машину.
Знания о языке там нет. Совершенно не важно на каком языке он был написан (важны разве что только кол конвенции)
Ни в какой спецификации языка (во всяком случае высокоуровневого) ты не найдешь описание бинарников, а значит к языку они не имеют отношения.
Я с тем же успехом могу написать универсальный транслятор из любого языка в любой. И программистов обучить, которые любой язык изучают одинаково легко. И страну свою с миллиардным населением - тоже. Только дайте мне время и ресурсы.
Чтобы в реальности развязать язык и бинарники, подогнав мир под теоретические сплетни, нужны ненулевые затраты. Это как законы термодинамики.
Твоя претензия в том, что компиляторы не пишут под все известные платформы?
Ну вот тебе LLVM например, он именно для того и сделан чтобы разделить фронтекнт и бекенд
Мне не нравится несовместимость языков, их библиотек, бинарников, компилируемых компиляторами.
Я допускаю, что при импортировании кода на питоне в си могут быть утечки памяти. Я допускаю, что создателю языка/компилятора/интерпретатора придётся написать какое-то "ядро стандартной библиотеки" или "ядро совместимости".
Но меня бесит, что программы и модули с одного языка портируют на другой, что нельзя просто так взять код на питоне и использовать в браузере внутри кода на JS.
Код, написанный на одном языке, должен быть автоматически доступен пользователям других языков. Одни и те же библиотеки не должны переписываться с языка на язык. И если есть, скажем, JavaScript с его движками с оптимизацией, то движок должен уметь оптимизировать скормленную ему библиотеку на произвольном языке/в произвольном бинарном формате как собственный код на JS, а не использовать как что-то внешнее и монолитное.
Once again: не существует понятия "бинарник языка".
>>что нельзя просто так взять код на питоне и использовать в браузере внутри кода на JS.
Можно. skulpt.js
>>Код, написанный на одном языке, должен быть автоматически доступен пользователям других языков.
Так пиши под JVM или CLR, и будет тебе счастье: код, написанный на C# доступен VB.NETу.
Остальное мне трудно комментировать. Я не понимаю что такое " движок должен уметь оптимизировать скормленную ему библиотеку на произвольном языке".
Once again: язык и бинарники практически связаны, пока никто не написал универсальный транслятор для всех языков.
> skulpt.js
> Так пиши под JVM или CLR
Вот. У нас есть только частности да крайности.
А хочется совместимости и того мира, где язык действительно полностью от бинарника отвязан.
> Я не понимаю что такое " движок должен уметь оптимизировать скормленную ему библиотеку на произвольном языке".
Ну допустим у нас есть какая-то скомпилированная библиотека. Я её с помощью несуществующего import func from mylibrary.dll хочу использовать из языка вроде python или JavaScript. Движок должен уметь оптимизировать код внутри mylibrary.dll с учётом того, кто его вызывает из python или JavaScript. Например, проверки и ветки выкидывать, если на этапе компиляции кода на JS/python видно, что он в них не идёт, полиморфизм урезать и из объектов указатель на таблицу виртуальных функций выпиливать, если код на python или JavaScript создаёт объекты только одного класса.
То есть движок не должен понимать mylibrary.dll как монолит и пытаться оптимизировать только, скажем, код биндингов, в котором ничего интересного и оптимизируемого в общем-то нет.
2) >>пока никто не написал универсальный транслятор для всех языков.
Эти две фразы никак между собой не связаны.
>> где язык действительно полностью от бинарника отвязан.
У тебя есть множество бинарников и множество языков.
Очевидно что ты должен написать компилятор из каждого языка в каждый бинарник. Не существует другого способа.
>> код внутри mylibrary.dll с учётом того, кто его вызывает из python или JavaScript.
Вызывает на "пайтон", а конкретная реализация. У cpython одни требования, у IronPython другие.
>> Например, проверки и ветки выкидывать
Не всегда это можно сделать due to halt problem, однако например это делает jit.
[:/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/:]
https://en.wikipedia.org/wiki/IP_over_Avian_Carriers