Javascript-форум (https://javascript.ru/forum/)
-   Оффтопик (https://javascript.ru/forum/offtopic/)
-   -   Работа начинающим веб-разработчиком -поделитесь опытом. (https://javascript.ru/forum/offtopic/55684-rabota-nachinayushhim-veb-razrabotchikom-podelites-opytom.html)

Ramundo 09.05.2015 21:37

Работа начинающим веб-разработчиком -поделитесь опытом.
 
Относительно недавно (пол-года назад) начал изучать веб-программирование, ознакомился с html, css, нативными php и js. Никаких расширений, библиотек, фреймворков и CMS не использовал ни разу, только наслышан обо всяких JQuery, Joomla, Wordpress, Yii, Backbone и тд. И еще не знаю ООП в PHP. Расскажите пожалуйста, с чем вы сталкивались, когда впервые начинали работать, каких знаний от вас требовали? Какие виды сайтов приходилось делать чаще всего?


И немного конкретных вопросов:

1) Какие библиотеки, расширения, фреймворки и ЦМС желательно и даже обязательно нужно знать ? (самый главный вопрос)


2) Действительно ли так тотально сейчас во всех конторах используют JQuery и забивают на родной JS? (Вопрос навеян многочисленными заявлениями на различных форумах о том, что JS не нужен, Jquery решает и тд.)

3)Часто ли приходится делать одно и то же на работе и использовать готовые решения?

nerv_ 09.05.2015 22:00

Цитата:

Сообщение от Ramundo
1) Какие библиотеки, расширения, фреймворки и ЦМС желательно и даже обязательно нужно знать ? (самый главный вопрос)

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

Цитата:

Сообщение от Ramundo
2) Действительно ли так тотально сейчас во всех конторах используют JQuery и забивают на родной JS? (Вопрос навеян многочисленными заявлениями на различных форумах о том, что JS не нужен, Jquery решает и тд.)

как показывает время, Jquery знать нужно т.к.:
а) эту библиотеку используют практически везде
б) в ее основе заложен ряд важных ооп паттернов
но в современном клиентском программировании ее роль постепенно и неуклонно снижается
не возможно писать на Jquery не зная JS. Неоднократно видел как предпринимались подобные попытки "котята плакали, кололись, но продолжали жрать кактус" :)

Цитата:

Сообщение от Ramundo
3)Часто ли приходится делать одно и то же на работе и использовать готовые решения?

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

Ramundo 09.05.2015 22:17

Цитата:

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

в ее основе заложен ряд важных ооп паттернов
Т.е. желательно JQuery изучить "изнутри"?

Erolast 10.05.2015 08:25

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

Цитата:

(Вопрос навеян многочисленными заявлениями на различных форумах о том, что JS не нужен, Jquery решает и тд.)
JS - язык программирования. jQuery - модуль для работы с DOM на этом языке.

Leon-on12 11.05.2015 18:59

Цитата:

Сообщение от Ramundo
1) Какие библиотеки, расширения, фреймворки и ЦМС желательно и даже обязательно нужно знать ? (самый главный вопрос)

Заходишь в гугл и спрашиваешь: самая популярная цмс. Самая распостранённая цмс. Рейтинг цмс. И так же с библиотеками и тому подобным.
По идее знать не надо ничего и самому писать чистый html в блокноте. Но этот вариант работает только при условии разработки сайта лично тобой с нуля.
Но как правило ты имеешь дело с сумасшедшим клиентом который слышал словов Jquery, и хочет что бы оно было на сайте, потому что у дади васи она есть. И что бы эта Jquery была лучше чем у него. В таких случаях не стоит вдаваться в подробности, объяснять что это такое, и что оно ему на его одностраничнике без единой строчки js даром не сдалось.

Тоже самое с цмс. Бывает что к тебе приходит клиент с conterSuperMegaDyperCMSturbo, которая вовсе не гуглится, и ты тратишь 2 часа лишь на подборку пути к админке.

Цитата:

