Virtuous cycle

Bartlomiej Owczarek weblog

You are currently browsing the Virtuous cycle weblog archives for tag 'ogito'.

Return to 'Virtuous cycle' home page

RESTful Ogito: I need to clean up some mess

I decided to rebuild something I specifically hoped would not need to be touched, namely Ogito’s internal routes structure in Rails.

Ogito uses links looking like this:

The idea in itself is ok – links include context information like city and country, so that they are more meaningful.

Much better, in my opinion, than links like /places/4652. Not even from the point of view of SEO, but rather of users who are given additional hint if the link is relevant to their search or not.

However, the purpose doesn’t really justify the way I implemented them (read more…)

Meeting Warsaw anticapitalists

Yesterday I decided to spice up my weekend with some extreme flavors. So I visited a meeting organized by Pracownicza Demokracja (“Labor Democracy”), the local leftist movement.

And I quite succeeded with my initial goal, even though I only managed to sustain two hours of the event.

On May 1st PD organized anti-capitalist happening, which I obviously skipped, and on the next day, that is yesterday, a series of lectures and discussions.

What attracted me – other than the morning hour, helping me to mobilize to wake up early – was the first lecture by anthropology professor about organization of prehistoric cultures (which was supposedly close to communist one).

First thing I heard upon arriving was that the lecture was canceled, which was quite disappointing, but decided to stay nevertheless for the replacement presentation delivered by one of the activists.

Not once I regretted this decision in the coming hour or so. The presenter didn’t speak a very good Polish which took away from the content, and there was not much to take away in the first place.

Leaving aside the starting point – based on the assumption that current crisis somehow spells end of the capitalism – the “to be” state of the Marxists seems awfully vaguely defined. Unless by defining the future you can accept listing what’s bad about the current and saying that the promise system will be done with all of it (somehow).

You might say that this kind of living-in-the-past could be expected. And as I listened, it seemed to be the case, it seemed there was no recognition whatsoever about how work is different nowadays, as if majority of population still worked at production lines.

But I still remember the Empire book that I read (in Cuba), by Negri and Hardt, both Marxist philosophers. No need to agree with the whole premise, but I found some ideas inspiring and new.

The idea that I remember from Empire (apologies if my memory distorts it) is that it is no longer useful to analyze “imperialistic” policy of a particular country, as it was done before. What we have now is a global system of capitalist exchange, which expands into all corners of the world and all social spheres. There is no one point of control, but there is “imperial” layer of governance (Empire).

What’s characteristic of the Empire is that crises make it stronger. Crises justify the need to ramp up global imperial powers to overcome them. Isn’t current crisis used to push towards more global coordination of all countries? There is even talk about necessity to establish a common global currency.

Anyways, there was not a trace of such stuff on Saturday morning. Perhaps the later material was better, but I didn’t dare to risk another session after the first one.

What was really fun was the discussion after presentation finished. One after another people rose and asked questions. Or made statements. More often statements than questions.

One guy rose and introduced himself as a programmer and an anthropologist and declared that collective doesn’t work at all after a certain threshold.

Senior white haired bearded man explained in a quite low voice how he was taught communism (somewhere), without any obvious conclusion.

Another guy criticized the speaker in four points, of which I remember the stupidity of idea to rotate “unpleasant” jobs between people, for example having doctor doing a physical work for a change.

One peculiar looking lady called Basia – the organizers must have known her – started to explain how crises are embedded into the very nature of the capitalism which she remembers from economy lessons and that she was actually really doing well at these lessons – before organizers hushed her.

There were also a couple of homeless people which I forgot to mention, but they mostly sat looking indifferent or slept. Only the mention that lots of buildings stay unused seemed to resonate somehow with them.

As an ominous sign for revolution prospects in Poland, number of actual marxists in room didn’t seem to exceed much the number of organizers.

All in all the discussion was the greatest value of the whole event (the part I saw).

Maybe Marxist meetings wouldn’t be the first example, but I always thought of Ogito as a way to learn about such things happening around.

Ogito (soft) launched!

Today is my birthday and aside from this fact, I’m writing to announce that the project I’ve been working on for some time already, called Ogito, is now accessible to the public!

Even though it’s a pretty early version.

Visit it at, if everything goes fine you should see something like this:

Ogito full screen

As a matter of fact it was open for something like a week already, but I wanted to fulfill some common requests of people who saw it first. Like, that it should work on Windows. Now it works (I think), even in internet explorer! (update: unless it’s IE 6 or 5.5. then not so much. thanks for a tip Elena:)

So what it does?

Main aim is to explore opportunities to invest your free time.

Like in “use every moment”.

It will have a broad range of content – not only mainstream ones, like movies & theaters, but also less common activities, like voluntary works. The stuff it presents will come with accurate information, including exact (personalized) prices.

The content will be easily searchable, so you can look, for example, into theater shows one month ahead or find israeli movies played right now in your city.

On top of this it comes with community and personalization features.

What of all this is available now?

Everything mentioned is represented, even though in often basic shape. So, for content we start with movies in all Poland and theaters in Warsaw, search works as described but not full text yet, there are profiles and comments but not yet ability to follow other people, etc.

Anyway, see for yourself. Granted, it will improve almost daily. Use the “walkthrough” link on the right for some quick help.

Main message: send me feedback what you think!

And drop by once in a while to see changes. Coming soon: concerts and events data from Eventim.

Learning from Twitter, Facebook

Lately I’m mostly busy with community functionality of Ogito and I’m trying to take advantage of some intuitions from Twitter and Facebook.

I’ve had Facebook account for some time, but was never an active user. Twitter I never used at all, even though I had some experience with blip, a Polish twitter look-alike. So I opened a twitter account to experience the original thing.

My initial goal was something very close to twitter – or how I imagined it should feel like before actually using it. Low barrier of entry, easy to use, one information stream carrying all the relevant user updates.

After playing with Twitter and reading reactions to Facebook latest redesign, which makes social network look quite similar to its much smaller competitor, my vision is evolving a bit.

In fact I wasn’t disappointed by how easy it was to start using twitter. The application is lighthearted and inviting, also because the community seems to radiate with enthusiasm of the early converts.

On the other hand, and maybe it’s my lack of experience with the app, the updates stream seems overwhelming, difficult to read continuously and unstructured. Figuring a conversation from exchanges of replies is one example when I’m quite lost (stream of given users shows replies he directed at someone, but not the other way round, so it’s hard to understand the context).

Facebook feed was supposedly better. It had intelligence to handle updates (status vs activity reports) differently. It lost this advantage after redesign and maybe this is why so many people hate it.

Given that we will have a lot of non-status related updates, Facebook (as of before redesign) might serve as a better inspiration.

Its latest redesign also suggests a number of points where caution should be applied (I’m basing it mostly on this summary in huffingtonpost): overuse of user thumbs, large fonts and trivial updates, lack of real time view.

Of course, many of the complaints (photos flooding the feed em masse etc.) will be resolved by subsequent fixes.

Search getting fragmented, verticals most likely to fall to… Google

I’m reading an interesting post by John Borthwick.

Search is fragmenting into verticals. In the past year two meaningful verticals have emerged – one is video – the other is real time search.

It’s interesting and for me well, personally encouraging, because one can think of what I do with Ogito as going into vertical search. Kind of real time, too (time sensitive, at least).

There is also a funny episode from a while ago, when AOL thought of itself as an ultimate disruptor (natural-born disruptor?).

It was an interesting argument – heart felt and in the early days of the Internet cycle it seemed credible. The Internet leaders would have the creative DNA and organizational fortitude to withstand further cycles of disruption. Christensen didn’t buy it. He said time and time again disruptive business confuse adjacent innovation for disruptive innovation. They think they are still disrupting when they are just innovating on the same theme that they began with. As a consequence they miss the grass roots challenger – the real disruptor to their business. The company who is disrupting their business doesn’t look relevant to the billion dollar franchise, its often scrappy and unpolished, it looks like a sideline business, and often its business model is TBD.

Rest of the post serves to prove that “real time web” is the next disruptive wave (especially for Google). I though real time web is another Robert Scoble bullshit, because for some time he was the only one that I read hypeing up this theme, but maybe there is something to it after all.

I’m not convinced that there any major reasons for Google not to dominate the new niche, though. They did it with video. And with the blog search, earlier. Real time search companies may still end up like Technorati.

You can now run EC2 servers in Europe – how faster it is?

