Joe Stump: Why I switched from PHP to Python - <AUTHOR> http://www.joestump.net/2009/09/why-i-switched-from-php-to-python.html <comment><USER2> While Python is a great language, aren't "Things Guido doesn't like aren't supported at the language level" and "Python treats developers as adults" sort of at odds?

      * TCO is dangerous and hard, let's not support it in the language
      * ++ is ugly, let's not support it in the language
      * Assignment during comparison leads to bugs, let's not support it in the language
      * Python gives you more than enough rope to hang yourself, but at least hanging yourself is an option.

One of these things is not like the others.

<comment><USER3> I wonder why supporting TCO or not has anything to do with the language. I mean isnt it up to the compiler or interpreter? If a compiler can get the same final results with TCO, then why shouldn't it? And the definition of a language should not define how a compiler works internally only what the actual effect of the language instructions should be. Compiler writers should be free to do what they want to realize the defined effect.

BTW as someone that moved from Pascal to C and C++, I can appreciate the ugliness of a lot of C shorthand syntax. It is confusing and can cause a lot of bizarre and hard to catch bugs.

<comment><USER4> That's true; Guido only says that TCO isn't going to be written into the Python you download at python.org.

<comment><USER2> You are incorrect.

"Second, the idea that TRE is merely an optimization, which each Python implementation can choose to implement or not, is wrong. " - [http://neopythonic.blogspot.com/2009/04/tail-recursion- elimi...](http://neopythonic.blogspot.com/2009/04/tail-recursion- elimination.html)

</comment></comment></comment></comment><comment><USER5> Does one really need to explain why he switched from PHP to anything?

<comment><USER6> This sort of thing is still needed. I have a friend who's boss wont let him use anything except c, php, and perl. Any attempts to get python in there are met with resistance and vague hysteria. More posts like these from can slowly lower people's loyalty to php, and contribute to saving my friend and many like him.

<comment><USER7> Well, is Perl really a problem? Anything you can do in Python you can do in Perl just as easily; Perl actually has _more_ abstractions available for the programmer than Python. (Grammars in regexes, real closures, coroutines, a metaobject system, etc.)

Also, last time I checked the programming language shootout, Perl 5.10 is slightly faster than Python 3.

So with that in mind, the logical "step up" from Perl would be something like Haskell. Python is pretty much Perl with different syntax, less features, and the impression that it's "cleaner" because nobody ever bothered using it for "quick and dirty" scripting.

<comment><USER8> Python 3 smokes Perl.

[http://shootout.alioth.debian.org/u32q/benchmark.php?test=al...](http://shootout.alioth.debian.org/u32q/benchmark.php?test=all&lang=python3&lang2=perl&box=1)

And most people are using 2.x which is even faster.

[http://shootout.alioth.debian.org/u32q/benchmark.php?test=al...](http://shootout.alioth.debian.org/u32q/benchmark.php?test=all&lang=python&lang2=perl&box=1)

<comment><USER9> That's winning at the special olympics. They are both so slow you'd never use either for cpu constrained tasks.

<comment><USER10> That is plain offensive. The special olympics are an even greater achievement of the human body as a machine, since it must push itself with far lesser degrees of freedom.

<comment><USER11> As I saw, it was not meant to be offensive. Special olympics are for special people. They are not the best among all competitors. Most interpreted languages are not comparable to compiled languages.

<comment><USER7> Neither Perl nor Python are interpreted. They are both just slow.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER12> You have no idea how much I wish I could do this. Just testing my code from PHP 5.2 to 5.3 and there are several serious problems now that I get to find workarounds for, all while maintaining backward compatibility too.

How is it that a minor upgrade changes functions and their behaviour so much that it breaks existing PHP5-compatible code? WTF is wrong with the PHP developers?

If I didn't have so much code (whole product with contracts to support) invested in PHP, I would switch in a heartbeat and never look back.

<comment><USER13> Python 2.x -> Python 3 Ruby 1.8 -> Ruby 1.9

Do you actually know anything about languages other than PHP and want to change for legitimate reasons? Or are you just jumping on the bandwagon because it sounds cool?

<comment><USER12> I'm perfectly aware 1.8 to 1.9 was a pretty big move for Ruby folks (maybe could've been called 2.0?), and 2.x to 3 in Python, that's the time for big changes. I've also written real production software in about half a dozen languages, so yes I do. I just happen to have a codebase of 100,000+ loc in PHP that I support, so I'm kinda heavily invested in it more than the others.

It sucked trying to rework so much PHP4 code for PHP5 while keeping b/c, since that felt like the slowest community migration to a new version I've ever seen... But it seems like each additional release from PHP changes and breaks something else. My codebase is older than many, so it's possible that's made it a bit more brittle over time, but things like completely changing the allowed characters in .ini file keys from 5.2 to 5.3 I find baffling. Yes, speed things up or improve things, but consider that existing liberties you've allowed may come to be relied on by your users. If you let them do something in 5.2, make sure they can still do it in 5.3. I'm always careful myself to make sure existing code will continue to work, and new features are offered as optional or via new APIs. Code from 3.x of my software continues to run fine on 5.x as a result, which lowers my support burdens.

So again, no I'm not just fanboying for other languages or falling for the "grass is always greener" line of thinking. PHP just has certain inelegant things that I find add to my overall frustration over time. I value terseness, so things like -> versus . for objects adds up, just like $ versus nothing for variables wears at the wrists too. I value consistency, so not remembering which parameter goes first for in_array() versus strpos(), or why the differences in naming add up too. Those are minor things that have been present from the start, but then when I start getting emails from people saying my software is messing up and I find out it's just that the latest version of PHP totally broke something I'd been relying on, that frustration is amplified tenfold.

</comment></comment></comment><comment><USER6> Hah, just be careful, having to go back the other way is kinda painful. I keep a file for myself called pythonisms.php in it i define a few functions that let me continue to think in ways I've come to love in python. One example, the get function. It takes 3 arguments, and works like python's dict.get(). I seriously have no idea how I did php without it.

</comment><comment><USER14> I'm going in the other direction right now. I have a sheet of notes titled "PHP WTF". Seriously, PHP is such a mess. Thank Jesus for Thrift <http://incubator.apache.org/thrift/>

</comment><comment><USER15> As a former academic gone mercenary, I love that programmers of all skill levels can get into organization, language and specification through Python. It's a wonderful gateway to learning, and in this case, it seems to have done exactly what Python was specified to do!

For my own projects, I've used pretty much all the fad languages from BASIC to Pascal to C. I've used industry-adopted languages like Tcl, Java and Perl. I've experimented with Lisp and Erlang.

After all is said and done, I like Python/Cython/C. It gives me the option to use a glue language for the Windows programming I've done, which is perfect. It gives me a compiled (albeit ctypes-restricted) subset language for writing hashing/storage/whatever functions. It gives me a super-awesome library set that comes built-in.

I know it'll go away someday, but I'm glad to have worked in Python for as long as I have.

<comment><USER3> You must be old. Basic hasn't been a fad since the 80s.

<comment><USER4> I assume he means VB(.NET).

<comment><USER15> Now that this conversation is closed up, I'll date myself further. I do not mean Visual Basic (nor Victoria Bitter.)</comment></comment></comment></comment>


The Global Consciousness Project - <AUTHOR> http://noosphere.princeton.edu/

<comment><AUTHOR> I'll add that I don't personally believe in this effect and think its probably due to misusing stats, but I'd like to hear other peoples views.</comment>


Does Your Mom Pay Your Phone Bill? - <AUTHOR> http://priceonomics.com/does-your-mom-pay-your-phone-bill/ <comment><USER2> Only skimmed through this, but it seems to miss one important point: In Germany (1st spot for self-sufficient teenagers in this study) it is perfectly possible to pay for the normal phone/text/data coverage as a teenager by using cash or maybe a bank account. In the US, however, you need a social security number, good credit, proof of address (i.e. unrelated items teenagers often do not or can not get) to purchase your average cellphone plan.

<comment><USER3> Do you have to provide all that info just to get a prepaid plan?

Can a tourist get a SIM card in the US?

<comment><USER4> It's a PITA to get a SIM card when visiting the US -- for example, I had to order online from T-mo's website, and they limited the number of SIMs to some arbitrary limit per calendar year (so good luck if you are in shared housing and the previous set of interns/tourists has exhausted the limit for the year).

Getting a SIM card in store seemed to require signing a multi-year contract, so I ran as far as possible before I could figure out whether they wanted my SSN or not.

<comment><USER5> The SIM cards for T-Mobile & AT&T prepaid come packaged with cheap (~$20) feature phones and are available in almost every national chain drugstore, supermarket, and general retail store in the US.

<comment><USER4> It seems wasteful to buy a feature phone if I know I have a phone that works on their networks, though.

</comment></comment></comment></comment></comment><comment><USER6> I'm 24, US, and I'm paying for my parents' and sibling's plans. I must be doing something wrong.

For the US though, perhaps the reason is that many teens start off on family plans and simply never move off because it's slightly more reasonably-priced on the whole?

<comment><USER7> Family plans are actually significantly more reasonably-priced, if you have several phones. Incremental cost for additional lines is very cheap.

</comment></comment><comment><USER8> I pay the additional cost ($10 line + $30 data) for my phone on our family plan.

This is _drastically_ different from "paying my own phone bill" which would be $100/mo for equivalent service.

Lots of people now are taking advantage of family plans to get reasonable pricing. Even my personal finance teacher (fourtysomething) is on a family plan with his extended family - it's allowed and it's cheaper.

<comment><USER9> I've got news for you. You're getting ripped off by AT&T. Unless you are a heavy user $40 is more expensive than what you'd pay on a prepaid provider. There are a number of options such T-Mobiles $30 prepaid plan (that's somewhat hidden and includes 5GB of 4G data, unlimited texting and 100 minutes of voice), Ting (which can be very cheap if you are only a moderate user and as low as just $15 with up to 100 minutes, 100 texts, and under 100 MBs of data), and a bunch of other cheaper options.

I'd encourage you to look at your actual usage and reconsider these all you can eat plans. They really are not that great of a deal unless you're a high usage user, which a lot of people are not.

Another point I'll make is be careful about looking at your reported usage. I'm not sure about AT&T since I haven't had an account there in a while, but Verizon can be very missleading (often showing your usage rounded up to the next nearest whole GB e.g. 100MB shows as 1GB on the usage part of your bill). In the case of Verizon I had to retrieve a CSV file and add my own usage up to realize I wasn't using as much as I thought I was.

<comment><USER8> I live in the suburbs of a second-string city. In (and more importantly between) the suburbs and exurbs, prepaid and MVNO coverage is Swiss cheese at best.

My primary use case for cellular data is navigation, which is most important precisely where MVNOs and T-Mobile Prepaid are entirely dark. My first phone was T-Mobile prepaid and while their customer service was friendly, their network was not within an order of magnitude of useful if you got any further from downtown than my house.

This might be a good strategy for someone who never leaves a major metropolitan area though.

EDIT: Also I have Verizon, which is rock solid in this market. Since I ditched prepaid, I've never been without cell coverage except inside of very dense buildings.

</comment></comment></comment><comment><USER10> You know, I pay my own phone bill, but I don't really care if someone's mother paid their phone bill.

I can't understand articles like this one that want anything and everything to appear as a scathing indictment of millennials (or perhaps only millennials in the US).

Even if it were, so what? Parents don't live forever and if some are too dependent, they won't always have the luxury.

<comment><USER11> Nothing in the post indicts millennials, and in the post linked by this one, they even say that millennials find themselves "screwed by financial storms caused by another generation".

<comment><USER10> I am reading the title and the notion that "it's somewhat reasonable for your parents to pay your phone bill when you're a teenager. How about when you're a young adult" as slightly negative. As well as reading "Perhaps this is further evidence that in the US, millennials are pretty much screwed without the parental safety net?" as negative. While it's not an indictment per se, often these sentiments are indicative of an underlying "anti-millennial" thread. Perhaps I'm only projecting a subtext.

</comment></comment></comment><comment> jack-r-abbit I am always skeptical of studies that make "teenager" a combined demographic with regards to their expected responsibility (as opposed to likes/dislikes, etc). Being 19 is worlds apart from being 15. At 15 I still lived at home, worked on some farm for ~nothing and my dad provided me with everything a parent should. This is pretty much what was expected at the time. (It was a while ago so a cell phone was not even really an option). But at 19 I had already moved out and was 100% supporting myself. This is also pretty much what is expected, at least by parents. :) So to lump them into the same group in a situation like this strikes me as odd.

