Wednesday, July 20, 2005

Don't let us down again with the new Hotmail

I remember when I heard they were about to upsize Hotmail accounts from 2MB to some big number.

I want all of you to know that in most countries in Latinamerica that never happened. The reason? I guess there must be more than one, but I believe the most important is that MSN has been selling Hotmail Max in Latinamerica for some time.

Hotmail Max is a paid (cheap) service that enhances Hotmail basic services in various ways, includding storage capacity.

No matter how successful they have been on this, companies that decided not to discriminate the Latinamerican market like Google and Yahoo are getting a larger stake of it everyday, and I hope MSN will revise their plans with the upcomming version of Hotmail.

Apparently everybody else will get now 2 GB wich is on pair with GMail. Good! But I don't believe it until I see it on my mail box.

A note for those that tend to see evil on everthing Microsoft does: Microsoft believes in selling software and services. That pays their bills. They don't completely buy, as of yet, Jonathan Schwartz's "Free software is like TV" model. When they decided to give out Internet Explorer for free and later to bundle it with the operating system, they did it because they had no other chance. Everybody else was doing it already.

Hotmail has been an exception. They bough a free email company, and they saw the value of it. But don't expect them to give you something for free just because you think it is cool.

Fascinated by AJAX

I know I am not early to the party, but it is on purpose. I refused to blog about this before because I don't want to give anybody the false impression that I am a cool geek.

Anyway, I am seeing more and more AJAX (Asyncronous Javascript and XML, more less)applications emerge, and I since yesterday I see some AJAX in my future.

I am glad someone (yes, Microsoft, but also some independent developers) have listened to the call for an abstraction layer that will enable all of us to create richer experiences in Web applications.

By the way, Google is cool, but Microsoft has made some of the best AJAX applications I have ever seen. It just came to my mind the day I found MSDN replaced its Java based content tree with a DHTML based one. I am not sure this is AJAX as we conceive it today, but how many years ago was that? Six? And when did they come up with DHTML, eight years ago?

Now that I saw the light, I am really looking forward for Project Atlas.

Sunday, July 10, 2005

About OS/2 and the 850 million Microsoft paid IBM

Update: I cannot avoid editing this article, mostly because I see in my stats that a few (even from inside IBM) are reading it. I don’t want to change at all the sense of what I wrote, but I feel I have to correct mistakes and improve the style and tone of it in order to make it readable.

I received today the Stardock Magazine by email, and it contains a link to an article in which Stardock’s Brad Wardell discusses some of his experiences as an OS/2 developer and the deal that Microsoft and IBM have just cut:

...

Birthdays, anniversaries, whatever, I have trouble remembering. But OS/2 2.0’s release date is burned into my mind. And for the subsequent 6 years, I devoted nearly every waking hour to making OS/2 succeed. It wasn’t about money. It wasn’t about business. It was a cause. OS/2 was my cause. It was a better way of doing things. Some people get wrapped up in ideologies. Other people go on religious crusades. I was on an OS crusade.

And we lost. Badly.

Another date I remember well was Fall of 1996. That was when Microsoft release Windows NT 4.0. And within a year, the OS/2 market died. Microsoft’s effective FUD (fear, uncertainty, and doubt) combined with IBM’s unwillingness to strongly back OS/2 made it ripe to be toppled over by Windows NT 4.0 which, while not as good as OS/2 Warp 4, was "good enough" and had good industry support.

By 1998, our once thriving company was laying people off and struggling to survive. And I wasn’t a 20 year old college student anymore. I was 26, married, with a young son. I had responsibilities to my family and my employees. We limped our way into the Windows market, tail between our legs. Nowadays, we’re a pure Microsoft shop. .NET solutions across the board. Microsoft SQL. Microsoft Office. Our company makes a great demonstration of Microsoft solutions now. Which is pretty ironic since we were once OS/2 zealots. I’m not a Windows zealot today. I’m not even a Windows advocate really. It’s just business.

