Saturday, August 14, 2004

Next Big "Thing"?

Just thinking out loud. I've been posting a little about what the big "thing" recently...

Community seems to be big. Everyone wants to be part of a community. Humans are social animals (well most are) and it seems to me that most of our recent killer apps have been community related. BBS's, newsgroups, web sites, blogs, forums, P2P, IM, online gaming, etc all seem to be "community" related.

To date, casual users have had a technology barrier to be active in their extended online communities. Blogs are, or are becoming, the current method of choice. But even those can be a hard and are pretty much one way. Email/IM is still the king of community (can I say community just a FEW more times? :| ). And email causes almost as many problems as it solves, with spam, the lack of visual/emotional clues, volume, etc.

The real community app/service isn't here. Yet. I'm betting that the next "thing" will be a real community application. A step or two beyond RSS/blogging, with email/IM/P2P, voice, video and more all thrown in. Take all these cool apps, throw them together and mix in some tech that's just on the drawing boards and we'll have our next killer app.


Here's what I'm thinking the features need to be:

Security
   Has to be secure. Both in what's running on our systems and how the any data is transmitted, etc. People need to feel safe when they take part.

On demand/on need
   I need to be able to join when I need to, take part when I can and ignore it when I have too.

We need easy two way communication
   Like email, but better threaded and related, but not so structured. Something like OneNote but connected to others. Mix OneNote, together with IM, newgroups, email, and Lookout and you're getting close.

Freeform
   Like a party or gathering of friends. How many parties do you go to that have a strict agenda? Or discussion topic? No artificial mold that everyone has to be forced into.

Adaptive
   Has be to able to morph into different things based on how people are using it, what they are doing, etc. For example, if those in the community start posting a lot of pictures, then things should better adapt to support pictures (posting, viewing, commenting on, finding, etc). Demand drives capability, dynamically.

