Jump to content

s0rr0w

User
  • Posts

    5139
  • Joined

  • Last visited

  • Days Won

    32

Everything posted by s0rr0w

  1. В конце 90х единственным адекватным способом верстки была табличная верстка. Это накладывает свой отпечаток. Я знаю достаточно хорошо все перечисленное, кроме PHP. Эту технологию я принципиально не учу. Для этого есть програмцы. Раза в 3 как минимум.
  2. 1) HTML, CSS, JavaScript, XML, Smarty, PHP + много всякого еще. 2) зависит от критериев оценки. Для кого-то на 3, для кого-то на 11. 3) 10 лет на рынке веб-технологий. На учебу времени ушло немного, куда больше времени ушло на переучивание. 4) максимум, как мне кажется, в районе 2 килоамериканских рублей. Дальше нужно расширять мировозрение и количество изученных технологий. Лучше всего для кодера стать ПМ. Ситуация серьезно изменилась с 2003-2004гг. Кодеры стали важным звеном в веб-производстве. Работодатели начали серьезней относиться к нанимаемым работникам. Однако выбор адекватных соискателей на рынке невелик. Я уже полтора года ищу нормального кодера, который понимает суть всех тех задач, которые стявятся перед командой разработчиков. Увы и ах, польшинство людей работают только за зарплату, и не заинтересованы в творчестве.
  3. Я бы так поступил еще лет 7-8 назад. У вас есть массив вопросов questionArray. Сгенерируйте index = Math.floor( Math.random() * questionArray.length )); А потом удалите элемент с индексом index. Все.
  4. http://www.1plus1.ua/ Правда, я не уверен, что после меня там не перековыряли все.
  5. Тут можно целую книжку написать. Все практики являются сугубо индивидуальными, и могут перениматься только частично. Начал бы свое повествование с банальностей для любого менеджера, но сложностей для 95% работников. Кодер является работником, который должен выполнять много рутиной работы. Эффективность труда зависит от ряда подходов. Есть ортодоксы-табличники, которые разумом своим остались в 90-х годах. Есть фанатики-стандартисты, которые доводят свое отношение к стандартам до маразма и этим и гордятся. Есть третий тип людей, которые всю работу расценивают с точки зрения экономической эффективности. Себя я отношу к последним. Почему именно экономическая эффективность? Потому что это залог успешной работы как кодера, так и всей компании. Есть два варианта работы над проектом - удешевить начальную разработку и удешевить изменения и дополнения. Большинство работает по первому принципу, и проигрывает. Проигрывает не сразу, а годика через три. Приведу простой пример. Вы беретесь за создание сайта-визитки, состоящем из 5-ти страниц. Оплата мизерная - 300 американских рублей. Один день вы тратите на то, чтобы найти темплейты, еще один день на то, чтобы перерисовать какие-то цвета и фоны, и день на наполнение сайта контентом. Ура, проект сдан, заказчик доволен, вы получаете 100 ар в день, и простой математический подсчет вам говорит, что при 100% загрузке вы сможете заработать аж целых 2.4 килоамериканских рублей в месяц. Неплохо, правда? Все хорошо ровно до того времени, пока заказчик не вернется к вам с расширением. Он помнит, что вы за три дня сделали ему неплохой сайт, и у него со временем возникли идеи по расширению структуры сайта. Вы с относительной легкостью добавляете пару страниц в текущий дизайн, и берете за работу, например, 20 ар. На добавление вы тратите пол дня. Ваш заработок в день составляет уже не 100ар, а всего 40. Идем дальше. Заказчик приходит к вам еще с десятком страниц. Если вы выставите ему счет в 100ар, он будет приятно удивлен, почему создание сайта стоит 300, а добавление десятка страниц - треть? Максимум, на что он согласится, так это на 30ар. 10 страниц потребуют переработки дизайна, кода и прочих радостей. Вы потратите три дня на разбор кода, переделки и наполнение контентом. Ваш заработок составит всего 10ар в день. Вы или теряете данного заказчика, или работаете себе в убыток. Теперь берем другую ситуацию, когда вы тратите на 2 дня больше, и прикручиваете простую ЦМС-инку для этого сайта. Да, однодневный заработок будет меньше, зато наполнение контентом или расширение структуры у вас будет занимать мизер времени, и вы можете вести вполне прибыльную деятельность в среднем. Аппетиты у клиентов растут постоянно, и в итоге вы сможете в конце-концов сожрать кусок пирога больше, чем сможете откусить. Теперь возвращаемся к кодингу. Закладывая чуть больше универсальности в код, вы сможете легко и быстро менять потом данную структуру. Не решайте задачу в лоб, как любят делать 95% людей на данном форуме, это путь в никуда. Как это реализуется на практике? Например, я для себя выработал стратегию минимального количества типов тегов в странице. Всякие "семантически-правильные" разметки в HTML считаю атавизмом и старьем. Язык HTML ограничен определенным количеством тегов, которые почти не отражают современные тенденции разметки страниц, и больше востребованы для текстового оформления, чем для оформления всей страницы. XML позволяет создавать свои теги, строить реально правильные семантические структуры, но есть огромная проблема в распространении данного языка в виде Microsoft и их гегемонией на рынке браузеров. Я выкрутился из этой ситуации простым способом, я перенес логическую разметку на классы. Вместо <ul><li>... я использую <div class="mainMenu"><a class="menuItem">. Становится практически неважными названия тегов, становится важным имя класса. Фанатики-стандартисты подымут бучу, что я нарушаю логику HTML, и списки нужно делать тегом списков, хотя на самом деле меню не является списком в том значении, который был вложен в UL в самом начале развития HTML. Для меню даже свой тег придумали в свое время - MENU, но потом от него отказались. В итоге в моей верстке используется с два десятка тегов. Дальнейшее развитие удешевления разработки - использование фиксированных имен классов для множества проектов, которые делают одну и ту же работу. Например, hiddenBlock, invisibleBlock, w100, w50, etc. Следующий этап - классовые константы. Например, сначала идет container, потом block, потом box, потом content. Или класс list, в котором есть item. Чтобы было понятнее, приведу простой пример <div class="menuList"><a href="#" class="menuItem">Menu item</a></div> <div class="newsList"><a href="#" class="newsItem">News list item</a></div> Или <div class="loginBlock"><div class="loginBox">...</div></div> <div class="pageContentBlock"><div class="pageContentBox"><div class="pageContent">...</div></div></div> Классы достаточно хорошо структурируются, и без особых усилий решается задача идентификации нужного блока. Следующий прием - модификаторы. Есть базовый класс, например menuItem, но этому элементу нужно добавить некую иконку как фоновое изображение. Добавляем этому элементу модификатор, например в виде класса redPoint, который будет делать только уникальную часть для этого элемента. Это можно делать инлайн-стилями, нужно смотреть по ситуации. Еще один действенный прием, который кажется идиотским, но он по своему работает. В нем есть смысл, доказано было не раз на реальных примерах. Я называют некий стиль по имени того модуля или той страницы, где он встречался впервые. Например, есть newsList, который неким образом оформляет список статей. Если на сайте нужно будет не в новостях применить список статей, то я использую базовый класс newsList, и потом применяю, если нужно, класс-модификатор. Теперь я точно знаю, что при дальнейшей модификации класса newsList, мне нужно пойти в раздел новостей и проверить, а не поломал ли я там чего. При полных абстракциях в именах классов придется пересматривать куда большее количество страниц, чтобы убедиться, что работа сделана без ошибок. Приучите себя не пользоваться линейкой для вымеривания точных расстояний между элементами. Я 80% размеров ставлю на глаз. Особенно это касается margin'ов и padding'ов. Ну и самое последнее, прежде чем приступать к порезке, внимательно изучите материал, который вы будете резать. Лучше час потерять на стадии планирования порезки, чем потом день на исправление и перепиливания лобзиком ошибок порезки. Пипетка и направляющие должны быть первым вашим инструментом.
  6. s0rr0w

    FireFox 3.0.9

    Обновились плагины, все работает как и раньше - стабильно.
  7. Adobe Flash. Если вы во flash ни бум-бум, то вы можете купить нужный функционал у любого адекватного флеш-разработчика.
  8. Вы не знаете ни одного адреса поисковика? Мы в вашем поиске помочь вам не можем.
  9. Вы в курсе, что идентификатор может встречаться только один раз на странице?
  10. Громкие и бесполезные слова. Недавно я искал CMS, которые используют Smarty. Был неприятно удивлен полным отсутствием адекватных продуктов. Смарти не ускоряет разработку, зато ускоряет дальнейшую работу над продуктом. Ваши слова - всего лишь надежда, самообман. Не очевидно. В нашем большом проекте никто даже не думает использовать фреймворки. Мало того, использование их запрещено. Но разработка идет семимильными шагами, причем некоторые части переписываются по несколько раз, каждый раз улучшая продукт.
  11. Кусок кода может отображаться нормально. А вот при определенных ситуациях глючить.
  12. Порой удивляют наивные юноши, которые думают, что форумы нужны для того, чтобы "умники" кидали задачу "лохам", которые тут же кинутся наперебой выдавать варианты один лучше другого, а "умнику" достаточно будет выбрать лучшее и абсолютно на шару получить готовенькое. Что тебе сказать, толковый ты наш, твоя задача настолько примитивна, что ее решит любой ребенок из подготовительной группы детского сада. Достаточно подумать, а что же собственно делает код, который был приведен тобой же. Банально, включить мозг, и решить задачу без сторонней помощи. Задумайся хоть на секунду. Если ты не понимаешь, как работают скрипты, html, css, то займись лучше чем-то другим. И просьба, не ходи больше на этот форум, тут тебе нечего делать. И друзьям своим всем пойди расскажи.
  13. www.google.com p.s. надеюсь, понятно?
  14. Не тому блоку значит включаете. Пробуйте применять по дереву поочередно всем родителям.
  15. Да, это последствия хромосомной энтропии в ДНК тех програмиздов, которые писали сей фекалобраузер. Решается путем установки 1. zoom: 1 или 2. position: relative или 3. display: inline в зависимости от ситуации.
  16. Я бы разрезал вот так Делаем маленькое верхнее правое скругление + кусочек правого бордюра. Позиционируем фон в правом верхнем углу. Делаем паддинг сверху на высоту фона. Потом делаем еще одну картинку - правое боковое меню + бордюр, высотой пикселей в 600 (хватит с головой) Причем снизу оставляем прозрачного фона ровно на высоту пипки и фона. Выравниваем фон по нижнему правому краю, делаем паддинг справа в 3-4 пикселя, на ширину фона. Дальше делаем нижний блок, в нем берем фон пипки, тень и бордюр, и делаем картинку шириной пикселей в 1000. Правый край будет обрезан ровно. Делаем паддинг снизу на ширину фона. А потом создаем блок, у которого есть border слева и сверху, и заливка нужным цветом. И все.
  17. По-моему, вам следовало для начала изучить матчасть перед тем, как вы залезли в дебри HTML.
  18. Что вас смущает? Что вы не можете реализовать из приведенного?
  19. http://htmlbook.ru/css/float.html http://forum.htmlbook.ru/index.php?showtopic=13354 Вы поиском умеете пользоваться?
  20. li { padding: 0 0 0 27px;} li a { padding: 0 }
  21. Коммуникации, которые я описывал, не включают влияние ПМ-а. ПМ важен, но лучше ПМ-а только Архитектор системы, который проектирует и влияет на все этапы разработки. В задачи ПМ-а входит контроль за выполнением работ, постановка глобальных задач и целей, коммуницирование между заказчиком и исполнителями. Нормальный ПМ должен знать матчасть, но только на уровне базиса.
  22. Взаимодействие только смежных этапов неправильно. Работу дизайнера должны контроллировать все участники последующих этапов. Приведу простой пример. Дизайнер, обычно, не обладает системным мышлением. Это значит, что он может нарисовать что-то, что не вкладывается в ТЗ или что не соответствует реальности. Допустим, заказчик нарисовал ТЗ, дизайнер сел рисовать по этому ТЗ, а программер сел его детально изучать. При детальном изучении оказалось, что функциональность запрашиваемого модуля нужно менять, так как это противоречит двум другим модулям. Если программер выдаст дизайнеру поправки, то не придется делать двух лишних движений - дорисовывать или перерисовывать дизайн и пересобирать код. Любые ошибки, которые можно исправить на начальных этапах, обходятся компании дешевле, чем исправления готового продукта.
  23. Проблема в том, что вы указываете блокам внутри body напрямую height: 100%, по этой причине и контент вылазит за пределы блока. Нужно указывать для нормальных браузеров min-height вместо height.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy