My Dell laptop is terminally ill. What’s next?

When I saw the blue screen the first time, I thought that it “s an accident. But then it started happening every ten minutes or so hellip;It “s my second Dell laptop, the first one “s motherboard died when it was 2 years old. I got another Dell just to be able to reuse some remnants from the first one. This one has also lasted for about two years, and the warranty is over. It gave me all kinds of messages about memory failure – I played with memory chips, ran chkdsk ndash; did not help.

Then I called Dell tech support (I still have the phone tech support). When their technician asked me about the error code on my blue screen and said that he needs to do some research on Yahoo, I realized that the case is closed. Then annoying email and automated follow up phone call to show off their “care about customers rdquo;.

Anyway Dell is over. It “s a matter of weeks now. What “s next? This is what I need:

The monitor has to be small 12-13 inches, because when the person in front of you on the bus or plane lowers her seat, I do not want to move the laptop on my roundish belly.

I do not get why people pay top dollars for laptops with 17 inch monitors? It makes a lot of sense (and is a lot cheaper) to by a laptop with a small monitor and separately a large monitor to use at home, if needed. I also need 1Gb of RAM, 1.8Ghz CPU and 40Gb hard disk and DVD drive.

Several people told me that IBM (Lenovo) uses better parts then Dell. Another person I trust told me that Macbook Pro is a way to go. When I asked him why he would not by one for himself, he sadly replied, “Unfortunately I have two laptops that still work rdquo;. Poor thing!

Yes, I “m thinking of Mac laptop. 13 inches monitor, 1GB, dual boot ndash; Windows and OS X. Having this notebook will make me even cooler, and Windows is going to be my safety net if something goes wrong in the unusual territory.

Do you have any experience/suggestions in this regard?

Where to get topics for your blog

Recently I ‘ve got an email from a person saying that he created his personal blog, and was wondering if I could have suggested a topic to blog about.

IMHO, there is no need to search for topics. Just listen, look and pay attention to what ‘s happening around you. For example, five minutes ago I was passing by a cubicle where one Indian asked another, “How was your Christmas? “. A regular person would not pay attention, but a blogger would immediately blog. It can be something like this:

Any religion (don ‘t confuse with faith) is business. And as such, it becomes a part of our lifes. Retailers capitalize big time on the Christmas season craze – people MUST buy gifts. In New York, you can find tons of small stores own by muslims that decorated their windows with Christmas trees and Hanukah candles. It ‘s business. Technically, every corporation does the same thing in their offices. Christmas is a good topic for a small talk between colleagues. Christmas is a good reason to pick up your ass and get your kids to see the main tree in your town. Finally, Christmas is a holiday, which turns your regular weekend into a long one.

Some studies suggest that December 25 is not actually the DOB of JC. Is this important? Is your religion (or its abscence) important? Not at all. Chrismas puts all of us into good holiday mood. Crusades are forgotten, and today ‘s Christmas is represented by a kind looking Santa, twenty portions of Jingle Bells a day, Let it Snow and all other non-offensive stuff.

So Merry Christma-hanu-kwanza!

That ‘s all folks. The blog is ready. The subject is not well researched. But it ‘s an easy read and easy write.

Fine print: I blog over here on more serious and technical issues

Freedom…Is there such a thing in America?

I “ve received Fedex with two documents: instructions on how to pee in the cup and a letter of consent to sign that I agree to do this. As a consultant working for financial clients, I have to go through the drug test quite often ndash; this is my third time during the last 12 months. This made me thinking (again and again) about the freedom that exists in theory here in the USA, and most likely the situation is the same in other countries.

Let “s see. I have a freedom of not peeing in the cap, but, if I exercise this freedom, I won “t get this job. But I want this job to support my family and my current life style. This means that even though theoretically, I have a freedom of not peeing when I “m being told to do so, I “d better pee.

The situation is the same with all kind of background checks. Last year, I had to go through a criminal background check in the sate of Georgia (sure enough I “ve signed the paper that I agreed with this). I have no idea why this firm is particularly interested if I did not kill anyone in Georgia. I firmly believe that killing people is bad in any sate, city or country.

The USA citizens are not required to have passports, which is praised by many non-Americans as a great sign of true freedom. Is it, really? Yes, you do not have to have a passport if you are not planning to cross the border for business, travel or any other reason. In many cases though you need a state photo id, like driver license. Just try to get it ndash; there is a point system of other documents you have to provide proofs that you are who you say you are. You need to present documents that worth six points, for example, American passport (worth only 3 points), a utility bill (1 point), a credit card (1 point) etc.

