LINUX.ORG.RU

Покритикуйте пет-проект

 , , , ,


1

1

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

Описание - https://ddidwyll.github.io/comico

Код - https://github.com/ddidwyll/comico

Демо - https://comico.ga

Спасибо.

PS. Интерфейс немного запутанный (не для «домохозяек»). Работает только в «modern» браузерах. Так оно и задумывалось, от совместимости и простоты отказался сознательно. Планирую сделать клиент на ncurses для консерваторов.

PPS. В демо можно вандалить, буду удалять то, что нарушает УК.

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

Deleted ()

Да нормальный проект, смело иди работать. Только я не уверен, что в Краснодаре есть вакансии с Go, у нас жеж тут 99% конторок клепают на вордпресе и битриксе.

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

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

Насчет анимации, интерфейс рассчитан на гиков, мне кажется это лишним. Да и логотип сообщает о всех операциях с сервером, подгрузке картинок тоже.

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

оценивай адекватно рыночек

Что ты под этим подразумеваешь?

Иначе работу будешь искать Goдами.

Вроде бы что go, что js на рынке востребованы. Думаю на indeed и в LinkedIn разместиться, может получиться.

ddidwyll ()
Последнее исправление: ddidwyll (всего исправлений: 1)

В js стена текста. Нигде нет комментариев, jsdoc, godoc... Для ресайза картинок дёргается convert через exec? Почему ресайз внутри аплоада? Зачем внутри валидации пароля делается вставка в базу? Ну и т.д. Грязновато, как будто питонист писал.

no-such-file ★★★★★ ()
Ответ на: комментарий от no-such-file

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

ddidwyll ()
Ответ на: комментарий от no-such-file

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

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

нищеброд

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

ddidwyll ()

Если интересует мнение обычного пользователя, то:

То, что ты сделал в качестве демо, может и подойдет: демка для работодателя должна выглядеть эффектно - тут я согласен. Но в обычной жизни лучше избегать делать такие сайты. Подобным дерьмом засран весь интернет. И для меня, как обычного пользователя, количество посещаемых сайтов из-за таких подходов к сайтостроению, сократилось во много раз. Естественно, надо смотреть на ситуацию: если ты делаешь сайт для московского салона по продаже элитных авто, то там действительно могут понадобится эффектные выкрутасы - люди с большими деньгами любят эффект «вау!»)) Но, если ты делаешь сайт для_всех, тогда учитывай, что страница должна грузится быстро даже из глухой Сибири, где кроме GPRS и одноядерного селерона может ничего не быть. Как веб-разработчик, ты работаешь на конечного пользователя, посетителя сайта. Прошу, учитывай это.
Мой критерий проверки адекватности веб-разработчика: отключить скрипты сайта в браузере - если сайт продолжит нормально функционировать (будут работать ссылки на страницы, информация «текст-картинки» не пропадет, верстка не поедет), значит веб-разработчик молодец.

Планирую сделать клиент на ncurses для консерваторов.
для консерваторов.

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

PS: Удачи с трудоустройством.
PPS: Повторю: это мое мнение. Любой может иметь мнение отличное от вышесказанного.

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

Потратить десятки мегабайт трафика ради двух строчек текста... нелепо, да?

Cогласен совершенно. Именно поэтому всё приложение в gzip'е весит ~30KB (без контента), к сожалению без js в данном случае не получается, т.к. большая часть логики отрабатывает именно в браузере. Это всё таки приложение, работающее оффлайн. Потом я планирую распределённую платформу, тут подход - js по дефолту, ncurses для тех кого это не пугает, на мой взгляд, вполне оправдан.

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

Когда делаешь интерфейс в одного и фактически для себя, кажется что всё хорошо, для пользователя возможно всё не очень удобно. Подумаю, спасибо за обратную связь.

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

шел 2019-ый год...

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

Deleted ()

Так оно и задумывалось, от совместимости и простоты отказался сознательно.

