Oren Eini

CEO of RavenDB

a NoSQL Open Source Document Database

Get in touch with me:

oren@ravendb.net +972 52-548-6969

Posts: 7,640
|
Comments: 51,260
Privacy Policy · Terms
filter by tags archive
time to read 2 min | 356 words

To the theme of "Developers! Developers! Developers!"...

The interface for feature requests in berlios.de is a bit awkward to use when you want to do a bulk insert, so here is the features list for the next version of NHibernate Query Analyzer:

  • Recover from errors in mapping / configuration gracefully and then show what items caused the problem (red icon on the configuration screen).
  • Make the Hbm Editor & the Cfg Editor to tabs and allow editing files without openning a modal window.
  • Drag & Drop files to the configuration tab will add them, elsewhere will open them (with a message if they are not part of the current project.
  • Seperate the configuration tab to files in projects and configuration results.
  • Add a summery of the mapped classes and their abilities.
  • Generate code from hbm files via hbm2net & allow to create assembly directly from the menu.
  • Add proper code highlighting for everywhere a code is shown (right now it's hbm editor, sql & hsql windows).
  • Add wait window when waiting for DB.
  • Add severity combobox for logging viewer control when filter by is set to severity.

That is for now, if you want something, drop me a note.

time to read 2 min | 238 words

Here is a nice trick to easily upload stuff to your blog, it used to drive me mad that I'd to open the ftp client, log in, browse to the right directory, browse to the right directory on my computer and then click "upload" every time that I wanted to post an image or a file there.

Here is the solution, a simple batch script that will upload it to the spesified directory by itself. I put a shortcut to it on the SendTo Folder (a shortcut so I could change the icon to something nicer :-S) and it certainly help things here.

@echo open ftp.server.com > %tmp%\ftp_cmd.txt
@echo username >> %tmp%\ftp_cmd.txt
@echo password >> %tmp%\ftp_cmd.txt
@echo cd wwwroot/Images/Blog >>%tmp%\ftp_cmd.txt
@echo put %1 >> %tmp%\ftp_cmd.txt
@echo bye >> %tmp%\ftp_cmd.txt
@ftp -s:%tmp%\ftp_cmd.txt
@del %tmp%\ftp_cmd.txt

time to read 4 min | 658 words

Following this and that, I decided that I want to create my own set of questions, I'm not on par with Scot, but anyway... :-)

WinForms:

  • What is the purpose of Contorl.InvokeRequired property? What are the situations that you would use it?
  • Why Form.WndPrc is a protected method? In what cases would you override it?
  • What is the difference between inheriting from Control and inheriting UserControl? When would you do either?
  • What does it mean to set Thread.IsBackground = true?
  • Can you use Data Binding without Datasets? If yes, how? If not, why not?

General .Net Stuff:

  • When would you subscribe to the Thread.UnexpectedException?
  • When would you subscribe to AppDomain.CurrentDomain.UnhandledException? Can you prevent an application termination by subscribing to this event?
  • What is the Thread Local Storage Pattern and when is it applicable?
  • What would happen if an exception is thrown in the first method of a multi-cast delegate (a delegate that contains several methods)? What would be the return value of such a delegate if an exception is not thrown?
  • Name three places where the BCL uses the Strategy pattern.
  • How do I call my old VB code that contains all the business rules?
  • When should you use ClsComplaintAttribute? What are the differences between the CLS and the CLR?
  • What is the preferred way to concentrate strings? Why?
  • What is the difference between Array and ArrayList?
  • When would you override Object.Equals() and what else do you need to do when you do that?
  • What is an AppDomain?

General Programming Info:

  • What is a regular expression and when is it used?
  • What is XPath and when is it used?
  • What is working set and why is it important to application performance?
  • Is it important to preserve locality of reference? Why or why not?
  • What is paging? What are the implications that it has on scalability?
time to read 1 min | 154 words

I want to use Cuyahoga as my CMS, so I place it on the root of the site. I also have a dasBlog on the /Blog/ directory. Both the root & the /Blog/ directory are IIS applications.

Each of those applications works very well on its own, but my problem is making both of them play together. I get the following error when trying to access the /Blog/ directory:

 File or assembly name Cuyahoga.Web, or one of its dependencies, was not found. 

<add type="Cuyahoga.Web.Util.UrlHandlerModule, Cuyahoga.Web" name="UrlHandlerModule" />

Cuyahoga-0.6.0\web.config

My problem is that I can't think of a way to trasfer control from one application to another. Anyone can offer a solution?

time to read 1 min | 86 words

I was just called to support an unamed family member that was having trouble reading a document. I thought that it was the usual lost document issue, but it was much worse.

This person was attempting to open a scanned image in Word, and got confused when word showed it the uknowned encoding. I changed the extention to Jpeg, and everything was fine.

It should be one of those things that you read about in joke sites...

time to read 3 min | 443 words

Well, I'm nearly done with it, I think that you ought to like the interface, it's not done yet, but it still allows for some really nice stuff like:

  • On-the-fly schema checking - so you get visible errors with clear messages that tell you what you did wrong.
  • Support all the possible valid mapping according to the schema.
  • UI-ish way to add elements & attributes.
  • On-the-fly visual feedback on the way your final Xml will look like.

What remain to be done:

  • Code highlighting for the xml window.
  • Tighter integration with the code & the model, meaning that class variables will give you the ability to search for classes, etc.
  • Finish off some edge cases (id vs. composite-id and several others).
  • Add support for removing elements.
  • Integrate the editor with the rest of NQA.
  • Build the code generation from the mapping document (hbm2net, hbm2ddl, etc).
  • [Update: Make better UI, the icons are just rundom images from my computer. There has got to be a better way to do this.]

What is cool:

  • All the interface is done without knowing anything about the data it is displaying, it's all runtime reflection stuff and some editing of the code to express ideas that were not trasffered by xsd.exe (which elements/attributes are required, types of attributes, etc).
  • You can load an existing document right now and it'll display it on the UI and let you explore/change it in a nice way.

[Update: The code is in the repository if you want to play with it. It's 5:14AM on my timezone, and I didn't feel the time flying, I'm going to sleep now and hopefully I'll manage the rest of the changes tomorrow.]

FUTURE POSTS

No future posts left, oh my!

RECENT SERIES

  1. API Design (10):
    29 Jan 2026 - Don't try to guess
  2. Recording (20):
    05 Dec 2025 - Build AI that understands your business
  3. Webinar (8):
    16 Sep 2025 - Building AI Agents in RavenDB
  4. RavenDB 7.1 (7):
    11 Jul 2025 - The Gen AI release
  5. Production postmorterm (2):
    11 Jun 2025 - The rookie server's untimely promotion
View all series

Syndication

Main feed ... ...
Comments feed   ... ...