Сообщение от Ramundo
2) Действительно ли так тотально сейчас во всех конторах используют JQuery и забивают на родной JS? (Вопрос навеян многочисленными заявлениями на различных форумах о том, что JS не нужен, Jquery решает и тд.)

Без понятия. Jquery по моему используют сосунки, которым лень прописывать getElement. Человек из яндекса сказал что они пытаются максимально отстраниться от сторонних библиотек, и используют их в крайней необходимости.
На сколько я понимаю Jquery используется в основном для реализации кроссбраузерности.
С другой стороны когда от тебя будут требовать конфетку за цену навоза, невольно забиваешь на то что бы сделать всё как надо и лепишь туда Jquery и юзаешь её для ускорения процесса.

Цитата:

Сообщение от Ramundo
3)Часто ли приходится делать одно и то же на работе и использовать готовые решения?

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


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

EmperioAf 15.05.2015 23:30

Цитата:

Сообщение от Leon-on12
Jquery по моему используют сосунки, которым лень прописывать getElement. Человек из яндекса сказал что они пытаются максимально отстраниться от сторонних библиотек, и используют их в крайней необходимости.

Когда я делал свой сайт мне необходимо было динамически менять содержимое селекта. Я не нагуглил ничего лучше чем методы JQuery: append и empty

Gozar 15.05.2015 23:42

Цитата:

Сообщение от nerv_
а) эту библиотеку используют практически везде

Везде где нужна совместимость со старым мусором, вроде IE8, в остальном могут использовать её нигде.

Цитата:

Сообщение от Ramundo
мечтаю участвовать в разработке хайлоадов

Свой мир мы строим сами ;)

Цитата:

Сообщение от Leon-on12
По идее знать не надо ничего и самому писать чистый html в блокноте. Но этот вариант работает только при условии разработки сайта лично тобой с нуля.

Ага, ага, а компьютер использовать в библиотеке и ходить туда с дискеткой.
Sublime, Webstorm, Phpstorm ... открой для себя мир автокомплита и крутых фичь.

Цитата:

Сообщение от EmperioAf
Я не нагуглил ничего лучше чем методы JQuery: append и empty

Чуваааак! :D Открой для себя insertAdjacentHTML

EmperioAf,
Angular, React, Meteor, Какой-нибудь шаблонизатор, а самое главное Babel! ;)

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

petrovich 01.06.2015 15:28

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

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

жиквери - же совсем не нужен
и для начала надо уметь все делать без библиотек

KosBeg 01.06.2015 17:02

Цитата:

Сообщение от nerv_
Неоднократно видел как предпринимались подобные попытки "котята плакали, кололись, но продолжали жрать кактус"