Профессионалы говорят «это не баг, а фича».

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

ты тратишь их время на ожидание загрузки при медленном интернете

Есть мнение, что ожидание загрузки при переходах между страницами, которых можно избежать скриптами, хуже. Потому популярны SPA с тонной JS.

Итого: посмотреть кучу спецэффектов, потратить десятки мегабайт трафика ради двух строчек текста... нелепо, да?

Ты постиг всю раковую суть веба, причём она была таковой изначально. Ради какой-то мелочи нужно загрузить кучу говна. В произведениях фантастов середины XX века работа с компьютером была таковой: ты задаёшь компьютеру вопрос — компьютер отвечает, ровно то, что нужно. Именно поэтому гики десятилетиями упорно держались за CLI, пока хомячки недоумённо пожимали плечами, считая это ретроградством. Именно поэтому поисковики начали показывать краткую выжимку по искомому предмету. Именно поэтому сейчас бум голосовых помощников, бум ботов для мессенджеров, бум мобильных приложений для одной мелкой задачи. Миллениалам смалу привито клиповое мышление, им чуждое всё это старательство, поэтому они просто кратко спрашивают машину и получают ответ, не тратя время на перемалывание инфы. А жирновеб естественным образом отомрёт, не переживай. Нужно о другом переживать — этим подходом очень легко воспользоваться тем, кому выгодно посягать на истину и вводить людей в заблуждение в своих интересах.

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

В палемуне, кстати, штатная стартовая страница с кучей свистелок — вотще бы его как эталон ретроградства рассматривать :D Даже в Opera 12 такого нету. Видимо, это они специально, чтобы показать, сколь много эта поделка может, несмотря на некродвижок.

Moondancer ()

Я даже смотреть не буду, потому что это не имеет особого смысла. Если мой (или чей-либо из тут присутствующих) взгляд на твой проект - будет объективным, то совсем не факт, что будет объективным взгляд человека, тебя собеседующего и человека, принимающего тебя на работу. Я очень много лет в разработке, поработал в многих конторах, на разных заказчиках... и могу сказать тебе такие, не очень радующие вещи. Зачастую, для того, чтобы хорошо устроиться, нужно иметь подвешеный язык и уметь раскрывать свой хвост, как павлин. С большинством работ и заказчиков складывалась такая ситуация: чем меньше они ковырялись у меня в мозгу чайной ложкой, тем более лёгким и непринуждённым оказывалось наше дальнейшее взаимодействие. К сожалению, нужно уметь врать и строить из себя большее, чем являешься. Это совсем не значит, что нужно обманывать или кидать людей, нет, но когда на вакансию приходишь ты и говоришь правду, а потом приходят ещё пять человек и немного привирают о себе, преукрашивают свои знания и умения, - то в такой ситуации вероятность получить работу именно тебе стремится к нулю.

Deleted ()

По поводу вёрстки:

В веб-приложениях стили для тегов стараются не прописывать, всё делается через классы. Однако классы должны быть семантичными. Так писать не принято:

.row {
  display: flex;
  flex-direction: row;
}
.column {
  display: flex;
  flex-direction: column;
}
.wrap {
  flex-wrap: wrap;
}
.nowrap {
  flex-wrap: nowrap;
}
.space-between {
  justify-content: space-between;
}
.center {
  justify-content: center;
}
static_lab ★★★★★ ()
Ответ на: комментарий от static_lab

Я в курсе как сейчас принято и скорее всего для крупных приложений оно подходит. Для этого приложения использовался другой подход, не знаю насколько он распространен. Чтобы было понятно о чем я говорю лучше смотреть client/src/styles/style.scss, а не результирующий css.

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

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

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

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

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

чем меньше они ковырялись у меня в мозгу чайной ложкой, тем более лёгким и непринуждённым оказывалось наше дальнейшее взаимодействие

Подтверждаю это наблюдение.

no-such-file ★★★★★ ()