Friday, July 14, 2006

I created a new sub domain for learning and testing new [Web] technologies. I will add some examples of using various Web-related technologies there.

I'm starting to educate myself with an unusual strength :) I fell behind once again.

JavaScript - version 1.7 is about to be released

The cool feature of JavaScript is that it allows to check if a function is defined and create your own version otherwise, adding it to a prototype of an object. For example, JavaScript's String object lacks trim() method. shows how to fix it.

Yesterday I found a cool library which implements new 1.6 -1.7 methods of arrays in a similar manner: when your browser's JavaScript will become 1.6 and then 1.7 your code won't break, but will automatically use built in methods instead of custom ones.

AJAX - it's a pleasure! It's a coming way of making really interactive Web applications which communicate with a server without page reloading. There are plenty of books on this issue (and I bought almost all of them) but one really stands apart: Ajax Design Patterns by Michael Mahemoff
His site is

PHP. Version 5 is a full-fledged OOP language with a lot of convenient and powerful libraries developed for it. You normally can do anything you can do in ASP.NET, for example, but in a much easier and more flexible way. I was surprised when I started to work with PHP on how much better, bigger, and more convenient is its standard library and common user-developed libraries than ones used in ASP. Open Source rules!

I'm going to learn and pass Zend PHP Certification

Design Patterns
It's a cool thing, if you learn it with an excellent Head First Design Patterns (thank you, Andrew, for pointing me to it) written by by Elisabeth Freeman and Eric Freeman

MySQL 5.1 and PostgreSQL - I need to jump into that.

I still need to get heavily involved into ASP.NET and C# development. While I like C#, I think that ASP.NET approach suffers greatly from usual Microsoft's design flaw: it's too big, it's too predefined, so when you develop a real application you spend more time on finding workarounds for built-in events and other features which work the way they were designed, but not the way your application's business logic dictates.