Stack unwinding in Rust - <AUTHOR> http://lucumr.pocoo.org/2014/10/30/dont-panic <comment><USER3> > Currently there is definitely a case where there are too many calls in Rust > that will just panic.

So, as a newcomer to rust, how can I identify which calls could blow up my single-task app? The docs on println! ([http://doc.rust- lang.org/std/macro.println!.html](http://doc.rust- lang.org/std/macro.println!.html)) say nothing about this.

I could use task::try everywhere ([http://doc.rust-lang.org/guide- tasks.html#handling-task-pani...](http://doc.rust-lang.org/guide- tasks.html#handling-task-panics)), but I'd prefer to have an indication of which functions are pure and cannot error (modulo bugs).

</comment><comment><USER4> > For instance on Windows there is Structured Exception Handling (SEH) which > however is not used by LLVM currently and as such not by Rust.

FYI, LLVM does actually support SEH on 64bit windows and Rust does actually make use of it on that platform. It's SEH on 32bit windows (which is completely different) that isn't supported.

</comment><comment><USER5> It's sad that all of this would have been a lot easier if only the x86-64 C ABI didn't decide to say "Eh, you don't have to reserve rbp and rsp for stacks".

The code to unwind C-code that follows rbp and rsp is super trivial (and lightning fast). Once you get into the hell of DWARF you're talking tons and tons of cycles. In all cases, dealing with inlined functions is messy and imprecise (one of the reasons I've heard for not relying on rbp/rsp), but when building a runtime it just feels sad to have tossed out the stack frames.

<comment><USER6> I don't get it. If you're unwinding the stack aren't you going to be referring to DWARF tables anyway for things like symbols, CFI to locate catch blocks (in C++), or something else that is actually going to allow you to do something useful? Having to switch off of the instruction pointer to decode the stack doesn't seem like much of an extra burden. Just dumping a list of stack frame addresses isn't terribly useful.

On another note, the DWARF standard is fairly approachable reading: [http://dwarfstd.org/doc/DWARF4.pdf](http://dwarfstd.org/doc/DWARF4.pdf)

<comment><USER5> You can offer quite a lot of info (like backtraces, sampling profilers, etc.) for many runtimes just with the function name (which you can do without full on DWARF). The old LLVM JIT engine had a good NotifyFunctionEmitted hook for exactly this kind of usage. It's really about taking DWARF parsing / loading off the critical path for common use cases.

</comment></comment></comment><comment><USER7> I'm not terribly fond of either option in Rust; however I would encourage the formalization of a protocol for handling non-fatal errors. It's the route Common Lisp went when it inherited the idea from the Multics PL/1 OS. It was a huge win and they chose a very user-friendly (ie: programmer-friendly) design.

</comment><comment><USER8> Did anyone else read this and get the feeling they'd absorbed words but learnt nothing?

To be honest I don't know enough about the argument for/against to form an opinion. However this article did absolutely nothing to sway me. The article gives a couple of "reasons" as to why stack unwinding is hard, and seems to imply that they wouldn't be an issue with API level error reporting - <USER2> doesn't explain how or why or give any reasoning or practical examples.

<comment><USER9> Had absolutely no idea this issue of stack unwindling having a cost and being non portable even existed, so that article was really interesting to me.

<comment><USER8> Fair enough. I was mostly just confused as to why this had many up-votes but no discussion around it. I guess there was a bit more content in the article than I realised, but I just happened to already be familiar with that part.

</comment></comment></comment><comment><USER10> Another thread: [https://news.ycombinator.com/item?id=8536412](https://news.ycombinator.com/item?id=8536412)

</comment><comment><USER11> Performance is an argument pro unwinding, because the default case (no exception, no unwinding) does not have to check for errors.

<comment><USER12> SIGABRT (or similar) approach is similarly tempting. No checking for errors, no complicated control paths. If Unix systems let processes register (and unregister) files to be automatically deleted on abnormal exit, it'd be pretty convenient.

<comment><USER13> That is already possible in UNIX: just unlink(2) the file and it will be automatically deleted once its last file descriptor is closed.

Linux 3.11 added support for the O_TMPFILE flag to open(2) so it's not even necessary to call unlink(2).

</comment></comment></comment><comment><USER14> So how does Rust currently deal with calling into a C function which calls into a Rust function that panics?

From what I understand based on the article and assuming you don't know which C compiler was used, it seems like this would be impossible to properly deal with and produce undefined behavior.

<comment><USER15> Unwinding through C is undefined behavior, so a Rust function called from C must catch all exceptions and (preferably) return an error code to the C caller.

</comment></comment><comment><USER16> I didn't know that Rust doesn't have exceptions! What's the rationale? Is it about memory management, or the performance cost, or something else?

<comment><USER11> From the article's description I'd say Rust has exceptions, you just cannot catch them. In Java-speak, you only have try-finally. They are catched at the bottom of the call stack automatically, killing the thread.

<comment><USER16> Now I'm even more confused. If the machinery for try-finally (automatically cleaning up resources during unwinding) already exists and is paid for, what's the rationale for not having catch?

<comment><USER17> Indeed, I've heard at least one Rust developer argue for exactly that.

However, since exceptions are not part of the public function API, I think they have to be carefully packaged to ensure that they are only used in cases where catching them makes no sense (that is, for violated invariants, not normal runtime errors). The biggest nontechnical problem with unchecked exceptions in other languages is that they escape the type system and make it impossible to reason about code by looking at function signatures. This makes them unsuitable as general-purpose error reporting mechanisms, even though table-based unwinding is faster in the common case than error propagation through return statements.

Java tried to solve this problem using checked exceptions, which are probably my favorite feature in the whole language, but sadly I appear to be pretty much alone in liking them. Besides the Java community's total rejection of the feature, it was always hampered by the many ways Java offers to subvert it: unchecked exceptions of various kinds, misfeatures like Thread.stop, a standard that allows exceptions to be thrown at literally almost any point in the presence of VM problems, etc.

Personally I generally agree with the article author--exceptions are useful for some projects, but most of the time the best solution is to abort. Not having to worry about exception safety makes writing unsafe code vastly simpler and doesn't force you to write code in ways that can cause missed optimizations. You also don't have to worry about corrupted shared state as you do with thread unwinding, since processes actually have isolated address spaces. You can take advantage of hardware traps on failure modes like division by zero, which are significantly cheaper than exceptions. And, of course, you get faster compile times and smaller binaries (though the latter is not a big deal most of the time). So my feeling is that that should be the default, with an option to opt into using checked exceptions for projects that need it (web servers, Servo).

My other concern with fully supporting C++ exceptions would thus be that I don't think it would be nearly as easy to switch between the abort method and try-catch as between abort and task failure. I can see the argument for it, though--you're already going to have different semantics with abort, and in some cases the performance benefits of landing pads compared to return result propagation and/or process restart are important enough to outweigh the disadvantages.

<comment><USER16> How is abort better for reasoning about the code?

<comment><USER17> When code aborts, you don't _have_ to reason about it in calling code. When you decide to abort, you are not just suggesting that there might be a problem. You are asserting "nope, there is no reasonable way I can continue here." Which is exactly what task failure is supposed to be used for, incidentally (which is why it was renamed to panic!)--normal, expected error conditions that you can actually do something useful about should be handled through the type system, not propagated through code that might not even be aware of its existence.

In the meantime, abort completely cleans up any in-process state--closing network pipes, deleting temporary files, deallocating mmaped memory, and so on. And what it can't clean up can't be relied on anyway, because programs can _always_ be aborted unexpectedly in other ways. Whether it's the OOM killer, various Rust behavior that triggers abort (panicking during unwinding, for example), stack overflow, power loss, or just SIGKILL, a robust program can never rely on its destructors running anyway (and destructors failing to run is explicitly not part of Rust's definition of unsafe).

So ultimately, the reason abort is easier to reason about is that except in a few special cases (like embedded, where you may have complete control of the hardware--but you likely don't want to be using task failure there), your program _already_ has to be designed to expect an abort at literally any time. Aborting may not always be _desired_ behavior, but it never introduces additional cognitive load, or creates unsafety where it didn't already exist, in the way that exceptions do.

</comment></comment></comment></comment></comment></comment><comment><USER18> So if the x86-64 ABI is suboptimal for getting a stracktrace, can anyone name an architecture's ABI that is better, and in what way?</comment>


Ask YC : Are multicores useful? What will you do with 32/64/128 cores? - <AUTHOR>

Before you remark that people need more than 640k, read this patiently. My parents run a 3-4 old year system on XP and it runs just fine. They are able to browse the web and run skype. Most of their meets are already met by web based apps. I see no reason why they would ever need a 64 core computer. On the other hand, they do have a real need for a portable machine. They would also benifit by better connectivity, easy to use user interfaces and reliable (no viruses please) software.
Is the same thing happening to the "normal user" the world over? Apart from servers and games, are there any real needs for much better CPU performance? Or is the focus shifting to "other things" ? Perhaps to cost, mobility, reliability and ease of use? If so what changes do you see happening in the computer industry?
Notice the big push of Atom processors by Intel. Notice the success of EEE Pc. Are big changes coming?
Please tell me what do you think people will do with 64 cores? On the technical side, keep the Amdahl's law in mind too. For applications with even 3-4 % serial component, you will be very hard pressed to double performance with doubling of cores. People talk about better programming languages. But have parallel algorithms matured to a point where we can indeed take advantage of 64 cores?
Does the emperor have no clothes? Will the multicore revolution be relevant for the populace at large? <comment><USER2> If history is any guide, that compute power will be used by new applications, not better versions of existing ones (although 1080p Skype will probably also happen). So the inability to scale existing software is irrelevant; new apps will be coded from scratch using new parallel tools (assuming that those appear).

It's possible that no such apps will emerge, but I'm not betting on it. Many of them will look pointless at first. (Check out this 150MB screen saver: <http://scr.sc/products/dropclock/> A waste of disk space, you say? 150MB costs a few cents.)

</comment><comment><USER3> There's a lot going on here.

First thing is Moore's Law. If it continues to hold, we'll be able to have more processors working on the same task, but more importantly, we'll have more processors working on different tasks, concurrently. This is huge. Think "computronium." A revolution? Yes.

Secondly, the problem of optimizing our algorithms for maximizing multithreaded performance is not solved. There's still much research being done in this area (e.g. Terascale, good CS departments). We can assume that our ability to use parallel threads will increase, although it will level off eventually, of course. The question is, how good are we at using many processors? I would wager that we aren't very efficient at that yet.

You are correct in pointing out the applicability of Amdahl's law, but exponential decay in the processor/performance ratio does not immediately mean we still can't reap major benefits from more cores. In this vein, I encourage you to think about the "long tail," and what that could mean for (parallel) computing power.

</comment><comment><USER4> Probably there needs to be another network infrastructure change before the masses adopt large numbers of cores. By that I mean, that current broadband will have to increase again to higher speeds. I mean, it makes sense that your parents can still run a 3-4 year old system if the most cpu intense program they run is Skype. These programs probably won't need the crazy cores until they start processing far greater amounts of data.

However, there is the issue that your typical user interface is becoming more and more graphic intensive. And there's always that end consumer that runs a million apps and never closes them. A few of my non-computery friends are like that and have a bajillion things in their system tray. They too will probably see performance improvements from multiple cores, long before the apps they use take advantage of it, simply because of their habits.

</comment><comment><USER5> I forget where I saw the lecture on the internet, but the argument basically stated that people are only starting to realize what multi-core processors are able to achieve. It's a relatively new technology to the average user, and it is going to take some time before applications start moving down the development pipe that takes advantage of multi-core.

To answer your questions, no one knows yet what the average user could do with that many cores, but I can almost guarantee you that their will be an answer within the next five years.

</comment><comment><USER6> 640k blah blah bill gates.

there are uses for that multiple cores. will you need 32 cores in your average home PC? i highly doubt it. just like the average user doesn't need a RAID array or 4 gigs of RAM. yet. perhaps things will progress far enough in the future to require that many cores, but right now they don't.

</comment><comment><USER7> Yes. Build Skynet.</comment>


Tesla being fought in TX by dealers - <AUTHOR> http://wot.motortrend.com/tesla-takes-on-texas-dealers-association-349795.html

<comment><USER2> Hopefully the workarounds aren't too painful. It's nice that Tesla doesn't have to buy/lease expensive real estate in Austin and deal with all the headaches associated with that. Unless it isn't worth it--I'm not well-versed in car dealership operations.</comment>


Airbnb guest won't leave, forcing condo owner to begin eviction proceedings - <AUTHOR> http://www.abajournal.com/news/article/airbnb_guest_wont_leave_forcing_condo_owner_to_begin_eviction_proceedings/

<comment><USER2> "His response: He was legally entitled to stay in the condo, and the loss of electricity would threaten his at-home work, which pays up to $7,000 a day." He's obviously delusional and is just repeating the comment spam he posts all day.

It's to bad this woman doesn't know someone say like me... One five minute conversation with him and he would be packed up and gone in 24 hours.

<comment> saiko-chriskun oh?

<comment><USER2> Most people prefer not to have parts of their body permanently modified by someone they don't know and can't identify to the police. "Gentle" persuasion is a lost art...

<comment><USER2> I must be getting down-votes by attorneys who prefer innocent people be tied up in frivolous lawsuits for years.</comment></comment></comment></comment>


AT&T allegedly "discriminated" against poor people in broadband upgrades - <AUTHOR> https://arstechnica.com/information-technology/2017/03/att-allegedly-discriminated-against-poor-people-in-broadband-upgrades/ <comment><USER2> Lamenting the death of municipal franchising shows a basic failure to understand the economics of telecom. Municipal franchising is the worst of both worlds: all the downsides of creating local monopolies with none of the upsides of having a government-owned network.

If we want to build broadband to poor neighborhoods, we should just tax people and have to government build it. The municipal franchising model is an awful way of accomplishing that goal. In return for building broadband to poor neighborhoods (where most people can't afford it anyway), you basically kill competition. Nobody but the incumbent can make enough money in an environment where they have to build _everywhere_ in order to receive permission to build _anywhere_. And it basically bans "MVP" models of deployment, where a provider starts in a focused area with demonstrated demand and expands gradually.

<comment><USER3> Poor people dont pay a lot of anything in taxes, so essentially what you propose is yet another tax increase for the middle class.

<comment><USER4> Things are more complex than this. If your view of humanity includes making sure people have something to eat, somewhere to sleep, and don't die from simple preventable medical issues, some amount of investment is a net positive.

Instead of just providing food, shelter, and basic medical care - helping them to get a job turns them into tax providers rather than consumers. Helping them to eat and live healthier reduce the medical cost.

<comment><USER5> It is this simple. There maybe other angles to consider, but it is just a money from another community.

> helping them to get a job turns them into tax providers rather than > consumers

So does cutting welfare.

<comment><USER4> We have this retoric in Denmark in the current political climate. It only works to a certain degree, but the liberals have this wet dream where everybody becomes contributing citizens if we just take away everything and threathen their existens. It just doesn't work that way for everybody.

</comment></comment></comment></comment></comment><comment><USER6> "Ok fine, we will just deploy municipal broadband in our community and pay for it ourself."

...and watch AT&T lobbyists start crying and screaming about the "unfair" competition from local governments. Rememeber, government is good when it helps the rich, but bad when it helps the poor!

<comment><USER7> It isn't so easy to build and maintain a utility. Esp when you're the government and have to deal with unions (alongside fair wages, acceptable working conditions), there are ongoing costs that we need to pay somehow.

Another commenter complained how it would raise taxes on the middle class. I wanted to disagree but can't because the upper middle class has its tax credits/deductions and the upper class has even better loopholes leaving the rest of the middle class to pick up the tab.

Money is a difficult topic. Looking at Kansas City, Kansas and Missouri hand out tax breaks to attract businesses to come to their side of town. Can we put a tax on the national level? Then we need to distribute the money and it gets messy.

<comment><USER8> Well, yes, maintaining a utility is difficult, but it's also quite doable in many locations around the US where municipal fiber is present and running pretty peachy. I lived in Tacoma, south of Seattle, for a bit, and the municipal broadband there was pretty darn good in all aspects. Set up, config, cost, billing, and discontinuation when I left was incredibly simple, speeds were comparable to Comcast wired households, and honestly, it was just a great experience all around. I never heard a peep from them for anything besides when there were large issues or outages they needed to report.

While I dislike Comcast, AT&T, and their contemporaries as much as the next person, I don't really have a horror story of my own with them; I just greatly preferred the service and support for a home-grown ISP instead of having the looming threat of bandwidth caps or other such changes over my head for time to come.

Municipal broadband is VERY easily doable and a great solution for many places where the incumbents refuse to meet the needs of the taxpayers that are subsidizing the networks. Having internet as a public utility resulted in some really great service and a fantastic product.

</comment></comment></comment><comment><USER9> Is this even news? If they thought there was a profit to be made by offering them upgrades, they would do it. They haven't, so you can probably assume that there is no profit in doing so. Last I checked, AT&T was not a charity and does not have an obligation to give people things at cost. This isn't discrimination, it's business. Nobody has a right to a fast internet connection.

<comment><USER10> That would be all well and good if they didn't collude with the local authorities against competition and collect "universal service" funds from the government in exchange for, at most, the barest minimum effort. Either be a benevolent monopoly (no such thing IMHO) or compete in a free market.

<comment><USER9> That's a separate issue though, and something I am quite strongly against. The article was about "discriminating" specifically against the poor, and unless you'd like to argue that their collusion is willfully and knowingly done specifically to discriminate against poor people, I don't think it applies.

<comment><USER10> I agree that we shouldn't be too quick to label every potentially unfair situation as discrimination. But part of the original intent (Ajit Pai notwithstanding) of the USF was to bring quality service to rural and low income areas, so AT&T should be careful to fulfill their obligation and, ideally, the government should hold them to it.

<comment><USER9> I agree completely, AT&T should absolutely honor their legal obligations.

</comment></comment></comment></comment></comment><comment><USER11> Can anyone explain to me why the internet isn't public like roads?</comment>


Ask HN: recommendations for domain registrars - <AUTHOR> I need to register some .com domains, and it seems like a service I should be able to get very cheaply. Currently I use 123-reg.co.uk but I'm sure there must be something better out there. I'm also sure going with a cheap provider will likely turn out more expensive in the long run... In case it makes a difference, I'd also like to migrate over a .name domain, to keep everything within one account. <comment><USER2> <http://name.com>

I've used godaddy, namecheap, and 1&1, but ended up switching all my domains to name.com. One of the best interfaces I've used as it doesn't try to abstract the DNS records from you. That was one of my biggest issues with 1&1 and godaddy - their interface made it so that I never knew exactly what my DNS settings were, just what the spoon-fed messages that I was given told me. The only "abstracted" thing that they do is provide a one-click solution for setting the dns entries for google apps (which you can still manually edit, as they appear in your DNS records). Here's some screenshots of the backend:

<http://i.imgur.com/F5j5m.jpg>

<http://i.imgur.com/rx3uq.jpg>

<http://i.imgur.com/vGwwz.jpg>

Seriously, try it. I liked them so much that I paid to have my other domains transfered to them. That alone should show you how much I enjoy it over the others I've tried.

<comment><USER3> I switched from GoDaddy to Name.com and almost cried for joy when I bought my second domain name there and it took 10 seconds as opposed to 10 minutes.

<comment><USER4> I dont really know why any person on earth chooses godaddy

<comment><USER5> Same for me, I hated GoDaddy. To surf their site form menu to menu it's take more time to load and why people like GoDaddy?

</comment></comment></comment></comment><comment><USER6> Just recently I launched <http://dnsimple.com/> since I was fed up with GoDaddy and decided that I never wanted to use them again in my life, and I knew others felt the same way. DNSimple has an easy to use web interface, a REST API for domain registration and DNS management and an iPhone app. The service is pretty new but the response so far has been positive.

Under the hood I used enom for domain registration and PowerDNS for the DNS portion. enom has the best API of all of the registrar APIs I looked at. To be a reseller there is a bit of an investment, but it's still significantly less expensive than becoming an accredited registrar.

I've been in the domain industry since 1999 when .com was deregulated, and built one of the first domain registrars (but I wasn't the founder thus left when the founder decided to go other directions) and it is unfortunate how little inovation has occurred in the domain industry. Hopefully that'll start changing soon.

<comment><USER7> Hi Aeden, is there any minimum spend required before registration/hosting API use?

<comment><USER6> Nope, you should be able to begin using the API immediately upon signing up.

</comment></comment></comment><comment><USER8> <http://joker.com> or enom.com for domains

<http://easydns.com> for DNS (don't be cheap on DNS - most that registrars offer is slow/cheap/bad/down)

<comment><USER9> I've been using joker.com since the first .com crash, and they've been a reliable, no-nonsense host the entire time. it's about $12 a year per .com or .net, but as I'm not a domainer, the extra few bucks doesn't matter much. what I like is that they don't try to spend a lot of effort up selling you. I can go on their website and do something and be reasonably assured I won't be incurring extra charges.

<comment><USER8> Same - I have been using the joker + easydns combo for as long as I can remember with both my own projects and client projects. Across all of that usage I have never had a problem.

</comment></comment></comment><comment><USER10> Gandi.net is my favorite. Decent prices, big selection of ccTLDs, great UI.

<comment><USER11> +1 on Gandi. A very nice UI, and I like having my registrar outside the US. As a DNS host, it's robust enough, but they don't provide SPF records (~ 6 months since I've looked.)

<comment><USER12> SPF records are just TXT records, which they do support? I understand theres an actual "SPF" record type also but last I checked its not very widely adopted and the TXT version is exactly the same anyhow.

</comment></comment></comment><comment><USER13> <http://godaddy.com/> \- Cheap (esp. for just a year, renewals are a bit more) but their interface sucks.

<http://namecheap.com/> \- Almost as cheap, and has a much better interface.

Those are the two I use exclusively, minus some for ccTLD-specific domains.

<comment><USER14> Seconding namecheap. They usually have coupons as well.

<comment><USER15> 3rd recommendation for NameCheap here. I've used them for 4 years, never had a single problem with my domain portfolio. They are 2nd to no one. The bonus is that NC offers their excellent services at the cheapest prices... do a google search for their monthly coupon.

<comment><USER16> 4th recommendation for namecheap. Easy management, no adds or clutter when purchasing, and as the name sugests, cheap.

<comment><USER17> another recommendation. I have 300+ domains with them. very good control panel, esp for bulk.

<comment><USER18> again, I love namecheap. All domains are with them

<comment><USER19> I've been using them for well over a decade. No nonsense, low prices, interface miles better than GoDaddy.

<comment><USER20> Yet another NameCheap recommendation. Pretty awesome, and a usable -- if ugly -- UI.

<comment><USER21> +1 Love NameCheap, best I've used.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER22> I like <https://www.nearlyfreespeech.net/> for their policies on complaints and DMCA notices.

<comment><USER23> In my search for a GoDaddy alternative I switched one of my domains over to nearlyfreespeech.net. My only complaint so far is that you have to pay to add money to your account, so the prices they advertise aren't really the whole picture.

Other than that it seems like a pretty decent service, especially if you want to take advantage of their privacy policies, etc.

<comment><USER24> To their credit, the "25 cent" price tag would really only make sense in a prepaid environment. I kinda figured nobody would charge less than credit card processing fees.

</comment></comment></comment><comment><USER25> Google actually registers domains (in partnership with outside registrars):

<https://google.com/a/cpanel/domain/new>

$10.

The advantage is they come all easily configured for Google Apps usage.

<comment><USER26> I use this too, although I'm not entirely happy with what a PITA it has been to transfer domains if I sell them or give them to other people.

It's a pretty good deal though, you get a domain with email, apps, etc... built in, all for 10$.

<comment><USER3> Google Apps standard edition is free. The only thing you're saving here is the 5-10 minutes it would take to switch MX records and verify your domain.

Name.com has this built in as well and they're a proper registrar.

<comment><USER27> I've taken this approach, as well. Given Google's rather complete lack of individual customer support, I do not relish the idea of trying to get a name transferred away from their registrar, in the event I need to.

I don't have any particular experiences with doing this; rather, I'm just being pre-emptively cautious.

</comment></comment></comment></comment><comment><USER28> I use moniker, they're pretty good. They got bought out by oversee but the oversee people have seen fit to leave moniker to run as independently as possible.

</comment><comment><USER29> I use Dreamhost because it's a no-bullshit admin, the price is decent, and I can easily host stuff that doesn't require a VPS or better (which is the majority of my domains) essentially for free.

<comment><USER30> +1 on Dreamhost. They also throw in free domain privacy so your personal details aren't plastered all over the net.

<comment><USER31> Dreamhost kinda sucks. My work has a few domains hosted there and their servers have gone down over 4 times in the past 10 months alone. Support is terrible too.

<comment><USER29> I've had an account there since 2001. I host 25 domains on it. Downtime is rare, performance is better than any of 10 other shared hosts i've used since 1996, and support is well adequate. If you have serious performance issues you can ask to be moved to a different server. Dunno what people expect for $100 / year, but there's not much better than Dreamhost and my anecdotal evidence is worth more than most because I worked for years at an agency that resold hosting to hundreds of clients via various whitelabel and dedicated hosting services not to mention freelancing for dozens of clients.

</comment></comment></comment></comment><comment><USER32> NameCheap.com is my favorite 'retail' registrar. Their owner goes above and beyond to resolve things. He also is an expert about domains and the quality of their interface and features reflects it.

If you're registering 100+ then Fabulous.com is the best registrar around (though they only deal in com/net/org/info).

</comment><comment><USER33> Google Apps (<http://www.google.com/apps/intl/en/business/index.html>) is a eNom reseller, and provides you with all the Google goodness (mail/docs/cal).

1 year = $10 (privacy included).

<comment><USER27> Well, it makes me feel a bit better, knowing they are reselling eNom.

Is there any route to direct access to eNom, in the event Google (lack of) support becomes a problem?

</comment></comment><comment><USER34> <http://dynadot.com/>

No fuss, no tricks, non-crappy administration area. They even provide their own name servers for free. I've been using them for years and have no complaints.

</comment><comment><USER35> Dynadot <http://dynadot.com> has excellent service, lightning fast website. Working great for my domain names.

<comment><USER36> I'll second dynadot. I switched from godaddy a few years ago and could not be happier. Website is lean and fast, domain lookups are super fast, and checkout is a simple 1 minute process.

</comment></comment><comment><USER37> I prefer gandi.net

<comment><AUTHOR> I love it - modern UI and a convincing tagline, I knew something like it had to be out there! (Thanks everyone for replying though.)

</comment></comment><comment><USER38> Personally I prefer Godaddy. The interface needs some work but I have found that by using them I get really low propagation delays. Their service is pretty flexible facilitating stuff like privacy and configuring your domains to host their own nameservers.

</comment><comment><USER39> <http://hover.com/> is positioned as the anti-GoDaddy: simple price structure, clean UI.

GoDaddy made it clear they have no respect for the customer with their horrendous UIs and upselling. Felt compelled to leave them recently.

</comment><comment><USER40> I use enom.com

If you're going to do any quantity of domains above 5 or 6, it's worthwhile.

Stay away from godaddy.com (IME).

<comment><USER41> I agree on Godaddy.

Enom has a nice interface and good prices, though I don't trust their DNS or email (occasional outages).

Also,

\- If you just click the "email" select box in the UI, it can drop your custom MX record, even if you don't hit save.

\- If you use their DNS hosting for an outside domain that expires, they point to an advertising page and it's hard to make them switch back.

</comment></comment><comment><USER42> Here is a list of every accredited registrar: <http://www.internic.net/alpha.html>

Lots of issues to consider beyond price. Go with a US based registrar if you are in the US as you will be governed by their laws with regard to disputes or jurisdiction issues. Some will hit you with hefty RGP (redemption grace period) fees if you miss the renewal date. Domain theft is a becoming a huge issue, so finding a good registrar can be very important for your business.

Moniker.com and NameCheap.com are the best in my opinion with Demand Media's eNom right behind them.

</comment><comment><USER43> I have long preferred <http://namecheap.com> for the usual TLDs and (somewhat more recently) <http://domainsite.com> for many ccTLDs. I very recently transferred an important domain from <http://joker.com> after inadvertently discovering that an account could be accessed from a machine that I had not previously used to log in. (I copied the session ID and I was on the same network but it was enough to convince me to make the switch.)

</comment><comment><USER44> Godaddy burned me badly a short while ago, so I am switching all my domains to Netfirms.com. I used to have my personal domain hosted there for free, and I have never had any problems at all with them.

<comment><USER45> I recommend <http://netfirms.com/>. Excellent service.

</comment></comment><comment><USER46> I've got one domain on Dreamhost and one on 1&1 ... both work fine, but Dreamhost's interface is MUCH better than 1&1.

All in all, would you guys recommend keeping your domains registered at a different company than your hosting company? I've considered moving my domains in the future when they expire to a separate domain register, but not sure if it's worth the hassle...

<comment><USER47> I would recommend to separate:

1\. Domains 2\. Hosting 3\. DNS 4\. Email

Don't throw all eggs in one basket... ;)

</comment></comment><comment><USER48> Any suggestions for registrars of domains that aren't .com/.co.uk/.net/etc.?

I notice that a couple of those mentioned (Namecheap.com, Name.com and Gandi.net) offer this service, but is there a specialist registrar anywhere, or are these good enough?

 _(I'm looking to register a number of .nl domains and have no idea where to look in terms of quality registrars.)_

<comment><USER43> <http://domainsite.com> is my go-to for many ccTLDs.

</comment></comment><comment><USER49> I have always used godaddy (inexpensive) but have recently started using hover.com. Low prices, much cleaner interface. As a +1 to godaddy though, I've noticed in the last couple of days a much better registration interface that still is allowing them to offer their up-sells but is much nicer to get through.

</comment><comment><USER50> I use inexpensivedomains.com for my personal stuff, and have been very happy with them.

One thing I'll point out though, sometime the lowest prices aren't the most important thing. The domain name people at work have recently chosen to shift all of our domains to a <http://www.austdomains.com.au/> account, which is not the cheapest around, but apparently has a _much_ better multiple domain management system than any of our previous registrars. A buck or less extra per domain per year, but it saves a _lot_ of time/money when the management system "just works".

(Note, this is from over-the-cubicle conversations and overheard rants rather than firsthand experience, so don't read it as a personal recommendation of austdomains, rather as a warning that managing hundreds or many hundreds of domains is a different scale of problem from a few or a few dozen, and make sure if you're likely to run into that problem that you consider the suitability of your proposed registrars. I've been happy enough with Intaserve for my .au domains, but my work colleagues _hate_ them with a passion!)

</comment><comment><USER51> Hm I have a question: What would it take to register the domain myself, without going through goDaddy and others?

Can't one set up a DNS-Server and start propagating records, while perhaps informing the authority that you are using a (previously available) domain now?

<comment><USER52> To do that, you need to be a registrar. It's not without a good deal of bureaucracy and pain. See <http://www.icann.org/en/registrars/accreditation- process.htm>

<comment><USER51> Ah, I see. Thank you for the link!

</comment></comment></comment><comment><USER53> I am using GoDaddy for m throw-away domains and regfish.com for more specialized TLDs. Regfish has a great, personal service, is based in Germany (how about that for a change ;-) and has decent prices. Great UI, lot less slack than GoDaddy.

</comment><comment><USER54> Name.com FTW.

I am currently in the process of switching all of my domains from Godaddy to Name.com. The simplicity of the UI, Google Apps integration and reliability of their network made this a no-brainer.

</comment><comment><USER55> I used DynDNS as a reg for years, but when I wanted to customize the MX record, they wanted another chunk of money - buh-bye!... Probably going to Hover next.

</comment><comment><USER56> <http://iwantmyname.com/> has a pretty cool bulk search option. Simple and clean UI too.

</comment><comment><USER57> I've found <http://domainmonster.com> good value, full-featured and reliable.

</comment><comment><USER58> I've used <http://www.1and1.com/> a lot and have had no problems.

</comment><comment><USER59> <http://services.sify.com/index.php> is very cheap.

</comment><comment><USER60> I'm very happy using <http://dyndns.com> for a couple of my domains.

</comment><comment><USER61> I use NearlyFreeSpeech. The interface is one big PITA, but they're cheap enough and I like their TOS.

</comment><comment><USER62> How do you guys cover the domain expense for sitting domain? Any recommendations for parked pages?

</comment><comment><USER63> I've been using namecheap.com for about 7 years and not once have I had an issue with them.

</comment><comment><USER59> <http://www.freehostia.com/>

</comment><comment><USER64> I'm pretty content with hostway. They have one of the lowest prices for domain names, and have a decent interface. They also don't try to upsell any of their other services when you are going through checkout.

I would stay away from 1and1. They have some pretty sketchy billing practices.

</comment><comment><USER65> Shameless plug: try out <http://core.hostroute.com>. I personally think our domain lookup tool is the best I've used. I've probably used them all ;-)

</comment><comment><USER66> I use namespro.ca for Canadian domains (ie .ca)

</comment><comment><USER67> I've been pretty happy with NameSecure

</comment><comment><USER68> i love <http://domai.nr> for searching availability.

</comment><comment><USER69> Love Name.com

</comment><comment><USER70> name.com - they are honest, small (i.e. responsive) and do the right thing

</comment><comment><USER71> joker.com is pretty good.

</comment><comment><USER47> We've started building a better experience for domain seekers at <http://iwantmyname.com>.</comment>


Booth Babes Don't Work - <AUTHOR> http://techcrunch.com/2014/01/13/booth-babes-dont-convert/

<comment><USER2> They don't convert - but they do make the conference and the conversions possible. Am I the only one who enjoys being in the company of attractive people? I doubt a convention like CES (which I attended, and performed real business at) would be nearly as popular if it weren't so damned entertaining; it's popularity that ensures the audience you actually need to meet is there.

And though I thoroughly separate ambitions/intelligence/drive from appearance when I'm hiring (if you can help me make money you're in), I'm inclined to use a throwaway account so I don't get publicly chastised for PCness.

<comment><USER3> >They don't convert - but they do make the conference and the conversions possible.

This sentence is an oxymoron. They have a negative effect on conversions, but they have a positive effect on conversions.

Tell us more, Slick. The article demonstrates quite conclusively that they have a negative impact on his business' lead generation, period.

<comment><USER2> The experiment simply lacks controls - remove the booth babes from the conference all together (from all your competitors booths), and show me increased conversions relative to a typical booth babe presence.

Why do you consider this a conclusive demonstration?

Also, since I'd like to respond to it appropriately, can you expand on what you're trying to make me think about myself by calling me "Slick" \- is that an insult?

<comment><USER4> If the hypothesis is "there will be more conversions if no one at the conference uses booth babes" then this was not a sufficient experiment.

But if the hypothesis was "there will be more conversions if MY company refrains from using booth babes" then this was a useful ("conclusive" is probably too strong for a single data point) experiment.

</comment></comment></comment></comment><comment><AUTHOR> blueskin_ is wrong. As a middle name, I named my 1-year-old after Countess Ada of Lovelace in order to encourage her to view computer science as a positive, welcoming field.

Try explaining to a 15-year-old or 21-year-old woman why the presence of booth babes shouldn't impact their choice of a career. In an industry with an overwhelmingly male population, with a (deserved) reputation for cultural quirks that tend to follow those of adolescent males, and few widely acknowledged and celebrated female successes, the contextual message of booth babes is pretty clear. And that message, based on the evidence, is: your gender is not welcomed here.

I know you believe that your private pleasures have no public impact -- you enjoy booth babes, so what's the problem?

I'd say the problem is that my goals are different from yours.

I don't think a professional event should appeal to the sexuality of either gender, and should support the professional development of both.

I don't think your private, personal enjoyments have all that much relevance to the success of the industry as a whole.

I don't think waving off the high turn-off value of this marketing mechanism is warranted on the facts.

And I don't think, in an industry that prides itself on being rational, scientific, and logical, that booth babes reflect well on the marketing choices or expenditures of our industry's leaders.

With our different goals, we will come to different conclusions. And, as a value judgment for what our industry is and what it ought to be, I think your goals are wrong.

</comment><comment><USER5> How about people do what they want and leave other people alone? I know it's a strange concept, but I think it might catch on.

If you don't like them, don't hire them. If you do, go ahead.

Oh, and the article has all the experimental rigor of a homeopath's (i.e. magic water con artist's) magic 'proof'. No controls, no adjustment for other variables, only a single data point. I'm also inclined to guess that yes, they could be a negative for a less well known company/brand/product with a small presence, but not so for a bigger one. Finally, it's about the entertainment factor - fewer people will go overall if there's less interesting things there.

<comment><USER4> > Oh, and the article has all the experimental rigor of a homeopath's (i.e. > magic water con artist's) magic 'proof'. No controls, no adjustment for > other variables, only a single data point.

I disagree. It is a single data point done with a control (and some speculation that is NOT a valid scientific experiment). This article has infinitely more actual data than any other study on the matter that I've ever seen. A bigger and better experiment would be great (do you feel like funding one?) but even this much is nice to have.</comment></comment>


Reasons to upgrade to Internet Explorer 11 - <AUTHOR> https://technet.microsoft.com/en-us/ie/mt163707 <comment><USER2> "Best backward compatibility of any browser". This is a reason _not_ to use IE11, but thanks for reminding is that you're the best at implementing the various broken standards implementation you inflicted on everyone.</comment>


Egypt blocked Facebook Internet service over surveillance - <AUTHOR> http://www.reuters.com/article/us-facebook-egypt-idUSKCN0WY3JZ <comment><USER2> Terrible headline, they blocked it because they were given the ability to _conduct_ surveillance.

<comment><USER3> Really ?

> Two sources with direct knowledge of discussions between Facebook and the > Egyptian government said Free Basics was blocked because the company would > not allow the government to circumvent the service's security to conduct > surveillance.

Sure sounds like Facebook refused to hand the Egyptian government their https root keys.

Are you reading this differently ?

<comment><USER4> > Now, those using the Free Basics mobile app can connect directly with > encryption to secure sites. Those connecting via the Free Basics website can > connect securely to Facebook, which decrypts and then re-encrypts user > traffic before sending it along to partner sites.

The problem is Facebook has the ability to see everything. I can't believe those of us who rallied against LinkedIn when they tried to mitm our emails are now suddenly OK with Facebook doing the same in the band of free basics.

<comment><USER3> I don't see how you can read that in those texts. Also, I'm sure facebook would be open to fix that given the tools to do so (maybe http proxy).

Plus I find it extremely hard to believe a government is concerned about it's citizen's privacy. I find it much more likely that the Egyptian government wanted guarantees that it could spy on everything done on Egyptian wireless networks.

It seems to me what that sentence is saying is just the opposite of what you claim : that Facebook refused to let the Egyptian government spy on all traffic over their free basics.

</comment></comment></comment></comment><comment><USER5> Egypt blocked Facebook because Facebook refused to allow the Egyptian government to conduct surveillance.</comment>


Boeing's 737 MAX software outsourced to $12.80-an-hour engineers - <AUTHOR> https://www.smh.com.au/business/companies/boeing-s-737-max-software-outsourced-to-12-80-an-hour-engineers-20190629-p522h4.html <comment><USER2> While it's painful to read, this sort of thing is happening at most non-"tech" companies that find software becoming a necessary component in their products.

Software development especially at long-standing Fortune 500s is viewed by the old-guard management as an interchangeable cost-center and the results at Boeing are the predictable result.

</comment><comment><USER3> This appears to be a word to word clone of the Bloomberg article discussed earlier here [https://news.ycombinator.com/item?id=20309052](https://news.ycombinator.com/item?id=20309052)

</comment><comment><USER4> Honda does this, half of their design workforce at their r&d design center in Ohio are contractors.</comment>


Table Saw Safety - <AUTHOR> http://www.youtube.com/watch?v=u7sRrC2Jpp4

<comment><AUTHOR> Scariest video I've seen in ages.</comment>


33 Percent Of Google Users Will Use Bing More After 'Bing It On' Challenge - <AUTHOR> http://searchengineland.com/bing-33-percent-of-google-users-will-use-bing-more-after-bing-it-on-challenge-135158

<comment><USER2> Something that would probably be worthy of a blog post: the Google results in the Bing It On challenge are unfairly neutered.

Try doing the Bing It On search for something like "radiohead". You see two columns of plain old search results, both are fine. But if you go straight to Google.com and search for "radiohead", you get more than just the normal search results, you get a bunch of extra details on the right side of the page. Those extra details are super relevant and helpful, like the band's members, popular songs, upcoming events, etc. If you go to Bing.com and try the same thing, it also has some extra stuff on the right, but it isn't nearly as good.

This happens for lots of searches. Google often shows some really helpful domain-specific information, but that extra stuff doesn't show up in the Bing it On challenge.

<comment><USER3> This is also true for sports related searches. On Google when I search for the Dallas Cowboys I get the scores of their 2 most recent games and with one click I can have their full schedule without ever leaving Google. On Bing I get their last games score and a few upcoming games, but if I want more info then it takes me to foxsports.com.

</comment></comment><comment><USER4> Apparently Bing's press release didn't state what proportion of people found Bing to be better than Google, or even what proportion found it better-or- equal.

If those statistics had been favorable, they would assuredly have been reported.

(Note: Bing's blog post [http://www.bing.com/community/site_blogs/b/search/archive/20...](http://www.bing.com/community/site_blogs/b/search/archive/2012/10/02/over-5-million- have-visited-the-bing-it-on-challenge-35-of-google-primary-users-say-they- would-use-bing-more-after-taking-the-challenge.aspx) does mention the 2-to-1 preference claim again, but that's from a previously commissioned study, not from the Bing It On Challenge.)

<comment><USER5> Yes, but it's still a great move by Microsoft.

Look at it this way: how many of the people who visit the page are going to switch _away_ from Bing to Google?

Probably not too many. So even if they just get lucky one in fifty times with a search on which bing does much better, that's a huge net positive for if lots of people try it out.

</comment></comment><comment><USER6> From the headline: 33 Percent Of Google Users Will Use Bing More After 'Bing It On' Challenge

From the article: 33% said they would use Bing more often after taking the Challenge

Two very different statements IMO - how many of those 33% are ever actually going to think about it again rather than just reverting to their old habits?

<comment><USER7> Very true, realy it is 33% of those who bothered to try it and bothered not to verify the results and bothered to tell them. I had a go, had a big fat picture splat up on my screen with some perverce advent calandar mentality going on. I concluded Bing failed at that point, and as I didn't record my input as many others then I was never counted.

That raises the point that optional feedback will gain 100% of those who migrate at the time and a far lower percentage of those who will not. So that 33%, well you can half that and half again and still be short on the number who tried it.

Now if that 33% was also backed up by access log saying we had 10,000 unique vistors to this experiment and 33% of those said they were using bing now then I'd be less sceptic.

You can also bet this 33% will get turned into 33.33 recuring % or 1/3rd and from there the lie will be complete.

<comment><USER8> good luck on getting a hold of the unique visitors. I ran into this and suspected the exact same "gaming"

</comment></comment></comment><comment><USER9> If anybody from Microsoft is reading this:

I will switch to Bing if you enable SSL search.

I tried it for a few weeks w/o SSL and I liked it. Until then I will not use it, nor recommend it to anybody else.

<comment><USER10> Duckduckgo uses Bing results. - <https://duckduckgo.com/>

</comment></comment><comment><USER11> For kicks and giggles I switched to Bing on Safari on OS X and iOS to see if I'm denying myself search results. I'd assess the results and sometimes I'd go with what Bing returned but instinctively I'd end up going back to Google to get more accurate results.

I think it's going to take more than "The Pepsi Challenge" to get people to switch. To get people to switch Google would have to start giving worse results than it gives now. Otherwise you're likely not changing. Even if Bing gave better results I'm not sure people would switch due to inertia.

</comment><comment><USER12> I took the challenge and google beat bing 4 to 1 for me.

<comment><USER13> Same result here. I wonder if Bing is better for the non-techie crowd.

<comment><USER14> I use Bing as my default search engine, but for anything tech related, if I have trouble finding it on Bing, I switch to Google. There is clearly a difference between the two.

Google seems to have simply more pages indexed and that helps with obscure error messages or API usages, but seems to hinder it when searching for anything relatively common.

<comment><USER15> That's my experience as well. Because of this I use DDG as my main search engine now, mostly for privacy but also because I can switch to Google when it or Bing's index is lacking.

</comment></comment></comment></comment><comment><USER16> I think it's important to also consider that most of the user's trying the 'Bing It On' challenge are already at least considering switching services or interested enough in bing to give it a shot. Even if 33% of these users went on to use Bing more after, this doesn't represent your average google user.

I also doubt that 33% who say that are going to use it more actually will. If it was that easy Bing would already be huge.

</comment><comment><USER17> Bing does far less word-stemming in my experience which is probably because of inferior technology but it's often a more desirable result.

For instance if you search a weird business name, Google tries to make it into more statistically and phonetically common words. Bing gives you more of a literal search. So they're going to wow a proportion of users who find that's what they want.

Google is so annoying sometimes with word-stemming. You used to be able to use the + sign to turn it off. Then you had to use quotes. Now the quotes don't even seem to work. Sometime Google is too smart for its own good.

<comment><USER18> Google's verbatim search option will give you the results you want:

[http://www.wired.com/business/2011/11/google-verbatim- search...](http://www.wired.com/business/2011/11/google-verbatim-search-back/)

<comment><USER15> I wonder why they didn't consider going for a blended approach to the results (assuming there isn't too many permutations for the search term) with a disambiguation selector similar to the following, <https://duckduckgo.com/?q=test>

Would save clicking around, and probably solve the use case for 90% of people.

</comment></comment></comment><comment><USER8> Quite a few friends of mine took this test. 4 of the 6 of us who felt we almost certainly choose google could not load the results page. Not exactly a scientific study but I thought it was fishy. Anyone run into similar results?

<comment><USER19> I had the same result. The last page would never load for me. I know picked mostly Google results (because I recognized some links). But I tried again and purposely picked the Bing results and the last page still did not load. (I'm using Firefox 18.)

</comment></comment><comment><USER20> When the title started off with 33%, I simply dismissed it as bad math = bad article.

</comment><comment><USER21> I found myself feeling better about search results because they were styled like Google's results. I was assuming they were pulling a switcheroo on me, but they werent.

</comment><comment><USER22> I took the Bing challenge and I did feel that the Bing results were better, but because they felt like Google's results from maybe 3 years ago. Anyone who uses Google often can tell what Google search results look like, and those identifying features were exactly what turned me off -- Gplus results, the image galleries, other "features", etc.

<comment><USER23> WTF? A search page on Bing includes: * image search results * a 300 pixel wide column on the RHS for linking your Facebook account to retrieve Facebook results * News search * "Related searches" * "Trends to talk about"

</comment></comment><comment><USER24> If only MS would invest more into improving their products and less on advertising, then they might not even have to advertise. Google's search wasn't really advertised, it was just the best -- so naturally, users flocked to it.

I really think at this point that MS is just trying to outright buy market share with these elaborate campaigns.

<comment><USER25> I think this is not correct. Microsoft spends a lot in R&D. According to this [1] (as of d 3/21/2012):

      The top 10 companies and the amount they spend on R&D
      (in billions) in the past 12 months were, according to
      S&P Capital IQ:
      • Microsoft (MSFT): $9.4
      • Pfizer (PFE): $8.4
      • Intel (INTC): $8.4
      • Merck (MRK): $8.3
      • Johnson & Johnson (JNJ): $7.5
      • International Business Machines (IBM): $6.3
      • Cisco Systems (CSCO): $5.6
      • Google (GOOG): $5.2
      • Eli Lilly (LLY): $5.0
      • Oracle (ORCL): $4.4
      Apple is 18th on the list, spending $2.6 billion, behind other
      technology giants such as Microsoft, Intel, IBM, Cisco, Oracle,
      Qualcomm, Hewlett-Packard and Amazon.com. Apple's R&D spending
      as a percentage of its revenue of $127.8 billion was 2%.

[1] [http://usatoday30.usatoday.com/money/perfi/columnist/krantz/...](http://usatoday30.usatoday.com/money/perfi/columnist/krantz/story/2012-03-20/apple- marketing--research-and-development-spending/53673126/1)

<comment><USER26> It's interesting that you throw the Apple comment in out of context and blow your argument as a result. Apple's amazing success with low R&D expenditure shows how small the relationship between R&D and great products is.

It also says a lot about accounting, as how time is booked in an accounting system for tax purposes will drastically alter those numbers, even if the same work gets done.

<comment><USER25> I included Apple's comment, which seemed to be out of context to you, because it was not on the top-10 list, but it was the next paragraph in the linked article, and seemed to be interesting so you could have a view of the mayor tech players.

 _"Apple's amazing success with low R &D expenditure shows how small the relationship between R&D and great products is."_

Also, it's not my intention to make a comparison between Apple and MS here, but I think it's clear that MS spends a lot more because it has a broader set of products and services. Furthermore, you need to define "great product". Because what would seem to be great to consumers, may be totally useless to enterprises. And that is reflected today in the market.

<comment><USER27> I actually re-read your comment a couple of times searching for an sort of argument at all, let alone "blowing" it.

</comment></comment></comment></comment></comment><comment><USER28> In Australia, the domain is now redirecting to bing.com, has been since the release - though it worked for a little while.

<comment><USER25> Same here from Argentina. It worked when I fist tried it out a few days ago, but it just redirects to bing.com now...

</comment></comment><comment><USER29> The amount of organic I get from Bing is pathetic. Their webmaster tools are subpar. Bing still has a long way to go.

</comment><comment><USER30> I would challenge you to try Million Short vs Google for really long tail searches (example; gluten free cookie recipes). There's also a side-by-side comparison page setup in the same fashion as the bingiton challenge. millionshortiton.com

</comment><comment><USER31> Please give the "Million Short It On" challenge a try at <http://www.MillionShortItOn.com> challenge a try. You might be surprised by Million Short for long tail searches.

</comment><comment><USER32> That _Bing It On_ challenge fails to disguise Google's results to me. Tons of Youtube links, and the styling on the image results part is always Google-y.

</comment><comment><USER33> Weirdly enough the fact that this is a marketing campaign by Microsoft seems to be ignored when considering the numbers in the press release. There is also the curious omission of the percentage of people who found Bing to be "better" than Google.

Any reaction to Bing could have been a result of people being exposed to it for the first time not necessarily it being the "better" option. It also could be that people are having a positive impression simply because it's not as bad as they imagined it would be, as indicated by this claim: "64% of people were surprised by the quality of Bing's web search results.".

Also there is the matter of the ridiculous disclaimer about the features being omitted in the side-by-side as if they aren't integral to the search experience, not to mention that seemingly all queries to Google appear to be originating from Seattle which degrades the quality of local queries by user located elsewhere.

On a related note I recommend reading the _How to lie with statistics_ book, it's required reading especially when outlets copy/paste press releases: [http://www.amazon.com/How-Lie-Statistics-Darrell- Huff/dp/039...](http://www.amazon.com/How-Lie-Statistics-Darrell- Huff/dp/0393310728)

</comment><comment><USER34> "Bing won 0 rounds"</comment>


What Makes a Great Software Engineer? [pdf] - <AUTHOR> https://faculty.washington.edu/ajko/papers/Li2015GreatEngineers.pdf <comment><USER2> I don't get the "9 to 5 wouldn't make you a great engineer" about not being passionate, some people are passionate but have other life obligations like kids or other activities.

Being personable: "Can I have a beer with this guy?" is the worse in my opinion. I care about your professional skills and if you're communicating well, but you definitely don't have to be a beer buddy, we might have 15 years difference, a very different background and share very few topics in common over a beer (assuming you even drink beer) but you could still be a great engineer to work with.

Also you don't have to be a guy! The authors recognize that they only interview 5% women in the end...

So overall some good advice, but it has a huge sampling bias. therefore the definition of a "great software engineer" is only valid in certain circumstances. For instance the authors recognize creativity is important, but one could argue some of the most creative engineers that can be found are the people who do another, very creative activity on the side (arts etc). These people would tend to be "9 to 5" because their "6 to 8" are already booked, so even if they appear less "passionate" they can be a huge asset to the team.

<comment><USER3> > I don't get the "9 to 5 wouldn't make you a great engineer" about not being > passionate, some people are passionate but have other life obligations like > kids or other activities.

I think what the engineer is trying to convey is that a great software engineer thinks about code beyond just the job. I don't think the engineer literally means being a workaholic or the literal 9am-5pm shift, but the engineer has pet projects of his or her own that aren't necessarily related to work, as well as thinks of programming beyond just a paycheck as a personal interest (just as a photographer or any other craftsman would).

I've hired many programmers. The most disappointing ones were ones that only did exactly what their work told them to do. They would never read technical stuff or things like Hacker News on their days off.

The best programmers were the ones that built pet projects for their own needs. I remember one guy would write a script to download new wallpapers for his laptop to cycle through the hours of the day. If I recall correctly, Gmail was an engineer's pet project (when 20% time existed). Some contribute to Stack Overflow; others to open-source and to blog posts.

It's a lot like being a good restaurant cook or musician. You enjoy cooking, not just for the pay, but for how the craft empowers you. A good cook will think about what sides will pair with that steak, while an average cook will probably robotically sling together a dish. A good engineer will show passion.

<comment><USER4> I hear this sentiment a lot. I don't think it has much merit if any. Were musicians practicing scales daily 9-5 (+ occasional overtime when a customer urgently needs a modus they're not familiar with) - would you expect them to "enjoy" another 3h of fingering, possibly on some other instrument, in their spare time - because it "empowers" them and it's "a passion"?

<comment><USER5> I have been in music for some time, and this is almost exactly what great musicians do. There is definitely a time for activities that are 'neccessary' or 'good practice' to spend time on, and then there is a large amount of time they almost subconsciously spend in their field: they just enjoy having a beer with friends (at a jam session), having a chat (about music), hanging back (with their instrument), waste time on YouTube (watching poor quality phone recordings of musicians they look up to). Some don't think about anything else. Some have other interests. But I cannot think of one great musician that doesn't touch music when they're 'off from work'.

<comment><USER6> There is a difference between coding in your off time and reading Hacker News. What you're describing is someone who is relaxing not working. Aka great don't work long days mastering an instrument, just put in their 9-5 and casually have fun. So sure, if someone does not keep abreast of computing in their free time that's not a great sign, but deliberate practice works best a few hours a day not 10+.

PS: What side projects do provide is a way to have more experience than your number of years in the field would suggest. But, that has heavy diminishing returns.

</comment></comment></comment></comment></comment><comment><USER7> "Great" is in the eye of the beholder - to a large extent.

An engineer that is great in a startup ("hacker", "moves fast and breaks things") may be pretty bad in a well-established product that just needs maintenance. And the opposite is also true - a very thoughtful engineer that takes time to create thoughtful, simple & extensible designs may just move too slow when the idea was bad to begin with, and just needed to be invalidated. Also - who is "great", a generalist or a specialist? Depends a lot on what you need...

It is true that some engineers are simply better than others (I'll take Peter Norvig any day over someone who fails at fizzbuzz, regardless of the context/problem that needs being solved) - but it is also equally true that people need the right context to really shine. E.g. I bet Peter Norvig would't have done his best work working for, say, Accenture.

</comment><comment><USER8> I wrote a post a few years ago "50 characteristics of a great software developer" [http://www.supercoders.com.au/blog/50characteristicsofagreat...](http://www.supercoders.com.au/blog/50characteristicsofagreatsoftwaredeveloper.shtml)

Having said that, and having written it, I still believe the absolute core issue in all technical recruiting is that no-one knows _exactly_ what a great software developer is.

In fact, it is entirely subjective, and simply a matter of opinion.

I put it to you that most recruiting processes aren't worth a bent cent because the initial question cannot be adequately answered "OK, you're looking for 'the best' software developers..... PRECISELY what is that" And if an interviewer can't define precisely what they are looking for then how the heck do they know they found it with sufficient confidence to say "here is the right person for the job".

Most recruiting is simply Voodoo Recruiting, a collection of myths, legends, whispers, misplaced beliefs and pure nonsense. Does this person get the job or not? Shake the bones, look at the tealeaves, throw a rabbit over your shoulder and choose the person who gave the interviewer the best feeling.

</comment><comment><USER9> Seems to boil down to the same old tropes that apply to every kind of work, and every kind of person. A good {worker} works hard, works well in a team, is self-reliant(!) blah blah. A good person is honest, forthright, etc.

Outside of very specific fields I haven't seen anyone come up with specific qualities that identify great workers. And the useful attributes will be specific to a field. For height for basketball players, chances created for soccer players, on-base percentage for baseball, etc.

We don't like to say it, but maybe there's something similar in Software Engineering, like "Can code FizzBuzz in under 5 minutes". At the same time I recognise that coding quizzes are not the latest word on what makes a guy good at coding.

<comment><USER10> It is definitely "ability to stay on task".

The difference between a great engineer and a mediocre one is the latter will just get distracted, stop working the problem and decide to go for good enough.

The great ones will work the problem, try multiple angles until something doesn't just work but offers the right balance of simplicity, elegance, future proofing and does the job well. You can't get there if every 5 minutes you take a facebook break, or can't grind through technical documentation and make experiments.

<comment><USER11> Huh, I would probably include "the ability to stop at good enough" in my criteria for greatness. I've worked with people who couldn't resist looking for a better solution instead of checking in the one they had - even for time critical bug fixes.

</comment></comment></comment><comment><USER12> I'm surprised to not hear an engineer's memory as an important correlator to skill. I find that working memory especially (or the lack thereof) really can hinder my performance when dealing with a complex problem. Sometimes I think it is THE defining factor!

<comment><USER13> Notetaking makes working memory much less of a issue. I recommend you find a way that works for you, if you're interested in career longevity as an engineer. Personally I alternate between todo lists for completion and coverage, and dialectics of theory and test for design and troubleshooting.

<comment><USER12> Yeah, I've never really understood the note taking thing. I'll be working on simple algorithm problems that require me to hold 3-4 elements in my mind and constantly have to mentally reference them over and over. "what was the value of x again?" — which distracts from solving the actual problem! Maybe the experience that others have is different.

<comment><USER14> One can use notetaking as extended working memory by visually cross- referencing facts back and forth from the same page. More like a logbook.

</comment></comment></comment></comment><comment><USER15> This article seems to limit itself to the "enterprise" definition of a great software engineer.

The greatest software engineers in small businesses (or personal projects) don't do much development work. Instead they are working as true engineers: making good compromises and solving problems outside of the software which usually leads them into roles that don't have "software" or "engineer" in the title.

<comment><USER16> So true. It is about solving problems with software, adding value to the project and just generally giving a crap about the work they do. The last is one of the hardest as so many people are what I refer to as "hack 'n slash" devs, with an attitude of "I just did what I was told....".

</comment></comment><comment><USER17> Here is why working on your programming pet projects shouldn't become a metric.

The Japanese bullet train was redesigned by observing how nature works: [https://www.vox.com/videos/2017/11/9/16628106/biomimicry- des...](https://www.vox.com/videos/2017/11/9/16628106/biomimicry-design- nature)

"A moment of inspiration from engineer and birdwatcher Eiji Nakatsu changed all that."

Nakatsu did not become a birdwatcher to become a great engineer. So if you want to become a great engineer you follow what you want to do with your free time.

Also, I think people put too much emphasis on the degree of technicality over humanism. A unethical technical genius is not a great software engineer because there is no art in the engineering work. Great architects, chefs, and musicians view their work as arts with thoughts.

<comment><USER14> I can see both of these statements being misinterpreted, and in opposite directions, so I will offer my commentary.

(1) Metrics. Metrics tend to destroy the sort of motivation that allows a "task to be done for its own sake", where you are capable of immersing yourself fully in the details of a situation without excluding any "secondary" information (with respect to the metric or super-goal). Mastery of a task comes in part from being familiar with the fullest extent of phenomena within a domain. Pleasure proxies mastery by creating immersion, and is common for a hobby.

A master physicist knows all of physics. A civil engineer knows enough to build bridges. Only one of these people I would trust to make be able to create a new method of building bridges that wasn't incremental, or was based on a novel theoretical insight.

[building bridges might not be the best example because it's an older domain with a lot of time to be refined]

(2) I don't see technicality as being the culprit so much as an overfocus on technology. The "art" comes from either the amount of /craft/ that is put into the use of the technology or the amount of /humanity/, that is, consideration and care for how the users will perceive and receive the technology in an interpersonal manner. You mention three domains where aesthetics count but I don't think a focus on the study of aesthetics is necessary for us to apply the concept of art. These things can be done on engineering's terms.

</comment></comment><comment><USER18> A good engineer solves problems in the most feasible and working way possible. If its fast, cheap and usable then its fine. A good software engineer solves problems by generating software. Its amazing the amount of self called software engineers that are unable to design from start to end a simple software. So, a good software engineer is mainly a PROGRAMMER.

</comment><comment><USER19> Well obviously compiling a 10 page PDF, replete with references to 37 other sources, in order to establish the core 53 traits to identify the next great SWE is the simplest way to identify great engineers.

Just hand this doc over the HR and ask all hiring managers to memorize it.

</comment><comment><USER20> I'm gonna go on a limb here, but I would say a great software engineer is someone that can block out email, slack, meetings, the huge noise of open offices and get some 'deep' work done.

<comment> surrey-fringe I'm offended!

</comment></comment><comment><USER21> People skills. Empathy is hugely underrated and profoundly important. Whoever said "software is meant for other people to read, and only incidentally to be executed by machines" was on to something. All meaningful projects require cooperation and collaboration with other people. Most of the time, a solid coder with exceptional EQ will have more impact and effectiveness than an exceptional coder with indifferent (let alone subpar) people skills.

<comment><USER18> In small companies, a software engineer is a social job, it requires to talks with lot of people, specially with the customer (may be not all customers) but also, with others colleagues, with the people of infrastructure, sometime even with the people of finances (such as asking for a new server), with marketing or sales (if any), with design and so on.

In a big business, a software engineer is only a cogs that follows specific orders. I remember a blog of a former engineer of Microsoft that talked about it, he said that, in the past, Microsoft was direct, and having a technical meeting with Bill Gates was something usual. However, the company grow and those perks are long gone, now MS has a lot of bureaucracy and level and sub levels of complexity (so many executives and managers).

</comment></comment><comment><USER22> The ability to take a diverse sample from their interviewee pool and not just take the top 10 perfect looking resumes from recruiters for people they choose to spend time interviewing.

So many diamond-in-the-rough developers out there that would make good team members, but simply lack prestigious resumes or failed to put skill points in "Job Search" or attribute points in Charisma.

</comment><comment><USER23> Homer doesn't spent time describing Helen in the Iliad. He knew one thing or two about describing an _ideal_ I guess. Of course _beauty_ is orders of magnitude harder to define. The baseline principle is the same though: The moment you restrain what a good engineer _is /looks like_ your argument starts loosing ground.

</comment><comment><USER24> This study seems to be asking, "What makes a great Microsoft software engineer," given their sample cohort.

<comment><USER25> Agreed. The paper treated having a Microsoft-only sample as being good since it's a "large sample size", but the skill set of an engineer can be perceived as good or bad at different sizes of companies, and not addressing that seems like a huge oversight.

</comment></comment><comment><USER26> Articles like this one never look from the side of the engineer and / or never consider his opportunity cost.

Why would anyone work for you on an engineer salary if they are "great" and have all the CEO skills. They shouldn't.

Selecting for passion is selecting for people, usually young who have no life outside work, don't know their real market value and have easy to abuse personality, will tolerate agile micromanagement etc etc. Women usually have more social skills, enough to know not to become software engineers in bigco.

</comment><comment><USER27> At the end of the day this seems to me to be still anecdotal and not very testable. Would it be possible, given the code history of n number of developers + quality of the output code, to create a predictive model of a software engineer's 'greatness'? Seems daunting and fraught with potential problems but of a lot more value than just the typical platitudes; 'honesty, creativity, passion' (take three virtues, earthporn background etc)

</comment><comment><USER28> youth, gullibility, and the desire to please

</comment><comment><USER29> if you enjoy what you can do, only then you can master it. that would of been much simpler explenation ;D.... goes for all things too! And to be honest, 9 to 5 would make you a nice engineer. a lot of people like code, all day and night, but really, 8 hours of productive learning and coding each day is plenty to become very good at it...

I always reccomend anyone to learn whatever is below their current interest in the 'stack'. for example if you like to learn java code, learn what assembly code and perhaps even C code is, learn to implement oop systems in C or assembly and you will have a much finer understanding of why certain decisions are made in your platform, and what motivates these decisions oposed to others. for a web developer, learning what your browser is doing is very important, and to understand why certain things work that way in the end, you might want to learn about cpus, network hardware, assembly code and all that jazz. dig deeper and deeper for greater understanding. it might seem like a lot of work, but if you enjoy what you do, it's never to much and never to deep ;D

</comment><comment><USER30> How can you even ask this question? Different teams have such different dynamics, such different ways of working: different tools; different practices: I would be exceedingly surprised to find any commonality whatsoever.

The discipline of software engineering is no undifferentiated mass: but a cultural kaleidoscope of different textures and colors; and a person who excels in one environment can easily tank in another.

For safety critical embedded code: a meticulous personality is essential; only someone who is a stickler for rules and processes will survive, let alone thrive. In a fast paced and creative environment, this person would be absolutely terrible!

The size of the organization is also a critical in determining who thrives and who does not. In a small team, being an independent self-starter and problem- solver is critical; whereas in a large team, that sort of independence will quickly get you into real trouble.

Different organizations have different values and assign different priorities to the various qualities and attributes of the product and the people who design it.

My advice: be as humble and as flexible as possible; do your best to fit into your team and your organization; but do not be afraid to recognize when you are bending yourself out of your comfort zone: Be prepared to move around a few times to find the organization and the team that fits you, too. There is no shame in this, and you will be happier in the long run.

</comment><comment><USER31> Sorry folks, it's pretty much like high school out there. It doesn't matter what or who you know, it's the kind of person you are.

</comment><comment><USER32> I believe this should have (2015) in the title.

</comment><comment><USER33> Ny mom did!

</comment><comment><USER34> I stopped reading at "59 engineers...at microsoft"

</comment><comment><USER35> You make a great software engineer by practicing solving hard problems. There isn't any secret formula or mystique. It is thousands of hours spent solving problems of ever greater difficulty.

If you confine your practice to the 9 to 5 job then you are investing fewer hours than somebody who writes open source at night, and will likely be a weaker programmer. If you aren't independently finding new problems to solve then you will be a weaker programmer than somebody who is constantly stepping up their game. If you lack confidence and need frameworks, abstractions, and other bullshit to write a couple lines of code you will be a weaker programmer.

Simple. No magic.

<comment><USER17> > If you lack confidence and need frameworks, abstractions, and other bullshit > to write a couple lines of code you will be a weaker programmer

So you like to reinvent everything? Do you reinvent HTML & CSS because they are FRAMEWORKS, one of the foundational frameworks of today's web.

If your job only ask you to fix a bug, there here is how to make yourself valuable AND technically challenging:

* go through the bugs and analyze if you can extract any correlations

* propose better process with other fellow engineers and product owners

* implement changes

For example, someone might be duplicating some code to write tests, how about you write a test harness or adopt some open-source harness? How about work with your fellow engineers to begin start collecting some metrics.

Otherwise, time to look for a new opportunity. The absolute worst kind of programmers are the ones who don't don't take care of their health.

<comment><USER35> Perhaps if you wrote software in addition to doing that which is strictly assigned to you your question would answer itself. This isn't rocket science.

<comment><USER17> But there is creativity. You don't have to go an extra mile though, but you can. My response is to this:

> If you aren't independently finding new problems to solve then you will be a > weaker programmer than somebody who is constantly stepping up their game.</comment></comment></comment></comment>


Pieter Hintjens' Last Hack - <AUTHOR> https://status451.com/2016/04/26/pieter-hintjens-last-hack/ <comment><USER2> The end of biological life can be disconcerting, frightening, and tragic. But I truly believe we are on the cusp of an era where one's biological features - genetics, characteristics, phenotypes, etc...will no longer limit them.

"The unplanned organism is a question asked by Nature and answered by death. You are another kind of question with another kind of answer."</comment>


Faxing Your Way to System – Part Two - <AUTHOR> https://windows-internals.com/faxing-your-way-to-system/ <comment><USER2> If you already can drop DLLs into a protected folder on a machine, do you really need fax in the title? It seems like hacking with extra steps.</comment>


Why Tronc's ridiculous plan to produce 2,000 videos a day is doomed - <AUTHOR> http://www.vox.com/2016/7/11/12145044/tronc-video-plan-doomed <comment><USER2> The sad thing is this will actually make them money. Many of these automation strategies that usually end up getting banned by Google actually work too well.</comment>


Has Gmail's SSL Certificate Changed? How Would We Know? - <AUTHOR> http://it.slashdot.org/story/13/09/26/2250227/ask-slashdot-has-gmails-ssl-certificate-changed-how-would-we-know

<comment><USER2> [http://googleonlinesecurity.blogspot.com/2013/05/changes- to-...](http://googleonlinesecurity.blogspot.com/2013/05/changes-to-our-ssl- certificates.html)

      > This year our SSL services will undergo a series of
      > certificate upgrades—specifically, all of our SSL
      > certificates will be upgraded to 2048-bit keys by the
      > end of 2013. We will begin switching to the new
      > 2048-bit certificates on August 1st, to ensure adequate
      > time for a careful rollout before the end of the year.
      >
      > We're also going to change the root certificate that
      > signs all of our SSL certificates because it has a
      > 1024-bit key.

<comment><USER3> And remarkably, if we look at the new SSL cert:

        Size: 256 Bytes / 2048 Bits

</comment></comment><comment><USER4> Most people complain about the mods changing titles, but this (changed) one is a big improvement over the original.</comment>


Lockheed Martin's new fusion reactor might change humanity forever - <AUTHOR> https://gizmodo.com/lockheed-martins-new-fusion-reactor-might-change-humani-1646578094/ <comment><USER2> There are many interesting developments in fusion reactors, but this project almost certainly is not the one. If I could bet on betting markets, this CFR reactor project is the least likely to succeed.

People involved know enough about plasma physics to get in trouble and run plasma simulations, but they don't know not enough particle physics to solve the problems or see the problems until they start building one.

Edit: this news is from 2014.

</comment><comment><USER3> Lockheed Martin aims to develop compact reactor prototype in five years, production unit in 10 [2014] [https://aviationweek.com/technology/skunk-works- reveals-comp...](https://aviationweek.com/technology/skunk-works-reveals- compact-fusion-reactor-details)

It's very easy to say something is 10 years out, what's hard is to have a concrete plan how to deliver a significant improvement in 1-3 years.

</comment><comment><USER4> why work on minimizing the fusion reactor, when fusion reactors don't even work to begin with ("work" meaning "produce more energy than they consume for an indefinite amount of time").

Just nail fusion reactors and bam - energy too cheap to meter. We already have a distribution network, who cares if they're large?

<comment><USER5> Imagine if we can put fusion reactors in thing that can move like planes and ships...

<comment><USER3> Well, we don't have a single fusion reactor besides thermonuclear bomb.

<comment><USER6> I think we might just barely be able to build a piston engine large enough to make use of that. It would have cylinders capable of swallowing container ships whole. You'd want at least 4 cylinders of course, maybe more. It'd be something like a trillion-liter engine. The emissions control device and the muffler would likewise be huge. The fuel injectors would need to toss the thermonuclear bombs clear of the piston and valves and cylinder walls, ensuring some distance between the fireball and anything that could be damaged.

So yeah, there might be downsides, but I think this is actually a valid design for a fusion reactor. We really could do this.

</comment></comment></comment></comment><comment><USER7> I remember reading about this 5 years ago.

I wonder how far progress has gotten today?</comment>