2 months Ago

2017 Migration from ESXi 5.5 to Proxmox 5.0

Published by Pascal on in Technology

Here at Encodo, we host our services in our own infrastructure which, after 12 years, has grown quite large. But this article is about our migration away from VMWare.

So, here’s how we proceeded:

We set up a test environment as close as possible to the new one before buying the new server, to test everything. This is the first time we had contact with software raids and it’s monitoring capabilities.

Install the Hypervisor

Installation time, here it goes:

  • Install latest Proxmox[1]: This is... [More]

3 months Ago

v4.0: New modeling API, expanded UI support and data improvements

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 in the release notes below and is available to those with access to the Encodo issue tracker.


Metadata & Modeling

Most of the existing metadata-building API has been deprecrated and replaced with a fluent API that is consistent and highly extensible.

  • Improve support for multi-language... [More]

4 months Ago

Networking Event 2017.1 and upcoming WWDT Talk

Published by Marco on in Encodo News (en)

Encodo held its first networking event of 2017 on June 1st with Marco presenting A Checklist for new Projects (slides in English/presentation in Swiss-German).

Thanks to everyone who attended!

If you missed it and would like to see the talk, Marco will be presenting again at winti web dev/talks on June 19th, 2017. The talk will be in English this time.

The abstract is included below.

 This talk discusses a checklist of concepts for writing software. Which ones apply? If so, how will you... [More]

5 months Ago

C# Handbook 7.0

Published by Marco on in .NET/C#

 I announced almost exactly one year ago that I was rewriting the Encodo C# Handbook. The original was published almost exactly nine years ago. There were a few more releases as well as a few unpublished chapters.

I finally finished a version that I think I can once again recommend to my employees at Encodo. The major changes are:

  • The entire book is now a Git Repository (GitHub). All content is now in Markdown. Pull requests are welcome.
  • I’ve rewritten pretty much everything. I removed a lot of... [More]

Adventures in .NET Standard 2.0-preview1

Published by Marco on in .NET/C#

.NET Standard 2.0 is finally publicly available as a preview release. I couldn’t help myself and took a crack at converting parts of Quino to .NET Standard just to see where we stand. To keep me honest, I did all of my investigations on my MacBook Pro in MacOS.

IDEs and Tools

I installed Visual Studio for Mac, the latest JetBrains Rider EAP and .NET Standard 2.0-preview1. I already had Visual Studio Code with the C#/OmniSharp extensions installed. Everything installed easily and quickly and I... [More]

6 months Ago

Team Event: Segway Tour durch Winterthur

Published by Marco on in Encodo News (de)

An einem warmen Frühlingstag sind wir nach einem gemeinsamen Mittagessen auf eine Segway Tour durch Winterthur mit Segway City Tours gegangen. Nach einer kurzen Lektion auf dem flachen Platz vor dem Zeughaus kurvten wir stundenlang durch die ganze Stadt Winterthur mit Zwischenhalten beim Aussichtspunkt Goldenberg und dem Oskar Reinhart Museum.

Bilder ansehen!

Team Event: Segway Tour of Winterthur

Published by Marco on in Encodo News (en)

On a warm spring day, we took an afternoon off for lunch and a Segway Tour of Winterthur with Segway City Tours. After an introduction on a flat plaza by the Zeughaus, we cruised all over the city for hours, stopping on the Goldenberg and at the Oskar Reinhart Museum.

Click here to see the pictures!

9 months Ago

A tuple-inference bug in the Swift 3.0.1 compiler

Published by Marco on in Development

I encountered some curious behavior while writing a service-locator interface (_protocol_) in Swift. I’ve reproduced the issue in a stripped-down playground[1] and am almost certain I’ve found a bug in the Swift 3.0.1 compiler included in XCode 8.2.1.

A Simple, Generic Function

We’ll start off with a very basic example, shown below.

 Simple argument with label

The example above shows a very simple function, generic in its single parameter with a required argument label a:. As expected, the compiler determines the... [More]

11 months Ago

Two more presentations: Web tools & Quino upgrade

Published by Marco on in Development

Check out two new talks on our web site:

Networking Event: How Encodo builds web applications
At our last networking event, Urs presented our latest tech stack. We’ve been working productively with this stack for most of this year and feel we’ve finally stabilized on something we can use for a while. Urs discusses the technologies and libraries (TypeScript, Less, React, MobX) as well as tools (Visual Studio Code, WebStorm).
Quino: from 1.13 to 4.x
Since Quino 1.13 came out in December of... [More]

1 year Ago

Quino Documentation: Table of Contents

Published by Marco on in Quino

For over a year, I’ve been writing articles about various parts of Quino. A customer asked if I could collect those links into a coherent table of contents, to make it easier to use as a reference.



A scalable pattern for building... [More]

Thoughts on .NET Standard 2.0

Published by Marco on in Development

Check out two new talks on our web site:

Microsoft recently published a long blog article Introducing .NET Standard. The author Immo Landwerth appeared on a weekly videocast called The week in .NET to discuss and elaborate. I distilled all of this information into a presentation for Encodo’s programmers and published it to our web site, TechTalk: .NET Standard 2.0. I hope it helps!

Also, Sebastian has taken a Tech Talk... [More]

ZHAW Frackumzug 2016

Published by Karin on in Encodo News (de)

Encodo hat dieses Jahr die Abschlussklasse der Systemtechniker der ZHAW als Sponsor für das Frackmobil unterstützt. Wie immer war uns der traditionelle Frackumzug einen kleinen Ausflug in die Altstadt wert. Wir haben das gelben Rauch spuckende und Bratwurst bratende Mobil bewundert und uns über die vielen glücklichen Absolventen in den altertümlichen Kostümen gefreut. Mehr zu dieser alten Tradition gibt’s unter: ZHAW Frackwoche und Frackumzug. Es gibt auch ein paar eigene Bilder dazu.

v3.1: New metadata builder API

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.


This release is a “bridge” release that has the entire new Metadata API as well as the older version, which is marked as obsolete. It is intended that projects upgrade to this version only temporarily in order to more easily migrate to the 4.0 Metadata API. At that point, projects should immediately upgrade... [More]

Why you shouldn’t use Bootstrap when you have a styleguide

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

From a customer, we got the request to apply a visual style guide (VSG) to a Bootstrap-based application. Since we do have a lot of experience with applying style guides on web applications and styling in general, we accepted the job and started to evaluate the details.

Which version of Bootstrap to use

The most recent stable version of Bootstrap is 3.3.6. However, when you go to the Bootstrap website, there is an announcement that Bootstrap 4 “is coming”. The current state of Bootstrap 4 is... [More]

Tabs vs. Spaces … and how many?

Published by Marco on in Development

Encodo has long been a two-space indent shop. Section 4.1 of the Encodo C# Handbook writes that “[a]n indent is two spaces; it is never a tab.”, even though “[t]he official C# standard […] is four spaces.” and that, should you have a problem with that, you should “deal with it.”

Although we use our own standards by default, we use a customer’s standards if they’ve defined their own. A large part of our coding is now done with four spaces. Some of us have gotten so accustomed to this that four... [More]