Yesterday I started a simple task. Or at least I thought it was simple. Basically I needed to prepend some CDN in front of a domain with static content. In what a hole I ended…
I have - or rather I’ve had - bunch of Excel files and I needed these in PDF. If I would be just five or so of these I would do it manually in Excel. But there was bit over 200 files. Doable but not fun.
I was presenting this idea on this year’s Firebird Conference. It’s an idea, working with some constraints of Firebird, but one can take it as an inspiration and maybe extend it to another usage on another platform. We had quite a productive discussion about possible improvements (I’ll describe mines at the end), but unless the people will provide the ideas in comments here too, you’ll have to use your own brain (you should’ve been there ;)).
I’ll show you the initial idea with some simple speed improvement of PSQL code itself. And then describe options in how to store it better, mostly because it’s very specific to needs and you’ll need to tune it for your scenario.
I’m going to be honest with you. I’m a bit disappointed. About a month ago I asked for help with testing the upcoming version of FirebirdClient. The compression support needed quite some work in internals (obviously affecting not only the compression path) and although I tested it left and right the chances for something failing in some corner cases were high. And I could really just use fingers on one hand, and still have a spare, to count people reaching to me and providing feedback. Bit of discrepancy compared to how much emails I get asking for this or that feature being supported. Thanks to those few who did tested it.
Na jaře a na podzim se konají konference. To ví každý. No a na obzoru je teď jedna akce s názvem WUG Days 2016. Připravil jsem si dvě přednášky (resp. byly vybrány hlasováním lidmi).
Léto je beznadějně pryč a jak se krátí dny, je třeba zalézt před příjemné světlo monitorů a začít něco kutit. :) No, ale když se kutí nemusí to vypadat jako zbastlená koule kódu, že?
I know a lot of people asked me about .NET Core version of FirebirdClient. Unfortunately the Firebird 3 was released few months ago as well and so it was about priorities (and also my free time). Luckily recently I got some free time and also a reason and time to work on .NET Core port thanks to Integrative.
As promised yesterday I have a beta of FirebirdClient with compression support (Firebird 3). It’s available on NuGet.
New 188.8.131.52 version of ADO.NET provider for Firebird is ready for download. It’s a regular bugfix release. Also I want to release beta later this month with Firebird 3’s compression support. So keep an eye on FirebirdSql.Data.FirebirdClient NuGet.
Last week I had bit of free time during afternoons and I was working on compression support in FirebirdClient. My initial code I’ve put together couple of weeks before was straightforward but eventually everything started to fall through cracks of edge cases and I had dig deeper and provide a lot more implementation than I’d like to.
New 184.108.40.206 version of ADO.NET provider for Firebird is ready for download. Notable changes or improvements are support for new fields in MON$ATTACHMENTS and support for “-skip_data” in backup/restore. And finally some nice simple performance tweak around
When you’re using Entity Framework 6 with some 3rd party provider - i.e. EntityFramework.Firebird or EntityFramework.NuoDb (disclaimer: I’m author of both) - you need to give Entity Framework few hints where to find some methods and classes. Maybe you’ve seen classes like
DbProviderServices. Often when you install the provider, your
app.config is updated accordingly. But you might want to do it in code. Either because you want to to have it strongly typed or because you don’t want to think about what project, that’s using the DAL project, is going to be executed and so on.
.NET Core a všechno “Core” okolo je už v ostré verzi (ať se vám/mi to líbí nebo ne) a přináší plno změn a novinek. 17.-19.8. se uskuteční konference CoreStart, kde pro nás jako vývojáře bude asi nejzajímavější “.NET Core Day”, kde se na všechny ty “Core” věci podíváme.
Já jsem připravil přednášku na téma “Entity Framework Core 1”, kde se podíváme co první verze umí (a také co zatím neumí) a jak je celý EF Core postavený vůči dnešnímu EF6 (a co vůbec s EF6 bude).
Over the rainy afternoons I slowly went through all the notes in the code I made when cutting corners to make it work as fast as possible and started cleaning. Just cleaning, no serious performance measurements nor improvements were done. But now it’s without any nasty hacks and shortcuts.
Firebird 3 - with it’s new plugin architecture - has a feature that allows execute stored procedures, functions and triggers in environment different from inside engine. Basically one can write (or rather use) plugin that allow to write i.e. triggers in different language like C++ (or any native code). Nice. But I like to write in .NET and C#.
So I set out to try to write such plugin and funnel the data to and from .NET where it will be executed…
We have a program that sends emails to clients based on what happens at business side. Pretty simple - you register, you got welcome email; and so on. And there’s a lot of these “actions”. When I wrote the program few years back I tested it and I was able to peak at about 3500 email per second. Should be plenty enough. But recently the queue started to get longer. Emails were processed later. And everything started to behave oddly.
Couple of weeks ago Patrick Smacchia reached to me and offered me a license for NDepend. At that time I was actually in some code cleanup in Fast 5 software and though it might be handy to try it. As usual a lot of other things took priority and only now I’m able to start playing with it. Because I needed some codebase that’s not huge and also not small, I took FirebirdClient (both ADO.NET provider as well as EF6 provider). It’s open source so you can try it yourself and it contains some ~10 years old code so there will be something to look at, for sure.
New 220.127.116.11 version of ADO.NET provider for Firebird is ready for download. As with every major release the changes of something going wrong are high. No exception here. Big thanks to people testing the provider and reporting bugs.
Also as I was there, my brain being in high power state, I fixed some bugs (though it was only few, these span well in the codebase).
New 18.104.22.168 version of ADO.NET provider for Firebird is ready for download. As you can see the major version number changed.
This release contains two new big features, both focused on Firebird 3. The
BOOLEAN datatype is now supported (except Entity Framework mapping, currently). And SRP authentication is supported on Firebird 3. I think these are the most fundamental new features so I’m releasing it now. There’s more to come.
Also internals of the protocol handling were refactored and slightly cleaned up (and more to do). Hopefully that will enable easier improvements and fixes in the future.
- Azure Blob Storage netradičně
- Debuggujte ve VS jako profík
- EF Core 1.0: postaru Entity Framework 7
Přijďte. Je na co se těšit.