<comment><USER12> Well, times are chanching and the adulthood is coming later than in the 70/80/90's nowadays. We have that whole adulescent[0] hing lasting well into the early 20's.

[0] Adulescent is a french word that is the contraction of the "adulte" and "adolescent" words. Basically: extended teenagehood into the 20's.

<comment><USER13> That seems like a good thing. I never understood why classmates seemed to anxious to get their own car, start paying their own rents, and so on.

</comment></comment></comment><comment><USER14> I think the main thing is that on most of the major national carriers here in the US, it's cheaper to either pay your parents (or someone else) your portion of the line on the family plan (usually $9.99 + data plan), or in the case of the new share plans, $30-$40 for a smartphone. Compared to setting up your own individual plan which would cost even more.

Now, from experience, my sister (36) only just got off my parent's family plan this June. I myself (22) do not plan on getting off my parent's Verizon plan anytime soon because I want to retain unlimited data as long as it's available.

If it does get to the point of where they want be off their plan, I will have to go with T-Mobile or another pre-paid carrier because there is no way in hell I will pay $100/month with Verizon just to have a single smart phone.

</comment><comment><USER15> It'd be interesting to look at how much of the 20-24 demographic is college students. In the US at least it's pretty normal for parents to pay for their children's phone bills while their in college[1]. Since about half of the 20-24 demographic is likely in college (in the US at least), I'm not too surprised to see that about half of the people in the US have their phone bill payed by their parent.

I'd be interested to see the demographic breakdown as high school, college, or not in school. I think it would offer more insight into a trend.

[1] This is anecdotal. I'm in college currently and most of the people I know are on family plans.

<comment><USER16> I don't get why that should be normal even if in college? I'd guess that 95-100% of my university class mates paid their own bills when I was in that age group in Iceland.

Personally I've been paying my own bill since I got my first mobile at 14 in 1999...

But I do wonder if this does actually include PayAndGo correctly?

<comment><USER17> In the US, family plans are often more economical so teenagers keep them when they go to college. I believe many people work out deals with their parents so that they pay for part of the bill.

If it were cheaper to get their own plan, most probably would.

<comment><USER16> I guess you might be right. I may be too used to the Icelandic mentality where if they'd notice something like that they'd think "Let's just allow for a sub- subscriber plan and charge them an extra 10% for a 'related plan' but with the same rates but different billing. They get there separation of concerns and we get a 10% extra."

</comment></comment></comment></comment><comment><USER18> From my experience, phone plans in the US today are kind of like rent- controlled apartments: The prices for new entrants keep going up, so you have a very strong disincentive to switch plans.

I have a 4-or-so year old plan with a major carrier. I looked in to switching during the most recent round of phone upgrades, and found that my grandfathered plan was at least 15% cheaper than anything on the market that matched my usage.

I suspect this is also a major disincentive to leave your parents' plan. Even if you pay the whole bill!

</comment><comment><USER19> This looks like another one of those shallow statistics that people use to say "Ha, look at these kids, they're lost without us!"

I feel like a lot of people think like that because they don't realize that working with computers IS a job, even if you aren't working 9-5 every day unclogging sinks.

</comment><comment><USER20> So if I don't pay my own phone bill then my Mom is paying it? There are other possibilities. Maybe my employer pays my phone bill. Maybe _your_ mom pays my phone bill.

</comment><comment><USER21> Mobile carriers in the US offer substantial price cuts for bundled phone services and very high average subscription prices. There's not enough information here to be useful.

</comment><comment><USER22> In Brazil, it's a luxury to pay for phone/text/data, teenagers and young adults have to pay for themselves because their parents can't pay the bills anyway.

<comment><USER23> Where's that?

I spend ~$5 (R$ 10) a month on my prepaid data plan. I have to put ~$17 (R$ 35) in credits every 90 days or so.

</comment></comment><comment><USER24> to be honest... here in the US i know unrelated people that are in each other 'family plan' just because of price.

price here is awful, so, the more the merrier.

</comment><comment><USER25> Phone service is also much more expensive in the USA. In the UK, I pay £25 per month, in the US it's $70.

</comment><comment><USER26> That article comes to grand conclusions from a little bit of data.

</comment><comment><USER27> Note that Indian phone market is primarily pre paid.

</comment><comment><USER28> Betteridge's Law of Headlines applies.

</comment><comment><USER29> wtf, I pay my mom's phone bill.</comment>


Null Coalescing operator (?) in C# - <AUTHOR> http://www.codingdefined.com/2014/07/null-coalescing-operator-in-c.html <comment><USER2> I'm a simple guy. I see C#, I press upvote.</comment>


Why is Linux more popular than BSD? - <AUTHOR> http://serverfault.com/questions/36359/why-is-linux-more-popular-than-bsd <comment><USER4> For me it was because back in the early days of both, BSD folk had a bad attitude.

First encounter: I wanted to try BSD, but it would only work with its own partition format. You could not have a disk partitioned for both DOS/Win and BSD. The BSD folks didn't think that was important--if you really wanted to dual boot, get a second disk.

Linux could dual boot with DOS/Win on one disk, so I used Linux.

Second encounter: BSD did not support IDE CD-ROMs. When asked when they would be supported, BSD folks said IDE was not good enough for workstations and servers--get a SCSI CD-ROM.

The problem with this was that SCSI CD-ROM drives were around $400. IDE CD-ROM drives were under $100. If you were going to make heavy use of the drive, that $300 difference might be justified. Most people were NOT going to make heavy use of the drive--it would be used to install the OS and then sit unused until it was time to install the next version of the OS.

Linux would install from my IDE CD-ROM drive, so I used Linux.

By the time BSD got to the point that it could coexist well with DOS/Win, and didn't have ridiculous hardware requirements, Linux was sufficiently mature and established that there just wasn't much point.

</comment><comment><USER5> You need look no further than this question to see that something is rotten in the state of Stack Exchange. The question was asked in July, posted to HN 2 hours ago and locked an hour later. There is nothing flamebait-y in the answers. It's good stuff actually.

