The Importance of Researching your Job Recruiter - <AUTHOR> After spending a good six hours working on updating my resume as an independent recruiter looking to get his foot in the door with a progressive company, I received a number of emails from recruiters.  Two of these emails stood out to me.
Mainly because despite being from two different recruiters from two different companies, in two different parts of the world, these emails read exactly the same.  Verbatim.  After some time Googling, I eventually found the originating job post on a company website and became quite infuriated.  In fact, one of the emails did not even address me by name, the greeting line was "Hello Consultant".  I decided to respond to the emails separately.  This is one of them:
http://pastie.org/918524
Now, the reason I am sharing this story with you is to share the value of people.  As someone who spends a lot of time with people, networking and making connections, I've seem many companies who try to build the ideal candidate based on qualifications and skills.  Understandably, I sympathize with their desire to use company resources as best they possibly can.  That's where things go sour.  They end up hiring black hat recruiters, or employing black hat recruiter techniques like this one: nabbing job postings from future clients and blasting emails across the internet.  The goal of this often results in no one actually filling the position, and the recruiter walks away with a number of new resumes.  Candidates grow frustrated because they've responded to a recruiter who isn't going to work for them until it's financially convenient (i.e. they find a candidate who pays a juicy enough contingency fee), and the candidate in the long term has to continue burning up their own resources looking for work.
Beware the Black Hat recruiters.  Research is obviously important when looking for more work.  Research is just as important when dealing with recruiters.  I just wanted to share that with HN after seeing a couple posts about startups looking to hire. <comment><USER2> The one that really gets me are the placement services that require you to pay them before any services are rendered. I spent 20 minutes on the phone with one just the other day. They masquerade as legitimate recruiters and then hit you up to represent you in the unpublished job market; like there are companies out there keeping jobs a secret because they don't want them filled. They try to prey on fears of the economy and competition and then try to sell you an advantage over that whipped up competition, who by the way, they would sell their service to. It's not like they are representing you to the exclusion of your competition. After wasting 20 minutes with what I thought was a legitimate recruiter for a CTO position, I was pretty irate. Like I told the scum bag, if you are so sure of your success rate, then why don't you let me pay your fees after placement? after all if you don't place me, I have not benefited from your so called advantage. He quickly dismissed that concept with some BS about the payment separates those that are truly looking to advance their career. The part that really bothered me, was the scare tactics and the fact that these people are probably having some success with insecure individuals who are susceptible to this. Given the current conditions and the psychological desperation of being unemployed, I can imagine that this is a very vulnerable demographic. Fortunately for me I have the luxury of time, so I was not susceptible to such carpetbaggery.

</comment><comment><USER3> > Candidates grow frustrated because they've responded to a recruiter who > isn't going to work for them until it's financially convenient (i.e. they > find a candidate who pays a juicy enough contingency fee),

No recruiter actually cares whether you get hired. They care whether they get paid. Since they can get paid when someone else is hired ....

> and the candidate in the long term has to continue burning up their own > resources looking for work.

You can't outsource your career to someone who isn't dependent on your success. (You probably can't outsource your career to anyone.)

</comment><comment><USER4> I recently wrote up a bunch of black hat recruiter tactics that I've either experienced personally or have heard about from companies and job seekers. It's crazy how far some recruiters will go.

<http://blog.nahurst.com/black-hat-recruiter-tactics>

</comment><comment><USER5> Where are you based, Dave? My day-job company is actively seeking a technical recruiter for internal and client placements. (Oh, and I should add that we're pretty damn good at communicating with the people who apply for jobs).

<comment><AUTHOR> I am located in Spartanburg, South Carolina. Tell me more about your company at the profile address email.

<comment><USER6> The email address in your profile is only visible to YC staff. If you want people to be able to contact you, put your email address into the about: box.

<comment><AUTHOR> Ah, thank you for that.

</comment></comment></comment></comment><comment><USER7> so, what, exactly does a company look for in a recruiter? do they care if you can find good people? or are they looking more for someone to sell the job to a potential employee? Both? neither?

</comment><comment><USER8> I had this exchange with a recruiter working at Google.

Recruiter: I am writing to introduce myself as I recently received your name from a current Googler who mentioned you'd be a strong asset here. I am hoping that you might be open to confidentially exploring engineering opportunities with Google. If not, it'd be wonderful to hear a bit about what you're doing currently so we can keep in touch down the road. Please let me know if you might have a few minutes to discuss.

Me: Who recommended me? I'd love to know.

Recruiter: I have been asked to keep that confidential. Let me know if you are interested in exploring opportunities that we have here at Google further. Thanks again and have a great day.

Me: Thanks for the inquiry but I'm not interested. I also just want you to know that I'm aware of passive recruitment techniques and for some people it's frustrating to engage in a conversation at that level. I don't think it reflects well on you or Google.

<comment><USER9> When I was a freshman, I got an email from Microsoft that said "One of our recruiters recently reviewed your resume and is very interested in speaking with you about your interests and skills".

I didn't actually _have_ a résumé at the time.

I wouldn't call that particular tactic black hat, but it did raise my suspicions.

<comment><USER6> I have a Microsoft story which beats that: I was invited to give a talk at Microsoft Research about research I had done, and when I arrived I was introduced as "Colin Percival, who wants to work for us".

I gave my talk and escaped as quickly as I could.</comment></comment></comment>


Gorgeous App Store Screenshots for iOS and Android in minutes - <AUTHOR> https://www.storeshots.net

<comment><AUTHOR> For years I have been looking for a tool like this. With my Photoshop templates I easily spend an afternoon or a day designing and exporting App Store screenshots. And even small changes could mean starting over the export process. This tool does the job in minutes.

</comment><comment><USER2> I built StoreShots to help me build great Screenshots for my Apps, as there were no tools on the market that fit my requirements. Please let me know about your questions and feedback via Twitter @jaysquaredcom or Email email@example.com.</comment>


How to Identify a Good Perl Programmer - <AUTHOR> http://www.modernperlbooks.com/mt/2011/01/how-to-identify-a-good-perl-programmer.html

<comment><USER2> 1) I'm of the school that measuring trivial knowledge is not a good way to identify good programmers - merely knowledgeable ones. The two can be correlated, but it's certainly not surefire. Lots of java programmers have passed the certifications, which are similar to this list of questions, but are not "good".

2) Good hiring effort for programmers should, imho, focus on hiring great programmers in any language. They need to be willing to learn Perl, but unlike, say, C++, Perl isn't the sort of thing that should take more than a month or two at the absolute most to be proficient at if you're a good programmer.

<comment><USER3> On point 2, one of the best Python programmers I've ever known was a great Java programmer until the day he was hired by a Python shop...and then he became an amazing Python programmer. Great programmers are not tied to a particular language, though they do tend to prefer better languages (one of the reasons the great Java programmer took a job at the Python shop was so he could work in a better language).

<comment><USER4> Also, while the article describes a reasonable way to identify programmers with Perl domain knowledge, I've rarely worked at jobs where that was "enough" to hire someone. System domain knowledge and problem domain knowledge are both at least as important as language domain knowledge.

I've never needed to hire "a Perl programmer", I've needed to hire people in much more specific categories like "someone to work on a webapp written in Perl for a travel company" - where system domain knowledge (knowing about things like SQL injection, XSS, character encoding, SOAP and it's lack of and "S", session management in http, authentication and security), and problem domain knowledge (some understanding of the travel industry, ecommerce, online credit card transactions) is at least as important as their Perl knowledge. I suspect in a lot of cases it'd be easier to buy a copy of Perl Best Practices for a candidate with strong system and problem domain knowledge but limited production Perl experience and have then thrive in the above role, compared to someone with a complete understanding of Perl's syntax and gotchas who's never worked on a consumer facing web app. By the same argument, all the ecommerce specific perl web app experience in the world won't on it's own win you a bioinformatics/data mining job (with me) over a Python or Java guy with in depth biology knowledge...

On an even higher level, it's easy to poke fun at Google/Microsofts hiring gameshow style questions, but they're trying (however badly) to identify/recognize problem solving skills, which are completely language agnostic. A solid grounding in algorithms and data structures, and the ability to do back of the envelope calculations based on reasonable assumptions/estimates (with supporting reasoning and error bounds for those estimates) is a very different skill to "just programming", and people possessing those skills, while in a small company will still be "a programmer", in a larger shop (like Google) would have a role perhaps better described as "project architect" or "system designer". Being able to answer with good explanations behind your reasoning "how many gas stations are there in America?" or "why are manhole covers round" might not be relevant if your hiring a programmer to modify Wordpress or write a Magento plugin, but people who _can_ discuss and answer those sort of questions are demonstrating a much higher level of skill than just knowing whether arrays are passed by value or reference in programming language de jour...

<comment><USER5> Medium and large companies need the article's advice much less than smaller companies, where the difference between someone who knows enough to download example code and modify it until it does something and someone who has current and effective language domain knowledge is much, much more significant.

</comment></comment></comment></comment><comment><USER6> If I was trying to find a good Perl programmer, I would try to read some of their code before asking a single question. If I could read it, that's a good first step.

Because you can know the answers to all of those questions and still write "write-only code." Easier in Perl than in most languages. ;)

