LINUX.ORG.RU

А куда, если не в веб?

 , ,


3

4

Хай, Лор. Давно сюда не писал, многое поменялось, многое перепробовал.

Но вот незадача - присутствует чувство, что всё идёт сейчас в веб. Я уже было смирился с этой мыслью, но тут начинается…Чертов фронтенд. Вот не нравится мне размечать документы и объяснять машине по полчаса, почему и какая кнопка, где должна находиться.

Хотелось бы такую отрасль, в которой я бы смог набивать руку на фрилансе, но чтобы это не было связано с этим визуальным рукоблудием.

Подскажите, есть ли истории успеха? Что-то алгоритмическое/техническое? Буду рад всем отписавшимся по вопросу.

Ответ на: комментарий от alysnix

то ошибок типа «виснет при вводе символа»,и быть не может, если микропроблема, что решала этот ввод этих символов, была решена верно и закрыта. значит там посадили примитивный баг, который сложно заметить. такое бывает

То есть, с разработкой систем даже среднего масштаба ты не знаком. Замечательно.

byko3y ★★★★
()
Ответ на: комментарий от byko3y

То есть, с разработкой систем даже среднего масштаба ты не знаком. Замечательно.

даже средний масштаб - это что? ну вот примерно

alysnix ★★★
()
Ответ на: комментарий от byko3y

То есть, с разработкой систем даже среднего масштаба ты не знаком. Замечательно.

дело не в масштабе, а в правильной архитектуре системы, и способах ее реализации.
я однажды получил строк 300 кода, на котором был реализован конечный автомат, читающий какой-то протокол, с целью его несколько изменить. так я мозги сломал, чтобы понять как это работает. там было столько джампов и настолько вычурно менялись состояния, что понять как это переделать невозможно. не дай бог еще какой-нить баг в этом найти. пришлось брать описание протокола и реализовывать это в академическом смысле. в виде нормальных синтаксических правил, имеющихся в описании.

alysnix ★★★
()
Ответ на: комментарий от alysnix

я однажды получил строк 300 кода, на котором был реализован конечный автомат, читающий какой-то протокол, с целью его несколько изменить

Проще переписать. Мудаки, которые до сих пор пишут конечные автоматы, еще существуют, так что это реальность, с которой приходится мириться. 300 строк - не так много, зато потом даже минимальное изменение будет проще сделать, а иначе у тебя нет гарантии, что ты правильно его модифицировал.

byko3y ★★★★
()
Ответ на: комментарий от byko3y

Это с какого перепоя миллион строк - «средний масштаб»?

Средний масштаб - это тысяч 50..100 строк. То, что реально сделать в одиночку за пару лет работы.

anonymous
()
Ответ на: комментарий от byko3y

Мудаки, которые до сих пор пишут конечные автоматы

Мудаки - это те, кто пихает РТОСь куда ни попадя! А нормальные люди реализуют все, что нужно, на конечных автоматах. Все-таки, зачем на микроконтроллер РТОСь совать, если нет необходимости в многозадачности?

Для ПК несколько иначе: здесь уже есть ОСь (иначе как-то не очень), поэтому под линуксом проще в многозадачность, чем в КА. Хотя, конечно, можно и через КА кое-что простое сделать, чем синхронизировать задачи!

anonymous
()
Ответ на: комментарий от anonymous

Средний масштаб - это тысяч 50..100 строк. То, что реально сделать в одиночку за пару лет работы

А тебе не кажется, что одиночный проект — это уже автоматически «мелкий масштаб»?

byko3y ★★★★
()
Ответ на: комментарий от byko3y

300-500-1000 тыс строк.

это ни о чем. одно дело, когда 100 тыщ строк разбиты на пару десятков ограниченных подсистем с четким взаимодействием - и ты никогда не вываливаешься на уровень анализа взаимной работы сотен тыщ строк кода. другое дело когда эти 100 тыщ строк - это запутанный, неиерархичный код, который запутали настолько, что его проще в мусорку кинуть.
в таких масштабных проектах главное не кодирование и строки, а архитектурирование и модульность.

