7 ms·
Is it my imagination or is Marco the king of writing blog posts that are quick reactions to whatever is trending on HN? The message you should get from this po
by cletus 14y ago
Is it my imagination or is Marco the king of writing blog posts that are quick reactions to whatever is trending on HN?
The message you should get from this post is that familiarity with one's tools easily trumps any aesthetic flaws (consistency in parameter ordering, naming conventions, etc are really nothing more than aesthetic flaws and not "deep" [1] as the author suggests. After all, human language is inconsistent. After awhile you just get used to it and don't think about it anymore. Programming languages are no different.
I agree with Marco that it will take "years to master" whatever he chooses next. I always scratch my head at these "I learnt Python in a day" claims you often see around here. No, you didn't learn Python in a day. You learnt the syntax for a for loop in a day. Idiomatic Python takes much longer.
I don't agree that choice is the reason people don't use Linux on the desktop. Desktop Linux is the reason people don't use Linux on the desktop. I'm sorry but it's truly awful and probably won't ever get better. In the absence of product direction you have us geeks making everything configurable because, you never know, you may want to write your own window manager (and knowing us geeks, no two will agree on what's right) so you have no consistency, no grand UI/UX design and it's just terrible.
I use Linux/Ubuntu at work basically because I have to. There are advantages on having your dev environment mirror your production environment and Linux (over OSX) does actually have a package system (it's a messy hack on OSX) but I certainly don't like it.
The only computers I use that I truly enjoy using are my iPad and my Macbook Air.
Fear of the wrong choice isn't I believe what motivates most people. Fear of looking like an idiot? Sure. But that's different and will probably be the case with anything new.
People don't tend to weight up two or more options, decide which is best and go with it. They tend to use the first thing they come across until its flaws (perceived or actual) outweigh the "cost" of transition and appearing like an idiot for awhile.
[1]: http://me.veekun.com/blog/2012/04/09/php-a-fractal-of-bad-design/ http://me.veekun.com/blog/2012/04/09/php-a-fractal-of-bad-de...
- smokeyj 14y ago> Linux (over OSX) does actually have a package system I found running a VM on my mac to be the best of both worlds. Plus you can backup and distribute your VM so the entire team develops on the same setup.
- fideloper 14y ago+1 !!!
- larrywright 14y agoAgreed, though I would suggest using Chef + Vagrant rather than using a "master image" approach. It's much more maintainable in the long run.
- benihana 14y ago>I use Linux/Ubuntu at work basically because I have to. There are advantages on having your dev environment mirror your production environment and Linux (over OSX) does actually have a package system (it's a messy hack on OSX) but I certainly don't like it. I'm very surprised that Google doesn't provide some kind of consistent dev VM environment that is similar to prod that developers can SSH into.
- antihero 14y agoDesktop Linux is actually fucking fantastic if you are prepared to take up messing around with it as a hobby. It requires commitment, time, and and open mind, but fuck, I've just sorted out xmonad, I have my dotfiles syncing via git, and it's bloody amazing. Package management is bliss, and both pacman and apt shit all over homebrew (great as homebrew is), it's absurdly fast even on old hardware, it's free, it's got all the compilation tools, headers, and libraries I could need either already installed or a few keystrokes away. Not to mention the fact that it's beautiful: http://files.0xf.nl/screenshots/screenshot-2012-06-27.19%3a41%3a35.png http://files.0xf.nl/screenshots/screenshot-2012-06-27.19%3a4... Linux can be really, really awesome, if you're prepared to spend time making your work environment great. Lastly, all this time is not wasted, you end up learning so much stuff that you can apply to every where else - because of my linux knowledge I often find myself helping out my friends who use OSX but don't understand things like headers and libraries.
- flatline3 14y agoSpending a bunch of time to make my environment work great (and keep it working great) is the opposite of what I'd consider "fantastic". This is why I dropped Linux/BSD on the desktop over a decade ago, and switched to something I don't have to think about, and instead I can simply use to get my actual job done.
- tikhonj 14y agoIn my experience, I have three choices: I can have a poor Linux environment with no work, a better but still mediocre Windows/OS X environment with little work or a good Linux environment with a bit of work. The reason I don't use Windows or OS X any more (and I've used both extensively in the past) is simple: sure, both are easier to set up (with a new computer, there is no set up). But both are strictly less productive than a good Linux setup is. The reasoning is simple: setting up a computer is a basically an O(1) operation. Sure the constant may be high, but it's just that: a constant. On the other hand, the drain on productivity of using OS X or Windows is in O(n) where n is how much programming I do. And, happily, I do a lot of programming. So I've never understood the rather condescending argument of simply getting your actual job done. People using Linux aren't all shortsighted or masochists! We use it because we want to get real work done faster.
- drivebyacct2 14y ago>Desktop Linux is the reason people don't use Linux on the desktop. I'm sorry but it's truly awful and probably won't ever get better. In the absence of product direction you have us geeks making everything configurable Have you tried Unity or G-S lately? I'm not as willing to argue G-S has as clear a direction as Unity, but they both ship with a very limited amount of configurability and they're both insanely easy to start using even without background knowledge.
- fromhet 14y agoThis is true. Anecdote: I've used Ubuntu for a long time, but due to some nonfree applications dependence on mac/win I've gotten myself a apple laptop. It's mostly the same, I use a browser, terminal, vim and a thousand silly apps but they are about the same amount of config-time. The biggest difference is that Ubuntu ships with APT and a lot of tools that are good for a hacker, but it's not to hard to get equivalents on osx. Summary: Mac OS and Ubuntu are more on par in ease to use than I could have believed before I tried.
- deleted 14y ago[deleted]
- mmackh 14y ago>Is it my imagination or is Marco the king of writing blog posts that are quick reactions to whatever is trending on HN? From the impression I get of Marco whilst listening to his Build and Analyze podcast, is that he does have a lot to say about the technical aspects of his work. However when he does, it is often written/spoken out as a response to a question. The constant talk about PHP in recent weeks has probably triggered something he's been thinking about for years.
- pbiggar 14y ago> Linux (over OSX) does actually have a package system (it's a messy hack on OSX) I wonder if you've tried homebrew? It's really really good, esp compared to the horrors of MacPorts.
- jaequery 14y agophp is great for what it does. ruby is great for what it does. python is great for what it does. at the end, it's all about preference. someone who has mastered in PHP will no doubt be a lot more proficient in developing apps than a junior/intermediate python or ruby developer. same can be said for reverse. it really all comes down to knowledge and experience.
- fideloper 14y agoI personally love having Mac OSx and Ubuntu Server running in a VM. Best of both worlds, IMO. I don't have to mess up my Mac install, and I can dev in a "real" linux environment.
- beefsack 14y agoI'm actually quite the opposite, I've been a long time Linux user (Fedora, Ubuntu, Debian, and more recently Arch) and recently I decided to dive head first into OSX for work and play. OSX is beautiful, it's smooth, and it can run a lot of my games too. But, just like Windows, it lacks functionality. Setting up a MAMP server with my required PHP extensions for work was an absolute nightmare even with Homebrew. Even when working with my Ruby projects I was struggling, when some gems required certain libraries to be installed, it was a nightmare to install them too. Not to mention installing software and keeping it up to date was a pain too. Once you become used to relying on robust package managers it's very difficult to turn back. Linux is designed to be powerful and functional foremost, and that's what makes it fantastic.
- peterhost 14y agoKeep homebrew for standalone tools (recode, sntop, whatever). Then use rpm for ruby, perlbrew for perl, pythonbrew for ... And setup the defaut macosX apache (which has php5.3 and pear and whatever already here) work for your user account. See : http://echodittolabs.org/blog/2011/09/os-x-107-lion-development-native-apache-php-homebrew-mysql-or-mariadb http://echodittolabs.org/blog/2011/09/os-x-107-lion-developm... Same on any nix system I use : sandboxing is the way. - Want to use hg-git for mercurial, dont, homebrew that !! Build it in your ~/bin/ or in your $HOME sandbox, give all PATHS in your $HOME precedence, and rejoice. - need mysql, postgre,... Don't homebrew that !! Either build it, or use the Macos dedicated installer with propper service installation, on dedicated port. - etc,... All in all, Homebrew, Fink and Macports are great for one thing : showing you how to patch the default tgz, saving the user hours of work for his custom, sandboxed install of any software (which as itself has been a life saver, for myself, on many an occasion). Macos still is, as far as i'm concerned the best laptop platform for someone who has to use licenced software (external job/office constraint) but also needs a nix (bsd) environment. Otherwise, what can't you do with the default Ubuntu 12 LTS (i guess you agree) ? Macos, sure, is's on its way to become worthless as The Lion slowly sandboxes the user out of the OS, but tat's another story. EDIT : and let it be said that OF COURSE, I agree with you that aptitude, yum and the like have no decent equivalent on the Apple/Microsoft closed platforms.
- jaequery 14y agophp is like the mysql of databases. everyone hates you for using mysql, but everyone uses it.