Новости информационных технологий - 25493

Как вы наверное знаете, в php есть интересная функция для обработки данных, поступающих из командной строки: getopt. Но есть одна маленькая проблема — она неправильно работает в CodeIgniter, да и не совсем удобная.

А так как у меня было немного свободного времени, желание написать что-нибудь своё опен сорсное, попробовать в деле github (сижу на hg+bitbucket), и наконец сделать что-то полезное для тухнущего CodeIgniter и его сообщества, я решил написать свой костыль, призванный немного скрасить написание cli скриптов на данном фреймворке.
Оно умеет самый минимум — искать заданные аргументы, производить их валидацию (если не указаны обязательные) и выводить подсказки по использованию вашего скрипта, а при желании легко может быть допилено для использования без привязки к CodeIgniter:

CodeIgniter Command Line library — небольшой ассистент для работы с CLI
Читать полностью »

Доброго времени суток, уважаемые читатели.
Сегодня вам предоставляется возможность прочитать впечатления студента Computer Science Center-а по итогам первого года обучения.

Bio: маленькое отступление

Я студент 3-его курса СПбГУ НИУ ИТМО, учусь на кафедре «Высшей математики». Туда я поступал, так как мне была интересна математика, информатика и все, что с ними связано. Но, как это часто бывает в системе образования в России, я был несколько разочарован в своих ожиданиях: я думал, что поступлю туда, где мне расскажут много теории и научат применять ее на практике для решения конкретных задач. Теорию преподают очень хорошо: преподаватели действительно специалисты в своих областях и отлично владеют не только материалом, но и техникой его преподавания; но есть ряд предметов, которые, как мне кажется, должны были быть «по выбору», но явились обязательным, что несколько снижало общий настрой к обучению. А вот с применением на практике оказался облом: практически никаких интересных проектов, которые бы включали в себе актуальные на практике вопросы, обнаружено не было. И, если честно, до недавнего времени, я не совсем понимал что же я буду делать по выходу из института: быть «чистым» программистом не хотелось, а заниматься математикой я вообще не понимал как.

Поступление

Первый и самый главный вопрос на который нужно ответить, перед тем как начать обучение чему-либо где-либо, это вопрос: «Для чего мне это нужно?».

Читать полностью »

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

function Loader()
{
    this.load = function()
    {
        $.ajax({
            url: '/test.php',
            success: function(data, textStatus, jqXHR) {
                // здесь уже никак нельзя обратиться к объекту класса
                console.log(this); // this содержит внутренний объект jQuery,
                                   // вызывающий функцию success
            }
        });
    }
}
(new Loader()).load();

Читать полностью »

Зачем?

Вопрос “Зачем?” — самый главный при принятии любого решения. В нашем случае причин было несколько.

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

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

Но в Mail.Ru Group есть целая команда высококвалифицированных людей, знающих JS, способных самостоятельно написать инструмент, а самое главное — они же им и будут пользоваться.

Во-вторых, задачи. Возьмем проект Почта@Mail.ru. Мы не можем отказаться от шаблонизации на сервере – нам нужна быстрая загрузка при первом входе. Мы не можем отказаться от шаблонизации на клиенте – люди должны видеть высокую скорость реакции на их действия, а значит, обязателен AJAX и шаблонизация на клиенте.

Проблема очевидна: два набора совершенно разных шаблонов на сервере и на клиенте. А самое обидное, что решают они одну и ту же задачу. Дублирование логики нас просто измотало.

v8 — это интерпретатор JavaScript, а значит, мы можем получить один шаблон, который работает как на сервере, так и на клиенте.

В-третьих, скорость. Прочитав много статей, в которых хвалят скорость v8, решили, что надо проверить их справедливость. Но сначала нужно было понять, каким мы хотим видеть новый шаблонизатор.
Читать полностью »

Это небольшая история страданий, боли, взлетов и падений в попытках ускорить работу RaphaelJS на больших и сложных SVG. Если вы страдаете от подобных проблем, то не стоит ждать в конце этой статьи серебряной пули, но, надеюсь, что про наш путь поиска решения будет интересно прочитать всем.

Читать полностью »

Hostkey.ruПривет читатель!

Мы запустили новую акцию под «Windows VPS». Фишка акции в том, что если разместить сайт на Windows-сервере, то можно получить 2 месяца аренды бесплатно.
Читать полностью »

Чудесная штука генеральная уборка: всегда можно найти кучи вещей, о существовании, которых никогда не подозревал. Вот и меня угораздило забраться в ящик с макулатурой. Жаль, что не могу передать выражение своего лица, когда я нашел журнал «Крокодил» за июнь 1985 года (№ 17). В силу того, что журнал вышел за долго до моего рождения, я нашел в нём много смешных вещей (по крайней мере они сейчас таковыми кажутся).

Но в особенности меня порадовала статья «Ставка — на перфокарту» А. Моралевича. Собственно, да простит меня хабр, я не могу не поделиться этой статьёй.

image

Читать полностью »

Всем привет.
Это блог компании Nekki. Основное направление нашей деятельности – разработка и издательство интернет-проектов и многопользовательских онлайн-игр. Здесь мы будем рассказывать вам о своих продуктах и обо всем, что нас вдохновляет.

Читать полностью »

План аварийного восстановления — уверенность в завтрашнем дне для всей компании и спокойный сон ИТ отдела
Знакомая ситуация?

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

Есть такая штука – непрерывность бизнеcа. Эта сфера уже достаточно развита и подразумевает, что ваш бизнес может продолжить работу без происшествий даже после попадания метеорита в дата-центр или офис. Интересно, что сейчас в России успешное внедрение планов аварийного восстановления бизнеса обладает побочным эффектом в виде быстрого карьерного роста предложившего и внедрившего. Читать полностью »

Доброго времени суток, уважаемые читатели! Сегодня я хочу рассказать Вам о том, как за несколько минут при помощи CSS3 создать такую вот красоту:
Анимированные картинки на CSS3
В чём вся красота вы поймёте попозже.


Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js