The romanticism of OS technology has warn off and there’s nothing as relatively cutting edge as OS/2 was back then. So now I don’t really think of the OS choice much beyond market share and what makes good business sense. Now it’s about the software WE make. I am still dedicated to a cause -- making stuff that enables people to use their computers however they want. And I want to make software that is cool and useful. That’s where software like Object Desktop and now ThinkDesk comes in.

So today IBM and Microsoft announced that they’re closing the books on that uglyness that was OS/2. Almost 10 years after Windows 95 was released, Microsoft is paying IBM off to not sue them over all the "unpleasantness" that Microsoft was involved in to ensure that 95%+ of you are using Microsoft Windows instead of IBM OS/2. We’ll never know if we would have been better off if OS/2 had won out instead of Windows. But at least IBM got to recoup some of their costs for trying.

Are you kidding? Do you call what IBM did "trying"? Well, maybe the tried, but they also gave up miserably. I understand how it will always be so cool for you to write "Microsoft" and "FUD" on the same phrase, however, as an ex OS/2 zealot, I disagree with you, 80%.

By 1988, I did programming and support for an organization that had tens PS/2 and PC computers connected on a Token Ring LAN. I was 18 and it was my first job. Even the servers ran PC DOS 3.30 and the PC LAN Program 1.3 (I think those were the version numbers).

I remember when one day, a new box with a few diskettes came to my hands. -"Try this", they told me. I was able to install and try OS/2 1.1, but it was very difficult to make the networking work. I remember I had the feeling that I was for the first time seeing a real operating system running on a PC. It also left me very frustrated.

On my second job, by 1991, I also worked in the same network, but this time I was hired by a company that provided much of the hardware and software for it. The network eventually grew to hundreds of nodes, and became a WAN using FDDI. Performance of file sharing database (Clipper based) applications on PC LAN Program was getting really bad.

OS/2 1.3 came to rescue. I remember being there with my boss the day we installed OS/2 1.3 on the new PS/2 Model 90 (or were them 95?) servers. It was the nicest piece of software, and the nicest piece of hardware that I had ever seen. Performance went up like a rocket. That was probably the greatest triumph I remember from that job, and I am sure for my boss it also meant a lot.

OS/2 was still the product of collaboration between Microsoft and IBM. OS/2 GUI, Presentation Manager was very resembling of Windows 2.x, a DOS GUI program I only knew because of Excel. I think version 1.3 was vastly optimized by IBM alone (or was it 1.4?). It included a 32 bit version of HPFS that installed in case you had a i386 or i486. I must say it worked like a breeze.

By the time Windows 3.0 was out, I was a deeply convinced OS/2 zealot. No way an "inferior product" like Windows was going to win in the long run, it was just impossible.

OS/2 2.0, the first fully 32 bit version of OS/2 came out late, but it was wonderful. I still remember the cover of BYTE magazine. IBM had gathered a great team for OS/2 2.0. They had such a great vision they didn’t know very well when the product was ready to ship. They kept adding more and more sophistication. On the technical side, as a fan of Object Oriented Programming, version 2.0 was full of interesting things to look at under the hood. Its compatibility with legacy software was also incredible.

Maybe it wasn’t a better Windows than Windows itself, but it was very close, and it was clearly a better DOS than DOS, and the best OS/2 ever. The Workplace Shell was not very polished and it was inconsistent at times, but it showed promise.

During 1993 and 1994, I had access to beta versions of OS/2 3.0 (Warp). I don’t remember if it was a formal beta or if somebody at IBM found a way to make the diskettes reach my hands. I saw the betas improve so much that, I was one of the first in my city to buy it when it was released. It was around USD 69 I think, and I wanted it for my home computer.

I was the last time I saw a new version of an operating improve its performance so much on the same hardware.

"Warp" helped to consolidate on us OS/2 zealots the feeling that we were on the right side and Microsoft was on the wrong side. We were sad and skeptic every time Microsoft made any progress.

For instance, we knew 1995 was the year of Chicago, the much improved Windows 95 that was supposed to steal much of the innovation made on the user interface of OS/2. But we were not too worried because Chicago was going to be just a DOS shell. OS/2, on the other side, was a full 32 bit operating system, and it was the best.

