Archive for February, 2007


Page 5 of 13«12345678910»...Last »

ASP.NET AJAX Tutorials, Disk Output Cache and RSS Toolkit CodePlex Projects, and Podcasts of Me

I am moving to a new house this week, so I unfortunately didn't get a chance to create any new original content this weekend. But thankfully a few people did forward me some good links that I haven't seen pointed to elsewhere that I highly recommend checking out: Free ASP.NET AJAX Hands-On Tutorials Sascha Corti from Microsoft Switzerland helped produce some really nice ASP.NET AJAX hands-on tutorials in German and French, and Ken Cox (a great ASP.NET MVP from Canada) did an awesome job translating them to English. You can download these labs and walkthrough them yourselves for free here . Note that the documentation .zip file is 8MB (it contains lots of step by step pictures) - so I recommend using the "Save As" option in your browser and store...(read more)

Comments

Watching the ODF - OOXML Debate

With regards to ODF and OOXML, the ISO process is indicating that a standard is and should be something that represents a common ground for everyone, not simply the formal ratification of a de facto monopoly.

Comments

ODBC Calls Using LEI (Sunday, Feb 18)

Bruce had an LS:DO problem recently and talked about potentially moving the code to LEI/LCLSX to see if that helped. Even though this isn't Thursday, I'll go ahead and post this as a Show 'n Tell Thursday tip for you.

Here's some code that shows you how to make an ODBC call using the LEI LCLSX classes in LotusScript:

Making calls to an ODBC DSN using LEI (also in prettified HTML format)

First of all, some terminology:

  • LS:DO is the "old" way to connect to ODBC databases in LotusScript, using ODBCConnection, ODBCResultSet, etc. It's still a part of the LotusScript language, and it still works.
  • LEI is the Lotus Enterprise Integrator, that provides ways to access external data (usually relational databases) either with ODBC or by using one of the native "connectors" that are available for systems like Oracle and SAP. The nice thing about the LEI connectors is that you don't have to have any DSNs defined on the local workstation for them to work.
  • LC LSX is the LotusScript library that allows you to programatically access databases using LEI, much like you would using LS:DO.

So... why use LEI and LCLSX instead of LS:DO? Well, to be honest I still go back and forth between the two. I've heard that LEI gives better performance when you use the native connectors, and if you add DECS to the mix you can do a lot of server-side configuration to simplify things. However, I've always found LS:DO a little easier to use, so I still fall back on that quite a bit.

In the example above, then, why would you want to use LEI to make ODBC calls, instead of LS:DO?

Not too long ago, good buddy Bruce was also having a problem accessing a WVARCHAR field using an ODBC driver and LS:DO. If he used the driver and a DSN to access the data with something like Microsoft Excel, everything came over just fine. But if he used the same driver and the same DSN with LS:DO, it didn't work. The WVARCHAR data was blank. Nothing there.

The "W" in WVARCHAR stands for "wide", which is another way of saying "Unicode" (not strictly, but pretty much). LS:DO was choking on the Unicode data, even though the ODBC driver could clearly access it. I did a little guessing, and I guessed that the problem was that LS:DO only supports ODBC 2.0 while Unicode calls in ODBC weren't available until ODBC 3.5.

We tried using LEI/LCLSX code -- same Notes client, same ODBC driver, same DSN -- and we got the data. So there you go. Good reason to use LEI, at least sometimes.

technorati tag: ,


[ permalink ] [ e-mail me ] [ read/add comments ]

Comments

Using XSLT 2.0 To Optimize Linux Distributions

A while back, Abel Braaksma posted a request to XSL-List for interesting use-cases/implementations in which XSLT 2.0 played a role. While I am still working on optimizing things a bit, one of the pains I've been dealing with as part...

Comments

Alexa Data Gets More Granular

Alexa now offers regional and language based rankings.

Comments

AKVIS Sketch Plugin: Photo-to-Sketch Conversion

AKVIS has announced the release of AKVIS Sketch plug-in v.3.0 for Windows and Macintosh. By popular request, the possibility to save user presets for subsequent use has been added. Besides, new to version 3.0: compatibility with Windows Vista, new installation method on Macintosh, bugs fixed. Upgrade for registered users is free. (posted by Jennifer Apple)

Comments

New Photoshop Brush Set ‘Vintage TV Sets’ From Kirsty

The Vintage TV Sets brush set contains 8 brushes of different kinds of vintage TV sets. (posted by Jennifer Apple)

Comments

Search Engine Forums Spotlight

What's new in search? Found in the forums: How Do Links And Traffic Find You; Starting My SEO Strategy; Quality Score Column; and more.

Comments

Week 7: Open Source XML Weekly Roundup