лично я написал для себя мини-jquery подобную библиотечку с полной поддержкой IE9+ и для меня этого достаточно,
там я осуществил основной набор нужных функций,
приблизительно 20% функционала JQuery,
и она весом получилась 10кб минифицированиго кода :dance:
в сравнение с 90кб :haha: JQuery - это очень хорошо ;)
пока что выкладывать в опен соурс не хочу, да и я думаю она нафиг никому не нужна... :(

Erolast 01.06.2015 19:57

Цитата:

и для начала надо уметь все делать без библиотек
Зачем? Чтобы привыкнуть писать велосипеды?

Цитата:

лично я написал для себя мини-jquery подобную библиотечку с полной поддержкой IE9+ и для меня этого достаточно,
там я осуществил основной набор нужных функций,
приблизительно 20% функционала JQuery,
и она весом получилась 10кб минифицированиго кода
И даже не задумался, что кто-то другой, возможно, уже сделал это?

Цитата:

в сравнение с 90кб JQuery - это очень хорошо
jQuery в гзипе 38 весит.

KosBeg 01.06.2015 20:36

Цитата:

Сообщение от Erolast
И даже не задумался, что кто-то другой, возможно, уже сделал это?

там слишком дофига ненужного функционала для меня :haha:
жаль только что в jquery нету custom build :(
Цитата:

Сообщение от Erolast
jQuery в гзипе 38 весит.

а моя мини-библа весит в гзипе около 4 кб.
есть разница? приблизительно в 10 раз
и самое главное для меня - там только нужный мне фунционал!
И как уже говорилось -
Цитата:

Сообщение от Gozar
Везде где нужна совместимость со старым мусором, вроде IE8, в остальном могут использовать её нигде.

И вообще - это у нас уже начинается холивар, а я этого не хочу! ;)

Gozar 01.06.2015 20:50

Цитата:

Сообщение от Erolast
Зачем? Чтобы привыкнуть писать велосипеды?

Это иногда очень полезно. Я перед тем как перейти на express написал свой сервер с "блекджеком и шлюхами". Но затем понял, что функционал повторяется и строение тоже, а поддерживать свой сложнее и перешел на express. Зато это помогло мне понять построение "правильного" сервера и теперь с расширяемостью нет проблем. Всего я потратил 1 неделю, пока писал серв. и 1 день на функционал express. Зато я отчетливо понимаю, что происходит.

За исключением одного бага, который не мешает, но разбираться сейчас нет времени. Может это и не express виноват, хотя...

У тебя какая-то мания на велосипеды!

Gozar 01.06.2015 20:55

Цитата:

Сообщение от KosBeg
моя мини-библа весит в гзипе около 4 кб

Ахаха https://github.com/seolog/corn.js/blob/master/corn.js а моя 394 байта в несжатом виде, кто ещё хочет померить? Предупреждаю, у меня короче :)

KosBeg 01.06.2015 21:17

Цитата:

Сообщение от Gozar
моя 394 байта в несжатом виде

в этот размер вместился CSS3 поисковый движок при помощи querySelectorAll, Add event listener и Remove event listener
это очень круто!
только у меня вопрос:
а какая лицения этой библиотеки? это я без шуток! вреале прикольная штука =)

Gozar 01.06.2015 22:12

Цитата:

Сообщение от KosBeg
в этот размер вместился CSS3 поисковый движок при помощи querySelectorAll, Add event listener и Remove event listener
это очень круто!

Ну вот, как всегда, а главное никто не замечает, там есть фильтрация и возвращается массив ;)
Filter return array. If second argument is function, it's filter


q('div', function (i) { if (i.className.search(/clone-url/) != -1){ return i;}})

//вернет только массив! элементов у которых есть class clone-url

Потом можно на нем вызывать forEach, а не какое-то непонятное говно, на которое еще и методы не придумали.

Цитата:

Сообщение от KosBeg
а какая лицения этой библиотеки?

Любая. Делай с ней что хочешь. :) https://ru.wikipedia.org/wiki/%D0%9B...B8%D1%8F_M IT

Цитата:

Сообщение от KosBeg
это я без шуток

Мдя, спрашивать о лицензии на 3 строчки кода, когда в стране более миллиона пиратских винд. Мсье, ну вы чего-то странного надышались? Ну хочешь перепиши её на полные названия. Скажу по секрету мне до лампочки лицензия. Если хочешь говори, что это ты её изобрел.

KosBeg 02.06.2015 11:07

Цитата:

Сообщение от Gozar
Мсье, ну вы чего-то странного надышались?

не привык я без разрешения чужое брать :no:
Цитата:

Сообщение от Gozar
когда в стране более миллиона пиратских винд

в самого пиратка :D
Цитата:

Сообщение от Gozar
Если хочешь говори, что это ты её изобрел

этого точно не будет :victory:

Gozar 02.06.2015 11:39

Цитата:

Сообщение от KosBeg
не привык я без разрешения чужое брать

Я разрешаю, а что лицензия не подходит? Напиши какая самая бесплатная и с которой можно всё, я ту и впишу туда. Эта микролиба скорее эксперимент. Она для консоли придумывалась и для грейсманки. В большом проекте не советую.

Цитата:

Сообщение от KosBeg
в самого пиратка

Ай, яй, яй. У меня линукс. Хотя скоро винды будут бесплатными... Хотя я всё равно останусь на линукс :)

Gozar 02.06.2015 11:43

