Saturday, February 27, 2010

Sick of these C# warnings? Here's how to eliminate them...

8>warning CS1668: Invalid search path 'c:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\lib\i386' specified in 'LIB environment variable' -- 'The system cannot find the path specified. '

8>warning CS1668: Invalid search path 'C:\Program Files\Microsoft Visual Studio 9.0\lib' specified in 'LIB environment variable' -- 'The system cannot find the path specified. '

The Visual Studio installer does a mysterious thing here.

The entries found at "Tools > Options > Projects and Solutions > VC++ Directories" point to some non-existing directories. But the entries are used to populate the LIB environment variable when building projects inside the IDE. So... if you build a C# project in the IDE, you get this warning about invalid search paths in the LIB environment variable.

Now, I'll give them the benefit of the doubt: maybe some installations of Visual Studio *do* produce these directories. However, this warning has been occurring all through the VS 2005 and 2008 series and I have always encountered it on every machine I've ever built a C# project on. Of course, there's one thing unusual about the way I typically build C# code that I forgot to mention: I usually build C# code with custom commands that drive the C# compiler directly from the build context of a C++ project. So I understand if Microsoft doesn't have a test that tries this scenario out. "Why would anybody do that, anyway?" :-)

The fact remains: those settings cause these warnings, and the installer has never installed those directories for me. I'm calling it a bug.

The way to get rid of this warning is to edit the entries to remove the ones that point to non-existent directories. The trick is figuring out which ones they are.

This one: "c:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\lib\i386" comes from the entry for "Win32" / "Library files":

$(VCInstallDir)atlmfc\lib\i386

VCInstallDir evaluates to "c:\Program Files\Microsoft Visual Studio 9.0\VC\"

This one: "C:\Program Files\Microsoft Visual Studio 9.0\lib" comes from the entry for "Win32" / "Library files":

$(VSInstallDir)lib

VSInstallDir evaluates to "C:\Program Files\Microsoft Visual Studio 9.0\"

Click on each of those in the Tools > Options dialog and delete them.

Voila. Warning gone.

Monday, February 08, 2010

Useful iPhone coding links

Just so's I don't forget and lose track... A couple of useful articles on UITableView and data entry screens in iPhone apps:



I love the "Cocoa with Love." guy... I'd like to meet him someday...

Thursday, February 04, 2010

The iPad will be another game changer... and here's why

Changing the game? Will the iPad really change anything? Did anybody really think different here?

Yes. It will. And they did.

The simple facts are:
  • it weighs 1.5 pounds
  • it's about half an inch thick
  • its battery lasts 10 hours
  • it's bigger than your phone
  • it's full color
  • it has a multitouch screen
  • it's a multi-function device

Let's put these facts into perspective, into terms we can relate to.

It weighs 1.5 pounds. That's less than two pints of Guinness. That's less than my dinner weighed last Friday at Red Robin. It's an order of magnitude less than your average backpack, purse or briefcase. You have to admit: carrying it around is going to be easier than carrying around a laptop.

It's about half an inch thick. It's thinner than most of the books on your bookshelf. It's a little thicker than your laptop's screen, but not quite as thick as your laptop's base. It's approximately the size of a regular pad of paper.

Its battery lasts 10 hours. Ten hours. Ten. Hours. Of real, actually using it time. That's long enough to watch the entire Lord of the Rings movie trilogy on a single charge. One charge will last longer than your longest domestic flight ever. Even most international and overseas flights. No fair counting time stuck in airports when flights are cancelled. You can plug in when that happens...

It's bigger than your phone. Which means you'll be able to see the movies you watch on it without a magnifying glass, or holding it up just a foot in front of your face. Reading web pages in the browser, facebook, twitter, email, reading books, checking out photos, viewing map details, playing games: all are bound to be nicer on a larger screen.

It's full color. Obviously. Why anybody would make a black and white or even gray scale device these days is beyond me. I just don't get it. Even granted that you're trying to emulate a book or a newspaper... I still don't get it. Books and newspapers have bits of color in them, especially books with charts and figures and photos. The Kindle app on my iPhone has color: the covers are full color photos and the chapter headings are blue underlined hyperlinks. I wonder what those things look like on the real Kindle...

It has a multitouch screen. Using your fingers on a touch screen is a way better interaction experience than a mouse, keyboard, pen or set of mechanical buttons ever dreamed of. If you haven't tried a good multitouch device yet with your own fingers, you gotta try one. It's just really cool. The tactile sensation of controlling stuff with your fingertips rocks.

It's not "far superior" -- it's way better. What's the difference? "Way better" is what regular people say. And that's where the iPad will find an audience. Regular people around the globe will flock to the iPad, maybe even faster than they did to the iPhone. This is not just for geeks. It's not even for geeks. It's for everybody.

It's a multi-function device. It does everything regular people need a computer to do. It surfs the web, plays music, movies and games, reads books, shows you photos and maps, helps you organize your life, stay in touch, share with friends and family. And more.

Yet some people are saying it won't be successful. Why would anybody pay such a high price for it?

Um. Because it's a better watching-movies-on-airplanes device? Because it has a battery that lasts all day? Because it's not really that much more money than a digital picture frame or a Kindle, but it does a bazillion things more?

And actually, it's extremely price competitive with lots of computers from lots of manufacturers. High price? With the exception of my iPhone, graciously subsidized by AT&T, the iPad is way cheaper than any other computer I have ever purchased. Ever. Manufacturers who have counted on Apple keeping their computer prices high forever have got to be a bit apprehensive about what this means for them. Their competitive landscape just got a whole ecological makeover with Apple selling portable, capable stuff in the $500 to $800 range.

I'm not a big one for making predictions, but this time I'm going out on a limb. I foresee all of the following happening...

The iPad is going to be a huge success. It will transform the entire worldwide market for computing devices. There will be several copycats in the months and years following its introduction. Some computer makers will go out of business because their sales will decline sharply after the iPad comes out and they won't be able to adapt quickly enough.

High school and college kids will be carrying these around instead of the 30# backpack full of textbooks. People will be watching movies on them on airplanes instead of on their tiny little phone screens or their "this-laptop-doesn't-quite-fit-on-my-lap-when-I'm-on-an-airplane" laptop screens. People who do presentations all the time will abandon Microsoft PowerPoint and start using Keynote on an iPad.

The iPad is the Apple computer for the people who have until now been thinking that Apple computers are just a tad too pricey. Now that they're just as cheap as any other computers, people will flock. Stampede even.

The cool factor doesn't hurt either.

You'll see. Mark my words. :-)