ElasticSearch Boolean Query Performance
A Boolean Query caused performance issues. The problem was that an empty
filterclause behaved differently from a non-empty
shouldclauses, because of tricky
minimum_should_matchbehavior. I’ll try to explain what happened and how to fix this issue.
Creating efficient File Storage of Uploads for Web Applications
At my company, Symbaloo, we have various features that need storage of files, mainly images uploaded by users. Files are stored on the filesystem of the servers. The files are usually referenced from the database to a path on the file system. It’s important to do this correctly, so we’re sure the paths in the database point to existing files on the file system, and files on the file system have a reference in the database. It’s bad if users see an
<img>tag with a file that doesn’t exist! On the other hand, to keep hosting costs down we don’t want to store more than necessary. In this post I will explain how we solved this problem and now store files efficiently.
Reactive ReactJS: improving data flow using reactive streams
Many people that use ReactJS as their renderer, are using some kind of the Flux architecture to store data, react to actions and notify components about changes. After a University project involving Scala and RxJava, I wanted to use these ideas together with ReactJS views. Besides that I found two things missing in the Flux architecture:
ReactJS in Java Hello World
ReactJS is becoming a hugely popular solution for building complex Web Applications. It is so nice to use because it really resembles building applications like you used to in the good old PHP days a long time ago, where you construct the HTML once on the server, and be done with it. Don’t think about changing state over time, just render once, and refresh once the data changed.
Tree Traversal, Depth first and Breadth first in Haskell
Lately I’m really digging Functional Programming, and especially Haskell. I’ve been reading Real World Haskell, which is a very nice free book about Haskell.
Dynamic disassembling instructions with ptrace and udis86 for timing analysis
For a University assignment for a course called Real-Time Systems we had to implement a prototype for timing analysis by tracing instructions.
Setting up a MySQL database
This post is just for future reference with a few MySQL commands I can’t really remember yet for creating a new database and mysql user. Probably now I posted them here, I will remember them ;). So it might be interesting or less interesting for you.
Most programming languages or techniques nowadays are sequential. When executing a statement
c = a + b,
cis the result of the addition of the current values of
b. If either one of those variables change their value,
cis not changed.
I have a Blog!
Usually I don’t have too strong feelings about certain topics. Still, I wanted to create a place where I can write about stuff, when I’ve created something on GitHub or some other in-dept blogpost. I’ve written on the MooTools Blog but sometimes I’d like to write about something else. Don’t expect lots of posts, I’m not a David Walsh ;).
subscribe via RSS