Виртуальная песочница (тм)

Thursday, November 24, 2011

Плевательница

Я при себе

Ничего не разрешаю себе уничтожать. Все старые вещи при мне. Мне пятьдесят, а все мои колготочки при мне, все ползуночки, носочки, трусики, маечки, узенькие плечики мои дорогие. Тоненькие в талииньке, коротенькие в ростике. Дорогие сердцу формочки рукавчиков, ботиночки, тапочки, в которых были ножки мои, ничего не знавшие, горя не знавшие ножки. Фотографии перебираю, перебираю, не выпускаю. Ой ты ж пусенька. Это же я! Неужели? Да, я, я. Документики все держу: метричку, справочки, табель первого класса, второго, дневники, подправочки, все документики при себе, все справочки мои дорогие, пальцем постаревшим разглаживаю немых свидетелей длинной дороги.

Все честно, все документировано, ни шагу без фиксации. В случае аварии, какую книгу хватаете на необитаемый остров? Справки. Вдруг сзади – хлоп по плечу. А-а! Это на острове?!..

– Где был с января по февраль тысяча шешешят?..
– Вот справка.

– Где сейчас находится дядя жены?
– А вот.

– Где похоронен умерший в тышяшя восемьдесят брат папы дедушки по двоюродной сестре?
– Парковая, шестнадцать, наискосок к загсу. От загса десять шагов на север, круто на восток, войти в квартиру шестнадцать и копать бывшее слободское кладбище.

– Куда движешься сам?
– А вот направление.

– А как сюда попал?
– А вот трамвайный билет.

Все! Крыть нечем. Хочется крыть, а нечем.

– Лампочку поменял?
– Вот чек.

– Что глотнул?
– Вот рецепт.

– Почему домой?
– Вот бюллетень.

– Куда смотришь?
– Вот телевизор.

– Какая программа?
– «Время».

– А четырнадцатого откуда поздно?
– Вот пригласительный билет, галстук, букет.

– Так... плитка в ванной, унитаз.
– Вот чек.

– Карниз ворован?
– Вот чек.

– Обои ворованы?
– Чек.

– Это воровано?
– Чек.

– Воровано?
– Чек.

– Тьфу!
– Плевательница.

Ох и хочется крыть. А нечем!

– Как найти в случае?
– Вот папа, мама, дядя, тетя, дом, работа, магазин, больница... Все.

– А если?..
– Вот регистратура.

– А все-таки если?
– Вот, вот и вот.

– С другими городами?
– Ничего.

– Санаторий?
– Ни разу.

– По-английски?
– Ни бе ни ме.

– Где?
– Здесь.

– А если?
– Соображу.

– А непредвиденно?
– Позвоню.

– А самому захочется?
– Спрошу.

– А если мгновенно – ответ?
– Уклончивый. Да зачем вам трудиться? Вот список ваших вопросов, вот список моих ответов, причем четыре варианта по времени года.

– Заранее?
– Да.

– Сообразил?
– Да.

– Такой честный?
– Характеристика.

– А не участвовал в развратной компании шесть на четыре, девять на двенадцать с пивом, журналами, банями, парной?
– Грамота об импотенции, участковый врач, соседи, общественность.

– При чем состоишь? Воровал?
– Водоканал.

– Тьфу ты.
– Плевательница.

– Пока...
– Все.

С высоко поднятой головой хожу. Некоторые издеваются: справки – это все, что ты накопил к старости? – Все! Причем это копии. Оригиналы закопаны в таком месте, что я спокоен. И не только я. Глядя на меня, другие светлеют. Значит, можно, значит, живет. Всем становится спокойнее. Самые строгие проверяющие теплеют, на свою старость легче смотря. Один с дамой подошел:

– А где вас искать после вашей внезапной кончины, которая произойдет...
– А второе интернациональное, сто восемь – по горизонтали, шесть – по вертикали, от пересечения три шага на север, в боковом кармане свидетельство.

– Поздравляю, выдержал, готовьтесь к следующему.
– Отметьте.
– Идите.
– Число, час, печать. Здесь, здесь, здесь.