As to the question at hand: Linux was more accessible and this was back in the pre-1.0 days (my first distro was ~30 5.25" disks of SLS downloaded over a 2400 baud modem). It happened to support hardware I happened to have.

Honestly at the time it ever even occurred to me to use BSD or even that I could.

<comment><USER6> ServerFault (and most SE sites) aren't designed to have vague quasi-religious debates about something as nebulous and subjective as why Linux became more popular than BSD.

The network is supposed to be a focused, solution-centred set of sites - <USER2> evinced by this from ServerFault's FAQ:

"You should only ask practical, answerable questions based on actual problems that you face. Chatty, open-ended questions diminish the usefulness of our site and push other questions off the front page."

<comment><USER7> Recently I was looking on SE question about emacs which was closed but was deleted. Why doesn't someone launch a site for such questions?

<comment><USER8> Quora?

<comment><USER9> Quora had potential, but is dead now. And I mean literally.

</comment></comment></comment></comment></comment><comment><USER10> Speaking of the free variants of BSD only, and from my point as an interested bystander: Linus Torvals was a much better community manager than Bill Jolitz.

386BSD was extremely buggy, and Bill Jolitz was dismissive about the community effort to improve it. He appeared from his Usenet posts to be in some kind of emotional pain. Without a natural leader, the community fragmented. One group made a "patchkit" to collect fixes to the official distribution. Another group cut ties, making their own distribution (NetBSD). Eventually the patchkit group also got fed up with Bill Jolitz lack of cooperation, and released the patchkit version as FreeBSD.

Meanwhile, the Linux people seemed to have fun. Linux was even more buggy and far less featureful, but was improving fast from the collective effort of the community. Sometimes they made (for an old Unix person) atrocities like "color-ls". And their willingness to diverge from old Unix paradigms did make their software more convenient. color-ls is actually kind of useful.

The Linux developers seemed to consist of college kids being enthusiastic about a hobby they all loved. The BSD developers seemed to be hard working software professionals, making great personal sacrifices for a BSD cause. The first group was simply more fun to be around, so the community grew faster, especially among college students.

When the college students graduated, they took Linux with them to their new jobs.

...

Come to think of it, it actually mirrors the early BSD vs SysV UNIX cultural divide. Or even early Unix vs pre-Unix OS's.

<comment><USER11> > Linus Torvals was a much better community manager than Bill Jolitz.

Must be, I don't remember ever hearing of Bill Jolitz. And I've used (Open)BSD to build firewalls back in the day.

</comment></comment><comment><USER12> Speaking for myself, I chose Linux over BSD as main OS back in the day (~1998), even though BSD was "hot" in hacker circles, because Linux had a slight edge in convenience. Configuration of X and such were slightly easier with Linux (Slackware back then), and HW support was somewhat better (though FreeBSD came close).

Also Linux has the GNU utilities (GNU grep etc), which were somewhat more featureful than the BSD equivalents. I know they can be installed on *BSD though the ports system but as I was new to unixy OSes, having a lot of packages installed by default was great.

I have no idea how it is these days, Linux just stuck.

<comment><USER13> I too started with a linux in the late 90's but moved to Free/OpenBSD by 2000 as IMO the BSD community had got it's shit together and the Linux community had turned in to a shambles optimised by slashdot style commenting everywhere.

By that point the BSDs supported most common hardware and didn't suffer from fire and forget IDE drivers which corrupted my Linux servers at least once per year. Although they were slower they just seemed to work. Combine that with a rational layout of /etc /usr/local/etc and all the other places that UNIX's squirrel away files and BSD just stuck for me. I haven't looked back as far as servers go.

The desktop is another kettle of fish though. Ubuntu is still far better than PCBSD but both are still lightyears away from the polish that windows/mac desktops have.

</comment></comment><comment><USER14> The dirty truth: Marketing.

Back in the 90s there was a major push to market Linux by a wide number of vendors from Red Hat to IBM if I recall correctly. In the dot.com 1.0 era you couldn't leave a tradeshow without being given a t-shirt or stuffed toy of the tux mascot. You could also go into a bookstore, but a book on a book on Linux and get a free CD with an installer. You could also go into a computer store of that era and buy a boxed copy of Linux. This made Linux really popular with the first generation of web geeks.

<comment><USER15> True, except BSD had an installed base and a base of advocates back then dating back to the 1970s. BSD was _the_ hacker Unix back when you could still credibly build a workstation around Motorola 68000 derivatives.

Now, the standard narrative here is that BSD was under a legal cloud in the early 1990s due to the USL v. BSDi lawsuit, but BSDs still existed in 1993, when the lawsuit was settled. Was the Linux marketing machine that dominant in 1993? Even before the kernel had hit version 1.0?

<comment><USER14> I think that's why BSD became to base of NeXT which was really in the workstation space at the time (and would later become Apple OS X). The thing with Linux was that many early web hackers would take a used PC and turn it into a server as their first hello world project. However many of these webmasters weren't hardcore Unix geeks with CS degrees but hobbyists -- and then the hobbyists turned pro.

</comment></comment></comment><comment><USER16> I started with Linux many years ago and used various distributions. I rarley had any driver issues. Sine some years now, I am using OpenBSD for all my personal stuff. My desktop and my server. I will never go back to any Linux Distribution as OpenBSD is so much cleaner, consistent, easier to use and better documented than any other distribution out there. There are two problems with OpenBSD. At first the hardware support. I choose my machines carefully so that OpenBSD is supported which is not that easy sometimes. The second problem is the JVM. At my work place, everything runs on Linux servers with Oracle JVMs so I have to use that. OpenJDK 7 is already pretty stable on OpenBSD but the behaviour can vary too much so that this is not an option.

<comment><USER17> ...can you elaborate on why? really, I'm interested. I mean I get that having the same OS for a server and for a desktop simplifies things, but... how did you arrive at OpenBSD? ...did you first go through FreeBSD? I'm sure other people will be thankful too if you'd blog about your experience!

(Note: I'm currently investigating a "cheapest to maintain" solution, and by this I mean man-hours, not upfront costs, so I could choose Windows Server just as well - not that I would do that - for both my personal server and the servers of a bunch of NGOs that I help with sysadmin stuff for free... and was wondering if something like FreeBSD was better than Ubuntu Server LTS ...I want something that I could just "drop it there and leave it running for 5 years", but at the same time there will be some packages - like webserver and related that I will want to keep to the latest stable versions, like upgrading every few months or so; and yes, I do care about security, so being of to date on all security fixes and at the same time not having to keep fixing an recompiling stuff...)

<comment><USER16> Yeah I had FreeBSD on the route before OpenBSD. FreeBSD was a very disappointing experience for me. This is some years back so the situation may be better. Back then, a lot of ports were broken. It felt that every second port did not compile. The second thing was that FreeBSD is like most Linux distributions: It tries to support everything and that is bad. If you have a problem and ask how you solve that with FreeBSD you mostly get the answer: you can use X or Y or Z. X has this disadvantages, Y was not updated for years and Z has no documentation. I also tried to try NetBSD but it panic'ed on all my machines during boot.

Disclaimer: I am an OpenBSD fanboy because it opened my eyes. OpenBSD's base system already solves 90% of my problems with exactly one, perfectly maintained and documented solution. You want a firewall? Choose between pf, netfilter or something else on FreeBSD. On OpenBSD the answer is "use pf" (which is btw by far the best paket filter I every experienced). The port system just works, is up-to-date and has good default configurations (and I never missed a package). Maintenance is very easy. It is not as easy as apt- get update && upgrade but the release upgrade (every 6 months) never broke anything on my systems (and takes just 10 minutes). Besides that, there is nearly nothing to do. Here is the bug/update list of the current release (5 months old): <http://openbsd.org/errata51.html> The last thing I want to mention now is the consistency in all tools. For network configuration there is ifconfig which can just handle everything (e.g. on linux you have to use special tools for wlan). You have great manual pages. The manual pages are real manual pages with introductions to the systems, various high level topics down to device nodes etc. They are completely up-to-date and the best source for all informations.

<comment><AUTHOR> Fantastic! I love fanboyish opinions. :) OpenBSD installation this weekend for me. I love to try out distros/OSes.

</comment></comment></comment></comment><comment><USER18> Amazing. The question gets linked, gets attention, gets the answers improved (slightly, but it had only been a few minutes), and so a mod rushes in to lock it immediately.

<comment><USER19> It's ridiculous. This attitude of only allowing questions that could be answered with provable and verifiable fact is going to keep stackexchange from ever moving into non-exact-science territory succesfully.

I'd love a stackexchange site on history, for example. but there's no single question on history that wouldn't get moderated away with moderators like this.

Except "Does the majority of expert believe that <question>?", of course. And yeah, that'll help.

<comment><USER20> Until then, we have <http://www.reddit.com/r/AskHistorians/>

</comment></comment></comment><comment><USER21> Because worse is better.

If you count OSX as BSD than far more people use BSD desktops than Linux desktops. But if you count iOS and Android then it starts to become a toss up.

<http://www.jwz.org/doc/worse-is-better.html>

<comment><USER22> Would you count OSX as BSD? It seems to me to be a hybrid thing, far more questionable than android as linux.

Either way, I assumed we were talking about things that are more commonly held as BSD and Linux. In which case the question doesn't even specify desktops - linux is the dominant OS in the server and embedded markets.

<comment><USER23> Last night when I instinctively typed 'man ascii' on OSX and it came up with that man page, and when I do 'ls -lsh |sort -n' to sort files by size _and_ also have the human readable sizes visible, I keep being reminded that OSX is still very much BSD under the bonnet, for me.

<comment><USER22> That's just the userspace on top of the kernel though, not the OS (IMHO), though it's difficult to decide where to draw the line. By your measure Debian/kFreeBSD could well be linux...

I know OSX is a valid and real UNIX, and the kernel is a mach/BSD hybrid, I'm just not sure I'd count it as a BSD when the question is 'Why is linux more popular than BSD?'. IMHO the question implies Open/Net/Free/Whatever BSD, not OSX. What makes OSX popular is a whole variety of things, many quite separate to the things people find appealing (or not) about the BSDs. IMHO, YMMV, etc etc

<comment><USER21> BSD is an operating system, Linux is a kernel, checkout the FreeBSD / OpenBSD / Darwin sources and you'll find a complete OS in the source tree.

Debian/FreeBSD isn't linux because it doesn't use the Linux kernel. I think there is more question as to wether most Linux distributions are Linux or GNU/Linux than whether Debian/FreeBSD is Linux.

Hopefully RMS doesn't read this comment.

<comment><USER22> If BSD is an OS then I don't think OSX is a flavour of BSD...

I don't disagree with any of what you're saying there, I just think it's a very grey area where you have multiple kernels and userlands, some of which are fairly easily interchangeable. And yes, most linux distro's are GNU/Linux (or at least something/linux) where Android/Linux is quite distinct.

</comment></comment></comment></comment></comment></comment><comment><USER24> Probably better hardware support. Also FreeBSD installation has been extremely arcane until recently.

I'm a long BSD fan, worked professionally on FreeBSD kernel and used OpenBSD a lot (and still do!).

However you can find BSD in many appliances and if you have a Mac, you use FreeBSD!

</comment><comment><USER25> After reading the comments I was expecting something else :)

I think one reason could be that they follow different philosophies: as end user you're going to use a Linux distribution, that includes a kernel, userland tools, applications, etc; whilst in BSD the kernel is very integrated with the userland tools and the base system includes a lot of functionality that can be completed with the ports (package system), so you're using the BSD system + some packages.

I enjoyed FreeBSD from 4.1 to 4.10 as desktop OS, and OpenBSD from 2.8 to 3.8 (web/mail servers, but firewalling mostly), and upgrading was a difficult task. I must thank to these operating systems I have the sysadmin skills I have now ;) Back then (I don't know if things have changed) you had to upgrade _the system_ , while in Linux you could download the latest version from kernel.org, compile and install (ABI/API didn't change frequently, at least).