I just reached the first milestone – deploying my application into a production server. Roughly at the same time, Amazon announced that it is now possible to have EC2 instances running on data centers located in Europe.

What is EC2? It’s a platform which allows you to run your application on arbitrary number of virtual servers. EC2 charges for servers on hourly basis, so it allows, in principle, to scale very flexibly.

From the very beginning I wanted Ogito to run on EC2.

Having servers located in Europe is a good thing, because latency is lower – ie. requests get handled faster because they don’t have to travel back and forth over the ocean. But I wanted to have some idea what the difference would be and ran couple of pings from my home location. Results:

  • EC2 us-east instance: 120ms
  • EC2 eu-west instance: 60ms
  • 46ms
  • 17ms
  • 15ms

60ms. Doesn’t beat local hosting, but better than hosting in the US.

For now my app is running in the us-east region, anyway, because ec2onrails AMI that I use (AMI is a server “template”) is not available in Europe yet. I was a bit surprised that one cannot access public AMIs across the regions, but that’s the way it works – regions are very self-contained.

Side note 1: I deployed my app successfully over the weekend, upgrading ec2onrails image to rails 2.2.2 and doing some other modifications. Hooray!

Side note 2: that said, the app currently is able to only display “come back later” page without any errors:)

Side note 3: I wish I had a place to write about more geeky stuff, I don’t like writing them here because my friends would find them hard to digest, while having another side blog never worked for me.

Vanishing point

So much for the healthier lifestyle: last month I’ve been working 7 days a week, eating junk food and outputting spaghetti code (hopefully my coding is getting better with time).

In contrast, I had no time for yoga, fresh air and friends.

And of course blogging.

But blogging is already dead according to Nick Carr, so maybe it doesn’t matter so much.

I’ve been trying fanatically to reach certain milestone that I set for October, but unfortunately, in the course of work, the milestone became a sort of vanishing point.

(side note/explanation: I am currently working on an Internet application that I want to reach some usable state beginning next year)

As expected, setting for a real work allowed to stress-test the initial concept. Some changes proved to take a lot of time. For example, I thought I would be able to classify the objects that I work with into a neat set of categories. It didn’t work with the real cases, though, and I had to change the data model to allow necessary flexibility.

On the other hand, number of smaller issues that emerge in the process and have to be taken care of is astonishing (and quite scary).

Start of new year is a mid-term milestone that I will use to see where I am, after 3 months of work.

What I find optimistic, though: I still very much look forward to reaching the target I aim for. The road up is steep, no surprises here, but I believe that it’s worthwhile the more the further I go. I prefer it this way rather than the other.

I’m going to try Rails on EC2

I’m not exactly in a stage of getting into technical details, but I already kind of decided that I will switch to Ruby on Rails for development of the current project.

Reasons: learning rails would probably be no harder than staying with PHP and learning framework like Zend, which is where I stopped last time.

And RoR promises much improvement with time-to-market.

Having sort of decision on rails, I wanted to have an initial idea of available hosting options, also for the needs of a “back of an envelope” business case.

I’m very happy with my current provider, progreso, but sadly they don’t support rails on shared servers, yet. If I wanted to host with them, I would have to buy a dedicated server anyway.

But as far as dedicated servers are concerned, Amazon’s EC2 looks much more attractive (at least at a first glance).

As for pricing, basic virtual servers are cheaper than in case of progreso (like, $70 a month excluding bandwidth and additional storage).

Additionally, path to hosting Rails applications on EC2 seems already well-beaten. For example here: Deploy a Ruby on Rails app on EC2 in five minutes. There are even Polish startups (shoptrix) who chose this solution.

And of course the most advertised benefit of using EC2 is the ability to increase capacity on pay-as-you-go basis, by easily launching new virtual servers when necessary.

Second blog

Dear readers. With some hesitation I would like to inform you that you might also want to check a second blog, which I update from time to time. In fact, usually more frequently than this one. It’s at

Ogito is a draft blog for whatever next-big-idea I am currently chasing.

Why keep blogs separate? Sometimes it is indeed awkward, but more often I don’t want notes (often quite technical) from constantly changing ideas to hit this personal blog. Also, switching idea every month might not look serious, so I want to keep it somehow aside:)