6 days Ago


Mixing your own SQL into Quino queries: part 2 of 2

Published by Marco on in Quino

In the first installment, we covered the basics of mixing custom SQL with ORM-generated queries. We also took a look at a solution that uses direct ADO database access to perform arbitrarily complex queries.

In this installment, we will see more elegant techniques that make use of the CustomCommandText property of Quino queries. We’ll approach the desired solution in steps, proceeding from attempt #1 – attempt #5.

tl;dr: Skip to attempt #5 to see the final result without learning why it’s... [More]


2 weeks Ago



Published by Marco on in Encodo News (en)

We are happy to welcome Tymon Terlikiewicz to our team! We are still searching for even more Encodo team members; see our jobs page for more information (available only in German).



Published by urs on in Encodo News (de)

Wir freuen uns darüber, Tymon Terlikiewicz in unserem Team begrüssen zu dürfen! Wir sind jedoch weiterhin auf der Suche nach Verstärkung; mehr Informationen dazu gibt es hier.


Mixing your own SQL into Quino queries: part 1 of 2

Published by Marco on in Quino

The Quino ORM[1] manages all CrUD—Create, Update, Delete—operations for your application. This basic behavior is generally more than enough for standard user interfaces. When a user works with a single object in a window and saves it, there really isn’t that much to optimize.

Modeled methods

A more complex editing process may include several objects at once and perhaps trigger events that create additional auditing objects. Even in these cases, there are still only a handful of save... [More]


3 weeks Ago


Encodo snow weekend in Savognin (GR)

Published by Marco on in Encodo News (en)

Encodo took a three-day weekend in the Bündner alps at Savognin for some sun, sledding, skiing and snowboarding. Also a bit of billiards, jass, lots of good food and a few beverages.

Check out the album to see pictures.


Encodo snow weekend in Savognin (GR)

Published by Marc on in Encodo News (de)

Encodo verbrachte ein verlängertes Wochenende in den Bündner Alpen − in Savognin. Auf dem Programm stand für einmal nicht programmieren sondern Ski-, Snowboard- und Schlitten fahren. Am Abend kamen dann noch Billard, Jassen, viel Essen und das eine oder andere Getränk dazu.

Ein Album mit Bildern dazu gibt es im Events-Bereich.


v1.11.0: .Improvements to local evaluation & remoting

Published by Marco on in Quino
The summary below describes major new features, items of note and breaking changes. The full list of issues is also available for those with access to the Encodo issue tracker.


  • Local evaluation: improved support for local evaluation in combination with remoting and, sorting, limits and offsets (QNO-4330, QNO-3655, QNO-4224)
  • Many other bug fixes and minor improvements

Breaking changes

  • No known breaking changes.

1 month Ago


Java 8

Published by Marco on in Java

 This article discusses and compares the initial version of Java 8 and C# 4.5.1. I have not used Java 8 and I have not tested that any of the examples—Java or C#—even compile, but they should be pretty close to valid.

Java 8 has finally been released and—drum roll, please—it has closures/lambdas, as promised! I would be greeting this as champagne-cork–popping news if I were still a Java programmer.[1] As an ex-Java developer, I greet this news more with an ambivalent shrug than with any... [More]


Setting up the Lenovo T440p Laptop

Published by Marco on in Technology

This article originally appeared on earthli News and has been cross-posted here.

I recently got a new laptop and ran into a few issues while setting it up for work. There’s a tl;dr at the end for the impatient.

Lenovo has finally spruced up their lineup of laptops with a series that features:

  • An actually usable and large touchpad
  • A decent and relatively sensibly laid-out keyboard
  • Very long battery life (between 6-9 hours, depending on use)
  • Low-power Haswell processor
  • 14-inch full-HD... [More]

2 months Ago


Quino: efficiency, hinting and local sorting

Published by Marco on in Quino

In Quino: partially-mapped queries we took a look at how Quino seamlessly maps as much as possible to the database, while handling unmappable query components locally as efficiently as possible.

Correctness is more important than efficiency

As efficiently as possible can be a bit of a weasel statement. We saw that partial application of restrictions could significantly reduce the data returned. And we saw that efficient handling of that returned data could minimize the impact on both... [More]


Quino: partially-mapped queries

Published by Marco on in Quino

In Quino: an overview of query-mapping in the data driver we took a look at some of the basics of querying data with Quino while maintaining acceptable performance and memory usage.

Now we’ll take a look at what happens with partially-mapped queries. Before explaining what those are, we need a more concrete example to work with. Here’s the most-optimized query we ended up with in the previous article:

var query = Session.GetQuery<Person>();... [More]

LESS vs. SASS: Variable semantics

Published by Marco on in UX & Design

This article originally appeared on earthli News and has been cross-posted here.

I’ve been using CSS since pretty much its inception. It’s powerful but quite low-level and lacks support for DRY. So, I switched to generating CSS with LESS a while back. This has gone quite well and I’ve been pretty happy with it.

Recently, I was converting some older, theme stylesheets for earthli. A theme stylesheet provides no structural CSS, mostly setting text, background and border colors to let users... [More]


How to configure Visual Studio 2013 with licenses from a multi-pack

Published by Marco on in Tips and Tricks
If you’re only interesting in what we promised to show you in the title of the article, then you can jump to the tl;dr at the end.

Silver Partnership

Encodo is a member of the Microsoft Partner Program with a Silver Competency. We maintain this competency through a combination of the following:

  • A yearly fee
  • Registration of .NET products developed by Encodo (Punchclock and Quino in our case)
  • Customer endorsements for .NET products that Encodo has developed
  • Competency exams

This involves no... [More]


Converting an existing web application from JavaScript to TypeScript

Published by urs on in Web: HTML/CSS/JS

TypeScript is a new programming language developed by Microsoft with the goal of adding static typing to JavaScript. Its syntax is based on the ECMA Script 6 standard, which is currently being defined by a consortium. There are features in the languages most developer know well from other languages like C#: Static Types, Generics, Interfaces, Inheritance and more.

With this new language, Microsoft tries to solve a problem that many web developers have faced while developing JavaScript: Since... [More]


3 months Ago


An introduction to query-mapping in the ORM

Published by Marco on in Quino

One of the most-used components of Quino is the ORM. An ORM is an Object-Relational Mapper, which accepts queries and returns data.

  • Applications formulate queries in Quino using application metadata
  • The ORM maps this query to the query language of the target database
  • The ORM transforms the results returned by the database to objects (the classes for which were also generated from application metadata).

This all sounds a bit abstract, so let’s start with a concrete example. Let’s say that we... [More]