This different philosophy has pros and cons, and I believe one of the consequences is that Linux is more popular than BSD.

</comment><comment><USER26> Wow, it wasn't that long ago when this was flamebait of the highest order.

Linux has always been better at supporting a wider array of consumer hardware than *BSD. That combined with the Unix(TM) lawsuit lead to the quick early commercial success of Linux on 32-bit Intel hardware. The rise of the internet did the rest.

<comment><USER27> Interestingly OpenBSD has had stronger wifi support than Linux at times in the past few years. They are very aggressive about getting rid of binary blobs, so they throw a lot of effort at that problem.

</comment></comment><comment><USER28> Better Audio Support in Linux So that i can watch movies and listen to songs.

</comment><comment><USER29> I think the first answer on SF is correct but there is one factor that is not accounted for, IMHO, which is Linus. Who is the "BSDBDFL" ?

The free/net/open/dragonfly forks may all be interesting, but they fragmented the community. I'd blame the lack of a single strong leadership.

<comment><USER15> > Who is the "BSDBDFL" ?

The BSD Benevolent Dictator For Life? Nobody. The BSD world has been fragmented since the 1980s at least; even before the proliferation of Open Source BSDs, there was a little tribe of closed-source BSDs being sold by workstation manufacturers and going up against the similarly closed-source System V OSes to be King of All Unix.

I suppose my point is the BSD universe long predates the modern concept of Open Source and, therefore, a lot of the current practices surrounding Open Source software.

</comment></comment><comment><USER30> For me it was the ports system; they were a very cool idea at a first glance but when they broke.... and that did happen a lot. Then RHEL and clones came and that was the end of the FreeBSD for me: I could finally make system updates without heart palpitations and abi/api changes.

A proper package management system and binary packages might have saved FreeBSD in the data centre; maybe it could still do, though it's a very long shot now. It's a shame really...

<comment><USER31> You might want to check out the new pkgng system, if you still care.

<comment><USER30> I still care, but pkgng doesn't seem to solve that problem. What solves some of the problem is Debian GNU/kFreeBSD; but that came a bit too late.

</comment></comment></comment><comment><USER32> GNU always seemed more user friendly to me. The BSDs didn't have long options (--help, --version, etc..) so BSD commands and shell scripts always looked cryptic.

</comment><comment><USER33> Because of Mandrake: it just worked, hardware support was better, and it had a pretty GUI installer.

</comment><comment><USER28> Because of Lawyers.

<comment><USER34> Actually because of senior managment who told the company lawyers to take action. But yeah, this is the correct answer. Go figure it's at the bottom of the thread.

Linus was a 386BSD user, or hoped to be. A lawsuit stopped people like him from getting their hands on the BSD code to play with, so he wrote a UNIX clone himself using MINIX as a model. Eventually the legal situation with BSD was cleared, and BSD became free and available to everyone, but that wasn't until 1993 or so. And even after the lawsuit some people still wanted to make money selling BSD for the PC. (They failed.^1) By that time, lots of people had already shifted to Linux as the "free" available UNIX as it was readily available. Why pay for CD-ROMs of BSD when you could freely download Linux via FTP?

1\. But just look at Apple. BSD is in lots of commercial products, though you might not always realize it.

<comment><USER11> > senior managment who told the company lawyers to take action

There's lawyers that "take action". Then there's lawyers who advise. Senior management gets advice from a few sources and then makes a decision. If that decision involves lawsuits, patents or any other type of legal action you can be sure the idea originated with lawyers.

</comment></comment></comment><comment> X-Istence Since we are on history anyway, does anyone know of a good answer to my question?

[http://serverfault.com/questions/5095/historical-question- wh...](http://serverfault.com/questions/5095/historical-question-why-does- slice-c-or-slice-2-cover-the-entire-disk)

</comment><comment><USER7> Linux vs BSD question on servervault makes me think that, as the history of computation is getting older and older, facts become fuzzier and legends start to form, a mythology is born. Linux vs BSD, BSD in OS/X?, Emacs and Xemax and..

</comment><comment><USER35> This might be off-topic but: Would a single operating system been a more productive use of developer time? ( I'm looking at this from the standpoint of someone whos building embedded systems upon open source )

<comment><USER36> > Would a single operating system been a more productive use of developer > time?

Yes, but a runner-up would be operating systems that can use each other's code, as is often the case with *nix-like operating systems. Given the natural tendency to fork operating systems, at least there's a way to cross-port code that works in most cases.

Oh -- I just realized you're asking this from an individual perspective. The answer is still yes -- you're better off focusing your attention on one OS. If you don't, you'll be competing with people who do, and they'll be more productive.

</comment></comment><comment><USER37> Years ago when I had to make the choice, it was easy: Linux supported a larger amount of hardware. I didn't really want to spend all of my time writing drivers when I had other work to do.

</comment><comment> guard-of-terra Every time I've touched BSD I screamed in Agony.

It usually has non-working vi (beeping at the sight of arrow keys), ancient shell, colourless ls and other commands lacking about every other key I throw into them.

I understand that BSD has _traditions_ to do exactly that that you will now defend, but those traditions are not unlike muslim africa that tell them to circumcise young girls or kill for blasphemy. Traditions are baaad, mkay? Not gonna get any new users with traditions. Admit that getting new users is not any of your priority and you lost because of that.

Technically BSDs were always interesting, but you can't bring yourself to use this awkward tool.

<comment><USER38> I've never experienced any of these problems. vi always works for me and has done since about 1997. The shell is usually a bourne derivative - no problems there. Colours - you really don't need these in ls.

Coloured "ls" is one of those things that is absolutely entirely useless if you actually know how to use ls.

I find all BSD derivatives to be professionally documented, extremely reliable and with very few hidden surprises.

Compared to digging through GNU info and the utter bloat that most of the GNU toolchain has become[1] and favourite system tool dependency hell replacement of the hour (upstart, udev, dbus etc) it's absolute bliss.

[1] *BSD distributions are all slowly phasing out GNU toolchain due to these problems.

<comment><USER39>
        I've never experienced any of these problems.
        vi always works for me and has done since about 1997.

This would be because you don't expect to navigate around vi with arrow keys when you're in insert mode.

[Although I've tested this on openbsd this morning, and even that seems to be supported now - a shame, it promotes bad habits.]

I'd guess that (like me) guard of tera came to unix via a redhat derivative, and developed all sorts of bad habits there which makes the transition to other unixes more difficult.

For me, this is a major reason for the success of linux with young developers - it makes some things easy and friendly, but in doing so locks you in to expectations that stymie your development. Not unlike Microsoft Word.

        Coloured "ls" is one of those things that is
        absolutely entirely useless if you actually know
        how to use ls.

Another example of the same dynamic.

<comment> guard-of-terra My keyboard has arrows and therefore I'm going to use those.

And I'm not getting off _our_ lawn.

<comment><USER38> So does mine but they're too far from the other keys...

<comment> guard-of-terra I don't care because I can actually move my arms. Even better, if I move them a bit during the day, the chance of getting carpal tunnel is reduced.

</comment></comment></comment></comment></comment></comment><comment><USER40> Peer effect. Bandwagon effect. IBM/Redhat. web-hosting companies. Oracle. Ubuntu.

</comment><comment><USER41> Bad karma for the socket API.

<comment><USER39> I realise you're joking, but interested to read more. What drives you crazy about the BSD socket API? Is there another model you've seen or worked with that improves on it?

I've never really considered the socket API in terms of whether it's good or bad - it's just part of reality. But I'm interested to know more.

<comment><USER41> To be honest, it's been a while since I seriously looked at the alternatives on the lowest level, as BSD sockets basically won - nobody's looking at OpenTransport or TLI anymore.

But I do think they're way too overexposed. It's a very low-level system, with lots of related system calls, ioctls etc., requiring the user to do all the error checking, setup and boilerplate. All error-prone, too many L3 addresses passed around and altogether a mixture of several decades of network programming.

Assuming that's all really necessary on the lower levels (don't want to get into that, not my area of expertise), it's still not something a common systems programmer should face. You might know about the details, just like you know about TCP/IP packets, network layers etc, but more 80+ percent of your day job you shouldn't need to care about that. It's like constructing output piece by piece, with print_number(12); print_string(" / 2 = "); print_number(12/2); print_newline(); etc. Nobody but the most ardent DJB fans would want to do that. But for sockets it's basically expected. Network programming would've needed a printf-style interface from the early days, now it's too late to wrap the basic, the proliferation of incompatible high-perf syscalls didn't help.

I don't want to appear like one of those smug Plan 9 purists, but they did something right. Apart from treating network communication and file systems the same way, they also had some nice wrappers for the lower level stuff, e.g. <http://swtch.com/plan9port/man/man3/dial.html>

But yes, I'm mainly joking about "bad karma". Getting something right in the first place is hard, and often you don't get second chances.

</comment></comment></comment><comment><USER42> Let's weave narratives!

</comment><comment><USER43> For me, it came down to taking the rest of the system as seriously as the kernel. I first installed Linux back in the 0.9 days and it was interesting but no more so than 386BSD or TSX-32: boot the kernel and spend time trying to get applications to compile. Forward ahead a year or two to Slackware where packages installed in a few seconds rather than significant fractions of an hour (yay, 20MHz 386!) because they had binary packaging and updates were relatively simple, freeing time to write code in this hot new Perl language rather than trying to compile it.

I tried FreeBSD & OpenBSD repeatedly over the years, even running a key company server on OpenBSD for awhile in the late 90s / early 2000s - <USER3> was compelling - but I noticed two things:

1\. BSD users treated updates like going to the dentist and put them off until forced - not without cause, as ports frequently either broke things or simply spent hours rebuilding the world - whereas Linux users generally spent time working on their actual job rather than impromptu sysadmin. "apt-get update && apt-get upgrade" had by then an established track record of Just Working and fresh install time for a complex system was measured in minutes for Debian (iops-limited) and, even as late as 2004 or so when we ditched the platform, days for FreeBSD even when performed by our resident FreeBSD advocate. I'm sure there are ways to automate it but while routine in the Linux world, I've never met a BSD user in person who actually did this.

2\. The _BSD systems were simply less stable, often dramatically so, because the parts were never tested together: you had the kernel which is stable and deserves significant respect but everything else was a random hodgepodge of whatever versions happened to be installed the last time someone ran ports. Unlike, say, Debian or Red Hat there was no culture of testing complete systems so a few months after a new release you'd often encounter the kind of "foo needs libbar 1.2.3 but baaz needs 1.1.9" dependency mess which required you to spend time troubleshooting and tinkering – a class of problem which simply did not exist at the system level for most of the Linux world. It wasn't as bad as Solaris but the overall impression was more similar than I'd like.

One other observation: during years of using Linux, FreeBSD, OpenBSD, Solaris / Nexenta / etc. on a number of systems (the most I've managed personally at any point in time was around ~100) there were almost no times where the actual kernel mattered significantly in a positive direction. Performing benchmarks on our servers or cluster compute nodes showed no significant difference, so we went with easier management. On the desktop, again no significant performance difference so we went with easier management and better video driver support (eventually why many desktop users moved to OS X - no more GL wars). There was a period where more stable NFS might have been compelling but the _BSD and Linux NFS clients both sucked in similar ways (deadlocking most times a packet dropped) and the Linux client got better faster and we ended up automating dead mount detection with lazy-unmounts to reduce the user-visible damage.

<comment><USER44> _BSD users treated updates like going to the dentist and put them off until forced_

Not typical of any BSD sysadmin I've known, ever. OTOH if your "BSD users" were not sysadmins that would explain it.

 _install time ... days for FreeBSD even when performed by our resident FreeBSD advocate_

Clearly your "FreeBSD advocate" did not know what he/she was doing. Without provisioning a FreeBSD install should not differ from an Ubuntu or RH install by more than a few minutes (in either direction).

But in a datacenter provisioning is critical, and FreeBSD ceeded that space to RH's kickstart long ago. _BSD also tied a ball and chain deprecating multi- partition default root volumes (when 1G drives became commonplace.

But more than anything else FreeBSD lost this race by not developing user- friendly installation software (GUI or CLI).

But for those who do know how to install BSD and the difference between things as fundmental as portinstall vs makeworld the ongoing time spent updating and upgrading will pay that back may times over. This is because: A) the ports system works across _all_ versions and architectures i.e., you don't have to upgrade the entire OS simply to upgrade say mysql to 5.5, B) OS upgrades break far fewer apps in _BSD than any version of Linux, C) kernel vulnerabilities average once every few years in BSD vs ever few weeks (sometimes days) in Linux, and D) backwards compatibility is far better (recall when RH tried to "deprecate" nslookup for example).

 _The BSD systems were simply less stable_

This would be due to your user-sysadmin's skillset as everyone else's experience is the opposite (as noted in the OP).

<comment><USER43> >> BSD users treated updates like going to the dentist and put them off until forced > Not typical of any BSD sysadmin I've known, ever. OTOH if your "BSD users" were not sysadmins that would explain it.

Professional sysadmins - but obviously more conservative than ones you know. That was the base install, a ton of ports and mucking around getting video drivers, etc. installed. This is for a fully-configured scientific workstation, not just a bare OS install, so there were a couple hundred packages installed by the time you include all of the various dependencies.

I'm certain that binary packages would have shaved a lot of time off of this (that's what I used to use on OpenBSD a decade ago) but that wasn't exactly strongly recommended at the time, which is why I mentioned culture — I'm certain you can manage FreeBSD better but in practice I have yet to meet anyone in person who actually does this. Small sample size and all but this is untrue of any Linux user I've met other than the Gentoo fanatics who consider tweaking CFLAGS a source of entertainment.

> A) the ports system works across _all_ versions and architectures i.e., you > don't have to upgrade the entire OS simply to upgrade say mysql to 5.5, B) > OS upgrades break far fewer apps in BSD than any version of Linux,