So having a freedom of not having any id does not exist in the real world.

You have a freedom to say what you really think to you boss. You may lose your bonus, but who cares, if you want to be free hellip;

Americans are ready to trade their freedom easily for something more tangible. They like borrowing money. Most of the people who live in “their ” houses do not own them – up to a 100% of the money for the house were “given ” by the bank. And because of this, people will put up with all BS around them, will be polite and smiley , but not free…

I know of only one group of people who are really free in the USA: homeless. They do not have anything to lose, most of them have chosen this way of life voluntarily, and they can say anything to anyone, without thinking twice.

People in the USA are free to live anywhere they like. Some time ago I “ve been driving in Manhattan with a friend, and she said, “I “d love to live in Manhattan, but it “s so expensive! rdquo; Sure enough, we saw a homeless person sitting on a sidewalk. I said, “Look, people who really want to live in Manhattan, do not try to find any excuses ndash; they just live here rdquo;.

Blogging hellip;Is blogging is really free? When I blog, I try not to engage any brakes, but is it possible? Where is the line between using my freedom of blogging and offending someone? Typically, I blog about whatever comes to my mind or whatever I see now. This is my attempt to exercise my freedom. Unfortunately, I have to admit that once in a while I re-read my old blogs and either delete or modify them to make them more appropriate according to the current common understanding of what appropriate is.

What did I write all this? I have no idea. I have a freedom of writing it, and you have a freedom of not reading it.

Five most annoying things of 2006

The New Year 2007 is almost here. But let ‘s look back for a moment. This is my list of five most annoying things of 2006.

1. The batteries. There ‘s gotta be a way to seriously extend the life of the batteries on my laptop and cell phone. Can someone take care of this in the 21st century?

2. The Internet is sloooooow. You can call it broadband, cable modem, DSL, you can give us as many fixed benchmarks you like, but it ‘s slooooow. There is a hope though – Verizon offers optical connection in some areas, and Chinese made a discovery .