</comment><comment><USER7> No. You just look at their code. You can scan sample code in 5 minutes and determine how well someone knows the language.

I won't even consider having an in-person interview with someone until I've seen their code. It's just too often a waste of their time and mine.

<comment><USER8> How much code and what type is enough? All of the perl code I've written is safely behind company firewalls that I no longer have access to. I could probably whip up something of a trivial nature on short notice, but nothing that would have seen any production use.

<comment><USER9> I'm thinking that's a good reason to contribute to some open source projects. Unless, of course, your employer prohibits you from doing so... in which case I has a sad for you. :(

</comment></comment></comment><comment><USER10> Now lets wait for a stream of posts titled, "How to Identify a Good X Programmer".

I would be waiting for the Python one.

</comment><comment><USER11> "How do you look up keywords in the Perl documentation?"

I hope there's a new clever answer to this that requires fewer keystrokes than google instant.

Because the Perl docs are a ... heap. To some extent finding what you really want but can't remember is a real skill - I don't know what novices do. They probably do without, truth be told.

And I say this with some affection, having spent countless hours of my life wandering the docs. And the various books.

<comment><USER12> I'm not certain it's the answer he's looking for, but I'd probably start with 'perldoc -f keyword'. Are there better ways?

<comment><USER11> I don't want to sound like I'm slamming perldoc, but you see, even its use is a programming aptitude question. The help is probably not that helpful for novices.

Note that offering 'perdoc -f' shows that you are interpreting "keyword" in the original question as "something that resides in the perlfunc list". Fairly specialized knowledge.

</comment></comment></comment><comment><USER13> I can answer about 1/3 of them and have been programming in Perl for 8 years now. Perl's not one of my primary languages though.

<comment><USER14> I can answer a lot more than that, but, err... I don't use POD much thanks to Google and my bookshelf. And my programs live in places where the only people who ought to be reading the documentation are other programmers, who will be looking in the script itself.

</comment></comment><comment><USER15> > How do you read the documentation of a core library?

Ahem... I have read a lot of Perl5 documentation and the only response I can think of is "I don't know, probably with my eyes open" (yes, that's rude). I just find what I need (by means varying with the situation) and read it.

No, seriously, could someone explain me this question, please?

<comment><USER16> I think he means something like

      perldoc Data::Dumper
      perldoc -f use

</comment></comment><comment><USER17> 1) A long, grey beard

</comment><comment><USER18> Easy, the one that dumped perl a decade ago. It is truly archaic and has no place in a production environment anymore. The only people still using it are resisting change to a more productive and useful language.

<comment><USER19> Unless you are trolling, just define 'more productive and useful'.

Age is not an important property of a programming language.

</comment></comment><comment><USER20> If their code is an unreadable mess of slashes and dollar signs they must be a good perl programmer.</comment>


How to continue getting free security updates for Windows XP – until 2019 - <AUTHOR> http://betanews.com/2014/05/26/how-to-continue-getting-free-security-updates-for-windows-xp-until-2019/ <comment><USER2> "Also, because you're installing updates for a system other than Windows XP, there's the possibility that not all updates will work as intended. But it's still worth a shot."

Well, that's terrible and irresponsible advice to give to anyone who might take it seriously.</comment>


Ask HN: PHP for Python programmers - <AUTHOR> I've been happily programming in Python for a long time (6+ years) and so far I've been fortunate to never have to write a single line of PHP. Recently I was contacted by BigNameCorp regarding a good job opportunity. Problem is, PHP is the main language (among several others) of said company and chances are that at least part of the job will be writing and reading PHP code.  Although that's not necessarily a show stopper, I'm afraid I have been spoiled working with a high level language for so long and I'm not particularly thrilled to move down the language totem pole.<p>I've seen blog posts about moving away from PHP to Python, Ruby, and other better languages but not much about the opposite direction. Have you been in a similar situation and if so how did you manage to adapt and maintain your sanity ? Any suggestions, warnings or pointers on learning the good parts of PHP (if there are any) for advanced programmers would be most helpful. <comment><USER3> If `BigNameCorp` writes a lot of PHP seriously, you won't notice that many problems. It's not going to be PHP anymore. It's going to be Symfony, Zend, Cake, or something else (maybe even some proprietary, internally used framework). It isn't that easy to find pure-PHP code these days - it just takes too much time to write.

If you do however see an old-style "let's just include everything", "global variables are cool", "just shove it into $_SESSION" kind of code... well - good luck, you'll need it ;)

There's also going to be some forehead slapping as you discover what is not possible (like ` _function_returning_array()[0]_ ` => syntax error)

I get to write PHP once in a while but normally prefer Python. It's easy to spot in the style of the code written... but otherwise, no problems. I'd just suggest changing the error reporting level to maximum - it's not hard to write a lot of PHP code that will both work correctly and report tens of warnings per line.

<comment><USER4> Array dereferencing in is the trunk and will be available in 5.4.

<comment><USER5> And will be available for use on BigNameCorp's RHEL servers in about eight years.

<comment><USER6> If then. Look how many BigNameCorps are still using ASP classic.

</comment></comment></comment></comment><comment><USER6> _Can_ you learn PHP and be successful with it? Absolutely. Do you want to? As a Python programmer who's had to do PHP from time to time, I can say it isn't terribly fun. If I were to make a decision based solely on the programming language though, I wouldn't choose a shop whose main language was PHP. Again though, that's assuming that I was _just_ basing it on language. I've found choice of programming language to be one of the less reliable indicators of how good a company would be to work for.

<comment><USER7> Perhaps I'm irrational, but early in my Python career I got back a source file from a friend that had invisible changes in the spacing (tabs and spaces got confused) and spent entirely too much time fixing the resulting bugs.

I figured whatever benefit I got from Python's other 'good' features, I'd lose back with that kind of BS, so I quit programming Python.

<comment><USER8> Is it really that hard to search and replace a tab with four spaces?

        %s/\t/    /g

should do it in Vim. Make it /gc if you have tabs in your code for some reason.

If it's really hacked up, then a source code beautifier might be a better bet:

[http://www.google.com.au/search?q=python+source+code+beautif...](http://www.google.com.au/search?q=python+source+code+beautifier)

The alternative is to have wild, all over the place indenting in languages like PHP. Except that the code will still run, so nobody will fix it.

</comment></comment></comment><comment><USER9> I realize the question was about language specifically, but something that wasn't really addressed in all these comments is the totality of the environment PHP will be used in.

PHP using a decent framework with properly unit-tested and documented code, a team of mid-level and sr devs, version controlled, good comments, a build process, and reasonable development schedules would be a _joy_ to work with vs hacked-up Python thrown together by various people who don't know what they're doing with no process, docs, version control, test, where everything was due 2 weeks ago and people just develop on live servers. That would, simply put, be a nightmare, regardless of the 'purity' of Python.

I recently took on a project based on Rails. I saw some code - there were tests - some of the models I inspected looked decent. My initial view was "it's Rails - _how bad could it possibly be_?". It was/is horrible. However, once we'd commenced, I realized a) it's Rails1 (and was still being _developed_ in Rails1 as of March 2010), there's _0_ version control, no external docs, few internal comments, and 95% of the tests are either auto- generated skeletons only, or at the level of "Add 1 to the inventory, save, then check the inventory has increased by 1" (not checking any logic, just db code).

Parts of the code are - yes - more expressive that they'd have been in PHP. But, overall, the project is an abysmal mess. It's painfully apparent the original dev(s) didn't understand how to build software. They could 'sling Rails stuff together', but that's about where it stopped.

We've made a not too painful decision to rebuild, just using the old code for reference as to how screens should look. Rebuilding is being done in Grails (fwiw), and we're using a bdd approach (easyb) to get started. I was on the fence about using Rails/cucumber, but _my_ skills aren't very strong in that, and we've got a deadline to meet.

I understand PHP isn't perfect. Coming from other platforms, there can be many 'gotchas' which catch people off guard. I've found moving from PHP to other platforms you find similar gotchas. It doesn't make every 'gotcha' automatic proof that PHP is crappy (a few do, but not all!) But again, the language, while important, should not totally define your view of the job or the entire ecosystem.

<comment><USER10> In the same boat right now with a Django project and couldn't agree with you more. Django is a decent framework but no framework or language will prevent a crappy mess if you're determined enough.

</comment></comment><comment><USER11> Don't worry about it. I was in a similar position a few months ago when I, a python programmer, was offered a perl position. Eventually you just get used to it, and you might even find things you like. I've stopped being as much of a language snob. Some features and most syntax are just decorative, and you'll adjust. The whole giant namespace thing would bother me a lot, but hey its worked for other people before.

<comment><USER12> Language snobs, as a rule, are people that have not programmed in more than one language, or that somehow think that their chosen superior tool makes them superior as well.

Nice to see that learning a 'crappy' language like PHP got you on to a more even keel in that respect.

<comment><USER13> On the contrary. Language snobs have programmed in multiple languages. That's why they can clearly recognize a flaw when they see it. If you've always used a tool with the same flaw you likely don't recognize it as a flaw and just think that that's the way it works. Or you do kinda recognize it as a flaw but don't realize how much it slows you down.

<comment><USER14> I think there's more than one kind of language snob out there. Some of them have never programmed in more than one language, and so naturally think that language is the best. Some don't regularly program in _any_ language, and take whatever fad du jour is on Reddit as gospel. But others have programmed in lots of languages, and have tried the languages in question, and _that's_ why they think it sucks.

It can be difficult to tell them apart. But one way is to look at the depth of their criticisms, and how many of those criticisms you've heard before. If they say the same things everyone else says, chances are they're talking out of their ass. But if they can come up with unique, detailed, insightful reasons why a particular language sucks, it's pretty likely that they've used it extensively and have some idea what they're talking about.

<comment><USER15> Well put. I've seen many people who will be quick to jump and say Java|C++|PHP|Ruby|Python|C# is the BEST AT EVERYTHING EVER because the Internet tutorial they took told them so. These people are so common that having opinions on a language is something that you actually need to be careful what remarks casually about, lest you be branded an uninformed idiotic language bigot. Most languages in wide use are there for a reason, but that doesn't mean any and all opinions on them are invalid.

<comment><USER16> I'm not sure if it's an oversight or intentional but you didn't mention Lisp, which is, for many "snobs", the language of choice.

<comment><USER17> He should have mentioned Lisp, along with some other languages. However, I don't know how intentional that was, but he only mentioned languages used by the first kind of snobs -- those who are not familiar with great number of tools. Of course, I'm oversimplifying, but I'm sure that average Lisp, Smalltalk or Haskell programmer have used more languages than average C++, Java or PHP.

</comment></comment></comment></comment></comment></comment></comment><comment><USER18> If you're like me, you'll never be happy using PHP. It's like being a piano player and having someone ask you to play their favorite song, but only if you cut off 9 of your fingers.

The result is a bloody mess. Find a different job.

</comment><comment><USER19> I've had to use PHP even though I really love Rails because WordPress is built in PHP and a lot of my client work is with WP.

It's definitely not elegant when compared to Ruby or Python but it's not as bad as Java. Because you know Python, it won't be hard to pick up but you'll need to accept that you're working with a different environment and live with the tradeoffs.

The neat thing about PHP code is that it runs pretty much anywhere. This is not a big deal when you're building one app that is going to be used by a lot of users but it is a big deal when you have projects you're building that are open source and you want to foster a growing community.

As others have mentioned, a lot of your sanity levels will depend on what their current code looks like. If it's at a company like Facebook, I'm assuming their code would be at least decent or even nice. On the other hand, it could be a complete nightmare to work with bad code. A different way to look at bad code could be as an opportunity to do a lot of work and make yourself very valuable to the team. It just depends on whether you want to take on that type of role.

Now if money and distribution of your code isn't a biggie for you, I wouldn't take the job as you don't want to realize you've wasted a year on something you hate.

</comment><comment><USER20> PHP is an okay language. I'd never choose it by myself, but most of the time it is bearable. The language is not the problem though - it's the people.

PHP breeds mediocrity in such a superb way, it's rivaled only by Visual Basic. It attracts many dumb people and, chances are, you will meet many of them on your new job.I won't go as far as telling you to stay clear of the job - <USER2> have that in mind when deciding.

<comment><USER21> Completely agree!

Both PHP and VB share low barriers of entry. That make them novice friendly, but in the end it encourages practices that everybody else have agreed to call bad habits.

By example, copy & paste. In most languages if you pick a random forum and ask "how do I do X?", you will receive answers that range from "RTFM" to some cryptic link to a Fine Manual to Read. You will be forced by the elders to conceptualize what you want to do, and then learn how does it work. On the other hand, that same request in the PHP and VB forums will get half a dozen of "here is it, dude" responses... including the one form the reading challenged idiot who answered how to do Y instead.

In the mind of the newbie, then, it becomes perfectly acceptable to equate programming to a look up table where there is some arcane incantation that corresponds to every problem.

Not to say that there is no professional people doing quality work in either language. But dealing with the noise in the community is the price you have to pay.

</comment></comment><comment><USER22> Atleast at Facebook, the PHP code quality and abstractions are very very good, and getting better. Developing the compiler in-house has some advantages.

</comment><comment><USER23> You are going to have to learn what the shifted '4' and the unshifted ':' keys on your keyboard do. You might start practicing to build up those muscles.

(I just learned Python to give App Engine a spin. All my usual languages use semicolons, I finally stuck a little clay on the key to alert my brain when I pressed the semicolon.)

</comment><comment><USER24> Switching languages, for me, has usually been a matter of remembering syntax, some minor differences (such as how arrays work, what things are built-in, etc), and the patterns in each language that naturally arise from those two. Of course, things get more complicated if the language itself is structured differently (eg: Javascript), but there are a lot of underlying concepts that carry over (scope, stack, OOP, etc). In short, it just takes practice. If you're "advanced", you should be able to pick up on it pretty quickly.

To get a feel for syntax and how PHP works (especially == and reference/value), you should read the docs. They're a breeze and provide lots and lots of examples. The user comments are generally incredibly helpful and will notify you of caveats that you might need to be aware of.

You'll also want to start off by learning how to build objects in PHP, how associative arrays work (they are great), and how to use __autoload() to include classes on the fly.

<comment><USER25> Magic quotes is also worth a mention. It's bound to throw anyone coming from another language for a loop.

<comment><USER24> Magic quotes has been disabled by default for several years. All you need to know about them are: disable them if enabled.

<comment><USER26> And if you can't guarantee they're disabled (e.g, if you're writing code to be used by other people), undo them at runtime as early as possible.

</comment></comment></comment></comment><comment><USER27> I'm also a huge fan of Python, and I do believe that it (or other higher level languages like Ruby and Lisp) spoils you. I once took a well-paying job, but the main language used was ColdFusion - and not just ColdFusion, but a huge, complex, disgusting ColdFusion framework that the company had written themselves and was riddled with bugs. I figured I'd be fine because of the paycheck and the prestige of the job. Switching to a new language wasn't hard or anything, but I ended up only lasting a few months, then quit, taking a significant pay cut to get away from ColdFusion. I found that I just couldn't stand the stupid language.

I guess my point is, when deciding whether this is the right job for you, language is a very important factor. After a little time writing in a language you don't enjoy or respect, if you're like me, you're going to start to feel creatively and intellectually unfulfilled.

</comment><comment><USER7> The team that makes PHP makes quality a higher priority than just about any other language; if something is built into PHP, it's pretty likely to work correctly. (For example, PHP and Python have the exact same problems with threads, and the PHP team says "don't use PHP in a threaded environment" and the the Python people say "come jump in the water is fine")

It's true that everything gets shoveled into one big namespace, but PHP lets you get a lot done with very little bull. There's a lot of crappy PHP out there, but there's a lot of crappy Java, Python, Ruby and C# too. If you approach PHP with some discipline I think you'll find it's an environment that never kills you with a showstopper flaw.

<comment><USER6> Seriously? Don't get me wrong, I could imagine valid reasons to use PHP. But the quality of the language itself is at the very bottom of that list. I don't usually hear PHP advocates making that case. Usually it's a combination of "the language isn't _that_ bad" and "there are a lot of libraries for PHP".

<comment><USER12> If you define quality as 'orthogonal naming of functions' and 'elegant constructs' then yes, PHP has its flaws.

But it's been absolutely bullet proof in production for me and when I did find a bug I've had a patch within 24 hours straight from the core devs.

They do take quality serious there, they just don't define it as language elegance.

<comment><USER25> I'm not sure I understand what your argument is. That there aren't major showstopper bugs that make PHP unusable due to various segfaults? Sure, that's true. But do you mean to suggest that such things exist in greater quantity in other such languages? You say the PHP devs have a sharper focus on quality than other languages; can you provide and kind of evidence for those claims? Not just good response time by the PHP devs, but systemic failures in other languages that go unaddressed, as well?

PHP tends to be at the bottom of the "language quality totem pole" because as a _language_ it's pretty low quality. The PHP interpreter may be fine as a piece of software, but that's a completely separate matter from being a quality language.

<comment><USER12> I've filed bug reports for other languages and have never so much as received a confirmation, let alone a patch, the php devs responded within a few hours, that shows to me they care.

> PHP tends to be at the bottom of the "language quality totem pole" because > as a language it's pretty low quality. The PHP interpreter may be fine as a > piece of software, but that's a completely separate matter from being a > quality language.

It is specifically for that reason that I broke it down in to two parts, and apparently we agree on the language quality from a design point of view, but from a 'have to use this in production' point of view we do not.

> You say the PHP devs have a sharper focus on quality than other languages;

That's a straw-man, I said no such thing, but it _does_ happen to be my experience that the PHP devs respond very quickly compared to other platforms / languages.

> Can you provide and kind of evidence for those claims?

And no, I'm not going to provide you with any 'evidence' for my claims, you can take my word for it. This is not a court of law, and besides that I never made any claims about other languages before this comment _and_ I don't feel like putting other languages and/or their developers down.

I know PHP as a language has its flaws and that there are some unfortunate choices made in the past that are very hard to undo but that's no reason for losing all objectivity.

<comment><USER25> > I've filed bug reports for other languages and have never so much as > received a confirmation, let alone a patch, the php devs responded within a > few hours, that shows to me they care.

It's great that the PHP devs do that! Is that a compelling reason to use the language? I'm not so sure.

>That's a straw-man, I said no such thing;

You said:

> The team that makes PHP makes quality a higher priority than just about any > other language

Can you explain to me what I misinterpreted?

> And no, I'm not going to provide you with any 'evidence' for my claims, you > can take my word for it. This is not a court of law, and besides that I > never made any claims about other languages before this comment and I don't > feel like putting other languages and/or their developers down.

It's a little silly to make a comparative statement like "The team that makes PHP makes quality a higher priority than just about any other language" and then refuse to provide examples of where this happens and matters. If you'd just said "The PHP devs respond quickly to bug reports", sure, but when you start saying "They do this better than other languages", you're implicitly already "put other languages and/or their developers down". In a case like that, I don't think it's out of line to ask for examples; if there are major failings in other languages that go ignored and unaddressed, then that's certainly worth some attention. If there aren't, the whole point is moot anyhow. If there are examples of systemic problems that go ignored in other languages, I'd like to know about them - that may matter when I choose a language for a project.

I'm not interested in trashing PHP here; I use it on a daily basis, and get a lot done with it. I also use Ruby, Python, Javascript (both server and clientside), bash, and the occassional perl on a daily basis, and don't have problems with mysterious segfaults and unexplained crashes from 2-year-old bugs that would somehow make PHP's lack of such problems a major marketing bulletpoint. I don't understand your position at all, because as far as I can tell, it's "The PHP interpreter is mostly bug-free, and bugs get fixed quickly" (which is great!), but...what language with showstopper bugs survives mainstream use?

<comment><USER12> > You said:

>> The team that makes PHP makes quality a higher priority than just about any other language

> Can you explain to me what I misinterpreted?

Yes, that that was terra_t, not me making that claim.

<comment><USER25> Doh. Egg all over my face. My apologies!

<comment><USER12> np. Glad we got that cleared up :)

<comment><USER28> This is why I love HN.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER29> It's pretty simple. Just switch off your brain and pretend you're writing really poor JavaScript.

</comment><comment><USER30> The Kohana PHP framework source (<http://github.com/kohana/core>) is a great example of well-written PHP code. You can definitely get a sense of the "good parts" of PHP from reading through the code.

<comment><USER9> Really? Perhaps I just looked at the wrong time, but I was looking at Kohana last year and ran far away. The issue wasn't the _core_ , but everything else around it - the plugins, the dev attitudes picked up from mailing lists, the release process and more.

IIRC, I wanted to use Kohana because of some specific plugins recommended to me. However, they were marked as only working in 2.4. 2.3 was in beta, but the consensus I got from IRC people was 'just move to 3 - it'll be released soon and that's where attention is being focused'.

The _core_ code might be well-written, but that doesn't mean it'd be a good project to build on. It _might_ be, but code alone is not the only factor to consider.

</comment></comment><comment><USER31> Think of PHP as a really amazing shell scripting language. Just as shell scripts can be glue for all the powerful UNIX utilities, PHP gives you APIs for just about any useful library you might need for web work. You won't be able to use your fancy Python chops for things like generators or itertools, but with luck instead you'll be running a bunch of powerful well-designed existing C code with a few function calls. Of course, a significant project will require a bunch of data & logic in PHP...

Also, the PHP source code is quite readable, for those times when the good online reference manual doesn't help.

</comment><comment><USER32> Programming languages are tools of the trade and no different than tools in any other field. If it's a good job then it is a good job. If the job requires you to work with PHP, then that is a lesser consideration that is barely worth mentioning. Good coding can be done in any language even crusty COBOL or LISP. After you learn the PHP syntax, then you won't think about it anymore. In a few weeks time, you'll be surprised that you were worried about something so trivial as the programming language used.

<comment><USER17> Your post suggests that the only people who care about what language they use are the ones who did not use any languages other than the one they like the most.

That's simply untrue.

</comment></comment><comment><USER33> Bookmark <http://www.php.net/manual/en/>.

I suspect that the quality of the code base will affect your happiness much more than the language itself will. I doubt that BigNameCorp belongs to the world where all database fields are VARCHAR(255) and elaborate code is required to ensure that '99' < '100', or where globals float about mysteriously. If so, heaven help you--but they'd probably write Python in the same fashion.

</comment><comment><USER34> When I started programming I was using Visual Basic and Pascal. I miss those days because I was focused only on building things and was not aware about "Which is the best language" blog posts.

My suggestion is to not pay too much attention to those blogs and focus more on building things.

I'm sure PHP is a good language to build very good websites.

</comment><comment><USER35> I started as a PHP programmer and transitioned to Python. I'm currently doing PHP at work, and it's not too bad, despite some of the warts that come with an application designed over 5 years by a single person.

Sure, I'd rather be hacking Python, but I'm not going to go kill myself or anything.

</comment><comment><USER36> not that I've written any python, but is PHP that much low level?

<comment><USER37> PHP isn't super low level, but it is for a server side language. Much of its standard library is just a pretty thin wrapper over the C, and since it's often used without a framework, the code 'feels' lower level.

</comment></comment><comment><USER38> You'll be be fine. I've found it very easy to switch from/between C/C++/PHP/Python. Perl on the other hand...

<comment><USER39> C++? Strange. It took me time to learn seriously. I used to reread "Effective .* " every few months.

Python/Perl/Ruby/PHP fill such a similar niche that I try not to go between them, because it would be boring.

My personal plan is to next go Erlang, Perl 6 or some Lisp variant.

Edit: Job offers for 2011 or so would be appreciated. :-)

<comment><USER40> Depends what order he learned them in. Maybe he already knew syntax from C and classes from Python before learning C++.

</comment></comment></comment><comment><USER41> I'm a Pythonista who had to deal with a client's legacy PHP codebase earlier this year. One tactic I used was to try to write all new stuff, where I could, in Python. Tasks that could be separate processes from their existing PHP stuff. For example, command-line tools, automation, supplementary web apps, etc.</comment>


Google Docs does not support Firefox 3.6 - <AUTHOR> http://support.google.com/a/bin/answer.py?hl=en&answer=33864

<comment><AUTHOR> In another thread people were commenting that some people are refusing to upgrade to Firefox 3.6 because they don't like the new Firefox. I saw this link and thought that people should realize that FF 3.6 is already becoming unsupported.

People really do need to upgrade or find another browser that they like.</comment>


Ask HN: Is Microsoft sabotaging older versions of Windows? - <AUTHOR> This is a genuine question, not a clickbait title.
I am a Windows dev and I use a desktop with Windows 8.1 Ent + Stardock menu and also a laptop with Windows 7 Ultimate. Both are fully patched.
I have got to the point where I need to ask if anyone else is experiencing the same things as me and the tinfoil-hat-wearer in me then makes me ask if Microsoft are doing something deliberately to annoy me just enough to "upgrade" to Windows 10.
Now, I am well aware of their "upgrade to Windows 10" tactics with the popups and whatnot but I have a batch file I run after every Windows update to get rid of the spyware stuff so that isn't an issue.
What is an issue is that over the last several months, OneDrive has failed to sync more and more frequently and file copy dialogs end up in the background as soon as you copy/paste. This copy/paste thing never used to happen... I know it didn't!
The OneDrive thing is really annoying as I can be programming something in Visual Studio on my desktop and then an hour later I decide to use my laptop and it hasn't syncd so I have to go to my desktop to force a sync (even though it says everything is up to date)... it never used to be like that.
Also, I have had to reset OneDrive on Windows 8.1 twice and once on my Windows 7 machine in the last 2 weeks alone.
Am I imagining this?
I haven't looked into whether this is a setting or something but I haven't changed anything over the years and it used to work perfectly well. Same with the file copy dialogs: I haven't changed anything.
Should I be buying thicker foil for my new hat? <comment><USER2> > but I have a batch file I run after every Windows update to get rid of the > spyware stuff so that isn't an issue.

Could be that over time whatever your batch script is doing is possibly interfering with the correct operation of OneDrive. You might need to review whatever it's disabling/hacking and make some adjustments. I doubt Microsoft are deliberately trying to sabotage your machine. I suspect whatever your script does is probably not documented well, or is doing "not-recommended" things that may be trampling over incremental updates to OneDrive and unexpectedly and subtly clobbering the way it functions and/or the things it expects to be there. There can be some surprising dependencies in Windows, and Windows does evolve over time due to patches and fixes.

edited: to fix my english

<comment><AUTHOR> Edit: I posted the batch file here originally but it looked crap so I have removed it.

Here is an example of what it removes:

echo Uninstalling KB2976987 (description not available)

start /w wusa.exe /uninstall /kb:2976987 /quiet /norestart

It's all the updates that enable "telemetry".

You could be right that there is some genuine functionality I have removed by not having a particular update in which case I will need to look at alternatives to OneDrive.

<comment><USER2> > This is all it does.

Looks non-trivial to me. That's removing 18 patches/fixes, four of which don't have a description.

If I were you I'd re-install, get OneDrive back into working order (if indeed one or more of these uninstalls is the cause), then re-apply these hacks one at a time until OneDrive starts misbehaving....then put it back.

Blindly running a script like this based on "advice" from the internet, without knowing the consequences each time some wave of new patches/fixes arrives on Patch Tuesday, is a wee bit scary. Especially if it's your primary work/wage generating machine.

</comment></comment></comment><comment><USER3> Who knows, but at the end of the day, they are only going to have so much resources to deal with older versions of Windows.

They seem to be operating with an attitude that if they can get as many people as possible to use their newest version of windows, that they will save money by not having to deal with such a diverse environment of versions.

Something tells me they looked at the way companies like google release their updates often, and by default. Release numbers are becoming less important, more of a tool for developers to use (which is what version numbers were invented for, before marketroids don't got a hold of them). Perhaps a light went on when they saw that chrome just quietly updated, without any fanfare about 'upgrading' to new whole numbers, large features just got included when they were ready, from whichever version they were releasing at the time.

This approach makes alot of sense ongoing, and in the long term. Developers in the past got used to having various versions of their desktop software being in the wild, and it was a part of life. Then people started going, hey with the web, I only need to be supporing one version of our codebase, which is actually pretty awesome. Google came along with chrome and decided that it made sense to have as few versions in the wild as possible. It seems Microsoft is playing catchup with this, but they still have large releases of windows, with interface changes between large versions, which causes folks like you to want to hold onto older versions. Seems they are still working on fine tuning their social engineering.

</comment><comment><USER4> «I can be programming something in Visual Studio on my desktop and then an hour later I decide to use my laptop and it hasn't syncd»

It sounds like you are looking for an almost live real-time sync. It's not really a use case I think OneDrive has ever prioritized. Certainly it tries its best, but I remember having a lot of issues with the timeliness of OneDrive sync in Windows 8. (It feels like sync has gotten better in 10's client, even with the two steps back in usability.)

I don't think they are intentionally sabotaging it; I would suspect it's more that you've found edge cases in the sync platform.

That said, you may want to consider a different sync platform intended for closer to real-time sync. BitTorrent Sync has been useful to me in that category.

<comment><AUTHOR> It used to work in almost real-time but the time isn't really the issue: I could leave it forever and it won't sync without manual intervention sometimes

<comment><USER4> That too has been a complaint I've had somewhat consistently with OneDrive over the years. Every now and then it seemed like OneDrive's file watcher would stop catching file updates and I'd have to restart OneDrive on my machine.

Some of that has also always been OneDrive's natural attempt at throttling usage until the machine is certain levels idle CPU and/or bandwidth. It can be nice knowing that OneDrive will try to avoid major operations while you are busy, but it can also cause strangely long pauses between syncs because your machine is busy with a lot of other background downloads.

</comment></comment></comment><comment><USER5> I'd say you are seeing development tradeoff's that they are having to make. Likely code bases, like the one for OneDrive sync, is shared across multiple versions of Windows. That comes with tradeoffs though as newer versions of Windows might have features which are utilized to gain functionality, security or reliability. Then to support the older OS's the team tries to implement similar limited functionality but it isn't as thoroughly tested as the OS likely. Not to mention, think of it this way, if say 70% of your clients are on Windows 10, you'll probably optimize testing and features around that, not anything prior.

I highly doubt this is done specifically to force people to upgrade, or to screw their older versions of Windows. And I am sure more then once a developer or product manage has said, well if they don't like that they can upgrade Windows. If you have ever written a client deployed application you have likely said it too.

</comment><comment><USER6> They may are just shitty devs as always, maybe thats their tactic. Who knows. Just upgrade to Windows 10, thats what Microsoft wants you to do, and you know yourself you want all that Spyware stuff, else you would not title yourself windows dev.

<comment><AUTHOR> Did you forget the /s at the end of your post? :)

I don't want the spyware stuff: I have been a dev on Windows for 13 years or so... long before all this forced telemetry stuff and I am running a business based on it so switching to Linux or Mac isn't an option at this point unfortunately.

Windows 7 and 8.1 work fine for the most part and I will be sticking with them but it just seems like there have been subtle changes over the last year or so that are designed to annoy me rather than fundamentaly change or break the way I work.

<comment><USER7> > I am running a business based on [Windows]

That's the problem; you created a business that depends on a single point of failure that is entirely outs0ide your control. Without a second source[1] or a reliable alternative strategy, your business isn't really under you control.

This is why _free_ [2] software is important. You need the right to maintain the things your business depends on.

> switching to Linux or Mac isn't an option

It's always an option, you simply see the cost of switching to be too high. That's for you to judge, but you might want to consider the long-term direction of MS's goal for Windows. Paying the cost of leaving _now_ might be cheaper than paying it at some point in the future after MS does something else that disrupts your business.

[1] [https://en.wikipedia.org/wiki/Second_source](https://en.wikipedia.org/wiki/Second_source)

[2] Not "open source"; having the source code doesn't do you any good if you don[t have the freedom to use it.

<comment><AUTHOR> > you created a business that depends on a single point of failure that is > entirely outs0ide your control

I never really thought of it that way before but you are right... I still can't switch to Linux or Mac at this point though so for the short term it's out.

Long term I will have to keep a close eye on Microsoft and see if it's something I have to move away from.

I was always a pay-your-money-get-your-thing kind of guy but this move towards continuous upgrades and possible subscription-based / "free" operating systems isn't a shift I like... I like to "own" my stuff (I know I never "owned" Windows but I had a disk and I paid for it and I got to choose how long I kept it for and I could disable telemetry and so on).

Maybe this IT stuff is a young mans game because the thought of ditching Windows, Visual Studio, SQL Server etc for Linux equivalents and having to re- learn it all doesn't fill me with hope, however, now that I read this sentence back I amd sure someone will correct me and show me that you can run all that stuff, including Active Directory in a 512MB instance of Puppy Linux or something :)

<comment><USER8> I've been on the Linux journey for about 3 years now and loving all of it. The unix philosophy of small, composable programs just makes sense. Linux/Unix is a system where programmers are the target demographic. No more feeling like a second class citizen in Windows land :)

<comment><USER6> Not only programmers! My grandmum likes how easy it is to make everything huge and high contrast when needed. My mum is a fan of unity, because everything is just reachable even with limited space. She recently even started to use a tiling plugin. My little sister spends hours customizing her desktop and tried pretty much any window manager. My dad uses linux and wine to play windows games that do not properly run with windows 7 and upwards.

I would classify them all as at best average computer users, but there was not much hand holding involved in the transition at all. And way less work for me now! (Like my mum did open Locky (the crypto trojan) twice!!)

<comment><USER8> My mom recently tried figuring out video transcoding and editing on her own with her Windows machine. I'm still waiting to see what kinds of crazy malware she picked up in the process.

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> It's not a conspiracy. They just suck.

Try supporting a large O365 environment. Whenever there's a major product release that uses Azure Active Directory, you end up getting redirected to new end points for auth.

Since they also suck at publishing their IP ranges, your users get screwed with random fail until you update your proxy and firewalls.

Office ProPlus is joy too. Try running that on a distributed network where bandwidth is at a premium. Fun UX.

</comment><comment><USER10> I know they're sabotaging their newer versions :(

</comment><comment><USER11> FWIW, I didn't bother uninstalling KB updates on my Windows 7 laptop. I let them all install, then used a utility called Spybot Anti-Beacon to disable the Telemetry services:

[https://www.safer-networking.org/spybot-anti-beacon/](https://www.safer- networking.org/spybot-anti-beacon/)

You might try giving that a shot.

</comment><comment><USER12> I'm curious about the reasons for not upgrading to Windows 10 since it's free and likely to be better supported.

<comment><AUTHOR> It's not free... I need to have paid for a valid Win7 or Win8 license to qualify for "free".

<comment><USER13> As someone who makes a living off Windows software, surely you have paid for your license? Else you got absolutely no right to complain about anything breaking.

<comment><AUTHOR> So you are implying I stole Windows? That's your contribution to this?

<comment><USER14> > So you are implying I stole Windows?

Actually, when you claim that it is not a free upgrade because you need to have paid for a valid license for the software you claim to be using, _you_ are implying that you stole Windows.

The other poster appeared to be presuming that that implication was unintentional and inaccurate, and that the upgrade was indeed free for you.

<comment><USER15> No, xe was merely pointing out a cost that isn't factored into "free upgrade". You're probably not realizing that to people with long experience of Microsoft marketing, upgrading to Windows hasn't necessarily meant _from_ Windows.</comment></comment></comment></comment></comment></comment>


In Defense Of Computer Science - <AUTHOR> http://hnr.dnsalias.net/wp/?p=39 <comment><USER2> I thought the article was okay and upvoted it, but am I the only one who was getting annoyed at the constant use of the word "learnt"?</comment>


Ask HN: In what ways can the FBI abuse ML models trained on its DB of faces? - <AUTHOR> This week the GAO told the US
House oversight conmittee [1] that the FBI has access to a database of 640 million faces known as the "Interstate Photo System of mugshots"
What I didn't hear in this discussion with congress was how ML can be abused when trained against this database of faces and associated information such as what you would find in a drivers license,passport and the like.
I personally only know about ML at a high level and wanted to ask HN what sort of realistic fears and concerns citizens and lawmakers alike should harbor in addition to simple cross reference and realtime recognition of faces?
[1] https://news.yahoo.com/watchdog-says-fbi-access-640m-photographs-173926319--politics.html <comment><USER2> If a widespread facial recognition system were deployed, the false positive rate would probably be a lot greater than would be acceptable. For what it's worth, this paper I found claims that humans are 97.53% accurate, whereas one particular deep learning algorithm was 99.80% accurate [0]. If you ask me, 99.8% accuracy means large cities will pretty regularly experience situations where there will be serious negative consequences from misidentification.

[0] [https://arxiv.org/pdf/1804.06655.pdf](https://arxiv.org/pdf/1804.06655.pdf)</comment>


Google Nexus One Hands On - <AUTHOR> http://gizmodo.com/5432678/

<comment><USER2> Lots of speculation, but the only official information we've ever gotten was Google saying this was a development device to test new features. Where is all this "Google phone to sell directly to the public without a carrier lockin" stuff coming from?

<comment><USER3> There have been some pictures of the google-branded manuals included in the box.</comment></comment>


How Detroit Was Late to the Driverless Revolution - <AUTHOR> https://www.wsj.com/articles/late-to-the-driverless-revolution-1534520404 <comment><AUTHOR> I have spent my entire life in Michigan. What is sad is that this story has repeated itself again and again over my lifetime. Each time my friends in the auto business have said we're not going to get caught again, yet it happens again.

I've heard dozens of stories from young engineers who are early to some trend only to be frozen out by their bosses. A lot of them get bitter and switch fields, so in effect the auto companies chase away their own future.

We had the governor of Michigan say we don't need to spend money on a test village for self driving cars. He said this technology is twenty years away. Six months, six months later he reversed himself because the Big 3 decided this tech was indeed much closer.</comment>


Thomas verdict: willful infringement, $1.92 million penalty - <AUTHOR> http://arstechnica.com/tech-policy/news/2009/06/jammie-thomas-retrial-verdict.ars

<comment><USER2> $80,000 per song... That is fucked up (pardon my language), but that is fucked up.

Edit: Isn't the law supposed to protect against ridiculous punishments like these?

<comment><USER3> I believe it was a civil suit (that's really the only possible way that 80 grand per song couldn't be considered cruel and unusual).

</comment></comment><comment><USER4> I can't really see how this is even remotely proportionate, by any stretch of the imagination. What were these 24 tracks? A bunch of obscure Swedish Death Metal by all accounts. Is it likely that collecting these damages would make more profit than the sales of the tracks ever would? Maybe. But, as she pointed out, she hasn't got $2m anyway, so they can't collect - it seems likely that the RIAA will just use the damages as a sledgehammer to bludgeon her into settling 'out of court' and out of the glare of publicity. It makes me wonder what the jurors were thinking - awarding life destroying damages against a fellow citizen who is, presumably, an ordinary person, just like them. I don't think that I could do that, personally.

<comment><USER5> Punitive damages are not meant to be proportionate. They are meant to be penal, and to "send a message" to other potential tortfeasors. (Civil trial for damages = tort).

However, SCOTUS has ruled very recently that punitive damages must be proportional to the income and assets of the defendant, for example, $1M is nothing to Bill Gates but is beyond devastating to the average man.

<comment><USER6> I'm not sure I've seen the justice in using people as examples. The compliance of others isn't their problem. Awards being relative to income make sense for fines, and I guess thats what these punitive damages are.

This behavior of record companies makes it hard for geeks like me who don't support the abolishment of copyright. I think the worst that should happen in cases of copyright infringement of music is a several hundred dollar fine total, not per song.

</comment></comment></comment><comment><USER7> Something is broken in this country.

<comment><USER8> You mean the fact that we fund public schools with local property taxes, right?

<comment><USER9> I have to agree with you, Thomas. While IP law in the United States is clearly full of problems, we cannot ignore the simple numbers: millions of childrens' lives are worsened every year, through no fault of their own, just because of where, or to whom, they were born.

Healthcare? Quality education? Who gives a fuck- I want my free mp3s!

There's a reason the American _dream_ isn't called the American _reality_ : widespread socioeconomic injustice is alive and well in the United States of America.

</comment></comment></comment><comment><USER10> From the tone of many in this thread, it seems that people don't understand that non-commercial copyright is not a crime, but instead is a civil infraction -- hence why Thomas was not arrested, and not tried in a criminal court.

But the copyright industry certainly wants everyone to believe it is a crime. Looks like it is working.

Sad.

</comment><comment><USER11> Sometimes I wish hell were real so that the lawyers working double time to make sure a woman goes bankrupt over 24 songs could go there. It just doesn't make sense to have "damages" like that.

<comment><USER12> While I fully agree that this result is unjust, I would not blame the lawyers. Remember the lawyers have a professional duty to faithfully represent their client. If their client insists on pressing for the maximum possible damages then the lawyers have a professional duty to take every action within the bounds of ethics and law to get them.

This result was definitely unjust, but the lawyers are the wrong ones to blame.

<comment><USER13> What? No. The lawyers have a ethical and moral duty as lawyers and human beings to do the right thing. I'm not a lawyer, so I'll make an analogy relevant to my profession. If some guy hires me to make a picture site and then insists on a section for sex pics of children I have an ethical duty to back out of the contract.

<comment><USER14> I understand your sentiment, but you're wrong. We need lawyers who will work even for despicable clients. The reason for this rule is that everyone is entitled to legal representation they can trust.

The clients really are at fault here.

<comment><USER6> I'd say the law (not lawyers) was at fault as well, or even mostly. A legal system can't rely on the honesty or ethics of claimants and defendants to function correctly almost by definition.

</comment></comment></comment></comment></comment><comment><USER15> How do you think it stacks uo to what happened back in 2002 :

Tennessee Attorney General Paul G. Summers announced today that five of the largest U.S. distributors of pre-recorded music CDs and three large retailers agreed to pay millions of dollars in cash and free CDs as part of an agreement on price-fixing allegations. The companies will pay $67,375,000 in cash, provide $75,500,000 worth of music CDs, and not engage in sales practices that allegedly led to artificially high retail prices for music CDs and reduced retail competition as part of the agreement. Tennessee's share is an estimated $993,948 in cash and $1,507,852 in CDs.

[http://www.attorneygeneral.state.tn.us/press/2002/story/PR13...](http://www.attorneygeneral.state.tn.us/press/2002/story/PR13.pdf)

<comment><USER16> I got a check for ~$10.

Public libraries all over the country got shipping containers full of Mariah Carey deadstock.

The lawyers leading the class action got tens of millions of dollars.

</comment></comment><comment><USER17> What % of people that have downloaded a song without paying would have paid for that song?

</comment><comment><USER18> Would you steal a purse? If getting caught cost me $80,000 then probably not... So much for reasonable punishments.

<comment><USER4> Imagine the outcry if all punishments were meted out on this kind of scale. Jaywalking: 10 years hard labour!

And no, I wouldn't steal a purse, because a purse is a physical object, owned by an ordinary individual human being, who would be materially and emotionally harmed by the theft. This case of Copyright infringement involves imaginary property of enormously rich corporations who would not be materially affected by it in any measurable way. It's more akin to stealing an invisible mote of dust from the bottom of someones purse, without them being aware of it at any point.

All the evidence actually suggests that music sharing increases income for commercial music as a whole, yet sharing these 24 tracks has resulted in a $2m fine. Ironically, you would be punished enormously less for actually mugging someone and stealing their purse.

<comment><USER18> I wasn't trying to say that we should have equally barbaric punishments for purse-snatching but rather that we should have equally fair and reasonable punishments for file-sharing.

I can see how my point was made unclear by the unsuccessful joke, though.</comment></comment></comment>


Microsoft mandating Secure Boot on ARM, making Linux installs difficult - <AUTHOR> http://arstechnica.com/#!/business/news/2012/01/microsoft-mandating-secure-boot-on-arm-making-linux-installs-difficult.ars <comment><USER2> Previous discussion here: <http://news.ycombinator.com/item?id=3458679>

</comment><comment><USER3> Isn't all this fuzz just Microsoft's history hunting hem?

I mean, where's the Ars Technica article about how it's not possible to install Android on an iPhone? So unfair!

Nearly all phones and tablets (typically the devices with ARM cpus, which must be Microsoft's reasoning too) only run the OS they came with. Surely phones and tablets with Windows on them aren't the exception.

<comment><USER4> If Microsoft made their own hardware, this comparison might be more apt. Nobody's complaining you can't run Linux on 360 out of the box.

<comment><USER5> This is not a good argument: you cannot buy a tablet without operating system and install something later - you buy the package of tablet hardware with operating system.

How I see what Microsoft does now, they simply say to vendors: if you want to sell your hardware with our system, these are our requirements. Given that vendor can sell same tablet with, say, Android, what's the problem here? They won't be allowed to put Windows logo on the tablet, but I guess it's not a big deal.

Another thing that bothers me in this media noise about "Linux lockout": vendors are locking down their tablets and phones right now, without any Microsoft help - where's the public outcry?

<comment><USER6> _vendors are locking down their tablets and phones right now, without any Microsoft help - where's the public outcry?_

There's a difference between a hardware manufacturer voluntarily choosing to lock down its own hardware (which is bad), and an independent operating system vendor forcing hardware manufacturers to lock down their hardware (which is anticompetitive).

Besides, there's plenty of outcry about locked-down phones and tablets, which is why HTC announced that they are no longer locking the bootloader on their devices.

<comment><USER5> Look, Microsoft does not prohibit Samsung selling their Galaxy Tab with whatever Samsung wants to ship. They prohibit Samsung selling their Galaxy Tab with Windows 8 ARM pre-installed on it. This - tablet AND Windows 8 - is a ONE product, hence you cannot divide h/w vendor and OS vendor. This is as simple as that. Samsung is free to not to ship tablets with Windows 8 ARM - how is that anti-competitive?

ARM devices are not supposed to be fiddled with by customers in their current state, PCs are. This business model is a status quo right now, like it or not, and Microsoft plays by the rules. The game is different in PCs and Microsoft has a different position on lockdown there.

<comment><USER6> There are two critical differences between Microsoft's lockdown and the status quo of the ARM tablet market:

1\. The status quo in the tablet market is for hardware manufacturers to _decide_ whether to lock down their boot loader. Microsoft (who is not a hardware manufacturer) would _force_ hardware manufacturers to lock the boot loader of any ARM devices running Windows 8.

2\. Not all ARM devices are tablets and phones. ARM-based netbooks (i.e. miniature general-purpose PCs) have been available for a long time, and there's an expectation that you can install whatever OS you want on a general- purpose PC. Microsoft's ARM lockdown rules (as quoted on the previous HN discussion of the subject) would apply to devices that people expect to be able to customize.

<comment><USER5> 1 - Yes, Microsoft will force vendor... if vendor wants to ship their device with Microsoft OS. That's how they structure their deal with vendor. I seriously fail to see the problem here: Windows 8 ARM doesn't even exist as a commercial product and all vendors are happily shipping Android devices left and right. So, come Windows 8 ARM tomorrow - what, Android will suddenly cease to exist? Does Microsoft provision prohibit vendor from shipping same/similar hardware without logo with other OS installed? This happens right now with phones: same hardware goes for both Android and Windows Phone, no questions asked.

In my opinion, this whole "logo requirements" thing is blown out of a proportion: there's no commercial product with Windows 8 ARM, almost all Android devices are locked down, yet Microsoft gets all the heat.

2 - Presence of a keyboard doesn't make toy device a lesser toy with same toy rules applied. Besides, my $20 says that the moment we see MacBook Air on ARM or Windows 8 ARM netbook, we'll see Google revitalizing their Chromebook story or shoveling Android onto netbook devices (ASUS Transformer anyone?) and vendors happily supporting them.

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> Interesting. I wonder what stopped them mandating this on x86? (Intel _cough_ )

<comment><USER8> Windows 7, actually. It isn't signed.

<comment><USER9> And what happens when Windows 9 for ARM comes out and it's signed with a new set of keys that existing locked-down ARM netbooks don't have?

<comment><USER8> Why would that happen? Why would MS deny themselves that upgrade revenue?

</comment></comment></comment></comment><comment><USER10> Just a thought with regard to ARM hardware. Don't most Win7 slates on the market have an ARM alternative that runs Android? If that's the case, that means that manufacturers are already providing two different versions of the slates on the market: amd64 and arm; and, that means that manufacturers are already making special modifications just to provide to both markets.

Given this information, why would it not be possible, even likely, for manufacturers to continue to do this with Win8 and Android? Have slightly different hardware and sell both. Correct me if I'm wrong, but can't you run a more hardcore linux on an android device? I believe I've seen an original G1 running ubuntu (not a hardcore linux, but moreso than android).

<comment><USER11> I think it's besides the point that there are alternatives. Locked down hardware should be universally frowned upon, no matter who is trying to control it - whether that's Microsoft, Apple, or anyone else. It's downright sickening to see this being accepted at all. There are no - I repeat, _NO_ \- valid reasons to lock down hardware. It's anti-competitive, it's malicious and most of all it's an affront to Freedom. I also find it quite sad that people (with RMS among them) predicted this years, if not decades ago, and people called them _paranoid_.

We need to fight this. Do not buy locked down hardware. Boycott businesses and corporations pushing this. Tell the hardware suppliers that you will not take this. Use free operating systems and hardware whenever and where-ever at all possible. Pursue other people to do the same.

Finally, _disregard laws_ which forbid you to circumvent, render ineffective or deactivate these kinds of restrictions. Spread ways to do this if you can, anonymously. Once information is out there, it cannot be subdued again.

</comment></comment><comment><USER9> It's really disappointing to see the _same_ people commenting here with the same responses as on the original discussion (with the ARM revelation), with the same holes in their logic, just reiterating it, sure that if they repeat themselves they will sound more right.

There's more (and better) discussion on the original post: <http://news.ycombinator.com/item?id=3458679>

</comment><comment><USER12> Sigh. So why doesn't the Linux community just man-up, and start backing Linux- oriented hardware manufacturers? This pansy whiny attitude from the Linux community got tiresome 10 years ago. Today, it's just absurd.

Please just quit whining, and quit trying to "make Microsoft our bitch", and start supporting hardware companies that are already on your side, and completely ignore Microsoft and hardware companies that bow to them.

<comment><USER13> Because economies of scale mean that commodity hardware is vastly less expensive and more available than special-purpose hardware.

The number of people who set out to run specifically Linux on a tablet is vanishingly small. I say this as one of them.

<comment><USER4> The commodity components used to assemble a tablet are vastly less expensive than they would be if not used by so many other manufacturers.

Where's the Raspberry Pi of tablets?

<comment><USER8> There are a ton of craptablets based on Rockchip SoCs. Even so, a craptablet running "real Linux" would probably cost more than the equivalent Android version.

<comment><USER4> The demoscene people do some really amazing work with some very basic hardware, so why can't that kind of talent be applied to making a really ripping Linux tablet?</comment></comment></comment></comment></comment>


Genetic Algorithms: Cool Name and Damn Simple - <AUTHOR> http://lethain.com/genetic-algorithms-cool-name-damn-simple/

<comment><AUTHOR> And here is the follow-up: [http://lethain.com/genetic-programming-a-novel- failure/](http://lethain.com/genetic-programming-a-novel-failure/)</comment>


The Shaggy God - Richard Stallman in Boston Magazine - <AUTHOR> http://www.bostonmagazine.com/articles/the_shaggy_god/page1 <comment><USER2> "Strictly speaking, the complete operating system should have been called GNU/Linux, representing the combined contributions of Stallman and Torvalds. Stallman always insists on the term, pronouncing it "GNU slash Linux." But in the popular mind, it came to be known as only Linux. Stallman has never gotten over that."

The more I read about Stallman the more I find that his extreme stance is just who he is:

"He's entirely consistent and uncompromising and I think the world needs someone like that," Perens said.

[http://www.informationweek.com/news/software/open_source/sho...](http://www.informationweek.com/news/software/open_source/showArticle.jhtml?articleID=175802222&pgno=4&queryText=&isPrev=)

<comment><USER3> I'm glad he exists, though, because he makes me look like a moderate, even though I'm a pretty dedicated free software fan.

<comment><USER4> That's the Overton window and I'm glad he's pushing it.

Without him, we may still be in the world of non-disclosure agreements and closed Unices.

</comment></comment></comment><comment><USER5> "The most momentous product of Stallman's genius, Linux, was the first operating system to feature software that was entirely free."

I believe this is not entirely accurate - I seem to remember someone else being involved in creating linux...

<comment><USER6> Well, that someone used GCC and the first thing they ran on their new kernel was Bash ;-)

<comment><USER7> :-) It's curious that nobody seems to remember that "that someone" ported GCC to x86.

<comment><USER8> That credit is probably due to William Schelter. <http://en.wikipedia.org/wiki/Bill_Schelter>

</comment></comment></comment></comment><comment><USER9> Can anyone answer for me how Stallman has influenced the Cambridge tech community? What was interesting, as the author envisons "Mt. Hackmore", is that Stallman is the only East Coaster in that circle. Makes me think that in combining his personality and ethos with the venture community in Boston you could perhaps explain the very conservative investment environment.

</comment><comment> patrickg-zill Stallman got trolled (though he realized it) when Philip Greenspun did a parody page on "Heather Has Two Mommies and they go to the Zoo" : <http://philip.greenspun.com/zoo/>

Stallman's PC response, laying all on the "right wing Christian movement": <http://philip.greenspun.com/zoo/stallman-reaction.text>

</comment><comment><USER10> I understand why Stallman wants the GNU in GNU/Linux. But what's always confusing me is - why the slash? He's a programmer, so he knows that this is usually used for paths. But that does not seem to make sense if he wants this as a single name which should always be used. You can't create a single GNU/Linux folder - at least not in GNU/Linux. So anyone know why he didn't use another character there?

<comment><USER11> Probably because GNU Linux without slash would mean there may be another Linux also that's not GNU.

And yes, GNU/Linux reads like a path: here is the GNU world and here's Linux subworld.

<comment><USER12> > .. there may be another Linux also that's not GNU

Technically there may be one. While the history of Hurd shows that the opposite is not quite true. So all things considered it should really be Linux/GNU :-)

<comment><USER6> There are distros with BSD or Solaris kernels and a GNU userland.

</comment></comment></comment></comment><comment><USER13> _Stallman detests wealth_

 _He travels the world as a free software evangelist_

Which came first, the chicken or the egg?

Does he detest wealth because he is a free software evangelist?

Or is he a free software evangelist because he never figured out how to become wealthy himself?

<comment><USER14> He was successfully charging $250/hour as a software consultant prior to taking up his "evangelist" role full-time. I think he could be quite wealthy if he were to attempt to be.

</comment></comment><comment><USER15> haha...RMS didn't post that ad for himself on craigslist, I posted it on his behalf! It's so strange to see oneself indirectly referred to in an article which one otherwise has nothing to do with.

</comment><comment><USER16> He's taking credit for Linux now? wtf?

<comment><USER17> "When I do this, some people think that it's because I want my ego to be fed, right? Of course, I'm not asking you to call it "Stallmanix"!"

-rms

<comment><USER18> why doesn't he call it "ginix"?</comment></comment></comment>


Ask HN: Best Accountants in SF for growing digital advertising business? - <AUTHOR>

Any recommendations for a solid, well organized accounting team for a growing start-up in SF? We're open to both a "cloud / scalable" type solution as well as a local SF based firm. <comment><USER2> I'd be checking out the latest Indinero.com offering. Cloud-based but includes book keepers, accountants and a platform to run it all on.</comment>