Чуть больше времени на выход. Зато не только свободен, но и спокоен, что действительно вышел, действительно пошел, действительно пришел домой и совершенно искренне лег спать.
Read more...

Thursday, November 10, 2011

Java Day Riga 2011 - registration started!

Time: November 29th, full day event from 10-00 to 18-00.
Place: Tallink Hotel Riga, 24 Elizabetes, Riga, Latvia.
REGISTRATION (190 free tickets left at the moment of writing this)


SPEAKERS

Alexander Potochkin, Software developer at Oracle St. Petersburg
Sergey Kuksenko, Performance engineer at Oracle St. Petersburg
Martin Grebac, Principal Software Developer - GlassFish/Metro team & JAXB Lead at Oracle Czech

Jevgeni Kabanov, CTO of ZeroTurnaround
Jevgeni Kabanov is the founder and CTO of ZeroTurnaround, a development tools company that focuses on productivity. He wrote the first version of the ZeroTurnaround flagship product, JRebel, a class-reloading JVM plugin.

Jevgeni has been speaking at international conferences for over 5 years, including JavaOne, JavaPolis/Devoxx, JavaZone, JAOO, QCon, TSSJS, JFokus and so on. Jevgeni also started the first Java conference in Estonia, Geekout. He has an active research interest in programming languages, types and virtual machines, publishing several papers on topics ranging from category theoretical notions to typesafe Java DSLs.

Jevgeni is on the Expert Group for the JSR 342 (Java EE 7). He has started two open-source projects -- Aranea and Squill. You can follow Jevgeni on Twitter as @ekabanov. See http://lanyrd.com/people/ekabanov/ for conference history and schedule.

Alexey Shevchuk, Lead developer at Odniklassniki.ru

Martijn Verburg, London Java User Group
Aka 'the Diabolical Developer', A Dutch born Kiwi who's a Director at TeamSparq - a consulting and mentoring start-up in London. Outside of TeamSparq he herds Cats in various Java and open source communities and is constantly humbled by the creativity and passion found there. Currently he resides in London with by kick-boxing wife where he co-leads the LJC - London's Java User Group (a JCP EC member), runs a couple of open source projects & tries to find time for a pint at his local. You'll find him online moderating at the Javaranch or discussing (ranting about) subjects on the Programmers Stack Exchange site. He's also a regular speaker at conferences (TSSJS, Devoxx, JavaOne etc) on Java, open source and software development and is finishing off his first Manning title - "The Well-Grounded Java Developer" with Ben Evans.