3. Commute. Typically, I spend a little more than three hours a day commuting to/from work. I found my ways to make it a little less annoying by using my laptop (see annoyance #1 above) with the broadband Internet (see annoyance #2 above) on the bus. But why do I have to physically be there every day? I can and should work from home. Do you think that if you let me do this I ‘ll be taking care of some personal stuff during business hours? I ‘ll do it anyway, but I personally work more when I work from home

4. Junk mail. I casually delete tons of junk mails every day. Guys and gals, I do not need any loans, viagra or stocks. They won ‘t listen…

5. Firewalls. They make the annoyance #2 even more annoying.

Other than these five little unavoidable realities of life – no complains.

What annoys you the most (other than this blog)?

Update: when I came home tonight, I found a Fedex envelope and realized that I forgot to mention one more annoying thing – peeing in the cup. As a consultant working for financial companies, I ‘m going through a drug test third time during the last 12 months. This Fedex had special forms and a list of the closest labs where I can do this…

Our book on Flex and Java is written!

The book “RIA with Adobe Flex and Java ” is written. Check out the book site. Do you know why we are smiling? Because the book writing is over! It took us longer than planned because we had to work for a living, and the time for writing this book was just stolen from our families and our sleep.

The book is about 650 pages, and here ‘s the brief TOC:

Foreword by Bruce Eckel

Foreword by Matt Chotin

Chapter 1. Architecture of RIA

Chapter 2. Introduction to Flex Framework

Chapter 3. Flex Builder Development Environment

Chapter 4. Learning Flex Through Applications

Chapter 5. A Complete Application with RPC Communications

Chapter 6. End-to-End Rapid Application Development

Chapter 7. How to write your own data services

Chapter 8. Enhancing and Extending Flex Controls

Chapter 9. Trees with Dynamic Data Population

Chapter 10. Working with Large Applications

Chapter 11. Data-Driven Approach To Flex Programming

Chapter 12. Application logging and debugging

Chapter 13. Building a SlideShow Application

Chapter 14. Developing Custom Charts

Chapter 15. Integration With External Applications

The book should be printed in February 2007. Most of the book is a heavy duty stuff that will be useful for any real-world Flex developer. The first four chapters go easy on you, but then we start going deep under the Flex 2 skin. We are sure that this book is going to be useful for any Flex practitioner. We hope that this book will be appreciated by Java developers, even though a reader with any object-oriented background will be able to use it.

This was my fourth book. And it ‘s the fourth time when I say, “Never again “. Let ‘s see if I ‘ll be able to keep the promise this time.

I do not love or hate programming languages – I use them

I ‘ve got the following message in one the online forums: “I think you need to get over your hatred of Javascript Yakov “. This is my quick response:

Let me remind you an old joke:

-Joe, do you like tomatoes?

-I like to eat them, otherwise…not really

I do not love or hate programming languages – I use them. Having the need to execute ten pounds of code of any interpreted/platform dependent language in a non-standardized environment such as a Web browser is bad. In the case of Ajax, it ‘s a lot of JavaScript per Web application, and I do not like THIS USE of JavaScript.

I do not have anything against JavaScript when it comes to beautifying the user ‘s Web page, nice visual effects, some client-side validation, passing data between various applications that are part of a Web page. But I ‘d prefer running my programs in a VM, being that JVM, Flash Player, or anything else.

My 2007 predictions

We are approaching 2007, I ‘ll try to take my guess about what ‘s going to happen in the IT world.

1. Open sourcing Java won ‘t matter – it ‘s a non-event.

2. Ruby and Ruby on Rails won ‘t make it in 2007 either. I still do not see a compelling reason to switch.

3. Ajax hype is stronger than I thought mainly because of the life support offered by frameworks like GWT. But still, I ‘m not going to recommend enterprise IT shops make any serious investments in AJAX.

4. We are going to watch some interesting competition in the RIA arena between Adobe ‘s Flex and Microsoft ‘s WPF/E. Adobe has more mature technology, while Microsoft is an established player among enterprise developers. I won ‘t be surprised if Adobe will dramatically drop the licensing fees for their Flex Data Services.

5. Java remains the best choice for the server side enterprise development, but it won ‘t be able to compete on the desktop.

6. IT outsourcing remains a part of our lives despite (or because of) the poor management by American corporate IT staff, and the reason is not the lower labor cost of overseas programmers, but the abcence of programmers in the USA.

7. Switch from plain stateless text-based to rich internet applications will slowly continue. But this won ‘t be an easy process – it ‘s not that easy to get rid of these annoying but familiar habits of dealing with one-page-at-a-time applications. The fight for the Back button on the Web browser will continue.

8. I ‘m not going to afford an early retirement. Let me go and buy this lottery ticket for tonight ‘s mega millions…

My Flex class at NYU is over – a pleasant experience

This was a five-week Adobe Flex evening class at New York University, one of the top-tier schools in the USA. When I found out that eighty percent of my students were Java programmers, I decided to turn this class into an intensive training experience. This was a hands-on class, plus students were working on their own on home works (complete working applications) between the sessions. For each class I ‘ve given 15-page custom-made handout, and here ‘s a quick summary of what I ‘ve covered:

Session 1. Architecture of Rich Internet Applications. Hands-n demo of an …AJAX application. Flex Builder. Development of a calculator.

Session 2. States, ActionScript, List-based controls, Data Binding – multiple use cases

Session 3. XML with E4X, Namespaces, Five different ways of programming in Flex depending on your background, Regular Expressions.

Session 4. Flex-JSP communication, Events, custom components

Session 5. A lab on custom events. Detailed code review of an application utilizing Flex remoting with RemoteObject, HTTPService

In the beginning of each class I ‘d ask students to stop me if I was moving too fast. They ‘d say, “We ‘re fine, go ahead “. At the end of the class students asked for the next, more advanced class. Universities do not add new classes to their programs too often, but NYU deserves lots of credits for being an early adopter of Adobe Flex 2. They did not include advanced class in their program yet, but I ‘ll re-run the same class in April. Re-run is a wrong word here, because I always teach something different. Money-wise, this class was an absolute bargain – only six hundred bucks for five evenings with me. Hmm, does it sound like a whore ‘s statement? Nope. Pretty Woman? Yakov, stop it, we are talking about EDUCATION here, get serious, will you! OK, OK. Sorry. No, just one more…singing…We do not need no education…Pink Floyd…

Beside NYU I ‘ll be co-teaching one day Flex Workshop at a famous AjaxWorld conference in March and private corporate gigs in the USA and Europe (btw, would love to go to India while it ‘s not too hot there). I ‘m also wondering if there is a huge demand in Adobe Certified Flex Instructors in Hawaii, Paris, Tokyo and Bangkok?

Visiting an offshore training camp for programmers

I wrote this while sitting in a training camp Genghis Khan, a school for the rookie offshore programmers. The camp is located in the remote mountains of northern Mongolia. Many wannabe offshore developers come here for training. Since I am a popular personality among Mongol Java crowd, they let me sit in the class where Srini, the guru of offshoring was delivering the presentation called “Dealing with Overseas Employers 101 rdquo;. These are my notes from this class.

1. America is rich, we are poor. It “s not fair, they have to share.

2. In the beginning, their manager will try to scare you by promising that he “ll check up on the status of your assignments daily. Do not be afraid ndash; a status report is just a formality, and they “ll take whatever you write.

3. One of your major problems will be “what to write in status reports “. Never write “I could not do it rdquo; there. Americans like positive statements. For example, let “s say you “ve got an assignment to create a reusable component that will identify the number of failed database requests. You do not even have a clue what are they asking for.

The first week you spend on Google in hopeless attempts to find such component. The status report for the first week should read “Comparing various approaches of creating reusable db-failures component to find the most efficient and effective way for its development rdquo;. During the second week invent something similar. Hopefully, on the third week something more urgent will come up and you “ll get another assignment.

4. Be prepared to spend the first couple of weeks waiting for the logon id and password to your employer “s network. After obtaining these credentials, you “ll find out that you still don “t have access to a dozen of servers, which require Unix logon. Your remote manager will promise you to resolve it as soon as possible, but because of the service level agreements (aka SLA) with the Unix support team , you won “t get access for another week or so. Typically, it “ll take about a month just to get you connected.

5. Never say “I do not know rdquo;. Accept all assignments ndash; one of two things will happen ndash; either you “ll figure out how to complete the assignment, or it “ll get cancelled.

6. In conversations with your overseas teammates, always require detailed written specifications for each small program modification. Ignore their statements “I “d fix it myself faster than writing detailed specs for you rdquo;. They have no choice and must work with you to show that your team is useful.

7. Use time difference to your advantage. For example, if you want to send an email asking for some clarifications, do not send it in the moring, because you may get an immediate answer. Do it in the evening (your time zone), before leaving the office ndash; you “ll get the answer only next day.

8. If you have a choice, avoid fixed price projects. Hourly-based pay will allow to put a couple of extra hours here and there, and having a couple of extra rupees or rubles never hurts.

9. Experienced offshore programmers never try to obtain US working visa and to work onsite. If you do this, you “ll work a lot harder ndash; not worth the trip.

10. Always be polite ndash; it “ll get you far. Insert “Excuse me rdquo;, “Thank you rdquo;, “Yes sir rdquo; in every other sentence. Always smile – even during phone conversation. The he showed this movie about an offshore tech support.

11. Change your local employer every three months. You are gaining experience daily, and even if the new job offers just one percent of salary increase, go there. It “s a golden IT offshoring era ndash; use it while it lasts! Or as they say, it ‘s time to make a quick buck!

12. If you work in QA, keep a couple of bugs unreported till the very last date of the testing cycle. Report them at the end of this day. They ‘ll have an emergency meeting, production released will be postponed (no big deal) and you ‘ll be able to put more billable hours on this project. Repeat the same procedure at the end of each testing cycle. In computer science this is called recursion.

For some time I was speechless after hearing all these advices. Srini spent at least half an hour after the class answering specific questions from students. I also asked him, if he really believed in his teachings. He smiled to me and said, “Welcome to the real world, ma man! rdquo;

Will teach a one day intensive workshop at AjaxWorld 2007 Conference

My partner Victor Rasputnis and I will teach an intensive, one-day workshop called “Adobe Flex Developer Bootcamp ” at at AJAXWorld 2007 (see http://www.ajaxworld.com/) in New York in March. .

This hands-on workshop is intended for Web developers, designers and technical managers who want to learn how to build Rich Internet Application using Adobe Flex. Held on March 19, the day before the AJAXWorld Conference amp; Expo begins, Flex Developer Bootcamp is a hands-on workshop that is not offered anywhere else: during this day attendees will create two fully functional Web applications.

Pre-requisites: working knowledge of any object-oriented programming language. Bring your own laptop.

Here ‘s the detailed schedule of this workshop.