alysnix ★★★
()
Ответ на: комментарий от alysnix

одно дело, когда 100 тыщ строк разбиты на пару десятков ограниченных подсистем с четким взаимодействием - и ты никогда не вываливаешься на уровень анализа взаимной работы сотен тыщ строк кода. другое дело когда эти 100 тыщ строк - это запутанный, неиерархичный код, который запутали настолько, что его проще в мусорку кинуть

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

byko3y ★★★★
()
Ответ на: комментарий от byko3y

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

alysnix ★★★
()
Ответ на: комментарий от alysnix

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

Правда тебя огорчит, потому я передумал ее писать

byko3y ★★★★
()
Ответ на: комментарий от byko3y

Правда тебя огорчит, потому я передумал ее писать

я тебе показал пример как сойти с ума на 300 строках, и как можно не сойти с ума на сотнях тыщ. потому считать производительность в строках неуместно, а кодить безбашенно, без тщательной проработки архитектуры - неразумно. от этого все зло,и программистские байки - как я искал баг три месяца нашел его! и нытье - у нас система огромная, вся в костылях и разваливается. потому что если собрать в коллектив десяток ошалевших от знания с++ граждан, и заставить их кодить… будет костыльная система, что развалится в конце концов.

alysnix ★★★
()
Ответ на: комментарий от byko3y

Не кажется.

И вообще, я никогда не работал в команде. И не собираюсь этого делать. Быстрее самому все сделать, чем паре студентов объяснять, что ты от них хочешь!

anonymous
()
Ответ на: комментарий от byko3y

Не надо бредить. На современных языках в 30-100 тысяч строк огромный вагон фич влазит, если юзать фреймворки и не заниматься оверинженерингом. Это и есть средний проект.

Тебе, видимо, всё же построчно платят.

WitcherGeralt ★★
()
Ответ на: комментарий от anonymous

Быстрее самому все сделать, чем паре студентов объяснять, что ты от них хочешь!

Если нужно сделать много, то сам просто не успеешь сделать. Ну а проблема кадров актуальна, в этом я не спорю. Можно же найти и людей, которые сами тебе объяснят, что нужно сделать.

byko3y ★★★★
()
Ответ на: комментарий от anonymous

Категорически не понимаю наезда на конечные автоматы

Если автомат сложнее, чем «пройти строго последовательно по шагам», то внезапно выясняется, что его тяжело понимать, его тяжело сочетать, и современные компиляторы не могут его оптимизировать. Классика жанра:
https://ru.wikipedia.org/wiki/Устройство_Даффа
Выкидываем автомат, и внезапно код становится проще, чище, и работает быстрее. В современной разработке софта самой большой ценностью является именно простота и скорость разработки. В случае автоматов код становится тяжелым только в том случае, если вход в один и тот же кусок кода происходит из нескольких контекстов — почему я и упоминал про «пройти строго последовательно по шагам», ведь именно этот вариант прост для понимания, поскольку начальный контекст для каждого шага один и тот же. На самом деле, компиляторам тяжело понимать сложные конечные автоматы ровно по той же причине.

byko3y ★★★★
()
Ответ на: комментарий от byko3y

Можно же найти и людей

В фантастических снах? Специалист на микрозарплату работать не пойдет. А студенты нынче такие тупые, что нет никакого смысла тратить время, пытаясь их чему-то обучить.

anonymous
()
Ответ на: комментарий от byko3y

Если что-то проще сделать автоматным программированием, то это и нужно делать автоматным программированием!

И вообще, даже при работе в параллельных процессах часто появляется нужда в конечных автоматах! Просто теперь эти автоматы замаскированы под сигналы-слоты, разобраться в которых на пару порядков сложней, чем даже в самом запутанном автомате!

anonymous
()
Ответ на: комментарий от WitcherGeralt

