Hacker News new | ask | show | jobs
by brandon_wirtz 4802 days ago
I am the lone Windows user in my office. I could use a post on how to go from Mac Development to Windows. Only half kidding.

I don't want to make this a Win vs. Mac thread, but I think it is important for both sides to understand there are things that are good about each.

The Mac guys get a closer to Linux environment, which makes much of the stuff that is happening on Web servers behave more closely in dev to the way they do in production.

Windows has a long history of dev tools, so there are some really great Large File (>4 GB) editors, memory inspectors, inspection proxies (Fiddler for example) which make my Mac devs jealous from time to time.

But I am routinely jealous of how easy it was when I was on a Mac to do installs of Libraries using Yum and such. Plus since we are a mostly Python Shop that is quite a bit easier on a Mac.

I am a long time user of Visual Studio, but there are a lot of great IDE's now so you do have choices, and because many of those are Multiplatform you do have more choice, even if your team mates don't share that choice. (Sublime, Pycharm, Eclipse)

7 comments

For anyone looking at Fiddler since it was mentioned, mitmproxy is a great alternative for Linux and Macs:

http://mitmproxy.org/ https://news.ycombinator.com/item?id=3556688

Vagrant and Virtualbox made me rethink about issues of developping webapp on Windows. I mostly do Windows dev and sometimes I also do some webdev, so I can't switch everything to MacOS or Linux.

I'm just starting to use Vagrant, and I think that it's an awesome solution. Vagrant allows to manage headless virtual machine (VM without UI ). I have a headless VirtualBox right now and it uses 48Mo. I could easily run tens of them.

You can share folders with the host and serve files from the virtual machine in a completly prod like environnement. You can also isolate projects in separated machines. For those who think that a unix box is closer to prod think of how many conflicts you can have with tons of libs installed on the same laptop : python, ruby, php, node.js, mysql, mongodb, etc... It is really different from a prod machine anyway. And Virtualbox works better (faster ) on Windows because the shared folder implementation of VirtualBox is better on Windows ;).

I'm not sure how it will turn out for me as I'm not very far in this process, but it seems to be awesome for the moment.

The one thing that I absolutely cannot stand about my OS X workflow is that to this day, I still have not found a good hex editor. On Windows I used HxD, but there's nothing that really fits the bill. That, IDA Pro (I don't have an OS X license and from what I hear the OS X version isn't too spectacular anyways), and Visual Studio are what make me occasionally boot into Windows.
HexFiend[1] doesn't do the trick? (I have only occasionally need for a hex editor, but it serves well when the need arises.)

[1] http://ridiculousfish.com/hexfiend/

I believe I tried it once, but the UI wasn't very appealing to me. The key features I'm looking for are: fixed width of 16 bytes, clean interface, process inspecting (not sure how easy that is to do to be honest) and raw disk access.
You might want to try 010 Editor: http://www.sweetscape.com/010editor/ It runs on OSX, Windows and Linux.
Does it run on Linux? There doesn't seem to be any mention of that on the downloads page.
No, it doesn't. My mistake.
"I am the lone Windows user in my office. I could use a post on how to go from Mac Development to Windows. Only half kidding."

Here are some tips I wrote up on "How to Turn Your Windows Machine into Unix": http://www.patfitzsimmons.com/2011/05/how-to-turn-your-windo...

#sweet!!!! Wish you had shared this 8 years ago tho. lol Thanks
There's Charles proxy, seems as good as Fiddler although I'm not a power user. http://www.charlesproxy.com/ For dev tools I use PHP Storm, IntelliJ IDEA and Emacs for everything else http://emacsformacosx.com/
Charles isn't free though. Though Telerik will probably screw up Fiddler somehow. For web app HTTP or REST stuff, most browsers do this today too (natively or with plugins, so I need Fiddler/Charles less and less.
my thoughts exactly.. most of the traffic i care about i can already monitor with chrome's network tab.
Am I the only one who doesn't see the advantages of doing web development on a Mac instead of on Windows? If you're going to be running the site on a Linux server, why not just do development on a Linux server too? You can easily do this with a Windows laptop, by just mounting a Samba share or using SSH.
Almost all of my development work is via SSH to a Linux box. I still use a Mac though, because it comes with a gorgeous 256-color terminal, with the Unix shells and enough of a local Unix environment that I can just type "ssh my-linux-box" and it works. You could get something similar running on Windows, but it would feel weirdly shitty and alien.
I don't think it's "weirdly shitty and alien" at all. That is just a widespread perception that people have because they think having a UNIX-like system on their local machine somehow influences their ability to develop remotely on a UNIX-like machine. Once you've tried it, it doesn't feel strange at all.
nonsense. Cygwin is a dog. It looks horrid, it often breaks the unix abstraction with fugly windows paths and.idioms and weird issues when using libraries that have native ports. Yuck
Strawman. Did I ever mention Cygwin? If you really are a grad student, I hope you improve your reading comprehension, because I clearly stated in my first post that you don't have to run anything locally in order to do web development with Windows.
i wasn't responding to your first post. I was responding to your subsequent comment that says a local unix-like nvironment on windows is not shitty and alien. Cygwin is exactly such an environment and the best of its ilk. I claim Cygwin is shitty and alien.
So what do you use? PuTTY?
The major one: a really decent free SSH client is built into every Mac.

You must download (featured but inelegant) PuTTY in order to do this on Windows.

Also, until somewhat recently (Win7), the lack of symlinks (junctions) caused all sorts of problems when pulling down a source tree locally for editing if it contained symbolic links.

Other than that, I agree.

Just to note for existing Vista users, junctions are in Vista and junction points are even in XP (from Windows 2000).
The problem isn't the OS, it's software like SVN that didn't support junctions until much later than junctions were introduced into Vista (and backported to XP).

And then projects need to use the latest versions of those software in order to benefit... and that's assuming the feature support is stable.

As late as 2009, our windows project devs (at my old company) were at a disadvantage to OSX, Linux users.

@brandon_wirtz: I totally agree with you.. there goods and bads to both environments. I genuinely enjoyed my time on windows and always found a way, tool or trick to get the job done. Thanks!