.NET Core Image Processing - <AUTHOR> https://blogs.msdn.microsoft.com/dotnet/2017/01/19/net-core-image-processing/ <comment><USER2> This might sound like a small thing but the .NET image processing stuff has traditionally depended a _lot_ on Windows builtins. Mono shipped an entire mediocre rewrite of GDI (the graphics layer that's been Windows since the early nineties) just to support the .NET Framework image processing stuff. Note: not for image _display_ (which is what GDI is mainly for) - even for headless image processing.

In practice this meant that if you were cropping an image server-side in C# code on a Linux server, a C-rewrite of a Windows UI layer would kick in and do the work for you. Amazing work from the Mono team, because it worked, but also pretty nuts.

If there's one place I remember having stuff that "just worked" on Windows and had weird subtle quirks on Mono, it's image processing (I'm talking a few years ago). So IMO it's pretty awesome that they're replacing all that legacy with a decent 100% .NET image processing library.

(Sidenote: this was also the _only_ real problem we faced developing a C# backend with a team on Windows, Linux _and_ OSX computers, and running it all on Mono on Docker on Linux - all well before .NET Core. Mono really is/was that good)

<comment><USER3> Mono shipped a reimplementation of the types in the System.Drawing namespace which uses GDI+ (note the +) on Windows. This reimplementation is also what CoreCompat.System.Drawing is based on. To my knowledge Mono _did_ shim a few Windows APIs, mostly related to window messages so WndProc can be overridden in a useful manner, but not actually GDI, as far as I know.

<comment><USER4> And the implementation was buggy as hell. When I needed to resize pictures on mono + Linux I finally had to resort to manually building libgb, writing a simple wrapper for the resizing part, and use that, as back then every other alternative as either incomplete, or pain to use and/or buggy.

Note: libgd is a well designed native library with design emphasis on simple interop wrappability.

</comment></comment></comment><comment><AUTHOR> Great to see the positive comments here. ImageSharp is my baby and it fills me with a lot of confidence that it's something that developers both want and need.

<comment><USER5> Why would you expect negative comment? .NET Core is a solid platform for web development. It's easy to deploy and relatively fast compared to the usual Python/Ruby/PHP and co... only matched by Java(controlled by Oracle) and Go(which is obnoxious). .NET Core is growing at a fast pace, and it deserves it, C# and F# are phenomenal languages.

<comment><AUTHOR> This isn't my first rodeo with Hacker News, I've unfortunately had negative responses before when sharing my work.

<comment><USER6> Thank you for your work! I used it with a client that had a System.Drawing impl. Just making thumbnails of uploaded images. It actually was our CPU bottleneck! And then it started crashing when load was high, making us drop or reprocess (which added more load and drops...).

With your lib and a few hours of work, all that disappeared and CPU went way down. Thanks!

On a side note, users should try to send gratitude to open source authors in general. I know it's hypocritical of me, since I didn't take the time to email you before this! I've done it a few times in the past and the replies I've received indicated that I was the only one to ever thank them! That sucks. I've written some stuff I know more than a few companies built entire products and services with -- I've received about 2 notes in 6-7 years. It's not much but just a bit of thanks really provided motivation.

Cheers to you.

<comment><AUTHOR> That's great to hear, With future updates and a little help I'm sure we can improve the performance further and make us the g0-to library.

And thanks for saying thanks, it is rare and always very much appreciated.

</comment></comment></comment></comment></comment><comment><USER4> My experience with any ImageMagick and derivateives is terrible. Obscure install is needed, app is not portable (which is normally a great default feature of .Net apps), or building it is difficult. Also its security track (of the native parts) is very bad, so i strongly discourage anybody using those libraries.

On the other hand ImageSharp is convinient, and the author is a nice helpful, responsive guy. I totally suggest using his library. When I needed it once for mono, though then it did not meet my needs, Mr. South was really helpful. Eventually I had to stick to manually wrapping libgd, but I'm about to revisit that code and change it to use a new ImageSharp version! (Also the fluent APIs make working with images using that lib pretty awesome!)

<comment><USER7> Magiic.net works fine but it occludes the real API so you might struggle to do certain things

<comment><USER4> The real api is a bit of brainfuck to me. I'm not sure what psychedelic the creators of ImageMagick were on, or maybe they thought it is kinda funny, but for me the GetMagicWand call was also a single sign that I don't want to use that.

So what I mean by this: in my opinion occluding the real API is probably a feature of Magiic.net. Still I do not like if a library needs systemwide install and config files, etc, as ImageMagick/GraphicsMagic does. Maybe the creators of these libs have solved the portability problems created by this, but I'm disgusted by these native libraries, and I avoid them. (Back then the one wrapper I tried needed a systemwide install of imagemagick. A click through wizard needing administrative rights, instead of dropping a dll into the PATH or the program directory... Also it has config files. Config files.. for a library. IMHO this is insane! It is a good approach to configure apps by config files. Libraries should be configured by API calls, or build time constants.)

Having custom build scripts for 3rdparty code is a huge work to keep up to date which will always lag behind, thus the security will also lag behind. On the other hand this is needed to solve the portability issues of the native parts. I find this approach unproductive, but wish the maintainers the best.

</comment></comment></comment><comment><AUTHOR> Amazed this is trending. If anyone has any interest in image processing of performance in general please get in touch and give me a hand. Any help will be appreciated.

</comment><comment><USER8> Nice post. Looks like I'll need to update the compatibility list: [https://github.com/jpsingleton/ANCLAFS#image- manipulation](https://github.com/jpsingleton/ANCLAFS#image-manipulation)

NB: You shouldn't use System.Drawing in a web app. It can lead to memory leaks and lots of pain. Even the newer WPF equivalents are not safe for use on a web server.

<comment><USER9> What would you recommend instead of System.Drawing in a web app?

Any of the ones listed in the article?

<comment><USER8> Unless you have a good reason to then I would recommend against rolling your own (with any library). Use an existing cloud service that specializes in it.

<comment><USER10> Most b2b saas products have a specific reason to not use a third party for everything - their customers don't want their data sprayed everywhere. Add to that anyone with a government contact.

</comment></comment></comment></comment><comment><USER11> What are the best resources for someone who wants to move from .NET desktop development to .NET web development? All the popular sites like Udacity and FreeCodeBootcamp rarely (if ever) touch the MS stack.

I know this isn't exactly the right place to ask, but I've had no luck anywhere else...

<comment><USER12> If you are already familiar with .NET, you might find some courses on Microsoft Virtual Academy a good starting point. There is a web development category: [https://mva.microsoft.com/training-topics/web- development#!i...](https://mva.microsoft.com/training-topics/web- development#!index=6&lang=1033)

Looking at the courses available, I would probably start with: [https://mva.microsoft.com/en-US/training-courses/getting- sta...](https://mva.microsoft.com/en-US/training-courses/getting-started-with- web-technologies-15937)

then look into either ASP.NET MVC: [https://mva.microsoft.com/en-US/training- courses/introductio...](https://mva.microsoft.com/en-US/training- courses/introduction-to-aspnet-mvc-8322)

or ASP.NET Core: [https://mva.microsoft.com/en-US/training- courses/intermediat...](https://mva.microsoft.com/en-US/training- courses/intermediate-aspnet-core-10-16964?l=Kvl35KmJD_4306218965)

This is coming from someone that hasn't actually used these, so take my recommendations with a grain of salt.

</comment></comment><comment><USER13> I have a ton of code that relies on System.Drawing so I've been watching this closely. These are projects that go back over 10 years now. I have code in both web server and client side versions. System.Drawing offers some features that other image processing libraries don't. My use case probably isn't typical but when you are trying to go back and forth from vector to raster data you need access to the point data (along with manipulation) that is going to be drawn. System.Drawing provides this flexibility through the GraphicsPath object. It is good to see some official word on this though.

<comment><AUTHOR> Chat to us on github. Our path drawing public API's are very similar to System.Drawing so we may well be able to provide you with the same functionality.

<comment><USER13> I'll check it out James. I keep up with you on twitter, wish I had more time to contribute. I have a lot of respect for your hard work though.

<comment><AUTHOR> Thanks!

</comment></comment></comment></comment><comment><USER14> Also take into account that rely on the GDI API won't work in Azure App Services (which is where most new azure based web apps reside) [1]. It would be nice if this reduced some of the issues with 3rd party libraries (pdf generation etc) running inside of app services. We've had some issues having to keep old web/worker roles around for this exact reason and it costs us more money.

>Components rely on GDI API may not work on Azure Websites. The workaround is moving to Azure Web Role. (If you are using the ReportViewer control, we have enabled PDF generation for most applications.)

[1] [https://social.msdn.microsoft.com/Forums/en- US/6ed5c738-390a...](https://social.msdn.microsoft.com/Forums/en- US/6ed5c738-390a-4ca7-81d0-370124a4fc88/azure-websites- faq?forum=windowsazurewebsitespreview)

</comment><comment><USER15> Is it a pipe dream to hope they go for DirectX in dotnetcore one day?

I'm so happy to read that they've gotten the image processing piece in place.

A while ago, on a bit of a lark and to see if I could, I started trying to port a copy of selenium webdriver to DNC and was initially surprised bow how successful I was in getting it to compile and build.

For the most part it was just re-pointing namespaces to their new locations.

When I got to the piece about image processing I hit a wall.

Maybe I'll take that on again sometime.

<comment><USER16> >Is it a pipe dream to hope they go for DirectX in dotnetcore one day?

What do you mean ? DX is Windows specific, .NET core is cross platform. And DX doesn't even have official .NET bindings on full .NET AFAIK.

OTOH I'm sure SharpDX and the likes could be ported (if it already isn't - this : [https://github.com/sharpdx/SharpDX/issues/520](https://github.com/sharpdx/SharpDX/issues/520) suggest it should work but I haven't tried it)

<comment><USER17> Yes, SharpDX does work on .NET Core. Although it's not "official", it is essentially the de-facto library for DirectX bindings.

</comment></comment></comment><comment><USER18> Offtopic:

I am the only one who absolutely hates charts like [0]these? Like what are those numbers on top, why it has no legend? Is it CPU utilization, miliseconds, seconds (maybe it was done over 1000 images or so)?

[0] - [https://msdnshared.blob.core.windows.net/media/2017/01/Resiz...](https://msdnshared.blob.core.windows.net/media/2017/01/ResizeWin.png)

<comment><USER19> In this case does it matter though? The purpose of the chart is relative performance, which it conveys minus a legend. Though I would agree that if they aren't including the legend, they should remove the axis and standard range labels entirely.

<comment><USER20> It matters at a quick glance - is performance measured in images per millisecond or milliseconds per image? The answer to that question is obviously important to how you interpret the relative performance. Both metrics (units per time and time per unit) are used widely in computing.

I was initially confused by the chart and yes the text (and following table) make the units clear, but the chart should be standalone.

</comment></comment></comment><comment><USER21> Great to know, and good article. Can't help but feel that the author should have put in the full compressed images so we can view them. From the table at the bottom, Skia looks like it has quality issues, but it is kind of hard to say without seeing the full-sized compressed images. The uncompressed ones are on github, unless i've missed something, the compressed ones aren't.

<comment><USER22> What do you mean? The test is doing resize and JPEG compression. If you're interested in isolating the compression part, the code on GH should be super easy to modify to your particular requirements.

</comment></comment><comment><USER23> This seems like a really great use case for dotnetcore. I can see it being perfect for an image manipulation microservice.

</comment><comment><USER24> Why wasn't Pixman/Cairo tested but Skia was tested? I'm sure it has to do with the natural availability of these things on .NET but I just checked and Cairo still has binding pre and post Mono. I would consider this option strongly there is way more support for Cairo in just about everything than Skia.

<comment><USER22> Because it's not Skia that is tested, but SkiaSharp, which is a .NET / Mono wrapper for Skia. It was included because the work to make it compatible with .NET Core is close to completion and because it's promising work. I hope this clarifies. If there were Pixman/Cairo .NET Core wrappers in existence or close to completion, I'd be happy to update the post with them.

<comment><USER24> [https://github.com/zwcloud/CairoSharp](https://github.com/zwcloud/CairoSharp)

<comment><USER22> Thanks, I'll check it out.

</comment></comment></comment></comment><comment><USER25> Google's library destroys in benchmarks, but quality and filesize is lower which suggests to me it wasn't a fair test.

The quality settings should have been standardised to human-perceived image quality, given that's the purpose of an image.

<comment><USER22> Unfortunately that's not possible. Each library makes choices and tradeoffs on their defaults. Each time, I set whatever quality dials existed to the highest available, and I standardized on 75 JPEG compression. There is no way to get consistent quality across all libraries, which is why I included the results for the 12 images used in the test in the blog post, so everyone can handle this the way they want.

</comment></comment><comment><USER26> There is also [https://imageresizing.net/](https://imageresizing.net/) with a new ImageFlow library for cross-platform

<comment><USER22> Yes, but that doesn't have a .NET Core library, and as such wasn't included in the post.

</comment></comment><comment><USER27> Does anyone know when .NET Core will get a decent linear algebra library?

I've heard MathNet.Numerics has a plan to add it, but so far there seems to not have been much progress.

</comment><comment><USER28> 5-10 megapixels input images might be more representative, as many phones produce such sizes.

<comment><USER22> It doesn't make a difference in the relative performance of the libraries on the metrics in the post, it only makes the benchmarks slower to run. This being said, the code is available, so this is easy for anyone to check. If I ever get to do a memory benchmark, that would probably be a different story, however.

</comment></comment><comment><USER29> If you need something right now, consider imagemagick or graphicsmagick.</comment>


Ask HN: When they say there's a Cybersecurity skill shortage, what skills exactly? - <AUTHOR> every few months there is an article or some study on Cybersecurity Professionals shortage.<p>as a Network Engineering Student with interest in Security, What exactly are the skills that companies want ? <comment><USER2> There are several categories:

1\. Tools. People who can configure and maintain security products. Firewalls, IPS, SIEMs, Identity and Access Management, key management, email security products.

2\. Analysts/Incident response (IR) These are the people who research and diagnose the alerts spewed by the above products. They usually recommend compensating controls for the people above to implement. They work in a SOC either at a big company or an MSSP. This is where knowledge of networking is most valuable.

3\. Malware analysis. Considered the elite they reverse engineer code samples, create signatures, and try to determine source and purpose of attackers. Usually work at security vendors.

4\. "Researchers" These people look for exploitable bugs in critical (or any) software. They may work for the dark side.

5\. And yes there is a need for people who can build teams to do the above. Requires experience in the above.

The one area discipline there is no shortage in is cyber policy. :-)

<comment><AUTHOR> I'm very interested in area 2, I'm taking a new job in the next weeks in a team involved in maintaining a medium sized critical network and involves sysadmining linux/unix servers.

How do I position myself to get into category 2 that you list above.during this job or the next job.

thank you very much for replying btw.

<comment><USER2> Take a pen testing course. Even get "certified" Your new perspective will give you tremendous insights that you can apply in your day job. Your next job (if they don't put you on the security team at your current one) could be at an MSSP. IBM, Symantec, esentire, etc.</comment></comment></comment>


Naming your startup right - <AUTHOR> http://www.beingpractical.com/2012/11/23/naming-your-startup-right/

<comment><USER2> +1. Thanks for sharing the links. The one I stumbled on a couple of months ago that seemed to cover all the bases was this one: <http://jonpolygon.com/2011/07/guide-to-naming-your-startup/>

Might want to add that one to the list (I'm not affiliated with the guy, btw, just enjoyed the post).

<comment><AUTHOR> nice post. thanks!</comment></comment>


Ask HN: is Mono for Android worth it? - <AUTHOR>

Been toying with doing an Android app on the side. I like the idea of writing it in C# (as far as "standard" languages go, I'm far more comfortable with it v. Java); but not really sure it's worth $400 when I'm not even sure I'll get $40 income from said app to begin with. Anyone that's used it, is it worth the money even if you aren't targeting WP or iOS also (via MonoTouch)? I'll pay if it's worth the money, but I don't want to be 6 weeks in and find some necessary API that Mono doesn't glue particularly well to. <comment><USER2> We just blogged a case study from the PictureTHIS, an app from the guys that did Draw a Stickman:

[http://blog.xamarin.com/2012/08/07/picturethis-fun-for- both-...](http://blog.xamarin.com/2012/08/07/picturethis-fun-for-both-ios-and- an_ro_d-users/)

They have a nice case study.

You do not have to pay before you try, the evaluation version lets you do all your development on the simulator. If you like it, you can buy it and deploy to device. And if you are unhappy, you can return it within 30 days.

That said, we will work hard to make sure you are delighted with our product, and keep you as a user.

<comment><AUTHOR> Thanks for dropping in, Miguel. Liking what I'm seeing so far; sending a mail to Xamarin's support line w/ a few notes shortly

</comment></comment><comment><USER3> Well, I don't know about Mono on Android, but my business partner and I tried using Mono to port a simple .NET app to OSX and it was disastrous.

Layout was wrong, the application was ugly and non-native, and the final straw was the printing API that flat out crashed whenever we tried to use it. We ended up re-writing in Java, and achieving a relatively high level of quality in a short period of time. Java was easy to pick up after C#, and the tooling was much more mature than Mono.

<comment><USER2> If you want a cross-platform UI from the same codebase, you should use Gtk#, not use Windows.Forms. But that requires a UI rewrite.

An alternative is to split your code along the business logic/presentation layer boundary. Share the business logic and write a platform specific UI using the native toolkit on each platform: WPF or Winforms on Windows, MonoMac (Cocoa) on Mac and Gtk# on Linux.

The Winforms stack has not been maintained for about 5 years, and was never particularly debugged nor maintained on Mac. We wanted to remove it, and just tell people "Sorry, this API is useless", but there are a few type dependencies that are needed elsewhere.

</comment></comment><comment><USER4> While I've had a tinker with both Mono and Android, I haven't used Mono on Android. I have however, had the displeasure of using it on GNU+Linux. I'd sooner do a UI rewrite than touch Mono again.</comment>


The Joy of Books Is Lost When We Treat Reading as Self-Improvement - <AUTHOR> https://qz.com/quartzy/1567201/for-world-book-day-find-the-joy-in-slow-non-competitive-reading/ <comment><USER2> I think most readers that decide reading books will lead to a better life are missing the point.

I keep on reading about people that feel so proud that they read 1 or 2 books a week. When it comes to books for self-improvement it's not the number of books you read but how you apply what you read. It's many times better to read fewer books and apply what you learn rather than to read so many that you barely remember what was read and never get a chance to apply it in life.</comment>


Bitcoin reaches an all-time trading high of over $33 - <AUTHOR> http://arstechnica.com/business/2013/02/bitcoin-reaches-an-all-time-trading-high-of-over-33/ <comment><USER2> The fact that Bitcoin has flourished despite numerous high profile incidents of theft and fraud, the relative difficulty associated with buying and selling them, and the rather unsavory nature of many of its most popular uses today, is a testament to its long-term viability as a currency. The Bitcoin ecosystem has a long way to go before it is considered mainstream, but I believe its long-term success is almost inevitable at this point.

The price would likely be even higher right now if Bitinstant, once one of the most popular and easy ways to obtain Bitcoins, hadn't had serious financial and technical issues over the last two weeks. Here's hoping they get their issues sorted.

<comment><USER3> It says to me that there is a large amount of speculation. As a currency, Bitcoin is basically useless except for illicit transactions (which are usually pretty inefficient anyway). Would you use dollars if the value of a dollar could change by hundreds of percentage points in a few months? No one would.

<comment><USER4> Well your logic is obviously flawed, because people _do_ use bitcoins for transactions and they have changed by hundreds of percentage points. "No one" is patently false.

Besides, illicit transactions are still transactions.

And.. you are just plain wrong. Bitcoin is also useful for buying many completely legal things. Including a VPN that can't be linked to your identity. (Illicit you say? What about a journalist in a repressive regime).

<comment><USER3> Illicit plus grey market and a few special cases. Fine, you win the Pedant's Prize for nitpicking. The point is that they don't make a good general-purpose currency. Just because they're awesome for buying drugs and secret VPNs doesn't mean very much in the grand scheme of things (most transactions, at least in the developed world, do not take place in the grey market).

Also, just because some people do something doesn't mean that there aren't strong incentives against doing that thing, and doesn't make a statement such as "people don't do that" false. It just means that there are exceptions, but when the exceptions don't affect the point it is common to ignore the exceptions in general conversation.

<comment><USER5> Money is ultimately just a standardized indicator of wealth with no intrinsic value on its own, a definition shared by both USD and BTC. The downside of USD being that it can be counterfeited, illegally by unscrupulous individuals or legally by the Federal Reserve (see: QE Infinity).

Regrettably, it's still super common for people to turn up their noses in disgust, claiming "Bitcoin Boogey Man, oh noezzz"!

I'm sorry, does the USD somehow _not_ come with a Boogey Man? Because last I checked HSBC was caught with their pants down directly funding terrorism through shady business practices, Bernie Madoff is still in prison for running a giant Ponzi, the illegal narcotics trade is done mostly in USD, plus you have money laundering, and just about every crime conceivable being carried out in USD.

But wait, the Bitcoin Boogeyman!!!

Everyone come to look!

The USD is dirtier than Bitcoin by several orders of magnitude. It's been taking a full out mudbath every day of its life for the past several decades. It's just that the USD is all people know, so they assume it's squeaky clean, because how could it not be squeaky clean??

<comment><USER6> For one thing, currency instability for BTC is bigger, and secondly the primary use of BTC right now is making illegal income look legal.

<comment><USER5> * citation needed

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> Looking at the history of Bitcoin and saying "Wow, the price of Bitcoins will never drop because it hasn't dropped so far" is like looking in the back mirror of your car saying "Wow, there will always be a freeway ahead of me because I have been driving on the freeway for so long now". The fact that is has flourished can have a million explanations, where one is that it does actually have a long term viability as a currency. We do, however, not have enough information to say with any certainty that that is indeed the case.

What we do know, is that so long as new users flock to the currency there is an increasing demand, and this will drive the price up – until the recruitment halts. Then what will happen? We don't know. It might disappear, it might drop slightly, and it might stay the same. That will be the true experiment. Right now we don't have enough data to say whether it is sustainable over the long term.

<comment><USER8> One word: deflationary.

</comment></comment><comment><USER9> Bitcoin is a deflationary currency since it's supply is limited.

Doesn't that mean that it's expected to rise in price? This also ends up being the currency's downfall, since there's an incentive to hoard it rather than spend it.

<comment><USER10> > deflationary ... there's an incentive to hoard it rather than spend it.

By that logic, everyone would put their dollars into investments that beat inflation (this is a form of saving). Yet they do not. You can hold (hoard?) securities (VBLTX, HTS, JNJ) that beat inflation, yet people spend dollars on depreciating assets (cars, computers). There are other less-risky financial instruments [1] that beat nominal CPI, yet people spend dollars.

> Doesn't that mean that it's expected to rise in price?

Sure, relative to an inflationary currency. But bitcoin fluctuates quite a bit.

By they way, currency is just a good, like anything else. One trades currency for some other good that one values more than the currency [2].

[1] [http://www.mint.com/blog/investing/beat-inflation-with-i- bon...](http://www.mint.com/blog/investing/beat-inflation-with-i- bonds-102011/)

[2] <http://en.wikipedia.org/wiki/Time_preference>

<comment><USER11> >You can hold (hoard?) securities (VBLTX, HTS, JNJ) that beat inflation, yet people spend dollars on depreciating assets (cars, computers).

No-one buys a dozen computers and puts them in their basement as savings for retirement. People buy cars and computers to use, not as investments. People with nontrivial quantities of "spare" dollars generally do put them into inflation-beating investments.

</comment></comment></comment><comment><USER12> Can someone tell me if I should invest in this right now or not or did I miss the boat and I should just move on?

<comment><USER13> Sure, you should not invest.

I say that because investing has different skill levels and different risk/reward profiles. The lowest level is perhaps savings accounts and CDs and at the most extreme end are derivative financial instruments. Long before you get to currency speculation you go through equity value investing, bond investing, and equity option investing. After going through those things you get to commodities, precious metals (a form of commodity) and then currencies.

So to ask the question "should I invest in this right now?" doesn't make a lot of sense to an investor who is always looking at what they have invested, the risks of those investments, and the forces that move things. If you are wondering what the outlook is for price expansion of bitcoin relative to the Yen or Yuan, or what geo-political events are most likely to move the value of bitcoin and in which way, then you are looking at the investment in context and really the only answer is one with your other context which isn't part of your question. If you portfolio was a million dollars and you wanted to put $10K into bitcoin as a 'kicker' (something that would potentially kick up a big return but if you lost it in its entirety it would only represent 1% of the return. That's an interesting question. It has far more downside than upside at this point.

<comment><USER14> A voice of reason in a world gone mad! He would have to clarify the amount of risk he wants to take and how much time he wants to spend on it. A friend has very successfully invested in bitcoin (1000%+ return), but I am very sure he has the price up on his smartphone 24/7 and can sell very quickly.

I don't know how much downside it has, as a long term gamble, because there's an upper limit on the amount of currency. If it does take off with the general public, the longer you can hold the more it will be worth.

"Hard limit of about 21 million Bitcoins" say you bought 1 million bitcoin at $1 and bitcoin becomes a replacement for paypal?

<comment><USER13> Well the downside is that that loses all value. That can occur for a number of reasons but the two most widely speculated on are a global response (something like the G8 deciding that they won't allow trading it) or a technical defect (which invalidates some part of either the transaction train or the currency itself).

But that said, its also very volatile as a currency and that makes for a lot of speculation and rapid market changes. Not for the faint of heart and certainly not a place for any money you might actually need a year from now.

</comment></comment></comment></comment><comment><USER15> Anyone join any mining pools lately now that prices are increasing? I figured there would be a pretty serious drop after the 50 to 25 drop, but there seems to be some dedicated miners still out there. Looks like brand new FPGA boxes are coming out for it as well.

<comment><USER16> Not FPGA, but ASIC. Mining with a GPU is fairly useless now unless you've a warehouse of them and free power.

<comment><USER15> Good point. I imagine those up North may get some use as they can double as heating (if the area's small), but besides that, it does seem like a waste of time and electricity at this point.

</comment></comment></comment><comment><USER17> The value of BTC is not just based on speculation. It has a use and thats transferring wealth from one to another in the same way paypal/western union does but much cheaper. Consider that paypal alone transacted $451million per day in the 4th Qtr 2012 and another $20 Billion via western union in the same financial qtr. Now just imagine whats going to happen to the value of BTC when just 1% of the people using Paypal/WU start using Bitcoin to transfer or store their wealth. Now add in the people turning to BTC from other money transfer systems too. I think this is what is pushing up the value of BTC along with the speculators that are jumping on the gravy train too

</comment><comment><USER6> Trading bitcoins, even in an otherwise legal fashion, is essentially money laundering at this point.

Yes, there are legal bitcoin traders or bussinesses. And No, you can't pretend these are the majority.

And it's not really a problem that I am thinking this. The big problem is that the European Central Bank is saying this too. The legal status of Bitcoin businesses remains unsolved, even if the proponents don't run out of reasons why trading Bitcoins is purportedly legal.

</comment><comment><USER18> Currency = Truat + Wide Acceptance. The wide acceptance angle for bitcoin is going to take some time, so till then this is all just speculation.

</comment><comment><USER19> So if there is ever a bug discovered in the protocol or say the crytography methods get broken, or say we need more than 8 decimal places in the coins.

How do you get all members of a distributed system to upgrade? Would holders of bitcoins have to upgrade as well?

<comment><USER20> If we need more than 8 decimal places, we have a new currency of very similar nature with a more convenient base unit. By that point, the principle will have been proven.

</comment></comment><comment><USER19> Question I've been wondering. What happens to lost bitcoins? Say your hard drive dies and you didn't have a backup.

Are those coins out of circulation forever? Will this gradually decrease the supply of bitcoins?

<comment><USER21> Yes. Gone forever.

<https://bitcointalk.org/index.php?topic=109117.0>

<comment><USER22> Or, in technical terms, Clementine.

</comment></comment></comment><comment><USER23> This sucks. I was just about to pick up a bunch last week at $29. Unfortunately it's not very straightforward to obtain.

<comment><USER24> What sucks is not knowing where your wallet is.

I have .9 of a bitcoin somewhere transferred between a Linux PC and three different phones over two or three years.

I have about $28 US somewhere.

<comment><USER25> I had this sort of issue. Back in 2010 I had mined a hundred coins (CPU mined, back in those days, lol). A month ago I decided to find the wallet file, took me 2 hours to search 5 HDDs with multiple partitions each from my old computers...

I fixed this problem now by printing the keys out, storing them securely in a safe and deleting the wallet files.

<comment><USER16> Better luck than me. I've 500BTC that I mined and gave up on. They'd be worth $26k if I hadn't decided to clean out my backup RAID.

</comment></comment></comment></comment><comment><USER26> At some point Dominos Pizza or the like is going to take bitcoins for web orders and it will go mainstream. Zero transactions fees and no charge backs make it a no brainer for a big class of normal, nonillict online transactions.

</comment><comment><USER27> Is there any research on the bitcoin generation algorithm?</comment>


Show HN: CodeOnVideo – Learning Assistance for YouTube coding videos - <AUTHOR> https://codeonvideo.com/https://codeonvideo.com/ <comment><AUTHOR> No more getting distracted by youtube recommendations. Make notes in browser. Explore Tools. All in one place.</comment>


Classic photography articles by Bob Atkins - <AUTHOR> http://www.bobatkins.com/photography/learning.html

<comment><AUTHOR> Great examples of technical writing for everyone.</comment>


Enterprise software vendors have no taste - <AUTHOR> https://medium.com/michael-dubakov-selection/enterprise-software-vendors-have-no-taste-add7e78b7f69 <comment><USER2> I think you should spend more time pointing out the ways the different UIs could be improved or even by mocking up some designs that DO have taste. It might help make your point better than just showing us ugly Enterprise screenshots.

Typo: "It is easy to burry[bury] utility under the beautiful picture."

</comment><comment><USER3> It's because the people buying the software aren't the ones using it.</comment>


Hacker News – Terms of Use (2014) - <AUTHOR> https://web.archive.org/web/20140715041043/http://www.ycombinator.com/legal/ <comment><USER2> Shouldn't it be the Terms of Use of ycombinator.com instead of Hacker News? I mean, the content of that ToU does sound like describing Hacker News, but it's under [https://www.ycombinator.com](https://www.ycombinator.com) not [https://news.ycombinator.com](https://news.ycombinator.com) (just like today's [https://www.ycombinator.com/legal#tou](https://www.ycombinator.com/legal#tou) ).

<comment><AUTHOR> I mean, I haven't see any ToU for HN. The Legal section always linked to ycombinator.com pages.

</comment></comment><comment><USER3> It's a tad more complex now for sure:

[https://www.ycombinator.com/legal/#tou](https://www.ycombinator.com/legal/#tou)

<comment><USER4> What?! By using this site I've agreed to be bound by an arbitration agreement, is that right? There's no way that should hold up legally. Clicking around the web shouldn't be equivalent to signing a bunch of legal contracts.

<comment><USER5> > By using the site I've agreed to be bound by arbitration agreement, is that > right? There's no way that should hold up legally.

You're right, it wouldn't. (In general, under US law. I am a lawyer but this post isn't legal advice).

The term for that sort contract is "browsewrap" and US courts have consistently declined to enforce them.

<comment><USER6> Lawyers that knowingly write such unenforceable legal intimidation should face some consequences.

</comment></comment></comment></comment><comment><USER7> Technically, does a server do that? I guess my browser does, right?

</comment><comment><USER8> They have trademarked "Startup" and "Work at a startup"?

<comment><USER9> Unlike "Start Me Up", which was the Windows 95 advertising blitz (and of course they licenced the Stones)

<comment><USER10> Even more interesting is that the Windows 95 startup sound was composed by Brian Eno.

[https://theindustryobserver.thebrag.com/the-odd-story-of- how...](https://theindustryobserver.thebrag.com/the-odd-story-of-how-brian- eno-composed-the-windows-95-startup-sound/)</comment></comment></comment>


My life as a disabled student - <AUTHOR> http://www.theguardian.com/education/mortarboard/2013/oct/03/my-life-as-a-disabled-student

<comment><USER2> Whilst my disability isn't as impacting as hers, I thought I'd contribute my own perspective on going through a similar process.

I have very poor vision as a result of occular albinism and because it's retinal it can't be corrected with glasses. This leads to endless frustration and ultimately finding creative solutions to many problems faced at university.

The fact of the matter is there simply isn't support to do things "normally" with a disability, whatever it may be. People make adjustments but it's never quite right. As a computer science student, you might think this could be mitigated because a lot of my work involves using a computer and for the most part this is correct. I have good enough vision that I can tell, however, if a monitor is at a poorly configured resolution so I always prefer to have maximum resolution with zooming tools.

This is going completely off topic but it is one of the reasons I still tend to use Windows a lot instead of a linux distro; they simply don't support ease of access as well. Windows recently introduced a "Win + +/-" zoom tool in Win7 which has honestly been life changing. On the contrary, trying to work out how to increase the font size in SWI-Prolog on a school machine was a fruitless endeavour.

So what's my point? With a disability, there is no escaping it. You have to adapt and not rely on support because frankly it's just too much hassle. I can't read lecturers writing on boards in lectures so I borrow notes from friends, it's not ideal but I don't think it's worth the headache of pissing about with a ridiculously slow and difficult to use camera system provided by a disability support grant. I'm not sure what the solution is for my particular problems but I resonate the sentiments of the article; if you're disabled at university, you're going to have a hard time no matter what support they try to offer.

<comment><USER3> I'm curious - why not get a video projector and throw the image on a wall? I understand this is not a portable solution, but for at-home, this might be just the ticket.

<comment><USER4> projectors are very very expensive; £2,000-ish per year for a bulb, if you have them on continuously like a monitor. You also need (as mentioned by sibling comment) a big, dark room to make the image bigger & better than a monitor.

<comment><USER5> Laser video projectors are dropping fast in price now. Some vendors claims at least Laser video projector a lamp lifetime of 20 000 hours, 4X longer than a conventional mercury lamp projectors.

</comment></comment></comment></comment><comment><USER6> Stepping back a bit: The main problem here is that disabilities are rare, and each disability requires different accommodations. Having the staff and equipment to accommodate _every_ disability would be prohibitively expensive, so most organizations just play it by ear. That forces each disabled person to fight for their accommodations; a frustrating and often embarrassing experience.

This problem will only get worse. As genetic screening and medical technologies improve, disabilities are going to become rarer. At some point, certain disabilities will become so rare that it will be socially and politically acceptable to stop accommodating them.

On the bright side, medical advances will mean fewer disabled people. Eventually, the wheelchair will go the way of the iron lung.

<comment><USER7> "The main problem here is that disabilities are rare"

I was curious about this (I have two disabled siblings, so I assumed that I would over estimate the frequency) - according to the Department of Work and Pensions:

"Around 6 per cent of children are disabled, compared to 16 per cent of working age adults* and 45 per cent of adults over State Pension* age in Great Britain."

[http://odi.dwp.gov.uk/disability-statistics-and- research/dis...](http://odi.dwp.gov.uk/disability-statistics-and- research/disability-facts-and-figures.php#gd)

To me that is a _huge_ proportion of society.

<comment><USER8> Sometimes those counts include e.g. shortsightedness.

<comment><USER9> Although shortsightedness is easily corrected nowadays, it should still be counted as a disability from a certain degree on.

Considering the numbers here, I would not expect the parents numbers to include all cases, though:

"A recent study involving first-year undergraduate students in the United Kingdom found 50% of British whites and 53.4% of British Asians were myopic.[62]"

[http://en.wikipedia.org/wiki/Myopia#Epidemiology](http://en.wikipedia.org/wiki/Myopia#Epidemiology)

</comment></comment></comment></comment><comment><USER10> Just another example of the importance that those who are developing software and platforms of the future to develop them in a way to make them accessible to all.

Microsoft and Google I'm looking at you and what you are doing in the educational space.</comment>


Skribit Finally Launches, Aims to Cure Your Writer's Block - <AUTHOR> http://www.techcrunch.com/2009/12/17/skribit-finally-launches/

<comment><USER2> Out of curiosity, why was it necessary to be in beta for over two years? Doesn't seem like the technology would take that long to develop.

<comment><USER3> Necessary, no. Most of the functionality has been around for a while, it's the polishing, redesigns and extra things that took the extra time.

To clarify we have not been in full-time active development for 2 years. I was still a full-time student the first year, so myself and cofounder were only able to work here and there, mostly weekends. This year I became the first full-time employee.

btw - I saw your SeatGeek launch @ TC50, grats!

<comment><USER2> Makes sense. Congrats on the launch--the widget looks great. Whenever I get around to starting a personal blog, I'll be sure to use it.

</comment></comment></comment><comment><USER4> Do bloggers really have this problem? I have more drafts waiting to be finished than I have articles. I have too many ideas to execute them all. Am I alone?

<comment><USER3> I did an "Ask HN" thread about a year and a half ago and found a good number of people with this problem. Skribit came out of that problem I had myself for my own blog <http://paulstamatiou.com>

<comment><USER5> a friend was asking today on twitter what το blog about. I ll go recommend το him skribit.

</comment></comment></comment><comment><USER6> Congrats! Love the design, clean and original. Everything is well laid out and the copy is excellent.

Another plus because it doesn't look like another 37signals web app clone.

<comment><USER3> Thanks a ton! That means a lot to me as I am a jack-of-all-trades type and never really associated with having good design sense haha.

<comment><USER6> That's how I am, it limits the damage I can do by over-designing. :)

</comment></comment></comment><comment><USER3> Thanks guys! You beat me to the HN posting haha.

</comment><comment><USER7> Congrats, Paul!

</comment><comment><AUTHOR> I actually use this on one of my blogs. "Stammy" has done a great job of making a clean interface and widget. I wish him all the best.

</comment><comment><USER8> My experience:

* Used "techncrunch" promo code when signing up.

* Supposed free pro account actually costs $1 per year, even using the promo.

* Impossible to switch to "free" account.

* Leave.

<comment><USER3> Yeah that was a bug i noticed right at the very last minute. Amazon would error if promo was for $0 so I have been working on hacking a fix in - we've never given away free Pro accounts before so we just caught this issue. Ideally should just bypass Amazon completely.

Hit me up with your username and I'll manually bump you up to a year account until we get that resolved.

<comment><USER9> I did pay the $1/year, and if that was a mischarge I surely wouldn't mind getting my subscription bumped on to 2011 ;)

Looks good so far, hope to make good use of it :)

<comment><USER3> Alrighty you're bumped up til jan 16 2011. your account might still say 2010 but it still think you're in the 30day pro trial.

</comment></comment></comment></comment><comment><USER10> Congrats Stammy!

<comment><USER11> Don't forget Calvin!

<comment><USER3> and our intern @alexcoomans!</comment></comment></comment>


Show HN - CoinConect-the bitcoin social network. - <AUTHOR> http://www.coinconnect.org

<comment><AUTHOR> "CoinConnect is here because of Bitcoin and for Bitcoin. Social networking is quickly becoming one of the most widely used forms of communication and we want to bring that level of success to Bitcoin and the great businesses and organizations that use it and promote it.

It's time for Bitcoin to evolve to the next level and CoinConnect is here to help facilitate that growth.

CoinConnect is the bridge between Bitcoin and the rest of the world."

</comment><comment><USER2> I have no idea what this is or why i'm supposed to want it Popular web product 2010 (social network) + popular news item 2011 (bitcoin) gives me this maybe?

I think the first thing you should do is give a short, easy to digest message on the home page about what Coin Connect gives to its users

Will it make me rich? How Will it get me laid? How Will it make me powerful? How

What tech have you used to build this?</comment>


Switzerland votes for an end to nuclear power - <AUTHOR> https://www.engadget.com/2017/05/21/switzerland-votes-to-end-nuclear-power/ <comment><USER2> Isn't wind and solar energy hugely erratic and unreliable?

Isn't nuclear far far cheaper, and for all practical intents and purposes it's safety record can be rounded off to "it is safe".

It certainly is a lot cleaner than burning coal. Possibly clean enough? Is nuclear waste really that unmanageable that it is OK to pay several times more for your electricity, something that drives the cost of nearly everything else in your economy?</comment>


CodeSandbox - <AUTHOR> https://codesandbox.io/ <comment><AUTHOR> Ives van Hoorne (of CodeSandbox) got Visual Studio code to run in the browser

[https://twitter.com/CompuIves/status/1031930891122049024](https://twitter.com/CompuIves/status/1031930891122049024)

<comment><USER2> VSCode IS running inside a browser.

<comment><USER3> > VSCode IS running inside a browser.

I used to be a major contributor and follower of Atom. People commonly asked why Atom couldn't run in the browser. The answer was simple, node and a browser are _totally_ different things. Imagine a browser opening files, starting processes, running arbitrary C-code, etc.

No, VSCode does _not_ normally run in a browser.

<comment><USER4> Ives said it was relatively easy to swap out the node bits.

<comment><USER5> He also said that the reason for that was the way the VSCode team structured the code, not because it's "running in a browser already": [https://twitter.com/CompuIves/status/1031932607326371843](https://twitter.com/CompuIves/status/1031932607326371843)

</comment></comment></comment></comment></comment><comment><USER6> If you like CodeSandbox you should check out Code.xyz [1] — not the same target (Code.xyz is for building and shipping backend APIs to the Standard Library [2] platform) but we were definitely inspired by CodeSandbox and others! We built our rendering engine from scratch (as in, scratch, 'nilla JS) to meet our needs at a low browser payload.

[1] [https://code.xyz/](https://code.xyz/)

[2] [https://stdlib.com/](https://stdlib.com/)

<comment><USER7> I have to register to do anything?

<comment><USER6> To run code, certainly! We automatically provision an auto-scaling mutable development API environment associated with your account when you do so. :) Happens in seconds.

<comment><USER8> You say that as though it's obvious that one has to create an account, even though many similar services, including CodeSandbox, don't require one for playing around.

<comment><USER6> Backend vs Frontend.

While it is true that Runkit (backend) offers the ability to play around without being logged in, Francisco and team are also focused on providing an amazing Node prototyping, learning and debugging environment, so that's a necessity. We're super impressed with their work. (Note to Runkit team: feel free to jump in.)

Our value prop, however, is that we're an API platform (Standard Library), and Code.xyz is a product that enables less technical people (those uncomfortable with command line tools) the ability to jump in and build within our ecosystem right away.

APIs are namespaced to your user account as an intentional design decision of the system. Code.xyz is a product that's intended to be used in a professional setting to stand up business APIs (Slack bots, Stripe webhooks) and we're okay with that trade off — at least for now!

I'd say if you just wanna play around with an embeddable REPL environment stick to Runkit. If you want an API you can stand up and run in production (for whatever purpose) but also want to develop it and collaborate on it in the browser, then we're for you! Think of us like Google Docs for API development, at least that's our North Star.

</comment></comment></comment></comment></comment><comment><USER9> I am so happy that we're on Hacker News!

If you have any questions about how things work in CodeSandbox don't hesitate to ask me! I'll watch this thread to answer any questions.

<comment><USER10> CodeSandbox is awesome, but I've stopped using it because I am not a fan of what Prettier does to my code. Any way to completely disable it by default?

<comment><USER11> If you are signed in, click on your name, then Preferences. Under Editor, you can disable Prettify On Save.

</comment></comment></comment><comment><USER12> This is awesome! I do not see anyone mentioning another product in the same space: [https://repl.it/](https://repl.it/)

I'm not a user nor related in any way. I just think they have an interesting story!

<comment><USER13> Thanks for the mention -- we're big fans of Ives and co!

VS Code has really done an incredible job and we're all benefiting from their work. One thing that we've done recently is add Language Servers on our containers. So when you boot up a language on Repl.it, say python/java/c++, we'll start a language server and that gives you kick-ass code intelligence: autocomplete, click-to-symbol, and some refactoring features: [https://repl.it/blog/intel](https://repl.it/blog/intel)

</comment></comment><comment><USER14> Boy that landing page sure is a battery sucker. I left it open for a couple minutes and came back to my laptop whirring like crazy.

<comment><USER15> Yeah same. What's it doing?

</comment></comment><comment><USER16> Upon opening the page, my CPU temperature jumped 25 degrees. Also, I can't figure how anyone can type with an input delay of >150ms without quitting in frustration in less than 5 minutes.

</comment><comment><USER17> How does this stack up against StackBlitz [1]?

[1] [http://stackblitz.com/](http://stackblitz.com/)

<comment><USER18> It looks extremely similar, is StackBlitz perhaps copied?

<comment><USER9> Hello! Creator of CodeSandbox here!

I don't want to give a comparison of StackBlitz and CodeSandbox, because my view as one of the creators would be skewed. I want to note though that CodeSandbox existed before StackBlitz released, I published CodeSandbox in April ([1] [2]) and StackBlitz released in August [3].

[1] [https://hackernoon.com/codesandbox-an-online-react- editor-b8...](https://hackernoon.com/codesandbox-an-online-react- editor-b8945ce095d2)

[2] [https://news.ycombinator.com/item?id=14022860](https://news.ycombinator.com/item?id=14022860)

[3] [https://medium.com/@ericsimons/stackblitz-online-vs-code- ide...](https://medium.com/@ericsimons/stackblitz-online-vs-code-ide-for- angular-react-7d09348497f4)

<comment><USER19> StackBlitz creator here! We actually had been working on SB for over 6 months before codesandbox launched. Not sure why Ives omitted that detail considering he was in this previous thread: [https://news.ycombinator.com/item?id=14929228](https://news.ycombinator.com/item?id=14929228)

Great to see CSB making improvements!

</comment></comment></comment></comment><comment><USER20> Lots of online frontend REPLs, but this one is my new fave, and I've used it for a few code interviews as well as exploring new ideas quickly. As a React dev, it's very easy to drop in a new dependency and try it out, and now they have collaborative code editing as well. All for free, which is amazing. Also introduced me to prettier which is a fantastic, set-and-forget formatter. [1]

[1] [https://github.com/prettier/prettier](https://github.com/prettier/prettier)

</comment><comment><USER21> It is incredible. Thank you very much for it. I have only one problem: I do not understand the business model. How can you provide such a fantastic tool for free ?

</comment><comment><USER22> I absolutely <3 CodeSandbox. I've been using CodeSandbox for the past six months or so and it's been a game changer for two things: (1) onsite frontend interviews - no more waiting for npm installs or worrying about node compatibility and (2) quick create-react-app prototypes - and if I get far enough, I simply download the source and continue to work locally.

</comment><comment><USER23> Wow, it's amazing how fast it loaded a full featured editor, compared to something like Plunkr.

Send my compliments to the Chef!

</comment><comment><USER24> I've really enjoyed using Code Sandbox. I even embed it in the docs for my open source Vue JS component b/c it shows how to set up the component in a very real-world environment.

</comment><comment><USER25> Looks really good - only request I'd have is to allow for .pug in vanilla. Seems like they have support for it, but it isn't enabled in the vanilla box.

<comment><USER9> That's a really good point! I deployed a new update with .pug support in vanilla, here's a sandbox to play with it: [https://codesandbox.io/s/mjln1846k8](https://codesandbox.io/s/mjln1846k8).

</comment></comment><comment><USER26> Whoa cool. There's a couple of webdev languages I never heard before on it. This seems like a great site to play with it and learn.

</comment><comment><USER27> Definitely a useful tool. Easy on the eyes, thanks for sharing! It'll be nice to use this tool to learn some React :)

</comment><comment><USER28> This is one of the best online IDE to quickly set up a React App. Thanks for the awesome work Ives van Hoorne.

</comment><comment><USER29> The animation has race condition issues btw.

</comment><comment><USER30> "almost fully" open source....

</comment><comment><USER31> Looking forward to ReasonML support

</comment><comment><USER32> Super awesome!

</comment><comment><USER33> crashed FF 61

</comment><comment><USER34> Yet another variant of Visual Studio Code</comment>


Live Coding in Sporth: A Stack-Based Language for Audio Synthesis [pdf] - <AUTHOR> https://iclc.livecodenetwork.org/2017/cameraReady/sporth.pdf <comment><USER2> These days I've been working on a side project based on Sporth. I found the stack-based system is a really efficient way of representing audio graphs, and if you know a bit of DSP you can get the sound you want pretty quickly. I haven't even started using PolySporth, which seems like an important feature/complement to the language, but I'm still having lots of fun with plain Sporth. I wrote lots of Sporth scripts while learning the language, here's a couple:

Drone spirit - code (this one has comments): [https://gist.github.com/pac- dev/af6f7b7b1786bf102c88592183de...](https://gist.github.com/pac- dev/af6f7b7b1786bf102c88592183de0f59)

audio: [http://007ee821dfb24ea1133d-f5304285da51469c5fdbbb05c1bdfa60...](http://007ee821dfb24ea1133d-f5304285da51469c5fdbbb05c1bdfa60.r16.cf2.rackcdn.com/spirit.mp3)

Harmo - code: [https://gist.github.com/pac- dev/f4c4cfdb1fb03bf6ede81aac4087...](https://gist.github.com/pac- dev/f4c4cfdb1fb03bf6ede81aac40870586)

audio: [http://007ee821dfb24ea1133d-f5304285da51469c5fdbbb05c1bdfa60...](http://007ee821dfb24ea1133d-f5304285da51469c5fdbbb05c1bdfa60.r16.cf2.rackcdn.com/harmo.mp3)

Monk voice - code: [https://gist.github.com/pac- dev/76660a90406c4d8fe923fbb03094...](https://gist.github.com/pac- dev/76660a90406c4d8fe923fbb030944df6)

audio: [http://007ee821dfb24ea1133d-f5304285da51469c5fdbbb05c1bdfa60...](http://007ee821dfb24ea1133d-f5304285da51469c5fdbbb05c1bdfa60.r16.cf2.rackcdn.com/monk.mp3)

<comment><USER3> These are quite beautiful. If you are willing, I would to add these examples to the Sporth distribution.

To be honest, you're not missing too much with PolySporth. Actually, you're better off pretending it doesn't exist for now ;) It was an experiment that tried to add concepts like polyphony and note events in time. Despite the serious time investments I put into it, I have never seriously used it. Maybe someday I'll re-examine it and do something interesting with it.

Happy Sporthing,

-P

<comment><USER2> Thanks! That's interesting, I've been unsure about the importance of PolySporth. It seems important if you want to create generative compositions in the traditional sense, by which I mean focusing more on the sequence of notes rather than the timbre. But for me, I think I'll always return to manual sequencing if I want to get this kind of traditional result. Whenever notes are generated, I just want to manually re-arrange them. I guess that's one of the reasons I still haven't learned PolySporth.

But if I want to create a piece where timbre is central (or if I want to work on the timbral portion of a piece that has both), then programming is actually a super effective tool, and that's where Sporth nails it for creative exploration.

As for using my examples, yes, you can totally use and modify them with attibution (I should probably add a proper licence :)

</comment></comment></comment><comment><USER3> I am the developer of Sporth. It's nice to see this project listed here. Happy to answer any questions here or on GH.

\---

Here are some Sporth links, for those interested:

The main Sporth project page:

[http://paulbatchelor.github.io/proj/sporth](http://paulbatchelor.github.io/proj/sporth)

Sporthlings: a collection of Sporth compositional etudes:

[http://paulbatchelor.github.io/sporthlings/](http://paulbatchelor.github.io/sporthlings/)

Sporthlings audio as a youtube playlist:

[https://www.youtube.com/playlist?list=PLgEE92LPHEljTLN9gFZr2...](https://www.youtube.com/playlist?list=PLgEE92LPHEljTLN9gFZr21ETOBxQueoTQ)

The Sporth Cookbook: documentation on Sporth, as well as some analysis of Sporth patches:

[http://paulbatchelor.github.io/proj/cook/](http://paulbatchelor.github.io/proj/cook/)

<comment><USER4> Hi! I'm trying to install Spigot and it looks like the github for Runt no longer exists? Is it available elsewhere?

</comment></comment><comment><USER5> Saw Paul present this last year at the International Conference on Live Coding, really cool project.

He has some more excellent work here: [https://github.com/PaulBatchelor](https://github.com/PaulBatchelor)

A see also: [https://github.com/mollerse/ait- lang](https://github.com/mollerse/ait-lang)

</comment><comment><USER6> I love it, I used it in my project [https://bitbucket.org/jkru/synthesthesia/src](https://bitbucket.org/jkru/synthesthesia/src)

<comment><USER3> cool! any video demos of this in action?

</comment></comment><comment><USER7> Paul is a beast. His work is central to AudioKit [https://github.com/AudioKit/AudioKit](https://github.com/AudioKit/AudioKit)

</comment><comment><USER8> Here's another similar library for Clojure. [https://github.com/overtone/overtone](https://github.com/overtone/overtone)

Recommend this talk that made Music 'click' for me. Also fun if you are trying to read GEB and generate cannons. [https://www.youtube.com/watch?v=Mfsnlbd-4xQ](https://www.youtube.com/watch?v=Mfsnlbd-4xQ)

</comment><comment><USER9> Yay! Somebody else has discovered Forth's principles.

<comment><USER10> Where would one read about Forth's principles? Colour me intrigued.

<comment><USER11> I don't know the best resource, but Thinking in Forth should get you started.

[http://thinking-forth.sourceforge.net](http://thinking-forth.sourceforge.net)

<comment><USER12> Starting FORTH might be a better introduction. It's also from Leo Brodie.

[https://www.forth.com/starting-forth/](https://www.forth.com/starting-forth/)

</comment></comment></comment></comment><comment><USER13> Not entirely related to sporth, but i created a small dsl for live coding with ruby in the browser: [https://negasonic.herokuapp.com/](https://negasonic.herokuapp.com/)

</comment><comment><USER14> > There is no concept of a control rate signal, a traditional feature in other > computer-music languages like Csound, SuperCollider, MaxMSP, or PD.

Hm... what is a control rate signal in Pd?

<comment><USER3> In PD, the normal thin cables carry control-rate signals. The thicker cables are the audio-rate cables. Objects like "osc~" and "+~" produce audio-rate signals. Objects like "mtof" and "stripnote" produce control-rate signals.

<comment><USER15> I think the issue of control rate in PD is often confusing for folks, because there isn't any "control rate" that is fundamental to the language. There are audio rate signals that are processed every block, and there are messages that get handled ASAP when they are received, and are decoupled from the audio rate graph. These messages could be once an hour or once per millisecond. The control rate thing comes up because most PD objects (e.g. osc~) only update their parameters on block boundaries, which creates timing jitter (variable delay between when a message is received and when it takes effect). You could definitely have an audio-rate object that took into account the precise timing of the messages it received and scheduled the parameter changes a constant amount of time in the future, which eliminates jitter at the expense of a fixed latency. The vline~ object is useful for generalizing this approach to any object that can take audio-rate parameters, but there's no reason you couldn't make a vosc~ object that had the functionality built in.

This is different from supercollider (and I think sound), which have an explicit control rate.

<comment><USER14> > The control rate thing comes up because most PD objects (e.g. osc~) only > update their parameters on block boundaries, which creates timing jitter > (variable delay between when a message is received and when it takes > effect).

Just to reiterate so that people don't get confused:

If you give _signal_ input to "osc~"\-- let's say `[noise~]--[osc~]`, then "osc~" will update its frequency parameter _every sample_. If "osc~" didn't do that it would be a lot cheaper (because you'd only need to do one calculation and copy it 64 times at default blocksize), but you would of course immediately hear the loss in quality.

What you are describing is what happens when you send a message containing a _single floating point number payload_ to the input of "osc~." In that case Pd treats that number as if it were a vector of samples all with that same value. That's fast and cheap.

> there's no reason you couldn't make a vosc~ object that had the > functionality built in.

You can do that. But it's interesting to dissect it a bit:

* "vosc~" would only see a performance bump over `[vline~]--[osc~]` in cases where you _aren 't_ sending a signal to the input. (Because if you are sending input, the code that does precision timing of control messages is wasted cycles.) So you'd probably want to make the input a control input that can't take signals.

* With "vline~", users can control the ramp by putting more objects in between "vline~" and "osc~". But with "vosc~" they'd be stuck either with the default linear interpolation, or a selection of interpolation schemes that you code into the object. In other words, potential functionality moves from userspace to compiled classspace.

Edit: remove duplicated thingy

</comment></comment></comment></comment><comment><USER16> Is there any live coding video recording that demonstrates this? I am a noob to live coding performance and I am curious how this work in practice.

</comment><comment><USER17> Awesome! I just started getting into FM synthesis using the Korg Volca series, and this seems like a really neat compliment to that as a developer.</comment>


Ask HN: Which E-mail address do you use and when? - <AUTHOR>

As I've gotten older I've accumulated more e-mail addresses.
Then it comes time to sign up for a new service and I never really know which email address to use.
Like when do you use a personal email addy, when do you use a school one, a work one?
Do you have a "spam" address?  Do you ever use it? <comment><USER2> I try to have no more than four addresses going at a time:

1\. Work

2\. Friends, family, and signing up for free services that I want to identify myself with

3\. Commercial transactions (anybody who has my credit card)

4\. Anonymous address (which I use with websites that require signup but I feel have no business asking me). I personally use my real identity online for historical reasons, but if I didn't, I'd use this one.

[Edit: to answer your other question, they all get spam]

<comment><AUTHOR> Do you ever use your college one?

<comment><USER2> Well I don't have one (is this a US thing? you get email for life when you get to college?) but I wouldn't anyway - I don't self-identify with institutions as a rule.

Edit: Really I would recommend you get your own domain (not a joke one) and use an email address there which you can carry around forever. You can always forward to gmail or whatever if you don't want to deal with spam filtering etc.

</comment></comment></comment><comment><USER3> I just use one gmail account. Any other email account I just forward. Eventually everyone just emails to that one account since I always reply from it. It's not a problem at all.

With filters, using the +blah functionality (firstname.lastname@example.com for example), it works great! Never need anything else.</comment>


We still don't really know how bicycles work - <AUTHOR> http://www.newstatesman.com/2013/07/mysteries-bicycle <comment><USER3> The gyroscopic theory has been proven wrong, yet many people continue to believe it. But just because many people are wrong, does not mean that no one knows.

A bicycle in motion adjusts its center of gravity to remain upright. It's very similar to the inverted pendulum problem.

Look at a bicycle directly from behind with the wheels exactly lined up. Now imagine that you could frictionlessly slide the two tire patches left and right. The similarities to the inverted pendulum become more clear.

Of course, it is more complicated than the classic inverted pendulum. Instead of one point of contact under the mass, there are two. And the two points of contact (i.e. the wheels) have their own complex dynamics.

Having a rake angle on the front wheel makes a bicycle self correcting (if the c.g. is on the right side of where the wheels contact the ground, then a right turn is induced in the front wheel by the rank angle)

There are two major forces that must be in balance to turn a bicycle - <USER2> side force from being off center with respect to c.g., and the centripital force in the turn.

Ever watch a cyclist train on rollers? That's much closer to an inverted pendulum. And since there is no forward momentum, there is no centripital force, which makes it more difficult to remain upright on rollers than on pavement.

<comment><USER4> > Having a rake angle on the front wheel makes a bicycle self correcting (if > the c.g. is on the right side of where the wheels contact the ground, then a > right turn is induced in the front wheel by the rank angle)

No. If you actually read the paper linked (and the Supplementary Online Materials, which contains a lot of the actual information), it is shown that rake angle is not necessary for the bike to be self correcting. You can build a bike with a negative or zero rake angle that is still self-stable (at least, according to the bicycle dynamics modelling software they were using, JBike6; they didn't actually build this particular bike, but did build one that had small negative trail and no gyroscopic effects that was still stable).

As they demonstrate in the paper, none of rake angle, trail, or gyroscopic forces are either necessary or sufficient for self-stability. All of them can influence stability, so saying the gyroscopic theory has been proven wrong is not entirely right either; it is a part of the dynamics that adds stability, it is simply not necessary or sufficient on its own. In fact, the paper shows that on the "benchmark bicycle", removing the gyroscopic force makes it unstable, so on that particular design, the gyroscopic force is necessary for its stability (thus explaining why it was believed for so long that gyroscopic force is what provided stability).

What we know is that gyroscopic forces, trail, rake angle, and distribution of the center of mass of the fork and body of the bicycle all influence stability (in particular, the center of mass of the body of the bike being substantially higher than that of the fork); none of them alone are sufficient to provide stability, and likewise none of them alone are necessary as we can build bikes without them that are still self-stable.

<comment><USER5>
      > > Having a rake angle on the front wheel makes a bicycle self correcting ..
      > No. If you actually read the paper linked ...

Please don't start replies with a "no", especially when you don't disagree! You reply that it "is not necessary" which does not negate your interlocutor's point!

(probably going to regret going meta, but the initial 'no' in forums and irc really bothers me)

</comment></comment></comment><comment><USER6> Well, we know enough to know how to increase stability - primarily by increasing trail and rake. Decreasing rake angle is the primary way of making a motorcycle turn faster, with the known risk that it makes it more likely to head shake or even tank-slap.

It's fairly clear that common two-wheelers are stabilized by the rake and trail inducing a counter-steering effect when pushed horizontally - try to shove over a bicycle and the front of the front wheel will turn in the direction of the push because the point of contact of the tyre with the ground is behind its axis of rotation (the amount of which is the trail). And if the bicycle is moving forwards, this turn of the wheel will cause a torquing effect to roll the bike in the opposite direction of the shove. So long as the correction is somewhat less than the overall shove, the system should be self- damping.

But if the dynamics were fully understood, we'd be less likely to get motorcycles with issues like the well-known Pan Weave[1] and other high speed stability issues. At the limit, things like aerodynamics, chassis rigidity etc. start coming into the equation.

[1] [http://en.wikipedia.org/wiki/Honda_ST1300#Pan_weave](http://en.wikipedia.org/wiki/Honda_ST1300#Pan_weave)

<comment><USER7> Thank you. We do know how they work, and that it's nothing to do with gyroscopes and everything to do with (what parent said, but simplifying a bit) front fork geometry.

Pretty much anyone can see this for themselves. Walk a bike with your hand holding the back of the seat, not the handlebars. Steer the front wheel by leaning the bike. Lean father to correct faster. If it's a cheap bike, let go and watch this happen on its own till it wobbles too far to counteract.

This is one of those idiotic tropes like bumblebees not being able to fly.

<comment><USER4> If you read the actual paper referenced, we know some of how it works, but not all.

Two of the proposed theories (that it has to do with gyroscopic effects, and that it has to do with trail), have been disproven by creating a self-stable bike with no gyroscopic effects and (slightly) negative trail. The paper introduces one additional factor, the difference in center of mass between the steering assembly and the rigid body of the bike; the steering assembly having a lower center of mass causes it to fall faster, providing the necessary corrective steering to achieve self-stability.

So, there are several factors we know about, which can increase stability. We know how to locally optimize stability for certain designs. But we don't yet have a full set of necessary and sufficient conditions for a bike to be self- stable. We haven't even proven, analytically, the intuitive notion that a bicycle must lean toward a fall, though given our intuition it is believed to be true.

Here are the two necessary conditions that the paper provides:

> To hold a self-stable bicycle in a right steady turn requires a left torque > on the handlebars. Equivalently, if the hands are suddenly released from > holding a self-stable bicycle in a steady turn to the right, the immediate > first motion of the handlebars will be a turn further to the right. This is > a rigorous version of the more general, as-yet-unproved claim that a stable > bicycle must turn toward a fall.

> Another simple necessary condition for self-stability is that at least one > factor coupling lean to steer must be present [at least one of Mδϕ, Cδϕ, or > Kδϕ must be nonzero (SOM text S3)]. These coupling terms arise from > combinations of trail, spin momentum, steer axis tilt, and center of mass > locations and products of inertia of the front and rear assemblies.

That's what is meant when people say "we don't know how bicycles work." We do know some of how they work; we know that the designs that we create steer into a fall, and do so in such a way that damps the wobbles and eventually goes straight again. And we do know some necessary conditions for a self-stable bicycle, like a requirement that something that couples lean and steering must be present; but we don't know if the steering into the fall is absolutely necessary, or if you could build a bike that managed to achieve self-stability without it.

So, I would say that a more accurate summary is "we know how current bicycle designs work, but we don't know exactly what aspects of them are necessary, or how to completely characterize the sets of designs that work or don't work." But that's a bit more of a mouthful than "we don't know how bicycles work", so that's what gets repeated.

<comment><USER8> So we do know how the bikes that actually are 'bikes' work at least to a very large degree (engineering vs math), but we don't know all the possible physics which can enable an arbitrary two wheeled construct to be selfstablize when perturbed while in forward motion.

I completely understand the point your making. However, at when making a technical argument and then generalizing the end results, we can end up in a situation where the truth of the technical argument no longer strictly implies the truth of the generalized/summarized result. I feel the statement 'we do not know how bikes work' has crossed that line.

<comment><USER4> I suppose it depends on how you look at it, or perhaps on whether you're interested in _how_ a bike works versus _why_ a bike works. How is relatively easily answered; as the bike tilts it steers into the tilt, moving its base back under its center of gravity, in a way which damps itself thus getting back to upright without oscillating repeatedly or falling over.

Why it works is the open question. We know that it's some combination of gyroscopic effects, rake, trail, and the different centers of gravity of the frame and fork, but we don't know the precise relationship between them that allows it to work.

</comment></comment></comment></comment></comment><comment><USER9> We do know, here is the paper that the journalist refers to:

[http://www.sciencemag.org/content/332/6027/339](http://www.sciencemag.org/content/332/6027/339)

And here is a great video by the author:

[http://www.youtube.com/watch?v=YdtE3aIUhbU](http://www.youtube.com/watch?v=YdtE3aIUhbU)

Short answer: "a bicycle should turn into a fall."

</comment><comment><USER10> Urban legend. Bicycle physics is well-understood. My old job, we even made a fuzzy logic model of motorcycles/riders for Harley Davidson. No mystery here, move on.

<comment><USER11> Isn't it amazing how confident people are that their own ignorance is everyone's ignorance?

It's so much worse when the ignorance belongs to a "journalist" who really just needed to do a little research before promoting such a poor theme.

Yes, we know how bicycles works. No, it wouldn't be that big of a deal if nobody was working on solving the mysteries of the bicycle in favor of really hard problems like "dark matter".

</comment></comment><comment><USER12> I highly recommend the following TED talk on bike physics by Arend Schwab from Delft University of Technology:

[http://www.youtube.com/watch?v=2Y4mbT3ozcA](http://www.youtube.com/watch?v=2Y4mbT3ozcA)

It focuses on the question why bikes do not fall, even without a rider on them (spoiler: coriolis is insignificant).

</comment><comment><USER13> [http://ruina.tam.cornell.edu/research/topics/bicycle_mechani...](http://ruina.tam.cornell.edu/research/topics/bicycle_mechanics/stablebicycle/index.htm)

<comment><USER14> Andy Ruina is a great guy to listen to about stuff like this. There's an annual conference for scientists in all fields (robotics, biology, cognitive science, etc.) that study walking locomotion called Dynamic Walking; our lab hosted it in Pensacola last summer and Andy gave a "Greybeard" talk about the mechanics of sailboats and sailing down wind faster than the wind that was really entertaining.

I'm not sure where his fascination with esoteric mechanics comes from, but he has a pretty clever and engaging manner of discussing the stuff.

Edit: Didn't realize that Ruina was a co-author on the paper referenced in the article. Even better. It all goes full-circle.

</comment></comment><comment><USER15> If Feynman were still around, he'd set things straight. I don't think a bicycle staying upright is much different from a train keeping course [1], but I can't describe why. Instead of the rail veering off and the wheel adapting, it's like the bike does what it wants and the ground shifts beneath it.

If you've read about Einstein's pail-of-milk-on-a-lazy-susan, it's a similarly unintuitive frame of reference. Also, if the experts haven't figured it out: I don't know what I'm talking about.

I find it fascinating that we as a species can observe, define, and exploit Maxwell's law, neutrino physics, etc, but we can't clearly explain bicycles. Or why wings provide lift.

EDIT: forgot the Feynman video

[1] [http://www.youtube.com/watch?v=y7h4OtFDnYE](http://www.youtube.com/watch?v=y7h4OtFDnYE)

</comment><comment><USER16> How does he not even have a picture of the "Anaconda"? OK, here's a paper about it:

[http://bicycle.tudelft.nl/bmd2010/CDProceedingsBMD2010/paper...](http://bicycle.tudelft.nl/bmd2010/CDProceedingsBMD2010/papers/kabeya2010simulation.pdf)

</comment><comment><USER17> Facepalm.

I look forward to New Statesman's thrilling coverage of how bumblebees can't actually fly, and nobody knows why duck quacks don't echo.

</comment><comment><USER18> I had an idea to build a tall bike which contained a large and heavy wheel in the center of the frame, above the 2 wheels but below the rider. This wheel would be made to spin somehow and act as a gyroscope to help the bike stay upright when stopped.

This seems to suggest that my plan would never work. If gyroscopes don't stabilize, then why are they used on monorail trains etc?

<comment><USER19> > If gyroscopes don't stabilize, then why are they used on monorail trains > etc?

They do, it's just the bicycle's wheels aren't heavy enough to provide enough force to really make that much of a difference.

</comment></comment><comment><USER20> ...and, like a horse, I still can't get on these newfangled things from the starboard side.

</comment><comment><USER21> isn't it because the front wheel change the contact point with the ground when you turn ?

when you both turn and inclinate the bike, the contact point is more on the side which you turn, balancing the bike.

</comment><comment><USER22> "Check mate, scientists" :))

</comment><comment><USER23> magnets

</comment><comment><USER24> Nor do we know how airplanes work. Or whips.

<comment><USER25> What parts we don't know about these?

<comment><USER26> I don't know about "don't understand" but did you know that there is a lot more to why a wing creates lift than the "pressure differential" explanation commonly put forward: [http://en.wikipedia.org/wiki/Lift_(force)](http://en.wikipedia.org/wiki/Lift_\(force\)). In particular, the typical assertion that the air at the top has to speed up so it arrives at the trailing edge at the same time as the air from the bottom is false.

<comment><USER25> I see...

The speed explanation is not incorrect, except the REASON for it is.

I learned on school that the air on top of the wing move faster to catch up with the one in the bottom (this never made sense to me...), the air on top indeed move faster, we only don't know why.

Damnit, I should be a physicist, not a programmer :P

<comment><USER27> If you were a physicist, you'd likely also have to be a programmer – the inverse, unfortunately, does not hold.

<comment><USER28> Public service announcement for physicists fancying themselves as programmers: Learn the following topics before going any futher:

      * BLAS (please)
      * LAPACK
      * memset
      * memcpy
      * 'Segmentation Fault' is not a synonym for 'exited successfully'.

Those who maintain your code will thank you for it. Sometimes it might get you chocolates.

<comment><USER29> _' Segmentation Fault' is not a synonym for 'exited successfully'._

Next, you'll tell me that 'Thank you for playing Wing Commander' is not a synonym for 'EMM386 exception 006A at 00B8:3128'.</comment></comment></comment></comment></comment></comment></comment>


The Internet for Monkeys: why Social Networking Works - <AUTHOR>

Which one of these email addresses is malformed?
firstname.lastname@example.com
email@example.com
fred@emu..edu
Which one likely contains a mistake?
Odds are, if you're a programmer, or you've been on the internet for a decent period of time, you have some ability to parse and analyze email-address-like strings. You understand the first part is a user, like a unix shell account name. You understand the @ divides the user from the domain. The domain itself you know contains a variety of hierarchical fields separated by dots, and you know about things like country codes.
This is what email addresses look like to normal people:
234#%##%@#%#oooO.234
OO(#NN#}}{##>>)
##$@#Q$L()))N#@@@
Now, which one of those is well-formed? Which two are equivalent and are likely delivered to the same address?
Instead, you go to your Monkey-Compatible Communications Portal. You click on the face of the person you want to tell. You type. It gets sent.
Social Networking Software is anchored by it's ability to put a human face on communication.
Who's working on a face-based email client?
There are other implications. The "monkeysphere" of 150 people who's lives we can keep track of roughly corresponds to the typical "friends" list. You think about somebody you want to contact who isn't on your list, then you think about who they know that you know, and you "pass through" that person, clicking on the mutual friend to get to the person you want to talk to.
It's pretty simple, really. It's about humanizing communication. <comment><USER2> LOL. why not selecting contacts from a list of names? they are easier to recognize and lookup :)</comment>


Hacker News App Comparison for Android - <AUTHOR> http://thomas.do/post/35489071482/hacker-news-android-apps <comment><USER2> I actually prefer <http://cheeaun.github.com/hnmobile/> over any native app on my Android. It's fast, pretty and hasn't let me down yet.

<comment><USER3> Warning, above link breaks the back button to an infinite redirection loop. Longclick it to skip more than one page backwards (at least in Opera).

<comment><USER4> You mean it happens on Opera desktop browser or on Android? And which version?

<comment><USER3> Nope, the normal desktop one. 12.10 Build 1652 on Linux.

</comment></comment></comment></comment><comment><USER5> You might want to do test this again on a tablet. I only found one or two apps that used dual panes - IMHO a key feature for reading on a tablet.

<comment><AUTHOR> Good idea. Which ones looked good on tablets? I don't have an Android tablet at the moment :(

<comment><USER6> I have a Prime, and I remember going through all the available apps ~6 months ago and uninstalling them all.

They were either bad apps in general or were potentially nice phone-sized apps with no optimisation done for tablets. When I say optimisation I'm referring to both the UI layout and the general rendering performance. For some reason (I'm not an android dev) certain apps have performance issues that scale with your pixel count (I guess they are hand-rendering things themselves and simply Doing It Wrong) and make them unusable.

I can't remember which though, so I'll install your top two when I get home (~8-10hrs) and report back.

<comment><AUTHOR> Thanks! Looking forward to hear your results. If any of them works well on your Prime, could you email me some screenshots? thomas at kjemperud dot net

<comment><USER6> Gah! So, I tried your top three and im sorry to report it's a trifecta of failure: Hacker News Beta renders really s owly, Hacker News Android performs well but doesn't support landscape (it stays in profile) and Hacker News Droid performs Ok, rotates in landscape but without a useful or optimised layout, and as you state doesn't let you log in.

<comment><AUTHOR> Okay, thanks for the update! I'll see if I can get my hands on an Android tablet and make a follow-up test :)

</comment></comment></comment></comment></comment></comment><comment><USER7> It's not a native app, but I've enjoyed <http://ihackernews.com> for some time now.

<comment><USER8> I tried three native apps and had problems with all of them. I recently switched to ihackernews, and everything's been great. The hidden killer feature is that you can use browser-provided tabs.

<comment><USER9> Also, iHackerNews has links to 'viewtext' on the article, which works on about 75% of articles that I've tried, and saves a lot of badnwidth/cpu/ram.

The viewtext service is also incredibly awesome for printing out articles on paper -- I've found it to be much better than even the custom "print" versions of many articles, and certainly better than readability, etc.

</comment></comment></comment><comment><USER10> Thanks for sharing this list. HN is one if the few things I semi regularly read and I'm ecstatic so far that I can use my note to participate on hn and continue to keep my laptop as a workspace first.

</comment><comment><USER11> I tested them all, there is always something that make it a worst experience than using a browser, for exemple when it lost the position in the comment thread. So now I rely exclusively to Chrome.

</comment><comment><USER12> Could someone point me to a similar Win 8 comparison?

</comment><comment><USER13> Mobile version this web page would be better IMHO.

<comment><USER14> Agree. I've found the web view in Pocket (and probably other apps with built- in web views) to do a better job of displaying HN comment pages than any of the browsers I tried, though. Simply because it wraps the comments at a comfortable line length.

</comment></comment><comment><USER15> Weird, I just completed a very similar review, but focused on tablet (Nexus 7) support. We came to very similar conclusions: [http://www.iqdupont.com/blog/2012/11/10/finding-a-good- hacke...](http://www.iqdupont.com/blog/2012/11/10/finding-a-good-hacker-news- android-app.html)

</comment><comment><USER16> Hacker News Full by Chad Etzel only stopped working in the last day or two (probably something with the API it uses), but is my favorite app. Hopefully it gets an update or otherwise starts working again.

</comment><comment><AUTHOR> If you know any other apps worth including, please let me know :)

<comment><USER17> HNdroid Hacker News Client

Read and comment to stories posted on news.ycombinator.com

[http://f-droid.org/repository/browse/?fdfilter=hacker%20news...](http://f-droid.org/repository/browse/?fdfilter=hacker%20news&fdid=com.gluegadget.hndroid)

</comment></comment><comment><USER18> HackerNewsBot is my favorite

</comment><comment><USER19> This review doesn't reflect (my) daily usage. Hacker News Beta is gorgeous but it's a usability nightmare and none of the post functionality works. Either the UX is broken for it and/or it force closes on a brand new (rom on my) Galaxy Nexus. You lose scroll position going between Activities, you can only view one page, etc.

<comment><AUTHOR> It's true that I haven't used all of the apps for a long period of time. Hacker News Droid is the one I've been using the most, but sadly it hasn't stayed up to date compared with some of the competition. By the way, I just added Hacker News Android to the comparison. It is really beautiful and functional, and seems like a great choice if you're running ICS or above. It might also be slightly unstable though, and I had to log in before it would load the front page. Still, it's worth a look :)</comment></comment>