Sunday, January 15, 2012
Print to Kindle
In many ways this functions in a manner similar to 'Save as PDF'. The format of what is printed is converted to a format that Kindle can display. The next step is the file is forwarded to Amazons cloud and then forwarded on to the kindle. But this all happens without the user comprehending or needing to comprehending how it occurs.
The result is the document appears on her Kindle. Which means she is now in a position to develop content for the Kindle with minimal effort. Furthermore, this will expand. The end goal is her Kindle becomes the most import device. And it has taken on the role of presenter of her cloud based Amazon account which starts to position itself as the ITunes of information stores.
Friday, January 13, 2012
Winform Background Thread
The easiest way to implement a background worker thread for a form in a Winform application is to use the BackgroundWorker from the System.ComponentModel namespace.
To summarize the changes imagine you have a form were you dropped a button with the default name 'button1'.
- From the toolbox open the component section.
- Select BackgroundWorker and drag it onto the form.
- The default name will be 'backgroundWorker1'.
- Select the backgroundWorker object and inspect its properties.
- Select the Events (it looks like a lightning bolt)
- Doubleclick in the space next to 'DoWork'
- Keep default name: backgroundWorker1_DoWork
- Doubleclick in the space next to 'ProgressChanged'
- Keep default name: backgroundWorker1_ProgressChanged
- Doubleclick in the space next to 'RunWorkerCompleted'
- backgroundWorker1_RunWorkerCompleted
- Button Click Code Handlerprivate void button1_Click(object sender, EventArgs e)
{
this.backgroundWorker1.RunWorkerAsync("From Form");button1.Enabled = false;}
- Background DoWork Handlerprivate void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
{
Thread.Sleep(1000);string comment = (string) e.Argument;backgroundWorker1.ReportProgress(12, comment + " From Background");Thread.Sleep(10000);}
- ProgressChanged Handler
private void backgroundWorker1_ProgressChanged(object sender, ProgressChangedEventArgs e)
{
string report = (string)e.UserState;listBox1.Items.Add("From Progress Change Hander");listBox1.Items.Add(report);}
- RunWorkerCompleted Handlerprivate void backgroundWorker1_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
{
button1.Enabled = true;}
Implementation Versions: This code was developed and tested with Visual Studio 2010, C# 4.0 and the .Net Framework 4 Client Profile.
Tuesday, April 27, 2010
Is Boho a Windows Phone 7?
But it is also lacking in the minimal feature set which specifies minimum screen, camera and memory.
Saturday, April 24, 2010
Race Condition as Illustrated with Racer X and Speed Racer
Sometimes Speed Racers thread finishes first and resets the SharedState to true and sometimes Racer X wins. This is the heart of threading problems, shared state and inconsistent results.
Now lets looks at a proposed fix. In RacerX there is a commented line
//System.Threading.Thread.Sleep(100);
By uncommenting it, the inconsistent behaviour changes. Sometimes the program finishes because RacerX finished first and waited long enough for Speed Racer to finish. (You know he was the older brother and always looking out for Speed Racer)
But sometimes Speed Racer finishes first and he doesn't wait for RacerX. So Racer X keeps circling around. (Keep in mind Speed did not know that Racer X was his older brother)
So in this case it appears that the code has gotten better because the bug is now showing only half the time. But in reality it is just as flaky. The bug has now become intermittant and harder to reproduce.
class Program
{
static bool SharedState = true;
{
Thread racerX = new Thread(RacerX);
racerX.Start();
Thread speedRacer = new Thread(SpeedRacer);
speedRacer.Start();
System.Threading.Thread.Sleep(2000);
SharedState = false;
}
static void RacerX()
{
while (SharedState)
{
Console.WriteLine("RacerX");
}
//System.Threading.Thread.Sleep(100);
SharedState = true;
}
static void SpeedRacer()
{
while (SharedState)
{
Console.WriteLine("SpeedRacer");
}
SharedState = true;
}
}
Friday, April 23, 2010
Notes: Sharepoint Exam 70-631
Might as well throw them on the blog in case I want them later.
Back to back firewall configuration Two firewall devices back to back
Internet Edge firewall configuration
Multi-homed firewall configuration
Multi-Edge firewall configuration
Not supported
Mobility Redirect
stsadm -o activatefeature -name MobilityRedirect -URL http://url/
Performance Counters for Processor Issues
System\Processor Queue Length
System\Context Switches/sec
Processor\% Processor Time
Two Stage Recycle Bin
First Stage retains document on user's computer for 30 days
Second Stage can be used by site administrator
Stsadm listing options
stsadm -o adduser
add a user account to a WSS site
stsadm -o enumroles
display all site groups for a WSS site
stsadm -o enumsites
display all sites under a virtual server
stsadm -o userole
set group membership for a user
Prescan.exe
used to identify readiness to upgrade to WSS 3.0
Content Migration Tool
Used to migrate content, example Content Management Server 2002
Information Rights Management
Provide more restrictive access controls on documents in SharePoint libraries and lists
Sharepoint Products and Technologies Configuration Wizard
Automates installation and configuration tasks
stsadm feature and custom application deployment
stsadm -o activatefeature
Enables features already deployed on a server
stsadm -o addsolution
Adds solution files to the configuration database store
stsadm -o deploysolution
Deploys solution files form configuration database to web servers
stsadm -o installfeature
Installs a WSS feature
DNS Record types
host (A)
Host record, provides address of a host
CNAME
Canonical name record, used to create alias for a host name
MX
Mail exchanger record, provides address of mail exchange server
SRV
Service record, provides address of servers providing specified services
MOM 2005
Centrally monitor status and performance of many products
ISA, Internet Security and Acceleration
SSO, Single Sign On
Included Permission Levels
Full Control
Not customizable
Design
Customizable
Contribute
Customizable
Read
Customizable
Limited Access
Not customizable
Upgrade Methods
Content database migration
-To move from one server to another
Gradual
-Allows 3.0 while retaining 2.0
In-place
-Best for single server, where all sites are to be upgraded
Thursday, April 22, 2010
Powershell Script to Read and Write a File
Powershell Script to Read and Write a File
function Copy-File ($infile, $outfile)
{
$file = gc $infile
Clear-Content $outfile
foreach( $line in $file)
{
$line | Out-File -filepath $outfile -encoding utf8 -append
}
}
Copy-File infile.txt outfile.txt
The bug that never happened.
let quadratic = fun a b c -> (b * b) - (4 * a *c)
let discriminant = quadratic 4 5 6
printfn "discriminant = %d" discriminant
Everything works, no surprise. But then as I modified the code. In particular as I changed the last line to:
printfn "discriminant = %d %d" discriminant
A compile warning occurred! So the compiler parsed the formatting string as well and checked that there where enough parameters provided. No doubt there is a nuance to functional programming that is requiring this level of checking.
But compare this to a line of C#
string wrongNumberOfArgs = string.Format("{0} {1}", 12);
The c# compiler is perfectly okay with this and it is only at runtime that you get the crash. In the simple case that I have shown this does not matter. But simple cases are not where this occurs. It is when it is complex that it occurs. So in the C# case you will find this out when you execute the code, when your mind has switched contexts.
In the F# case, the compiler warning is immediate because of the incremental compiles. You are best positioned to fix the code because you just keyed it in. In fact this is a bug that never happened.
Thursday, December 3, 2009
http://blogs.msdn.com/jnak/archive/2009/11/19/videos-of-the-windows-azure-sessions-at-pdc09.aspx
Introductory
- Lap Around the Windows Azure Platform
- Windows Azure Present and Future
- Introduction to Building Applications with Windows Azure
- The Business of Windows Azure: What you should know about Windows Azure Platform pricing and SLAs
- Tips and Tricks for Using Visual Studio 2010 to Build Applications that Run on Windows Azure
- Patterns for Building Scalable and Reliable Applications with Windows Azure
- Developing Advanced Applications with Windows Azure
- Windows Azure Monitoring, Logging, and Management APIs
- Automating the Application Lifecycle with Windows Azure
- Building Hybrid Cloud Applications with Windows Azure and the Service Bus
- Enabling Single Sign-On to Windows Azure Applications
- Bridging the Gap from On-Premises to the Cloud
- Storing and Manipulating Blobs and Files with Windows Azure Storage
- Windows Azure Tables and Queues Deep Dive
- Developing PHP and MySQL Applications with Windows Azure
- Building Java Applications with Windows Azure
- Enrich your Applications with Data from Microsoft Project Code Name “Dallas”
- SQL Azure Database: Present and Future
- Using the Microsoft Sync Framework to Connect Apps to the Cloud
- The Future of Database Development with SQL Azure
- Microsoft SQL Azure Database: Under the Hood
- Scaling out Web Applications with Microsoft SQL Azure Databases
- Petabytes for Peanuts! Making Sense out of “Ambient” Data
- Development Best Practices and Patterns for Using Microsoft SQL Azure Databases
- Lessons Learned: Building Scalable Applications with the Windows Azure Platform
- Lessons Learned: Building On-Premises and Cloud Applications with the Service Bus and Windows Azure
- Lessons Learned: Building Multi-Tenant Applications with the Windows Azure Platform
- Lessons Learned: Migrating Applications to the Windows Azure Platform
Saturday, January 3, 2009
F# leads the transformation
What F# represents is a partitioning of the programming languages. And unlike previous partitions this is a transformative change. General purpose languages are being supplanted by a collection of domain specific languages. These domain specific languages will include a general purpose language but it will not be there to rule them all but rather to orchestrate them all.
F# is a native or natural functional language where objects are possible (but the objects may not feel native or natural). C# is an object oriented language. With the advent of LINQ, some functional capabilities are possible but most C# programmers have experienced the unnatural things LINQ is doing to the language.
So each language has a dominant paradigm, C# is an object oriented language and F# is functionally oriented. Each supports the other paradigm but using that paradigm is for one off or special purpose needs. LINQ allows C# programmers to off load a bunch of data processing tasks that are hard and / or tedious to code in any C derivative language. Likewise objects are available in F# in case you need to maintain state. But the more you need to maintain state the less the task you are working with is a functional oriented task.
Since we are 60+ years into programming, Bare-Naked-Ladies-Fans ("It's all been done") are sure to point out this has all been done before. This is a valid point as C++ and Perl demonstrate. Both languages have adapted and provide these and numerous other features. However both languages have purchased these abilities at ever increasing complexity. As the Ruby creator aptly points out C++ is constantly surprising him. For a hobbyist, surprise is fun. For a guy trying to get something done surprise is bad.
But leaving aside surprise, it is hard to feel like you know either of C++ of Perl in their entirety. All special purpose languages that succeed will share this fate. Every feature the language supports will require some complexity to implement it in the syntax. The future being unknowable will always mean some choices turn out to be less than perfect.
So as the general purpose languages evolve their complexity and internal contradictions will grow as well. The languages scream for a refactoring. But refactoring is the one tool no language can ever use. No matter how ill advised a feature, it cannot be removed because this would break countless programs. And refactoring is not the removal of one feature but the wholesale change of several features.
What history gave us was series of general purpose languages (C, C++, Perl, Java, C# and others) where an attempt was made to refactor to the perfect paradigm. The dot Net platform opens up a new way; several languages can interoperate on the same platform and in the same development environment. F# is the break out example because unlike the C# and VB.net interaction it implements a completely different programming paradigm.
The general purpose languages do not have to implement every hot new feature. They can develop side by side with the F# languages, leveraging their power without corrupting their own syntax.
Thursday, October 30, 2008
Brief: Powershell With Visual Studio 2008
Books:
Windows PowerShell Cookbook
Microsoft Windows Powershell Step by Step
Links:
Powershell Main Page
http://www.microsoft.com/windowsserver2003/technologies/management/powershell/default.mspx
Powershell Team Blog
http://blogs.msdn.com/Powershell/
UI Automation Article
http://msdn.microsoft.com/en-us/magazine/cc337896.aspx?pr=blog
Visual Studio Addins:
CodePlex project Powershell inside VS2008
http://www.codeplex.com/VSCmdShell
CodePlex project Powershell Debugger Visualizer
Wednesday, October 29, 2008
Code: Powerscript to remove directory
$ReleaseList = Get-Content '.\ReleaseList.txt'
foreach($Directory in $ReleaseList)
{
Write-Host "Removing Directory: " $Directory
if (Test-Path -Path $Directory)
{
remove-item -recurse $Directory
}
else
{
Write-Host "Directory does not exist: $Directory"
}
}
Wednesday, October 22, 2008
Link: 48 Visual Studio 2008 Tools
Link to page explaining 48 tools that ship with visual studio 2008.
Thursday, October 16, 2008
Link for Team Foundation System, Server and Suite VPC image
Link for Team Foundation System, Server and Suite VPC image
Tuesday, October 7, 2008
Outline Microsoft Partner Competency Requirements
Microsoft Partner Competency
Competencies
- Small Business
- Advance Infrastructure Solutions
- Business Intelligence
- Custom Development Solutions
- Data Management Solutions
- Hosting Solutions
- Information Worker Solutions
- ISV/Software Solutions
- Learning Solutions
- Microsoft Business Solutions (Dynamics)
- Mobility Solutions
- Networking Infrastructure Solutions
- OEM Solutions
- Security Solutions
- SOA and Business Process
- Unified Communications Solutions
Requirements
- Small Business
- Small Business Sales and Marketing exam
- One of three (four) technical exams
- 70-282 deploy network
- 70-236 Exchange Server 2007, Configure
- 74-134 OEM Preinstall Kit
- 70-631 Sharepoint 3.0, Configure
- 70-282 deploy network
- Small Business Sales and Marketing exam
- Advance Infrastructure Solutions
- https://partner.microsoft.com/40012655
- Specializations
- Active Directory
- Two Advanced MCP: MCSE, MCSD, MCDBA
- One of four exams
- 70-294 Planning 2003 Active Directory
- 70-297 Design 2003 Active Directory
- 70-640 Configure 2008 Active Directory
- 70-647 Server 2008, Enterprise Manager
- 70-294 Planning 2003 Active Directory
- Three refs
- Two Advanced MCP: MCSE, MCSD, MCDBA
- Systems Management
- Two Advanced MCP: MCSE, MCSD, MCDBA
- One of four exams (increase to two, June 2009)
- 70-400 SC Operations Manager, Configuring
- 70-401 SC Configuration Manager, Configuring
- 70-089 Systems Management Server 2003 (del. June 2009)
- 70-290 Managing Server 2003 Environment (del. June 2009)
- 70-400 SC Operations Manager, Configuring
- Three refs
- Two Advanced MCP: MCSE, MCSD, MCDBA
- Storage Solutions
- Two Advanced MCP: MCSE, MCSD, MCDBA
- One of eight exams
- Exam 70-270—Installing, Configuring, and Administering Windows XP Professional
- Exam 70-291—Implementing, Managing, and Maintaining a Windows Server 2003 Network Infrastructure
- Exam 70-293—Planning and Maintaining a Windows Server 2003 Network Infrastructure
- Exam 70-297—Designing a Windows Server 2003 Active Directory and Network Infrastructure
- Exam 70-620—TS: Configuring Windows Vista Client
- Exam 70-621—PRO: Upgrading your MCDST Certification to MCITP Enterprise Support
- Exam 70-640—TS: Windows Server 2008 Active Directory, Configuring
- Exam 70-642—TS: Windows Server 2008 Network Infrastructure, Configuring
- Exam 70-270—Installing, Configuring, and Administering Windows XP Professional
- Three refs
- Two Advanced MCP: MCSE, MCSD, MCDBA
- Windows Desktop Deployment
- Two MCP
- One of four exams
- Exam 70-620; TS: Windows Vista, Configuring
- Exam 70-621; PRO: Upgrading your MCDST Certification to MCITP Enterprise Support
- Exam 70-622; PRO: Supporting and Troubleshooting Applications on a Windows Vista Client for Enterprise Support Technicians
- Exam 70-624; TS: Deploying and Maintaining Windows Vista Client and 2007 Microsoft Office System Desktops
- Exam: 70-656; TS: Configuring Microsoft Desktop Optimization Certification Pack
- Exam 70-620; TS: Windows Vista, Configuring
- Three refs
- Two MCP
- https://partner.microsoft.com/40012655
- Business Intelligence
- Business Intelligence Platform
- Two MCP
- One of five exams
- Exam 70-228—Installing, Configuring, and Administering Microsoft SQL Server 2000 Enterprise Edition
- Exam 70-229—Designing and Implementing Databases with Microsoft SQL Server 2000 Enterprise Edition
- Exam 70-431—TS: Microsoft SQL Server 2005—Implementation and Maintenance
- Exam 70-445—TS: Microsoft SQL Server 2005 Business Intelligence—Implementation and Maintenance
- Exam 70-446—PRO: Designing a Business Intelligence Infrastructure by Using Microsoft SQL Server 2005
- Exam 70-228—Installing, Configuring, and Administering Microsoft SQL Server 2000 Enterprise Edition
- Three refs
- Two MCP
- Performance Management
- Two MCP
70-556: TS: Microsoft Office PerformancePoint Server 2007, Applications.
- Three refs
- Two MCP
- Custom Development Solutions
- Two MCPD, MCSD, MCAD
- Three refs
- Two MCPD, MCSD, MCAD
- Data Management Solutions
- Two MCP
- One of eight exams
- Exam 70-228—Installing, Configuring, and Administering Microsoft SQL Server 2000 Enterprise Edition
- Exam 70-229—Designing and Implementing Databases with Microsoft SQL Server 2000 Enterprise Edition
- Exam 70-431—TS: Microsoft SQL Server 2005—Implementation and Maintenance
- Exam 70-441—PRO: Designing Database Solutions by Using Microsoft SQL Server 2005
- Exam 70-442—PRO: Designing and Optimizing Data Access by Using Microsoft SQL Server 2005
- Exam 70-443—PRO: Designing a Database Server Infrastructure by Using Microsoft SQL Server 2005
- Exam 70-444—PRO: Optimizing and Maintaining a Database Administration Solution by Using Microsoft SQL Server 2005
- Exam 70-447—UPGRADE: MCDBA Skills to MCITP Database Administrator by Using Microsoft SQL Server 2005
- Exam 70-228—Installing, Configuring, and Administering Microsoft SQL Server 2000 Enterprise Edition
- Three refs
- Two MCP
- Hosting Solutions
- Two MCT, MCSA, MCAD, MCSD, MCSE, MCDBA
- Sales: 75 processor or 3000 subscriber
- Three refs
- Two MCT, MCSA, MCAD, MCSD, MCSE, MCDBA
- Information Worker Solutions
- ISV/Software Solutions
- Tested Software
- Three refs
- Tested Software
- Learning Solutions
- Licensing Solutions
- License Delivery
- Two MCP
- One of two tests
- Exam 70-671: Designing and Providing Microsoft Volume Licensing Solutions to Small and Medium Organizations
- Exam 70-672: Designing and Providing Microsoft Volume Licensing Solutions to Large Organizations
- Exam 70-671: Designing and Providing Microsoft Volume Licensing Solutions to Small and Medium Organizations
- Three refs
- Two MCP
- Software Asset Management
- Two MCP
- Exam 70-123: Planning, Implementing, and Maintaining a Software Asset Management (SAM) Program.
- Three refs
- Two MCP
- Microsoft Business Solutions (Dynamics)
- Microsoft Dynamics AX
- Microsoft Dynamics C5 (Denmark only)
- Microsoft Dynamics CRM
- Microsoft Dynamics GP
- Microsoft Dynamics NAV
- Microsoft Dynamics POS
- Microsoft Dynamics SL
- Microsoft Dynamics AX
- Mobility Solutions
- Networking Infrastructure Solutions
- Two MCP
- One of 12 exams
- Exam 70-270—Installing, Configuring, and Administering Microsoft Windows XP Professional
- Exam 70-282—Designing, Deploying, and Managing a Network Solution for the Small and Medium-Sized Business
- Exam 70-290—Managing and Maintaining a Microsoft Windows Server 2003 Environment
- Exam 70-291—Implementing, Managing, and Maintaining a Windows Server 2003 Network Infrastructure
- Exam 70-293—Planning and Maintaining a Windows Server 2003 Network Infrastructure
- Exam 70-294—Planning, Implementing, and Maintaining a Windows Server 2003 Active Directory Infrastructure
- Exam 70-297—Designing a Windows Server 2003 Active Directory and Network Infrastructure
- Exam 70-298—Designing Security for a Windows Server 2003 Network
- Exam 70-299—Implementing and Administering Security in a Windows Server 2003 Network
- Exam 70-350—Implementing Microsoft Internet Security and Acceleration (ISA) Server 2004
- Exam 70-620—TS: Configuring Windows Vista Client
- Exam 70-621—PRO: Upgrading your MCDST Certification to MCITP Enterprise Support
- Exam 70-270—Installing, Configuring, and Administering Microsoft Windows XP Professional
- Three refs
- Two MCP
- OEM Solutions
- Sell OS: 150 client OR 15 server
- 2 MCP (or 1 and a Designed for Windows Server)
- One test of 13
- Microsoft Exam 70-271: Maintaining and Troubleshooting Microsoft Windows XP for Desktop Support Technicians
- Microsoft Exam 70-272: Maintaining and Troubleshooting Applications on a Microsoft Windows XP Platform for Desktop Support Technicians
- Microsoft Exam 70-282: Planning, Deploying, and Managing a Network Solution for Small and Midsize Businesses
- Microsoft Exam 70-290: Managing and Maintaining a Microsoft Windows Server 2003 Environment
- Microsoft Exam 74-134: Preinstalling Microsoft Products and Technologies
- Microsoft Exam 70-620: Technology Specialist —Configuring Windows Vista
- Microsoft Exam 70-621: Pro —Upgrading Your Microsoft Certified Desktop Support Technicial Certification to Microsoft Certified IT Professional Enterprise Support
- Microsoft Exam 70-623: Pro —Microsoft Desktop Support, Consumer
- Microsoft Exam 70-624: Technology Specialist: Deploying and Maintaining Windows Vista Client and Microsoft Office System Desktops
- Microsoft Exam 70-271: Maintaining and Troubleshooting Microsoft Windows XP for Desktop Support Technicians
- Sell OS: 150 client OR 15 server
- Security Solutions
- Infrastructure Security Specialization
- One MCP with one of:
- Exam 70-350– Implementing Microsoft Internet Security and Acceleration (ISA) Server 2004
- Exam 70-351– TS: Microsoft Internet Security and Acceleration (ISA) Server 2006, Configuring
- Exam 70-557– TS: Microsoft Forefront Client and Server, Configuring
- Exam 70-350– Implementing Microsoft Internet Security and Acceleration (ISA) Server 2004
- And one of
- (ISC)2 Certified Information Systems Security Professional (CISSP)
- (ISC)2 Systems Security Certified Practitioner (SSCP)
- Information Systems Audit and Control Association (ISACA) Certified Information Systems Auditor (CISA)
- ISACA Certified Information Systems Manager (CISM)
- (ISC)2 Certified Information Systems Security Professional (CISSP)
- Second MCP with one of
- Exam 70-350– Implementing Microsoft Internet Security and Acceleration (ISA) Server 2004
- Exam 70-351– TS: Microsoft Internet Security and Acceleration (ISA) Server 2006, Configuring
- Exam 70-557– TS: Microsoft Forefront Client and Server, Configuring
- Exam 70-350– Implementing Microsoft Internet Security and Acceleration (ISA) Server 2004
- Three refs
- Identity and Secure Access Specialization
- One MCP with one of:
- Microsoft Certified Systems Engineer (MCSE)
- Microsoft Certified Systems Developer (MCSD)
- Microsoft Certified Database Administrator (MCDBA) on Microsoft Windows Server 2003 or Windows 2000 operating systems
- Microsoft Certified IT Professional (MCITP) Database Administrator
Or, who has achieved one of the following third-party security certifications: - (ISC)2 Certified Information Systems Security Professional (CISSP)
- (ISC)2 Systems Security Certified Practitioner (SSCP)
- (ISC)2 Certification and Accreditation Professional (CAP)
- Information Systems Audit and Control Association (ISACA) Certified Information Systems Auditor (CISA)
- ISACA Certified Information Systems Manager (CISM)
- ISACA Certified in the Governance of Enterprise IT (CGEIT)
- Microsoft Certified Systems Engineer (MCSE)
- And
- Exam 70-294: - Planning, Implementing, and Maintaining a Microsoft Windows Server 2003 Active Directory Infrastructure
- Exam 70-297: - Designing a Microsoft Windows Server 2003 Active Directory and Network Infrastructure
- Exam 70-640: - TS: Windows Server 2008 Active Directory, Configuring
- Exam 70-647: - PRO: Windows Server 2008, Enterprise Administrator
- Exam 70-294: - Planning, Implementing, and Maintaining a Microsoft Windows Server 2003 Active Directory Infrastructure
- Second MCP with one of
- Exam 70-294: - Planning, Implementing, and Maintaining a Microsoft Windows Server 2003 Active Directory Infrastructure
- Exam 70-297: - Designing a Microsoft Windows Server 2003 Active Directory and Network Infrastructure
- Exam 70-640: - TS: Windows Server 2008 Active Directory, Configuring
- Exam 70-647: - PRO: Windows Server 2008, Enterprise Administrator
- Exam 70-294: - Planning, Implementing, and Maintaining a Microsoft Windows Server 2003 Active Directory Infrastructure
- Three refs
- SOA and Business Process
- Two MCP
- One of n tests
- Exam 70-235—TS: Developing Business Process and Integration Solutions Using Microsoft BizTalk Server
- Exam 70-300—Analyzing Requirements and Defining Microsoft .NET Solution Architectures
- Exam 70-310—Developing XML Web Services and Server Components with Microsoft Visual Basic .NET and the Microsoft .NET Framework
- Exam 70-320—Developing XML Web Services and Server Components with Microsoft Visual C# .NET and the Microsoft .NET Framework
- Exam 70-431—TS: Microsoft SQL Server 2005 - Implementation and Maintenance
- Exam 70-526—TS: Microsoft .NET Framework 2.0 - Windows-Based Client Development
- Exam 70-529—TS: Microsoft .NET Framework 2.0 - Distributed Application Development
- Exam 70-549—PRO: Designing and Developing Enterprise Applications by Using the Microsoft .NET Framework
- Exam 74-135—Developing E-Business Solutions Using Microsoft BizTalk Server 2004
- Exam 70-235—TS: Developing Business Process and Integration Solutions Using Microsoft BizTalk Server
- Three refs
- Two MCP
- Unified Communications Solutions
Resources
- Small Business
- Advance Infrastructure Solutions
- Business Intelligence
- Custom Development Solutions
- Data Management Solutions
- Hosting Solutions
- Information Worker Solutions
- ISV/Software Solutions
- Learning Solutions
- Licensing Solutions
- License Delivery
- Software Asset Management
- Microsoft Business Solutions (Dynamics)
- Mobility Solutions
- Networking Infrastructure Solutions
- OEM Solutions
- Security Solutions
- Forefront
- https://partner.microsoft.com/global/program/competencies/securitysolutions/40032262
- https://partner.microsoft.com/global/program/competencies/securitysolutions/40032262
- SOA and Business Process
- Unified Communications Solutions
Monday, October 6, 2008
Brief: Microsoft Partner Competency
Microsoft Partner Competency
Competencies
- Small Business
- Advance Infrastructure Solutions
- Business Intelligence
- Custom Development Solutions
- Data Management Solutions
- Hosting Solutions
- Information Worker Solutions
- ISV/Software Solutions
- Learning Solutions
- Microsoft Business Solutions (Dynamics)
- Mobility Solutions
- Networking Infrastructure Solutions
- OEM Solutions
- Security Solutions
- SOA and Business Process
- Unified Communications Solutions
Requirements
- Small Business
- Small Business Sales and Marketing exam
- One of three (four) technical exams
- 70-282 deploy network
- 70-236 Exchange Server 2007, Configure
- 74-134 OEM Preinstall Kit
- 70-631 Sharepoint 3.0, Configure
- 70-282 deploy network
- Small Business Sales and Marketing exam
- Advance Infrastructure Solutions
- Business Intelligence
- Custom Development Solutions
- Data Management Solutions
- Hosting Solutions
- Information Worker Solutions
- ISV/Software Solutions
- Learning Solutions
- Microsoft Business Solutions (Dynamics)
- Mobility Solutions
- Networking Infrastructure Solutions
- OEM Solutions
- Security Solutions
- SOA and Business Process
- Unified Communications Solutions
Resources
- Small Business
- Advance Infrastructure Solutions
- Business Intelligence
- Custom Development Solutions
- Data Management Solutions
- Hosting Solutions
- Information Worker Solutions
- ISV/Software Solutions
- Learning Solutions
- Microsoft Business Solutions (Dynamics)
- Mobility Solutions
- Networking Infrastructure Solutions
- OEM Solutions
- Security Solutions
- SOA and Business Process
- Unified Communications Solutions
Brief: Microsoft Certified Partner
Certified Partner
- Points
- 50 Points
- 2 MCP professionals
- 50 Points
- Certified Software
- Cost varies from $400 to $18000
- Points vary from 10 to 50 (bonus to 60)
- https://partner.microsoft.com/40011374
- Cost varies from $400 to $18000
- Certified Hardware
Gold Partner
- 120 Points
- One competency minimum
Points Toward Partnership
- 30 Per Compentency
- 20 First Compentency bonus
- 25 Small Business Competency
- 40 (max) for Certified Professionals, ranges from 1 for MCP to 10 for Architect
- 20 (max) for Customer References, 2 per customer
- 70 (max) Tested Products
- 20 (max) Sales OS
- 60 (max) Sales Business Solutions
- 20, + 20 bonus, Customer Satisfaction Surveys, bonus for Net Satisfaction
- 20 (max ) ISV Royalty Program
- 20 (max) Customer Assessments, 1 point per 5 assessments
Monday, September 29, 2008
Flash, Silverlight and JavaScript Performance
Here is an interesting head to head performance comparison of Flash and Silverlight:
http://www.itwriting.com/primetest/index.html
Both grind thru a less than optimal algorithm for finding a bunch of prime numbers.
Code is provided in another link so that you can see that it is apples to apples in terms of the code implemented.
On my machine, I saw an over two one advantage for Silverlight. Silverlight ran 1M prime checks in .8892285 seconds and Flash took 2.153 seconds for the same. This ratio held up over a range of values:
Number | Flash | Silverlight | Ratio |
1 M | 2.153 | 0.8892285 | 2.42119995 |
2 M | 5.477 | 2.3092736 | 2.371741486 |
3 M | 9.627 | 4.056832 | 2.373033934 |
4 M | 14.324 | 6.0697226 | 2.359910155 |
5 M | 19.692 | 8.3445947 | 2.359850982 |
6 M | 25.895 | 10.802571 | 2.397114539 |
7 M | 31.773 | 13.3872827 | 2.373371857 |
8 M | 38.599 | 16.1520106 | 2.389733449 |
9 M | 45.238 | 19.0887398 | 2.369878812 |
Another individual, Tobin Harris no doubt, has provided a JavaScript implementation at:
http://www.tobinharris.com/primes.html
It took 54 seconds for the 1M to run in JavaScript. But this result had to be thrown out because IE was constantly popping up a dialog asking if the JavaScript should be terminated. Although that is a lesson in and of itself that JavaScript running loose in the browser will face ever increasing scrutiny that diminishes it's usefulness.
Friday, September 26, 2008
What Does Agile Lack?
In this "The Register" article AgileDevelopmentLessonsLearned the truth comes out.
Agile is suffering from what it lacks, specifically:
Effective Management
Design and Analysis
Developer Tools
Wednesday, September 24, 2008
Roll Back on Team System Source Control
To perform the equivalent of a roll back with Team System Source Control, you must create a changeset that contains the contents of the roll back.
- Get specific version
- Right click the root of the Source Control tree and select compare
- Select all and then select reconcile from context menu
- Reconcil Folder Differences"
- On drop down menu "Files that do not have pending changes select "check out"
- Check in
Saturday, September 20, 2008
Code F#: Generate Pascal Triangles
The following is code written in F#. It generates a list of Pascal Triangles.
#light
let oddTriangle x = [x, ( x * x - 1) / 2, (x * x + 1) / 2]
let evenTriangle x = [ 2 * x, (x * x) - 1, (x * x ) + 1]
let pairTriangle x = [ oddTriangle (2 * x - 1), evenTriangle x ]
let numbers = [ 1 .. 100]
let perfectTriangles = List.map pairTriangle numbers
printf "%A" perfectTriangles
open System
Console.ReadKey(true)
Output:
[[([(1, 0, 1)], [(2, 0, 2)])]; [([(3, 4, 5)], [(4, 3, 5)])];
[([(5, 12, 13)], [(6, 8, 10)])]; [([(7, 24, 25)], [(8, 15, 17)])];
[([(9, 40, 41)], [(10, 24, 26)])]; [([(11, 60, 61)], [(12, 35, 37)])];
[([(13, 84, 85)], [(14, 48, 50)])]; [([(15, 112, 113)], [(16, 63, 65)])];
[([(17, 144, 145)], [(18, 80, 82)])]; [([(19, 180, 181)], [(20, 99, 101)])]]