Не надо бредить. На современных языках в 30-100 тысяч строк огромный вагон фич влазит, если юзать фреймворки и не заниматься оверинженерингом. Это и есть средний проект.

Если ты посмотришь на какую-то либу, допустим, для JS, то увидишь, что значимые либы весят порядка 20 тыс строк, например, Vue, Prosemirror, date-fns, chart.js. То есть, просто один модуль, выполняющий свою функцию - это уже 20 тыс строк. Это и есть маленький размер, это пишется в одно рыло за несколько месяцев. Два модуля - 40 тысяч, пять модулей - сто. Это уже больше года работы одного человека, и стоимость разработки, приближающаяся к стоимости простоенького автомобиля. Когда стоимость разработки становится хотя бы один BMW/Mercedes D-класса, то это уже средний размер. Верхнюю категорию здесь я задаю по размеру любой крупной софтины, будь то внутренняя разработка какого-то завода/банка, или же крупные публичные проекты вспомогательных инструментов, вроде ядра Linux, Oracle/My SQL/Postgresql/Firebird RDBMS, Docker, GCC, Emacs — короче говоря, проектов, которыми занимается много людей много времени, которые в принципе неподсильны одному единственному человеку.

Тебе, видимо, всё же построчно платят

Я повременщик, мне всё равно, сколько строк писать.

byko3y ★★★★
()
Ответ на: комментарий от byko3y

Кто в своем уме будет на жабоскрипте что-то серьезное писать? А о клиентах ты подумал? Если эта портянища в 40тыс строк загрузится в браузер, оно ж тормозить будет как не в себя!..

Поубивал бы любителей пихать больше пары сотен строк жабоскрипта на веб-странички!

anonymous
()
Ответ на: комментарий от anonymous

В фантастических снах? Специалист на микрозарплату работать не пойдет. А студенты нынче такие тупые, что нет никакого смысла тратить время, пытаясь их чему-то обучить

Студни всегда были тупыми в среднем по палате. Хороших прогеров тяжело искать в принципе, но они есть в самых разных ценовых диапазонах.

byko3y ★★★★
()
Ответ на: комментарий от anonymous

Если что-то проще сделать автоматным программированием, то это и нужно делать автоматным программированием!

Что? Сказал «а» — говори «б».

И вообще, даже при работе в параллельных процессах часто появляется нужда в конечных автоматах! Просто теперь эти автоматы замаскированы под сигналы-слоты, разобраться в которых на пару порядков сложней, чем даже в самом запутанном автомате!

Ну ты сам по сути подтвердил, что автоматы крайне неудобны.

byko3y ★★★★
()
Ответ на: комментарий от anonymous

Кто в своем уме будет на жабоскрипте что-то серьезное писать? А о клиентах ты подумал? Если эта портянища в 40тыс строк загрузится в браузер, оно ж тормозить будет как не в себя!..
Поубивал бы любителей пихать больше пары сотен строк жабоскрипта на веб-странички

Посмотри на google docs, например. У них текстовой редактор - порядка 400 тысяч строк. И ничо, работает вполне шустро на современных браузерах. Современные JS-движки выполняют JS примерно со скоростью Java, что есть вполне приемлимо для выполнения 400 тыс строк. Ну и давай не забывать, что весь код не грузится одновременно.

byko3y ★★★★
()
Ответ на: комментарий от byko3y

работает вполне шустро на современных браузерах

Угу, угу... У меня 100-страничный документ быстрей отлатешится на компьютере, чем я в гуглодоках «переверну страничку»!

Я вообще не понимаю этого прикола с гуглодоками... Это - пособие для даунов, не осиливших vcs?

anonymous
()
Ответ на: комментарий от byko3y

Так код не только писать, но ещё и поддерживать нужно, документацию писать тесты, ресерчем иногда заниматься, планированием, а сколько времени на обсуждения с коллегами уходит — вообще караул.

WitcherGeralt ★★
()
Ответ на: комментарий от anonymous

У меня 100-страничный документ быстрей отлатешится на компьютере, чем я в гуглодоках «переверну страничку»!