Everyone to their own abilities (or system's abilities).
   Scaleable to fit the individual's want to or ability to take part. No one should be forced to have a Cam, or cell, or broadband connection. Or have to be sighted to take part.

It has to be easy
   Can my parents join in and be active?

There must be feedback
   Everyone likes to know that they are being read, listened to, etc. I know I like seeing that my blog is read.

Audio (including voice) a natural part. Pictures and video too.
   Channel9 is close in this respect, but still too one way.

And above all, Natural to use
   Part of being easy, but also it has to be second nature to use or be part of. A mouse isn't natural. I want to point with my finger. I want to talk @ the app, to others in the group. I want my facial expression to be recognized (but not have to have everyone see my ugly mug). [i.e. build in a way to communicate emotional cues]


LOL. So pretty much what you get when you meet with a group of people you know at Starbucks... People have been doing this for how many years? Now we just need an app so we can do the same with people around the world, while adding all the cool things computers and tech lets us do...

When Microsoft Buys into a technology, they REALLY buy in...

Have you noticed that when MS buys into something, they seem to jump in with all three feet?

Recently MS has jumped onto the blog and RSS game. There's hardly a group in MS that doesn't yet blog or have a RSS feed or two. I have to give them a standing ovation for this effort. I've grown to hate emailed newsletters, mailing lists, etc. RSS is a great way to let people pull the new they want, when they want it. Of course there are issues with it, but overall it's something that has become crucial to my infospace.

Back to MS. Today I saw that MS Research is providing RSS feeds. This is the group doing tons of cool long term things that could be the next "thing." Some of it is way out there, but some looks pretty darn cool.

Subscribed.

I hope MS keeps up with the blog/RSS push and avoids becoming part of the stat of blogs that go inactive after less than a year.

I'm Getting Old Moment: BBS's

I had a "I've been doing this too long and am getting old" moment this week. I had to explain to a coworker what BBS's, CB Simulators, fidonet, etc were...

sigh... Common usage of those wasn't that long ago, was it?

[Greg tries to remember the last time he dialed into a standalone BBS]

Okay, I guess it has been a little while. 7-10 years? BBS's were hot in their day. But the usenet/web/ftp pushed them into obsolesce.

In 10 years from now are we going to look back on the web the same way? I wonder what's next? Time to get to work on it... :)

Friday, August 13, 2004

Designing and Implementing a Search Engine in .NET (NATA1)

Designing and Implementing a Search Engine in .NET

"When developing a site search engine, you have a couple of options. This article will show you how to use either Google, Index Server, or a Custom Search engine. The number of uses for a search engine suite aren't limited to asp.net web site search engines. ...

This first article will demonstrate using Nata1 Asp.net controls, but the next article will discuss adding searching capabilities to the TaskVision application, where we will build a site health monitor, check site ranking in goolge, and create tasks accordingly... "

.NATA1
"What is Nata1 Unified? Nata1 (Neural Agent and Translation Assistant) is the one and only framework that provides a consistent and simple API to searchify your applications, create artificial intelligence agents, and to integrate all of your algorithms and intelligent systems into one simple system.

Nata1 Unified aims to increase developer productivity in smart home development, business intelligence applications, and internet search engine design and implementation. Nata1 has built in language support, currently only English, to translate your english questions into a query. Nata1 has built in internet indexing capabilities, and allows you to transparently change search providers such as Google, Index Server, or Nata1 Search Service without writing any code.

Using Nata1 Unified you can rapidly deploy a search solution for large websites. We use a hybrid Binary Search Tree and SQL server solution, and currently do not use SQL Free Text Query, however we will have a provider soon. You can use the free framework to create search engines that index as many pages as you have SQL Server space, but if you want to index the Internet or another large source, then you can purchase Nata1 MAIE (Message Agent Integration Engine) and quickly configure and deploy your search solution, without really needing to write alot of custom code."


Interesting... I still need a search engine, though for file system content (i.e. local index, ala dtSearch like).

Still this product sounds interesting.

Thursday, August 12, 2004

Trying out w.bloggar...

As I try to post more original content, I needed a better authoring environment than whats available on www.blogger.com. Blogger.com's posting interface isn't bad and gets the job done, but I needed some more...

So it's time to bite the bullet and get a smart client/desktop blog authoring app.

After an extensive search (about 3 minutes on google), I picked up w.bloggar.

So far I'm pretty happy with it (after 1 post published and 1 in draft).

We'll see...

Code Access Security (CAS) – "Guilty until proven Innocent" (Partially Trusted Code):IPattern.com (Maxim V. Karpov)

Another execlent CAS article from Maxim V. Karpov


Here's the link my past post on this: Code Access Security (CAS) and Design Patterns:IPattern.com (Maxim V. Karpov)

(via ASP.NET)

Want a GMail Account?

Want a GMail account?

I have a couple invites left... I've tried to give them away to friends and co-workers, but still have a few left (lol, what does that say about me? :)

On my blog there's an obscured version of my email address, just send me an email with the subject "gmail" and I'll send invites to first two.

UPDATE 8/14/2004 @ 8:00AM (PDT): One invite left...

UPDATE 8/18/2004 @ 11:50AM (PDT): All gone.

Wednesday, August 11, 2004

Windows XP Performance Tweak

Windows XP Performance Tweak

This is a direct quote from Cuball's WebLog)

"You need a minimum of 256MB of RAM before you make these changes.

Open your favorite registry editor and navigate to the following key:
HKEY LOCAL MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management

Areas to change are as follows

1. DisablePagingExecutive - Double click it and in the decimal value field, put a 1. This will allow XP to keep data in memory instead of paging sections of RAM to the hard drive.
2. LargeSystemCache - Double click it and change the decimal value to 1. This will allow the XP Kernel to Run in memory.
3. Create a new DWORD value and name it IOPageLockLimit - Double click it and set the value in hex to 4000 if you have 128MB of RAM, 10000 if you have 256MB or 40000 if you have more than 512MB of RAM."

I'm going to have to give this a go when I get home...

Update #1 8/14/2004:
Well I finally got a chance to give these settings a try. My DisablePagingExecutive as 0, so changed it to 1. LargeSystemCache was also 0, now changed to 1.
IOPageLockLimit was already there and set to 1005584384. hum... Much higher than the recommended 40000.

I guess it's time to research IOPageLockLimit.

I/O Pagelock Limit(2000/XP)
TURBO CHARGING your Windows XP Operating System Part 3

Windows XP TWEAKS / Optimization for Video Editing Systems – PART II
"IoPageLockLimit

I have listed this optimization (TWEAK) here because it can have a very negative impact on PC performance if not set properly. The IoPageLockLimit indirectly determines the number of pages Windows will read or write to the hard disk at one time. In other words it determines how much will be locked into memory before swapping. If a system performs a significant number of physical in/out-puts raising the limit can sometimes improve system performance. Get it wrong and performance will be slower and less stable - not to worry you can change it back. Why is there no one optimal setting? Not all systems experience the same amount of file I/O operations, not all systems experience disk I/O bottlenecks in the same way, processor power (performance) varies, disk access & transfer rate, software programs operate differently and memory size all play a part in overall performance. Refer to Section II to understand more about this TWEAK and it´s possibilities...."

"...This can be the "Mother of All Tweaks" both good or bad. Therefore, we will have to dedicate a little extra space (verbiage) here for this one. To do this TWEAK it is not hard and IT IS reversible. First let´s review what this thing does : Windows limits the amount of memory to be locked for I/O operation.
By default, this registry limit value is 0, which is actually 512 kb. This indicates to the system that it should use a built-in algorithm to determine the amount of memory to utilized (i.e. 512 kb). Changing this can force core systems to be kept in memory and not paged to the disk.... "

Okay. Based on this I think my setting was jacked. So I deleted it, rebooted and will try with 65536...

Update #2 8/14/2004:
Looks like these settings can be used on Win2K too... So not being able to leave good enough alone, now that I have 1GB in my notebook I'm giving these same settings a try on it too. I'm hoping that I'll get performance gains, since my NB HD is slow (less paging, so better performance)?

We'll see...

SharePoint Products and Technologies (www.gotdotnet.com)

SharePoint Products and Technologies: "SharePoint Products and Technologies"

MS's Sharepoint Team site. Ton's of Sharepoint related information, samples and toolkits, downloads, community links, etc.

Includes links to the three new toolkits MS has released.

"SAP iView Web Part Toolkit
A Web Part for Microsoft Windows SharePoint Services and Microsoft Office SharePoint Portal Server 2003 that can call and display the contents of specific SAP NetWeaver iViews.

WSRP Consumer Web Part Toolkit
A Web Part for Microsoft Windows SharePoint Services and Microsoft Office SharePoint Portal Server capable of consuming and rendering output from Web services conforming to the OASYS standard for Web Services for Remote Portlets (WSRP).

WSRP Producer Web Service Toolkit
An example ASP.NET Web service that accesses and renders the contents of SharePoint sites in a format conformant to the OASYS standard for Web Services for Remote Portlets (WSRP). "


(via Patrick Tisseghem's Blog)

Code Access Security (CAS) and Design Patterns:IPattern.com (Maxim V. Karpov)

Code Access Security (CAS) and Design Patterns : IPattern.com (Maxim V. Karpov)

"To be classified as a good developer is no longer characterized by merely writing manageable and well-documented code, but by today’s definition it also includes knowing how to write a secure code. This has priority over all other qualities assessed. Last year "Web Services" was the buzz in the technology field, but has since been replaced with "Security". Many job positions have been modified to include Security as a primary responsibility. On many levels of the Corporate Enterprise, changes are made to ensure that production systems are Secure and hackers cannot gain control of critical applications inside the businesses. When it comes to "Security", there are so many layers; it is like an onion in which every layer that is peeled away, reveals yet another layer and so on. It takes great effort and much invested time in order to expose the core of the onion and the same is true with Security. In today’s installment, I want to peel that initial layer from regarding the Security topic. I regret not being familiar with this technology a year ago, but have put forth much effort this year to learn, manipulate and implement solutions with this highly demanded skill. The outcome of my personal endeavor is my collective thoughts and learning’s that you will find below. My main goal was to decipher the complexity of Code Access Security (CAS for short) into simple, understandable English supplemented with colorful diagrams to reinforce the knowledge. A picture speaks a thousand words!"

Nice high/medium level article on CAS...

(via ASP.NET)

Tuesday, August 10, 2004

DailyWTF: GetUserPrivileges()

GetUserPrivileges()

This was a great Daily WTF... Made me laugh out loud.

Monday, August 09, 2004

500th Post!

This is my 500th post to this blog.

Yeah!

(I don't know why I'm excited. I guess cause I don't have a life? lol)

Windows XP SP2 installed...

Downloaded the RTM of WindowsXP SP2 and installed it this weekend. On my wifes computer... :|

Went pretty darn smooth. Everything seems to be working, so far.
Only a couple minor issues. MSN IM wanted to repair/reinstall itself. It couldn't find its install MSI (I'm guessing this happened since we did a "open" type download to install and IE's cache has been cleared since then). A couple cancels and it went away (and MSN IM still worked).

After rebooting from that, the firewall seemed to have gotten itself disabled. So the cool new Security Center popped up letting me know it was off. Turned the firewall back on and rebooted. Since then it seems to be working okay.

The Security Center antivirus section complained that it couldn't find a AV product, even though NAV 2004 is installed, up to date and on. So I told it to just shut up and ignore the AV check.

No nasty-grams from my wife yet, after just over 2 days of running SP2, so I'm closing her support ticket. :)

As for my other machines... Well those are going to wait a week or two. I don't want MY machine jacked. ;)


SourceForge.net: NUnit 2.2 Final Release

SourceForge.net: NUnit 2.2 Final Release

nUnit 2.2 has released v2.2....

(via Robert Hurlbut's .Net Blog)

Sunday, August 08, 2004

ArtRage 1.1 Released

New ArtRage

Looks like ArtRage has released 1.1...

Here's a list of what's new.

Even without a tablet it's pretty cool.

Note to Self: Here's my link to my original post for 1.0

(Via .Avery Blog)

MSDN .NET Framework Developer Center: Regional Director Code Samples

MSDN .NET Framework Developer Center: Regional Director Code Samples

Lots of quality code samples from MS Regional Directors.

From remoting to TicTacToes, to compact framework examples to C# to VB.Net converter to wiki clones...


(via Christian Weyer: Smells like service spirit)

nSurvey 1.1 Released

free .net survey software solutions web based

"NSurvey v1.1 is now ready for download!

This version includes a brand new security addin architecture that lets you integrate NSurvey in almost any kind of security environment (http://www.nsurvey.org/images/securitypipe.gif) .
All samples / documentation on how to code your own security addin are available in your program files/directory after you've installed NSurvey using the MSI.

A Dotnetnuke Module of v1.1 is also on the way to be released, stay tuned.

I've also already released the web project sources meanwhile I continue to "clean" the main component code for prime time. "

nSurvey has released v1.1 to their GotDotNet workspace.
Some of the C# source code is now available too...

I've done a test deployment of 1.0 at work. Now all I'm waiting on is the "go/no-go". So until then I can look at this version.

In looking at 1.1, the MSI install doesn't allow an in-place upgrade. Once I uninstalled 1.0, the 1.1 install went very smooth.

A sample survey is now included which is nice. It shows all/most the available survey question features. This actually helps me a GREAT deal... I now see I took the hardest possible path when I did the 1.0 test deployment.

Note to Self #1: Here's my post on V1.0

Tweakers.net - RAID 0: Hype or blessing? (1/9)

Tweakers.net - RAID 0: Hype or blessing? (1/9)

Nice 9 page article about RAID 0 usage in a desktop.

Primarly a rebuttal against two sites that claim RAID 0 is worthless/bad/hype in a desktop.

Includes background info on RAID 0, performance compairsons, etc.

(via Slashdot)