1 января 2010 г.

Aussie Style New Year's Eve

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

Сидя дома днем 31 декабря я заранее посмотрел новостные выпуски разных каналов (да, я купил антенну с усилителем и теперь ловлю HD каналы). Там показывали как еще с 10 утра толпы людей начали оккупировать Circular Quay и Royal Botanic Gardens. Ставили палатки, стелили покрывала, готовились там остаться всерьез и надолго. Всего ожидалось более 1,5 миллионов человек. Обещали грохнуть 6 тонн пиротехники. Ну, кто бы сомневался в местном размахе.

Сильно сомневаясь, что мне удастся попасть в сколь-либо приличное место, я составил гениальный план: в 7.36 выехать на поезде в город, выйти на Circular Quay, а там видно будет. Ну что же, это все сделать несложно. Приехал на Circular Quay, и да узрел масштаб трагедии: людей было не просто много, а просто чуть ли не в 2 слоя. Полиция оцепила пристань и больше туда никого не пускала. Что ж, я и не планировал быть на пристани.

Наиболее удобное место для наблюдения за салютом было, на мой взгляд, в Royal Botanic Gardens. Туда я и двинулся против течения по Macquarie street. По пути сделал наблюдения: автомобильное движение в CBD было напрочь перекрыто, кроме одной линии для автобусов. Кругом были полицейские патрули и автомобили с сиренами. Помимо полицейских были мобилизованы спасатели и береговая охрана. Помимо автомобильных было много конных патрулей, на фоне которых многие любили фотографироваться.

Итак, добрался до Royal Botanic Gardens. Там была куча заграждений и полицейских. Пускали только по билетам. Я и не знал, что они существуют. Максимум народа, вмещаемого Royal Botanic Gardens - 20000. Облом. Что ж, будем искать дальше. Пошел вдоль берега, напоролся на базу ВМФ. Туда, ясное дело, не пускали. Прошел вдоль нее, думал, что она дальше кончится. Не кончилась :(

Пришлось идти назад. Оставалось только одно место, откуда более-менее что-то было видно: Woolloomooloo Bay. В него вдается длинный пирс, до конца которого я и дошел. Там тоже было немало людей, но я нашел себе место на его углу. Минут 15 сидел там, ждал начала 9-часового салюта. Перед салютом над берегом пролетел полицейский вертолет с прожектором, повисел, посветил на людей, и улетел. Вот что удалось снять:
[Image]
[Image]


Длился салют 8 минут и не был особо интересным. Видимо, основное было припасено на 12 часов. Значит надо двигаться поближе к мосту и столбить там место. Однако, так как времени было полно, я решил пройтись по CBD. Когда еще шанс будет просто так походить по проезжей части. Пошел в Hyde Park, дошел до Liverpool street, по ней дошел до George street и уже по ней на север.

На George street творился армагеддон и мракобесие: вся улица, по всей ширине была наводнена людьми. Сотни тысяч людей заполнили центральные улицы, ведущие с юга на север: George street, Pitt street, Castlereagh street, остальных не видел. И вся эта неимоверная толпа людей шла на север, к мосту. Где-то из зданий доносилась дико громкая музыка, люди танцевали, пели, дудели в дудки. У многих были хемилюминесцентные трубки. Кругом все светилось, шумело и смеялось. Полицейские были расслаблены, но внимательны. Магазины и всякие фаст фуды работали в ударном режиме.

Ближе к мосту из-за барьеров движение почти встало, но, в конце концов, удалось пройти в арке под мостом и выйти на лужайку, с которой я снял оперу:
[Image]

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


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

По гавани ходило множество судов, все в неоновых трубках с пассажирами на борту. Проходя под мостом они давали нам гудки. Особенно качественно получалось у пароходов. Да, здесь были настоящие пароходы. Толпа отвечала восторженными криками и дудением. Несколько раз проносились полицейские скоростные катера, которые мотались по всему заливу.

Ко мне подошла молодая пара, стали так же как и я ждать. Внезапно я понял, что они говорят по-русски. Хе. Познакомились: Олег и Юля из Москвы. На удивление адекватные люди. Часа полтора с ними говорили. Водку не пьянстововали, безобразие не нарушали. Пока стояли там, ко мне сбоку подошел мужик, который и внешностью и манерами и одеждой сильно напоминал капрала Клингера из сериала M.A.S.H. Одет был во что-то типа одежды монахинь. Он начал водить у меня над головой руками. Я посмотрел на него, он сказал: "Love and peace, brother." Тоже юмор. Ну ладно, пусть будет любовь и мир. Вскоре он отошел.

На опору моста в это время проектировались разные картинки типа "Awaken the spirit", "Keep Sydney clean" и т.д. В 11.30 над гаванью дали залп салюта. Потом в 11.45. А дальше на опоре моста пошел обратный отсчет. Народ встал с земли, кто сидел или лежал, подтянулся ближе к воде. Считали все хором ten, nine, eight, seven, six, five, four, three, two, one, FIREEEEEEE!!!


[Image]
[Image]
[Image]
[Image]
[Image]
[Image]
[Image]
[Image]
[Image]

Этот фейерверк длился 12 минут. После него народ начал собираться обратно. Мы решили немного подождать, а Юля захотела сфотографироваться на фоне оперы. Так минут 10 убились. Возвращаемся назад. Мне надо домой, а им - в Чайнатаун, там с кем-то встретиться надо было. Я планировал поехать домой на ночном автобусе, которые стартовали с Town Hall на George street. Решили пока дойти до этой остановки, а там будет понятно можно ли вообще на эти автобусы попасть, учитывая такое количество потенциальных пассажиров.

Пока шли к нам подбежал какой-то парень и сказал, протягивая руку ладонью вверх: "Happy New Year." Ну, держи пять :) Путь на юг был примерно таким же как и на север: толпа людей на всю ширину улицы. Мы шли по York street. Глядя в переулки было видно, что на соседних улицах та же ситуация. Дошли до пересечения York street и George street. Там Олег с Юлей встретились с какими-то своими зкакомыми и остались. Я дал Олегу свой email, сказал, что видео салюта загоню на YouTube, они просили им как-то его передать. Попрощались, и я погнал на юг.

