October 2006 - Posts
Today, I was attending a vendor company of one of the big companies in the Java world. I think I'm too used to the technical meetings held in usergroup meetings, or MSDN kind of meetings, where they either give you an overview of the technology they are presenting, or they dive deep into the technology, and let you decide whether the product is suitable for you.
But in today's meeting, the company keep emphasing they are the best in the market. Their product is the best-of-breeds, because they select the best company to acquire, Even though they started late, they are the fastest growing company, larger than their established competitors, with huge projects in their belt, blah blah blah. But when comes to their "technical" demo by their senior consultant, they not only didn't show me the entire suite properly, they fastforward a video screen cap to demonstrate a part of their product. And they keep directly attacking their competitor. The whole presentation left such a bad after taste in me that I was so switched off after the meeting. Must the Java world be so cut-throat that you need to stab your competitor and make feature by feature comparison?
The best thing is, their middle-ware they are selling so adhere to standards, and is so open, that they keep telling us that you can exit the product immediate if one day you don't like their product and use another product to replace theirs, their definition of "hot-swappable", and they keep saying they have projects that works with .net (BTW, they call Microsoft.Net MSFT.Net. Sorry, have to find some amusement in their brainwashing session), yet when they show their chart of products they can interface with, I don't see Microsoft logo...
At the end of the day, I entertain myself by shaking my head whenever the presenter goes "You know..."
I don't know how data centers overseas works, but in Singapore, some data centers requires users to apply for new databases, and the facility managers (FM) will create those databases for them. But if you set up SharePoint using the wizard, the wizard will create a database normally called AdminContent_[GUID] (if memory don't fail me), which poses a problem. Thanks to Harikumar from Microsoft, I now know how to control the name of the central admin content database.
So after installing SharePoint, instead of running the wizard to setup SharePoint, uncheck "Run the SharePoint Products and Technologies Configuration Wizard now" and close the dialog.

Note: At this point, if you need to create the CentralAdmin content database first, you should do so now, making sure that the database collation is Latin1_General_CI_AS_KS_WS collation. The configuration database will be created by the wizard, so you need not create that.
Open up the command prompt and navigate to "C:\Program Files\Common Files\Microsoft Shared\Web Server Extension\12\bin". Next, execute this command,
psconfig -cmd configdb -create -server sqlserver -database SharePoint_Config -user domain\mossadministrator -password password -admincontentdatabase CentralAdmin_Content
On the right, is the familiar screen that we are used to, if you have been testing SharePoint for a while, the configuration wizard screen where you specify where the database is to be created. [-cmd configdb create] tells psconfig to create the configuration database [-server sqlserver] tells psconfig to create the database in the sql server named sqlserver [-database SharePoint_Config] tells psconfig to create a database named SharePoint_Config to be used as the configuration database [-user domain\mossadministrator] tells psconfig what is the credential used to connect to the database [-password password] tells psconfig the password for the account [-admincontentdatabase CentralAdmin_Content] tells psconfig to create a database named CentralAdmin_Content to be used to store the content for central admin, something new in V3 as V2's central admin is not a wss site. |  |
Notice that the total number of tasks to complete is 3, which does not tally with the number of task the wizard has to complete. Well, the command only creates the database, nothing more. Hence after the operation completes you need to run the wizard, and select "Do not disconnect from this server farm"...
Chris Pratley blogged about how to syncOneNote 2007 notes across your many PCs here, but that couldn't work for me, as I don't want to share new notebooks, but existing ones already on my laptop. So how do you go about doing that?
All you need to do is to tell OneNote to sync the notebook from a new location by right-clicking on the notebook, and select properties.

Next, click on "Sync to New Location", and select the network path of your server.

Next, click on "File" + "Sync" + "Notebook Sync Status" to check on the status of the synchronisation

By this time, a new notebook would be created on the server, and the synchronisation has just begun.
Next, check to make sure that the synchronisation process is completed.

