Pull to refresh
8
0
Дмитрий Тимофеев @blackstrip

Веселый кодер

Send message

статья расчитана на немного продвинутого программиста, который знает какие бывают теги в html, как парсить теги, как меняют юзерагент. Теперь ему не надо пытаться делать простой html-браузер с нуля, а можно сразу посмотреть что примерно будет, как будут выглядеть сайты без js, и много ли можно выудить для вывода в браузер из простого html. А потом уже решить для себя какой браузер делать, что там нужно, что не нужно, и написать более совершенный браузер.

ну я не пытался заставить всех использовать мой html-браузер вместо поддерживающего тучу стандартов хрома или фаерфокса. Статья про то как написать простой браузер и в конце приведен результат, чтобы посмотреть как оно работает (а после удалить если у вас нет слабого компа и вам он явно будет бесполезен, т.к. на мощном компе удобнее всего будет с хромом). Я тоже качаю неизвестные проги обычно посмотреть что внутри, прокатить на вирустотале, ресурсы поизучать, так что ожидаю что и другие будут делать примерно тоже самое.

проприетарная винда захватила мир, а открытый линукс — только 1-2% людей, которым "не нужны игры, не нужен уникальный windows софт", а нужен браузер, плеер и какой-нибудь язык покодить. Открытый код — это разбираться в чужом коде похлеще моего без табуляции, как и описал автор того поста, присылают все что не попадя, не то, не для того, с багами, злятся, ругаются. Потому что у них нет ТЗ и нет оплаты их деятельности. Соло такую бесплатную разработку еще можно провернуть, т.к. хотя бы идея есть и ты сам ее реализуешь. Но с толпой неизвестных людей — очень трудно (как и опять же описал автор того поста). Я считаю это некачественной и неэффективной разработкой, когда труда вкладывают много, а кпд очень низкий из-за незаинтересованных, непонимающих и просто не имеющих опыта кодеров различных возрастных групп.

ну к лицензионным соглашениям я отношусь также как к лицензиям) промотать и принять


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

статистика скачиваний по логам сайта говорит об около 1000 скачиваниях с хабра за 2 дня. Т.е. каждый 25ый просмотревший пост — скачал. Поэтому не "ни один гик".


А телеметрию, конечно, нужно бояться. Я сам боюсь что в мс ворде или в виндоус 10 за мной следят. Но еще не пробовал запросить в майкрософте исходники на проверку. Скорее всего они скажут что код закрыт и откажут. Я делаю примерно то же самое, ведь код закрыт.

Я исходники не выкладывал. Про что вы?)

А браузер вовсе не перспективный. Статья не про какой у меня хороший браузер (он вовсе не хороший, т.к. без JS работают только новости и некоторые форумы), а про то, как сегодня, в мире где все занял прожорливый/лагучий и тормозящий на слабых компах/надоедающий уведомлениями хром, сделать простейший браузер, состоящий из:
— html-парсера,
— интерпретатора форм,
— просмотрщика скачанных файлов в виде текста/hex,
— редактора простых скриптов для ручной автоматизации обработки кода страниц с целью вытаскивания видеофайлов с ютуба / обрубания длинных шапок сайтов / перемещения в нужное место страницы в пикселях после загрузки сайта и др. подобных простых целей.

И в конце статьи можно посмотреть как такая прога будет работать (скачав ее и полазив по паре-тройке сайтов, а потом удалив если, конечно, она вам не нужна для какого-нибудь слабого компа).

У меня не было цели распространять исходники и поэтому я не боюсь что их упрут или просто превратят в несколько невнятных проектов-форков.
Вот мое развернутое мнение насчет открытого и закрытого:
habr.com/ru/post/465709/?reply_to=20584593#comment_20581837
и еще
habr.com/ru/post/465709/?reply_to=20584593#comment_20582037

Т.е. опенсорс, предположительно, будет менее качественным (менее рабочим, менее тщательно отлаженным), чем бесплатное закрытое (это которое я, например, выпускаю) и платное закрытое (которое делают профессиональные коллективы за деньги).

При закрытии исходников и прекращении форканья проектов школьниками — останутся только давно разрабатываемые проекты, которые их родные авторы холят и лелеют (как это было 20-30 лет назад). Для того чтобы что-нибудь написать глобальное — надо будет постараться, вложить душу, заниматься этим лет 10, а не сидеть и безмозгло форкать чужие исходники на переменке, а потом дописать туда пару строчек из hello world и забросить свой очередной форк.
Ну это к вышеупомянутой игре кусок же) стартовое видео, вдогонку
Затем что это софт под Windows. А линукс идет лесом, комменты это подтверждают habr.com/ru/post/465709/?reply_to=20582149#comment_20576635

Да и, собственно, не вижу хаба «Линукс» в моем посте. Линукс это для 1-2% людей на Земле (статистика это подтверждает). А Windows — для всех пользователей, кто хочет с удобством играть и работать за компутером.
Ну подумайте, раз не знаете. Перечитайте ваш первый коммент еще раз. Носом водить вас по словам не будут. Не надо выеживаться и никто посылать вас не будет.

