Re-blogging

Wow, people are still tuned to my blog, even though more than a year has passed since last time I blogged. Well, I'm back, but I don't know how often I'll write new posts.

I moved to a new blogging software (BlogEngine.net) and renamed blog just to Liquid Maze (to keep it simple). The old feed will continue to function, but a new feed is available now.

I'll probably write when I feel like it instead of trying to adhere to some kind of schedule. That didn't work out too well for me. Nonetheless I'll try to keep the quality of content high.

So, stay tuned...



Currently rated 2.0 by 1 people

  • Currently 2/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Posted by: Slava
Posted on: 6/29/2008 at 6:06 AM
Categories: General
Actions: E-mail | Kick it! | DZone it! | del.icio.us
Post Information: Permalink | Comments (0) | Post RSSRSS comment feed

Do less

I just read Getting Real book and I really liked it. It was written by guys at 37 Signals, creators of Ruby on Rails and a series of successful online services. The book is about how to be more practical by staying simple and focusing only on currently problems. Among other things it shows that by doing less you can be more productive.

In other words most of the crap we are doing, or I'm doing, doesn't really matter and has no real effect on my life. I agree with that. I knew about the concept for a long time, but was never able to do much about it. After reading the book and thinking about it I'm starting to get it (maybe).

Doing less is doing just enough, not everything. There's no perfect or complete state.

People often talk about Pareto principle. In the context of this post it means 20% of all actions produce 80% of the value. According to it I just need to focus on that valuable 20% of the actions. I always understood this principle, but could never apply it practically. It's an interesting concept, but I must be missing something.

Solving only problems at hand seems more practical and easier to do. When I first saw the idea I thought, "Don't I always try to solve problems at hand?" As I read and learned about it, I realized that, no, not really. I make several mistakes.

  • Try to optimize my time by solving problems early. Cost of most problems grows over time, but most of the problems I think of never happen or are completely different in reality than I thought they are.
  • I act on what's urgent. In many cases urgent isn't important, but I'm afraid to lose an opportunity. What I came to realize is that many things that appear urgent, are not urgent at all and can be done at any time.
  • Do something without understanding of what I'm trying to do. I try not to do that anymore :)

I don't fully agree with the book on solving problems as they appear. We can anticipate for them to happen and do something early to make it easier to solve them in the future. In a way it's prevention instead of solving something that isn't real yet.

With software development I try to follow good design practices to make my code easier to understand and maintain. When I don't, I usually need to go back and change it later on, thus increasing the total cost. If I don't separate concepts and make sure my classes are independent it's hard to replace an algorithm later when I run into performance problems or switch to database from using files. Speaking about performance, premature optimization can be bad, but if I don't think about it at all until I'm having problems I can push myself into a dead-end and have to rewrite large portions of the program.

Normal life (like I have any) is the same way actually. I can't solve all my health problems, but I can help prevent them and make it easier to handle them if they appear by eating healthy and exercising.

Don't solve problems you don't have, let that which doesn't matter slide, but don't completely close your eyes. Problems will appear. Be flexible, expect the problems to happen, expect that you will have to change your code. Most importantly, be smart about it. It's possible to go too far with anything, prevention including. Be practical and stay real, and do less, just what's really important.



Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Posted by: Slava
Posted on: 5/16/2007 at 2:20 PM
Categories: General
Actions: E-mail | Kick it! | DZone it! | del.icio.us
Post Information: Permalink | Comments (0) | Post RSSRSS comment feed

Taking a break

I haven't written at the blog in a while. I realized that my interest has faded. I've been trying to push myself to create new posts, and that's just no fun.

I'm going to take a break from it. I don't feel that I'm done with the blog, so I'm expecting to get excited about it again. I hope it won't be longer than three or four weeks. Maybe more, maybe less, but I don't really know.

Feel free to stick around if you're OK with waiting for a little bit for new posts.

Thanks to all people who have being reading my posts for their time and support.



Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Posted by: Slava
Posted on: 2/19/2007 at 1:39 PM
Categories: General
Actions: E-mail | Kick it! | DZone it! | del.icio.us
Post Information: Permalink | Comments (0) | Post RSSRSS comment feed

EH added to Mindjet Research Accelerator

You can now use Mindjet Research Accelerator to search through EH forums and blogs. Research Accelerator is a plug-in to allow people search for information using different web services from inside of MindManager, MS Office applications and IE. You will need to download and install plug-in, and then add Community Server Research Service.