Тут код, как это все начиналось. http://javascript.ru/forum/project/4...multi-del.html http://jsfiddle.net/2HKCX/5/

KosBeg 02.06.2015 11:56

Цитата:

Сообщение от Gozar
Я разрешаю, а что лицензия не подходит?

все подходит)))

Всем советую:
вот сайтец, зайдите и посмотрите - JQuery не нужен! - youmightnotneedjquery.com
jQuery считается вредным - habrahabr.ru/post/259223/

Gozar 02.06.2015 16:06

Цитата:

Сообщение от KosBeg
JQuery не нужен!

Попробуй React js или angular. В React точно без jquery, потому что это противоречит их идеологии. Но в нем и document.querySelector не нужен ..., там есть refs.

jquery обычно используется как:
1. наговнокодить побыстрому, cдать и забыть
2. совместимость со всяким старьем

У меня есть маленькая библиотека, которая мне больше полезна, чем jquery.
Она
1. осуществляет поиск по классу или атрибуту от элемента вверх к корню DOM.
2. она считает размеры окна и возвращает квадрат заданных размеров отцентрованный.
3. она умеет ajax send DataForm совместимость с ie6+ через iframe

Весит она 3кб. Остальные методы я использую нативные. И да, я пишу прямой for ++, вместо обратного while -- и использую document.getElementById и меня это совсем не парит ;)

Erolast 03.06.2015 05:43

Цитата:

Всего я потратил 1 неделю, пока писал серв. и 1 день на функционал express.
Я изучил функционал express за 1-2 дня, не тратив недели на велосипеды.

Цитата:

У тебя какая-то мания на велосипеды!
Посыл был просто о том, что легкие альтернативы jQuery уже есть, и неплохо бы их пересмотреть перед написанием своей.

Цитата:

И да, я пишу прямой for ++, вместо обратного while
А как же кошерный for of?

Gozar 03.06.2015 11:32

Цитата:

Сообщение от Erolast
Я изучил функционал express за 1-2 дня, не тратив недели на велосипеды.

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

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

*При изучении любой новой среды изобретение велосипедов неизбежно!

Цитата:

Сообщение от Erolast
А как же кошерный for of?

Ничего, что он поддерживается либо в определенных браузерах, либо полифилы нужны? https://developer.mozilla.org/ru/doc...ments/for...of

Цитата:

Сообщение от Erolast
Посыл был просто о том, что легкие альтернативы jQuery уже есть, и неплохо бы их пересмотреть перед написанием своей.

Для этого нужно знать, что они есть и на горьком опыте понять, что свои работают хуже, а по этому см. *

nerv_ 03.06.2015 14:48

Цитата:

Сообщение от Gozar
Ничего, что он поддерживается либо в определенных браузерах, либо полифилы нужны?

Он транслируется нормально в es5 с помощью babel.
Как ты его полифилить собрался непонятно. Будет просто синтаксическая ошибка.

Цитата:

Сообщение от Gozar
Я строил сервер и вырезав из него экспресс

не ясно, зачем его (модуль) вырезать, если можно просто не устанавливать/подключать :)

Gozar 03.06.2015 18:46

Цитата:

Сообщение от nerv_
Он транслируется нормально в es5 с помощью babel.

Где-то нет babel. Если он у тебя везде, то это ничего не значит.

Цитата:

Сообщение от nerv_
не ясно

Бывает.

Цитата:

Сообщение от nerv_
зачем его (модуль) вырезать, если можно просто не устанавливать/подключать

Хороше же когда можно? Или что? Можешь не подключать, можешь подключать. Правда здорово что в программировании такое возможно или у тебя какие-то стереотипы с этим?

EmperioAf 03.06.2015 19:42

Не хочу создавать новую тему, и спрошу в этой:

на сайтах rabota.ru, hh.ru, rabota.yandex.ru практически во всех вакансиях "верстальщик" есть 2 таких пункта:
1) "понимание принципов адаптивной (CSS3, HTML5) и кроссбраузерной верстки;"
2) "Уверенное владение HTML5, CCS3, JavaScript (jQuery);"
Обычно эти пункты стоят первыми в списке требований.
Это действительно так важно для работодателя?

