Showing posts with label News. Show all posts
Showing posts with label News. Show all posts

Wednesday, May 11, 2011

Bye, Bye, Reflector

Greedy people from Red Gate Software, who had bought the Reflector tool and promised that it would always be free but failed, meet DotPeek, a free standalone .NET decompiler from JetBrains.

Thursday, May 27, 2010

Time to get your discount on X-tensive products

Hey guys, great news for you!

If you are interested in getting a discount on DataObjects.Net or HelpServer, take a look at this link and this one.

Saturday, May 15, 2010

On blog changes

Hi there,

Recently members of DataObjects.Net team have finally agreed on principal alteration of news and announces publishing policy. By this I mean that in order not to spread your attention between several personal blogs we decided to concentrate on exactly one, dedicated to DataObjects.Net development. So I’d strongly recommend you to update your RSS subscriptions.

In case you are interested in using the ORM under Visual Studio 2010 & .NET 4.0, there is a big announce for you, don’t you miss it!

Thanks for your attention!

Wednesday, March 24, 2010

A bit proud of myself

Sometimes it just happens =)

Recently, online banking service (Bank24.ru), frontend part of which had been designed and developed by me & my colleagues, Yuri Kurzhumov & Dmitri Govoruhin, was highly valued and won the first place prize in online banking services contest held in Russia.

 

Although I don’t work for Bank.ru anymore, I am proud of the result and I’d like to congratulate all the staff from Information Technology Department of Bank24.ru who participated in any way in creating, developing and maintaining the best national online banking service. My special congrats to: Alexey Vinogradov, Anna Mamaeva, Boris Dyakonov, Eugene Samoilov, Igor Karfidov, Olga Urchenko, Pavel Gushin, Sergei Vedeneev & Tatjana Talykova. Great work!

Saturday, February 27, 2010

Denis Krjuchkov vs. Oracle

I’m glad to introduce yet another™ technology-related blog by Denis Krjuchkov, one of the most ambitious and highly talented software architects I’ve ever known. I’m pretty sure that the blog will be extremely interesting especially for those who is keen on investigating the very depth of modern software technologies, concepts and languages.

The first post is dedicated to a struggle with a weird bug in Oracle which prevents robust serializable access to database even when there is only one opened connection. So check this out.

BTW, the long-awaited DataObjects.Net 4.2 is planned to be released at the end of this week. Stay tuned!

Saturday, January 23, 2010

Updates on the development process

The beginning of 2010 year was quite busy for the entire DataObjects.Net 4 team. One part of it headed with Alex Yakunin, has been busy with the late DataObjects.Net 4.1 release (which in fact still haven’t been shipped), the other has been working hard on the upcoming DataObjects.Net 4.2 release.

While other developers from the latter part have been working on full-text search, object-to-object mapper and other features from 4.2, personally I was working on highly demanded by customers SQL Server Compact Edition 3.5 support. The work is already done, CE support related code was committed and is being tested by our CI server during the last 2 days. The feature is going to be included into 4.2 release. As for Sql Server CE, it has a huge number of restrictions and I’m going to list all of them in one of the future posts. To sum up, it can replace its big brother (Sql Server 2005/2008) only partially.

Speaking about the upcoming DO.Net 4.2 release, we are planning to make a stable Release Candidate at the end of the January (at the beginning of the February) and deliver DO.Net 4.2 final in the middle of the February, so stay tuned.

As for me, I’ve finished working on 4.2 branch and there is a high possibility that I’ll be busy during the next 2 or 3 months with another project, not connected with DataObjects.Net development at all. The project is going to be very complicated and, as it usually happens, has very limited time-frame, but I hope that my participation will help a lot/a bit. My role will be mainly as business analyst/system architecture. I’m preparing myself for working on endless Word documents, requirements, UML diagrams, precedents, etc. So wish me good luck. =)

However, if I have enough time I’ll keep on posting some regular notes on DO.Net development process.