I'd like to thank Michael Scherotter from Mindjet for inviting and adding us to the list of supported websites.

It's nice that Mindjet is working on providing wider support for finding and importing data. It can make you more effective at finding and integrating additional information with your documents.

It would be really cool if imported information could be updated dynamically. However, integrating updates and doing version control in an application where you can edit data is hard. The problem is similar to what source control programs (SourceSafe, CVS, SubVersion, etc.) try to solve. Information in them can be changed in several places and it then needs to be merged in one place.

There are many applications specializing at gathering information from many sources (news aggregators, for example). Most of them are web-based and can gather and show news, blogs, etc. on a single page. Yahoo is probably the most popular service. The problem is usage. These applications can gather information, but they don't allow user to edit it, customize it (add custom notes) or connect several related articles. MindManager is now one step closer to supporting such scenarios.



Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Posted by: Slava
Posted on: 1/18/2007 at 12:57 PM
Categories: General
Actions: E-mail | Kick it! | DZone it! | del.icio.us
Post Information: Permalink | Comments (0) | Post RSSRSS comment feed

Worm in Liquid Maze blog update

About a month ago I managed to overload myself with work and collapsed from mental exhaustion. I had to take a break from work. That's the reason there were no posts lately. During my break I had a lot of free time and I decided to re-evaluate my blog to figure out what to write about. Previously some posts attracted a little bit of attention, while most seem to have gone un-noticed. It felt like I was shooting in the darkness in different directions, writing about .NET one day and design another.

I think it's time to get a direction and focus my posts on specifc topics.

I want to post more about my projects, Sider and Xelog. I'm going to write about different features, why they are useful in the scope of the project and how to work with them. I also want to talk about what I'm working on and what you can expect to see in the next releases. My goal is to create a sense of progress and excitement, instead of disappearing into the darkness for weeks at a time.

In addition to my projects I'm interested in information management and design process. I've written about my thoughts on design before, but I certainly have more to say about it. I want to talk more on what I think cool things have in common, what needs to be done to ensure what you design is usable, and so on. I'll also share my observations (about games I play, what makes them fun and what can be better, for example).

With posts on information management I want to go into what I think information is, what tools we can use to help us work with it (notepad, computer, etc.), analyze where it comes from and how people use it. This subject is related to Sider, since it's a software platform to deal with information, but I want to look at the the topic from a higher altitude.

I might write more .NET (about IE control hosting in .NET applications for example) or web devopment posts, but I'm not planning to do this often.

I'm really looking forward to defining focus for my blog and I hope it will be a good source of new ideas for you. My main goal is to help you understand and solve problems related to what I write about by sharing my thoughts and experiences.



Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Posted by: Slava
Posted on: 9/8/2006 at 1:19 PM
Categories: General
Actions: E-mail | Kick it! | DZone it! | del.icio.us
Post Information: Permalink | Comments (0) | Post RSSRSS comment feed

ISP vs. Dojo

I recently encountered a problem with the Dojo. My ISP refuses to allow access to the built dojo.js and dojo.js.uncompressed.js files. It seems their antivirus program thinks both of them could be mass-mailing worms. I can't access the files through the browser or open them for reading in an FTP client. I can only delete them.

I investigated the problem and found out that the file is rejected because it contains "getNamespace" string. If I replace all occurrences of "getNamespace" with "getNS" the file can be accessed fine. To be frank, I was surprised that it is so easy to be classified as a virus.

I'm not sure if the ISP can or will be willing to do anything about this. If not I will have to file a bug report for the Dojo and hope that developers will address it. In the worst case I might end up replacing the string manually when uploading a new Dojo version. I hope I won't have to do that, as there could be unforeseen side-effects.



Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Posted by: Slava
Posted on: 8/4/2006 at 7:04 AM
Categories: General
Actions: E-mail | Kick it! | DZone it! | del.icio.us
Post Information: Permalink | Comments (0) | Post RSSRSS comment feed

Small CS updates

I added some of the CS Modules. Some of the modules are quite cool and add interesting features to the Community Server. Each post will now have some statistics and links to share it.

A system of plug-ins is important in our modern day, and we intend to have support for a large array of them in Sider. It's flexibility will depend on them.



Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Posted by: Slava
Posted on: 7/26/2006 at 8:37 AM
Categories: General
Actions: E-mail | Kick it! | DZone it! | del.icio.us
Post Information: Permalink | Comments (0) | Post RSSRSS comment feed