Erolast 03.06.2015 20:38

Цитата:

Написание велосипедов дает представление о среде в которой пишешь.
Да.

Цитата:

При изучении любой новой среды изобретение велосипедов неизбежно!
Да.

Цитата:

Для этого [пересмотра уже имеющихся легких альтернатив jQuery] нужно знать, что они [аналоги jQuery] есть и на горьком опыте понять, что свои работают хуже
Да.

Я ничуть не критикую написание велосипедов на пути к лучшему (сам сейчас этим занимаюсь). Я критикую кустарное дублирование уже имеющихся проектов.

Makarov 04.06.2015 17:41

Цитата:

Сообщение от EmperioAf (Сообщение 373730)
Не хочу создавать новую тему, и спрошу в этой:

на сайтах rabota.ru, hh.ru, rabota.yandex.ru практически во всех вакансиях "верстальщик" есть 2 таких пункта:
1) "понимание принципов адаптивной (CSS3, HTML5) и кроссбраузерной верстки;"
2) "Уверенное владение HTML5, CCS3, JavaScript (jQuery);"
Обычно эти пункты стоят первыми в списке требований.
Это действительно так важно для работодателя?

1). Ну типа да. Странно что в вакансии верстальщика требуют верстать?)
2). хтмл и цсс да, а вот "уверенное владение" js(jquery) для верстальщика - чаще всего хрень. jQuery подключать умеет - и то хорошо.

EmperioAf 04.06.2015 20:08

Цитата:

Сообщение от Makarov
1). Ну типа да. Странно что в вакансии верстальщика требуют верстать?)

для меня "responsive design" звучит как мантра, потому что мне не совсем понятно что это. Наверное нужно много блочно верстать и я пойму...

Safort 05.06.2015 02:14

EmperioAf,
Цитата:

для меня "responsive design" звучит как мантра, потому что мне не совсем понятно что это.
про отзывчивый/адаптивный дизайн написано довольно много хороших статей. Стоит только поискать.

EmperioAf 05.06.2015 20:24

Цитата:

Сообщение от Safort (Сообщение 373877)
EmperioAf,

про отзывчивый/адаптивный дизайн написано довольно много хороших статей. Стоит только поискать.

всё что я за последние месяцы читал про адаптивный дизайн относится к CSS Media queries и написанию размеров блоков в процентах. И, интуитивно кажется, что для адаптивного дизайна будет написано лишь 10-15% от общего CSS кода.
А мантрой мне это кажется, потому что пишут обычно в туториалах примерно так:
@media all and (min-width: 768px) {
/*
some code
*/
}
а что обычно в этом some code обычно содержится не пишут. Наверное я немного торможу...

Gozar 05.06.2015 20:54

Цитата:

Сообщение от EmperioAf
а что обычно в этом some code обычно содержится не пишут

костыли там пишут и переопределяют классы, чтобы элементы лезли в эти 768px по ширине. Увеличивают шрифты меню и делают ссылки в 48px.

В идеале как на анимации тут: https://developers.google.com/web/fu...-fundamentals/

Но в действительности, сам советчик(он же гугл) не придерживается своих же советов, приходиться писать заглушки для устройств перечисленных в google dev tools в chrome.

Правильные сайты должны быть 2 видов: desktop и mobile, но не все могут это себе позволить, т.к. очень часто это просто адский труд, нафиг никому не нужный.

Но "чёрный" властелин болт на всех ложил и требует, чтобы все проходили верификацию, даже если от этого сайту только хуже.

Вот такой он вот *** современный адаптивный дизайн!

Erolast 06.06.2015 10:27

Цитата:

костыли там пишут
Либо используют flexbox :)

Gozar 06.06.2015 10:46

Цитата:

Сообщение от Erolast
Либо

И

Что не отменяет костыли.


Часовой пояс GMT +3, время: 02:28.