So last weeks "Open Source XML" post was a complete flop -- well, that's not true, as it forced me to think about and work on another project of which the code is now in good enough shape to be...

Comments

Generating OPML’s with the RSS Platform

Just before I headed up to Web Directions North, I wrote a little chunk of code to help me do a system back up. Enough people at work have been losing data on their hard disks, so I decided I wasn't going to have that happen to me. I picked up a NAS storage device, 2 500gig hard drives, and got it all set up at home. It works quite nicely. I set up SyncToy to back up all the data that I find important, and run daily or weekly. But one thing was not getting back up that I was a bit worried about. My RSS feed list. I couldn't find where the RSS platform stores the OPML list, or even if it does, so I figured, since it's an open platform, I'd just write a method that would create the OPML list for me! Once I got the initial work done, it was really...(read more)

Comments

Free ASP.NET MVP Live Online Chat Tonight

Ryan Olshan and StrongCoders have helped put together a great ASP.NET live web chat for later tonight. It includes an all-star cast of MVP experts to field questions (I'll be there too to help answer questions). You can join us from 8-9pm EST (5-6 PM US West Coast Time) tonight to participate. Details can be found on Ryan's post here , and on the MSDN Chat Center . Hope to see you there, Scott P.S. Apologies for the 150+ unanswered comments on my blog this week. I was taken out by the flu the last few days and haven't been online. I will post the comments and respond this weekend. Read More......(read more)

Comments

Filming AJAX on the .NET Show

Today Matt , Bertrand and I are going to film a .NET Show episode focusing on ASP.NET AJAX . These are really fun because it gives us a chance to talk informally about the technology we have been working on for a while and then walk through some fun demos. I think of it like having a beer with some fellow developers --- just recorded for millions to see ;-) What topics would you like to see us address? Even more fun, I thought it would be cool for you folks to suggest some out-of-context words such as "waterfall", "diaper", or "SUV" for us to try to work into the conversation... You can then tune into the show next month to see how we did... Any suggestions? We need to get them by noon PST, so bring on the suggestions! Read More......(read more)

Comments

How to Transfer Mac OS X Application Data between Computers

Mac OS XIts been a long time coming, but I finally got a new Mac. I've personally owned a Mac of one sort or another since 1987, but I didn't start using a Mac full time for work until around 2000. I've been going through the process of setting up the new machine.

I decided to start from scratch on the new machine, rather than use the migration assistant. The previous machine had been the subject of countless experiments and upgrades. I wanted to start from a clean slate. I chose to reinstall all software and just transfer data files form the old machine to the new one.

I am recording the process on this blog to remind myself for next time and also hoping it might help someone else trying to do the same thing. I'll probably do this again when I migrate from Tiger (OS X 10.4) to Leopard (OS X 10.5).

This guide may favor the Unix geek, but I'll try to keep it non-geeky. If you're uncomfortable with anything here, use the Apple migration assistant instead. These instructions represent what I actually did to move between machines. Your situation may be different. Use these instructions at your own risk. When in doubt, use the Apple supplied migration assistant. Always make backups of your old data.

I'll assume that you can get your old mac and your new Mac talking on a network (You don't even need a cross over cable), and that you can figure out how to enable file sharing on your old system so you can transfer your files over.

Do a Clean Install

InstallerMy Mac came ready to go. All I had to do is turn it on and answer a few networking and registration questions and I was, um productive, making comic books for the kids and playing with the iSight. However, I decided to wipe the hard drive and do a complete re-install.

There were a few reasons for this. One was to be able to play with impunity for a period of time, knowing that I could wash away my mistakes and experiments. Another was to be able to do a custom install. This laptop drive is fairly small for what I want to do with it. During my custom install, I omitted a bunch of printer drivers, trial apps and language translations to save a gig or two. Its never going to be easier to do this than now. Third, I just wanted to make sure that I could rebuild the system from scratch, while I still had a warrenty and tech support available.

I'm extremely conservative with my work system. I rely on it and I want it to work when I need it. I feel its better to allocate a fixed amount of time now to learn how to rebuild, rather than have spend an indeterminate amount of time with it in the event of some mishap.

When I re-installed, the first user I created on the new machine had the same short name as the primary user on the old machine. I haven't tested these techniques for moving user accounts with different names, but overall I think they should work.

Moving your keychain

KeychainThe first thing to do after to get your machine is to copy your keychain from your old computer to the new one. The keychain contains all of your passwords. Its also one of the few centralized databases on the Mac that you can't just regenerate. Its best to migrate it before you launch any programs on the new machine that might require authentication.

You can open the Keychain Access application to view and manage your passwords. Each User's keychain is stored in their ~/Library/Keychains directory. (The ~ means this directory is a subdirectory of your user home directory.)