I must admit, I needed to be defeated first, so I could realize how ridiculous it is to be an OS zealot.

The first time I saw Windows 95, I just knew Microsoft were going to win the battle. It was simpler, more consistent, it performed better, it came with better hardware support, it used only the best UI artifacts found on OS/2 but also had some innovations of its own. Even if it was a DOS Shell it was 32 bit in most areas and multitasked relatively well. I saw it was a winner, but at first I didn’t see it as an OS/2 killer.

At the beginning I though OS/2 were going to survive, just not as a dominant platform. SMP was on the way and IBM was porting it to the Power PC Platform, which was poised to eventually displace the PC.

After that, we only got disappointments and more mistakes. OS/2 proved impossible or very difficult to port. The Power PC was abandoned, for no known reason.

Microsoft had an absolutely great team doing the architecture of their Windows NT (original though was OS/2 NT). Those people weren’t believers of using hand tuned assembler code in operating system, but of building hardware abstraction layers and designing operating systems to be portable. Ironically Microsoft got a commercial version of NT to work on the Power PC, something that IBM never fully accomplished with OS/2.

Now I think IBM lost this OS war by itself. Microsoft didn’t win it because of FUD, it just battled better on every front. While Microsoft was able to attract a lot of developer support. IBM just abandoned OS/2 development, like they abandoned every other related initiative, like Open Doc, Power PC, etc. I guess they fired every developer years before they publicly admitted they weren’t going to fight.

A few years later, Windows 2000 was, in my opinion, the first version of Windows NT that was better than OS/2 in every area.

The last time I saw OS/2 running was during a trip to Italy, I think during 1999 or 2000. My wife and I came to a train station and bought a ticket on an automated kiosk. When I saw the light yellow text and list boxes and the "^" and "v" shaped scrollbar buttons on that screen, I almost cried.

Let me be clear on this: I hated it when I learned that Microsoft bullied OEMs not to distribute Netscape. I think this kind of practice should be illegal in every industry, in any country, by any company.

But I think what happened to OS/2 was absolutely different.

Microsoft wasn’t the bad guy. They weren’t kicking a poor old man, but a stronger giant that would have loved to do the same to them. They simply were faster, smarter, successful, whatever. Eventually, it became almost impossible to buy a new PC with OS/2 preloaded, even from IBM.

Besides, I don’t think it is our mission as mere mortals to lick the wounds of big corporations. It was the case of two very capitalistic big companies fiercely competing. Neither needed our consolation.

So, the question is: What were the stakes for us zealots on it?

I mean, if you contribute to an open source operating system like Linux or FreeBSD, you have a clear justification to be zealot. After all, you have your beloved code in it. But why were we so passionate about OS/2? Why did we hate Microsoft so much? Was it because OS/2 was a "better way of doing things"?

Then I think we were probably a bunch of pathetic OS fascists.

About the USD 850 million Microsoft gave to IBM, I think it is just because Microsoft today prefers to donate the money to competitors in the tech industry than give it to the lawyers. They must be so sick of litigations!

But this doesn’t make this end any fair or happy, in my opinion. IBM does not deserve the money. Certainly, IBM is a company I could not trust again.

The best they can do is to distribute the money among people like Brad Wardell that dedicated their time and own money to a cause IBM embarked them on, just to abandon them in the middle of the journey. They could also give some to the original developers that made OS/2 one of the best PC operating systems of its time. And they could also give me 2 dollars, for my 2 cents.

If you think IBM should release their OS/2 source code, sign the petition here. It wouldn’t bother me that Microsoft allowed the parts that they co-own to be released too. I think Serenity Systems would still have a business model (maybe a better one) if OS/2 source code were to be released.

Friday, July 01, 2005

I don't agree with Bill Gates on H-1B Visas

I read a couple of months ago about Bill Gates remarks on the H-1B visas cap in the USA. While I can understand how he and other technology industry leaders got to think this way, I strongly disagree.

