2 years Ago
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.
In the beta1 and beta2 release notes, we read about changes to configuration, dependency reduction, the data driver architecture, DDL commands, security and access control in web applications and a new code-generation format.
In 2.0 final—which was actually released internally on November 13th, 2015 (a... [More]
If you’re like us at Encodo, you moved to SSDs years ago…and never looked back. However, SSDs are generally smaller because the price (still) ramps up quickly as you increase size. We’ve almost standardized on 512GB, but some of us still have 256GB drives.
Unfortunately, knowing that we all have giant hard drives started a trend among manufacturers to just install everything, just in case you might need it. This practice didn’t really cause problems when we were still using by-then... [More]
Last year, we sent customers and friends something to drink. This year, we provided some food to go with it: hand-made sausages and an Encodo cutting board!
Not only that, but we also made a 2016 New Year’s Puzzle!
As almost every year, we had to get organized early in order to accomplish everything by our projected ship-date. As last year, it was only thanks to the efforts of several people at Encodo that we got everything done well and on time.
These days nobody who’s anybody in the software-development world is writing software without tests. Just writing them doesn’t help make the software better, though. You also need to be able to execute tests—reliably and quickly and repeatably.
That said, you’ll have to get yourself a test runner, which is a different tool from the compiler or the runtime. That is, just because your tests compile (satisfy all of the language rules) and could be executed doesn’t mean that you’re done writing... [More]
As part of the final release process for Quino 2, we’ve upgraded 5 solutions from Quino 1.13 to the latest API in order to shake out any remaining API inconsistencies or even just inelegant or clumsy calls or constructs. A lot of questions came up during these conversions, so I wrote the following blog to provide detail on the exact workings and execution order of a Quino application.
Quino has long included support for connecting to an application server instead of connecting directly to databases or other sources. The application server uses the same model as the client and provides modeled services (application-specific) as well as CRUD for non-modeled data interactions.
We wrote the first version of the server in 2008. Since then, it’s acquired better authentication and authorization capabilities as well as routing and state-handling. We’ve always based it on the .NET
In the previous article, we discussed the task of Splitting up assemblies in Quino using NDepend. In this article, I’ll discuss both the high-level and low-level workflows I used with NDepend to efficiently clear up these cycles.
Please note that what follows is a description of how I have used the tool—so far—to get my very specific tasks accomplished. If you’re looking to solve other problems or want to solve the same problems more efficiently, you should take a look at the official... [More]
A lot of work has been put into Quino 2.0, with almost no stone left unturned. Almost every subsystem has been refactored and simplified, including but not limited to the data driver, the schema migration, generated code and metadata, model-building, security and authentication, service-application support and, of course, configuration and execution.
Two of the finishing touches before releasing 2.0 are to reorganize all of the code into a more coherent namespace structure and to reduce the... [More]
In this article, I’m going to continue the discussion started in Part I, where we laid some groundwork about the state machine that is the startup/execution/shutdown feature of Quino. As we discussed, this part of the API still suffers from “several places where generic TApplication parameters [are] cluttering the API”. In this article, we’ll take a closer look at different design approaches to this concrete example—and see how we decided whether to use generic type parameters.
In this article, we’re going to discuss a bit more about the configuration library in Quino 2.0.
The goal of this article is to discuss a concrete example of how we decided whether to use generic type parameters throughout the configuration part of Quino. The meat of that discussion will be in a part 2 because we’re going to have to lay some groundwork about the... [More]
Encodo celebrated its 10th anniversary as a company this summer in Bussang in the Lorraine region of France.
We’d originally voted on different ideas and a trip to Amsterdam had squeezed by camping by one vote. Planning our weekend in Amsterdam proved difficult. Something called SAIL Amersterdam—which takes place every five years—was on the same weekend we’d chosen and all the hotels were full.
So, we improvised and Karin found a lovely place in Bussang, just about an hour over the border... [More]
Way back in February, I wrote about my experiences with ReSharper 9 when it first came out. The following article provides an update, this time with version 9.2, released just last week.
tl;dr: I’m back to ReSharper 8.2.3 and am a bit worried about the state of the 9.x series of ReSharper. Ordinarily, JetBrains has eliminated performance, stability and functional issues by the first minor version-update (9.1), to say nothing of the second (9.2).
In the previous article, my main... [More]
Encodo first published a Git Handbook for employees in September 2011 and last updated it in July of 2012. Since then, we’ve continued to use Git, refining our practices and tools. Although a lot of the content is still relevant, some parts are quite outdated and the overall organization suffered through several subsequent, unpublished updates.
What did we change from the version 2.0?
- We removed all references to the Encodo Git Shell. This shell was a custom environment based on Cygwin. It... [More]