Search Results:

Switching to ReactJS and Facebook Flux.

During the last 3 weeks we evolved our understanding of frontend stack.

LazoJS worked quite well in the cases that I dealt with. These were mostly simple feeds like news, inbox or conversation. However, it created some complexity and overhead for Tomas and Pieter as they explored encapsulation of UI elements and their reuse.

In short, in LazoJS it was quite complicated to create and apply a reusable component (e.g. avatar or like button).


While I focused on finishing features in LazoJS, Tomas and Pieter explored something…

Feeds, Chat, Online list and CSS

Last week I focused on the user interface, rebuilding features from the first UI demo. This time the code was much better, though:

  • all benefits of LazoJS framework are built-in;
  • less memory leaks and unexpected behavior (last UI prototype stuck there), for example all views explicitly unsubscribe event handlers before being unloaded from the DOM;
  • more reactivity and interactivity across the system.
(more…)

Rendr, Lazo, Flux, Backbone

Many people have opinions on node. Its not the pretties language in the world. Callback hell can create complexity out of the simplest use-cases. But it is seriously going strong.

Sometimes I’m wondering if we will have another javascript in the browser. Crockford said that we need to have otherwise we did a pretty terrible job if the web is forever gonna live on the foundation of javascript. I do agree that it has its serious flaws. What would be…

Back from the dead!

All right, Rinat has pushed me for a few weeks now to bring up the blogging and summaries again!

And I do agree its about time!

Last week Pieter and I had a few really good pairing sessions where we tried to create a top-notch component structure where logic (js), layout (css/html) is packed together and can be reused arbitrary the surroundings.

This allows us to write for instance 1 Like button, the looks may change but the behaviour and the the…

Reactive User Experience

Last week I focused on implementing some requirements related to reactive user experience. That is basically about things that make the users feel as if they were working with a native desktop/mobile application.

(more…)

Web Development – the Good Parts

Last week was dedicated to front-end development. We made some nice progress there, thanks to LazoJS framework and Jason Strimpel himself. This framework, supported by the entire Node.JS ecosystem, makes development quite simple even for somebody so unexperienced in UI like me.

Of course, Node.js has some drawbacks. For example, its performance is worse than the performance of golang code, pushed to the extreme. There also are a lot of bad things in JavaScript development itself: callback hell, memory leaks, relatively poor debugging experience, low quality of some…

Getting Started with Node.js

by Rinat Abdullin

I spent the last week learning Javascript, Node.js and some of the ecosystem. JavaScript : The Good Parts and Node.js: Up and Running were a good introduction into the field.

It is surprising how diverse and rich node.js ecosystem is. I think, this could be attributed to the language itself. JavaScript is everywhere, and it is extremely flexible. This creates a lot of diversity for both good and evil. Besides, it is really easy for anybody to publish node.js packages. There are thousands…

Features, Use Cases, Rendr

by Rinat Abdullin

Last two weeks went fast.

I mostly focused on the backend, rewriting some of our older modules (register, draft, review and auth) to match JSON API requirements and covering them with use-cases. Missing edge cases were addressed as well.

There were also a few technical features, affecting the entire codebase.

First of all, I added role-based security to the system, extending authorization to support various levels of super-users, like admins and reviewers. This required a slight adjustment of use case infrastructure.

Second, Tomas asked to get rid…

Native Performance

The highlight of the last week was switch from pure Go driver for PostgreSQL to a wrapper around native library jgallagher/go-libpq. Pure Go driver seemed like a nice thing in the beginning (no need to bother with native dependencies or header files), however it turned out to bee too immature. Confusing error reporting for connection issues was one of the biggest problems for us.

Thanks to database/sql abstraction in golang, I was able to switch to native driver in one day. Cleanups mostly involved our handling of uuid

Back from the Vacation

It is good to be back from the vacation. Not only you feel rested, but you also get to see all the cool things done by the team.

Tomas and Pieter focused on pushing forward seeding utility that takes data dumps from the production systems and transforms it into the events for the second version of HappyPancake. They moved beyond Finland dataset (the smallest one) and started seeding Sweden, which yields more than 500.000.000 events. This allowed to polish code heavily (e.g. memory and connection leaks…