A) is comically untrue: not only can you easily compile newer packages but extensive backports repositories exist to make it easy and safe to install a new version of something important while keeping the rest of the system stable. For many distributions this exists as a vendor-provided service and there are others (e.g. IUSCommunity.org) which serve particular markets and a fair number of OSS projects maintain repos for the Debian & Red Hat worlds.

B) may be true in your experience but it's radically unlike mine. I've run many versions of Linux on many systems over the years and upgrades have been quite smooth - the Debian / Ubuntu world is the most stable but Red Hat isn't far behind. The key again is binary packages - moving from a known set of packages to a known set of newer packages makes it a lot easier to test an upgrade.

> C) kernel vulnerabilities average once every few years in BSD vs ever few > weeks (sometimes days) in Linux

Highly debatable but Linux or BSD kernel vulnerabilities are rare enough not to be worth arguing over: most of the threat is in userland, which is a large part of why package management is so important. Far more systems are compromised by lax updates rather than zero-days.</comment></comment></comment>


Ask HN: Harder to learn- spanish or php? - <AUTHOR> <comment><USER2> Yes.

It all depends on your background. How many languages do you speak already? How many do you program in?

Are you learning "mainstream" Spanish, or a dialect? PHP for WordPress or PHP for Laravel? PHP 5 or PHP 7?

This morning, I was thinking about sí vs si and how confusing that was when I was first learning Spanish. Before I understood they were two different words, I had to wrap my brain around a different way of thinking when I put a sentence together.

I learned PHP in the 4.x days, and it was so close to writing C or basic Java. It could be embedded in HTML content like a JSP snippet. I just had to learn a little syntax.

</comment><comment><USER3> Is this some kind of troll question?

Cualquier lenguaje humano es mucho mas complejo que cualquier lenguaje de programación

<comment><AUTHOR> No estas la troll pregunta. Pero yo aprecio your answer.</comment></comment>


US govt IT spending dashboard - <AUTHOR> http://it.usaspending.gov/

<comment><USER2> So going through this I now know that the Department of Health and Human Services Invests in something called the "ACF Expanded Federal Parent Locator Service" which in turn has a project called "Effective Management of Human Capital/Information Technology/Resources" whose goal is to "Maintain FPLS Benefit-To-Cost Ratio greater than 75:1". A goal that Michael Carleton, the CIO of that agency, considers met so far.

But I don't know how much money was spent on that particular project or where that money actually went or what the individual goals were or why the CIO thinks those goals have been met thus far. So while I'm still willing to give Mr. Kundra and the Obama administration some leeway to do better in the future this doesn't impress me.

Right now it's just some pretty Ajax wrapped around overall department info I could have already gotten in PDF format from the congressional budget office.

<comment><USER3> Maybe you should read this:

<http://it.usaspending.gov/?q=content/upcoming-features> and <http://it.usaspending.gov/?q=content/faq> and <http://it.usaspending.gov/?q=content/faq-agencies>

As it clearly mentions right next to the logo, the site is in beta.

<comment><USER2> A beta test is supposed to show you functionality. Otherwise there would be no point (why give something to others to test if it lacks the lion share of the functionality). In fact, a Beta Test is designed to illicit user feedback about the program's functionality which is exactly what I gave.

I'm saying "if this is the promised functionality then it is insufficient"

Beyond that the upcoming features page doesn't address anything that I said. Under the "More Data" section they do just the opposite, they promise more of the same by saying " Agency CIOs will continue ranking their investments in the coming months" and "linking more investment data to awarded contracts"