Wednesday, December 2, 2009

Npgsql2 provider, version 2.0.7

The time has come, the long awaited version of Npgsql2 provider is released.

You may ask me about the reason, why it was being awaited for so long? The answer is: this summer our PostgreSql support team carried out a set of investigations and proposed some critical speed-related improvements to some parts of Npgsql2 provider source code and sent the patch to PgFoundry. The patch contains 2 optimizations:

  1. Parameters handling in NpgsqlCommand.GetClearCommandText method. A set of parameters was stored in an array-based collection and linear search algorithm was used to find the requested one. This pattern is good enough for relatively small number of parameters but as you might know -- DataObjects.Net 4 uses Über-Batching Technology™, hence large number of parameters in one command might be achieved with ease. Using a dictionary to store and search for requested parameter speeded up this method up to 5 times (400% increment).
  2. NpgsqlCommand contains static readonly Regex field which is used for splitting the entire command text into chunks. We suggested to add RegexOptions.Compiled to its initialization, which might increase the startup time but yields faster execution.

Both of them were accepted and merged into the main branch. So now, with the recent release of Npgsql2 provider version 2.0.7 which includes the above-mentioned changes, we can safely move to Npgsql2 provider in DataObjects.Net (Npgsql provider version 0.97 is currently used).

And last but not the least, we are proud to know that we made such a good contribution to a well-known, successful open source project such as Npgsql2 provider.

Thursday, November 26, 2009

Nested transactions

Hi there, did you miss me? =)

I’ve got several good news about current DataObjects.Net’s development phase.
First of all, we started to implement nested transactions. It might had required to change the current transaction API but we managed to keep the compatibility with the previous version of the API.

In DO 4.0.5 we wrote:

using (var tx = Transaction.Open()) {

  // your code here
  tx.Complete();
}
and that meant that we wanted to say that a transaction is required for that part of code so DO must open one if it is absent; otherwise DO should do nothing.

In DO 4.1 this code means exactly the same thing: I need a transaction, please, open one if it is absent; otherwise do nothing.

And this is how we are going to tell that a new transaction is definitely required:

using (var tx = Transaction.Open(TransactionOpenMode.New)) {

  // your code here
  tx.Complete();
}

Note new TransactionOpenMode enum. It is introduced in DO 4.1 and has 2 options: Auto and New. Auto goes for default behavior (I don’t care which transaction I need, just provide me with one) and New goes for new (or nested one, if an outer transaction is already opened).
Rolling back nested transaction does not make any harm to outer transaction whereas commit of outer transaction automatically commits all nested transactions.

Nested transaction are implemented for SQL-based storages with the help of Savepoint feature. It is supported by most SQL servers such as MS SQL Server, Oracle, PostgreSQL, etc. Moreover, Savepoint notion is included in SQL standard.

P.S. Please remember that this is preliminary API that might be changed in final version.

Wednesday, November 11, 2009

DataObjects.Net goes to Ohloh.net

Here is the link to project’s page.

Join our camp! We’d be glad to see you among DataObjects.Net contributors and users.

Thanks!

Tuesday, November 3, 2009

DataObjects.Net goes to Google Code

Great news!

DataObjects.Net v4 moved to the public Mercurial-based repository. From this moment anyone can join the project and participate, and even build his own DataObjects.Net version. Why not? It is so easy. I bet that Alex is going to write a post in his blog describing how to check out the source code and build your own local copy of DataObjects.Net v4.

In the update list you can might that the major part of DataObjects.Net team except one or two developers works mainly on manual and manual-related tasks. This part has the highest priority for now. And this work is not hidden anymore, anyone can browse the repository, see the overall progress and read the manual even if it is not completed yet. Here is the link to Manual folder. Check it out and begin to read. Every help, suggestions, every found mistake is highly appreciated. Thanks in advance!

BTW, maintaining the source code in public repository, we can exclude the source code from the future DataObjects.Net installers.

CodeProject