Felix Memory Serves tools

Progress report: Memory Serves

As I stated in my May development roadmap, this month I’m working on a server component for Felix. Development is going very well, and I should have an initial version of the server itself ready for release by this weekend. After that I’ll work on creating an interface to the server from Felix, and together with a couple more features, that’ll be the 1.2 release.

I’m calling the component Memory Serves. Not too creative I know — if you’ve got a better idea I’d love to hear it! It’ll be a separate download from Felix, and will be free. I’ll create a page for it along with the initial release.

The server will work as follows: it’ll launch a Web server on the local computer; you can use your web browser to configure the search preferences, upload Felix memory files, and so on. You can also “download” any of the memories/glossaries in Felix format, to use locally, email, or whatever. Also, anyone on the local network can access this server, and upload/download memories, etc. For the small collaborative groups I’m envisioning, this shouldn’t be a problem, but if you’ve got a use case that calls for permission levels (like who can add/delete a memory), please let me know.

Memory Serves memories page

From Felix, you’ll then be able to connect to the memories/glossaries on the server from any computer on your local network, using the connection string for each memory/glossary. From there, it will be just like using a local memory, except that you won’t have to worry about saving your memory: the server will handle that automatically.

I’m planning to make early releases of both the server and version 1.2 of Felix, in order to see if users can uncover any problems before I make the official release later this month.

4 replies on “Progress report: Memory Serves”

…if you’ve got a use case that calls for permission levels (like who can add/delete a memory), please let me know.

In our office, we have some translators who are employees and some who are temps. It might be convenient for us to be able to prevent the temps from deleting memories, but it certainly isn’t as high a priority as making the TMs available for everyone to share.


Thanks a lot for the feedback. Yes, I can see a use case there for restricted access. The easy way would be to simply password protect certain actions (like deleting memories). The harder way (but in the end probably the best) would be to add a login system. I’ll plan on having some sort of access restriction by the official 1.0 release later this month. (I’ve just released version 0.1, and will be blogging it in a moment.)

Right now the server operates over HTTP, which prevents truly secure password protection. I’m eventually going to put a free public memory server on the Felix website, which will use SSL; at that time I plan to update Memory Serves to enable an SSL option.

Thanks for the information, Ryan.

I’ve been told quite a few times by the Powers That Be that I’m not allowed to run a server on our network under any circumstances, so I wonder what they will think of Memory Serves. I suppose I’ll find out soon enough.

Does this release mean that Felix has acquired a taste for CherryPy, by any chance?

“Does this release mean that Felix has acquired a taste for CherryPy, by any chance?”

Pin-pon! Yes, Memory Serves is a CherryPy application. Beautiful framework, simple yet powerful.

My online word count tool was my first attempt at a “production” CherryPy app — it was kind of a proof-of-concept project for using CherryPy with Memory Serves. It turned out to have everything I needed, and has allowed me to make very quick progress with this project.

Having rules against running a server would make it very hard to use translation memory collaboratively at work. The other local solution I’m aware of would be DCOM, but that has a lot of security issues, and not even Microsoft seem to be pushing it any more.

I wonder what they would think about using an offsite server over SSL? Or running their own Internet facing server over SSL (if the local-ness is the problem)?

Leave a Reply

Your email address will not be published. Required fields are marked *