I can have any quotations from anyone. I'm not going to apologize for that. I use the same words that I use in everyday life. I'm not going to run my song by some Committee on Authors' Rights, because I don't recognize authors' rights. And all my songs can be freely looted by anyone in any way they like, because we're all links of the same chain. All music has the same single source. Nobody can steal anything from anyone. Of course, there are people who intentionally steal because they need to make some money. We don't write songs for money. So when I write, I use the material that is in front of me.

Boris Grebenschikov (Борис Гребенщиков) is a quintessential founding figure in Russian rock of the late soviet and post-soviet period. Together with his band, Aquarium (Akvarium, Аквариум), he pioneered the pay-what-you-can approach to music distribution on Kroogi.ru with his recent albums White Horse (Лошадь Белая) and Our Life From The Trees' Point of View (Наша жизнь с точки зрения деревьев).

Friday, October 15, 2010

Earlier this year, I filed an issue with RIM's issue tracker, TOOL-118, detailing my experience of trying to connect to Blackberry JDWP tool with IntelliJ IDEA. JDWP tool is the proxy to the simulator or actual mobile device that implements the Java Debug Wire Protocol on the outside, allowing an arbitrary JDWP-compatible debug tool to connect for a remote debug session. IntelliJ IDEA is the best damn Java IDE in the world, period.

The problem was basically that RIM's JDWP tool apparently wasn't fully compliant to the actual JDWP protocol, choosing instead to focus narrowly on its compatibility with Eclipse's debugging implementation. After some screwing around, it seems that RIM's JDWP tool expects something along the lines of jdb's "resume" command after the connection is established, otherwise it just keeps the simulator/device's JVM in a suspended state indefinitely.

Well, they promised to look at it, and this morning, roughly half a year later, their work was complete.

twindsor updated TOOL-118:
----------------------------

Status: Investigation (Closed) (was: Investigating)
Resolution: Fixed

JDWP with other development environments is no longer officially supported.

Only the use of JDWP with the Eclipse plugin is currently supported.

Because, you know, "we want to meet you on your turf, we want to make it easy for you to use the tools you're already using". Thank you RIM, I love you too.

(to Tim Windsor, the developer liason who helped me initiate the issue: no offence, I understand that you're not the one making decisions such as what IDEs and dev environments to support. Thanks for your help.)

Tuesday, August 24, 2010

Just stumbled upon something really cool. One of Ukraine's prime TV channels, Inter, shot a series of video clips for Ukraine's 19th anniversary of independence (24th of August, today). Each of the clips is dedicated to an ethnic group living in Ukraine -- it starts with a short scene in the language of the ethnicity in question, and ends with the representatives of that ethnicity singing the Ukranian National Anthem, translated into the language of the ethnicity. There's also a caption that says how many of the representatives of this ethnicity live in Ukraine (e.g "there are 150,000 Ukraininan Romanians who call Ukraine Motherland") and it ends with a tagline "We're different, but we're all one!".

Pretty darn great. I was really pleasantly surprised to see this. Those of you who know me also know my peculiar attitude to national matters, but this is just fantastic. This is the best I can possibly wish to Ukraine in the years to come -- and with that, happy birthday, Ukraine!

Wednesday, April 28, 2010

The scanned originals are here on the RusArchives site (in Russian). That's big. The Poles should've discovered those natural gas deposits of theirs earlier, I say -- these documents would've been public for years now.

There's an insightful blogpost and thread followup on Guido van Rossum's blog from 2008 on Scala. Guido skims through the Programming in Scala book and comes out nonplussed:

I have to agree with Steve -- if this is what it takes to have compile-time type-safety in a language, I'll take dynamic typing any day. There's got to be a better way -- perhaps Haskell? Haskell is a pure functional language with a fast implementation that seems to have solved the I/O problem of functional languages well -- while its Monads are truly deep and take real work to create, their use seems quite straightforeward.

Perhaps my biggest disappointment in Scala is that they have so many rules to make it possible to write code that looks straightforward, while being anything but -- these rules all seem to have innumerable exceptions, making it hard to know when writing simple code will work and when not.

David Pollak, the guy behind Lift web framework then makes a valuable point that I think I agree with very much. Scala is about tradeoffs, and getting the compiler involved in validation of your library design while keeping the glue code / code that uses the library pretty and transparent.

Unlike any other language I've used (C, C++, Objective-C, Java, Ruby, etc.), the kind of thinking I have to do as a library consumer and library producer are radically different.

As a library consumer, I rarely concern myself with Scala's type system... or most of the other language complexities. My consumer code looks and feels a lot like my Ruby code did. I've got great DSL support. For the most part, the types that the compiler doesn't infer are the ones I need to document anyway. But, unlike my Ruby code, I only need 50%-60% test coverage (vs. 95% coverage) to have stable, deployable code.

As a library producer (http://liftweb.net), I spend a lot of time reasoning about the types of parameters. This allows the compiler to flag illegal types (e.g., passing an Int into a query against a VARCHAR column). The type system also allows me to reason about my code and how the consumers will use my libraries in a way that I could not do in any other language I've ever used.

Friends

How fresh, how calm, stiller than this of course, the air was in the early morning; like the flap of a wave; the kiss of a wave; chill and sharp and yet (for a girl of eighteen as she then was) solemn, feeling as she did, standing there at the open window, that something awful was about to happen; looking at the flowers, at the trees with the smoke winding off them and the rooks rising, falling; standing and looking until Peter Walsh said, "Musing among the vegetables?" — was that it? — "I prefer men to cauliflowers" — was that it? He must have said it at breakfast one morning when she had gone out on to the terrace — Peter Walsh. He would be back from India one of these days, June or July, she forgot which, for his letters were awfully dull; it was his sayings one remembered; his eyes, his pocket-knife, his smile, his grumpiness and, when millions of things had utterly vanished-how strange it was! — a few sayings like this about cabbages.