1. Аргументированная критика. «По моему скромному мнению, ваш код ужасен потому что...» и по пунктам что вам не нравится. Если вам не нравится отсутствие табуляции — то меня подводит автоматика (пошло еще с java2me) и я вместо этого «табулирую» комментами после «end;», что помогает в IDE где нельзя «свернуть» кусок кода между begin-end или подсмотреть что там наверху перед begin — понять к какому месту относится end. Это подробнее показано здесь: habr.com/ru/post/465709/?reply_to=20582095#comment_20577065. Если остальной код вас пугает типа «if checkBox1.checked then a=a+b» — то я не знаю что вам посоветовать, т.к. это обычный дельфи-код.

2. Не лейте воды. «Плохо написанную программу тяжело поддерживать и развивать. И чем дальше она пишется в таком стиле, тем более вязкой становится кодовая база — каждая новая фича в софте требует всё больше усилий для её внедрения, поскольку под нее надо изменять и прошлый код.» — очевидно даже любому идиоту. Видите, вы решили надменно кого-то учить — а теперь приходится учить вас. Это нормально. Как там «не говорите что мне делать — и я не скажу куда вам идти».

3. Ну и про книжки я уже писал. Тут аналогично «не говорите что мне делать — и я не скажу куда вам идти».
В дополнение к прошлому комментарию моему: вот, например, на хабре писали про опенсорс habr.com/ru/post/169339

Значит я все правильно понимаю. Опенсорс это мучения. Люди, незаинтересованные, непонимающие твой код, неопытные, пытаются что-то слепить вместе забесплатно. Зачем это вообще придумали? Единственная причина, по которой можно было придумать это — это иметь легкий доступ к исходникам разного чужого ПО. Для этого надо было внушить кодерам что никаких наработок у каждого программиста нет, что все надо выложить на всеобщее обозрение, чтобы другие потом это переняли к себе в проекты (или целиком форкнули) или поучаствовали.

Вместо этого, имхо, надо набирать команду нормальных программистов, платить им как положено и они будут работать как положено. И тогда все проблемы отпадут. И тогда код станет тоже проприетарным (никто не захочет отдавать его за просто так), и результаты в виде готовой проги — придется продать, чтобы окупить затраты на программистов. Но этот путь дает качество и уверенность в том, что ты делаешь и для чего ты это делаешь в составе такой команды с руководителем.

Получается: платное проприетарное — хорошо (т.к. по заказу, с четким ТЗ и результатом с тестами), бесплатное проприетарное (от души и для людей) — тоже хорошо, хоть есть кому вопросы задать и попросить добавить функции, а бесплатное открытое — плохо (т.к. хрен пойми кто делал хрен пойми что).
Я только за закрытие исходников топлю. И за разгон команд школьников, которые без души и цели лепят куски кода направо и налево, перепрыгивая с проекта на проект, закидывая интернет этим открытым исходным кодом, кучей недоделанных форков. Если бы им перекрыть кислород таким образом — они бы аккуратно изучали кодинг и писали что-то от души. А править чужой код много ума не надо, и ценности оттого в нем нет никакой. Ты у кого-то что-то взял, дописал, раздал всем, его еще двое взяли, сделали другие две версии, дописали еще что-то. В итоге изначально единый проект расползается, в каждом что-то доделано, а что-то нет, в одном одно, в другом другое. Мне это не нравится.

Бесплатное ПО с закрытым исходным кодом (с донатом по желанию) — классная тема. Все делают свои проекты, растут над собой, анализируют небольшие алгоритмы друг с другом (не целиком прогу, а конкретные проблемные места), выкладывают результаты своей деятельности в exe-шниках и других исполняемых файлах, обсуждают, пользуются, получают удовольствие от использования такого качественного ПО, каждый ответственен за свои косяки в своем ПО, замечательно.

За копирайт не хочу, т.к. давно уже надел треуголку. Хотя и пытаюсь написать все свое чтобы не брать на абордаж чужие продукты. В моем разработанном арсенале есть графический редактор PaintCAD (рисует картинки, создает и использует растровые шрифты собственного формата paintcad font или PCF, кадры анимаций, собирает GIF-анимацию, AVI-видео, добавляет WAV-озвучку к AVI-видео), программируемый звуковой редактор Qmpot (создает WAV озвучку, позволяет программно писать мелодии из отдельных WAV-сэмплов, которые можно извлечь также из SF2/DLS-банков в самом редакторе), авто-композитор музыки Muzz (сочиняет рандомные мелодии с выдачей их в MID или в Qmpot-программах, которые можно уже в Qmpotе превратить в WAV), программируемый на JS создатель анимаций Scriptaint (на движке IE программируется выдача кадра за кадром, в каждом из которых ставим в нужные места картинки, масштабируем их и применяем разные эффекты в пределах HTML/JS, а он каждый кадр сохраняет в BMP для последующей сборки в анимацию/видео в паинткаде).