Microsoft support example

Just stumbbled on this fine example of Microsoft support documentation. In a document describing why onload event might not fire suggested fix is - "To resolve this problem, add an onunload event handler. This turns on the onload event handler so that it will fire (although how it does this is not known)."

From http://support.microsoft.com/kb/811577/en-us.



Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Posted by: Slava
Posted on: 7/24/2006 at 5:25 AM
Categories: General
Actions: E-mail | Kick it! | DZone it! | del.icio.us
Post Information: Permalink | Comments (0) | Post RSSRSS comment feed

OpenWiking

OpenWiking is the wiki I decided to use for JSForms. It is derived from OpenWiki, old ASP-based wiki.

OpenWiki is written in ASP VBScript and can use different databases (Access, MS SQL, Oracle, etc.) to store wiki. While I would prefer .NET, ASP is much more familiar to me than PHP.

Original OpenWiki was designed to be extensible. It provides facilities to write custom macros to dynamically generate HTML when showing wiki page (table of content for example). It comes with a set of macros and people have written and published more of them.

To show a wiki page OpenWiki generates XML from the wiki text. It is then transformed using XSLT into HTML. This makes it easy to create custom themes and export.

OpenWiki supports hierarchical pages ( in addition to flat list of camel case pages. It makes it possible to create pages with the same name for different parent pages.

The project basically died in 2002. There weren't any updates to it since then and some of the people, including custom macros contributors, decided to revive it. OpenWiking was born.

It's a new generation of OpenWiki. Developers have added more themes and extensions. The project is still in development. While it's not as active as I could have wished, there are occasional updates to it.

OpenWiking lacks some features that I would like to see. There's no normal authentication support. It supports Windows Authentication, but not database-driven log-in. On the bright side it does support page-specific permissions through custom attributes.

I wish there would be more themes, most of them look quite simplistic. This isn't a big problem, since I'm planning to create a custom theme at some point anyway.

Conclusion

OpenWiking is not very popular, but I think it's overlooked. It offers a lot of very nice features. It's stable and has a clear separation between logic and presentation, making it easier to customize and theme.

I looked at the code some and in general it is well-organized and documented.

The wiki lacks several features (normal authentication, discussion for each page, etc.), but most of the important features are present. You can find it on my wiki server.



Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Posted by: Slava
Posted on: 6/9/2006 at 1:00 PM
Categories: General
Actions: E-mail | Kick it! | DZone it! | del.icio.us
Post Information: Permalink | Comments (0) | Post RSSRSS comment feed

MediaWiki

I have mentioned previously that I researched different wikis for my website and I wanted to share my experience. Today I'll talk about MediaWiki. I was aware of it for a long time (thanks to Wikipedia) and was seriously considering using it. MediaWiki is built on PHP and designed to use MySQL on the backend.

It is very mature, but in my opinion some of the features could be better implemented. The user base is quite large and releases happen often. I know it is scalable (not that it's important for me right now) since Wikipedia is one of the largest (if not the largest) wikis on the web.

The biggest problem with MediaWiki, for me, lies with technologies it uses. I'm not experienced with PHP or MySQL and don't really want to learn them right now. It might be easy to use, but in my experience web applications often require me to look at the source code to configure, customize or fix a problem with the application.

The wiki has export functionality, but it exports in wiki text format. I would prefer something better structured, like XML. It might be possible to export data from generated HTML, but that, most likely, would require writing my own PHP script.

MediaWiki has a number of useful features. It supports authentication, but number of roles is limited and permissions are set for the whole wiki, not individual pages. At least it's possible to let only registered people edit pages and track changes on individual basis.

Table of contents is built automatically for the page from headers. The page editor, while better that simple text area, leaves a lot to be desired for, especially from such mature project. There's a good support for image attachments.

The most unique feature is support for forum-like discussion on each page. I think it's a great idea. Too bad MediaWiki is the only wiki supporting this (as far as I know).

Conclusion

I decided not to use MediaWiki. I'm not familiar with technologies it is built on and I probably will have to spend more time trying to customize it than I want to. Export capabilities are also somewhat limited.

It is a good wiki, probably the best built on PHP. It has nice features, such as authentication and page discussion. It's just not quite what I was looking for.



Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Posted by: Slava
Posted on: 6/7/2006 at 3:52 PM
Categories: General
Actions: E-mail | Kick it! | DZone it! | del.icio.us
Post Information: Permalink | Comments (0) | Post RSSRSS comment feed