This is a slightly dated post (written around November last year), that I forgot to post some time ago, so bare in mind, we’ve already started working on the faceted navigation getting open source status and I’ve updated the first sentece to include Adam Matusiak joining our team - Welcome Adam!
Over the last month or two our hive mind has assimilated two new voices, our thoughts have become one with Greg’s, and Adam’s.
There is a really heartwarming article (if you’re from Poland) on Silicon Valley Watcher about the skills of Polish engineers, the low turnover and the general satisfaction from Polish employees by international companies something that UK as a country discovered and Cognifide in particular have noticed quite a while ago.
And I really can fully relate to that, I would bet any money to stand the competency of any person in my crew against any of the top professionals out there. It definitely is a good time to be in the IT business in here. A small excerpt - worth noting:
Just a daily time saver, for reuse at another time.
Any old time windows developer, will remember the fun of using the ini files with GetPrivateProfileString. As much as ini files sucked there is one nice aspect of that call - you can setup a default value it is to return in case a value is not specified in the file. Similarly in a daily episerver programming you usually want to read a value but if one is not epcified you will usually want to use another value and just move along with the progress, and not really care to have an if there to do the filling in. Not to limit the property to any specific type - the task can be nicely solved with generics to handle pretty much any type of property.
Some time ago, with a little help of TDI some time ago I’ve successfully switched all my outgoing calls to Voipdiscount, while at the same time moving my incoming calls’ number to mobile provider through a Sagem base station, all of this nicely integrated in a Linksys SPA3102 gateway in a way that a regular person grabbing a phone at my desk cannot realize that at the current moment it’s a hybrid not really having much in common with the POTS, they expect to be using. All of this effectively reducing the monthly phone spending to a negligible monthly fee, just in time when my eldest starts to spend hours on the phone - great!
I’ve been on a sole task today to improve a database performance of the project we’ve been working on. As much as I enjoyed the task there is one thing that costed me quite a bit of head scratching. Being a standard nerd I usually have about 20-30 applications running on my machine at a time, I didn’t immediately associated the error with the tuning advisor but rather assumed it’s one of my other 29 applications/servers/daemons/services in background did something stupid, probably even some of my code craving for a bit of attention, right? So I moved to tune the database on the server via remote desktop, but when I hit a wall there I’ve looked around for the solution and it looks like that it’s been known to MS for almost 2 years now.
As much as I seem to be enjoying my trip with EpiServer there are some little things I don’t seem to appreciate all that much and I’m not quite sure how to work around some of them in an elegant way.
EpiServer has a fairly advanced way of dealing with properties but it also seems to be a bit tough on the developer whenever you try to do something more than just strictly using its API-s. One of the areas I don’t really enjoy is the dealing with the pages that are expired or generally unavailable for the user for various reasons.
As we’ve been debating with Steve in the EpiCode IRC channel (Come on, join us there! You know you want it!) a few days ago, probably one of the biggest missing features in EPiServer is multi-page property.
adding a great number of consecutive pages is a tedious process
it’s not native to EPiServer, meaning - if I use it in my module that I would like to distribute later I need to put the control there. Short of potential licensing issues, this introduces an unnecessary complication level for such distributable modules
Another big issue with the page selecting dialog - apart form being unable to select multiple pages is its inability to root it anywhere outside the original EPiServer repository root. This really limits its quality in terms of re-using of its functionality to be able to use it for selecting of a limited set of pages.
Searches paged in the database have posed a problem in SQL Server at least prior to version 2005. I’ve found some solution to the problem on the net but they were so cludgy that I would never really put anything like that in a production server. I hope the following will shed some light on how they work in general by using in in EPiServer context.
Theoretically in EPiServer you can pull the pages that match the criteria from the database with EPiServer.Global.EPDataFactory.FindPagesWithCriteria() into the PageList but that seemed to be imposing a strong performance penalty with increased number of pages meeting the criteria. Since this search is sometimes done even multiple times on a page request in our project we needed something better.
Our friends at EPiServer AB has just let us know that they are in need of EPiServer CMS specialists that might be looking forward to working with them directly, so if you’re an EPiServer professional and meet the requirements specified on the recruitment page give them a shout!
If you’re not already familiar with EPiServer you’re probably not going to make it this round, but then again I suggest you start looking at it now. EPiServer AB is a really dynamic company recently expanding aggresively on the international markets - and rightly so. EPiServer is deserving every credit it can get. I can say that my journey with it so far has been really smooth and I’ve enjoyed every bit of it. So if you’re not up to it, get ready for the next round, in the mean time, grab yourself a login - download a copy of the documentation from the Knowledge Center, a demo license and join us on the Developer Forum.
It’s a great bunch, really fun to work with.
I’ve discovered yesterday on Steve’s blog that him and our other friends on EpiCode have gathered on IRC (something I’ve been lobbying here at our company for quite a while). Come, drop by, let’s meet!
I’ll definitely try to hang out there as much as I can. great to meet you guys.
As Steve suggests - grab yourself a copy of XChat or aMirc, connect to irc.freenode.net and /join #epicode
What a great idea!