Introducing Bing Code Search for C# - <AUTHOR> http://blogs.msdn.com/b/visualstudio/archive/2014/02/17/introducing-bing-code-search-for-c.aspx <comment><USER2> C# and .NET get a bad rap for being created by Microsoft. But one thing that can't be ignored is how polished their development tools are. I absolutely love coding in Visual Studio.

<comment><USER3> It pains me if I am honest. Our CMS is built on .NET and it's like an uphill battle selling it as it's on IIS and it's .NET. I have played around with the idea of reworking it into an open source language and open source database but I would miss Visual Studio and the language a lot.

I don't get all the hate?

<comment><USER4> I think it's less about not wanting to use Visual Studio and more about not wanting to have a Windows VM thrashing resources. I've worked with teams that have migrated to ServiceStack just to avoid running Windows.

Assuming that running Windows is a non-issue, the parts that really, really bug me are:

       - Background operations suddenly become foreground operations that stall the IDE with a dialog saying "A background operation is taking too long."
       - Misclicks spinning off long background tasks that stall the IDE.
       - Automatic refactoring/code analysis that will stall the IDE.
       - Incredibly aggressive automatic reformatting.
       - The Microsoft Account agenda. VS2013 wants me to sign-in with my Microsoft account on so many different occasions: settings sync, Azure, Windows Developer account registration, auth refresh, etc... which wouldn't be so bad, but I'm signed in via Windows 8 already, adding insult to injury.

<comment><USER5> \- Never had background to foreground stall IDE issue in VS2010 or up

\- Nor misclicks stall IDE

\- Nor automatic refactoring analysis stall IDE

\- Automatic reformatting is a once click option to disable and is not terribly aggressive in VS 2010 up.

\- _wants you to_. Not forces. So, by the way, do JetBrains, NetBeans, Oracle ...

<comment><USER4> Not running into those issues must be really great for you, but does very little to make the experience better for me. I tend to run VS under virtualization with TFS, which is far from a pleasant experience, even on modern hardware.

<comment><USER6> So on a local machine, in virtualization, you are running an IDE, SharePoint Server, SQL Server, IIS, TFS. If you aren't running it from a separate SSD drive then the problem has nothing to do with the IDE. You have an IO bottleneck.

<comment><USER4> I'm not sure where you pulled SharePoint and SQL Server from, and running the TFS client is a far cry from running the TFS server.

That said, my experiences with Visual Studio only serve to underscore the point that my peers would prefer to avoid running a Windows VM altogether if there are open-source alternatives that are good enough.

<comment><USER6> From your comment, you said TFS. TFS is the server, which include SqlServer, Sharepoint, an OLAP cube, and the TFS server components. The TFS client extension, (which is not TFS) has been baked in for the last 2 versions. So I assume you're using VS 2010, and that is a much different beast. It has a lot more issues, but it's a much improved IDE.

As far as virtualization, why are you working in a virtual environment? What are your machine specs? What is the emulator? I'm genuinely curious, because I haven't encountered any of those issues.

<comment><USER4> I was referring to Team Explorer which, as of VS2013, doesn't appear to be included out-of-box. Apologies for the confusion.

Virtualization is kind of a red herring here, because as mentioned before, this happens on an array of workstation-level hardware (quad-core Xeon/i7, 16-32GB configurations, SSD).

The point is that virtualization makes these already-painful existing issues much more pronounced, such that my peers actively want to avoid spinning up a Windows VM for a project. These experiences, whether agreed with or not, were largely responsible for the immediate revulsion my team felt to Windows-based solutions. I can't begin to explain how excited people were at the prospect of not having to use Visual Studio anymore when ServiceStack rolled out at my prior company.

My use case for virtualization is mobile development spanning iOS, Android, Windows 8 and Azure-backed services. The last few companies I've been on-site at outfit their employees with high-end MacBooks, with developers occasionally using virtualized Windows under protest.

<comment><USER6> Team Explorer has been baked in for the last two versions. Regardless, most of your points have little to do with Visual Studio, and a lot to do with Windows and Virtualization. Besides, half your gripes can be turned off in the settings.

If you have to work with the tools daily, then take the time to learn them. You'll thank yourself.

<comment><USER4> I'm not sure if you're intentionally glossing over the "this happens with or without virtualization" point, but I'm glad you're happy with the tools you're using.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> If you want more info about the extension let us know. There's alot of cool contextual and semantic pieces in there that makes it a smarter search

<comment><USER8> This is a pretty cool research project. I do not use Visual Studio but being able to search for and use code-snippets inline can be quite the productivity booster. Lord knows how many times I use google.

Have you considered perhaps including more data sources ? I'd imagine for example a public code repository like Github or Codeplex will extend the range of possible "How Do I" questions that can be answered.

On an unrelated note, I have almost always been disappointed by the search- quality of Github. I know they have a lot of public code but they don't do a good job of surfacing relevant code results. Imagine for example, how cool it will be being able to type into Github, "How to compute MD5, C++" and seeing the relevant code.

Actually, thinking about it, there is nothing preventing Microsoft Research from taking this tech, and turning it into a natural language web code search service. Now that would be awesome !

<comment><USER7> There's alot more that can be done with the technology. We wanted to start with a few core partners and drive the quality and relevancy up as we go - so, can we? Sure. It's a matter continuously improving the service

And, agreed, MSR does some cool stuff :)

</comment></comment></comment><comment><USER9> It's interesting that the example code shown is so clunky. It uses try-finally to manually dispose the resource when the idiomatic way would be to wrap it in a using block:

      using (var file2 = new StreamReader(file))
      {
        while ((line = file2.ReadLine()) != null)
          Console.WriteLine(line);
      }

It's possible this is a badly picked example but it shows one big downside of this -- the lack of discussion about the sample code that you would normally get at e.g. Stack Overflow or a blog.

<comment><USER10> But with a 'using' you can't catch an exception. So in production I end up using ( ;-) ) try catch finally.

<comment><USER11> The using block compiles to the equivalent of a try-finally block. If you want to catch an exception you can do it inside or outside the using block.

<comment><USER12> There are known issues with using "using". If the Dispose() call throws an exception in the finally block, then any exception that occurred in the within the using block is masked.

The easy solution is to make sure that your Dispose() calls don't throw exceptions, unfortunately some of Microsoft's classes don't conform to this (e.g. WCF clients).