Claus Ibsen, Principal Software Engineer at FuseSource.
Claus Ibsen is a software engineer and integration specialists from FuseSource (http://fusesource.com/). Claus is a full time committer on the open source integration framework Apache Camel (http://camel.apache.org) and author of the "Camel in Action" book (http://www.manning.com/ibsen). Claus is the most active contributor to Apache Camel and is very active in the Camel community. He hang out on the Camel mailing lists, irc-room and often blogs about Camel. At FuseSource he leads the development of Camel and provides consulting and support to customers. Claus is frequent speaker at FuseSource community day events on subjects related to Camel. Claus has spoken at JavaZone, CamelOne, JEEConf, DevNexus, TSSJS, SDC and Devoxx. Prior to joining FuseSource, Claus has worked with integration in all sorts for the last decade.

Sami Ekblad, Partner Manager at Vaadin

Евгений Щепотьев, старший программист компании JetBrains, магистр НИУ ИТМО,
участвует в разработке проекта YouTrack и предметно-ориентированных языков,
использованных в этом проекте.

TALKS

Project Lambda: To Multicore and Beyond, Alexander Potochkin, Software developer at Oracle
This session covers the primary new language features for Java SE 8—lambda expressions, method references, and extension methods—and explores how existing as well as future libraries will be able to take advantage of them to make client code simultaneously more performant and less error-prone.

Introduction to JavaFX 2.0, Alexander Potochkin, Software developer at Oracle
At last year's JavaOne conferencer, Oracle laid out a long-term roadmap for JavaFX to make it a premier rich client platform. JavaFX 2.0, a major update to the JavaFX platform, is a significant milestone in fulfilling this vision. Starting with this version, developers can create JavaFX applications completely in the Java programming language, using standard Java development tools. It also introduces several new features to the JavaFX platform: integration with Swing applications, hardware-accelerated graphics, the ability to embed Web content, stable media playback, and an improved UI controls library. This session explores key new features and discusses use cases and benefits for Java developers of using JavaFX.

Java Memory Model in details. Sergey Kuksenko, Performance engineer at Oracle
Детальное и простое объяснение зачем нужна Java Memory Model и как она работает. (Revised version special for JavaDay Riga)

Java Platform Performance BOF. Sergey Kuksenko, Performance engineer at Oracle
Сессия в формате «вопрос-ответ» про производительность Java SE (EE), в частности, про виртуальные машины, JIT-компиляторы, библиотеки классов и сборщики мусора. Могут быть покрыты вопросы тестирования производительности, бенчмаркинг, вопросы параллельного программирования и Java Memory Model.

JavaEE 7 - Development & The Cloud, Martin Grebac, Principal Software Developer - GlassFish/Metro team & JAXB Lead at Oracle Czech
Java EE is heading towards the cloud, and this session is going to talk about the recent planned improvements and changes to the JavaEE specification which enable cloud - specific features, such as scalability, elasticity, multitenancy, service provisioning, ... . That all in a standard - Java EE standard way. We're also going to cover the continued push for ease of development and cover many new or largely re-worked areas like JAX-RS 2.0, Concurrency Utilities and many others. And of course, included is information on Java EE Reference Implementation - GlassFish and it's latest developments.

Glassfish Metro. Martin Grebac, Principal Software Developer - GlassFish/Metro team & JAXB Lead at Oracle Czech
Metro is a high-performance, extensible, easy-to-use web service stack. It is a one-stop shop for all your web service needs, from the simplest hello world web service to reliable, secured, and transacted web service that involves .NET services. A lot of new features have been added to the Metro Web Services stack lately, ranging from a completely revamped transaction implementation to high availability for reliable messaging, significantly easier configuration, and many security improvements and additions. The Metro Web Services stack is part of the open source GlassFish community and provides the GlassFish SOAP implementation but can also be used outside GlassFish. This session provides a complete overview of and instructions on how to utilize Metro's Web Service Stack.

Использование Системы Мета Программирования (MPS) для создания веб-приложений на примере баг-трекинговой системы YouTrack. Евгений Щепотьев - старший программист компании JetBrains, магистр НИУ ИТМО
JetBrains Meta Programming System - среда мета-программирования с открытым исходным кодом, позволяющая легко создавать новые предметно-ориентированные
языки (DSL) и использовать их при написании пользовательских приложений. YouTrack - самостоятельный коммерческий продукт созданный компанией JetBrains при помощи среды MPS.

Зачем использовать среду мета-программирования для создания веб-приложения?
С какими трудностями сталкивается разработчик и какие преимущества получает?
Для чего следует и для чего не следует использовать МПС? Каковы сложившиеся традиции и шаблоны программирования?
В процессе разработки YouTrack был создан целый фреймворк, включающий в себя множество языков и вспомогательных инструментов, призванный облегчить написание подобных приложений в дальнейшем.

Enterprise Integration Patterns and DSL with Apache Camel. Claus Ibsen
Apache Camel, a very popular integration framework, builds on the principles of the EIPs (Enterprise Integration Patterns)
and DSLs (Domain Specific Language).

In this talk we show how integration can become much easier and accessible with Camel. By wiring together EIP patterns, processes and transports, integrating becomes as simple as building routes "lego style.", The wiring is done using the Camel DSL. We will cover some of the most used EIP patterns such as Splitter, Aggregator, Recipient List, Dead Letter Channel, Idempotent Consumer etc. And give pointers about tips and tricks along the way. This talk includes live demos that show how to build integration flows in DSLs: plain Java, XML and Groovy.

We will also show you how you can use Eclipse tooling to build routes using a graphical drag'n'drop environment, as well how to gain insights into running Camel applications, such as message tracing.

We will cover how Apache Camel is related to Apache ServiceMix, and why you should consider using Apache ServiceMix to host your integration applications.

In the end of the talk we take a look at the noteworthy new features of the latest Camel release, as well what we have planned for the upcoming releases.

Why doesn't Java have instant turnaround? Jevgeni Kabanov
In the dynamic languages it's a given. In .NET the problem is much smaller. But Java EE applications take from 15s up to 10 minutes to build & redeploy, after every change, no matter how small. IDE automate the process, but still require the wait. Why is that and how can it be solved?

In the recent years JRebel rose to prominence as the answer to this issue. Challengers like Oracle FastSwap and Javeleon are also on the market. And instant turnaround is one of the core attractions of the Play! framework, Grails and Tapestry 5. In this talk we will review the technical and conceptual challenges involved in solving this issue and the options available today, including the tools mentioned. We'll also cover some social aspects.

Do you really get class loaders? Jevgeni Kabanov
Class loaders are at the core of the Java language. Java EE containers, OSGi, NetBeans modules, Tapestry 5, Grails and many others use class loaders heavily. Yet when something goes wrong, would you know how to solve it?

In this session we'll take a tour of the Java class loading mechanism, both from JVM and developer point of view. We will look at typical problems that you get with class loading and how to solve them. ClassNoDefError, IncompatibleClassChangeError, LinkageError and many others are symptoms of specific things going wrong that you can usually find and fix. For each problem we'll go through a hands on demo with a corresponding solution.

We'll also take a look at how and why classloaders leak and how can you remedy that.

Как, используя Lucene, построить высоконагруженную систему поиска разнородных данных. Алексей Шевчук, Одноклассники
Lucene - это популярный движок для построения полнотекстовых поисков. Им пользуются Twitter, LinkedIn, Apple и ряд других немаленьких компаний. В 2009 году Одноклассники запустили первый поиск на Lucene, и за два года к поиску пользователей добавились еще 5 других поисковых сервисов. В докладе будет рассказано о том, как устроены эти поисковые сервисы.
Так же в докладе расскажем о системе, которая одновременно ищет во всех индексах, а так же использует информацию о пользователе чтобы улучшить релевантность выдачи. Система обрабатывает более 60 млн запросов в день, и на каждый ответ тратит в среднем 90мс.

Vaadin. Sami Ekblad
Description to be added.

Diabolical Developer. Martijn Verburg
The Diabolical Developer hosts this in(famous) session in which he challenges everything the modern Java developer holds to be good and true. The Java developer today stands in a sea of APIs, frameworks, best practices, software development methodologies, and more. The developers who sent mankind into outer space did not have all of this. Makes you think, doesn't it? The session takes you through practical steps (the right attitude, self-learning, using the right tools, sticking to Java 1.4, and the like) you can take to free yourself from the chains the industry has put on you. You will leave empowered and will get back to doing what you love the most, hacking Java code.
Read more...

Friday, November 4, 2011

Introduction to River

Innovative Community Day. Bangalore 2010. River Intro

"Listen to Gigi Read and Juergen Schmerder from SAP explaining what River is and how the participants of the Innovative Community Day 2010 in Bangalore can use it."



Project River Juergen Schmerder and Gigi read Innovation week-end TechEd LAs Vegas 2010

Read more...

Wednesday, November 2, 2011


"Какую бы программу вы ни писали, всё равно получается компилятор".

Вот, например, некто metaclass делится своими довольно характерными переживаниями по поводу:

"Пытаясь сделать приложение, для перенастройки которого под новые бизнес-процессы не требуется перекомпиляция, довел его до того, что в нем чуть ли не собственный язык программирования получился. В итоге в следующей версии забил и сделал то же самое в виде конечных автоматов на обычном языке программирования, компилируется это дело в обычную dll, и все на этом. Отладка проще, птичьего языка не нужно, парсеров не нужно, итд. [...] Обычно это делается с целью "отдать обслуживание и настройку" другим людям, знающим предметную область, но не программистам. В итоге получается только хуже. Предметники отказываются настраивать ("это работа программистов/админов/обслуживающего персонала"), а ИТшники хуже знакомы с предметной областью и им все-таки проще описание в виде кода, а не данных."

В связи с этим иногда бывает полезно повторять мантру "c'mon, guys, we're building an application, not a Christmas tree". Read more...