about
My name is Vahagn Hayrapetyan and I develop for the web.
When creating front-ends for web sites and applications using XHTML, CSS, and JavaScript, I favor the
hand-crafted approach with an emphasis on standards-compliance and semantic markup. For the server side
I prefer Ruby and Rails but have used both Java and .NET on a number of projects.
I also blog on trends in software development, Object-Oriented Design, and web development; my biggest interest is
the web as platform and the technologies and practices that are emerging to enable the development of amazing web
applications.
technical writing
Tutorials
Coming soon.
Øredev Conference 2009
What not to test: do you know or do you think you know?
Last talk of the last day at Øredev 2009. I listened to "What not to test" by Robert Sabourin.
I like testing because I am fortunate enough to belong to a school of programming that wants to do things the right way.
So naturally I was intrigued by the theme of the talk. Isn't testing Always Good?
Getting to know Cukes
Is Behavior-Driven Development just syntactic sugar for integration testing? That's the question I have been
asking more than once recently. There's RSpec, and there's Cucumber - if you are a Ruby developer you'd have heard
about those. But why should you do BDD? Because BDD tests cover something Unit Tests don't? That's not the case -
in terms of code coverage, BDD doesn't add anything.
Procedural, class-oriented, role-driven: history of programming in 80 minutes
Friday, 6th of November 2009 at Øredev. The time had come to sit in on the one of the main attractions of the conference.
A talk by the man to whom many of us developers owe their career. (If you have worked with Object Orientation and
Model-View-Controller you belong in that category).
On programmer productivity and hairy quadrupeds
This day concluded with a special topic. Neal Ford gave a talk about being a productive programmer; something close to the
heart of every programmer capable of reflection (pun intended).
The mobile web: novelty and familiarity in good measure
All right, so this time I decided to venture into uncharted territory: mobile development (and I'm no ace at JavaScript,
either). Nevertheless I chose to attended Nicolai Onken's "Creating cross-platform mobile applications with the Dojo Toolkit".
I had a feeling that mobile development is both different and familiar (the mobile platform is a new kid on the block -
but hasn't JavaScript been around since1995?)
Microrevolution in web semantics: formatting markup in a meaningful way
I've always thought that microformats are intriguing. They're not an official specification; they add nothing to the
existing web standards stack that already isn't there; and they seem to be one of those rare "bottom-up" innovations
that become a part of our toolbox solely through an organically increasing user base. They were the topic of a talk by
Karsten Januszewski from Microsoft research.
Future of the web: developer paradise
Being a web nut, I planned for "The Future of Web Applications" by Ben Galbraith and Dion Almaer. The web as platform
is a compelling case - at least in my view. (Software is moving to the web to a large degree, even applications
traditionally viewed as desktop applications. Because web-based software per definition is directed at the broadest
user base possible, it must be better than desktop software in every way: faster, simpler, more usable, sexier, and more
functional).
Women's magazines and million-selling software
Ben Galbraith from Palm gave an interesting presentation about creating a compelling UI for one's software.
Watching the presentation, I couldn't help thinking that software development has come of age. Even about three
years ago, it is hard to imagine an engineer coming onstage at a software conference, displaying a slide with
glossy women's magazines on it, and saying: "We as developers have to follow the fashion in the industry".
The Lean Software Startup, by a successful entrepreneur
Software development and entrepreneurship - the combination is exciting both because of the challenges and its promises it holds.
On one hand, it can be challenging to shift attention from unit testing and data structures to market analysis and product
development. On the other hand, a product or service created by a savvy developer can reach hundreds of thousands of potential
users at the cost of one.
eXtreme Programming: "extreme" or battle-tested?
Most people in the software industry would probably agree that managing the process of software development can at
times be more challenging than building the actual software. Weird and wonderful things have happened to teams where
the technical and the managerial parts spoke different languages. Bridging this gap and having efficient processes was
the the theme of "eXtreme programming in practice" by Neal Ford and it was a tour de force describing the sometimes
irrational forces affecting the profession of a software developer.
Panoramic views and the outer space - visualizations at Øredev
So, it's November 9th 2009 and the Øredev conference has taken off; for me, it's 3 days of talks about the software
industry on topics that I most enjoy. In the spirit of the times, I kicked off my first day with a popular topic - visualization.
JAOO Conference 2008
Trends at JAOO 2008
It is the 3rd day of the conference at JAOO 2008. I've been to a number of interesting talks;
it is now interesting to summarize some of the trends among speakers and their topics.
Railing sketches - metaprogramming Ruby for fun and profit
I've been playing around with Ruby on Rails for some 5 months now, and have gotten steadily more eager to find out
what exactly this Rails magic is that developers rave about and big companies often mention when introducing their
Rails-killer to the world.
Michael Koziarski (Rails core team) interview
Michael Koziarski is one of the contributors to the Ruby on Rails framework and he visited JAOO with a talk about
Rails performance. I interviewed him about the upcoming Rails release, the future of the framework, and about that
special "something" that gives Rails its edge.