An (Almost) Complete List of Global CSS Reset Styles | kmsm
6 tried-and-true methods, 2 newer minified approaches, and finally a new HTML5 CSS reset style.
My Foray Into Weblogging. Using this to store interesting items for later review.
6 tried-and-true methods, 2 newer minified approaches, and finally a new HTML5 CSS reset style.
Here's a quote: "Three screens and the cloud"
We heard this over and over at PDC. Let's read between the lines a bit shall we?
I have three screens: Windows Desktop, Web, Mobile. Ok, if I want to write an app that will run on all three what do I as a developer have to do today? Let’s see, well, we could write a ClickOnce deployed Smart Client for the Desktop that uses WPF. For the web, well, we would have to switch gears completely and rewrite our app in Asp.Net or Asp.Net MVC to get that screen. For mobile, even tougher, we have to rewrite the app again to get the mobile version. Let’s think about this differently again. Think about it, how many technologies would a developer have to know in order to an application for these three different screens; WPF, JavaScript, HTML, and CSS will be used just to name a few.
Now, let's switch gears. What if I used Silverlight 4 to write my app? Well, it could work in the browser no doubt. Hmmm, it could also work on the Desktop using the out of browser experience with elevated permissions. What about mobile?
"Wait, didn’t you just say Keith that at Mix we’ll get to see Windows Mobile 7?"
Yes!
"And hasn't there already been talk of using Silverlight for mobile?"
Yes!
"Aha! Three screens with Silverlight, I get it!"
That's right my friendly .Net developers the writing is on the wall. The vision of WPF/e (WPF Everywhere) is about to come true. We've waited for years but it is just around the corner as I predicted would happen years ago.
Labels: .Net, Silverlight, Visual Studio, Web Dev, Windows Mobile
sp_configure ’show advanced’, 1Ignore the error message below, if you have it.
reconfigure
sp_configure ‘awe enabled’, 1
reconfigure
Msg 5845, Level 16, State 1, Line 1
Address Windowing Extensions (AWE) requires
the ‘lock pages in memory’ privilege which is
not currently present in the access token of
the process.
Labels: SQL Server
For some reason that I have not been able to figure out yet, I have been having problems with some software installations failing on my Windows 7 system with a message like this (or similar to this):
In this case, it was installing Intellipoint, but I had the problem with installing Mozy Backup client, VirtualBox, and a couple other apps that I don't remember right now. I was able to fix each of these installations individually, and will describe it here (so that I can find it again when I need it). But this does not seem to be a widespread problem, and I am still not sure why my system does this and not (many) others.
I used the instructions on John McBride's blog (Virtual Box 3 and Windows 7 (Making it work!)), with a couple of additional items relating to logging the install and finding the msi installation package.
REGEDIT4
[HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Installer]
"Logging"="voicewarmup"
Or you can save this to a file and dbl-click it to install it in your registry. This will create a log file in your temp directory for each installation using Windows installer. Package we're running from ==> C:\Users\Mark\AppData\Local\Temp\msiB374.tmp\mozy.msi
That's it. Each of the 4 installations worked for me then.
Labels: Windows 7, Windows Misc, Windows Vista
There has been some uproar about an article that Microsoft will still support IE6 until 2014 (ref: http://twitter.com/JimHolmes/statuses/3388282884, and RT dozens of times.)
I'm sorry, but I cannot get upset about this news article. Back in the 90's, we whined and complained that Microsoft (and other vendors) were coming out too fast with software releases, and not supporting releases long enough. Remember that VB 2.0 was only out 6 months before VB 3.0 came out. And MS Word 98 was replaced by Office 2000 only 8 months after its release. Microsoft heard and understood, and came out with their Lifecycle Support policy so that we could have some semblance of scheduled lifetime for software releases.
And now we want to whine that Microsoft is following that policy? I'm sorry, but I'm not going to follow that. We cannot complain because there wasn't a planned policy, then complain that we don't like the standard policy. No, Microsoft is OK on this one.
Now, I fully agree that we should not be using IE6. We need to get users to safer and better platforms, and get them on IE8 whenever possible. And the sooner the better, especially for relieving our web site development headaches. The faster the market share for IE6 approaches zero will be good for all of us.
But as long as there are users using IE6, for whatever reason, I want Microsoft to support it. I want critical security patches and fixes dealt with and deployed as quickly as possible, and any performance enhancements or rendering fixes continued to be developed.
And as long there are significant share of our users still using IE6 (20% of total IE population, that I last heard of), we as developers still need to account for those users and make sure our sites don't leave them out. We develop software for our businesses, and for our business's customers, not for our standards of elegance. We need to continue to support or users and customers, not ridicule or demean them.
Microsoft announces Windows 7 Family pack pricing and Anytime upgrade pricing.
$149 for 3 family Home Premium licenses is pretty good, especially considering that 1 Home Premium license is $199. Or is the 3 licenses only for upgrades? Not sure, I've posted the question to the Windows team blog post.
Windows Anytime Upgrade and Family Pack Pricing - Windows 7 Team Blog - The Windows Blog
Updated 8/1: Family Pack is upgrade license only. Raelize that you will only be able to upgrade from Vista SP1 or XP SP3, and it must be currently activated.
Labels: Windows 7
My profile was just accepted on the Microsoft Visual Basic Team's "I'm a VB" campaign.
Labels: .Net, Dev Misc, Visual Studio
Very handy for using common logging or exception handling routines.
This code is corrected from original article, and added to also get the calling function.
using System.Diagnostics;
void Log(string eventMessage)
{
Console.WriteLine("Event logged by " + (new StackTrace().GetFrame(1).GetMethod().Name);
Console.WriteLine("Module: " + (new StackTrace().GetFrame(1).GetMethod().Module.Name)
Console.WriteLine("Event: " + eventMessage);
}
Labels: .Net, Exceptions
Microsoft ADO.Net team (Himanshu Vasishth, Program Manager) announces that the ADO.Net Oracle provider will no longer be supplied by Microsoft. Recommended to use 3rd party provider.
ADO.NET team blog : System.Data.OracleClient Update
Possible alternatives are:
Labels: .Net
I ran into an interesting problem at a client site the other day. Another developer group had written and installed a ASP.Net application (Visual Studio 2008, .Net Framework 3.5 SP1, Windows Server 2003 R2, SQL Server 2005). Without divulging too many details, let's just say the application had a public site where users could upload a file, and an internal admin site where the internal user could download the file. The file is being stored in the database in a varbinary(max) column.
After the sites were installed, the internal user had a problem downloading the file; it always came back as 0 bytes. It did not matter the file type (pdfs and word docs were used), browser type (same for IE6 (standard for company), IE7, IE8, Firefox 3.x, Chrome, Opera , Safari on Windows). The file was definitely in the database, and the original developer wrote a Windows desktop app to download the file as a temporary workaround. The original developer swore the file download it worked just fine on their servers, and brought in a more experienced consultant to try to help diagnose the problem. I was at this client site on another project, and was asked to take a look to see if I could spot anything.
After a few false starts doing some troubleshooting (the original developer said the VS project was a web site project, and had the code-behind files in the web directory, so we would modify the .cs file to try to track the problem, but had no results; turns out it was a web application project, and we were not recompiling the project), we did confirm the byte array from the database field was being populated. The code was using Response.BinaryWrite, and seemed to be setting the proper headers and sending the data. We look at the IIS web site settings over and over, trying to find some clue.
The server the web application was installed on did have other live applications running, so our debugging the production server was limited so as to not affect the other apps. Our next attempt was to setup another Windows IIS server (virtual, on MS Virtual Server) and install the web site app on there. The file download worked just fine there. So it appears that the application is OK, it must be an IIS setting causing the problem. Now that we had a server we knew it worked on, I took the metabase.xml files from both servers and worked to compare them.
That was when I saw the problem: HTTP Compression was turned on the first server. We had missed it on the IIS Settings because that (the "Service" tab) is only on the property dialog for the Web Sites folder, not on the web sites themselves, and not on the server settings. Here is the dialog window:
Turning that off did solve the download file problem, but the client was uneasy about turning it off (understandably) since it was likely turned as part of the other applications that was running on that server, and they did not want to risk that apps.
Although I knew it would not affect the other apps to turn off HTTP compression, I looked further into it and saw that HTTP compression can be turned on or off for the entire server, by web site, by directory, by file type, or by individual page, all by using adsutil commands. I also found a .cmd file in the AdminScript directory of the server turning on HTTP compression, so I modified it to turn off compression for the web site:
CSCRIPT.EXE ADSUTIL.VBS SET W3SVC/Filters/Compression/GZIP/HcScriptFileExtensions "asp" "dll" "exe" "pdf" "aspx" "svc"CSCRIPT.EXE ADSUTIL.VBS SET W3SVC/Filters/Compression/DEFLATE/HcScriptFileExtensions "asp" "dll" "exe" "pdf" "aspx" "svc"CSCRIPT.EXE ADSUTIL.VBS SET W3SVC/Filters/Compression/GZIP/HcDynamicCompressionLevel 9CSCRIPT.EXE ADSUTIL.VBS SET W3SVC/Filters/Compression/DEFLATE/HcDynamicCompressionLevel 9CSCRIPT.EXE ADSUTIL.VBS SET W3SVC/Filters/Compression/GZIP/HcStaticCompressionLevel 9CSCRIPT.EXE ADSUTIL.VBS SET W3SVC/Filters/Compression/DEFLATE/HcStaticCompressionLevel 9CSCRIPT.EXE ADSUTIL.VBS SET w3SVC/Filters/Compression/Parameters/HcDoDynamicCompression trueCSCRIPT.EXE ADSUTIL.VBS SET w3SVC/Filters/Compression/Parameters/HcDoStaticCompression trueREM Added exclusion for careeradmin site; mark harr; 6/3/2009CSCRIPT.EXE ADSUTIL.VBS SET W3SVC/2129524648/root/DoDynamicCompression false
That solved the issue. But there were a couple other interesting things:
Labels: .Net, Visual Studio, Web Dev
Just released from Microsoft:
Windows� API Code Pack for Microsoft� .NET Framework (v0.90) - Home
Vista Bridge Sample Library 1.4
Some of the newer features in Vista and Windows 7 are not exposed in the .Net Framework (yet). This package of source code from Microsoft shows how to access and use these features from managed code. Some of the features here are:
Windows 7 Taskbar Jump Lists, Icon Overlay, Progress Bar, Tabbed Thumbnails, and Thumbnail Toolbars.
Known Folders, Windows 7 Libraries, non-file system containers, and a hierarchy of Shell Namespace entities.
Windows 7 Explorer Browser Control.
Shell property system.
Windows Vista and Windows 7 Common File Dialogs, including custom controls.
Windows Vista and Windows 7 Task Dialogs.
Direct3D 11.0, Direct3D 10.1/10.0, DXGI 1.0/1.1, Direct2D 1.0, DirectWrite, Windows Imaging Component (WIC) APIs. (DirectWrite and WIC have partial support)
Sensor Platform APIs
Extended Linguistic Services APIs
Power Management APIs
Application Restart and Recovery APIs
Network List Manager APIs
Command Link control and System defined Shell icons.
Labels: .Net, Visual Studio, Windows 7, Windows Vista
SEO on Dynamic Pages - URL rewrites, 301 Redirects, and more SEO on Dynamic Pages
Good article on enhancing SEO on catalog and other dynamic pages.
Labels: Web Dev
Well, I have been running Windows 7 RC for 2 weeks now on my main production machine. Overall, it is very good: fast, pretty stable, and the new features are good.
I especially like the new taskbar. Reading the descriptions of it before I installed Win7, I was a little leery that it was better, that it was just different to be different. But after working with it, it really is better. I was worried that it would be confusing having both the "quick links" and taskbar together, but it really is not a problem; the active apps have an "aero" frame around them, and the unlaunched buttons do not. I like the aero preview windows that popup when you hover the mouse over the button, but especially like when you hover the mouse over the preview window, the rest of the windows go "aero ghost" mode, so that window is the only one visible.
Problems so far are few, but here's what I have:
* My Bluetooth mouse (MS Mouse Presenter 8000) frequently disconnects. Sometimes it will reconnect in about 15 seconds or so, but most of the time I have to power cycle the mouse. Hope a fix or updated mouse driver fixes that soon. |
* Windows Live Photo Gallery screensaver crashes and locks up. I can get back by hitting Ctrl-Alt-Del, then Cancel and the system window then pops up about an unresponsive application. So far, that is only screensaver that has a problem. |
* My Sierra Wireless AirCard 875U cellular modem needs to use the old Sierra 3GWatcher app, and Win7 does not "recognize" the network. It works, and I connect OK, it is just that Network Center says it is "Unidentified Network", and I cannot properly set firewall options (public/private) or name. I understand Win7 has newer drivers that treat cell modems like full fledged network adapters (like WiFi adapters), but not for my old(er) device. |
And one changed item I am not completely sold on yet: taking out the Sidebar frame. Sidebar gadgets are now undocked and floating (like you could in Vista if you dragged it from the frame). But I liked how the Sidebar frame gave me "pages" for gadgets, and I could have a dozen or so gadgets ready when needed, but not cluttering up the desktop. But now, floating gadgets are the only option.
Labels: Windows 7
New version (3.0.30512) ASP.Net Ajax Control toolkit. Added 3 new controls, including an HTMLEditor and ComboBox (windows-like, dropdownlist and textbox). Also 20 bugfixes to existing controls.
Note that these controls work only with VS 2008 and .Net Framework 3.5.
Thanks to @shanselman who twittered this announcement.
Labels: .Net, Visual Studio
MS KB958639 Download details: WM 6.1 Hot Fix for Sending POP and IMAP E-mail
I was having a problem with Gmail apps on my WinMobile device, where I could not send email. The only way around it was to delete and recreate the account. Turns out it is a bug in WM 6.1, and this fixes the problem.
Labels: GMail, Windows Mobile
Interesting look at Google's server designs, both the individual server (battery on the server instead of UPS, velcro wraps) and the container design.
Google uncloaks once-secret server | Business Tech - CNET News
Labels: Misc
For future reference. This actually works!
Keep Vista from Changing Folder View : Steve Smith's Blog
Labels: Windows Vista
Microsoft Tag can now do black and white tags, as well as color. All the current readers already can handle the b&w. And you can use both a b&w and color tag for same link.
= |
Microsoft Tag : Feature: Microsoft Tag Black and white!
Labels: Dev Misc, Misc, Windows Mobile
Looks like Nod32, my favorite recommended antivirus solution, is changing their licensing just a bit, but will cost me bucks.
First, a little about what I am trying to do. I run a pretty decent laptop with Windows Vista, 4gb ram, and anywhere from 2 to 7 hard drives (1 internal, of course, and the others on USB). As a software development consultant, I run a number of virtual machines. Some are for unique setups for clients (their VPN, or older version of Visual Studio or Windows); some for testing purposes (e.g. clean systems for testing setup packages, older browser versions); some with server OS's (Windows server 2003 or 2008) with older SQL server, or SharePoint development.
Trying to have an antivirus solution properly licensed for all these virtual machines is a pain. The only av product I found that allows virtual machines to share the same license as the host is Nod32. So besides the very reasons to use this product (fastest, smallest memory footprint (100mb), and best detection (it heuristic engine has never missed an in-the-wild virus, ref), having to buy only one license makes it a very good fit for me. And it is one of the few client antivirus products that will install on server OS's.
Starting with their version 3.0, the server OS's were no longer permitted for a single-user license, only a business edition license could install Nod32 v3 on Windows Server 2000/2003. This was not too much of a problem, as we were permitted to use the previous version, v2.7, on the servers and was still supported.
Now here is the new problem. Nod32 v4 was released this week. And when my license it renewed, the new username will not be permitted for v2.7. Nod32 v4 will still not allow installation on Windows servers with single-user license. I will have to buy a new business edition license to be able to install on Windows servers on virtual machines. But business licenses have to be purchased with a minimum of 5 users, at (currently) $42.99/user ($214.95), as compared to $39.99 for home/single-user. So in order to install Nod32 on my server VM's, I need to buy for 4 unneeded/unused users.
My options are somewhat limited. No one else allows licensing on virtual machines except as a separate machine and license (and since I have about 15 virtual machines, buying licenses for them is not an option). AVG free edition is not an option, because it does install on server OS's. Looks like I have to buy wasted business user licenses.
Labels: Misc, Windows Misc
Cool new WinMobile app released by Microsoft.
Microsoft Recite's voice search makes it easy to retrieve your stored thoughts and notes by using voice pattern matching. It analyzes the patterns in your speech and finds matches between two recordings -- the notes you stored on your phone, and the search you do using your voice. With Recite you can store thousands of spoken notes, and then later retrieve the notes you want based on a match with your search term(s). This is different from speech recognition, which has to accurately convert spoken words to application-readable input.
Microsoft Recite : Announcement - Microsoft Recite - Technology Preview
It would be really cool if this integrated with Outlook to create appts, events, notes.
Labels: Windows Mobile
Microsoft has released the ultra-important IE Update.
Run your Windows Update ASAP (if not sooner).
This fixes the recent exploits that have been working for the past 5 days or so.
Labels: Windows Misc, Windows Vista
Just discovered a little geek humor at Microsoft.
I have the unfortunate task of upgrading a VB6 app to run properly under Vista. No, I could not upgrade the app to .Net, just "fix" the VB app and its installer. So I'm installing VB6 in a Vista virtual machine (do not want to mess up my host machine), and having a little problem when starting VB, an error that mscomctl.ocx is not registered. But it is, and I hunt down Dependency Walker (Depends) to make sure. It's OK, and its components are OK, also.
So I run profiler from Depends to start up VB6 and see what happens. Find an error message*, and stop the profiler. That in turn stops the VB6 application, and profiler dutifully logs the exit return code, and helpfully translates the exit code to hex:
Terminating process by user's request.
Exited "VB6.EXE" (process 0xB84) with code 57005 (0xDEAD).
Had to chuckle. And then went to calc.exe to confirm, decimal 57005 is hex 0xDEAD.
(*for what it's worth, the error is "GetProcAddress(0x75E70000 [KERNEL32.DLL], "IsTNT") called from "MSCOMCTL.OCX" at address 0x27588909 and returned NULL. Error: The specified procedure could not be found (127)." Now I got to got figure that one out.)
Labels: Dev Misc, Visual Studio, Windows Vista
Microsoft has now released a ASP.Net Chart control. Formerly from Dundas, this control was recently added to Reporting Services, and is now available for free for ASP.Net developers.
Ref from Scott Guthrie's blog: New ASP.NET Charting Control:
Labels: .Net, Visual Studio
DevArchive.net Blog: Cross Browser GridView Fixed Header Extender, ASP.NET AJAX
A nice AJAX extender control for GridView to provide fixed header row for scrolling grid.
Labels: .Net, Visual Studio
Microsoft has released a patch for VS 2008 to enable better intellisense support for Javascript files, esp. jQuery. This patch enhances VS to look for like-named javascript files for intellisense documentation. For instance, for jQuery, you would have these lines in the head of your page:
Downloads:
VS 2008 SP1 Hotfix: http://code.msdn.microsoft.com/KB958502/Release/ProjectReleases.aspx?ReleaseId=1736
jQuery:
http://docs.jquery.com/Downloading_jQuery#Download_jQuery
jQuery Doc:
http://code.jquery.com/jquery-1.2.6-vsdoc.js
(or use jQuery download above, and select the "Documentation: Visual Studio" link)
Labels: .Net, Visual Studio
I first heard of jQuery when Microsoft (actually, Scott Guthrie, the Microsoft VP for Developer Division) announced support for it (see the link below). Then, the .Net Developer User Group had a session on it last week. This is something simple, easy to implement and add to our toolkit, and can save a ton of time adding desirable features to our websites.
If you have not heard about jQuery before:
Good beginning description of it from Scott Guthrie’s blog (http://weblogs.asp.net/scottgu/archive/2008/09/28/jquery-and-microsoft.aspx):
A big part of the appeal of jQuery is that it allows you to elegantly (and efficiently) find and manipulate HTML elements with minimum lines of code. jQuery supports this via a nice "selector" API that allows developers to query for HTML elements, and then apply "commands" to them. One of the characteristics of jQuery commands is that they can be "chained" together - so that the result of one command can feed into another. jQuery also includes a built-in set of animation APIs that can be used as commands. The combination allows you to do some really cool things with only a few keystrokes. For example, the below JavaScript uses jQuery to find all <div> elements within a page that have a CSS class of "product", and then animate them to slowly disappear: As another example, the JavaScript below uses jQuery to find a specific <table> on the page with an id of "datagrid1", then retrieves every other <tr> row within the datagrid, and sets those <tr> elements to have a CSS class of "even" - which could be used to alternate the background color of each row: |
Again from Scott Guthrie’s blog:
Here are some links on jQuery:
· Documentation: http://docs.jquery.com/Main_Page
· Tutorials: http://docs.jquery.com/Tutorials
· Scott Hanselmann’s tutorial using jQuery in Visual Studio and Ajax and ADO.Net Data Services: http://www.hanselman.com/blog/jQuerytoshipwithASPNETMVCandVisualStudio.aspx
Labels: .Net, SIG, Visual Studio
Basic description of the different types of virtualization:
Sorting out the different layers of virtualization | Virtually Speaking | ZDNet.com
Labels: Misc
I had a problem with a flash drive this weekend, and it points to a problem that we all should be aware of.
Flash drives (those USB memory sticks) have a limited life to them. The cheaper ones (most all of those that you can buy now) can only be written to approximately 10,000 times. (More expensive drives can be written to 100,000 – 200,000 times, but all drives have a limited life that way.) Now, for most uses, that can be a very long time. But if you depend on a single drive for frequent usage, it can fail.
I have been using a Lexar 8gb ExpressCard SSD (solid-state disk) in my laptop for holding my ReadyBoost cache for Windows Vista. ReadyBoost improves system performance dramatically, especially in a laptop. However, after about 1½ years, the memory card failed. That’s when I found out about this limited life for flash drives. Although Microsoft says flash drives for ReadyBoost should last 10 years, my device may have had a defect, or a bug in Vista that was fixed may have caused extra unnecessary rewriting of the device when resuming from standby (which I do all the time instead of shutting down). For now, I am just getting another memory card and doing the same thing. If, in another 18 months, it fails again, then I will reconsider more expensive memory, but $47 for 18 months of use is not a bad trade-off.
So, if you are using a USB drive to do frequent backups (that’s you, Dad), you should be aware that the drive could fail, and have an alternate storage of that data. If you are backing up your QuickBook files to a USB flash drive, make another copy of that drive each time to another device, preferably a hard drive with better life. Or maybe an online backup like using Mozy, Windows Live Skydrive, or even just storing it in a Gmail account.
Labels: Windows Misc, Windows Vista
This blog entry describes how to configure VS2008, WMDC and Windows Mobile Device Emulator to call local web services running under VS debugging.
This was also useful as it fixed my perplexing problem trying to get Device Emulator to connect to WMDC so that I can install .Net CF 3.5. Specifically, making sure transport mode is DMA in WMDC, VS, and the device; and device emulator must be in Cradle mode.
Labels: .Net, Visual Studio, Windows Mobile
I will be needing this soon....
Add Blackberry support to Forms Server 2007 or Sharepoint 2007 - Andru's WebLog
Labels: Dev Misc, SharePoint
How to install Windows SharePoint Services 3.0 SP1 on Vista x64/x86 - The Bamboo Team Blog
I will have to give this a try. It would make developing for SharePoint much easier than having to install server OS in a VirtualPC instance.
Labels: Dev Misc, Windows Vista
Very cool add-in for Visual Studio, from:
Scott Hanselman's Computer Zen - Introducing RockScroll
The basic (as in "only") idea is that RockScroll extends the scrollbar in Visual Studio to show a syntax highlighted thumbnail view of your source. This is really useful for those excessively long source code files...
Labels: .Net, Visual Studio
Larry Larsen on Channel 10 posts about an neat free little app for remoting into Windows Mobile phone. Will do screenshots and video capture for documentation and training sessions, as well as making the screen larger for those of us that are a little older and more visually challenged.
Free Windows Mobile Remote Admin App | Larry Larsen | Channel 10
Labels: Windows Misc, Windows Mobile
Fixing Windows Vista, Part 2: Taming UAC | Ed Bott’s Microsoft Report | ZDNet.com
Useful article for getting around some of Vista UAC annoyances, but still keeping UAC in place (and why you want to keep UAC and not totally disable it).
Labels: Windows Vista
Do you archive your email to PST files (maybe due to a corporate policy limiting your mailbox size)? ...With Vista's built-in search option, you can specify that you want PSTs to be indexed (this is not turned on by default).
Labels: Windows Vista
Today, Microsoft announced that college students can download Visual Studio, SQL Server, Expression Blend, even Windows Server FOR FREE!
How would you like a free copy of Microsoft Visual Studio 2008? How about the entire Microsoft Expression Studio? Not enough...... how about Microsoft Windows Server 2003 and more?
For once, something that sounds too good to be true really is this good and really is true. Starting today (or soon in some areas), students worldwide will be able to download our professional development and design tools for free! It's called DreamSpark and it is upon us.
Wow. Why? From PressPass:
PressPass: What is the thinking behind Microsoft DreamSpark? And how did you come up with the name?
Wilson: Microsoft DreamSpark is a community-based program to provide students with free access to Microsoft’s industry-leading software development, gaming and design tools. Working with schools, governments, partners and student organizations worldwide, we will be making this available starting today in Belgium, China, Finland, France, Germany, Spain, Sweden, Switzerland, the United Kingdom and the United States. Other countries will come online over the next year, as well as expanding the program to include high school students. The program is open to all students at education institutions worldwide, though those studying science, technology, engineering and math disciplines (STEM-D) are expected to be the first to jump on it. All eligible students need is access to a computer with an internet connection to download the products, as well as free access keys at http://channel8.msdn.com.
We call it DreamSpark because every great technology breakthrough starts life as someone’s dream or idea. We want to make sure that students have the tools to spark their own dreams plus the power to turn them into reality.
PressPass: Why is Microsoft doing this?
Wilson: We believe students can do amazing things with technology if given access to the right tools. This is a way to make sure that they have what they need to test the boundaries of what today’s technology can do and also prepare for a great career at the same time. The added benefit to industry is that we’re addressing one of the toughest challenges confronting employers today: attracting and developing qualified IT professionals. We’re trying to help close this gap by giving students globally the opportunity to get the tools they’ll need after they graduate and jump-start their careers to land that first job.
Making sure there is a strong pipeline of technically skilled students is key to the future of the global economy. The ability to create new software and services will be an essential part of the skill set of the next generation of workers. Technology is one of the chief drivers pushing worldwide economic development and job creation. As well as giving students important exposure to the tools they can expect to use in the workplace, DreamSpark is about putting professional-level tools in the hands of students to amplify the impact of their studies and fire up their imaginations about the power of technology.
Labels: .Net, Dev Misc, SQL Server, Visual Studio
Well, I bit the bullet and installed Vista SP1 today. Overall, looks OK right now, but I did have a problem starting up the SP installation. SP1 would not install, saying I did not have valid language pack installed. I am certainly running English-US, setup for US settings, so I had a problem why this was saying I was not. Checking a few things, I saw that somehow I had Hebrew language also installed (not sure why or how, as I cannot read Hebrew). Once I uninstalled that language and restarted, then the SP1 install went flawless. I just started it and left it alone for a couple hours, so I'm not sure how long it really took.
I don't see much difference right now. I will post back if I notice anything.
Labels: Windows Vista
This article is an extensive comparison of the different editions of Visual Studio 2008.
This is a short clipping to demonstrate the article contents.
Or should I place my database files on SAN or directly-attached storage?
Labels: SQL Server
Microsoft announced that Windows Vista Service Pack 1 has concluded its beta testing and has been released to manufacturing. So, does that mean you can install it today? Nope.
Labels: Windows Vista
Scott Guthrie's blog announces "RTW (release to web) support for VS 2008 Web Deployment projects".
Web Deployment projects can be used with either the "ASP.NET Web Site" or "ASP.NET Web Application Project" options built-into VS 2008, and provide a few additional build, packaging and deployment options for you to use.
It also adds additional support for:
- Easily migrating VS 2005 Web Deployment Projects to VS 2008 Web Deployment Projects
- Replacing output only if web deployment builds succeed
- IIS7 Support
Labels: Visual Studio
Microsoft is excited to deliver a feature complete CTP during the Heroes Happen Here launch wave and a release candidate (RC) in Q2 calendar year 2008, with final Release to manufacturing (RTM) of SQL Server 2008 expected in Q3.
Labels: SQL Server
0) Multi-targetting
1) Type Inference
2) If Operator
3) Object Initializers
4) Nullable
5) LINQ to DataSet
6) Syntax Tooltips
7) XML Namespace support in Intellisense
8) GoTo Type Definition
9) Type inference for loop variables
10) Performance improvements and… Non-blocking operations!
Labels: Visual Studio
After you configure Internet Connection Sharing in Windows Vista, you may find that, although the network connection works correctly at first, the network connection stops working after one-to-two hours. For example, you may be unable to connect to the Internet, to other computers on the local area network (LAN), or to network resources on the LAN. .... This problem occurs because of a bug in the WinSock bind() function.
Labels: Windows Vista
Labels: Windows Vista
Labels: Visual Studio
Day of .NET in Ann Arbor is a one-day conference on all things .NET organized by developers for developers. This event is being offered at no cost to anyone interested in .NET development, and will take place on October 20, 2007 at Washtenaw Community College in Ann Arbor, MI.
Labels: .Net
Labels: SQL Server
It's great to see so many Silverlight-based widgets, samples, demos and applications appearing out there. I spent a happy hour this morning searching around the Internet for examples and samples, and thought I'd aggregate the fruits of my research below.
Labels: .Net, Silverlight
Labels: SQL Server
The first thing to note is that on SQL Server 2005, the performance degradation caused by procedure calls without owner qualification was less than 5% with 100 or more concurrent users, whereas on SQL Server 2000 the performance degradation with exactly the same test workload was between 15% and 26% with 100 or more concurrent users.
With procedure calls owner qualified, SQL Server 2005 showed 15~18% improvement over SQL Server 2000 under heavy load. With procedure calls not owner qualified, SQL Server 2005 improved transaction throughput by a whopping 35~55% under heavy load.
Labels: SQL Server
Labels: .Net, SQL Server, Visual Studio, Windows Misc
Labels: SQL Server
A question came up in last night VB.Net User Group about how to get the calling method when using a common exception handling method. I remembered I did it somewhere before, but could not even remember any part of it to look up at the time. So I post it here and will send it to Sam for posting to the SIG blog.
Basically, you instantiate a System.Diagnostics.StackTrace object with the StackTrace from the Exception object, then get the MethodName from that. Here is an example using a Console app:
Imports System.Diagnostics
Imports system.reflection
Module Module1
Sub Main()
Try
Throw New ApplicationException("HAHA")
Catch ex As Exception
ProcessException(ex)
End Try
End Sub
Sub ProcessException(ByVal ex As Exception)
Dim stackTrace As StackTrace = New StackTrace(ex)
Dim stackFrame As StackFrame = stackTrace.GetFrame(0)
Dim methodBase As MethodBase = stackFrame.GetMethod()
Console.WriteLine("Error in Method {0} ", methodBase.Name)
End Sub
End Module
Also, you can instantiate the StackTrace object without any arguments, and it loads the current method. You can then get the calling method (or the entire CallStack of methods) at any point in your code by walking through the StackFrames.
Imports System.Diagnostics
Imports system.reflection
Module Module1
Sub Main()
A()
End Sub
Sub A()
B()
End Sub
Sub B()
C()
End Sub
Sub C()
Dim stackTrace As StackTrace = New StackTrace()
Console.WriteLine("Called By Method {0} ", stackTrace.GetFrame(1).GetMethod().Name)
Console.WriteLine("Listing the Entire Stack Trace:")
For Each stackframe As StackFrame In stackTrace.GetFrames()
Console.WriteLine("Method {0} ", stackframe.GetMethod().Name)
Next
End Sub
End Module
Labels: .Net, Exceptions, SIG
...though, I can now take a bit of the wraps off. "VBx" is our current (subject to change) codename for the next major version of Visual Basic. (The "x" is supposed to signify the Roman numeral X, or 10, since the next major version of Visual Basic is going to be 10.0.
VB on Silverlight – In short, this means that you can now use Visual Basic as the code-behind for whiz-bang rich interactive applications that run on Windows or the Mac and can run in IE, Firefox, and Safari.
Labels: .Net