I just copied the login.keychain file from the old system and replaced the one on the new system. I would recommend logging out and logging back in after replacing the old file.

You may also want to migrate your system level keychain. This is located in /Library/Keychains/system.keychain. Notice that this is not in your user directory, but is a subdirectory of your main hard drive. I didn't bother to migrate this one, but rather to enter the handful of passwords that it contained. If you do overwrite this file, make sure you look at its ownership & permissions via get info in the finder first, and restore the permissions after you are done.

You may want to do Keychain First Aid on the File menu of the Keychain Access application after this process, just to make sure everything is ok.

Move your Cookies

CookieI could never figure out why some people are so paranoid about cookies. Here is your chance to get rid of them all. Well, I don't wear a tin foil hat; I want to keep my cookies. My cookies only take up 1.5MB after years of browsing on my mac. Having a smaller cookie file probably won't make my browsing experience any better, and there are so many it really isn't worth trying to sift through them. For me, the best option is to migrate the whole cookie file.

Safari and WebKit cookies are stored in ~/Library/Cookies/cookies.plist. Copying this file from the old machine to the same location on the new machine will transfer all of your cookies.

I don't do anything cookie-worthy in any browser except Safari, so I didn't bother migrating any of the cookies in the alternative browsers I have installed. If you have FireFox cookies that you want to preserve, I believe they are located in FireFox's Application Support folder and will migrate just fine using the generic Migrating a Mac OS X Application instructions below.

Migrating User Data and Documents

HomeMoving your User data is easy. Just open your home folder on the old machine and copy all of the subdirectories you see to the new machine except for the ~/Library direcctory. Actually, you could copy the ~/Library directory wholesale, too, but the purpose of this post is to start with a clean slate of application settings and support files and most of these live in the Library directory.

The typical folders you will copy over are ~/Desktop, ~/Documents, ~/Movies, ~/Music and ~/Pictures. There shouldn't be anything of consequence in these directories on the new machine. You can probably just replace them. You may also want to copy your ~/Public and ~/Sites directories if you have anything in them.

You want to copy over your data files before you launch any applications that might use that data, for example iPhoto or iTunes.

Migrating a Mac OS X Application

ApplicationAlmost all native OS X applications use the same file organization for their files. The settings for almost all applications can be transferred by looking in two places.

The ~/Library/Application Support directory contains folders with the same name as each application. copy the folders from the old machine to same location on the new machine for the applications whose support data you want to keep.

The ~/Library/Preferences directory contains many individual files (and sometimes a folder or two). The files have a java style naming convention. For example, Safari's preference file is named com.apple.Safari.plist. Just copy over the preference files for each application that you want to retain the preferences for. Watch out, though, some applications have more than one preference file, such as iTunes.

As part of my clean slate initiative, I only migrated 5 or 6 preference files from my most used and most configured applications, such as iTunes, Safari and Adium.

Mac OS X applications are fairly liberal with these files. In order to conform to the Mac programming guidelines, any OS X application should be able to regenerate a fresh preference file, or a fresh application support file if their file comes up missing. Deleting these files can be a good way to "reset" an application to its standard defaults.

Moving Safari

SafariSafari takes a bit of special consideration to migrate. Safari stores bookmarks, browser history, form auto-fill values, and other data in a special folder located at ~/Library/Safari. Copying this folder to the same location the new system will preserve this information.

Safari Doesn't have a folder under ~/Library/Application Support, but don't forget to copy the safari preferences file from ~/Library/Preferences/com.apple.Safari.

Moving Mail

MailApple's Mail.app also requires some special consideration. Mail stores its mail database in ~/Library/Mail. Copying this directory along with the preferences file at ~/Library/Preferences/com.apple.Mail will transfer your mail.

If you are transferring from a 10.3 system, there was a major change in file format for the mail database between 10.3 and 10.4. Mail will automatically upgrade your mail files the first time you run it, however, it will not delete the old files. This apple tech note describes how to delete the unused files from your Mail directory.

Moving iTunes

iTunesMoving iTunes depends on your iTunes Music Folder Location and if you have iTunes Copy files to iTunes Music folder when adding to library. These settings are in the Advanced panel of iTunes preferences. Fortunately there are already some pretty good guides on how to do this. There is a Moving iTunes Music Folder tech note from Apple. This is augmented by instructions from HiFi Blog.

Following these instructions, I was able to transfer my iTunes Music without any problems.

Double Check your Library folder

LibrarySome applications store data in subdirectories of the Library folder other than Preferences and Application Support. You may wish to peruse the subfolders of the Library directory in your user directory for these stray bits of data. The Apple file organization document can help to tell you what they are and help you to decide if you should copy them over. I didn't copy anything over, but for a couple exceptions which I've already enumerated above.

