This articles was written as a reminder to myself about some of the great tools to use when switching from Mac to Windows.
More specifically when switching from OS X 10.9 "Mavericks" to Windows 8.1 "What 8.0 Should Have Been". (Just kidding about the codename for 8.1 in case you really think that's it.) I've, historically, operated Windows via Parallels, but since I play games I chose to install it via Bootcamp so it has access to
my MacBook Pro's complete hardware. Nowdays I've switched completely to a Razer Blade Pro (2014).
If you're running Windows on your Mac:
You can download a free, and legal, 90 day trial version of
Windows 8.1 Enterprise directly from Microsoft. Download and install the
Apple Bootcamp Drivers for Windows 8.1 immediately after Windows installs, and before you do anything else. If you're
not on a Mac and your mouse doesn't have scrolling then you can install the Magic Mouse Drivers, only (opposed to all of the Bootcamp drivers) using this standalone Driver.
I don't recommend installing the Utility though, you'll see why in the next segment.
How to remove the Windows Build number from the bottom right of the desktop.
Download this, and install it. Works swiftly and instantly and without reboot.
Touch Screen, Track Pad and Mouse Settings & Configuration
As subtle as it may be; the experience you have with your touch screen, track pad and mouse all have a persistent impact on your productivity. Apple has mastered this and Windows is limping into the modern experience but it's getting close. Here are my tips for what to expect and how to make this critical part of the transition as seamless as possible.
Mouse ( Except Magic Mouse)
Smooth Scrolling Yes
Reverse Scrolling / Natural Scrolling Yes
does support Gestures but not with the Apple Magic Mouse. As explained by the leading software developer for Mac-like features on Windows this is because the software on the Apple Magic Mouse itself doesn't not translate to Windows - and, presumably, never will. But there are several
Logitech Mice & Trackpads and some officiall Microsoft Mice and Trackpads that do.
Smooth Scrolling with Magic Mouse
Razer, a gaming computer electronics manufacturer, developed software called Razer Synapse 2.0 that introduces reverse scrolling for your track pad (among other things). But, unfortunately, there is still no support for momentum, smooth scrolling or gestures for the trackpad or mouse. This ball, however, belongs in Windows court since they have developed all of that technology for their touch screens.
Chrome Extension - Chromium Wheel Smooth Scroller - In Chrome only it bring smooth scrolling, momentum, acceleration and bouncing to the trackpad and mouse. Note: http://trackpad.powerplan7.com/
I've yet to find something that provides true Apple-like smooth scrolling but you can decrease the pointer speed and scroll speed to improve the usability of the Magic Mouse. Though the main problem, that I've identified, is the
momentum of the Magic Mouse. That acceleration value is what seems to be uneditable presently. If you're using the Chrome browser you can enable the experimental smooth scrolling feature by creating a new window/tab and typing: chome://flags and hitting return/enter. Then scan the page for "smooth" and you'll find the setting which will require your browser to restart upon selecting the save button in the lower left.
Reverse Scrolling / Natural Scrolling with Magic Mouse
In Windows 10 this feature will be introduced.
WizMouse is what I ended up using. One subtle benefit that this adds is that it will allow you to scroll windows underneath your pointer instead of being required to click on them. This doesn't seem to work on some application windows though. Namely Windows 8 apps.
Auto Hot Key Reverse Scrolling Script - If you have difficulty with WizMouse, like I did at a later date, then you can use this AutoHotKey script to get reverse scrolling. Personally I think this is much healthier approach than installing software on the computer for this functionality. The third party app Magic Mouse Utilities seemed like the right solution, but admits a bug that prevents Natural Scrolling from actually working in some configurations (in this case mine is included).
One of the things that really annoys me with Windows is that the vertical two finger scrolling is too sensitive to horizontal movement. This causes the vertical scrolling to appear to stop because it thinks the fingers are moving horinzontall on purpose. But it's actually because the hands are at a natural angle opposed to a completely vertical motion. I don't know of any solution for this though.
Hover scrolling - By default Windows 8 or earlier does not have hover scrolling. This is when you move your mouse over a window, without clicking it, and it scrolls.
Windows 10 has this feature (I tested it myself).
AlwaysMouseWheel brings this feature to Windows. No installation required, just download the .exe file and place it anywhere (I recommend your Program Files directory as that's the proper location for applications).
Keyboard Remapping & Hotkey Control for Windows 8 - What I found about this is that remapping is typically controlled by a separate utility than hotkeys or shortcut keystrokes.
Tucows Keyboard Remapper tries to install a junk toolbar and hides it in the fine print. I don't trust them so I didn't install the application. Because of this I'm not even going to link to it but I wanted to mention it so you don't waste your time. Official
Microsoft Windows Keyboard Layout Creator. Requires .NET to be . However the keyboard didn't match mine and I couldn't locate a setting to change it. Beside that; I didn't actually see any remapping options. enabled
SharpKeys (simplest to use), KeyTweak & MapKeyboard are all parallel to each other but not support multi-key (hotkey) remapping.
Here's how I have mined remapped to simulate the Mac keyboard mapping:
Windows Key mapped to Alt Key
Alt Key mapped to Windows Key
Ctril mapped to Function
Function mapped to Ctrl
This can be accomplished natively through Windows 8.1 (not tested in previous version) according to
this official Microsoft article.
KeyMapper is great except, except I prefer Sharpkeys and it doesn't provide hot key remapping.
AutoHotKey had a great, and straight forward website, perfectly simple installer, great documentation but I have to basically learn to write some sort of code to do it. As a programmer, I am comfortable with code, but sometimes it's just pointless when I can rely on a GUI to do it for me. I don't need something ELSE to troubleshoot.
use this script if you have a Mac Keyboard (such as a wireless keyboard) that you want mapped). And you can use this script - I made - if you have a Razer Blade laptop that you want Mac-like hot keys and key mapping for.
this article only works on the Surface.
HotkeyControl is unusual because I can only remap some keys and there's actually not utility to change hot keys unless you want to assign them to a Macro.
Mission Control, Expose & Spaces for Windows
Windows 10 (download the free Technical Preview here) introduces an alternative to Mission Control that, unlike the Windows 8 App Switcher, which appears on the left of your screen when swiping from the left or pressing Windows Key + Tab, it displays all open applications and not just Windows "Apps" - AKA only things downloaded from their store. Existing Native Solution: Press Windows Key (Command) Tab and a menu will appear on the left
only if you have multiple apps open. Alternative Complete Solution - I recommend
Emcee which brings the identical experience of Mission Control to Windows. I have a
Magic Mouse, but it's too sensitive for game play. Swiping accidentally will switch weapons in games like Planetside 2, or zoom in games like Company of Heroes 2.
CLCL - This is what the ClipMenu for Mac was inspired by. I felt very at home with this. It provides nearly unlimited clipboard history, and copy and paste of common text blocks you use. Absolutely indispensable. Press alt/option + c to display the menu item. Open Preferences to create Templates.
Windows Alternatives to Mac Applications
For Website Development
MySQL Workbench - Though I haven't done much research. I came from Sequel Pro and would really like something more comparable. Then again I try to do everything from the web, like PHPMyAdmin, but sometimes that's just not possible. IDE & FTP/SFTP Client
Notepad++ + - NPPT
- This is the only reliable platform I've found for editing files remotely.
Only supports FTP. NO SFTP support. Now they support SFTP when you create a Workspace and choose File > Mount FTP or SFTP Server. It saves this information in the File Browser on the left so the next time you come back it auto restores.
and isn't completely ugly and inconsistent in it's UI/UX. Plus it's cross platform thanks to Creative Cloud. I no longer recommend this because the remote file browser doesn't let you edit or modify files and folders directly on the server. - I know... But it's the only one that has a built-in remote file browser Dreamweaver
- I no longer recommend this after a terrible experience with their support staff and no-commitment to operation critical patches. CodeAnywhere Cloud IDE
- Sublime + WebDrive ($11) or ExpanDrive ($50) Unfortunately with both ExpanDrive and WebDrive I experienced caching delay and intermittent disconnecting from the server. It's also very slow (200 milliseconds or less would be fast in my opinion) for loading folders and files. Yeah, yeah, I know you'd say "I could have told you to use Sublime from the start." But Sublime doesn't have a built in SFTP sidebar and since I frequently have to edit files on the server it renders Sublime almost completely useless to me when contrasting to IDE's that have a sidebar built into them like Coda for Mac and CodeAnywhere. But when you pair Sublime with WebDrive, an application that mounts remote servers as a network drive, the problem is solved.
SFTP Sidebar by WPBond - Doesn't do what it leads you to believe it does. Which is display the server in the sidebar. Says he plans to do that.
- I'm testing this now (as of 5/26/15). Looks promising but the only SFTP Plugin isn't a sidebar one either (just like Sublime). Atom by Github
- ExpanDrive Unfortunately This is a quality application, easy to configure. But it has an issue that prevents the file structure from updating or staying in sync. Especially when used with Sublime. It's like Sublime can't tell ExpanDrive to check the server. But the authors of ExpanDrive swear it works perfectly. I contacted their support and they replied back in like an hour. So I'm going to continue working with them to try and narrow down and resolve the issue because I like their website better (seriously, it indicates to me they care about the GUI of their application IMO).
WinMerge as an alternative to FileMerge.
Metro Putty - An SSH Client for Windows
This is a fork of Putty that was built using the Windows Metro style and features. So far it works great. And with Windows 10 it's pretty much a perfect combination of Terminal from Mac and the added functionality of being able to save your connections.
At first, I was displeased with Putty because it displays all of the menu items in the left sidebar instead of in the top tool bar. And there was no location to specify a username or password to use when connecting. But I found it was more of an issue with my perspective then a lack of functionality or something.
Tags: best ssh client for windows, bash client for windows, terminal for windows
The items below apply to Metro Putty and Putty (Original)
How to Save a Connection in Putty
Navigate to Session
Then enter a Host Name in the "Host Name" input.
Enter a name for the connection in the "Saved Sessions" input box.
Then select Save.
Tags: How to save a session in Putty
How to Specify a Username in Putty Profile
Navigate to Session
Load the Session you want to associate the username with.
Enter the username@hostname in the "Host Name" input. Ex. "
[email protected]" Select "Save".
Alternatively, there is a great series of settings to specify a global username when a usernames isn't specified in Connection > Data > "Auto-login username" or "Use system username". The latter uses the username that is associated with your Windows account - assuming that is the same username as the server you're connecting to.
Tags: How to save a username in Putty, putty how to save username
How to Specify a Password in Putty Profile
Sorry to do this to you, but, to the best of my knowledge, Putty does not allow you to specify a password from the settings.
That's not to say I don't have a solution, but it's important to know so you don't spin your wheels hunting like I did. From a security standpoint it's actually best practice to use SSH Keys (as you may already know). On top of it being more secure it's also more efficient because, once you have SSH keys setup, you no longer have to enter a password when connecting anyway!
To learn how to setup SSH keys (AKA auto-login, passwordless login, etc...) I recommend this tutorial by Digital Ocean »
Tags: Command Prompt, Command Line, Terminal for Windows, SSH Client, Bash Client
How to copy and paste in Putty using Ctrl + V
By default Putty does not do anything when pressing ctrl + v. Apart from the fact this is completely stupid and utterly ridiculous, you can right click to paste.
SFTP / FTP Client for Windows
Unlike newer versions of Mac OS X; Windows still maintains native support to connect to remote servers via it's Explorer > Computer > Add Network Location.
While it supports FTP, it does not - natively - support SFTP. To achieve this I discovered
Swish, which adds SFTP support to Windows Explorer.
If you've been developing long enough to have tried Max OS X's native CMD + K feature and connected to a remote server then you know that it was pretty slow at times. Thankfully, Windows does not experience this issue.
By using this method, it also makes
Sublime Text 3 the IDE (code editor) of choice for Windows.
Tags: map network drive, sftp for windows, ftp for windows, windows connect to remote server, windows 8.1 map remote drive
IDE Client for Windows
While I still believe cloud IDE's are the future;
I've written this article explaining some of the details being overlooked in some of the leading platforms that make it feel like pulling teeth to perform common tasks.
Summary of Web Development Applications for Windows
All in all, Windows simply doesn't appear to have a consistent and intuitive user experience for development applications. The closest you'll find is Visual Studio - which supports FTP but not SFTP. It's very disappointing and, frankly, surprisingly since it's the most widely used desktop OS. I'm considering switching back, but Apple has it's own nuances that annoy me. More on that another time.
The following are confirmed bugs that were acute to my system but may appear on others.
Bluetooth mouse (Apple Magic Mouse in my case) temporarily disconnects / randomly disconnects. Solution is to open Device Manager > Bluetooth and right click the Bluetooth drive (will vary from system to system) and select Uninstall. Then be sure to select the option to completely delete the drivers. Then reboot and it will install the default Windows driver.
The bar that is along the bottom of the screen gets stuck sometimes when it's set to auto-hide (it gets stuck up, NOT hiding).
Overview of Lame Things About Windows
MySQL WorkBench seems to be the best alternative to Sequel Pro. The only thing I'm really dissatisfied with about this is that they have a panel on the right side that is more or less just advertisements that aren't relevant to me and cannot be collapsed. It's just visual clutter in a place I need visual focus.
Apple Magic Mouse over Bluetooth Disconnects Several of the things that absolutely fucking sucks and is idiotic about Windows are:
They have Settings and Control Panel. They're basically the same except Settings is crippled. What's confusing is their names for so many things are similar. It's a complete and total waste of time.
Learn More » Additionally, the Bluetooth section sometimes doesn't appear in Search or Settings or Control Panel! WTF!?!?
Furthermore sometimes you can't remove Bluetooth devices (Apple Magic Mouse and Apple Keyboard).
Sometimes, when a window is full screen, I can't access the menu bar along the bottom.
Overview of Great Things About Windows Compared to Mac
Window Switching - Unlike Mac, when you press Ctrl + Tab (Mac CMD + Tab) Windows displays the open windows instead of just the parent application. This is great for situations like Chrome and it's Apps which are technically apart of the Chrome instance but are intended to be used somewhat independently.