Like in many countries, in USA there seem to be plenty of people that think that foreign workers are stealing their jobs (look at the comments on the ZDNet's article for a sample). Most seem to feel fear, anger and hate. I don't agree with them either.

I am not American, and I am not thinking about going to work to USA. I am currently a foreign worker in the wrong country I would say, because here wages are very low compared to the cost of living.

My problem with H-1B visas is that it engenders the status of a second rate citizen, somebody that needs to comply to whatever her/his sponsor wants. It is not easy to switch to a different job if you go to the USA this way. Whatever mistake you make, or whatever changes with your job status (the company breaks, or your job requirements change, for instance), you will probably need to leave the country.

So this creates a deep distortion in the labor market. H-1B workers do not compete with American workers. They come from the beginning for lower wages that Americans would not accept. Corporations do not need to keep them happy like they need to do with the nationals. They have bargained for quasi-slaves instead. In my view, in this area the power of corporations has gained terrain over basic rights and law.

It rings an alarm to see Gates, an otherwise true philanthropist in my opinion, saying that he would eliminate the cap. He is, I think, defending the interest of his corporation over what is right.

I would say instead, eliminate the H-1B Visas altogether. And, if American tech corporations want access to the global market pool, replace H-1B for something that convert temporary foreign workers in immigrant workers and first rate citizens under the law. This will level the playing field, at least inside the borders.

So foreign workers will tend expect a higher income, closer to what natives have. And they will switch companies at will. There will be true competition.

American workers, and for the case, people from all developed countries in which income is over the average, will be still exposed to the uncertainties of off-shoring. This is the reason they need to support policies in their countries that help leveling the playing field all around the world.

This is a serious problem. They should act today or their children will face a very hard laboral environment.

Free your mind of fear, anger and hate. Stop the double standards. Welcome empathy.

Thursday, June 30, 2005

How to recover source code from your old VBA projects

Yes, I have been on blog vacations, or hiatus for the Nth time. I have much going on in my life, but I just don't feel like writing lately. Not every day.

Anyway, I have just found by myself a solution for a long standing problem, and I wanted to share in on the web, just in case somebody else needs it. The fact is that I have googled a lot for a solution for this, and I have found the same question formulated several times, but never an useful answer.

Now, straight to the story...

Some years ago, using Office 2000 Developer (or was it Office XP Developer?) I created a little Outlook addIn that helped me remove duplicate mail items with ease.

If you are wondering why did I need that, there are several possible reasons. Think about POP3 server request that timeout too fast and download the same emails on each retry. It happens to me all the time with large attachments in my GMail account. Another reason would be odd rules in Outlook that creat create duplicate emails.

On the days of Office 2000 and XP Microsoft used to provide the option to create addIns straight from within VBA. Those projects were saved as .VBA files and you could also compile them to DLLs. That functionality used to come with the Developer Edition of Office.

Later, when Office 2003 came out, this functionality was cut. I mean, Office 2003 Developer Edition does not exist at all. What exist is Access 2003 Developer Extensions, which covers most, but not all the Access related functionality found in previous Developer Editions, and Visual Studio Tools for Office, which is a brand new creature.

Among the most important features that Microsoft left orphaned on Office 2003 I can mention:
  • Access - Source Safe Integration (which was fortunatelly addressed more recently via a free download)
  • The ability to create compilable, self contained VBA Projects and Office addIns.
I am not really interested in continuing the development of my "remove duplicates" addIn as a VBA project, as this is clearly obsolete technology. But I recently found a few bugs on it, and I wanted to get access to the original source code in order to migrate it to VSTO. But, I haven't been able to see the source code since support for VBA projects was discontinued.

Mine is a really simple addIn, but I am too lazy to write it again. So, being laziness the mother of invention (or, er... hacking), this is what I found today:

Off all Microsoft Office 2003 applications, there is at least one that allows you to create macros in VBA but don't have an application specific file format: FrontPage. Instead of defining a proprietary file format, FrontPage allows you to edit standard HTML and related files, so I guessed FrontPage had to save VBA macros somewhere else. Yes, you guessed it! It saves its macros in a file called "Microsoft FrontPage.fpm" in %USERPROFILE%\Application Data\Microsoft\FrontPage\Macros.

Update: A few minutes after posting this, I found that I could have used Outlook's own VbaProject.OTM, with the advantage that the code could possibly run.

A simple binary comparison revealed that both the .FPM file and my old .VBA shared the same header format. Hmmm.... So the .FPM file uses the same conspicuous self contained format that .VBA projects used!

The obvious solution was to temporarily rename the .FPM and to copy my VBA project to the same folder with name "Microsoft FrontPage.fpm". Next you open FrontPage, you go to the Tools menu, Macro, Visual Basic Editor, voilaá, your VBA code is back.

I copied it to a text file, closed FrontPage and restored the files to their original names and locations. Enough for today. Lazinesss rules!

Disclaimer: if you want to reproduce the steps described above, and you make a mistake, you are on your own.

PS: Isn't it amazing how many problems you can solve by temporarily renaming files? I have found quite a few otherwise unsolvable problems with SQL Server and Outlook that I could solve this way. Well, they are otherwise unsolvable because I don't have access to source code!

PS2: I plan to publish the lame code for this addIn in a future post. Maybe when I am able to port it to VSTO I will publish both sources and a detailed comparison.

Friday, June 10, 2005

Microsoft giving some goods for free, based on customer feedback

A few days ago, I learned trough Tim Heuer's blog that Microsoft has decided to include a Team System Server for 5 users with each copy of Visual Studio Team System. That is great. A testimony to how much a company can improve customer relationships just by listening (mostly listening to what is said in the blogsphere).

Also, today I learned that Reporting Services is going to be included in every version of SQL Server 2005, even in the Express edition (without the report builder). Oh dude! That is great news, and the good thing to do. A reporting runtime that will be everywhere and will be used by everybody was born.

My entry on the "Blog your way to the PDC" contest

So, now I have to explain why I would like to go to the PDC?

First, the same reasons the others want to go: It is the best place to learn about the present and future of software development for the Microsoft platforms (although, a Geek Cruise would be good enough ;)).