Возле станции Town Hall автобусами и не пахло, а вот пассажирами даже очень. Понятно, значит домой пешком пойду. И, что характерно, дошел. Вот так вот здесь отмечают новый год. Вопросы есть?

37 комментариев:

  1. Про сиднейский фейерверк я не слышал, так что ты восполнил пробел. Ну а впечатления даже через youtube яркие, в реальности смотрелось, конечно, впечатляюще.
    Ноги от многокилометровых прогулок не гудят, может пора машину покупать? ;)

    ОтветитьУдалить
  2. Вот это столпотворение!.. А шоу... кто ходил в Ухте на салют? :) Какие впечатления? ))

    ОтветитьУдалить
  3. Ноги, вроде, в порядке.
    Вот, так оно было по ТВ.

    ОтветитьУдалить
  4. Внушает! А от музыки уши не закладывало?

    Кстати, когда друг в друга начинают метать известную субстанцию талантливые люди, то это выводит дискуссию на новый уровень. Прямо таки дуэль Пейсателя с Шестом.

    ОтветитьУдалить
  5. А там не было музыки, ты ж смотрел мои видео. Ее передавали по радио. Предполагалось, что люди придут с приемниками и будут слушать. Где-то в более отдаленных местах оно, может, так и было. А здесь и так драйва хватало.

    ОтветитьУдалить
  6. Вот таки не зря Пейсателя травили. Мало досталось, хочет еще.

    ОтветитьУдалить
  7. А вот такой вопрос: в Австралии между Рождеством и Новым годом люди работают или сплошные каникулы?

    ОтветитьУдалить
  8. 25, 28 и 1 - выходные. А между ними работают, но так, пофигистски.

    ОтветитьУдалить
  9. 28 - День патентования жевательной резинки? :)

    ОтветитьУдалить
  10. Какой кошмар! Я уже устала от этого нескончаемого праздника жизни... день с ночью перепутался окончательно :) Что дальше будет?...

    ОтветитьУдалить
  11. А, кстати, с Рождеством всех!
    :)

    ОтветитьУдалить
  12. Hibernate тебе поможет, дочь моя :)

    ОтветитьУдалить
  13. И вас также с Рождеством! Малибу удалось? ;)

    ОтветитьУдалить
  14. "дочь моя" - а ты проникся духом праздника, по-церковному так)))

    Малибу? Не... Это мы искали достойное завершение встречи выпускников. Итог - Белые ночи.

    ОтветитьУдалить
  15. Ладно, я, пожалуй, глубже копать не буду.

    ОтветитьУдалить
  16. Комменты начали жить своей жизнью. :)

    ОтветитьУдалить
  17. Эмулятор Commodore 64 на JavaScript. =:| Лет через 15, глядишь, и API Win7 съэмулируют.

    ОтветитьУдалить
  18. Не, не сэмулируют. API, в отличие от Commodore слишком глючный. Пример ReactOS тебе в зубы :)

    ОтветитьУдалить
  19. try
    {
    Holidays.Finalize()
    }
    catch (Exception ex)
    {
    if (ex.Error==Errors.BottlesTooManyExist)
    foreach (bottle FullBottle in Bottles)
    FullBottle.EmptyToSink();
    }
    finally
    {
    Work.TryToBegin();
    }

    ОтветитьУдалить
  20. У меня все попроще:

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd" >

        <bean class="org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator" />

        <bean id="sun" scope="singleton" class="org.universe.milkyway.solarsystem.SunImplementation"  />
        <bean id="rainbowLorikeet" scope="prototype" class="earth.animals.birds.parrots.lorikeets.RainbowLorikeet"  />
        <bean id="magpie" scope="prototype" class="earth.animals.birds.butcherbirds.AustralianMagpie" />
        <bean id="crestedPigeon" scope="prototype" class="earth.animals.birds.pigeons.CrestedPigeon" />
        <bean id="human" scope="prototype" class="earth.people.Human" />

        <bean id="iMac" scope="prototype" class="earth.technology.apple.iMac" >
            <property name="programsList" >
                <list>
                    <value>MacOSX 10.6</value>
                    <value>Adobe Reader</value>
                    <value>NetBeans</value>
                    <value>iTunes</value>
                </list>
            </property>
            <property name="documentsList" >
                <list>
                    <value>Spring in Action 2nd edition.pdf</value>
                </list>
            </property>
        </bean>
        <bean id="headphones" scope="prototype" class="earth.technology.sennheiser.hd212" />
        <bean id="copyBook" scope="prototype" class="earth.stuff.woolworth.GenericCopyBook" >
            <property name="colour" value="red" />
        </bean>
        <bean id="pen" scope="prototype" class="earth.stuff.woolworth.GenericPen" >
            <property name="colour" value="blue" />
        </bean>
        <bean id="thermometer" scope="singleton" class="earth.technology.chinesebrands.GenericThermometer" >
            <property name="temperature" value="27" />
        </bean>

        <bean id="artur" scope="singleton" class="earth.people.Human" >
            <property name="toolsList">
                <list>
                    <ref bean="iMac" />
                    <ref bean="pen" />
                    <ref bean="copyBook" />
                    <ref bean="headphones" />
                </list>
            </property>
        </bean>

    </beans>

    ОтветитьУдалить
  21. А потом:

    package org.art.spring;

    import java.util.ArrayList;
    import java.util.LinkedHashMap;
    import java.util.List;
    import java.util.Map;
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.support.ClassPathXmlApplicationContext;

    public class MainClass
    {
        public static void main(String[] args)
        {
            ApplicationContext context = new ClassPathXmlApplicationContext("org/art/spring/spring.xml");

            Map<String, Integer> creaturesCounts = new LinkedHashMap<String, Integer>();
            List<Object> environment = new ArrayList<Object>();

            creaturesCounts.put("Lorikeets", (int) (Math.random() * 5));
            creaturesCounts.put("Magpies", (int) (Math.random() * 20));
            creaturesCounts.put("Humans", 4400000);
            creaturesCounts.put("Crested pigeons", (int) (Math.random() * 10));

            environment.add(context.getBean("sun"));
            environment.add(context.getBean("thermometer"));

            int iterationCounter = 0;
            for (Integer count : creaturesCounts.values())
            {
                for (int i = 0; i < count; i++)
                {
                    Object creature = null;

                    switch (iterationCounter)
                    {
                        case 0:
                            creature = context.getBean("rainbowLorikeet");
                            break;
                        case 1:
                            creature = context.getBean("magpie");
                            break;
                        case 2:
                            creature = context.getBean("human");
                            break;
                        case 3:
                            creature = context.getBean("crestedPigeon");
                            break;
                    }

                    environment.add(creature);
                }

                iterationCounter++;
            }

            Human artur = context.getBean("artur");
            environment.add(artur);

            while (true)
                try
                {
                    artur.study();
                } catch (HasGotHungryException ex)
                {
                    artur.cook();
                    artur.eat();
                } catch (NoFoodException ex)
                {
                    artur.buyFood(woolworths);
                } catch (WantsToSleepException ex)
                {
                    // Depends on the airport schedule.
                    artur.sleep(Math.random() * 7200000 + 6*60*60*1000);
                } catch (ShowerNeededException ex)
                {
                    artur.takeShower(soap, shampoo, sponge);
                } catch (ShavingNeededException ex)
                {
                    artur.shave(razor, gel);
                }
        }
    }

    ОтветитьУдалить
  22. Жаба - ацтой! Многабукаф.

    Как провел эти дни? Поиски работы продолжаются или пауза?

    ОтветитьУдалить
  23. Щас холивар закачу. Тут не столько Java сколько Spring.

    ОтветитьУдалить
  24. Было бы что интересное - написал бы.
    Ничего нового, с работой пока не парюсь. Поглядываю, но там ничего интересного.

    ОтветитьУдалить
  25. А зачем я тогда это написал? ;)

    Кстати, мнение дяди Тома по поводу object-relational mapping. Выводы немного предсказуемы.

    ОтветитьУдалить
  26. Ну, Кайт слегка не о том.

    Я и сам офигел от идеи ORM когда-то.
    По мне так это удобно использовать для простых СУБД, без особых наворотов. А вот со сложными надо думать как рулить. Слишком много теряется под этим persistence layer.

    Тут выхода 2: самому руками писать запросы и процедуры и отображать сущности в классы, или использовать ORM.

    ORM предпочтительнее, там многие проблемы уже решены. А руками это долго делать.

    Короче, думать надо. ORM легко может стать великим злом.

    ОтветитьУдалить
  27. Вот это да!... Почти модель мира)
    PS. Spring, ORM... Совсем уж не умничайте, а? Проще надо быть, ближе к народу... :)

    ОтветитьУдалить
  28. Про ORM Коля начал.
    А эти куски кода... ну, тренируюсь я так :)
    Там много интересного, если поразбираться.

    ОтветитьУдалить
  29. Мир ты спроектировал какой-то странный: птицы и люди. Кенгуру где, а?

    ORM не мой, я просто разместил ссылку.

    ОтветитьУдалить
  30. Кенгуру я не видел и ими можно пренебречь.

    ОтветитьУдалить
  31. Пренебречь кенгуру?! Да ты что? Тогда не хватает утконоса) и... еще можно было бы что-нибудь добавить... Общение с блоггерами)

    ОтветитьУдалить
  32. Присмотрелся еще раз, да ты читер: вечная молодость while (true)!!!

    ОтветитьУдалить
  33. Да ну вас нафиг, это бета-версия.

    ОтветитьУдалить