На чем ты эту страничку переворачиваешь? На Дюроне 1400 с фаерфоксом первых версий? У меня 20-страничный док вместе со страницей загружается за 13 секунд, после этого листается безупречно. FF 68.5.0.

Я вообще не понимаю этого прикола с гуглодоками... Это - пособие для даунов, не осиливших vcs?

При чем тут VCS?

byko3y ★★★★
()
Ответ на: комментарий от byko3y

У меня 20-страничный док вместе со страницей загружается за 13 секунд

Просто позор. В век гигагерцев оно пулей должно грузиться, а не как двадцать лет тому.

anonymous
()
Ответ на: комментарий от byko3y

При чем тут VCS?

При том, что гуглодоки имеют одну-единственную цель: совместное редактирование документов. У нормальных людей это решается просто: кладем исходники теховские на гитхаб/сосфорж/и т.п., да редактируем себе...

«Офис» - ненужное говнище, разработанное для дебилов, у которых рука к мыши приросла!

anonymous
()
Ответ на: комментарий от byko3y

20-страничный док вместе со страницей загружается за 13 секунд

Если веб-страница грузится дольше трех секунд, пользователь ее закрывает и больше никогда на это тормозное говно не ходит!

anonymous
()
Ответ на: комментарий от anonymous

Если веб-страница грузится дольше трех секунд, пользователь ее закрывает и больше никогда на это тормозное говно не ходит!

Врунишка! Ждем столько сколько нужно. Особенно гей порно сайты.

Владимир

anonymous
()
Ответ на: комментарий от anonymous

В век гигагерцев оно пулей должно грузиться, а не как двадцать лет тому

Давай невые... Работает после загрузки быстро? Работает. 13 секунд потерпишь? Потерпишь. И это на фоне того, что у меня 6000 вкладок в фурифоксе, так что это не самый быстрый вариант браузер.

byko3y ★★★★
()
Ответ на: комментарий от anonymous

При том, что гуглодоки имеют одну-единственную цель: совместное редактирование документов. У нормальных людей это решается просто: кладем исходники теховские на гитхаб/сосфорж/и т.п., да редактируем себе...

Эм-м-м... я боюсь, что классические VCS, вроде Git или SVN, в данном случае будут бесполезным мусором, потому что задолбаешься руками вносить правки.

«Офис» - ненужное говнище, разработанное для дебилов, у которых рука к мыши приросла!

Да. Сейчас как раз пишу примитивное подобие Google Docs, и постоянно плююсь от того, насколько неудобно на самом деле с ним работать, и насколько геморно повторять все эти неудобства в моем редакторе.

byko3y ★★★★
()
Ответ на: комментарий от byko3y

DOM же! css! это г...ще требующее кучи времени по сравнению с формошлёпанием. Да ещё и тормозное, если не использовать angular или не быть гуру фронтенда 80 уровня.

Shadow ★★★★★
()
Последнее исправление: Shadow (всего исправлений: 1)
Ответ на: комментарий от Shadow

DOM же! css! это г...ще требующее кучи времени по сравнению с формошлёпанием. Да ещё и тормозное, если не использовать angular или не быть гуру фронтенда 80 уровня

Angular, React, Vue, и еще гора фреймворков, включая редактор ProseMirror и Kix (Google docs) — все они функционируют, сравнивая целевую модель с текущей и применяя минимальные модификации.

https://caniuse.com/#feat=flexbox - Flexbox-ы в разной степени поддерживают все браузеры с 2012 года, с 2014 полная поддержка в FF, с 2015 полная поддержка в MS Edge. То есть, минимум пять лет полноценная поддержка во всех популярных. Работают они примерно как в Qt/GTK Layout-ы.

byko3y ★★★★
()
Ответ на: комментарий от byko3y

и еще гора не совместимых друг-с-другом костылей с диким количеством сайд-эффектов.

- поправил.
Angular ещё туда-сюда.

Shadow ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.