Second, the place is going to be filled with bloggers I read every day. Some of them are like rock stars to me. I want to meet them in person for once. By the way, is the Don Box Band playing this year?

I have never been in such a major event, but in local dev days in Argentina and in conferences in the Dominican Republic.

If I win, however, I would like to buy a Tablet PC and blog the PDC in real-time, but in Spanish (yes, my Spanish is WAY BETTER than my English). That would be, I think, a nice way to share the gift with the community.

I can think of other ways. What about writing some code with the new tools and publishing some articles in both Spanish and English? Well, were you going to ask me for proof that I can actually do that, you would put me in trouble because I am not doing it at present. But I know I could do fine.


blogging my way to pdc


Ok, I know I am not going to win this contest... But, what the hell? Choose me!!!

Monday, June 06, 2005

Microsoft to be third Transitive customer?

I woke up to late to the Internet today, and everybody is talking about Apple's inminent switch to Intel hardware. I read a few articles about it, and the rumor is that the main reason is the DRM hardware support included in upcomming Pentium D processors. Fascinating. I wonder how is this related to Paladium. They also mention future video iPods, which Apple has hinted int the past were a terrible idea. So, were Apple playing pocker then or is industry journalism too dizzy today? Only time will tell.

Reports also mention Apple will be liscencing Transitive hardware virtualization technology to ease the transtition of Mac OSX applications to the new processor. This company is said to claim that it can run anything on any platform without performance penalties (uh?). Fascinating also.

Even if I my last crystal ball prediction (that Google would buy Skype within a month, more than a month ago) was incorrect or perhaps too much ahead of time, I will risk again. Transitive says in its site that they have "engaged with six of the world’s largest computer companies", but they can only tell about one, SGI. The also add:

Transitive expects to announce that a second computer OEM will deploy products enabled by its technology during the 1st half of 2005 and that others will deploy QuickTransit before the end of the year. Unfortunately, strict confidentiality obligations prevent us from discussing these relationships in any detail.