(I didn't even address the FAQ pages because they're so vague that they basically don't say anything)

I was saying the assessment of the CIO in charge of a project and the fact that I can see what contract an investment is linked to is insufficient without knowing why the CIO approves and how much money is actually represented by each award contract.

One last point, the info I'm talking about is just "how much money was allocated to each project" That's not a functionality issue it's just another field in a database. Don't you think the CIOs who are doing these assessments needed the total money spent to do them? Couldn't they just have put the totals in the database while entering their assessment values in? Doesn't the fact that they didn't mean the actual totals are purposely being withheld?

<comment><USER4> Well, it's more like an alpha than a beta at the moment, but I like where it's going. I think the key benefit here is that it's _not_ something compiled from a static .pdf like an NYT visualization, but something based on feeds which aims to provide a dynamic window into what's going on. Considering how opaque government spending and budgeting is for most people, this constitutes significant progress in transparency and timely reporting, even though as presented it's rather clunky. Personally, I'd be happy if this met the goals of being comprehensive and responsive by the end of the administration's term. I note too that they've got feeds for everything so if you had better ideas for visualization the data sources are being made available.

BTW you want to 'elicit' user feedback; 'illicit' would be spending the project funds on tickets to Disneyland instead of building out the website.</comment></comment></comment></comment>


Ask HN: Cost/time/obstacles for developing a modern, fast MIPS64 board? - <AUTHOR> With the recent discussion about x86 and other non-open platforms (https://news.ycombinator.com/item?id=11422531) I was wondering how feasible a (free/open) desktop-capable MIPS64-based single board computer project would be. Commercial success/viability is not a requirement.
PINE A64 raised $1.7m via kickstarter, but it's a low-power SBC and I can't tell how this amount relates to actual development/prototyping costs. Many companies have their own (not so low-power) MIPS64 hardware (e.g. http://cavium.com/OCTEON-II_CN68XX.html) and there's even an old university project that designed and locally manufactured a MIPS board (http://www.cse.unsw.edu.au/~cs9242/asyst/) so it's not such an unreasonable idea, I hope.
Can any experts please share their insights and come up with an estimate for cost/time to develop e.g. an 8/16 core MIPS64 SBC with DDR4, PCI slots and other workstation board features, up to a working prototype stage? What would be the biggest obstacles? <comment><USER2> Why MIPS instead of ARM or Power (e.g. Talos)?</comment>


Show HN: our network scoring algorithm for entrepreneurs - <AUTHOR> https://beglobality.com/about-my-globality-score

<comment><AUTHOR> Here is the link to the Google Doc compiling the research behind our algorithm: [https://docs.google.com/document/d/15FyarysKGS7rW9kyzIym7dkD...](https://docs.google.com/document/d/15FyarysKGS7rW9kyzIym7dkDG_EWFDJdtqk0AgU4Zok/edit)

<comment><USER2> +1 for the mention of Rewire

</comment></comment><comment><USER3> Didn't work with my LinkedIn .. bug or too early for that?

Gives me At the moment, your network is not eligible for full access. You can try to integrate more networks to improve your score to 50 or check out our startup toolbox.

<comment><AUTHOR> Thanks ritwikt for trying it out, Linkedin's API has proven to be a bit finicky compared to Facebook's API. At the moment, because we're also focused on mapping your social network and ironing out the details, we have quota score of 50 for testing out the full platform.</comment></comment>


My Short Affair with Microsoft Surface Pro and the Retail User Experience - <AUTHOR> http://www.apmexaminer.com/my-short-affair-with-microsoft-surface-pro-and-the-retail-user-experience/

<comment><USER2> >"Finally, and perhaps a contributor to my decision to return the Surface Pro, the recent browser usage statistics from New Relic show that IE is down to a paltry 14.8% share across more than 2 million application instances. If that's not a signal that Microsoft's role as THE predominant client is beyond repair I don't know what is."

I don't see how IE's browser share is relevant to the Surface Pro or Windows as a client OS. Windows _Vista_ , the disowned stepchild, even has a higher market share than OS X[1].

For the record, I have a Surface Pro as my daily workhorse. I do everything from classes to work, programming to statistical modeling to Photoshop. It has issues, but overall I enjoy it. The only thing it completely fails at is Adobe CS, as they refuse to fix issues with high DPI Windows screens and their custom interfaces. This article doesn't even touch on the merits of the device itself, or using it for anything.

I also had a fantastic experience with the Microsoft Store, as I accidentally broke my Pen within a few hours of getting it (my fault), and it only took a 10 minute call to get a new one sent out Next Day shipping for free. Most of that was confirming the issue was the pen, and not the computer (to know which needed a replacement).

[1] [http://www.netmarketshare.com/operating-system-market- share....](http://www.netmarketshare.com/operating-system-market- share.aspx?qprid=10&qpcustomd=0)

<comment><AUTHOR> Since I believe the browser and apps are the future of most clients browser share was a small contributor in deciding whether to keep or return a device design that wasn't working for the "way I compute.

<comment><USER2> The device design not working for you is understandable. It _does_ have some unexpected/unusual quirks owing to it's form.

But I still don't see the correlation between a single browser share and the fate of the client OS. With things such as the Browser Choice window for EU installs[1], it's understandable that the decoupling of IE from Windows would result in a market share decline for the browser. Even while declining, IE still has twice the browser share of Safari[2]. And although I can't find free aggregated stats that let you dice browser percentages by OS, my own analytics accounts show Chrome being roughly twice as popular on Macs than Safari. That doesn't mean OS X is doomed and everyone should move to Chromebooks...

[1] [http://windows.microsoft.com/en-gb/windows/what-is-the- brows...](http://windows.microsoft.com/en-gb/windows/what-is-the-browser- choice-update) [2] [http://www.w3schools.com/browsers/browsers_stats.asp](http://www.w3schools.com/browsers/browsers_stats.asp)

</comment></comment></comment><comment><USER3> I'll be one to say that my experience with the device and the stores has been the opposite, so it can be either way.

It is, indeed, not a laptop. It works well on a desk, or a small tray in a classroom, or, if you have an SP2 with the second angle, it makes a decent, but not amazing, laptop.

It's really designed to be a device that can be used in a variety of scenarios, and is decent at all of them, but not great at any of them.

I personally like mine, and it's worth a shot if curiosity sparks. The Microsoft Stores are super friendly, and will let you basically take the device from the display and use it around the store. I put Vim on one and experimented with it on my lap, and found the experience to be decent enough.

That being said, it's top heavy and overall a strange device. If you love 100% of everything about an MBP, you probably won't like this. But if you don't, then give it a try. Can't hurt anything.

Just as a fair warning to anyone who reads this to take it with some salt ;)

<comment><AUTHOR> I'm always open to new hardware and software experiences and mine might have been better with a Samsung ATIV 9 plus or some other really nice ultra book for the way I compute.

I think I could work in any OS but the one thing that really struck me as missing in my Surface Pro experience was the accurate way to input. Apple's products have superb keyboards and trackpads and I was really struggling with the Type 2 cover to feel like it was translating my input well.

</comment></comment><comment><USER4> "I was hoping the [$499] Surface Pro would cure my desire for a new 13 in. retina Macbook Pro"

A Surface Pro is the wrong device for someone who is already happy with their tablet and laptop, is not invested in the Microsoft ecosystem, and does not need an ultraportable work / drawing device. However, if one or more of those applies, giving the Surface Pro a shot may be an eye-opening (even if flawed) surprise.

<comment><AUTHOR> Since I'm working on a 5 year old Macbook Pro of course I want a new one :)

I think that the Surface Pro is compared to both Macbook Air's frequently. It is almost exactly the same guts as an 11 in Macbook Air.

Just because I purchased it on sale doesn't mean I didn't expect it to fill a need that I have for an updated computer. With the keyboard it totaled > $630 and an 11 Air isn't all that much more on Apple's refurb site.

I don't regret trying it one bit. And I was just sharing my experience and context.

</comment></comment><comment><USER5> I keep hearing this same line over and over, that Microsoft should stick with the enterprise which is what they are good at.

For anyone with more than 10 years experience, this kind of statement is hilarious because not that long ago Microsoft was laughed at as an 'enterprise' software company. Oracle, IBM, Tibco, SAS - these were enterprise companies and Microsoft was a consumer software company.

But that by and large is unimportant history for what they face now. There has been a sea change in the relationship large corporations have with their information technology departments. For most of the time since computers became a basic necessity for white collar workers, the IT group dictated what devices could and should be used. They bought specific laptops or desktops and that was it. If you wanted to use a personal information management device like a Palm Pilot or Windows CE device, you had to plug it into the computer at the office. That meant IT had to approve the device because they needed to ensure its compatibility with their Windows setup and your enterprise infrastructure.

I dont need to regurgitate what happened, but needless to say we no longer need that tether and devices now speak directly to the services. This frees management and workers to buy the devices they need and want. Upper management gets an iPhone or iPad and they want to work with it, IT has to bend. I have seen this in our consulting practice over and over - IT did not want to allow iPads but C*O level folks insisted and voila, we now support iPads. IT did not come around, they were forced by good consumer devices that just worked.

Microsoft recognizes this sea change and knows that they have to be a player and a big one in the consumer device market as this market is now dictating to IT, not the other way around. Consumer devices now drive the choices in the enterprise so Microsoft cannot give up here, they have to double down.

<comment><AUTHOR> Agree with everything you said. 10 years ago (well maybe more now) Microsoft was laughed at in the Enterprise but now you can hardly find a big business not running Exchange and Active Directory at least.

You may be right that Microsoft can't give up here. If that's the case they will need to improve their execution versus the competition.

</comment></comment><comment><USER6> Well of course the Surface Pro isn't a laptop. Just like the iPad isn't a laptop. The form factor of both devices just doesn't make it a competitor to a laptop.

However, the Surface Pro is the only tablet that can do everything you can do on your laptop. That's the important distinction. It just can't do it well (form factor again).

I've personally found that the Surface Pro is great to bring to class and with an external monitor/keyboard/mouse, it makes a great daily computing device. However, I am thinking about buying a ThinkPad Yoga to replace both my Surface and Laptop. I need something where I can take notes (going paperless rocks), but also something I can write code on.

<comment><AUTHOR> I agree with you. And I think I said that in my post. If you are a mobile person that needs a full computer on the go for work, home and being out Surface Pro might work.

But so would any ultra book I think.

</comment></comment><comment><USER7> Quirky review. Trying to cure your desire for a $1300 laptop by purchasing a $500 hybrid tablet and then declaring that it isn't good as a laptop is quite prescient.

And the nail in the coffin was that other people aren't using IE.

Important and insightful blogging. You really must keep it up.

<comment><AUTHOR> Just because it was on sale. The Surface Pro is really a $1029 device ($899 retail price + $129 type cover).

My point about sharing the sale price was at $499 how could I not love this gorgeous little device. And the answer was it did not work for the way I compute.

Since I consider the browser the real client of the future the IE share numbers were a contributor to my final decision to return vs keep.

I do realize when I share things though that I open things up for debate.

<comment><USER7> Well you aren't comparing apples. The tablet weighs a lot less, has hybrid functionality and is touch screen. If you made the tablet heavier, with a non touch screen and a built in keyboard it would cost about $400 at rrp. So it isn't logical to compare with a $1400 macbook

</comment></comment></comment><comment><USER8> When oh when will the surface dock be available to consumers.

That is when it will click for everyone why have a surface.</comment>


Give or receive 1 hour of coding help in 2015 - <AUTHOR> https://hackpledge.org/?hn

<comment><USER2> I'm a little confused, do they provide any way in which to give an hour of programming help? I don't know anybody who's interested in programming IRL but I would happily help someone having a trouble with something programming related

<comment><USER3> I'm with you. Is this just some stupid form I fill out for no reason? Or is it going to actually help match me up with people? It might be answered in the video, but I shouldn't have to watch a video to figure out what the point of a web site is.

<comment><USER4> This is a 2015 New Year's Resolution, so the matchmaking doesn't kick-in until 2015. The purpose of the form is to accumulate a list of mentors and mentees who are committing to this pledge.

</comment></comment></comment><comment><USER5> I was skeptical at first on the concept of how much 1 hour difference can make but given the reputation and the outreach of this initiative now I believe that it can really contribute to a better world for programmers.

</comment><comment><USER6> this looks exactly the same as [https://hacksummit.org/](https://hacksummit.org/). is this like part of the same program or from the same people or something?

<comment><USER7> It is part of hacksummit.org

</comment></comment><comment><USER8> Signed.</comment>


TorFlow - <AUTHOR> https://torflow.uncharted.software/ <comment><USER2> Very classy visualization! Have a look at the code that determines the visual flow of data between relays: [https://github.com/unchartedsoftware/torflow/blob/master/pub...](https://github.com/unchartedsoftware/torflow/blob/master/public/javascripts/particles/particlesystem.js)

I think it doesn't _exactly_ reflect how paths are chosen based on relay bandwidth scores, if we compare to the actual path selection algorithm: [http://tor.stackexchange.com/a/114](http://tor.stackexchange.com/a/114)

I might be missing something, but it seems that relay same-family and same-/16-subnet exclusions are ignored. This might bias the visualization to increase the apparent traffic between popular nodes, while in reality, the traffic should be slightly more evened out with less popular nodes. Hard to tell if this effect makes any visible difference without analyzing the data, though. Either way, because of the way the code is structured, it shouldn't be too hard to fix: just simulate full paths instead of single connections between nodes.

<comment> chris-dickson Thanks for this! I opened an issue for it.

[https://github.com/unchartedsoftware/torflow/issues/4](https://github.com/unchartedsoftware/torflow/issues/4)

</comment></comment><comment><USER3> Clear proof TOR is used by the evil one, and that cryptography should be banned: [http://i.imgur.com/NXT0OOJ.png](http://i.imgur.com/NXT0OOJ.png)

<comment><USER4> Brightest spots in capitals are probably caused by IP geolocation. Whois for many IPs returns main ISP HQ address which usually is based in the capital city. Also, geolocation tools will return capital city if no specific information other than country is available.

I think they could improve they ip2address tool, because I would expect some bright spot at hetzner datacenter and it's not there (while whois for IPs of my servers there returns proper location of the datacenter).

Nevertheless, awesome visualization.

<comment><USER5> It's a pentagram, don't you see?

<comment><USER6> Still can't see it. This feels like one of those magic eyes where I'm the only one that can't see it....

</comment></comment></comment></comment><comment><USER7> No idea how good the data is, I assume it's good, but in my mind this is impressive just on the visual representation of it alone. What a fantastically beautiful display of information, the UI is great all around!

<comment><USER8> One suggestion for the UI: when you click a + on an option, the minus should be at the bottom of the expanded option, so that you don't have to move the mouse to close the expansion.

</comment></comment><comment><USER9> A disproportionate amount of traffic seems to be passing through Monrovia, Liberia compared to the rest of African continent and even more developed places like Australia. Can anybody shed some light on this ?

<comment><USER10> IPredator is a Swedish VPN service that appeared when the "Ipred" law was passed in Sweden, a law that was passed to allow rights holders to find and prosecute people who torrent stuff. So most likely, it's used for piracy.

<comment><USER11> Although the people running the relay may be associated with piracy, that doesn't mean this exit node is any different than any other Tor exit node. Traffic on the Tor network is doesn't distinguish by "pirated" content or not. They're simply a company with privacy conscious employees who are probably using their high-bandwidth relay as a form of advertisement.

</comment></comment></comment><comment><USER12> Does anyone find it surprising that Europe seems to have comparatively more nodes/traffic flow than the US?

<comment><USER13> There are huge amount of peered ISP that offer cheap servers.

OVH and Free Telecom probably host a huge amount of Tor traffic in FR. Easily do 300 Mbps 24x7 for sub-$15/m dedicated server.

OVH also has subsidiaries in other EU countries that will geolocate back to those countries (hosted in FR physically).

<comment><USER11> Do you have a link for the service that could do 300mbps for this price? I'd like to setup a server if that's the case.

<comment><USER13> free.fr - [https://www.scaleway.com/pricing/](https://www.scaleway.com/pricing/) (these are hardware, not VMs)

ovh - [https://www.kimsufi.com/us/en/index.xml](https://www.kimsufi.com/us/en/index.xml)

<comment><USER11> 200mbps UNMETERED. That is awesome. Does anyone have experience running a Tor node on free.fr?

<comment><USER14> There is also online.net[1] who are relatively cheap.

[1] [https://www.online.net/en/dedicated-server/dedibox- scg2](https://www.online.net/en/dedicated-server/dedibox-scg2)

<comment><USER13> I use online heavily, forgot about that.

Here's a link to bookmark; [https://console.online.net/en/order/server_limited](https://console.online.net/en/order/server_limited)

Occasionally there will be deals like 2xSSD HWraid 8-16 core 32GB/64GB ram for <$50/m there (if it's blank there are no promos).

</comment></comment></comment></comment></comment></comment></comment><comment><USER15> And the source: [https://github.com/unchartedsoftware/torflow](https://github.com/unchartedsoftware/torflow)

</comment><comment><USER16> there's an interesting link in London between two points. [http://imgur.com/LmvpcxL](http://imgur.com/LmvpcxL)

<comment><USER17> the two points being Westminster and the City...

</comment></comment><comment><USER18> Whats the nexus in Germany north of Frankfurt? (My guess is, that it is Hetzner, but can anybody comment?)

<comment><USER19> I don't think there's a data center there, it's probably just where all nodes in Germany end up which don't have more accurate geolocation.

</comment></comment><comment><USER11> Here's the summary: IP Geolocation is _at best_ inaccurate.

<comment><USER20> Addendum: Not actual traffic flows but simulated with an undescribed model.

</comment></comment><comment><USER21> How was this data collected? Doesn't this require all the relay operators sharing their connection data?

<comment><USER11> No, this information is publicly available when your Node joins the Tor network. All nodes (except for a limited set of entry-nodes) are publicly listed as being a part of the Tor network. Their IP addresses are used to approximate their location based on where the IP address is registered.

<comment><USER22> but how is the flow of traffic between the nodes measured?

<comment><USER2> Because the nodes in a path are determined randomly, with weighting based on publicly available scores, you can simply estimate the amount of traffic between any two given nodes. Here's a summary of how routes are chosen:

[http://tor.stackexchange.com/a/114](http://tor.stackexchange.com/a/114)

And here's the code that does the traffic estimation based on node bandwidth scores (edit: hmm, seems that code might be slightly inaccurate, added a top level comment to point this out...):

[https://github.com/unchartedsoftware/torflow/blob/master/pub...](https://github.com/unchartedsoftware/torflow/blob/master/public/javascripts/particles/particlesystem.js)

</comment></comment></comment></comment><comment><USER23> What's going on in Kansas?

<comment><USER24> Kansas has some big data centers in it (there's a reason google fiber launched there). Lots of dedicated server and colocation providers are located in Kansas City. In order for these providers to receive IP addresses from ARIN, they must register with ARIN as an "autonomous system" (AS). One of the items on the form they must complete is the geolocation of the IP address block they are being assigned. That geolocation is often the location of the provider company, not necessarily the location of the server(s) the IP(s) point to.

Server providers register as autonomous systems, and purchase IP space in large blocks. They often have servers at multiple data centers, with VLAN routing configured to switch packets at the ingress IP to whichever server that IP is assigned to. When a client rents a server from a provider, the provider assigns the client some number of IP addresses from its available pool. Many times, the provider does not actually SWIP (officially delegate via ARIN) these IP addresses to the client, so the registration with ARIN will not reflect the owner of the server an IP currently points to.

tl;dr When a packet goes to an IP belonging to an AS registered with a certain geolocation, the AS can switch that packet to wherever it wants.

<comment><USER25> sprint headquarters

<comment><USER26> Sprint is in KC. It didn't look like KC. More like Wichita.

</comment></comment></comment></comment><comment><USER27> anyone else think it is curious that there is hardly any Tor traffic in/out of Seattle? You would think with the high density of tech-types, and proximity to pacific links, that there would at least be something?

</comment><comment><USER28> If anyone else is seeing a page with just a map (and nothing moving), you probably have webgl disabled

</comment><comment><USER25> what's happening just north of charleston, south carolina? google earth shows what seems like a cleared foundation in the middle of undeveloped land.

Unnamed Rd, Charleston, SC 29492, USA 32.912336, -79.862333

[https://www.google.ca/maps/place/32%C2%B054'44.4%22N+79%C2%B...](https://email@example.com,-79.8798429,6153m/data=!3m2!1e3!4b1!4m2!3m1!1s0x0:0x0)

</comment><comment><USER29> I see connections coming out of north korea....

</comment><comment><USER30> I'm surprised by how dark Australia is. I at least expected the coastal cities to be lit up.

<comment><USER31> I suspect this is partly due to how notoriously overpriced and under- performing Australian internet access is.

</comment></comment><comment><USER32> I don't trust Tor because of exit nodes.

<comment><USER33> Can you elaborate?

<comment><USER34> Traffic sent over TOR is unencrypted. Use a VPN or SSH tunnel of some kind and you've got location obscured and traffic encrypted. Boo-yah. Slow as shit though.

<comment><USER35> No, traffic sent through tor is encrypted all the way to the exit node. From there, it's in the clear (how else would the data get to its destination on the open internet?)

VPNs are exactly the same. They're encrypted to your provider and cleartext from there. Except the VPN provider knows exactly who you are because they see the IP you're connecting to, in addition to the content. A tor exit node only sees the content, but does not know the source.

No matter how you're connecting, you need to ensure you are running encrypted protocols (SSH, https, ...) to protect against whoever relays your traffic. Tor, VPNs etc do not change this.</comment></comment></comment></comment>


How would you design the AOL or Yahoo Homepage? - <AUTHOR>

<comment><USER2> I'd remove about half the stuff on it.

<comment><USER3> Yah! a cluttered homepage is a traffic repeller.I havent seen Yahoo home page for a long time. Except for an old yahoo school group ,and now Ycombinator news, i dont really use any other Yahoo service. [In reality Yahoo is sheep disguised as Wolf.AOL is wolf disguised as Wolf]

</comment></comment><comment><USER4> Since you helped me much - with juwo, let me give it my best shot.

I assume you are trying to beat them at it.

Suggestion:

Make email, the frontispiece.

surround it with the flora that people can pick and choose.

for example, I want weather and news headlines. (Yes, I am boring).

So in a nutshell - on ONE page, email, news headlines, weather, banner advts.

thanks,

Anil

</comment><comment><USER5> Two-column layout. Make text larger for important items, like latest news. Same with the videos. If they're "hot" they need to grab some attention. The directory stuff should be linked to and only 3-5 AOL services should have direct links. And perhaps have those generated randomly so lesser known services can grab some attention too.

</comment><comment><USER6> All I use is email, weather, finance, groups, search and news when I'm bored (already read 3 papers). The rest can go.

</comment><comment><USER7> I'd put in a link to Google and some adsense ads.</comment>


Sen. Rand Paul says he's suing over NSA policies - <AUTHOR> http://bigstory.ap.org/article/sen-paul-says-hes-suing-over-nsa-policies/ <comment><USER2> It looks like this submission with the correct spelling of the Senator's name in the submission headline will get more traction for discussion of the substantive issues in the story. I'll begin, and I look forward to comments by other Hacker News participants.

United States Senator Ron Wyden from Oregon[1] and United States Senator Rand Paul from Kentucky[2] run for election with the endorsement of different political parties, and have plenty of other differences on issues of public policy, but they are agreed that NSA surveillance programs need to be reviewed for legality. That's a demonstration that there is a reasonably broad base of support among the American public for taking a second look at how government intelligence programs have been operating recently, and perhaps revising the legal framework for regulating those programs. The large volume of lawsuits connected to NSA surveillance pretty much guarantees that the Supreme Court will consider the issue after the various trial court and intermediate appellate court decisions in different cases have shed light on the issues.

[1] [http://www.wyden.senate.gov/](http://www.wyden.senate.gov/)

[2] [http://www.paul.senate.gov/](http://www.paul.senate.gov/)

<comment><USER3> _That 's a demonstration that there is a reasonably broad base of support among the American public for taking a second look at how government intelligence programs have been operating recently, and perhaps revising the legal framework for regulating those programs._

I don't think that's accurate. This just happens to be one of those issues where the traditional left/right spectrum breaks down. Paul comes from the libertarian wing of the GOP, and Wyden is perhaps best described as a small government liberal. Together they represent not insignificant minorities within their own parties, but nothing like a broad bipartisan base. You wouldn't say Paul Ryan's Medicare plan had a broad base of support just because Wyden was associated with it (more or less, depending on whose talking points you're reading).

</comment></comment><comment><USER4> "Barack Obama's NSA". What a disappointment is Rand Paul. How about making this about America instead of an unfair attack on a single president? Standing above partisanship will pay dividends to a political career in the end. This is the sort of crap that tells me never to support Rand Paul.

Yes, Obama could do something about the NSA, but so could Congress and so could have Bush. This is everyone's NSA.

Flagged for being simple political posturing instead of a legitimate push for change.

<comment><USER5> You aren't supposed to flag things because they go against your political agenda. You flag things for breaking the rules of HN. This is interesting news and judging by the number of votes it has it is interesting for most hackers which makes it proper news for this forum. People like you who flag things that go against their own agenda are the reason we can't have discussions about microsoft (these are flagged off the front page all of the time) or anything else the hive mind doesn't find correct. Basically, I am saying you are ruining this website.

<comment><USER6> Agreed. You aren't even supposed to downvote submissions because of political disagreement. But flagging? That's ridiculous -- you're potentially wasting moderator time because you disagree with the politics of the submission.

Flagging is meant to be used very selectively for spam and other submissions that blatantly flout the site's guidelines.

GP, please don't misuse flagging like this again.

<comment><USER7> Not taking a side on this but if

"Flagging is meant to be used very selectively for ..."

...then there should be a pop up when someone goes to flag that says "Note: Are you aware that flagging is meant for .... do you still want to flag??".

Many people don't know the "rules?" on HN even if they have been around for some time. For that matter upvotes and downvotes aren't clearly defined. And that whole "in short anything that satisfies ones curiousity" can reach far and wide.

And doing the right thing isn't solely a RTFM either. The "FM" is not really something that people familiarize themselves with or keep on top of. (Commenting and reading HN isn't a job obviously.) If certain behavior needs to be enforced (not saying it does or doesn't) then something has to be in place ad hoc to make it more likely to happen.

</comment></comment></comment></comment><comment><USER8> > On his website, he's urging Americans to join the lawsuit, in his words, "to > stop Barack Obama's NSA from snooping on the American people."

So this is mere political opportunism. Because it's not Obama's NSA, he just happened to touch down in part of the NSA's timeline. The NSA has been, would be and will be doing this regardless of administration or party.

<comment><USER3> The NSA works for the President. He can order them to stop any and all of these programs immediately, and if they don't, start firing people until they do.

He won't (and I don't think he should) because he thinks it would be a bad idea from both a national security and a political standpoint.

<comment><USER8> And Rand Paul works for Rand Paul, and with the Republicans that he has chosen to throw in with. The NSA would be in the exact same state of capability and behavior today if a Republican were in the Whitehouse, and Paul would not be suing.

This is about Rand Paul, using any available brick to throw at Obama, the idea being that as Obama's fortunes fall Paul's rise.

<comment><USER9> Why does Paul's motivation matter? I'm just happy to see something being done.

<comment><USER10> It does, because motivation decides what that "something" in "something being done" is.

Rand Paul's party is by far the biggest supporter of NSA, TSA, and other TLAs. If he really wanted to change things, he could start by convincing his own party to stop fellating the NSA.

<comment><USER11> I think injunctive relief against the NSA is a goal, a "something" that most civil liberties advocates and Rand Paul can agree on. Let it not be said that liberals took yet another opportunity to miss an opportunity at bipartisan reform of our executive branch's powers.

</comment></comment></comment></comment></comment></comment><comment><USER12> My question would be:

How should we be able to trust them ever again?

I mean, it's been shown that people like Obama an Clapper openly lie. Nobody seems to care about that.

I'm still not sure that it's a good idea to accept the weak bone they'll throw us to make us forget about the real issue (Obama hinted at some limitations he might enforce).

<comment><USER13> You could trust them otherwise? You can't trust politicians, period. Their interests and incentives don't align with ours. Your default mode should be to distrust them, to expect them to lie when it serves their ends. Anything else is, quite frankly, a very naive world view.

<comment><USER14> But that does not mean you should _accept_ it when they lie. You should expect them to lie _when it serves their ends_ , but a refusal to accept it (coupled with vigilance and systems that make it hard for them to get away with it) means it more rarely serves their ends.

</comment></comment></comment><comment><USER15> It'll be thrown out on "National Security" concerns which says everything that needs to be said.

<comment><USER16> This will be a useful lawsuit. I think that this will be a very different lawsuit from the one the ACLU is currently pursuing. First, it is being led by two US Senators from vastly different political perspectives, which gives it tremendous credibility with a wide base of people.

Additionally, if the USG falls back on the national security argument yet again, then this will damage the Obama administration's credibility even more, and that will be a useful outcome as well.

As an aside, it's funny how quickly Obama has gone from a novelty (first black president, exciting!) to just a very weak, unprincipled leader, and who weakens himself even more with every backroom deal with wall street, every promotion of Bush-era hawks, every prosecution of reporters under the Espionage Act, and every defense of mass surveillance of Americans. My sense is that he is under the full sway of his advisors and underlings, and he lacks the _cajones_ to think for himself and stand up to them when they argue for practicality over principle. Clearly our political system needs to do a better job of selecting strong, intelligent, moral leaders, rather than just well- spoken ones. (An interesting problem in itself, and one which I think is only partly addressed by campaign finance reform.)

But the other lesson from this is that our system of checks and balances is not working. This suit is an attempt to use the judicial to check the executive. A laudable attempt to work within the system. But as you mention, the executive is not shy about playing their trump card - keeping secrets vital to national security - rendering a judicial check impossible. Meanwhile, Congress is still in very poor shape, with Tea Party morons so fixated on taxation that they ignore everything else. (Although I must admit, that in times like these "starve the beast" does seem mighty appealing. What the _hell_ are we doing giving Obama _$1T_ a year to play with, given his lack of judgement and scruples? Indeed, what man or woman exists that can be trusted with that kind of power, especially given the glaring weaknesses in our system of checks and balances?)

We've seen some egregious, shameless use of structural weaknesses in our system, hacks that previous generations of senators and presidents have been deeply reluctant to use - apparently well aware of the cost of using them. Executive use of "national security" to quash judicial check is one; indiscriminate and constant use of filibuster to intentionally stop congress from functioning at all, even on routine matters.

Fundamentally, political systems are designed to allow people with conflicting views to live in peace together, and to cooperate for mutual benefit. Without these systems, we devolve into tribes, mainly on ethnic and racial grounds, fighting for dominance over each other. We went from democracy at the city- state level, back to absolute monarchy, and now we're trying democracy at the national level.

But remember this is all new ground; the US is only 238 years old. In essence, the US is a startup, and it might fail, and it could fail catastrophically or just kind of fizzle out. (I hope doesn't, though, because I really love the idea of Star Fleet being HQ'd in San Francisco).

<comment><USER17> 238 years is actually decently long for a continuous system of government. Older countries like the UK, France, Russia or China tend to actually be a series of constitutions/monarchies/dynasties that rarely last longer than 300 years at a go. France is the 5th Republic, the Russian Federation is a little over 20 years old, the CCCP a little over 60.

</comment></comment></comment><comment><USER18> The likely outcome of this is that Rand Paul will be called out on his partisan motivations (and there will be some truth to it, I admit) in the media, and the courts will ultimately throw out the lawsuit and thus protect the surveillance state. We know that the president won't do anything about this. The legislature won't, and neither will the courts. The most we could expect is a token piece of legislation that promises oversight, but will have stealth provisions that end up making everything worse, or provide clemency for the NSA's various crimes.

</comment><comment><USER19> Roll eyes. If this was happening during a Republican presidency, it would be some random Democrat suing. Even though both parties got together to make this happen behind the scenes.

<comment><USER11> This shortsighted brand of cynicism, writ large, is exactly what is enabling this revolving door approach to policy in this country.

<comment><USER20> This shortsighted brand of cynicism, writ large, is exactly what is enabling this revolving door approach to policy in this country.

Yes... I repeated your comment verbatem to demonstrate that the same could be said of your attitude.

<comment><USER11> I was making the point that cynical eye rolling at any initiative from political competitors, despite common goals, leads to a zero sum system where policy reflects narrowminded politics rather than shared values. That is a bad thing, and I think we should try and nip it in the bud as much as possible.

What about my attitude is leading to the same?

</comment></comment></comment></comment><comment><USER21> A few good men.</comment>