В перспективе видится собственная IDE с каким-нибудь синтаксисом типа того же паскаля/си и выдачей на выходе хотя бы win32 exe-файлов без использования всякого тормозного .net. На этом котором я и буду в удовольствие кодить.

Все иконки JustCode нарисованы лично мной в моем редакторе PaintCAD 4Windows
image

Наш диалог вкратце:


  • ты #&@, читай мою любимую книжку
  • сам ты &@#, ты кто такой ваще? напиши конкретно что ты хочешь? а книжку себе засунь куда-нибудь поглубже
  • ах ты хам, почему не ответил мне вежливо? трудно?

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

Код я не выкладываю вот по этой причине: habr.com/ru/post/465709/#comment_20577809 (вкратце — потому что никогда не выкладывал и считаю это глупым и ненужным, невыгодным занятием).

Первая группа школьников пишет отстойный софт и выкладывает открытым. Вторая группа школьников пишет тоже плохой софт и выкладывает открытым. С третьей по девятую тоже пишут плохой софт и выкладывают его открытым. А десятая группа хороших опытных специалистов пишет хороший софт и выкладывает его.

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

И когда мне говорят «посмотри на них, они же выкладывают, выкладывай тоже» — я, мягко говоря, удивлен. Их методы написания софта можно назвать «лебедь, рак и щука», как будто википедию пишут, один пишет, второй стирает, третий с угла дописывает, четвертый следит за этим кое-как и пытается управлять/принимать/отклонять/читать и понимать их писульки, в итоге из проекта с большинством плохих разношерстных программеров на выходе выйдет так себе код.
Конечно есть вероятность что в каком-то левом браузере, особенно в который вы вводите пароли и логины своих учеток и логинитесь на сайтах/форумах, содержится код, который сливает все это прямиком хозяину. Поэтому браузеру даже с открытыми исходниками нельзя верить (вдруг в исходниках будет чистый код, а в exe-шнике — такой же, но с добавленными вирусами, а собирать самому будет лень). А в случае если исходников нет — тем более вероятность есть. Поэтому только слежение за трафиком во время работы браузера, а также дизассемблирование проги с внимательным просмотром кода оградит вас от подобного исхода. «Не доверяй никому» (с) андеды.

У меня на чистый незапакованный exe-шник никто не ругается. А после запаковки UPX многие антивирусы могут ругаться, я тоже на virustotal гонял этот сжатый UPX-ом браузер несколько месяцев назад и удивлялся какого хрена в нем что-то видят некоторые антивирусы, причем каждый антивирус (из ложно сработавших пары-тройки антивирусов) видит там вирусы с разными названиями. Одному одно показалось, второму второе, третьему третье.
Берешь три плохих, тестишь по очереди, соединяешь кусок оттуда, кусок отсюда, тестишь, провал, соединяешь кусок отсюда, кусок оттуда, тестишь, успех — вуаля, получаешь один, но свой и хороший
Ну а как вы думали, что на такой текст вам ответят:
«ваш стиль написания кода (по крайней мере, в приведенных фрагментах) — ужасен»
"***вода а ля сложнонаписанный код плохо читается, а простонаписанный — хорошо, а ведь вы этого не знали, а я такой дохрена умный пришел вам это рассказать***"
«я предлагаю вам прочитать книжку «Совершенный код» Стива Макконнелла»

Что вам на это ответить. «Спасибо, сэр, я буду совершенствоваться и от каждого ноунейма принимать предложения и книжки по философии, которые ему понравились, читать». У меня времени на это не хватит. Реальность такова.

Написал бы человек по простому «вон там табуляции нет, а я привык к ней, а вот здесь checked вызывается, а бы заранее его считал и использовал переменную с этим значением для ускорения» — и не было бы проблем. Код-то плевый в три строки а ля a = b+c, а щеки надуваем на метр кубический. Кто щеки надувает — тот мне не товарищ.

Пост давно не первый пишу, но на Хабре не иссякает поток таких дворян как Вы. Поэтому мне приходится так действовать. Причем давно не писал, ушел на всякие пикабу и прочие подобные. Попробовал сюда разок пост закинуть. Результат: концентрация зашквара упала, но где-то еще 50 на 50 нормальные люди и дворяне остались. Спадет ли все до нормальных людей, которые будут радоваться простым вещам и смотреть кто что творит и как это выглядит, а не тонуть в необоснованном снобизме, завышенном ЧСВ и напыщенном судействе? Хз.
«Считается», «было всегда» — только ничем не подкрепленные слова.

На UPX всегда антивирусы ругались, хотя он и с открытым исходным кодом, но антивирусы никак не допилят чтобы они upx-а не боялись. Поэтому, на многие мои проги ругаются всякие эвристики (а я все UPX-ом пакую, мой любимый запаковщик исполняемых файлов).

Information

Rating
Does not participate
Location
Подольск, Москва и Московская обл., Россия
Date of birth
Registered
Activity