Archive for January, 2006

This is the year!

Saturday, January 7th, 2006

Happy new year everyone!

I thought I’d write this post before the end of the first week, or else wishing a happy new year would sound completely stupid.

It is indeed not very nice that I haven’t blogged for most of December. For one, a couple of “real-life” events have helped in not being able to do so: I’ve moved to a new, much nicer, apartment, and I’ve had a quite intense family-and-friends Christmas week.

No, the moving to a new apartment doesn’t have anything to do with the income from ViEmu. The moving was planned before I even had the idea of developing ViEmu. And sales are picking up, but they’re not that strong!

Apart from those errands, I’ve been working tough for all this month. I think that it’s more important to advance in the development of my products than to blog more often - the blog is nice in several aspects: raising awareness, making interesting contacts, sharing the experiences… but as long as the product is not there, there is no business to be made!

Even during the family-and-friends week, back at my hometown, I’ve done quite a lot of work on NGEDIT and ViEmu. Mainly on NGEDIT, even if I’ve managed to release a maintenance release of ViEmu last week. NGEDIT is the main project, and the one which (I hope) will be able to generate a nice revenue stream. Anyway, there is a fair amount of synergy between the two products, and both will benefit from my current work. I’m ‘crossporting’ the vi/vim emulation core from ViEmu to NGEDIT - I say crossporting, because it’s actually a heavy reengineering of that core so that it is compatible with both a hostile environment like Visual Studio, and NGEDIT, which is hopefully better designed, and for sure better-behaved. The new shape of the emulation engine will allow improvements in ViEmu’s interaction with VS, and it will also power killer vi/vim emulation for NGEDIT.

Why am I doing this right now? vi/vim emulation for NGEDIT is surely nice, but vi/vim emulation could well be missing from NGEDIT 1.0 without significantly affecting sales - most of the potential customers of a new text editor are not vi/vim freaks.

The reason is that I need to develop NGEDIT as the best text editor for me first, and then that can be a good product. And given that I can’t use anything but vi/vim editing now, I need to have good emulation myself.

I’m currently using NGEDIT every day - not for programming, I do that in VS with ViEmu, but definitely for editing text files, keeping my work log, etc. It’s quite basic yet, but usable. And the part I was missing the most was better vi/vim emulation. It does have vi/vim emulation, written in NGEDIT’s own scripting language (actually, the module on which I built ViEmu), but ViEmu’s emulation is much, much more complete.

The new core is written using the same concepts as the C++ string class that doesn’t suck, that is, as very loosely-coupled template-based code. Of course, using those string classes themselves. And this, together with a powerful and flexible interaction design, allows it to be used both in VS an in NGEDIT.

Incidentally, I realized that, as soon as I finish the “crossporting”, I will have a fully portable vi/vim emulation core that I can use to produce a vi/vim emulator for any other environment quite quickly. I don’t think it can be a very profitable business, but it’s nice to have that possibility.

On the sales front, December was so-so, lagging a bit behind October and November, which were the strongest months. Actually, the web stats from the last two weeks of December were pitiful. I guess most developers around the world had better things to do :)

But January, so far, is being excellent. Sales during the first week so far almost equal those of the complete December! I had heard that the market for developer tools in January is strong, but I didn’t expect this much. It probably won’t, but if all of January stays at the same pace, it will be incredible.

And regarding the plans for NGEDIT itself, there are a couple of things to note.

One of the Christmas days, after having been coding for some hours, I was feeling tired. Programming is an activity that gets me really tired, so I often tend to stop doing it and find other activities. I actually have to press myself to get coding. Anyway, I stopped coding and started preparing a “mock-up” of how NGEDIT is going to look. It was some kind of procrastination, so I wasn’t feeling very happy about spending my time in such an activity. But the activity got me completely absorbed, and after some time I had a very, very nice image of how NGEDIT is going to look. I’m not posting it, as I want to keep the details for now, but it gave me the final idea of exactly what I want version 1.0 to be. And it also helped motivate myself. I had done a very rough mock-up when I started with the project, back at the beginning of ‘05, but it was too basic, and didn’t do a good job of representing my plans. This one, though, is perfect in many aspects: it’s a source of inspiration, and it also helps clarify the development/release strategy.

All in all, I’m glad I procrastinated that day :)

And the second note regarding NGEDIT is that I’m seriously thinking about renaming it. The plans are for it to grow to be much more than a text editor, so the name is a bit limiting. And on the other hand, I plainly don’t like it so much now.

I’d be losing the pagerank, links, etc… to the current ngedit.com, but I think this is the moment I will be losing less with a full name/domain change.

Funny, because I decided to host ViEmu in ngedit.com instead of viemu.com in order to build-up some popularity for the site in preparation of NGEDIT, and now I will be losing that, for both products. Anyway, ngedit.com will keep pointing to the other domains in the future, and in any case viemu.com will become the main site for ViEmu once I release NGEDIT.

Regarding the new name, I have several candidates, and I already have a preferred one (which I stumbled upon today). I’ll wait until tomorrow, and if it sticks, I will register the name. I’ve already registered so many domains in the past few months, that I think I should restrain from doing so just a couple hours after thinking them up.

Anyway, I hope you all had some nice days for the end of the year, and I wish you an interesting 2006. It’s definitely going to be the year for me, I hope it is for you as well!