So, if the the second would be Apple (to be probably officialy announced today), my guess is that the third and four would be Microsoft and Sony, that would use Transit for XBOX 360 and PlayStation 3 respectively. Let's wait an see what happens.

Sunday, May 22, 2005

Rory doesn't like Episode III

Gorge Lucas directing, according to Rory:

George: OK - cut!
Actor: Cut? I was just practicing for when we actually do the scene. I didn’t know we were filming yet.
George: Good enough!
Actor: But I was reading from the script! It was in my hands the whole time!
George: Fine. We’ll Photoshop it out later. We’ll stick an ewok in there or something.
Actor: You can’t do that! It’s going to look like I have my hand up the ewok’s ass.
George: Good point. We’ll make it look surprised.

Hehehe! Well said, but I still like it.

I never understand how two people can disagree so much about a movie when they think alike in other matters. I guess the thing is I watched the movie with a more "naive" attitude, on purpose. I do not have the same mindset when I see something from David Lynch or even Martin Scorsese. So yes, I would never put any episode from Star Wars in my Top 10 movies of all time, yet I feel free to enjoy most of them.

Well, at least I see that Dare Obasanjo and Chris Sells think more like me.

Star Wars Episode III

After reading all the critics I was sure I was to hate this movie. But I was wrong.

For instance I read from the critics that the dialogs were unspeakable. The movie is an epic story, a tragedy, about ancient alien civilizations. So, what do you expect to hear, accent and manners from Missouri, Shakespeare? Dialogs are ok.

They say that scenes in which Padmé and Anakin are alone together are impossible to believe. In my opinion this is not true. I think they show what the movie demands, which is a woman loving a deeply troubled guy. Natalie Portman makes the most of her role, which is just the right size. Ewan McGregor does such a great Obi-Wan, Alec Guinness himself would love it. Hayden Christensen is not bad as Anakin, I don't know what the problem is supposed to be. That he looks weak of temper, uncarismatic, sometimes pathetic? I think that is exactly the idea.

Not to insult the actors, but do you really remember how the first movie was? I mean, Episode IV? It was a joke compared to this movie, the acting (besides Harrison Ford and Alec Guinness), the effects (I actually don't care much about FX)... In general, the execution was amateur compared to this movie.

I am not too fond of the science fiction genre, but I think Star Wars is ok because it is an epic story at the same time. My favorites are Episode II, III and V and I wish Geroge Lucas had the time and the wish to make Episode I and VI again, but without the darn critters.

I am looking forward to "Episode III and a half" wich I am almost sure Lucas has in mind. More on Obi-Wan and Han Solo story maybe?

Well, I saw the movie today. Let's wait until tomorrow to see what happens.

Tuesday, May 17, 2005

Windows 'Eiger' to support legacy hardware

I found many interesting news today at ActiveWin. The one that blows my mind was about codename Eiger, a new 'lean' Windows XP version that is in the works.

This is exactly the answer to my previous post in which I explained why I felt Microsoft needed to pay more attention to legacy hardware.

Here is an excerpt from the Microsoft-Watch article:


"We have a set of customers running old PCs and old operating systems even as old as Windows 95," said Barry Goffe, a Windows group product manager. "These customers are primarily concerned about security, though some also are concerned about improving the manageability and TCO (total cost of ownership) of these systems."

Eiger will bring these users up to par with the level of security provided by XP Service Pack 2, Goffe said. It won't include the XP help and support content, wireless networking support and certain operating services found in XP, however.

Eiger will run on legacy systems with as little as 64MB of RAM, a Pentium-class processor and 500 MB hard drive. Eiger is designed to replace Windows 95, Windows 98 and NT 4 Workstation running on these systems.

Sounds great so far. But then it says:

"Eiger is not a general-purpose operating system. It can't run games, office-productivity software or line-of-business applications," he said. "We'll tell users that these kinds of things won't run well in this environment."

Hmmm... Hey, guess what you are missing? Either Microsoft also builds a 'lean' version of Office, or those users will run someone else software on 'Eiger'.

Moving to MSDN

I haven't decided yet, but it is very likely that I will stop blogging here for some time. For some background, I have moved to the sate...