The following MSDN article shows a case where they do not recommend using "using", and instead suggest explicitly using try-catch-finally: [http://msdn.microsoft.com/en- us/library/aa355056.aspx](http://msdn.microsoft.com/en- us/library/aa355056.aspx)

</comment></comment></comment></comment><comment><USER13> Everytime something C# is posted it's all about MS and why some like or dislike C# or .Net, rarely are the comments related to the actual article.

Personally, I think this new feature is cool, but I've come to realise that my visual studio freezes way more then initially, I think this might be because I've got a few addons installed (ex: Demon, Resharper ...etc) I wonder what will be the overall performance impact of this.

<comment><USER14> ReSharper is an infamous hog. It makes VS freeze up, devours memory, and devours extra CPU cycles with background threads.

It _is_ at least a really useful add-on...

<comment><USER15> This. We just blew away 50 licenses because on our project it's a hindrance even on our E5 Xeons with 24Gb RAM and SAS+SSD disks.

<comment><USER13> I develop on an HP win 7 3 gig of ram... imagine my pain.

</comment></comment></comment></comment><comment><USER16> Science fiction becomes reality:

[http://en.wikipedia.org/wiki/A_Deepness_in_the_Sky](http://en.wikipedia.org/wiki/A_Deepness_in_the_Sky)

> The Qeng Ho's computer and timekeeping systems feature the advent of > "programmer archaeologists":[2] the Qeng Ho are packrats of computer > programs and systems, retaining them over millennia, even as far back to the > era of Unix programs (as implied by one passage mentioning that the > fundamental time-keeping system is the Unix epoch:

> Take the Traders' method of timekeeping. The frame corrections were > incredibly complex - and down at the very bottom of it was a little program > that ran a counter. Second by second, the Qeng Ho counted from the instant > that a human had first set foot on Old Earth's moon. But if you looked at it > still more closely ... the starting instant was actually about fifteen > million seconds later, the 0-second of one of Humankind's first computer > operating systems.

> This massive accumulation of data implies that almost any useful program one > could want already exists in the Qeng Ho fleet library, hence the need for > computer archaeologists to dig up needed programs, work around their > peculiarities and bugs, and assemble them into useful constructs.

<comment><USER17> That book, and its partner, "A Fire Upon the Deep", are very much worth the read. Many other things in there, that we already see coming true: Computational and monitoring "dust"; biomagnetic manipulation of perception and personality; etc...

And Vinge is an excellent storyteller.

There's actually a third title in the series out, now, that I also quite enjoyed. But the first two, and especially "A Deepness in the Sky", really got my attention.

</comment></comment><comment><USER18> mandatory crossplatform cli alternative howdoi [1]

vim howdoi plugin [2]

one of the few emacs plugins [3]

not sure if there are any other plugins, but that should cover a decent portion of interest here.

[1] [https://github.com/gleitz/howdoi](https://github.com/gleitz/howdoi)

[2] [https://github.com/laurentgoudet/vim- howdoi](https://github.com/laurentgoudet/vim-howdoi)

[3] [https://github.com/arthurnn/howdoi- emacs](https://github.com/arthurnn/howdoi-emacs)

EDIT: sublime version [https://github.com/azac/sublime-howdoi-direct- paste](https://github.com/azac/sublime-howdoi-direct-paste)

</comment><comment><USER19> Visual Studio sure has lots of neat extensions that add tons of value. [http://vswebessentials.com/](http://vswebessentials.com/) is my fav.

<comment><USER20> They would add even more value if they were supported by the Express versions of the product.

</comment></comment><comment><USER21> What a co-incidence!

Fred Wilson posted on this very topic this morning. [http://www.avc.com/a_vc/2014/02/inspired-by- github.html](http://www.avc.com/a_vc/2014/02/inspired-by-github.html)

From his post:

"I was at a hackathon up at Columbia University last weekend and one of the hacks was a development environment that automatically queried StackOverflow and GitHub as you are writing code so that you always have in front of you the answers to the questions you are most likely to ask. The developer who did the hack introduced it by saying something like "programming these days is more about searching than anything else". That reflects how collaborative the sharing of knowledge has become in the world of software development as a result of these cloud based tools for developers."

<comment><USER22> Hmm I wonder if I can make a sublime add on to do this for various languages. I could probably do php pretty easy. Anyone keen to do a node module for it? CSS?

<comment><USER23> That sounds a lot like [https://github.com/gleitz/howdoi](https://github.com/gleitz/howdoi)

</comment></comment></comment><comment><USER24> As someone who has recently been hiring .NET engineers, I have to admit that this inspires mixed feelings. On the one hand, I can see huge power from combining AI and search with the structured context of programming. On the other hand, a disappointing number of the people we interviewed weren't software engineers, they were IntelliSync engineers. We'd give them a problem, and their first instinct was to hit a period and start hunting through the method options that IntelliSync gave them to see if one got them closer to their goal. Instead of stepping back and thinking about the problem generally, they'd try to solve it by stringing together IntelliSync suggestions, like stepping stones across a pond.

<comment><USER25> It's Intellisense. I might have a chip on my shoulder but if you were competent and really were hiring .net programmers you should know that? Especially if you're going to take the mickey.

You get those types no matter what role they hide in. Today I spent an hour with a candidate that looked really promising on paper dodge every question and switch from being "mainly backend" to "mainly frontend" when they couldn't tell me the difference between an interface and an abstract class....

<comment><USER24> Hah! Yes, I am (or pretend to be) competent, just not when writing HN comments ;). Thanks for the daily serving of humble pie.

I do wonder if there's something about .NET and a business environment that encourages this kind of behavior. When the organization's values are in their business rather than mentoring programmers, when they tell their programmers to "just get it done," you end up with IntelliSyn...Sense programmers? I've worked in various different programmer ecosystems, and I've never seen this pattern so strongly. There are of course excellent .NET programmers, I don't mean to say otherwise. And I got the feeling that several of the people we interviewed had basic talent, they'd just been trained, intentionally or not, towards this kind of behavior.

We started putting VS in front of candidates precisely to deal with the kind of fuzziness you mention. We started with whiteboarding code, but a lot of candidates would have a wrong design, then add a line of pseudo-code that they claimed magically made it work. By having them write actual code, it forced them to be explicit and to deal with unexpected outcomes.

</comment></comment></comment><comment><USER26> If for nothing else - it shows MSFT's commitment to the language, to the platform and to the framework.

<comment><USER27> No, it shows MSFT's commitment to future revenue and profit. If they were really committed to the language, they would open-source it.

<comment><USER28> So the only way to be committed to a language is to open-source it?

<comment><USER27> In this day and age, yes. At least if you want it to succeed. MSFT knows this, too - they open-sources TypeScript.

</comment></comment></comment></comment><comment><USER29> Having this for Monodevelop and Unity3d would be great. Even better if we have community curated suggestions.

<comment><USER30> Having this for any Language/IDE pair would be great!

</comment></comment><comment><USER31> This is the beginning of a practical StackSort:

[http://gkoberger.github.io/stacksort/](http://gkoberger.github.io/stacksort/)

A lot of programming can involve Searching, but it doesn't have to involve searching with plain-text. One would have thought Google would work on this, but they closed down their code search and haven't offered anything else.

</comment><comment><USER32> Ignoring all of the comments ____*ing about the Microsoft stack, this is a cool feature. Bravo, guys. I wish my IDEs had this kind of thing.

</comment><comment><USER33> I really, really want this for IntelliJ/Android Studio. Actually, everything, can I get this for everything?

<comment><USER34> I am actually looking at doing this, but integrating it with the searchcode.com API. At the moment its just a question of long it would take me to build a plugin for IntelliJ/Eclipse/Visual Studio. I did look into oursourcing the work but the price as a little high for me to swallow at the time.

</comment></comment><comment><USER35> One problem with this approach is it requires a change in user behavior. Unless Visual Studio can get a developer to an answer every single time, it may not be sticky enough to form a habit.

Google search reliably produces an answer each time, regardless of what the question or problem is

This is why search is very sticky (and habit forming). MSDN (and even Stackoverflow or Github) suffer from this problem because they only have a subset of content that developers want/need. Google brings all these sources together into a single search.

<comment><USER35> On the other hand, sharing context could be powerful

</comment></comment><comment><USER36> To those who insist this somehow encourages copy-paste style of programming, think again. What would this so-called programmer do if they didn't have this extension? They'd put this question in Google and copy the first example that works.

This extension doesn't "spoil" programmers any more than Google does. And if you hire this kind of programmers, this is very likely a problem of yours.

</comment><comment><USER20> Visual Studio could be so much more for Microsoft. Why do they need a phone? Let them make Visual Studio cross platform and developers would come back to Windows as their base platform. All other IDE's pale in comparison. Too bad that advantage is being wasted as far as new developers go.

<comment><USER37> I'm a young professional developer who has been in the industry for just over a year. I am absolutely in love with C#, .NET, MVC, and the MS ecosystem in general. I'm even using Azure these days.

I honestly can't imagine going back to the dismal experience that was the ecosystem I used in undergrad - Linux/Unix + Java/Ruby/Python/C/C++. The only one of those I actually still enjoy working in is Python, and I can do that on .NET in VS as well. Ruby/Rails isn't really that bad TBH, but these days it just feels like a second rate dynamic version of MVC.

</comment></comment><comment><USER38> "Programming by example" is becoming an interesting trend these days. VS seems to be the first to implement widely such a feature. This of course, suggests that this small-scale reuse is very common. But could it be a "problem" of modern languages like Java and C#?

</comment><comment><USER39> It will be quite nice if this ends up yielding results for individual JavaScript frameworks some day.

<comment><USER40> I'm one of the creators of Sourcegraph, which does have results for many JavaScript frameworks. You can find examples from all across GitHub, and you can search by function name or full-text documentation.

JS is hard to analyze, but we're working hard on getting better--and the analysis code is open source[1].

[https://sourcegraph.com/github.com/joyent/node](https://sourcegraph.com/github.com/joyent/node)

[https://sourcegraph.com/github.com/jashkenas/underscore](https://sourcegraph.com/github.com/jashkenas/underscore)

[https://sourcegraph.com/github.com/caolan/async](https://sourcegraph.com/github.com/caolan/async)

[1] [https://sourcegraph.com/github.com/sourcegraph/jsg](https://sourcegraph.com/github.com/sourcegraph/jsg)

<comment><USER16> Have you looked into Dr. JS?

[http://www.ccs.neu.edu/home/dimvar/jstypes.html](http://www.ccs.neu.edu/home/dimvar/jstypes.html)

</comment></comment></comment><comment><USER41> Wouldn't a with(file) statement (instead of a finally block) be much more idiomatic in the example they give? Not to be be pedantic but I think it illustrates a good criticism. How can you ensure quality code snippets that are "idiomatic?"

</comment><comment><USER42> Would like to see this for C++ soon enough. Looks great in the demo.

</comment><comment><USER43> This is _very_ cool, but I fear that many will label themselves as experienced programmers with nothing but the knowledge of using this tool to piece snippets together.

</comment><comment><USER44> And there-in lies the evils of code snippets. All of the snippets he selected were evil.

</comment><comment><USER45> This sounds like a great way to enforce bad programming practices.

<comment><USER7> We're worried about that too. What we're hoping to do as we progress is to use best practices as metrics. Because we can do semantic matching, and not just textual matching, there's a world of possibilities to make results more helpful

</comment></comment><comment><USER46> I will wait for "Google Code Search for C#"

</comment><comment><USER47> We no longer need developers we need good searchers.

<comment><USER7> We'll always need fantastic developers and engineers :) The goal is to help you find good samples, whether it makes sense and how its used is still very much open to how good (or not) a developer is

</comment></comment><comment><USER48> I want this for elisp/emacs!

</comment><comment><USER49> But... that is not test driven!

</comment><comment><USER50> This is really cool, I find the microsoft documentation particularly terrible.

I always had a chuckle when the first result for a simple C# concept and the result isn't a MSDN site. I also chuckle when the result is a forum post from 2005 that drops me into a link loop.

Thankfully I won't have to write C# for a long while. I can't say I will miss the MVC stack or the legacy burden you get with forms.</comment>


Crashed jets lacked key safety features because Boeing charged extra for them - <AUTHOR> https://www.cnbc.com/2019/03/21/crashed-boeing-jets-lacked-key-safety-features-that-were-add-ons.html <comment><USER2> > Neither safety feature was mandated by the Federal Aviation Administration, > but experts say it is key to flight safety.

Clearly, the accountability also lies with the authority who allows them. If these features were key to flight safety - the respective authority should mandate them.

On a tangential note - I tried to access the full NYT story in "Private Mode" and NYT detects that I use private mode [0]. The private mode isn't so private anymore.

[0] [https://imgur.com/a/lKEJD6f](https://imgur.com/a/lKEJD6f)

</comment><comment><USER3> I have the same reaction as most people to want to jump to "well safety features shouldn't be optional".

But in practice such a policy translates into "no one is allowed to invest in better safety." Different parties have different threat models, e.g. consider the differences between passenger and cargo aircraft, or over-land vs trans- continental. It makes it difficult to exceed safety standards, which were often just intended to establish a baseline.

Floors become ceilings, as they say.

<comment><USER4> That argument may make sense for costly safety features, but not in this case.

<comment><USER3> It will _always_ possible after an major airliner crash to say that one particular thing that would have prevented it would have been worth the cost.

But investing in just the specific mitigation needed to prevent the next disaster is not an option that we have. We only get to choose a level of investment in protection against classes of risks based on human judgement of the probabilities involved.

<comment><USER4> The feature in question is a warning light if two sensors disagree. You could implement that with a microcontroller, an LED and two wires. In practice, it might not even require additional hardware at all. We do know in advance that its worth the cost because the cost is absolutely neglible.

</comment></comment></comment></comment><comment><USER5> Society needs to have a conversation about upselling.

The business model of "this is the product, here are your luxury features" that was popularized in America in the 20th century on products like cars and blenders is now applied to thousands of product categories because it is an easy way to get clients to overpay.

Clients will generally keep approving added expenditures until they hit their allocated budget for a given purchase. It's a hack to prevent clients spending less than the maximum they're willing to spend.

The consequences of this model being applied to things like jets and bridges are catastrophic but it's so well-suited to American puritanical values (brass buttons? on a suit? Good lord!) that few people ever question it.

Should "it won't kill or maim you as often" ever be an acceptable feature, on any product?

<comment><USER6> > The business model of "this is the product, here are your luxury features" > that was popularized in America in the 20th century on products like cars > and blenders is now applied to thousands of product categories because it is > an easy way to get clients to overpay.

It's how you raise prices without people noticing. Video games have been doing this for years. "Your game is still $60! But, I mean, if you want the full experience, want to be competitive, and want to play all the content, well, that's $80+."

</comment></comment><comment><USER7> Or in the alternative, the airline that purchased the jet opted to not pay for key safety features...

<comment><USER8> I would argue that a business operating with the possibility of such a high- impact failure ought to bundle in safety features and redundancies as a matter of course.

</comment></comment><comment><USER9> How much does such an option cost?

I mean a plane is in the multiple millions so an indicator light that costs several thousands is still just a tiny fraction of the cost.

<comment><USER10> This shouldn't be an option in the first place.

</comment></comment><comment><USER11> Crashed jets lacked key safety features because the companies that bought them didn't want to pay for them

<comment><USER12> Again. Systems required for safe operation of a device by a reasonably competent operator are _not_ something you consider an option.

It's cheaper and safer in the long run to just do the right bloody thing, since you get the whole economy of scale windfall.

<comment><USER13> Define required. Required by whom? Not by the FAA, at least. So they are extra. So operators decide whether they buy them or not. They didn't, and this is the result.

<comment><USER12> Required by reasonable/responsible engineering principles.

If you add an automated system that has high control authority, which is fed data by a failure prone sensor, you add redundant information sources, compare/average out inputs and alert the operator to the possible technical issue.

This is a well known engineering pattern. No one tells you to do it. You're expected to be able to identify when something is high risk and act accordingly. If you seriously believe that regulations change designs rather than codifying lessons learned the hard way, I don't know what to tell you, as apparently we start from two completely different sets of axioms when it comes to implementing things others depend on.

The FAA are there to maintain a collection of lessons paid for in blood, and to provide a general process to follow which strikes a balance between manufacturers doing their thing, and the public's interest in not crashing with no survivors, and maintain a cohesive set of guidelines that govern the industry. An FAA inspector can't be looked at as outsourceable common sense for manufacturers and designers however. Due diligence starts at home.

It is up to the people signing off and the engineers overseeing everything to ensure that design is safe, and all outcomes are such that the public interest is best served. Executives and sales be damned.

Unethical engineering costs innocent lives. Dollars are _(or should be)_ secondary in all regards.

The fact this is even debatable demonstrates how much safety ethos has taken a back seat to economic factors in the modern aviation industry.

<comment><USER14> A lot of modern can have collision prediction systems, pretty sure that a lot of them are optional on cheaper trims.

I would say that those are key safety features.</comment></comment></comment></comment></comment>


Resurrecting a Dragon - <AUTHOR> https://source.opennews.org/articles/resurrecting-dragon/ <comment><USER2> Here not be dragons. :(

</comment><comment><USER3> More descriptive title: Making a 3D reconstruction of a very well preserved nodosaur fossil for National Geographic.

<comment><USER4> It was very misleading. I eagerly clicked on the article expecting genetic research... cloning a dinosaur using a common ancestor or something.

<comment><USER5> Why is this down voted?

I was gonna give the article a skip then I thought "What if they actually engineered a dinosaur into existence", felt I had to click it just in case.

Instead I got an, albeit interesting, article about 3D.</comment></comment></comment>


IOS Xcode Starter Project - <AUTHOR> http://twobitlabs.com/2012/08/kickstart-your-apps-with-the-ios-xcode-starter-project/ <comment><USER2> Some nice stuff in here for sure but I would warn off the novice iOS develop from starting with this type of template right off the bat.</comment>


If you're 30% through your life, that's 90% of your best relationships - <AUTHOR> http://qz.com/572284/the-tail-end/ <comment><USER2> 90% of 0 = 0. Yay, that bodes well!

<comment><USER3> He's looking at relationships early in life as the most important. You (or anyone) can have great relationships later in life that are more important than the early relationship(s).</comment></comment>


Ask HN: Any Good Books on Internals? - <AUTHOR> I just finished 3 books about internals and I really enjoyed them:
- Ruby Under a Microscope
- Database internals
- Writing An Interpreter In Go
Are there any other good books on internals of any technology out there? I don't mind if it's a language or a tool. I just think it's pretty interesting to understand things at a deeper level.
Thanks. <comment><USER2> I immediately thought about "Windows Internals" which has a good reputation but won't be useful if you're running MacOS or Linux.

<comment><AUTHOR> Still, it sounds interesting. I'm more interested in learning about the theory right now.

<comment><USER2> May I suggest "The Art of Computer Programming" by Donald E. Knuth then ? This is considered as the Graal of computer science (I didn't study it but it's on my to-do list though ).</comment></comment></comment>


Apple blocks Siri's prostitute-finder function - <AUTHOR> http://www.chinadaily.com.cn/china/2012-10/29/content_15855212.htm

<comment><USER2> If you're in China and are having finding prostitutes, you haven't either walked through you hotel lobby, onto a main shopping street, or really been anywhere. They are quite literally everywhere in the cities and larger towns.

I can not think of a single day, except deep in the mountainous countryside, where I have not been approached by women selling themselves, or guys trying to sell me 'sexy lady massage'. Even in the mountains we're seen roadside brothels.

If the search feature was to find quality prostitutes, then that's quite probably another issue and for some a positive development.

<comment><USER3> The mamasans in Osaka are the worst. If you tell them you are not interested they will literally grab you off the street. I mean I know Osaka is the city of the hard sell, but... geez.

<comment><USER4> Is there an Osaka in China too, or are you talking about the one in Japan?

<comment><USER3> The one in Japan is the only one I know of. I was surprised myself, given how Westernized Japan is compared to the rest of Asia, and how nominally illegal prostitution is there now.

</comment></comment></comment></comment><comment><USER5> Oh, this explains the results when I asked "Siri, Find me some girl scout cookies".

</comment><comment><USER6> This would have never happened on Android. Typical Apple over reaching bullshit. BRB selling my iPhone for something that RESPECTS my sexual desires.

</comment><comment><USER7> You can do all sorts of things with an Android(prostitute) that you can't do with your iPhone(wife).</comment>


IMAGiNE Piracy Group Founder Jailed For 23 Months - <AUTHOR> http://torrentfreak.com/imagine-piracy-group-founder-jailed-for-23-months-130411/ <comment><USER2> I certainly agree that current copyright law does definitely have some big problems. Even the US Register of Copyrights Maria Pallante says so <http://www.copyright.gov/regstat/2013/regstat03202013.html>

With all its problems, however, the answer is not to violate copyright law, but instead to get involved in reforming copyright legislation through law- abiding acts. There are lots of ways to do that.

Here are two big ones: (1) get yourself an intellectual property attorney's education in copyright law for free from Harvard Law School's CopyrightX MOOC at [http://cyber.law.harvard.edu/people/tfisher/CopyrightX_Homep...](http://cyber.law.harvard.edu/people/tfisher/CopyrightX_Homepage_2013.htm) and (2) follow the StackExchange community proposal called CopyrightX at <http://goo.gl/5YDHa> where if enough people get involved by asking good questions and researching the answers, we can raise global awareness about exactly what ways copyright laws are now working against their original goals. In Everything Is A Remix, Kirby Ferguson's closing words were: "The common good is a meme that was overwhelmed by intellectual property. It needs to spread again. If the meme prospers, our laws, our norms, our society, they all transform. That's social evolution and it's not up to governments or corporations or lawyers… it's up to us."

But it's up to us to do this in a manner that respects and honors existing law.

Different from Syria, people are not being killed by the thousands in the Copyright Wars, so civil disobedience is not the best way to fight back against the institutions that currently control copyright laws.

The best way to fight back is to educate ourselves and others so that the common good returns to the forefront of copyright law in the minds of everyone affected by copyright law. When enough people are aware of what copyright law was originally intended to accomplish, then the laws will necessarily change in the truly democratic nations.

Learn more at <http://copyrightx.org> and <http://copyrightactof1790.wordpress.com> and by following me on Twitter <https://twitter.com/StackCopyrightX> and there is a TED conversation at [http://www.ted.com/conversations/17388/imagine_a_charter_nat...](http://www.ted.com/conversations/17388/imagine_a_charter_nation_like.html) too.</comment>


Startup Offers "Coronavirus Trips" to Wuhan, China - <AUTHOR> https://virus.travel/ <comment><USER2> can't one just order the biological material by mail?

<comment><USER3> yes, but nobody knows how to order a ghost town by mail</comment></comment>


Perl 6.0 Released - <AUTHOR> https://perl6advent.wordpress.com/2015/12/25/christmas-is-here/ <comment><USER2> Congratulations all those who added something to this monumental effort.

By any metric (no. of contributors, no. of health scares survived by language designer, no of prototypes ...) it's been an enormous amount of blood, sweat and tears.

Looking forward to enjoying it for next 50 years.

</comment><comment><USER3> [http://perl6.org/downloads/](http://perl6.org/downloads/)</comment>


A trap focus function you need for your modals - <AUTHOR> https://vaskort.com/the-only-trap-focus-function-you-will-need/ <comment><USER2> Focus traps are great and a crucial part of making a site with modals accessible, and I also think reimplementing things from scratch can be a great way to learn about them. However I'd caution anyone against using accessibility scripts written from scratch. Accessibility is notoriously hard to get right and there's numerous nontrivial details that need to be nailed down.

> The code is pretty W3's example, just a bit simplified and explained.

The problem here being that W3's solution is cross-browser compatible and you can reasonably expect it to work on screen readers of all sorts. The code in the post won't even work correctly on all modern browsers.

I wouldn't be saying all this otherwise, as again, rewriting things is great for learning them. However the title of the post, "The only trap focus function you need for your modals", can mislead your readers into a false sense of security.

<comment><AUTHOR> Thanks for the comment Etheryte :)</comment></comment>


How to use bash history to improve command line productivity - <AUTHOR> http://www.howtogeek.com/howto/44997/how-to-use-bash-history-to-improve-your-command-line-productivity/

<comment><USER2> I live on the command line, bash history is so useful.</comment>


Ashely Qualls is not allowed to touch  her assets - <AUTHOR> http://www.ontopresults.com/blog/2007/09/13/17-year-old-myspace-millionaire-ceo-not-allowed-to-touch-assets/

<comment><USER2> I thought you couldn't keep a teenager's hands _off_ their assets...?

<comment><USER3> Some of us aren't as incompetent as most people believe.

<comment><USER2> Trust me, it's not _competence_ I'm questioning...</comment></comment></comment>


On this day (8 June): The Viking age begins in England [video] - open-source-ux https://www.youtube.com/watch?v=dNQM29ZUXvk <comment><AUTHOR> I assume the date for the attack on Lindisfarne is given in the Julian calendar, not the Gregorian.

According to the converter at [https://keisan.casio.com/exec/system/1227757509](https://keisan.casio.com/exec/system/1227757509) , that's Jun 12, 793 in the proleptic Gregorian calendar.

Bear that in mind when you set the target date in your time machine.</comment>


Why can't the world just pick one design for plugs? - <AUTHOR> http://www.atlasobscura.com/articles/why-cant-the-world-just-pick-one-design-for-plugs <comment><USER2> Because everybody thinks they know better. The fact is, the less real difference there is between the options, the longer the argument goes on about which is better. Because you can't actually tell the difference, you can never settle the argument.</comment>


A 5 year old girl vs. CoderDojo - <AUTHOR> http://atodorov.org/blog/2017/01/13/a-5-year-old-girl-vs-coderdojo/ <comment><USER2> I remember reading a study somewhere where elementary school students were taught abstract calculus and were... basically fine with it.

I wonder how much we underestimate children's understanding of the universe. Though I bet we overestimate along other axes as well</comment>


How SQLite Is Tested - <AUTHOR> https://www.sqlite.org/testing.html <comment><USER2> The section on static analysis is somewhat damning:

 _Static analysis has not proven to be especially helpful in finding bugs in SQLite. Static analysis has found a few bugs in SQLite, but those are the exceptions. More bugs have been introduced into SQLite while trying to get it to compile without warnings than have been found by static analysis._

<comment><USER3> That's only "damning" if like SQLite your project has several orders of magnitude more test code than tested code, which I'm reasonably certain is not the case.

<comment><USER4> Static analysis is rarely helpful after the fact. Its usefulness is directly related to its entry into the project timeline. Just like "handle all warnings, always" is a generally good mantra, having static analysis is supposed to keep you ahead of the curve. If you don't do it early, and often, you're not doing it properly.

Also, having these tools, but no coding rules by code contributors, enforced with real code-reviews and reviewer(s), will also deliver 'not worth it' results. Its a process, not a chisel.

<comment><USER5> That doesn't match what I've seen. When Apple added support for the clang static analyzer to Xcode, a ton of Objective-C programmers started running it on their code bases, and among those I know, it found a _ton_ of bugs that had gone dormant for years.

<comment><USER4> Sure, of course it'll find bugs after the fact. But the value to the project in doing static analysis is in not adding bugs in the first place, because you caught them with static analysis as a standard part of your development process. Who knows what those unknown bugs cost those developers over the years ..

<comment><USER5> Are you implying that there is no value in finding bugs after the fact?

Sure, it's better to catch them up front. But catching them later is still _extremely_ valuable.

<comment><USER4> Catching them before they're deployed anywhere is the point. Deploying quality software from 1.0 is a different order of value than 'experience improved for the 1.1 user because: bugs fixed'. Both circumstances have value: I meant only to state that static analysis should be up-front, to get the absolute most value out of it, because it will massively improve your software quality to have it there.

</comment></comment></comment></comment></comment></comment></comment><comment><USER6> In 2010 I stumbled upn a bug that segfaulted Firefox:

[https://bugzilla.mozilla.org/show_bug.cgi?id=581946](https://bugzilla.mozilla.org/show_bug.cgi?id=581946)

The SQLite guy were ridiculously responsive and added all sorts of tests around the fix.

It's not every day you can say you found and helped troubleshoot a bug that literally could be affected 100s of millions of users!

<comment><USER7> Big fan of sqlite. But have to say I'm surprised to see how much testing it gets. While it's great when it works sqlite databases are definitely temperamental.

In fact those test suites being so large is possibly part of the problem. Sounds like they are being overly prescriptive in their testing, which is why it's so damn fussy about the order commands are executed without causing it to leak memory left right and center.

<comment><USER8> regarding being temperamental....

You're going to have to justify that a bit more, that would not be the overwhelming experience around these parts.

Not to say its perfect but its the weight of evidence is in SQLites favour here.

<comment><USER7> Meh, like I said, big fan of SQLite. But any use of it in a "serious" application will undoubtably run into: Error: database disk image is malformed

On a fairly regular basis. Google gives:About 57,400 results

So I'm definitely not the only one.

<comment><USER8> [http://www.sqlite.org/lockingv3.html#how_to_corrupt](http://www.sqlite.org/lockingv3.html#how_to_corrupt)

[http://www.sqlite.org/cvstrac/wiki?p=DatabaseCorruption](http://www.sqlite.org/cvstrac/wiki?p=DatabaseCorruption)

(Just so you know)

<comment><USER7> Yeah. There's that. But there are also numerous memory leaks that have to be carefully managed. Opening and closing the database regularly is usually enough. And if you do manage to let it run long enough to use all the system ram, that will malform the database to.

Transactions are particularly bad. One bug I ran into earlier in the year would gobble up 12gb of system ram trying to search and insert a few 10s of mb of text, just because it was leaving prepared statements laying around without telling me.

<comment><USER8> Sounds like a pretty serious bug that would probably affect millions of people....

... thanks for reporting it.

([https://www.sqlite.org/malloc.html](https://www.sqlite.org/malloc.html))

"No memory leaks. The application is responsible for destroying any objects it allocates."

"Robust against allocation failures. If a memory allocation ever fails (that is to say, if malloc() or realloc() ever return NULL) then SQLite will recover gracefully."

<comment><USER7> Fine. But in practice. By time malloc returns null. It's blown up anything on the system that doesn't recover gracefully. possibly the file system. Which is possibly how the database becomes corrupt.

And I see plenty of reported examples and work arounds. Even yum has been suffering from it for years.

[http://forums.fedoraforum.org/showthread.php?t=260195](http://forums.fedoraforum.org/showthread.php?t=260195)

[http://www.pvangsgaard.com/2016/03/16/yum-error-database- dis...](http://www.pvangsgaard.com/2016/03/16/yum-error-database-disk-image- is-malformed/)

<comment><USER8> The number of applications using sqlite successfully is very much greater than 1. You need substantially more evidence than that to state that what appears to be simple user error is actually a design flaw in software that tests specifically for the examples you state and is also well known for the quality of that testing.

<comment><USER7> I use it very successfully. In combination with sqlcipher and an application layer that ensures everything happens "just so"

All I said is the databases are temperamental. If you do anything "unexpected" it breaks. Numerous ways and often. Most of the bugs I've seen would be easily picked up with non deterministic testing. (Leaking result sets and prepared statements for example) - which is how I found them.

The testing codebase can only be that huge if they are all deterministic tests.

Trouble with deterministic tests is they miss all the edge cases and bugs persist for a long long time.

The transaction stuff is particularly bad. Gobbles memory without a care in the world till it either runs out and performance drops to near zero or fails and corrupts the database.

So everyone is forced to break transactions they would prefer to be atomic into multiple smaller ones.

These aren't things that should need a specific test case making in c, and many of the problems are horrific optimisation problems rather than show stoppers.

My point is. For all those kloc of testing, the sqlite code is definitely not what I would call robust.

How long has sqlite been reporting "out of memory" just because a database failed to open for some reason?

The biggest problem seems to be right here:

OOM testing is accomplished by simulating OOM errors.

I.e. not simulated in a real way. Which is silly when it is so easy to generate them.

<comment><USER8> (Read the link above properly)

"The application is responsible for destroying any objects it allocates"

...smells like user error to me.

e.g. "the application must use sqlite3_finalize() on every prepared statement and sqlite3_close() on every database connection "

I suggest that if you want to continue to assert that SQLite is not robust, you have to show us your code.

<comment><USER7> So aside from calling finalize how are we supposed to destroy them?

Because the number of cases where finalize doesn't destroy them or calling finalize on a closed prepared statement (supposed to be a harmless noop) crashing it completely seems fairly common. Yum is open source. A big chunk of the sqlite tests are not. With plenty of examples of yum sqlite databases becoming corrupt and needing to be rebuilt from scratch why would you need my code. Yum is infinately more important to those millions of users than anything I write.

So yeah, great when it works, but testing nothing to be proud of is definitely my experience.

Pay for this: TH3 is free to SQLite Consortium members and is available by license to others.

No chance.

That default encryption is locked behind walls doesn't inspire cooperation either.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> The title says "how SQLite is tester", well I don't think the article talks about "how". It only talks about the different types of tests that they apply. I'm curious about "how" it is done. Do you guys run a single "test" button and all the tests are executed? Or, all the tests are done independently? On which platforms do you test?

<comment><USER10> There is a testing checklist ([https://www.sqlite.org/checklists/3130000/index](https://www.sqlite.org/checklists/3130000/index) is an example). Each item on the checklist is usually just a single "button push" (really a shell command). But we have to push that same button on lots of different platforms.

</comment></comment><comment><USER11> > Millions and millions of test cases

I wasn't sure how to interpret it, but then they mention that it's 40100 distinct test cases, parameterized. I would have rephrased it as "40K of parameterized test cases".

</comment><comment><USER12> Many prior discussions: [https://hn.algolia.com/?query=How%20SQLite%20Is%20Tested&sor...](https://hn.algolia.com/?query=How%20SQLite%20Is%20Tested&sort=byDate&dateRange=all&type=story&storyText=false&prefix&page=0).

</comment><comment><USER13> This seems like an extreme amount of tests, I would be very interested in hearing how they are managed. Without some sort of system around them I would imagine that many tests would lose their meaning.

</comment><comment><USER14> Did I miss something, because I didn't see performance testing. Given some specific test bed, which has X amount of RAM, How much Insertion Per Second(IPS) I can get?

<comment><USER15> > In addition to the three major test harnesses, there several other small > programs that implement specialized tests.

> 4\. The "speedtest1.c" program estimates the performance of SQLite under a > typical workload.

> 5\. The "mptester.c" program is a stress test for multiple processes > concurrently reading and writing a single database.

> 6\. The "threadtest3.c" program is a stress test for multiple threads using > SQLite simultaneously.

<comment><USER14> Thanks! I dont know how I missed that.

</comment></comment></comment><comment><USER16> > The TH3 test harness is a set of proprietary tests, [...] TH3 is free to > SQLite Consortium members and is available by license to others.

I think it's ridiculous that people make proprietary test suites. In my opinion, test suites shouldn't even be copyrightable let alone made proprietary. A test suite is used to define what the precise interface of an API is, it's just a piece of code rather than a standards document.

EDIT: To be clear, the actual test framework might be copyrightable. But the actual test cases should not be IMO. It's also a shame that a free software project requires using proprietary software in order to practically test it.

<comment><USER17> If your API is defined by a test suite you're doing something very, very wrong.

Additionally, there are three major test suites for SQLite, and two of them (with a test coverage that still leaves most other open source projects in the dust) are open source and free.

I can live with paying members getting additional testing possibilities.</comment></comment>


FLIF – the image file format of the future - <AUTHOR> https://debugandrelease.blogspot.com/2018/12/flif-image-format-of-future.html <comment><USER2> It encodes slow as hell. It takes more than several seconds to encode a large- ish image. In this brave new world of IoT and low-powered devices creating FLIF images is out of the question. For serverside uses it is probably less of an issue.

<comment><AUTHOR> I have not encoded using using IoT devices, this is good to know. Thanks for clarifying that!</comment></comment>


Facebook, Zynga Impose Fees on Private Sales of Shares - <AUTHOR> http://www.bloomberg.com/news/2010-04-21/linkedin-zynga-may-use-stock-sale-limits-to-curb-pre-ipo-value-inflation.html <comment> brown9-2 I might sound stupid, but how is it that a company can put restrictions on sales of it's stock _after_ those slices of ownership are already allocated and granted to individuals?

<comment><USER2> This is the same as any large company giving equity but requiring a vesting period. The reason you give equity vs. cash is to create an incentive for an employee to want their company to succeed. If the large transfer fees are in place to limit shareholders so they can stay under the 500 mark then it's a bit shady. If your shares are vested per the agreement you signed, it should be your right to sell when you want to without a substantial fee.

<comment><USER3> Not so. Your (hypothetical) employee stock agreement, which you were required to sign as a condition of being issued stock options, stipulates that your shares are not transferable, intended for personal investment and not resale, and that your exercise of those options is conditioned on a series of terms that ensures the company can prevent you from selling them.

The reason for this is that your (hypothetical) company isn't trying to create a broad market of investors in its equity. Rather, it's trying to express an incentive that allows employees to share in the upside of a liquidity event at the company.

This issue is distinct from vesting. Even after you've vested, the company is unwilling to yield control of who owns its shares. The company is fine with you parting ways and retaining your upside interest (in fact, it's happy you did!), but not fine with you selling the package that gives you that interest.

For obvious reasons, the story is totally different at public companies.

<comment><USER4> The story is also different if you're issued restricted stock, rather than options.

<comment><USER3> I think (from other comments) you're implying that ISO/ESO options are contractually non-transferable (and can't be executed by non-employees), but that no similar contract governs actual restricted shares. Not convinced this is the case; with restricted stock, your shareholder's agreement probably allows the company to keep you from selling your shares.

</comment></comment></comment></comment></comment><comment><USER5> I have a fundamental question. How are these companies allowed to trade off the market? As whole point of free/open market(stock market) is to have companies follow the regulations and guidelines protected by someone like SEC. Are these protected? Or just blind bets on the company? How does one protect insider trading/rigging - if at all it is relevant?

<comment><USER3> They operate under exemptions from registration offered to accredited buyers of companies that don't solicit investments; even then, it's a bit of a legal high-wire act.

<comment><USER5> That sounds like a lot of risk from the investors' point of view. I know these companies are awesome and good but should we be worried about god knows who is doing what trade. If these are not bound by rules, it is so easy to rig the stock price.

<comment><USER6> You're right, there is a lot of risk, which is why you have to be an accredited investor in order to take part in such a transaction.

<comment><USER3> There's a lot more risk from the company's point of view in this case than from the investor's.

</comment></comment></comment></comment></comment><comment><USER7> This is not a good thing. While I understand why companies would rather not have their shares trade, imposing a $6,000 fee is anti- startup employees.

<comment><USER3> The vast majority of startup employees don't (and never will) qualify for secondary markets; most (all?) of the companies being traded here are IPO- quality already.

Startup employees shouldn't be joining companies in the expectation of being able to sell private shares.

<comment><USER8> they might not qualify to be an accredited investor to be a buyer, but I didn't know there were any restrictions on being a seller there? I've got the impression that all FB employees who had vested stock were able to sell...

<comment><USER3> There are contractual restrictions on employees selling their stock; accreditation isn't the issue. Though, for what it's worth, the major secondary markets won't help make a market for tiny companies anyways.

<comment><USER8> There might be, but judging by numerous reports of FB and likes employees selling their stock left and right there didn't seem to exist any restrictions at those places. That's the whole point of starting to restrict those deals now, don't you think?

<comment><USER3> Two things here.

First, there are almost certainly restrictions on Facebook employee stock. I don't know what they are, because I don't work at Facebook, but the boilerplate employee stock contract restricts sale entirely (or gives the company first refusal on sales at a minimal static valuation); anything employees are allowed to do with Facebook stock constitutes something Facebook went out of its way to allow.

Secondly, my point isn't about Facebook. I'm responding to Alain, who indicates that this is the start of a worryingly anti-startup-employee trend. But it isn't. Virtually the entire marketplace of startup employees works for companies with far more restrictive policies. You simply cannot normally sell your (private company) employee stock. The companies you're hearing about that do allow it are --- not too much of an exaggeration --- epsilon from IPO already.

<comment><USER7> I'll rephrase my statement that it's "anti-employees".

If you go by currently admitted practices, then it's completely fine. But if you raise your standards to figuring out what the future _should_ look like, I'm hoping that 10 years from now, people will wonder why such restrictions were ever in place. Because really, why, at a fundamental level, can't an employee who has vested some shares, not sell them?

If I told you that you couldn't spend the cash salary I'm giving you, you'd think I'm crazy. So, if the employee has earned the stock, why is it restricted? I understand the nitty-gritty SEC issues, but fundamentally... why not?

<comment><USER3> Even if the SEC registration rules were thoroughly relaxed --- which they won't be any time soon, and which we could spend a thoroughly engaging several hours debating (plus side: rational market for startups, downside: hedge funds gone wild), it wouldn't matter.

That's because we're talking about _closely held private companies_. There is more to being a private company than simply not having public shares; in particular, private companies are typically very careful about who they permit to hold equity, because:

* Company shareholders can more easily sue the company

* Shareholders may be entitled to information the company doesn't want to disclose (the big one being: revenue)

* Shareholders may have enough control rights to foul up investment and M&A activities, which competitors and bad actors might want to exploit.

I'm sure there are other reasons too.

Long story short: even if there were no SEC regulations, it doesn't seem likely that everyone's employee stock would suddenly become transferable. Employee stock isn't transferable because _companies don't want it to be_ ; they use options to express "incentive interest in a future liquidity event of the company", not to distribute ownership of the company to the broader market.

<comment><USER4> Closely held companies have a simple remedy to all of those - they force you to litigate to exercise your rights. The company invariably has the resources to bury an employee.

<comment><USER3> That may be so, but it's orthogonal to the issue at hand. Employees aren't prevented from selling their shares only because of stupid SEC regulations, but also because most companies don't want their equity resold.

Envision any legal future you want, and companies will still find a way to express that employees should share the upside of an acquisition, but cannot distribute company equity to outsiders.

Can I just say, real quick: for all I know, there's a trend in the valley right now towards giving employees unrestricted common stock on exercise of their options. I think this is crazy --- unrestricted stock once allowed me to imperil a deal at a prior employer --- but who knows? All I can say is that every startup I've worked at or known people working at, employee stock was heavily restricted.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> I'm guessing these fees won't discourage Zuckerberg from selling the $100 million of stock he recently promised to give to the Newark public schools.

<comment><USER4> I can almost guarantee he doesn't even have to pay the $2500.

<comment><USER8> He granted the stock, not the cash.</comment></comment></comment>


150,000 US layoffs for IBM in 07? - <AUTHOR> http://www.pbs.org/cringely/pulpit/2007/pulpit_20070504_002027.html <comment><USER2> If this comes to pass, one has to wonder if, just as political incompetence brought about the sunset of American world dominance, this sort of short sighted, ethically bankrupt, style of capitalism will not go unpunished.

I have no doubt that IBM is awash with inefficiency, however, I do not imagine that the companies future propsects, reputation and commercial viability figure as highly in this deciscion as the vast sums to be paid to executives to meet arbitrary figures, probably set by the same people making the deciscion and reaping the reward.

One can only hope that at some point in their lives, someone will visit the same misery on these people that leaks so freely from their fountain pens.

</comment><comment><USER3> Data point: IBM is hiring graduate engineers like crazy in Melbourne, Australia.

</comment><comment><AUTHOR> That's currently where I work, thankfully I'm already on my way out.</comment>


CloudFlare's Middle Eastern Network Expansion - <AUTHOR> https://blog.cloudflare.com/middle-east-expansion/

<comment><USER2> I'd love to know where those per-AS latency graphs come from.

Edit: Oh, from RIPE ATLAS!</comment>


2019's Top Machine and Deep Learning Research Papers - <AUTHOR> https://heartbeat.fritz.ai/2019s-top-machine-and-deep-learning-research-papers-1ec363f29e85 <comment><USER2> The title is misleading. It's just a list of paper the author liked.

> I wanted to take a moment to highlight the ones that I found most > interesting

<comment><USER3> Try this for something more objective: [http://www.arxiv- sanity.com/top?timefilter=year&vfilter=all](http://www.arxiv- sanity.com/top?timefilter=year&vfilter=all)

<comment><USER4> While that certainly gives some signal among the noise, it is also heavily skewed towards Twitterable papers. Clickbaity papers fare better.

<comment><USER3> I think the rankings are based on the papers that people save. There is a separate page for Twitter based rankings, which seems noisier (ie top paper from the last month is about Hearthstone). It does seem that survey/review/tutorial type papers are slightly over represented.

No ranked list is ever perfect, but this passes the eye test IMO.

<comment><USER4> Ah I've been reading the wrong list!

</comment></comment></comment></comment></comment><comment><USER5> Quite a bold take given NIPS is on right now. The slides are linked from the schedule: [https://nips.cc/Conferences/2019/Schedule](https://nips.cc/Conferences/2019/Schedule)

I would take me a week just to skim the ones I'm interested in.

</comment><comment><USER6> Anyone able to speak to the ease of use/maturity of OpenPose? I've been considering a hobby project for video-based analysis of tennis matches and it seems like it'd be the perfect tool.

</comment><comment><USER7> Hmm, can someone explain to me why this has a non-Medium link in Hacker News but goes to a Medium webpage?

<comment><USER8> You used to be able to use a custom domain name on your Medium blog I think</comment></comment>


Hackers with Apparent Investment Banking Background Target Biotech - <AUTHOR> http://www.nytimes.com/2014/12/02/technology/hackers-target-biotech-companies.html?_r=0 <comment><USER2> If you look at the biggest daily movers, often they are pharma companies that had a clinical trial published or an m and a.

It's a small enough space, however, and they may wind up like Steve Cohen.

<comment><USER3> You mean managing $10+ billion of their own money?

<comment><USER4> Well he did get a stern 'talking to' from the Feds a few times, so that must've been rough.

<comment><USER5> I mean, he had a bare $10B left after his fine! That SEC is so mean to the makers; jealous takers who think insider trading is illegal.

</comment></comment></comment></comment><comment><USER6> I wonder what contents of a senior executive's inbox are worth. I admire how thorough the hacking seems to be: executives, legal counsel, regulatory, and even scientists. It seems to me like they are out for as much information as possible. Good ol' fashioned corporate espionage.

And, less we miss the buried numbers: " _Half_ of these companies fall into the biotechnology sector." I wonder what the other half points to?

<comment><USER7> It's worth a lot. M&A or quarterly results can move stock prices quite significantly and knowing about those before they are public will allow you to bet against it on the market.

</comment></comment><comment><USER8> How secure do you think the passwords of these health execs are? For the most part they are a bunch of 50/60 year old lifelong bureaucrats. I wouldn't expect them to be the most security-conscious computer users.

Ten bucks says the highest levels of protection some of these execs have is "what is the name of your dog" or "gl4x0sm1thkl1ne".

</comment><comment><USER9> I'm not sure how they came to the conclusion that the hackers have a "banking background".

Is it that difficult to determine that hacking certain people's emails is likely to lead to insider trading tips? Do you need a "banking background" or "worked on Wall Street" experience for that? It's quite a leap.

<comment><USER10> The article says the hackers "can inject themselves seamlessly into email threads". Its hard to judge that without reading the specific conversation but I doubt they'll become public. The hackers may have simply spent some good time studying up on the industry, but having a banking background seems like a reasonable guess.

</comment></comment><comment><USER11> I'm surprised that FireEye announced this while the hacking campaign is (presumably) still ongoing. I'd have thought it was a terrific opportunity for the FBI and SEC to team up and catch the perps in the act.

</comment><comment><USER12> Or the phishing was staged to cover direct insider trading.

</comment><comment><USER13> A hedge fund manager and a computer hacker meet at a cocktail party and get to talking...</comment>


Ask HN: How do you choose what to read? - <AUTHOR> With more books and content on the internet than anyone could possibly read in a lifetime, how do you decide what deserves your attention and what doesn't? <comment><USER2> My solution to this problem is not to think too much about choosing, and focus instead on efficiency. I try to read everything that strikes my fancy, but won't hesitate to click away or put something down if I'm just not into it. No need to waste time on something I have to struggle to stay interested in.

One thing I can definitely recommend for books, though, if you're an avid reader and you just can't devour books fast enough: Listen to audiobooks constantly, and at 1.25x or 1.5x speed. Between hard copy, Kindle, and Audible/Scribd, I've been able to finish about 40 books so far this year (I set a goal of 52 for the year -- on track to make it!)

</comment><comment><USER3> Until maybe 5 years ago, I would read almost anything. This is great for discovery, but sucks when you have to plow through an abysmal book. I remember vividly reading the sequel of Dracula by a descendant (and a handful of ghostwriter) of Bram Stocker. This was terrible, full of cliché, badly written...

So now I am actually planning what I am going to read next. There are lots of classic to chose from. Admittedly some are boring. Last year, I have really enjoyed _Lord Jim_ , _Nostromo_ and _Heart of Darkness_.

I always have a "to read next" list with 10-20 books in it.</comment>


Sweet Hue – Manage Philips Hue in Style - <AUTHOR> https://apps.apple.com/app/sweet-hue/id1437555482 <comment><USER2> This looks lovely. Could you add LIFX support as well?</comment>


Ask HN: Who Is Seeking a Cofounder? - <AUTHOR> For everyone looking for a cofounder. Pro tip: Leave your contact info in your profile, not everyone sees the thread when first posted <comment><USER2> Looking for a collaborator for my side project [https://findkismet.com](https://findkismet.com)

Coincidentally, the app itself could be used to find a cofounder. It's how I met mine.

<comment><USER3> Neat idea. What's the revenue model for this?

<comment><USER2> Non-obnoxious text ads in the emails people receive. Mostly it's just a passion project, though.

</comment></comment></comment><comment><USER4> Building Instant group chat for nearby loosely affiliated people. (does the world need yet another chat app?!, surprisingly it does!)

Unlocks value and solves problems of current options. Maintains some privacy, keeps out randos (no, isn't one of those been done million times, who is around you app just based on GPS).

The magic happens in the backend, looking for someone who will focus on development of all server-side logic, You can make mobile apps that can handle lots of concurrent chats/chatrooms, thousands of users. It starts out simple but gets complex, lots of interesting problems to solve. More concerned about it works than how it looks, so basic frontend skills would be nice, but again back matters more Basic MVP already built with React Native. So you are not building from scratch, but adding features (some very basic like social login and images) then more complex. Later can go native app for iOS/Android if needed.

Based in the Bay Area would be nice but not a requirement. Built other chat apps before or something like that? Say hi. email in profile.

</comment><comment><USER5> We are always looking for technical and marketing/sales people to help with [https://kitspace.org](https://kitspace.org). We are making open source hardware electronics projects easier to order and build and starting to offer the same as a paid services for companies working on proprietary products.

Our killer feature is 1-click orders for electronic parts. We have a strong open source ethos and are building our company to help support open source hardware and software developers.

The best way to get involved remotely right now is through GitHub and our public chat.

[https://github.com/kitspace/kitspace](https://github.com/kitspace/kitspace)

[https://riot.im/app/#/room/#kitspace:matrix.org](https://riot.im/app/#/room/#kitspace:matrix.org)

</comment><comment><USER6> Not a co-founder per-say, but I'm open to connecting or collaborating with other makers in San Francisco. I'm a software engineer with experience building web applications and services. Most recently working on Dapps/Defi, but interested in other spaces as well. Let's grab coffee!

[https://bryce.is/writing/code](https://bryce.is/writing/code)

</comment><comment><USER7> Terrament is seeking a Civil Engineer co-founder!

Did you know that we can't solve climate change until we solve a _trillion- dollar_ energy storage crisis?

Help Terrament solve this crisis. We are building a large-scale, cheaper-than- lithium-ion energy storage solution with underground pumped hydro.

[https://www.terramenthq.com](https://www.terramenthq.com).

</comment><comment><USER8> I'm looking for _collaborators_ who like the idea of gamifying self-education; this project is being built as a collectively owned digital asset with no "founders" in the traditional sense, and where any surplus income is distributed back to members every month: www.karma.fm ; firstname.lastname@example.com

</comment><comment><USER9> [https://ExtractTable.com](https://ExtractTable.com) \- Looking for a marketing/business co-founder to tie up with companies that offer data services

</comment><comment><USER10> Am: Serial entrepreneur of small-ish SaaS and a single big thing. Strong full- stack and business-y stuff.

Want: Business execution/sales. I like SaaS and selling to businesses.

Email: email@example.com

</comment><comment><USER11> India ( NCR, Remote )

I am currently working on a product in the News field and looking for someone who is excited about disrupting how people consume news online.

Email in my profile.

</comment><comment><USER12> Me - looking for a new project to dig into. [http://andyphil.com/](http://andyphil.com/)

</comment><comment><USER13> Like escape rooms? Want to work on a site for escape rooms? Contact me: email@example.com</comment>


Does Apple's Steve Jobs have cancer again? - <AUTHOR> http://www.alleyinsider.com/2008/5/does_apple_s_steve_jobs_have_cancer_again_

<comment><USER2> Whether true or not, IMHO this is not appropriate to publish or discuss publicly. It is his private matter and only tabloids would publicize that for their own gain.

<comment><USER3> I agree. It was an asshole move to write such a story. There's no actual news here. And despite all their high-sounding justifications for writing it (which make up about half the text), it's pretty clear what their motives are.

Incidentally, according to the software I wrote to warn if the quality of stories on the front page goes down, this is the lowest scoring story ever to get this high on the front page.

<comment><USER4> How does the software that rates the quality of stories work?

<comment><USER5> Were I to design it, I would pagerank on users and their votes, or use a bayesian filter on article text with classification via some top users' votes. But I'm very curious to find out pg's solution.

</comment></comment></comment></comment><comment><USER6> What amaze me about this article and comments here is that the only reason it is important this guy cancer is because it'll affect the stock prices.

<comment><USER7> I think you can take it as a given that everyone hopes he's ok.

</comment></comment><comment><USER8> It would be a huge loss to ever lose this man. He's an epic visionary and every moment he's on the ground with us, he's changing the playing field, often for our own benefit, especially us hackers.

</comment><comment><USER9> Thank God ValleyWag is banned, because their article on the matter is obscenely light-hearted about the matter.

I pray Jobs is OK, cancer is no joke :-(

<comment><USER10> While we're joking about Jobs... I hope his cancer treatment has the following conditions:

* can only be used in 5 locations

* requires a two-year contract

* only available in 6 countries

</comment></comment><comment><USER11> I agree that his health is a personal matter.

Is this multi-billion dollar company overly dependent on one individual?

If not, then his health is not an issue.

If so, then the real issue isn't his health.

The real issue is the backup/succession plan. I have seen 100 million dollar companies paralyzed by the heart attack of one individual. Apple stockholders do deserve to know that that can't happen here.

<comment><USER12> Well said. I will now predict the future. Steve Jobs will die. _So will everyone else._

Apple is a company that is very clearly in need of an world class succession plan. It needs to be public and it needs to be endorsed by Steve himself while he is still seen as healthy and in control. Apple needs it more than most because of Steve's rock star status.

If Jobs has to step down before this is in place, I don't think Apple will do very well, both when it comes to stock value and product lines.

<comment><USER13> _I will now predict the future. Steve Jobs will die._

Holy shit! That can't happen! Maybe if I buy an iPhone it won't happen!

<comment><USER12> Every time someone unlocks an iPhone, a little part of the Steve dies. :)

</comment></comment></comment></comment><comment><USER14> Oh, Apple's Steve Jobs. For a second I thought they were talking about the other one.

</comment><comment><USER15> Wow, just because he's not overweight it's assumed that he has an advanced case of cancer?

He's probably a lot healthier than a lot of CEOs, most of which are old and overweight (and therefore at a much higher risk for all kinds of health problems). No one is writing articles about them and how shareholders should be concerned.

</comment><comment><USER13> [http://bits.blogs.nytimes.com/2008/06/10/apple-in- parallel-t...](http://bits.blogs.nytimes.com/2008/06/10/apple-in-parallel- turning-the-pc-world-upside-down/)

From this photo, Steve Jobs sure looks healthy. Move on, nothing to see.

</comment><comment><USER16> Or maybe he's just getting older?

</comment><comment><USER17> Maybe he got the fat stressed out of him a-la Peter Jackson after the LOTR movies.

</comment><comment><USER18> Google the guy who wrote the article. Hes a fucktard. Its called manipulating stock prices. That is all.

No its not. There is a manipulation technique here, the same kind of shit politicians pull, where if you are considering the question, the propagandist wins.

</comment><comment><USER19> Apparently the reality distortion field is radioactive.

</comment><comment><USER20> would be the baddest mother fucker with cancer I know.</comment>


Internet in Ethiopia down since 11 days - <AUTHOR> https://twitter.com/jgrahamc/status/1281540277325504512 <comment><USER2> it is back on today (house connection, only, no mobile)</comment>


Charter gives techs $25 gift cards instead of hazard pay during pandemic - <AUTHOR> https://arstechnica.com/information-technology/2020/03/charter-gives-techs-25-gift-cards-instead-of-hazard-pay-during-pandemic/ <comment><USER2> Here's a $25 gift card - _but first sign this paper that forfeits your ability to sue the company or accuse it or any wrongdoing doing this crisis_.

<comment><USER3> Sorry, no can do Hoss, not til you sign this EULA accepting all culpability for any problems I may seem to have directly resulted from this, and waiving any subsequent contractual clauses in subsequent signature secured legal agreements between you and I making use of my arms to sign where said clauses would involve me waiving any rights whatsoever, terms updated at my discrerion, for the use of my signature on your document.

Two can play at that game.</comment></comment>


Microsoft might crush Slack like Facebook crushed Snapchat - <AUTHOR> https://www.vox.com/2019/7/9/20686206/microsoft-teams-slack-facebook-snapchat-copy <comment><USER2> Changing mass consumer behavior by copying a feature into an existing penetrated base is far different than sticky business customers jumping ship. Business's behave differently from consumers.

Perhaps Microsoft may crush Slack, but the basis of the argument is incorrect.

</comment><comment><USER3> Teams might be a shameless copy of Slack but it also has some genuinely useful features that appeal to businesses, as well as the usual raft of useless cruft.</comment>