I am a pro developer, but I don't use C++ as often as I wish during the day. So, I recently found that I could play with the language by getting involved in some open source projects. I found an interesting group that produces a free program for Windows.
While getting acquainted with this area of the “ecosystem”, I learned how much the community appreciates your recent release of the C++ Toolkit and the upcoming Express version.
Free or inexpensive software is necessarily built with free or inexpensive tools. In this case, using a commercial compiler had been limiting the reach of the project among developers. However, there is a big challenge: Big chunks of Visual C++ the product relies on, namely MFC and ATL, are absent from the “free” versions.
I can see why Microsoft would consider those libraries only belong to the professional version of Visual C++. But reality is that if MFC and ATL are not available, some existing projects like the one I have mentioned have few chances but to look somewhere else for alternatives. New free software projects have scarce motivation to target Microsoft tools and platforms.
I have also seen a huge number of compiling errors while porting from the Visual C++ 2003 to Visual C++ 2005 Beta 2. It seems that better ISO conformance, while a great feature, makes lots of errors surface. Perhaps you could add better aid tools for this task, even if it out of cycle. Thanks. Diego.
Life, software, politics, arts, and naive future prediction (This blog is in suspended animation)
Saturday, May 07, 2005
Please include MFC and ATL with Visual C++ Express and Visual C++ Toolkit
More on Visual Studio Team pricing estimates
I think you are wrong when you say that nobody will really pay for the full price, that that is retail, etc. This is exactly what prices are for, or setting how much people have to pay for the goods. Simple is beautiful. So, please, keep it simple.
Also, as far as I understand, the problem with the prices is that they do not scale. A small independent consulting company with one to two developers should be able to get the product for a lot less. On the other side, a company with 1000 developers that will use the whole capacity of the Team Server should probably pay more.
Also, unit testing and some other selected features should be on all packages.
That's all.
Wednesday, May 04, 2005
My wild prediction: Google will announce it buys Skype in less than a month
Also, I think SkypeIn will be really big, do you agree?
Tuesday, May 03, 2005
64-bit computing and legacy hardware support: The two sides of the Windows fence
I posted there a link to my blog, in case somebody will want to nominate me. However, I am not expecting this to happen, as I am not very well known. I don't care. I usually give my feedback just because poorly worked software pieces (not only from Microsoft) annoy me a lot.
There are a few things interesting in the discussion following Scoble's post:
Andre Da Costa says:
Ok, if any of you get to become a part of this Team, try and deal with some of issues facing Windows today. Try and think beyond the average user base, think about Windows world wide. I am from a third world country where its still difficult to buy a PC because of cost. Try to think about how Windows can better conform to the needs of these economies or how Microsoft can better meet the needs of users in these countries through programs such as Starter Edition.
Good! Very good! I have spent a lot of time to thinking about this, and I agree completely. Microsoft needs to pay more attention to this.
Scoble replies (to me):
Diego: yup, and on the other side of the fence, Paul Mooney just reminded me not to forget 64-bit enthusiasts too.
Well, that is very important too. On one hand, if MS doesn't get 64-bit computing right with Longhorn, it will certainly loose some market to Linux and others.
But if they don't get legacy hardware support better than in the past... Well I wouldn't want anybody at Microsoft to get the idea that those millions of old government computers around the world will stick to Windows 98 and 2000. It is more likely that they will switch to Linux instead. And with them will go many developers all around the world.
It has been typical of Microsoft to push the hardware envelope on each new version of Window and this way they have increased their revenue and helped the hardware industry at the same time. Historically, most Windows copies have been sold on brand new computers, but year over year, the size of the installed base has grown.
This time, maybe the balance has shifted enough. Maybe it is time what is good for Microsoft is not exactly what is good for hardware makers. I mean, people would be happier paying for software, hadn't they have to pay for hardware upgrades so often.
What I would like to see is a very secure, manageable and stable version of Windows that is light enough to run on the same hardware that used to be the Windows 2000 baseline. It doesn't really matter if it is not very beautiful. It is enough that it runs Office, Internet Explorer and Terminal Server Client well.
I am cool with Microsoft adding 10 million lines of code to Windows on every new version, if they let people disable or avoid installing the heavier parts of it. For instance, I agree Avalon makes a lot of sense, and it is understandable that it will need serious GPU power and large amounts of video RAM. But I would like that XAML applications were able to "degrade gracefully" on older hardware.
Friday, April 29, 2005
Being your father's software support
During my recent stay in Argentina, I spent many hours wrestling with his computer.
In brief, with a lot of dedication on my part, the condition of the computer went from crashing half of the times it initiated a dial-up connection, to not being able to recognize the modem. On my last night at home, I managed to change it from a very unsafe Windows XP SP1 installation to a very "hardened" Windows XP SP2 that wouldn't boot. I had to leave before I was able to fix it!
Now, I know that my father loves me, but at the same time, I think he doesn't deserve to go through this.
I am blogging about it today, a few months later, because I have just learned how even Adam "The Proud" Barr gets in trouble when he tries to help his father with his computer:
When I was back in Montreal, my father had some trouble with his computer. This seems to happen a lot. What's frustrating is that although I used to be able to help him, these days I almost never can.
These incidents all follow the same pattern. First he tells me about something he is unable to do, usually involving networking. I confess that I have no inside knowledge, but I'll take a look. I futz around with it a bit. We both get frustrated because it appears that Microsoft has deliberately made it difficult to do something. I explain that there probably was a good reason for why it was designed the way it was, but the logic escapes me at the moment. Eventually we get it working, or not.
For example, this last time he had just purchased a new laptop and wanted to share
files between them. When I want to share files I usually bypass the GUI and run "NET SHARE" on the server and "NET USE" on the client. This has always worked, except for a slight blip with older Windows 9x clients that didn't let you specify the username and always tried to connect to the server as "Guest".On his new XP SP2 machine, however, it didn't work. It turns out you have to run a wizard of some sort first. And even better, you have to run the wizard on your older, pre-XP-SP2 machines. Which is a bit difficult when your pre-XP-SP2 machine is a laptop with no CD drive, and filesharing isn't working because that's the problem you're trying to solve.
This is especially frustrating because I worked on NT networking for many years. There's probably still some of my 15-year-old code rattling around in there. But when I sniff it, all you see is the server returning some unhelpful error message. So it looks like the wizard you are run tweaks some magic bit somewhere to say "yes, it's OK to share files from this computer". But of course I have no idea what exactly it does, and there is no documentation that tells you.
My own father is not Ph.D in Math, but a Master in Economics, and he has been using a PC for the last 20 years. I am not up to the stature of Mr. Barr (for instance, I have never seen a single line of Windows Networking source code), but I am a professional developer and I am usually successful getting computers to do what I want.
I am sending a link to Mr. Barr's post to my father tonight. I hope it will help in restoring his appreciation for me :)
Wednesday, April 27, 2005
Blogger Spamming
Blogger is hosting blogs like dcl1, fantasyfootballcontests, 1replicarolexwatches (I removed the links to avoid increasing their pagerank), that are filled with random crap. Well, I know most other blogs are ;).
Wow, how can something like this get unnoticed?
MSDN Survey
I also filled a free text field in the survey with my magnificent prose:
I wonder myself if MSDN should really try to be all things to everybody as the comprehensive list of potential features contained in this survey suggest.
On one hand it would be interesting to see all of this integrated under the same roof, with users/developers having their profiles and avatars, workspace tools, discussion forums, the chance to publish their own content, and even a social network inside MSDN.
But at the same time those features seem to be in good hands on non-Microsoft sites (SourceForge, CodeProject, etc), while others are doing well on other Microsoft sites
(GotDotNet, Channel9, etc.).
It is a little bit of a philosophical question, but can MSDN “embrace and extend” the concept of “developer community” without killing the “community” part of it?
Well, if you have plenty of resources, just implement all of this and then wait to see if developers come.
The Party is Over: Visual Studio 2005 Pricing Estimates
From TheServerSide.NET, today:
The estimates for the Visual Studio 2005 editions are:
- Visual Studio 2005 Team Suite,
Retail: $10,939/year, Renewal: $4,598/hr- Visual Studio 2005 Team Edition for Software Architects,
Retail: $5,469/year, Renewal: $2,299/yr- Visual Studio 2005 Team Edition for Software Developers,
Retail: $5,469/year, Renewal: $2,299/hr- Visual Studio 2005 Team Edition for Testers,
Retail: $5,469/year, Renewal: $2,299/hr- Visual Studio 2005 Professional with MSDN Premium Subscription,
Retail: $2,499/year, Renewal: $1,999/hr- Visual Studio 2005 Professional with MSDN Professional Subscription,
Retail: $1,199/year, Renewal: $799/hr
Yes, of course the "/hr" are typos!
I don't know what the price is for the competing products Microsoft is targeting with VSTS (Rose anybody?). But I think this table must look as a bad joke, even for a profitable American company. Just imagine how it looks from the point of view of a software company in the third world.
Also, I agree with Chris Anderson and others that the way the feature set of the different editions of TS has been chosen seems to be broken. For instance, Architect edition does not contain testing features.
I guess it is the second time I see Microsoft making an expensive product that very few in the world will use. Last time was Content Management Server.
Now it is clear that the challenge for developers in the rest of the world is to become Visual Studio Express editions heroes, or simply to switch to friendlier, free software platforms. While the Express editions will be affordable, you will need to be a very lucky developer to ever smell the Team System in the course of your life.
All I wonder is if this is what Lenn Pryor meant when he wrote "I just couldn't go on being an evangelist for a gospel that I don't believe I can sing." while leaving Microsoft.
Sunday, April 24, 2005
Scoble and Ballmer on Microsoft's and anti-discriminatory issues
Robert Scoble has been posting about a story related to two Microsoft's gay employees that has surfaced recently. He also shows a recent Steve Ballmer's memo about the issue.
As it often happens, I agree with Robert on this social matter. However, I think I also understand Ballmer's position.
If you do some research, you will probably find that 45% of Microsoft’s employees are fascists in one way or another. What about stakeholders? The Americans? Mexicans? Italians? Citizens of the world? You probably don't want to know!
On the other hand, countries only adopt policies when the need is perceived as significant in demographic terms. It usually takes too much time, and in the meanwhile you will have casualties. Companies only do it when even higher levels of consensus are reached.
Microsoft having a fairly complete anti-discriminatory policy is a great start. The fact that much of the matter is left to the individual in many countries is not so great, but it is to be expected, given the current state of the world.
That is not to say stop worrying and stop supporting gay rights, or any other often-discriminated group rights. On the contrary, it means what you say or do is even more important.
On a side note, and this is just my opinion, Robert's answer to the memo is very dramatic, but he missed the chance to ask Ballmer's for greater *personal* involvement in the matter.
Ballmer is saying that he and Gates would put their name on this, but they cannot put Microsoft’s name on this, because they don’t “own” every Microsoft “soul” out there, which is very right. Robert, I think this is a good chance. This is how leadership works sometimes.
Friday, April 22, 2005
Feedback to Microsoft: Windows cannot chew gum and copy large files at the same time
Just try doing something else while you copy a really large file (for instance a CD image). If your system is like mine -I have a Pentium 4 at 3.4GHz with Hyper-threading, and still a 7200 RPM ATA100 disk with 2MB cache (and a 74 GB Raptor coming really soon!)- you will probably want to go for some coffee. Because the computer will get on its knees.
This happens if you do it from Windows Explorer or from the command line, to the same disk, between two disks, to or from a network disk, inside the same partition or between two different partitions. You can experience this on Windows XP or on Windows Server, regardless of the "Processor Scheduling" setting.
You will not see a culprit process listed on Task Manager, so you cannot downgrade its priority. There is no way to pause a file copy, so you better plan on advance and call a friend to have the coffee together.
Chances are that if you use SCSI or SATA with some kind of instruction queue you will see better performance. But I bet it will still be annoying.
So, what use is a multitasking operating system that cannot multitask?
What I suggest is:
- Throttle disk activity. Nothing should disrupt a decent client or server operating system from servicing user requests on a timely manner. Think QoS. Think how easy it is to perform a DoS attack on a Windows based Terminal Server today.
- Improve file operation progress dialogs, providing controls for assigning different levels of priority and for pausing. Do you really think that the cancel button is enough? Similar options should be added to the command line.
I can think of many other things, but if they only implemented these two, it would be great.
Do you know of an existing solution for this? How other operating systems handle this scenario. Thanks.
Saturday, April 16, 2005
This blog is not dead
All I have to say is that today I got connected to the Internet after moving to a new apartment and after a few days of experiencing a completely off-line life. My son is becoming 4 years old on Sunday. Life is great.
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...
-
UPDATE 3/1/2006: The hotfix is officialy out for the Visual Basic background compiler crash. Thanks to Lisa, Margaret, and the VB Team. UP...
-
Clues: I think it is the ideal hobby for any geek. I get a lot of wonderful peer feedback. I would be absolutely happy if I got paid for it...