Posts

Install and Setup Windows 10 for a Developer

Image
I have been writing code on the Microsoft Stack for around 10 years and have set up quite a few developer machines over the years. Starting with Windows XP, Visual Studio 2003, and SQL Server 2000, and on every version of Windows, VS, .NET, and SQL Server since. If there is a quirk with installing dev tools, I've likely run into it. I recently upgraded my primary dev machine to Windows 10, Visual Studio Enterprise 2015, and SQL Server 2014, and decided to capture the steps in this blog so I could point other people to it. Notice: Obviously, these are my preferences, and may not work for your situation. I am writing this post after running this setup for about a week* (edit: about 6 months now and still good). I will update this post as I continue to work with Windows 10. Objective From scratch, set up a developer machine with the following: 1. Windows 10 Pro 2. SQL Server 2014 Developer Edition 3. Visual Studio 2015 Enterprise Edition 4. Other dev tools (git, Sublime Tex

Import-Module The specified module OneGet was not loaded because no valid module file was found in any module directory

Windows 10, PowerShell, OneGet, PackageManagement, Chocolatey You may have tried the command: Import-Module -Name OneGet And received this message: Import-Module : The specified module 'OneGet' was not loaded because no valid module file was found in any module directory. But that's okay, because OneGet was renamed to PackageManagement. So just run this instead: Import-Module -Name PackageManagement And really, you probably don't even need to run that command at all. Sources: http://www.fixedbyvonnie.com/2014/11/5-minute-setup-using-oneget-chocolatey-windows-10/   http://blogs.technet.com/b/packagemanagement/archive/2015/05/05/10-things-about-oneget-that-are-completely-different-than-you-think.aspx

AutoHotKey Mac Keyboard on Windows 8

Image
I've been doing a lot of work on site recently on a MacBook Pro, and, although I resisted at first, I've grown very fond of the Mac keyboard experience (although this could be attributed to Stockholm Syndrome). At home however I still use my Dell Windows Desktop for most of my Windows/.NET development. However, to keep the keyboard experience similar between my MacBook and my Windows Desktop, I bought a Mac Keyboard with Numpad for my Desktop (because customizing a MacBook keyboard to function like Windows is more difficult/impossible, luckily the other way around is not too difficult). I then needed to modify the default behaviors slightly to better simulate the Mac keyboard experience on Windows. The main differences are with the cmd+`key` functions vs ctrl+`key` and the location of the numpad operators. I used autohotkey to customize the default behavior and it works pretty well. Instructions on how to do this are below. Setup Steps: You'll need to install autohotke

Mac Disable Turn Off Startup Sound Boot Chime

Image
I wanted to turn off my mac's startup sound but could not find any built in way through settings to do so. I could not find a definitive solution for this, there is some disagreement on how it should be done. The only "officially supported" way to achieve this is to have the computer sound be set to "mute" before it is shut down. If the computer is muted at the time of shutdown, it will not play the startup sound on the next startup. Option 1 Hold down the mute key before pressing the power button and continue to press the mute key through the time the startup sound would normally be heard. This will prevent the sound from being played even if the computer was not set to mute on last shutdown. Option 2 Create a script to mute the machine on every shutdown. There was some disagreement on whether this was a good solution as support for startup/shutdown scripts could be deprecated in the future. We'll use the com.apple.loginwindow LogoutHook  to c

SalesForce Order Contract Number Not Required Field

Image
In SalesForce, to make the "Contract Number" field of the "Order" object not a required field. Go to Setup > Build > Customize > Orders > Page Layout Click the properties wrench next to the Contract Number field: Uncheck the Required checkbox: That's it.  Not very intuitive, but easy enough to change. Hope this helps, Aaron Hoffman

Google Analytics Scheduled Emails Not Working

Image
When using Google Analytics it is very helpful to send daily and weekly reports. Google Analytics has the ability to schedule these reports to be emailed , but like many other people (see here: https://productforums.google.com/forum/#!topic/analytics/1JqNpbSDYac ) I was having an issue getting these reports to actually send. Some of them were working and others were not.  Ultimately I was able to determine that the reports that were not working were being sent to someone other than myself. I was able to resolve the issue by only sending reports to myself, then setting up a forward rule in my email to forward the reports to the appropriate people. Annoying, yes, but it works. However this way you do get the added benefit of tracking that they are in fact sent, and you can reference the email later and get replies directly from the email. These emails/reports still seem to be actually sent/generated at random times throughout the day (my last 5 days: 4pm, 1pm, 2pm, 8pm, 7pm),

SalesForce API Tutorial .NET DeveloperForce.Force NuGet Package

Image
Below is a guide to getting started with the SalesForce API using the .NET DeveloperForce.Force NuGet package. (GitHub Source to supplement this blog post:  https://github.com/aaronhoffman/SalesForceApiTutorial ) (SalesForce API documentation:  http://www.salesforce.com/us/developer/docs/api/ ) (GitHub Repo:  https://github.com/developerforce/Force.com-Toolkit-for-NET ) Steps: 1. Make sure the API is turned on for your Organization. The API must be activated as part of your license. You'll have to pay for API access per seat (for every user) even if you'll only have one integration. I was told by one SalesForce rep that you can check on the status of this feature on the Setup > Company Profile > Company Information page under the Feature Licenses section, but the API is currently enabled for my organization and I see nothing there... so I can't confirm this.  Ultimately, I had to open a support ticket to get it turned on and working for my organization.