• OpenSource-курсач, или заставляем преподавателя выпасть в осадок

      Собственно вот. Закончила и готовлюсь к защите. А попутно готовлюсь к тому, что преподаватель будет хлопать глазами, аки невинное дитя, и спрашивать — «ЧТО ЭТО»? Но придраться будет не к чему, и он таки зачтёт мне курсач, ибо… куда денется :)

      Собственно, я — студентка-заочница, работающая по специальности куда дольше, чем по ней обучаюсь (да-да, женщина-программист — не фантастика, мы существуем). Преподаватель — выпускник местного педвуза, по совместительству классический, я бы даже сказала, клинический одинэсник, кое-как копошащийся в Дельфях, но сам, похоже, не написавший ни одного рабочего приложения. Курсач — обычное, я бы даже сказала, наибанальнейшее задание по написанию софтины, которая проводит тестирования. Вот только идти по обычному «шланговскому» пути и писать это всё кое-как на остоедреневшей дельфятине (или, ещё «лучше», скатывать с Тырнета готовые варианты, коих развелось до неприличия много) мне не хочется — всё же, ви таки не повегите, я хочу чему-нибудь новому научиться. А попутно и слегка повыпендриваться и утереть нос пафосным преподам — этого у меня не отнять, это я люблю (какая женщина не любит покрасоваться, а?), причём ещё с тех пор, как в 11 классе школы написала схожую софтинку не на турбопаскале, как все нормальные ученики, а на Перле. :))
      Читать дальше →
    • Танцы с бубном, часть 2 — tabbed menu в Drupal

        Собственно, продолжение вот этого хабратопика, что называется, «по просьбам трудящихся». И прежде чем я начну, я приношу кучу искренних благодарностей хабраюзерам, не ленившимся слать багрепорты и тем самым помогавшим «вылизать» как следует результат. Пусть нет предела совершенству, и пару шероховатостей мне ещё предстоит пофиксить — но в любом случае, лучше, чем было изначально. А теперь я расскажу вам, как я натянула всю эту кухню на систему меню в Drupal.
        Читать дальше →
      • Танцы с бубном для блондинок, или о tabbed menus и хитрой работе с графикой

          Собственно, перепал мне не так давно небольшой заказец. Вроде и несложный — а потанцевать с бубном немного пришлось. А всё из-за того, что заказчик оказался немного «падкой на дизайн блондинкой» (образно говоря), и требовал строгого соответствия конечного результата макету. Требовал попиксельно, и его совершенно не волновали такие вопросы, как валидность, семантичность и всё такое. «Хоть таблицами сверстай, а сделай». И сегодня речь пойдёт о том, как в таких условиях сделать весьма хитровыделанно нарисованное меню табами. Как и за свой код не устыдиться, и не пасть в грязь лицом перед заказчиком, вот в чём вопрос?
          Читать дальше →
        • Примеры для подражания и Мечта с большой буквы

            Для начала — маленькое лирическое отступление. Вообще, странновато это — типа «получать профессию», когда шаришь в оной побольше преподавателей. К примеру — вот недавно нас, студентов-заочников, учили… конфигурять 1Ску. Большинство здешних обитателей знают, что ЭТО такое, да :) Знаете, мне, экс-похапешнице, и то это показалось достаточно тупым занятием, а SQL-запросы, переведённые как будто промтом, откровенно резали глаза. Но я таки попыталась вникнуть в суть и задавать вопросы преподавателю — просто для того, чтобы узнать побольше об объектной модели встроенного языка и провести параллели с языками, уже мне известными. Так от слов «объектная модель» и «приватные методы» преподаватель выпал в осадок! Блин, и за ЭТО я плачу деньги, ага — впрочем, об образовании я уже когда-то давно писала, не буду повторяться :))

            Так вот, к чему это я. С одной стороны, лишняя строчка в резюме — это неплохо, в случае «непрухи» всегда есть шанс не умереть с голоду. 1Сникам не так уж и плохо по провинциальным меркам платят, даже побольше похапешников, пожалуй. С другой стороны — гомосексуальным проституткам тоже неплохо платят, но это ещё не повод… аналогия, конечно, пошловатая, но примерно отражает моё отношение к занятию хоть и прибыльным, но нелюбимым делом :) Я смотрю на это и думаю — неужели я создана вот для ЭТОГО, для роли фактически обслуги у истеричных тётушек-бухгалтеров? Или для грошовых сайтецов-визиток, так популярных у провинциальных заказчиков (кои при этом считают себя богами, а разработчика — всё той же обслугой)? Тьфу.
            Читать дальше →
          • Профессиональная этика и «кулхацкеры»

              Пишу пост «на злобу дня» — ибо вчера некий народный умелец нашёл дырку в агрегаторе berspersons.ru. Нашёл — и повёл себя в высшей степени некрасиво. Мало того, что устроил бучу на хабре, так ещё и заспамил аккаунты юзеров через дыру (даже если это сделал не он, а его последователи — думать надо было, прежде чем выкладывать такое в public domain). Как юзер сервиса, я тоже попала под раздачу, да — все «вирусные» сообщения из блогов уже вычистила, пароли везде вот щас как раз меняю… и, что называется, много думаю.

              В свою бытность администратором-программистом «молодёжного портала» (читай — детского садика) http://zontik.ru с подобными персонажами приходилось сталкиваться постоянно. Ибо код у сайта на редкость дырявый (и написанный, по большей части, не мной) — ни для кого не секрет, что SQL-injection'ов и XSS'ов там было как отверстий в дуршлаге, да и сейчас, наверняка, немало осталось. И, учитывая, что основным контингентом этого сайта были тинейджеры со всем присущим им набором подростковых проблем вроде ущемлённого эго — все эти баги только так использовались ими в целях самоутверждения и сведения счетов с неприятелями. В общем, мне доводилось видеть и выложенные в сеть видеоуроки «как поломать Зонтик», и «просто так» забаненных юзеров, и сообщения от чужого имени, и даже свой собственный сбрутфорсенный пароль (так я и научилась ставить пассы из 25 и больше символов). И за каждую подобную находку, иссесьна, краснела перед начальством, а то и люлей выхватывала. И если бы я сама допустила все эти ошибки — то было бы хотя бы не так обидно. Я бы хоть знала, что я это заслужила…

              В общем, к чему я это пишу? Мне непонятна истерика, всеобщее гыгыкание-улюлюкание и стремление всеми силами «опустить» сервис, типа «ой, какие они все лохи, так им и надо, сам удалился и всем желаю, бугага». Если это и есть выражение мнения хабрапублики — то её уровень, увы, сильно упал. Как правильно написали в комментах — не ошибается только тот кодер, который ничего не пишет. Ну или пишет что-то типа хеллоуворлдов на бейсике (с) я. И все такие прям правильные, что просто звездец. Конечно, с умным видом рассуждать о перспективах транснациональных IT-корпораций (по типу «так купит ли Microsoft Yahoo») или о великом и ужасном ФРИЛАНСЕ (уж не потому ли, что на постоянную работу просто не берут?) — приятное занятие. А когда кто-то что-то реально делает, создаёт какие-то полезные сервисы (по крайней мере мне BP реально полезен) — непременно надо «опустить выскочку».

              Знаете, чем нормальный black hat отличается от кулхацкера? Black hat-ом движет что угодно — желание подзаработать, лозунг «information must be free», просто спортивный интерес — но вряд ли это будет желание выпендриться, самоутвердиться за счёт других и проорать о себе на всю Сеть. Хотя бы потому, что при хороших масштабах взлома (а не просто «заспамить чужой бложик») лишний раз светиться просто небезопасно. А кулхацкер (чаще всего малолетний) — именно что пытается показать «вы все лохи, а я крутой кодер». Возможно, я излишне эмоциональна — но меня саму всегда добивало подобное. Нашёл дыру, получил с её помощью бонус — или юзай сам, или доложи админу. А выкладывать в паблик, да ещё и с подобными комментариями — я считаю это именно что проявлением раздутого ЧСВ. Подобным людям я бы не то что руки не подала — в физиономию бы при личной встрече плюнула. Ибо предпочитаю общаться с профессионалами, а не с бандерлогами.

              P.S. Ну, и в поддержку сервиса (нет, мне за это не платят) —
            • «Гламурный» информер с Gismeteo для MODx

                Собственно, на многих сайтах так или иначе бывает полезно воткнуть сведения о том, какая нынче погода в том или ином месте нашей планеты. Поскольку содержать свою собственную метеослужбу большинству людей по меньшей мере накладно, куда логичнее воспользоваться каким-нибудь из ресурсов, предоставляющих бесплатные погодные информеры на достаточно мягких основаниях (всего лишь надо поставить ссылку на их сайт). Один из самых известных и популярных сервисов — это gismeteo.ru. Но его стандартные информеры подойдут далеко не каждому… а что, если захочется переделать дизайн информера под фирменный стиль компании, или же охватить одним информером сразу несколько городов (по умолчанию там на один информер — один город)? Вот, например, недавний заказчик, туристическая компания, захотела информер со списком мест, в которых они работают. Вот такой (скриншот конечного результата):

                чего мы хотим добиться

                Думаете, так сделать нельзя? Ещё как можно, и, более того, я уже облегчила вам работу, сегодня за вечерок написав специальный сниппет для MODx с парой демо-шаблонов!

                Читать дальше →
              • IT-образование моей мечты

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

                  Нет, у меня нет высшего IT-образования. Что мне нисколечко не мешает работать в данной отрасли и получать столько же, если не больше, сколько получают мои ровесники, протиравшие штаны в универах. А всё почему? А потому что в столь стремительно меняющейся отрасли чего-то можно достичь только при постоянном САМОобразовании, изучении технологий, и, что немаловажно, систематизации знаний. Чего люди с «корками» зачастую понять не могут, и в результате, работая в команде, можно насмотреться на такой «быдлокод», что просто диву даёшься.

                  Сейчас в куче вузов, начиная от профильных технических и заканчивая экономическими и естественнонаучными, есть специальности типа «прикладной информатики в области ...». На одной из таких я даже честно полтора года пыталась учиться — после чего вследствие проблем со здоровьем и тяжести сочетания учёбы и работы забила. О чём нисколько не жалею. Ибо как у нас сейчас учат таких, с позволения сказать, «специалистов»?
                  Читать дальше →
                • Должны ли ИТшницы уходить в декрет?

                    Навеяно соседним хабратопиком про мужиков и армию. С одной стороны, понимаю тех, кому не хочется терять год, который можно было бы потратить за изучение новых интересных технологий. С другой стороны, понимаю и тех, кто отслужил с пользой для себя (а я лично знаю несколько таких человек). НО!

                    Всё ж ИТ-шники — не только представители мужского пола. Есть и женщины в этой сфере. А женщинам, знаете ли, свойственно иногда выходить замуж и рожать детей. Пока дети маленькие — с ними должен кто-то сидеть. Устоялось так, что в декретный отпуск по уходу за ребёнком традиционно уходят женщины. Казалось бы, тоже — потерянное время, приобщение к «быдлу» и превращение в домашнюю клушу класса «дети, кухня, церковь». А вот фиг!

                    Открою маленькую тайну: ориентировочно через четыре месяца мы с любимым мужем (сисадмином, кстати) ожидаем рождения самой лучшей в мире ляльки. Да, тяжело совмещать беготню по врачам, работу на полный день, иногда нарисовывающиеся фрилансерские подработки, самообразование по части новых технологий и учёбу в техникуме заочно (всё ж хоть какую-то «корку» охота заиметь, пусть я и на 100% самоучка). Да, в отличие от работников военкомата, которым можно дать на лапу, дитё не будет тебя спрашивать, хочешь ты сидеть с ним или нет. Можно, конечно, нанять няньку, а в самом радикальном случае можно вообще не рожать детей и обходить представителей противоположного пола за километр, ибо как бы чего не вышло… но, ёлки-палки, это тот случай, когда в мире, поверьте мне, есть более важные вещи, чем всякие рейтинги, карьерный рост и прочая пиписькометрия.

                    И, да, я собираюсь совместить приятное с полезным — всё ж компов дома аж 4 штуки, книжек нечитанных тоже немеряно… фиг вам, а не домашняя клуша! Да, я всё равно буду брать подработки, читать книги и всячески учиться, благо время на это так или иначе можно будет выкроить. Хотя могла бы использовать это время, как оправдание для безделья, да. Мораль: кто ХОЧЕТ — ищет возможность. Кто не хочет — ищет причину…
                  • Стремление к совершенству

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

                      Знаете, как отдельно взятый айтишник вдруг осознаёт, что по сути является не более чем эникейщиком или быдлокодером? Да, на своей работе он считается крутым, да, для непосвящённых его действия кажутся шаманством, и, казалось бы, на этом можно остановиться… но вдруг приходит в голову ИДЕЯ! Допустим, какой-нибудь простой, но гениальный веб-стартап. Не всё ж клепать однообразные сайтики из трёх страничек в конторе «пупкин инкорпорейтед», верно? Вот, значится, идея обмозговывется, уже в голове есть и дизайн странички, и структура баз, и ещё много чего… и тут по мечтам ударяет чугунная задница реальности.

                      Читать дальше →
                    • Делаем поиск по множественным TV

                        Для начала — маленькое лирическое отступление. Поручили тут недавно мне на работе сделать небольшую базку квартир для сайта агентства недвижимости. Да такую, чтобы можно было искать квартиры аж по 5 параметрам сразу — город, район, количество комнат, планировка и цена. Ну и чтобы всё это было встроено в админку и легко редактировалось, разумеется. А надо сказать, что я работала с разными CMS — от дорогого и тяжеловесного Битрикса до самописных простеньких движочков, и в конце концов остановила свой выбор на MODx — ибо, не сочтите за рекламу/антирекламу, но то, что на том же Битриксе делалось за неделю (а именно — несложный корпоративный сайтец), на MODx спокойно делается за день.

                        Я к чему это, собственно, пишу. В практически любой CMS для реализации этой задачи пришлось бы писать дополнительный код и всячески извращаться. В MODx же это решается при помощи исключительно стандартных средств движка, и единственная вещь, которую приходится писать «ручками» — это непосредственно сама форма поиска. Пусть неочевидно (пришлось всё же покопаться по документации, пока сообразила) — но всё ж полезно.

                        Итак, задача разбивается на следующие этапы:
                        1. Создать TV для свойств, по которым будет происходить поиск.
                          Задать шаблон и логику для выводов результатов поиска.
                          Создать саму форму поиска.
                        Читать дальше →
                      • Парсим микроформаты

                        • Translation
                        Микроформаты — это способ внедрения специфических семантических данных в HTML, который мы используем сегодня. Первый вопрос, который задал бы гуру XML: «А зачем применять HTML, если XML позволяет создать ту же самую семантику?» Я не буду перечислять все причины, по которым XML был бы лучшим или худшим выбором для кодирования данных, или же почему микроформатами был выбран HTML в качестве базы. Эта статья будет сосредоточена на том, как работают базовые правила парсинга, и как они отличаются от XML-ных.
                        Читать дальше →
                      • О дизайне, или почему полиграфистам нечего делать в вебе

                          *Слегка подкорректированная статья из моего ЖЖ, думаю, здесь она больше к месту*

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

                          Сейчас объясню, за что. Тем более, что это дело даже не узкопрофессиональное, с этим может столкнуться практически каждый, желающий сделать свою пагу в Сети. Если не решит пойти по лёгкому пути типа тырения шаблона для сайта из открытых исходников или, ещё хуже, воспользоваться услугой ставшего шедевром безвкусицы narod.ru.

                          Читать дальше →