Don't copy the ~/Library/Cache directory. This will just be regenerated on the new machine.

Additionally, there is a system wide /Library folder on your Hard drive. You may want to scan this folder for system wide settings that you want to transfer over. Again as part of my clean install, I did not transfer anything from this directory, although I recognized a few bits of software that I needed to install on the new machine.

Unix Stuff

If you've accessed the unix side of Mac OS X, you may have a variety of things to move or at least to re-install. These things are beyond the scope of this blog post, but you might want to look for custom settings in /etc or custom installed software in /usr/local or data files in /var. I'll have a sequel to this post which covers these issues in more detail.

Repairing Permissions

Copying files between systems could end up with some file permissions and ownership problems. I try to keep my files inside my user home directory. So far, I haven't had any problems. Your milage may vary. It's probably a good idea to run the Verify Disk Permissions or the Repair Disk Permissions commands in the Disk Utility Application.

Rebuilding a System or Restoring from Backup

You can also use this guide to rebuild a Mac OS X installation, not just to copy from one system to another. The OS X installer has an "Archive and Install" option. If you have enough disk space, you can install a fresh copy of OS X and start from scratch. The installer will copy your old files into an archive directory. Then, you can copy your applications and data from the Archive folder to their proper places.

May you never need to use this guide to restore from a backup, but the same instructions apply. You do back up, right?

More Later

This is the first in a series about setting up a new mac. I'll have the next installment ready in a couple of days.

I've certainly mis-explained some things here. I've probably gotten a few things wrong and have definitely omitted important details. Proceed at your own risk. Please share your experiences moving applications in the comments. Best of Luck.

Comments

Job-Hunt.org: An Old-Fashioned Success Story

Building solid relationships, and doing some old-fashioned marketing, can be a successful business strategy.

Comments

Why Notes Sucks Represented as a Venn Diagram | Blog

Comments

Exploring the Edges of the Metaphorical Web

Programming, at its core, is the willful manipulation of metaphor. This may sound, perhaps, like a lesson more appropriate for an English literature class than a column on the nature of coding, but that statement nonetheless not only describes the...

Comments

RC Jordan on Search

Graywolf interviewed RCJordan about the history of SEO and future of local search.

Comments

A .NET Valentines

A reader just sent me these two .NET love stores... They are great! .NET - A Love Story .NET Love Story Continues... My wife asked me to write her poetry, but I suspect that is not what she hand in mind... How about you, did you get or give any great .NET valentines yesterday? Read More......(read more)

Comments

Gone Hiking…

Hey everyone. ? I just wanted to let you know that I'll be away next week. ? Keep your RSS readers ready, I've got a ton of tips queued up for when I get back.

Comments

ReplicaIDs Considered Harmful? (Thursday, Feb 15)

There's an interesting discussion brewing in the comments of my last blog entry. We started off with the problem that the Notes URL:

notes://servername/databaseReplicaID?OpenDatabase

will actually check the Domain Catalog first, before it checks the server that is explicitly named in the URL (this is not considered a bug -- Notes is functioning as designed). Michael Urspringer confirmed this behavior, as well as the fact that changing the Notes URL to:

notes://servername/databaseFileName.nsf?OpenDatabase

will work "as expected" and check the server that you specify.

Oh, and SPR EAVM4THH42 indicates that doclinks work the same way (they always look at the Catalog before the server hint), because they too use database replica IDs.

So the discussion that's brewing is that Nathan Freeman asked why you would ever use a replica ID in a Notes URL anyway? Andy Broyles mentioned that it's handy in the case of mail file relocation, and I can buy that one. But in most cases I'm thinking that the file name is the way to go. Replica IDs are too smart for their own good. They try to second-guess you by saying "I know you said that this is the server you wanted, but I think this other one is better because it comes [alphabetically] first in the Catalog."

Personally, I don't normally like software to do too much thinking for me. When I say that I want to go to this server, I want to go to this server.

Where I get a little wishy-washy is in the case of doclinks. I can kinda see how the Catalog idea could work better with a doclink in a large international organization as long as each geographic region has its own Catalog (which I don't even know is possible -- I'm not an Admin). That way if someone in Australia sends a doclink to someone in Canada, if there's a local Canadian server that can serve up the document (and the Catalog is configured properly) then that's what is used.

However, this whole alphabetical lookup of a server in the Catalog is still a little unusual. I guess when you're naming your servers, you're always going to have to make sure to name the one with the best connectivity "Aardvark" or "AAAAcme" or something, to make sure it floats to the top of the list.


[ permalink ] [ e-mail me ] [ read/add comments ]

Comments

Page 5 of 13«12345678910»...Last »