Yay, flamewar-by-blog

In order to address Faux’s response to my previous post, I’ve decided to write this post;

Besides the fact that the (vast) majority will never need or want to compile anything, the top four linux distros (according to DistroWatch), as far as I know, don’t come with a compiler in the default install. That’s hardly “(almost) every”.

This is true, the majority of Windows users will never need or want to compile anything. Linux, dispite a lot of recent progress to entice desktop users, is still pretty much solely used by developers and hobbyist who have to compile things, hence the ready availablity and easy-of-use of the standard development tools on the platform.

According to distrowatch, Faux’s own source, all of the top four distros ship gcc (the defacto Linux standard compiler) with all of their releases. I do not have the time or inclination to install each one to find out if it is in the default package selection, and even if not it’s still a single tick-box away and can be installed from the installation media rather than a large download away.

I have to goto the website of each of the libraries I need…

Not for any of the libraries that are included with Visual Studio, such as the list of them in the Platform SDK (all 198 of them), and the optional library packs such as the DirectX SDK.

What you mean here is that the maintainers of many libraries that are freely avaliable on the internet are not catering fully for those of us developing on platforms that aren’t UNIX-like, and aren’t using gcc and bash?

Have you tried navigating Microsoft’s webiste? You providing direct links to the relivent pages and saying it’s easy is all well and good, but it took 3 searches and 20 minutes following various links to find a download page for Visual Studio Express Edition.

Additionally, once downloaded and installed I still have to add the library paths for DirectX’s libraries to the search paths for any project requiring them.

I do, however agree that there are many free libraries which are not adequately supported on Windows and other non-GNU-Make/gcc/… systems. Perhaps this is because it’s so damn hard to get the Windows development tools to actually behave and compile them before you even start thinking about fixing the platform-specific code problems.

Windows ships with many productivity tools, most of which cause incredible levels of complaint from people from a UNIX background, and/or work so well that they aren’t noticed. The whole network configuration system (including dhcp/ppp/firewall/auto-time-sync/wireless/SNMP/UPNP/SMB/WNB/..), for instance. Do any linux distributions have this level of utility in the base install? I’d guess that, for a binary system (which those 4 linux distros mentioned were), networking is slightly more important than a compiler?

Windows, however, doesn’t include a complete office suite (for free!). I know it’s a classic pro-Linux argument, but it’s valid. As for the whole network configuration system, I’m yet to meet a Linux distribution which doesn’t just work on a properly configured DHCP network. In fact, Window’s DHCP client doesn’t actually comply with the specification which means users have to use command-line tools to get a DHCP lease when moving to a new network before the lease on the old network times out.

A number of the top distributions ship with complete firewalls and all will work with compatible wireless network cards (any argument about lack of hardware compatibility is null-and-void since the lack of Linux support is due to the hardware manufactures not supporting it and refusing to release the hardware specification for the Linux community to write drivers).

Windows has this wonderful thing known as a standard (unless, say, the application was built against something vile such as QT or Mozilla’s engine) with respect to the menu being drawn, such that you know that all of the menu items should be accessible through a “chord” of alt+a series of other characters. Applications tend to follow sequences, too, like Alt->f->s for File-Save. Does that count as using the menu, or as hotkey? I’d vote for hotkey.

I like the ‘should be’ in there. As far as I can tell (I may be wrong) this ‘standard’ is a defacto standard and applications do not have to comply if they do not want to. The fact that the character which activates a menu is programmatically assigned by the developer means it could be anything. Sure, most people use ‘F’ for file, but as a developer there is nothing to stop me using ‘F’ for format. Once you know the sequences, you will be able to rapidly access the features you use often in the application. The same can be said of VIM, although the learning curve is considerably steaper (yes it has tab-complete on commands, but the are no nice menus which Windows users seem to like searching through).

I’d recommended TextPad, it’s really great once you switch it to Windows-compatiable hotkeys mode. ;)

Personally, when forced to use Windows for development (e.g. at work before I started taking my laptop in, in order to save my sanity) I used to use Crimson Editor. Unfortunately this is now a bit out of date, and have not been update recently so I’ve switched over to using PSPad. Unlike TextPad it’s freeware. I hope you’ve paid £16.50 for your copy of TextPad, Faux.

One thought on “Yay, flamewar-by-blog”

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>