It is very important to make sure the synchronisation process is completed before you disconnect. I lost part of my notebook because I was too anxious to test if that works. Enjoy!
I was trying to download windows desktop search, as I've just installed Office 2007 on my work laptop. But the link from Outlook is broken. Finally, after searching around, I finally found an updated version of the desktop search. Download it here
After reading SharePoint Team blog post on Form Authentication carefully, I realise that Role Provider for central admin and internet zone site is different. Andrew did a more graphical write-up on setting up the form authentication. Andrew just made one change to his role provider with is the defaultProvider. But for me, it didn't work. I need to make two changes for the central admin site not to go down. I need to change the type from System.Web.Security.SqlRoleProvider to System.Web.Security.WindowsTokenRoleProvider. I don't quite understand why yet, as I'm still very new to asp.net 2.0 stuff, and I don't like this feeling.
Anyway, after making that change to my development server at home, central admin works fine, and I can add CommunityServer users into the internet site. The home setup has a domain controller. Now, why did I mention that?
Well, SgDotNet server is sponsored kindly by Microsoft, hence it is a single server setup. Currently, it is not a domain controller, and I'm not keen in dcpromo-ing it, as it will suffer some performance hit. Not sure if that is the reason why, but in central admin, address books don't work. When I tried to add secondary site collection administrator, if I type in a local account, central admin can resolve the account name. But if I type in a CommunityServer account, it can't resolve it. Clicking address book to search yields no result. But if I go to a SharePoint site using Windows Authentication, the address book works.
Now I'm setting up a standalone server to test this behaviour... Kind of low moral now... :(
To begin the integration process, you will need to understand how to enable form authentication in MOSS. I used MeiYin's blog post as a reference point to get things started.
Assuming you already have community server (for SGDotNet, the version we are using currently is 2.1 beta) installed and running, and MOSS web applications created in the default zone and extranet zone...
Step 1: Define the Providers
Open up the web.config for the Community Server, and copy the connectionStrings, the membership provider settings and the role provider settings to the web.config for the central admin and extranet zone.
Step 2: Copy these assemblies from the Community Server Bin directory
The following assemblies is required for the provider to function properly.
1. CommunityServer.ASPNet20MemberRole.dll
2. CommunityServer.Components.dll
Reason being, CommunityServer prior to Version 3 is built on top of the Backport of ASP.Net 2.0 Membership Provider. More details can be found here. Without these assemblies, you will be redirected to a SharePoint error page, telling you that a file is not found. You will lose Central Administrator as well.
Why so much cancellation? Well, since SharePoint can use any authentication providers, I thought I can use CommunityServer's authentication provider, since this post used so many bombastic words that I can't be sure if I can use Asp.Net's supplied providers. (Ok, my English isn't good too). But after trying to use CommunityServer's authentication provider, even though I can access central admin's home page, when I navigate to the operations or application tab, all hell break lose. At first it was missing files, then SharePoint keep giving me access denied, and I've used almost every account in the domain.
So what I have done on my development machine at home is just the copy the settings from the community server web.config, and replace the name and type to asp.net's provider, and it is working fine. In fact, I've just changed SgDotNet's CommunityServer to use asp.net provider, in preparation for MOSS...
I was replying softwaremaker's corporate email, and I got the following as a reply. At first, I was shocked at first, as I didn't expect him to be so blur to send out an email using his corporate account, and to have his account suspended because he is taking his pills. Then a grin developed on my face. Read his "out-of-office" reply below (His signature is taken out). 
----------------------------------
Subject: Email 404 - The recipient is not around
The Recipient is not around | |
I am currently on leave and will be back next week. I will respond to your mail as soon as I can. |
Alternatively, you may want to try the following: - You may have sent email to the wrong person.
Email 404 - Recipient is not around Microsoft Exchange Server |
Finally, the last day with my current company has finally came. As I look back to my first day at work, I've grown quite a bit, though I'm still quite small...
But as I bid farewell to my clients, as well as informing some of my friends about my next move, most of the responses was, "What are you doing to yourself?!!! Are you sure this is the right move?". :) Well, I had the peace of God when I made the choice...
Anyway, one of my client was actually excited (to the point she was jumping about) for me. And she gave me a very good advice. Though I will be hoping to be a good architect one day, acquire as much soft skills as I can, as technology will become obsolete, but soft skills won't.
Though my first day at the new company is two weeks away, I won't be able to relax much as there are lots of new stuff in Microsoft camp to get up to speed with, before I get to play with technology from other camps. And I'm looking forward to the other THE day, the day where I start work with my new employer...
[From Softwaremaker]
One of the motivations I had is to log events based on the trail I have been or want to go on (on a mountain hike, on a cruise, rafting, sailing, etc). It would be nice to have a map associated with it and pinpoint the locations that we left a trail with an option to leave sticky notes on those markers. With our entire landscape rapidly changing by the day, it is good to capture some good snapshots of where we have been before that landscape changes. This would even be more invaluable with a growing kid in tow so as to strengthen (future) family ties of affinity through nostalgic memorabilia.
I have a PocketPC running on Windows Mobile 5, which I absolutely love. One of my favourite accessories is this Rikaline GPS 6033 Receiver that usually corrects when I feel (or am) lost. With the advent of greater usability, adoption and availability of some great virtual earth or maps technology such as Google Maps and MSN Virtual Earth, I knew I could have more possibilities.

Basically, what I wanted to do is to write a small piece of PocketPC software that can read GPS data from a COM port that is already communicating with my GPS Receiver. Depending on what kind of network access you have, you can either stream the data to a host server over the Internet or have a mechanism to capture and log those GPS data in a meaningful way (which means not capturing GPS data in NMEA data format) so that we can send the data across when we get connected.
Implementation details at source.
[/From]
While I'm not interested in letting anyone know where I am too, I can think of one neat use for this neat little program. GeoPhoto! I'm a photographer (a super lousy one nevertheless), who like to travel (though not much cash to do so) and take pictures using my D70. I don't know about you, but after having DVDs of photos stacking up in my library, many a times i would forget where those shots are taken. Having the program each location for me as i take pictures, and have the map saved into the dvds would be a nice thing to help me recall where the fond memories were captured.
Sigh, softwaremaker, you have just added two things in my ever growing shopping list... :(