Alexander Dolgin
[Recent Entries][Archive][Friends][User Info]
Below are the 20 most recent journal entries recorded in the "Alexander Dolgin" journal:[<< Previous 20 entries]
04:00 pm
[Link] |
L1 support engineer wanted В Днепропетровский филиал американской компании Inforeach (www.inforeachinc.com) требуются L1 support engineer.
Обязательные требования: - Свободный разговорный английский (нет, в процессе подтянуть не получится) - Опыт работы с Windows, влючая работу с командной строкой, сетевые настройки, написание скриптов - Знакомство с unix-like системами - Умение писать скрипты, используя, как минимум, половину из следующего: bat, sh, Perl, AWK - Готовность к командировкам в США на несколько месяцев - Готовность работать в «нестандартное время». Скорее всего, это будет вечером-ночью - на время обучения, и с 6 утра до 15 дня - после обучения. - Обучаемость, ответственность и самостоятельность
Будет плюсом: - Опыт аналогичной работы - Опыт работы с C++, Java, Python Мы предлагаем: - достойную оплату с регулярным пересмотром в сторону увеличения - бонусы - интересную работу в стабильной компании (днепропетровскому филиалу более 10 лет) - бесплатные обеды - хороший офиc в центре города - хороший колектив и разумный менеджмент - отпуск, выходные на государственные праздники и т.д.
Резюме на английском языке на alex.dolgin(-at-)inforeachinc.com
Tags: hr
|
02:34 pm
[Link] | Прислал резюме человек. Претендует на позицию программиста. Интересно, зачем упоминать о наличии водительких прав категорий А, В, С?!
Tags: job
|
08:34 am
[Link] |
Разные специальности Как-то наболело, давно хотел написать по впечатлениям от ЖЖ и окружающего мира.
Есть разные специалисты по варке супа. Есть те, кто хорошо ориентируются в методологиях варки супов, в их классификации, лучших практиках варки и т.д. Обычно от них множно услышать много действительно интересных и полезных вещей о супах. А есть те, кто умеет варить суп, но таких людей гораздо меньше.
|
08:33 am
[Link] |
Правдивая история о трех поросятах
|
11:56 pm
[Link] | Этот момент, лично мне, кажется, мягко говоря, спорным.
As of release 1.5, there is a third approach to implementing singletons. Simply make an enum type with one element:
// Enum singleton - the preferred approach
public enum Elvis {
INSTANCE;
public void leaveTheBuilding() { ... }
}
This approach is functionally equivalent to the public field approach, except that it is more concise, provides the serialization machinery for free, and provides an ironclad guarantee against multiple instantiation, even in the face of sophisticated serialization or reflection attacks. While this approach has yet to be widely adopted, a single-element enum type is the best way to implement a singleton.
Я бы скорее сделал, хотя бы, что-то такое:
public interface IElvis
{
...
}
public class DefaultElvis implements IElvis
{
private static IElvis Instance_ = new DefaultElvis();
...
public static IElvis getInstance() {return Instance_;}
}
Tags: effective java
|
10:21 pm
[Link] | Вчера пришла с Амазона Effective Java (2nd Edition). Интересно-интересно. Надо завести час в день по утрам на чтение технической литературы, а то список TOREAD стал непозволительно расти.
|
10:53 pm
[Link] | Кто бы мог подумать. Я всегда считал, что безграмотно пишу %)
|
10:48 am
[Link] |
вы конечно будете смеяться Нам нужен [sr] java developer, может даже два Используемые языки и технологии: Java SE, XML, SQL, JMS, RMI, Swing, JDBC, JMX, JavaMail. Совсем немного C++ и .NET Большой интересный проект, вменяемые люди вокруг :) Отпуск, праздники, больничный -- как положено. Гибкий график. Зарплаты хорошие :) Используем Eclipse, Subversion, JIRA, Confluence.
|
12:10 pm
[Link] |  Оказалось, что когда катался в субботу на косе, мимо праздновавших субботник приватбанковцев, нашлись добрые люди щелкнувшие из фоторужья
Tags: фото
|
10:28 am
[Link] |
велоотчет Первый раз выехал на покатушку сегодня утром, если, конечно не считать перегонку велосипеда со старой квартиры. Собирались проехать до Новомосковска, но я подустал и съехал раньше. Друзяки поехали дальше. :) Итого: 32.35км со средней скоростью 18.5км/ч.
|
09:35 am
[Link] |
Exception #7. Впечатления Сразу хочу сказать, что это превая из конференций Exception #N, на которой я был. Кроме всего прочего, как это часто бывает, негативные стороны сразу бросаются в глаза, а позитивные воспринимаются как должное. Сразу приятно удивило, что людей было много, причем далеко не все из них действительно используют Python/Ruby/Groovy в повседневной работе, а просто пришли послушать что-то интесное и расширить кругозор. Я так понял, что было около 300 человек. С другой стороны неприятно удивили некоторые организационные моменты: толкотня и неразбериха при получении бейджиков, начало не вовремя, некоторые доклады не укладывались в отведенное время, один докладчик просто закозлил выступление не смог прийти за заявленный доклад. Первый доклад, на который я пошел это был "Мастер-класс по Python: Метаклассы + Дескрипторы". Было довольно интересно и хорошо изложено. В это же время в другом зале Леша рассказывал про Smalltalk. Как я полагал, большую часть его доклада я слышал еще на наших посиделках за пивом, так что выбрал послушать что-то новое.
Следуюзщий доклад "По ту сторону ООП: PEAK-Rules и PyProtocols". Не понравилось. Очень скомкано и нечетко. В это же время должен был быть рассказ про Groovy, который я собирался посетить, но докладчик не пришел :(
Дальше был рассказ про Grails. Докладчик рассказывал живо и интересно, хотя и не всегда убедительно. На вопрос о произоводительнсти Grails/Groovy ответил, что такая как в java. На мой вопрос, декомпилировал ли он когда-нибудь Groovy байт кода ответил уклончиво. Для интересующихся Groovy:
result = 0
myMap = ["asdf": 1 , "qwer" : 2, "sdfg" : 10]= 0
println result
и тот же код после groovyc и jad
import groovy.lang.Binding;
import groovy.lang.Script;
import org.codehaus.groovy.runtime.ScriptBytecodeAdapter;
public class test1 extends Script
{
public test1()
{
}
public test1(Binding context)
{
super.setBinding(context);
}
public static void main(String args[])
{
Object aobj[] = {
test1.class, args
};
ScriptBytecodeAdapter.invokeMethod(org.codehaus.groovy.runtime.InvokerHelper.class, "runScript", ((Object) (aobj)));
}
public Object run()
{
java.util.Map map = ScriptBytecodeAdapter.createMap(new Object[] {
"asdf", new Integer(1), "qwer", new Integer(2), "sdfg", new Integer(10)
});
java.util.Map _tmp = map;
ScriptBytecodeAdapter.setGroovyObjectProperty(map, this, "myMap");
Integer integer = new Integer(0);
Integer _tmp1 = integer;
ScriptBytecodeAdapter.setGroovyObjectProperty(integer, this, "result");
Object aobj[] = {
ScriptBytecodeAdapter.getGroovyObjectProperty(this, "result")
};
return ScriptBytecodeAdapter.invokeMethod(this, "println", ((Object) (aobj)));
}
public static Long __timeStamp;
static
{
Long long1;
Long long2;
long1 = new Long(0x118b2c76d19L);
Long _tmp = long1;
__timeStamp = (Long)long1;
long2 = new Long(0x118b2c76d19L);
Long _tmp1 = long2;
__timeStamp = (Long)long2;
}
}
Что-то мне подсказывает, что производительность все-таки будет отличаться, от обычного Java кода. Скорее всего, как раз это вполне допустимо, так как ядро (hibernate, spring) написано на java, а на groovy совсем немного кода. Другое дело, что ответ про производительность был неправильным.
Дальше был рассказ о том Как заставить свою лень работать. Довольно забавно: отдохнули, посмеялись. Краткое содержание: чтобы попки были чистые и сухие, надо их чистить и сушить.
После этого мы ( leshau, его сотрудник Игорь и я) решили, что есть все-таки очень хочется, а обеденного перерыва нет и не предвидится, поэтому надо ковать счастье своими руками. Размер очереди в Пузату Хату сразу убедил нас пойти искать счастья в другом месте. Нашлось оно в Эль-Патио, наколько я помню название.
Вернувшись, поболтал немного в коридоре с Сергеем, которого не видел уже много лет. Он пытался "продать" идею использования .NET, но я не повелся
Последний докалад, на который мы сходили был про Jython и JRuby. Сложные впечатления. Докладчик был сотрудником платиногов спонсора. В принципе, вполне целостный и хорошо подготовленный доклад, но рассказ был как-то "без огонька". Видно, что человек этого [почти] никогда не использовал. Похоже, что к нему подошло начальство и сказало, что НАДО.
|
11:34 am
[Link] |
Приват24->Skype В Приват24 появилась возможность купить ваучеры пополнения для Skype номиналом $5 и $25.
|
10:33 pm
[Link] |
XSLT Возвращаясь к вопросу про XSLT.
( итого )
Зовется это все из XSLT Ant task. Довольно удобно получилось.
Tags: work
|
11:56 pm
[Link] |
XSLT или XSLM? Есть сложные xml документы произвольного вида, являющиеся конфигурацией к нектоторой системе. Иногда хочется закомментировать какие-то элементы или поменять значения аттрибутов. Что-то типа закомментировать нод, которий соответствует шаблону ProcessName/ComponentList/Component[@name='My component'] а аттрибуту enabled в ноде ProcessName/FeatureList/Feature[@name="My feature"] поменять значение с true на false.
Первая задача решилась следующей трансформацией
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="ProcessName/ComponentList/Component[@name='My component']">
<xsl:text disable-output-escaping = "yes"><!--</xsl:text>
<xsl:copy>
<xsl:apply-templates select="@*|node()" />
</xsl:copy>
<xsl:text disable-output-escaping = "yes">--></xsl:text>
</xsl:template>
<xsl:template match="@*|node()" >
<xsl:copy>
<xsl:apply-templates select="@*|node()" />
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
Вторую (изменение значения аттрибута) не осилил сходу
Кажется довольно ественным написать XSLT для этого. Но по тому, как тяжело это дается, начинает казаться, что выбрал не то средство. Может это действительно неправильный путь и нужен язык не для трансформации (XSLT), а для модификации (XSLM)? Правда такого нет, вроде, к сожалению. Или это я неправильно XSLT готовлю? В принципе XSLT для меня не панацея. Хотелось бы, в идеале указывать, что мне нужно именно в виде узел такой-то (XPath) -> операция с ним (скажем: удалить/закомментировать/добавить/изменить значение/вставить под-дерево). В какую сторону смотреть?
|
04:01 pm
[Link] | muwlgr вчера порадовал поговоркой: "Кто говорит не думая, то умирает не болея".
|
08:40 pm
[Link] |
читабельность кода Метод, в который надо модифицировать сейчас, длиной жалкие 244 строчки. Мне хочется кого-нибудь убить %)
Tags: java, work
|
11:38 am
[Link] |
В Киеве Собираемся на JUG
Да, поиграл в настольный хоккей впервые за лет 15-20. Как же это круто!! :)
|
05:03 pm
[Link] |
ананас Интернет великая сила. За пару минут нашли, как чистить ананас и сделали с нмм ЭТО :)
update: Искал совершенно банально: сходил сюда, а дальше по первой ссылке
|
01:26 pm
[Link] |
вопросы и вопрошающие Ввязался в неслабый "хохлосрач". Линк давать бесполезно, т.к. "под замком".
Обсуждали вопросы презеденту. Привел ссылку и сказал, что особенно понравился второй абзац. Судя по реакции, кто-то из вменяемых знакомых таки голосовал за эти вопросы. Неприятно удивлен.
|
10:33 pm
[Link] | Довольно сложно сформулировать, что таки хотел сказать. Скорее мысли вслух. Все чаще последнее время сталкиваюсь с тем, что норма она может быть разная (да, да, я еще немного помню университетский курс математи и что норма это дело такое -- как определишь так и будет). Так вот, в жизни так же.
Один пример. В компании где я работаю заявлен "свободный" график работы. Когда я начинал работать здесь, на заре 2001 года, это подразумевало приход в 9-10 утра. Был один человек, который приходил на 12 и это казалось очень поздно. Однако же, каких-то четких ограничений никогда не было. Отрабатывай свои 8 часов или, точнее, 40 в неделю, при этом делай это нормально, тогда все хорошо. Но формализации-то нет, свободный и все тут. С годами появилась проблема, что кто-то начал приходить на 4-5 вечера, а этот кто-то был одним из ключевых разработчиков, к которому у других разработчиков и тестеров куча вопросов. Кто-то вообще приходил в 9-10 вечера временами. Просто неуловимый мститель :). И, как бы, все правильно, график-то свободный, почему бы не работать, когда удобно. Вобщем-то, в итоге решили "прекрутить гайки". Приходить не позже 14.00. Пока "осиливают" не все :(.
Вот еще. Похожая ситуация со свободной формой одежды. Но, если не кривить душей, то под свободной формой одежды, в данном случае, подразумевались джинсы и футболка или рубашка. По крайней мере, на человека, пришедшего в костюме, смотрели удивленно, а люди, которые ходят на работе в спортивных штанах, хм-м, даже не знаю, как-то не нравятся. Хорошо хоть, в отличие от предыдущего пункта, это на результаты работы не сказывается.
Еще один пример, по мотивам недавнего обсуждения с dolsi. Уж не помню с чего началось, кажется, обсуждали покупку Суп'ом ЖивогоЖурнала. Так вот. Можно ли выработать точные формализованые правила, что можно и что нельзя писать в ЖЖ. Справедливо для любого ресурса, впрочем. Как выработать их так, чтобы исключить субъектевизм проверяющего. Скажем, чтобы было четко понятно, сочтет это человек из abuse team произведением искусства или порнографией. Я очень сомневаюсь в том, что реально такие правила выработать. Т.е. остается полагаться на какие-то общие нормы, которых люди придерживаются. Хотя, если честно, с учетом, скажем, предыдущих примеров, рассчитывать на то, что все поймут более или менее одинакого, что же есть нормально, а что нет -- более чем наивно.
Фух.
|
[<< Previous 20 entries] |