If your cipher were secure, this image wouldn't have repeating patterns (2015) - <AUTHOR> https://mailarchive.ietf.org/arch/msg/cfrg/e-jEGddvSbManBMppC8XAc5i8GY/ <comment><USER2> Thanks for that rabbit hole!

See also: [https://github.com/mmcc1/crystalline](https://github.com/mmcc1/crystalline) [http://maldr0id.blogspot.com/2015/05/crystalline-cipher- and-...](http://maldr0id.blogspot.com/2015/05/crystalline-cipher-and- cryptography.html)

The authors inability to take any criticism is stunning, sometimes I wonder if a fragile ego isn't one of the greatest barriers to cyber security..

<comment><USER3> The author reminds of some religious people I've had debates with in the past. They would make some fundamentally flawed argument, get shot down, and so they would move on to other arguments, which is not great but valid. But then, later, I'd see them making the _exact same argument_ to someone else.

To people like this, arguing is like punching. If you punch someone and they get up, they're a "tough opponent". That doesn't mean that punching is ineffective on other people. They just _don 't understand_ at their core that once an argument is shown to be false, it can _never_ be reused. Their mind just doesn't work this way. They think "Well, left-hook didn't work on _this_ guy, but maybe it'll work in _that_ guy" or "This guy didn't fall for this argument, but maybe that guy will."

It's deeply dishonest, but I'm not convinced they're even aware of this.

So, just from a cursory look at his code, the glaring problems I see are:

1) It'll crash if you feed it more than 256MB because of the way the C# BitArray class works. He's also using 32-bit ints in several places that have similar issues. These are implementation details, but it just goes to show how thoughtless the "reference implementation" is.

2) Similarly, the reference implementation copies the entire data into the BitArrary (and then back into a byte array) for each "round". This is _spectacularly_ inefficient. He never mentions throughput in terms of MB/s/GHz or any such thing. I wonder why...

3) It's not a stream cipher. You need to encrypt the entire file. Again, he could come up with some sort of streaming version by feeding in the last few KB of the previous encrypted chunk into the next chunk, but he hasn't. As the long history of various streaming ciphers have shown, this is actually a hard problem to solve efficiently _and_ securely. This is why AES-GCM is the hot new thing: it's both.

4) If _either_ the key or salt values are all 0s then the encryption does _nothing_. AES for comparison will still encrypt your data with _some_ level of security even if the IV initialisation is not perfectly random or skipped.

5) He's calculating the offsets as an "int" from a byte multiplied by a byte. Hence the maximum shift is 65536 positions. This is just big enough to exceed L1 data cache on most platforms, but have a high hit ratio. Whether you hit the L1 cache or not depends on the Key & IV values, so this is a recipe for timing-based side-channel attacks. Constant-time cyphers are basically mandatory these days...

6) Related to the above: The bit shifts are only in an 8KB window, but the byte shifts are in an 64KB window. I wonder if there's some interaction here where this might make some keys insecure.

7) Despite this windowing, the default "protocol" wraps around the end of the file to the beginning using a modulo the data.Length, so it can't be used as a streaming cipher. To do so, he'd have to introduce a breaking change.

8) The encryption is defined in terms of bit-by-bit and byte-by-byte _long- range_ operations, so there's basically no hope of ever making this efficient. E.g.: with SIMD or similar many-bytes-at-a-time instruction sets. The "state" that would have to be kept in CPU registers is over 64KB, so this is just never, ever, _EVER_ going to compete with something like AES-NI.

I could go on, but I'm wasting my time. This is wasting _everyone 's_ time.

The author clearly has no interest in producing something that is secure and usable. He's just enjoying the arguments. He's even posted some of the feedback on his GitHub, _proudly showing off_ the debates he's felt he's won.

Don't feed this troll.

<comment><USER4> > It's deeply dishonest, but I'm not convinced they're even aware of this.

I suspect you might be confusing a mistake for a conflict, as described here: [https://slatestarcodex.com/2018/01/24/conflict-vs- mistake/](https://slatestarcodex.com/2018/01/24/conflict-vs-mistake/)

You quite naturally see a discussion of a cipher as an attempt to find the truth, and it barely registers for you that it might not be. They probably see a discussion of _their_ cipher as an attempt to persuade, so they use the most effective argument they can think of at a given time, and it barely registers for them that the discussion could be an unbiased attempt to find the truth.

<comment><USER3> That's an interesting article, but I think it's oversimplifying things, which I suppose makes me a Mistake Theorist. 8)

I prefer to think of people's traits not in simple binary terms, but more in terms of high-dimensional attributes. Think: word2vec.

In practice, I find that people are messy. They have their own interests, and hence there's conflict, but they're also lazy, hence the mistakes. There's plenty of room for several kinds of suboptimal behaviour in their squishy meat brains.

Sometimes I feel like I'm The Man From Earth, watching this craziness unfold from the outside.

PS: Watch it, it's a good movie.

</comment></comment></comment></comment><comment><USER5> Earlier today I was watching a YouTube video somebody referenced in my social media feed about Fake Martial Arts.

Mostly these aren't just heavily stylised exercises that have limited practical value as fighting styles, they're woo like energy blasts or psychic power that can't work at all. Practitioners wave their hands or say magic words and seemingly defeat groups of skilled foes. Except it's bullshit.

The video includes some unpleasant though relatively brief excerpts showing what happens when a practitioner of such a fake won't back down and fights someone who knows what they're doing. They generally seem initially very confident and then within seconds they're on the ground just trying to keep from getting further hurt. That they'd show up and fight rather than make thin excuses and vanish suggests these people are delusional rather than (or as well as) crooks.

Fighting and cryptography are both disciplines where it isn't just a matter of opinion whether you're right.

<comment><USER6> [https://www.youtube.com/watch?v=gjbSCEhmjJA](https://www.youtube.com/watch?v=gjbSCEhmjJA)

</comment></comment><comment><USER7> Dyed-in-the-wool kook/crank.

[http://web.mst.edu/%7Elmhall/WhatToDoWhenTrisectorComes.pdf](http://web.mst.edu/%7Elmhall/WhatToDoWhenTrisectorComes.pdf)

<comment><USER8> Someone points this out in the email chain, as well, linking to Schneier's famous list of 9 warning signs: [https://www.schneier.com/crypto- gram/archives/1999/0215.html...](https://www.schneier.com/crypto- gram/archives/1999/0215.html#snakeoil)

I'd add the following three generic warning signs of crackpots, all of which are on display here.

1\. Person doesn't know mailing list etiquette, for example top-posting and failing to send hard-wrapped plain text messages. Also not understanding the _purpose_ of a mailing list intended for something else.

2\. Person claims that others are rejecting basic principles of open- mindedness and making trivial errors in reasoning, or that they don't understand foundational elements of their field. Accusations of rudeness and threats to professional reputation.

3\. Person uses just enough technical jargon to give the impression that they have some fluency in the relevant field. When corrected, they often seem to just barely misunderstand the correction, in order to give correspondents the false hope that they are open to being shown their errors.

Thanks for the Trisector link, it's been a couple years since I've read that one.

</comment></comment><comment><USER9> Reading this reminds me of situations for Anti-vax, religion vs science, red vs blue, flat earthers vs.... the rest of us?

Whatever their "idea" is, is infallible. Minds cannot be changed with logic or debate when clearly wrong/false.

A belief is unbreakable if the person holding it wishes it to be so. Discussing such topics over the internet will never lead to yielding any ground.

Perhaps at the core of it is the fear of being rejected or wrong. Or that their world as they know it is crumbling and keeping it together is of the highest requirement + cost.

I keep hope for these discussions in that people can change. As cheesy as it is to say, I've only seen people really change when it's with love. That we reach out the other side and simply love the person first. Daryl Davis is my hero on this[0].

Unrealistic in a forum about cryptographic schemes, but it hurts for me to read the circles the author plays himself into.

[0] [https://en.wikipedia.org/wiki/Daryl_Davis](https://en.wikipedia.org/wiki/Daryl_Davis)

<comment><USER10> Somewhat related rant:

Has anybody ever _really_ debated a "flat earther" let alone found one? As-in found somebody who actually believed it and wasn't just screwing with you to get a reaction?

I keep hearing about these people who believe the earth is flat but I've yet to ever come across anybody who actually believes that.

<comment><USER11> I'm pretty sure I'm related to an honest-to-goodness flat earther. The first time he brought it up I countered by professing a belief in Last- Thursdayism[0] as a sort of absurdist ploy to get him arguing for the more rational position. I think I converted him to Last-Thursdayism instead.

[0] [https://rationalwiki.org/wiki/Last_Thursdayism](https://rationalwiki.org/wiki/Last_Thursdayism)

<comment><USER12> So you argued for a position you didn't actually believe just to see how he would counter? I suspect this is what most "flat-earthers" do. I know multiple people who independently joined a "flat earth" Facebook group for entertainment purposes. It is just trolls trolling trolls.

</comment></comment></comment></comment><comment><USER13> The Register have an article about this guy from 12 years before this where he apparently besieged a mailing list with his plans for a revolutionary anti- spam system: [https://www.theregister.co.uk/2003/07/11/weve_found_the_perf...](https://www.theregister.co.uk/2003/07/11/weve_found_the_perfect_solution/)

<comment><USER14> Holy crap what a rabbit hole indeed!

"Thirdly, we deliberately introduced confusion over the systems architecture. This was not to protect any secrets we had, it was just another tactic in the controversial marketing tactic."

So it's not that he can't explain how it works, he deliberately introduced errors in the explanation, which allows him to conveniently claim that people poking holes in his crap don't actually understand the system, because he hasn't accurately described the system! Haha! Gotcha! Therefore the system is perfect!

"I had done it, I was the first in the world to prove, beyond any doubt, that the pyramids of the Giza Necropolis were, in fact, a scale representation of the three inner planets."

Wow. Just wow. That took a turn.

Extensive pattern matching is a marker for mental illness, and is no joke. That explains so much about the author.

</comment></comment><comment><USER15> I wish HN was almost entirely nerdy out of the way awesome found things like this.

[https://mailarchive.ietf.org/arch/msg/cfrg/cdeJ91NBT_- yU24Q3...](https://mailarchive.ietf.org/arch/msg/cfrg/cdeJ91NBT_- yU24Q3CnZe5N-SVA/)

That part is one of the best dressing downs I've ever read on the internet.

<comment><USER16> That kind of public dressing-down makes me feel uncomfortable. If I take pleasure in reading such a thing, I feel ugly afterward.

<comment><USER17> It's not the first response he received. At the beginning they treated him respectfully, but the man was obnoxious to the extreme. I had great fun reading this.

</comment></comment></comment><comment><USER18> Between the github account and theregister article posted in the comments here it is clear that the person in question is psychologically unwell regardless of whether he believes his own assertions or acts them out in some performative capacity. Using it to draw morals about thickness or inability to address criticism is not very helpful here.

</comment><comment><USER19> If anyone wants another rabbit hole, reading through the Open Street Map Foundation resolution for the indefinite ban of user sorein is a good evening read:

[https://www.openstreetmap.org/user_blocks/493](https://www.openstreetmap.org/user_blocks/493)

<comment><USER20> Wow, I imagine it takes a lot of work for your ban to get a 49-page PDF report written about it:

 _> In response, Harry Wood of the Communications Working Group tries to reason with Mr. Acela (Appendix A.3), and Sorin continues his rude replies, claiming that the redaction process was_ STUPID _and that the community members [...] are_ terrorists _(Appendix A.4)._

 _> [...]_

 _> It never came to a Skype session because mediation requires a certain base level of respect and understanding between the parties._

</comment></comment><comment><USER21> It's a funny coincidence that I was just reading this book ([https://toc.cryptobook.us/](https://toc.cryptobook.us/)), Figure 4.5 on book page 102, that talks about this exact issue.

I doubt the author realises that the system must be resistant against a class of attacks (in this case, I believe a chosen plaintext attack). From reading the thread, and comparing it to the example in the book, it seems like the non-uniform patterns in the output highlight a possibility of a CPA.

And of course, the author wants a fully implemented + concrete attack instead of pointing to what's an obvious flaw to the crypto community.

<comment><USER2> At some point in the thread the author complains that it isn't fair to point out the repetitive patterns "because the clear-text is all zeroes and this would be masked by actual data"

<comment><USER22> So the author tried to encrypt the null byte, repeated thousands of times? That seems like the most pointless test I could dream up for any processing algorithm.

Computes all the primes less than 0? Already.

Achieve compression approaching 100% on a string of zeroes? Easy.

Losslessly compress an image with all pixels having opacity of 0? Easy

<comment><USER14> If an all-null message results in a simple/repeating ciphertext, it means that there exists at least one message whose ciphertext leaks information, and that in turns means that there are probably more messages like it, and it's also probable that all messages leak info in varying degrees.

</comment></comment></comment></comment><comment><USER23> "I'm somewhat disappointed in your reply, as I presumed that someone with a stated interest in ciphers would be eager to investigate anything new to pop up that didn't have obvious holes in it."

This is totally, utterly and critically wrong. Ciphers with "no obvious holes" are dime a dozen. Nobody is interested in looking at your cipher unless you both have strong evidence that it's beats the existing ones in at least one area and that you did your homework to check for known weaknesses.

</comment><comment><USER24> This might actually be good to included as required reading in first year computer science courses. It's an excellent example of "how not to conduct yourself".

<comment><USER25> Actually in any science. He was surrounded by knowledgeable people pointing the flaws in his work and he didn't learn anything from it. Maybe it's one form of lunacy.

</comment></comment><comment> jagged-chisel I remember similar stuff from the data compression usenet groups years ago. So if anyone is interested, I have software that'll compress megabytes, gigabytes, terabytes of data down to a kilobyte! And it can encrypt your data so that not even state actors can recover!

Sure, _you_ can't recover the data, but it's compressed and encrypted so that your adversaries also can't.

<comment><USER26> This sounds like my super fast nosql data store, /dev/null

<comment><USER27> It's webscale, too.

<comment><USER26> Only if you shard it.

<comment><USER27> That sounds like an excellent PR to submit to the Linux kernel team on April 1.

Round robin load balancing or fewest connections? Maybe a flag for both.

</comment></comment></comment></comment></comment><comment><USER26> It gets so frustrating when people with obviously crazy ideas get upset if you don't engage with them and tell them why they are wrong. Some ideas are just so crazy they aren't worth wasting time engaging on them.

</comment><comment><USER28> I've read through some of the mails and the description of the algorithm on Github.

This gives me some serious Kryptochef vibes.

If you haven't come across that name before: way back when, some guy was trying to sell his "Vollbitverschlüsselung" (Full-bit-encryption) software which he touted as the most secure in the world with an utterly bizarre explanation on how it was supposed to work. I'm not absolutely sure to this day if it was an elaborate hoax or whether he was actually serious.

The Kryptochef Website (German):

[https://web.archive.org/web/20111011174408/http://kryptochef...](https://web.archive.org/web/20111011174408/http://kryptochef.net/)

English translation with broken page layout:

[https://web.archive.org/web/20111024003746/http://kryptochef...](https://web.archive.org/web/20111024003746/http://kryptochef.net/indexh2e.htm)

</comment><comment><USER29> It seems inevitable that every so often some person shows up with zero math/crypto credentials who claims they've invented a new miracle cryptosystem. It's always eviscerated by the professionals.

<comment><USER30> The problem isn't necessarily having no math/crypto credential, but falsely believe one has unique insights, while refusing to learn even the basis of a subject. It's more of an issue in psychology, than an issue of knowledge.

</comment></comment><comment><USER31> To be fair you can use AES to produce repeating patterns as well. Just look up Tux encrypted with any modern block cipher using ECB: [https://blog.filippo.io/the-ecb-penguin/](https://blog.filippo.io/the-ecb- penguin/)

<comment><USER32> how do you avoid that?

<comment><USER31> Look up "cryptographic right answers" and dig up the threads from HN on it. Basically, don't do the crypto yourself (even using with algorithms/constructs)

</comment></comment></comment><comment><USER33> [http://web.archive.org/web/20060429213545/http://www.gieis.u...](http://web.archive.org/web/20060429213545/http://www.gieis.uni.cc/)

And then just fast forward a bit in time.

</comment><comment><USER34> Is there a term for someone like this? It's like a reverse imposter syndrome. Really sad.

<comment><USER35> I believe "crank" suffices, or possibly "poseur".

<comment><USER36> I think "poseur" is less-suitable, since it implies the person is motivated by the glamour of the role. Not many people--crank or otherwise--go into cryptography for the fame.

</comment></comment></comment><comment><USER37> Interestingly these same sorts of visual patterns can be found when generating samples using poor pseudo random numbers like C rand() function. When using C++ mersenne twister algorithm the obvious coherency patterns go away.

<comment><USER38> That's what the pattern reminded me of too.

More information: [https://en.wikipedia.org/wiki/Spectral_test](https://en.wikipedia.org/wiki/Spectral_test)

</comment></comment><comment><USER39> If you read through the thread, it becomes clear that mental illness is a factor here. With so many such cases over the years, it's as though cryptography has its own flavor of Jerusalem Syndrome. It's such a magnet for this. The overconfidence of some of these people is really impressive. Plot twist: while being wrong about almost everything technically, perhaps he's right about the NSA wanting the conversation confined to a small, well understood set of algorithms. But still, ugh, no thank you to what he's offering.

</comment><comment><USER38> I thought it would be a link to the infamous ECB image:

[https://en.wikipedia.org/wiki/File:Tux_ecb.jpg](https://en.wikipedia.org/wiki/File:Tux_ecb.jpg)

</comment><comment><USER40> Has anyone written a wrapper algorithm to encode/decode "obvious repeating patterns" to be used by common software that uses cryptography?

Call it something like "crackpot.js"

</comment><comment><USER32> I wonder if the NSA can actively lead developers towards bad crypto practices.

</comment><comment><USER41> (2015)

</comment><comment><USER42> it looks less like airbourne influenza and more like airbourne HIV, at least from the fact that people are testing positive weeks after treatment [0]...

[0] [https://www.todayonline.com/world/covid-19-far-more- likely-s...](https://www.todayonline.com/world/covid-19-far-more-likely-sars- bond-human-cells-due-hiv-mutation-scientists-say)

<comment><USER26> Wrong thread?</comment></comment>


Problems with Email APIs (especially SendGrid) - <AUTHOR> https://medium.com/@absolutelydo/problems-with-email-apis-especially-sendgrid-244d3311e4ba <comment><AUTHOR> Hey HN, author here. This is more than just a random collection of deliverability tips. I propose a new abstraction which I think can start to solve the pervasive reliability problems with all the email APIs I've used. We've been working on this for months, learned a lot in the process. Please do reach out if you're interested in our private beta. Thanks!</comment>


How to get motivated for and plan my pet project? - <AUTHOR>

I am a student now and I have been coding from the last 3yrs. I think I am am good at it. Made some awesome apps where I worked and interned. (on java), 80% of 24hrs is spent doing something for my school project or trying to learn some random thing. I also made a website which has 1000 odd hits/day which was build using php 3yrs ago. (pretty simple).
Now, I have been playing with Rails from the last 1 month and trying to upgrade my website and in that process learn Rails too.
I am also pretty much motivated and I know if I get things rolling, I will work on it day and night.
But my problem now is, when I start with rails and try to make something, I get stuck at some very basic things which are like good UI, JS etc. I am not able to get a start. I think it has primarily 2 reasons: 1. Lack of Rails know how, 2. procrastination
So, any suggestions? What is a good way to go about it? How should I divide my project? <comment><USER2> I think you should clear you a weekend and devote it to the part you "hate" most, for example, a good UI and /just do it/. Once you start working on it, you will probably keep doing until you finish, but you need to get things rolling first.</comment>


Google used this woman's name on all its templates – she gets messages daily - <AUTHOR> http://nordic.businessinsider.com/casey-baumer-google-docs-templates-2016-7 <comment><USER2> > _A Google spokesperson says that the company decided to use that name > instead of something like John Smith or Jane in the spirit of creativity, > but the decision ultimately caused the real Casey Baumer to receive dozens > of angry or confused messages._

> _She wondered whether Google had actually Googled the name before they used > it - and wished it had._

Kind of a baffling choice by Google, who of all companies should know how much easier it is to target specific people with an uncommon name _and_ how even uncommon combinations will have actual results (due to the vast amount of names and databases traversed by its crawlers)...and of course, how you'll have _at least_ thousands of dumb/unhinged users when you have hundreds of millions of them.

</comment><comment><USER3> What a situation. I can't help but marvel at how so many Google Docs users don't understand they're looking at a _not real_ example document. Maybe they should've used a common-but-famous name instead ("George Washington").</comment>


Backblaze lost over 13TB of my data - <AUTHOR> https://www.reddit.com/r/DataHoarder/comments/6j36o2/well_backblaze_lost_over_13tb_of_my_data/ <comment><USER2> So much facepalm here. A Backblaze rep is in that thread confirming that they do have a failure case where they can lose backup data -- or at least, it'll become inconsistent. Ok, that's bad. I don't think they're idiots, but it'd be interesting to know what's so technically challenging about the index problem that they haven't been able to solve it.

But ... 17 TB total? For _online_ backups? That's just not what they're designed for, unless you've got one hell of an internet connection. The complainant says it's going to take over a year to re-upload the 13TB. That's insane.

I think you have to give up on online backups for that use case and settle for a pretty beefy home rig in a fire-resistant box. Moving that kind of data up and down an internet connection just doesn't work real well yet.

<comment><USER3> Yev from Backblaze here - as far as the technical aspects, it's tough for me to say b/c I don't know what happened in this case, but we do have use-cases where we need to "Freeze" backups (more info: [https://help.backblaze.com/hc/en- us/articles/217666178-Safet...](https://help.backblaze.com/hc/en- us/articles/217666178-Safety-Freeze-Your-Backup-is-Safety-Frozen-)). I would venture to guess that since this occurred on their C: drive, something similar to that happened here, and they needed to re-upload the data (in most cases, previously uploaded data is still available for restore - but with 13TB of data to re-upload and not a lot of bandwidth, it would have taken them way longer than our 30-day history to do that).

</comment></comment><comment><USER4> If you want to store data as cheap as possible online, you are looking at 4 EUR / TB / month of capacity. [https://www.reddit.com/r/seedboxes/comments/6d1h34/oneprovid...](https://www.reddit.com/r/seedboxes/comments/6d1h34/oneprovider_advertises_2x2tb_hw_raid_unltd_1gbps/di44nzg/)

To lower that with a significant up front cost, you could buy the drives yourself, perhaps shucking external ones and then send them over to Vapornode [https://vapornode.com/storage-vps](https://vapornode.com/storage-vps) so they can host it at 10 USD a month per disk. If you have a Fry's close by, they have 8TB units for 200, recently Best Buy had them for 180 but I think that ended. So that's 200 + 10 / month vs 4.5 * 8 = 36 USD / month, you are saving 26 USD a month, it takes eight months for this to be cheaper. I would say it's not worth it because replacing dead disks are on you but it's up to you. Also getting many smaller disks make for better RAID.

Finally, lowendtalk regularly has discussions on bring your own disk providers. You need to know what you are buying but it's doable.

<comment><USER5> You can get lower than that even, if you need a lot of data.

Buy a used SC846 second hand, that costs ~$900 inclusive of rails and a SAS2 backplane upgrade. Then buy drives. You can get 8TB drives for ~$230 (Seagate Archive or shucked Reds) or $0.027/GB. Add cheap colocation for say $70/mo.

Assuming the hardware lives about 5 years, total cost is $900 + (70x12x5 = $4200) + num_gb x 0.027.

If you fill all the bays you're looking at 192TB for 5 years for $10284, or $171.4/month or $0.90/TB/mo.

<comment><USER4> Well, yes, but that's just one machine and you are responsible for keeping it running.

</comment></comment></comment><comment><USER6> >>> It took 8 months or so for my initial backup and will definitely take over a year with the added data now [upload 13 TB again] so I just cancelled and they gave me a refund for the last payment.

>>> So, all in all just a waste of time and money.

Dude wanted to backup 18 TB of backup on a home connection until he realized it's not going well.

Messaged the customer support to complain => he got a timely reply, then decided to leave the service and got a refund.

That looks like good service to me.

P.S. I feel sorry for companies who have to deal with that kind of customers.

<comment><USER7> Also from what I can tell, he didn't lose any data - he just lost the ability to continue his backup, and had to start it again.

I mean it's not an ideal circumstance, but not the end of the world. He really just needs a faster connection to support that much data.

</comment></comment><comment><USER8> I wonder what the overhead is like on 13TB of data.

I have about 80GB with Backblaze right now -- just documents, photos and music on my laptop -- and the metadata it stores in /Library/Backblaze.bzpkg takes up 46GB, or about half the size of the actual backup. Most of this is in uncompressed plain-text log files showing every file which has been backed up, going back years. On a 256GB SSD that overhead hurts.

I asked their support, but their only solution was to delete the backup, reinstall the client, and start from scratch, which seems... less than optimal.

(On the other hand I do understand the impulse to squirrel away terabytes of data... I now make a point of archiving all of my mail accounts and PDFs of papers I read, knowing that with good search, they'll be valuable for years to come. But I haven't quite read 13TB worth of papers yet.)

<comment><USER9> Have other BackBlaze users reported similar amounts of metadata? That's enormous.

</comment></comment><comment><USER10> I'm really surprised by how many people think 17tB is a lot of data. It's what...<$400 in storage? [1]

Crap, just between the main drives on computers in my house I easily have 20-30tB of raw disk space.

It might be a lot to transfer...yeah. At 50Mbps that's what...a month of sustained transfer? But how valuable is your data?

1 - [https://www.newegg.com/Product/Product.aspx?Item=N82E1682217...](https://www.newegg.com/Product/Product.aspx?Item=N82E16822178951&cm_re=external_hard_drive-_-22-178-951-_-Product)

<comment><USER11> What the heck are you storing that you've used 20-30TB? I don't really get it.

UHD Movies? Why would you save those in the age of streaming? Family pictures/videos? At 20TB, you must have hundreds of thousands of pictures. There's not enough time in your life to look at all those! The only thing I can think of is that you shoot photo/video professionally, or maybe do some kind of 3D/video rendering?

But I agree with you - when you have this much data, why the hell are you transferring it to the cloud? Buy a couple harddrives, load them up, and stick them in a safe.

<comment><USER10> Who said I'm storing anything? A handful of machines with the cheap default spinning rust HDs in them and you get to 30tB very quickly. A typically family of three probably has double digits tB just in their Costco purchased laptops.

Heck, my _parents_ have >10tB of raw storage between their home and work computers. Even though they aren't data hoarders, between software, important documents and email and videos and pictures of grandkids and friends they probably easily sit at 4 or 5 tB of total storage that deserves backup.

</comment></comment></comment><comment><USER12> Seed drive service. ~20 hours to copy 10T of local data to a few drives, few days to ship, ~20 hours to copy the data to the cloud. But I guess some people think that cost is greater than 8 months of uploading? Whatever...not my data.

</comment><comment><USER13> I've stated this before in a previous thread, but I had previously used backblaze on a few computers but found it was taking up almost 8GB of space on my laptop for the backup list of files. This seemed very odd to me so i reached out to backblaze and the response was to make a new account to re- upload everything. Given the time it takes to re-upload everything (i didn't quite have 13 TB, but i had enough) i just terminated my account.

</comment><comment><USER14> Has anyone tried Sia? From what I've read it is an order of magnitude cheaper form of cloud storage but I don't know anyone that has tried it.

<comment><USER15> Maybe a binary order of magnitude.

Sia = $2/TB/month.

Amazon Glacier = $4/TB/month.

Time4VPS Storage = $4/TB/month.

Backblaze B2 = $5/TB/month.

<comment><USER16> I just checked out Time4VPS. Their storage VPS's have a 200 IO/s limit. At the typical 4K per IO, that's 800K bytes/sec, 1.6MB/s, or 2.1TB per month. It's a little misleading that they advertise a 10TB bandwidth limit per month on a 100Mbit/s port, when the IO limit kicks in way before that.

Backblaze B2

</comment></comment></comment><comment><USER17> if you have 17TB of data. Where is the best place to back up that much data? Other then redundant back up drives... Is there a suitable cloud solution for this? If not is there enough demand to build one? I dont own that much data. I cant imagine having to keep track of that much data, I hate having more than 1 TB of data to keep track of.

<comment><USER3> Yev from Backblaze here -> Cloud Storage services are better suited for that much data. I wrote a post recently where I went in to the differences between Sync, Backup, and Storage as it relates to the cloud -> [https://www.backblaze.com/blog/sync-vs-backup-vs- storage/](https://www.backblaze.com/blog/sync-vs-backup-vs-storage/).

I'm not sure what happened in this user's case - but my guess is that something happened on their machine where our backup client decided that data on the machine didn't match with what is in the DC and restarted backing up the data so that we'd have a clean copy, resulting in 13TB of data getting re- scheduled for backup.

<comment><USER18> For a backup service, you seem strangely unconcerned about what went on here.

<comment><USER3> I wouldn't say that, it's just that I don't have a lot of data about this particular case to go on. In some cases if you overwrite our index files, you can get something that's known as a Safety Freeze. Again - I have no idea what happened with this customer, but I would venture to guess that since this occurred on their C: drive, something similar to what causes a Safety Freeze ([https://help.backblaze.com/hc/en- us/articles/217666178-Safet...](https://help.backblaze.com/hc/en- us/articles/217666178-Safety-Freeze-Your-Backup-is-Safety-Frozen-) happened here, and they needed to re-upload the data (in most cases, previously uploaded data is still available for restore - but with 13TB of data to re- upload and not a lot of bandwidth, it would have taken them way longer than our 30-day history to do that).

</comment></comment></comment></comment><comment><USER14> I just wonder what someone could have 17TB at home of. In 2010 the Library of Congress text database was 20TB. I know videos can take up some room but do people back up their video libraries to the cloud?

<comment><USER19> A small blu-ray ripped movie collection could do it. Also the subreddit is called "DataHoarder".

<comment><USER20> Coincidentally I just ripped my Blu-ray collection. 82 films, 542GB (x264 with a high profile encode). 17TB for me would mean close to 3000 films.

<comment><USER9> In that case why backup what you can just re-download?

</comment></comment></comment></comment><comment><USER21> I loaded 5 tonnes of sand into my 4runner and now it's ruined, Toyota claims a 4Runner is not a 5 tonne truck won't give me my money back or honor the warranty, I swear the mechanics were laughing at me.

<comment><USER22> Backblaze should be able to handle 17TB of data.

<comment><USER23> BB handles many PBs of data. Actually I think it's ZBs.

However, I'm not sure how many of their clients have single drives with 17TB of data. Perhaps this is an edge case that they didn't adequately test for.

And since a vast majority of their customers will not have more than 3TB on any single drive, I can see why this might not be well tested.

<comment><USER24> i think you meant exabytes, not zettabytes, and as they state on their website "350 million GB stored ... (and counting)" that means there at about 1/3 of an exabyte now

<comment><USER23> Probably so. I can't count past a million anyway.

</comment></comment></comment></comment></comment><comment><USER23> Let's just be real. It's assholes like this that take advantage of the buffet line, thereby costing all of the rest of us. And then they complain when they can't go back for the 45th plate of food.

People like this are why Amazon's unlimited cloud storage just became limited. The people out there abusing the spirit of the offer know who they are. The finance world is FULL of those people, and it's a good part of why the economic world is really fucked up.

Be a team player. Be thoughtful of your peers and neighbors. We'll all end up better off, even you. /rant

<comment><USER25> This is why I hate services that offer "unlimited" of some resource, like Dreamhost and AWS, so I will never use them. Everyone is worse off. People who use less than a ridiculous amount are paying for a few outliers using 100x more. People who use a ridiculous amount can no longer be sure whether their service will be active the next day because an employee deems their use "ridiculous".

And I don't think they're at fault like you're suggesting. Suppose I have a legitimate use case for storing 17TB of data and need to do it on a budget. During my shopping, I discover ten $1000/yr services for 20TB storage and three $100/yr services for unlimited storage. To me, the $100 services seem like scams or that they have no idea what they're doing. Amazon, Backblaze, and Dreamhost are literally giving off these vibes! Regardless, I'm on a budget so I purchase Backblaze and upload my 17TB. But in the back of my mind I'm nervous that they will shut off my service, despite the contract I entered with them to keep an "unlimited" amount of data for the price I paid. Or, if the contract says they have the right to terminate my service if they deem the amount to be too much, that would make nervous even as a normal user of the service, since the definition of "ridiculous" might be decided by some judge in a court if the service decides to cancel the contract and my company decides to sue. Would you really want a judge to decide that, or would you prefer a hard limit to be placed on the website and the contract in the first place? I truly don't understand the appeal of "unlimited" plans compared to simple hard limited, tiered plans.

<comment><USER23> > Suppose I have a legitimate use case for storing 17TB of data and need to do > it on a budget.

Can you give me a theoretical example? Seems like saying, "Suppose I have a legitimate case for needing 45 trips to the buffet line."

I get your points, but I think outliers are outliers, and correspondingly they should be thinking as such. So if I had, for whatever reason, a need to store 17TB of data, I would need to be as clever about how I stored it as I obviously was clever enough to even possess 17TB.

<comment><USER25> There could be many reasons. In order to run simulations at my work, I request databases of input data and results of previous experiments. Each experiment is 1-100GB of xray images and dumps from other instruments. Mostly the experimenters dump the data they don't need, so often my team becomes the only possessor of the raw data. It would be convenient to have an off-site backup in case someone rm -rf's the drives.

When I was younger I worked at a recording studio. Each song consumed about 10GB, and it was convenient to return to the sources at a future date once the mix was delivered to the artist. Each artist recorded about 10 songs, and in a year we could do 50 artists.

I can't imagine what animation and video production houses go through per day. Having a backup is completely necessary for these folks. I could go on, but I feel 17TB is pretty common for businesses, so I'm not sure why you're asking the question. These days you can get 17TB for only $700.

<comment><USER23> If you are betting your business on an "unlimited" $5/mo service...

So either the guy has a legitimate business reason (in which case he's definitely chosen the wrong service (level), or he's not using it for business.

<comment><USER25> Backblaze is $59/month, right?</comment></comment></comment></comment></comment></comment>


Julia 0.3 released - <AUTHOR> http://julialang.org/blog/2014/08/julia-0.3-release/

<comment><USER2> For anyone curious about the packages available in Julia 0.3, please check out [http://pkg.julialang.org/](http://pkg.julialang.org/). We hope to add keywords and such in the near-term to make package discovery easier. Until then you can check out some of the "organizations" ([http://julialang.org/community/](http://julialang.org/community/)) such as JuliaStats ([http://juliastats.github.io/](http://juliastats.github.io/)) and JuliaOpt ([http://juliaopt.org](http://juliaopt.org)). Finally, we have a blog aggregator that you can follow at [http://www.juliabloggers.com/](http://www.juliabloggers.com/)

Julia 0.3 is a solid release and many Julia users have been using the master Github version for the past few months for production use, academic work, and just messing around quite happily. There are relatively few breaking changes from 0.2 to 0.3, with much better package support - so upgrade as soon as you can.

Julia 0.4 is likely to be a more "unstable" release in the tick-tock style that Linux used to have. Already been some great new things merged in, many more to come. I'd recommend not using the master branch of Julia at this time, and instead stay on release-0.3 if you like to build from source.

<comment><USER2> Sorry for self-reply, but ran out of edit time: a very valid concern about Julia is the lack of packages because it is new - a catch-22 situation that all new languages. This has been recognized by developers and Julia has now got some great inter-language interop packages and functionality, allowing it to harness a world of packages in other languages.

* Very efficient interaction with C and Fortran libraries is a core Julia feature, with the ability to pass arrays and structs directly between C and Julia.

Calling C: [http://docs.julialang.org/en/latest/manual/calling-c-and- for...](http://docs.julialang.org/en/latest/manual/calling-c-and-fortran- code/)

* Python libraries can be used through PyCall.jl, which is used most famously to call matplotlib (PyPlot.jl) but also other libraries like pandas (Pandas.jl).

PyCall.jl: [https://github.com/stevengj/PyCall.jl](https://github.com/stevengj/PyCall.jl)

PyPlot.jl: [https://github.com/stevengj/PyPlot.jl](https://github.com/stevengj/PyPlot.jl)

Pandas.jl: [https://github.com/malmaud/Pandas.jl](https://github.com/malmaud/Pandas.jl)

* Java libraries can be used through JavaCall.jl, which is used in Taro.jl to call Apache Tika and Apache POI

JavaCall.jl: [https://github.com/aviks/JavaCall.jl](https://github.com/aviks/JavaCall.jl)

Taro.jl: [https://github.com/aviks/Taro.jl](https://github.com/aviks/Taro.jl)

* R libraries can be called through Rif.jl

Rif.jl: [https://github.com/lgautier/Rif.jl](https://github.com/lgautier/Rif.jl)

<comment><USER3> It is still experimental, but the C++ FFI should also be mentioned:

[https://groups.google.com/forum/#!topic/julia- dev/4kUu2ieWZ9...](https://groups.google.com/forum/#!topic/julia- dev/4kUu2ieWZ9Q)

Some more samples: [https://github.com/Keno/Cxx.jl/tree/master/test](https://github.com/Keno/Cxx.jl/tree/master/test)

</comment></comment></comment><comment><USER4> For fans of the Python numeric stack (NumPy, SciPy, pandas, etc.): if you ever want to give Julia a go, there's an excellent Julia-to-Python bridge called PyCall.

[https://github.com/stevengj/PyCall.jl](https://github.com/stevengj/PyCall.jl)

It allowed me to incorporate Julia into my academic work without breaking a sweat.

</comment><comment><USER5> Python is my usual go-to language for technical computing, bit Julia is a lot of fun! I'd be curious to hear more from folks who have made use of it in "production" (sort of a tricky label in scientific programmiong) code.

<comment><USER6> For what it's worth, I tried and failed to convert my team of scientists/programmers (heavy on the science; not so much on the programming) to Julia from MATLAB/IDL/C++ for a project we were kicking off ca. 1 year ago.

It's a really, really nice language that I find more consistent and easier to grok than MATLAB, but the deciding factor was the lack of the equivalent of MATLB toolboxes with all of their pre-rolled code that made our development as fast as it was.

Edit: I should have mentioned: the Julia add-on packages are multiplying quickly, and are starting to look mature! [http://pkg.julialang.org/](http://pkg.julialang.org/) I'm looking forward to them overtaking Mathworks on this front too.

<comment><USER7> Octave dev here, which packages are you looking for?

I'm curious if it's as sophisticated as Simulink and Mupad, which are completely different programs that happen to be associated to Matlab, or if it's just the image package that we have almost all in Octave already.

Where's the demand? Where is _your_ demand? :-)

<comment><USER6> This was at an organization that I don't work for anymore, and my recollection is a bit fuzzy. I think it was Computer Vision, Signal Processing, Wavelet, and Image Processing.

There were also some convoluted, non-technical reasons that we went with MATLAB.

<comment><USER7> Could you contact me at firstname.lastname@example.com for some follow-up questions?

</comment></comment></comment></comment></comment><comment><USER8> When I last looked at Julia (as a candidate for writing a bioinfo. tool) it seemed a really appealing alternative to prototyping first in Python and then Cythonizing to gain speed, in that code would only have to be written once and no stitching together would be required. Ultimately, I decided against using it because it seemed packaging of binaries wasn't quite there yet (e.g., one would have to download Julia and then download my code to run it). Is this something that's likely to be addressed in 0.4? Was my understanding of the situation accurate?

<comment> one-more-minute Yeah, that's exactly right. Static compilation is a high priority though, so it will be possible eventually.

<comment><USER8> Alright, thanks. I'll check in at the start of the next project :)

</comment></comment></comment><comment><USER9> I'm curious. I would like to know if it is worth to learn a new language only for speed reasons or if it's better to hope in improvements in Python... What do you think?

Anyway awesome! It's going well :))

<comment><USER10> If you subscribe to the idea of a division of labor between systems and scripting languages, then Python + its C based extensions (Cython, Numpy, etc.) is ideal, as it already has an extensive scientific ecosystem. Julia combines the two in a single language. See this blog post and the one that follows it: [http://graydon2.dreamwidth.org/3186.html](http://graydon2.dreamwidth.org/3186.html)

<comment><USER11> It is light years far from ideal. There are two variants of this much parroted line (i) Numpy, Scipy are just C loops, and (ii) 'just do the intensive parts in C', both leave a lot more to be desired.

Yes numpy, scipy indeed dispatch to precompiled C and sometimes Fortran loops but the problem lies elsewhere, in its vectorization paradigm. It is just extremely wasteful. There are two problems:

(a) it is not expressive enough to capture efficient computation without generating unnecessary intermediate arrays whose sole objective is to make it possible to write the computation as a vectorized operation. Unlike Matlab in the past, numpy, scipy are at least smart about broadcasting. This often allows one to avoid constructing those intermediates in memory. However, this comes at an extra indirection that affects _all_ array operations via the stride vector. You pay the cost of indirection whether you need it or not.

(b) The second problem is generation of temporaries when you chain several binary operations. These temporaries get allocated, filled and destroyed over and over again within a single expression which itself might be in a loop. This costs computation, memory, not to mention GC pressure. There is of course numexpr but it is also quite limiting. For instance you cannot index or slice from within a numexpr expression. It offers limited set of reduce operations, in an expression you can use only one, and it must be the last one in the sequence of operations.

Then there is 'write to C'. If we have not eliminated the need to write C we have not really solved the hard problems have we. I think the whole point was to avoid writing low level code because it is error prone, tedious and that it often comes at the cost of productivity. The drop down to C imposes an unnecessary break in flow and forces you to tackle the impedance mismatch. Tools like Cython eases this a bit. You cannot for example use numpy array expressions efficiently from Cython, you have to write those tedious low level indexing code. If I were to write C, I would rather write it in C syntax and take advantage of the decades of tooling around C syntax. Cython is great and an awesome community effort, but it still quite a simple compiler and has limitations.

So far I have been talking only about ease of use, quality of programming experience etc etc, but that is not the only issue here. The problem is calls to C and more importantly callbacks from C to Python are expensive enough to be non-ignorable. If you have a hot loop where you go back and forth between C/Fortran world and Python thats going to incur a serious hit. The solution is to make the containing piece of Code into C/Fortran/Cython, so it ends up swallowing more and more of the application logic, leaving only but a shell of I/O in the Python world.

Its not the end of the world but not quite the rosy picture you give. Another issue is cultural, its common among many newer programmers not to have really experienced fast runtimes, of course this is a generalization and does not apply to all, but have seen it happen frequently enough. They are greatly amazed by what I would call only modest improvement in runtimes and they would be cheering "Wow! so speed much fast!" etc.

All of these make me be really hopeful about Julia. Interacting with the community gives me the feeling that they get it. Julia is an expressive language, already quite performant and not saddled by limitations of vectorization. I do like the terseness of vectorized expressions over loops, this is being filled by devectorize.jl. Yes there are more libraries available in R or Scipy but given the ease with which one can code in Julia I dont see this to be an unsurmountable problem. Every language has to begin somewhere and unlike say other competing solutions like Torch7 I find the community very friendly, responsive and pragmatic. It seems they spend conscious effort to keep it that way. So, Julia community, here is wishing all the best.

I do love Python a lot, and I mean really really a whole lot (except for its OOP parts) but this self cheering gets a little too much at times.

<comment><USER12> I have used CFFI in a few projects for writing a core computation in actual, pure C, and dynamically calling it from Python. Performance is really great, I vastly prefer it over Cython.

But, it doesn't solve the vectorization problem. Often times, you have to transform simple iterative algorithms to a convoluted vectorized mess if you want to have decent performance. Not every procedure is easily expressed as matrix multiplication.

This is a very real cognitive tax of the vectorized approach. Thank you for your writeup!

<comment><USER10> But why do you prefer it over Cython, since it can also wrap "actual, pure C, and dynamically [call] it from Python"?

What is the vectorization problem? Both Cython and Julia allow you to write tight loops and have them perform well.

<comment><USER12> In CFFI, you write either Python, or C. In Cython, you additionally write a weird dialect that is neither C nor Python. I prefer straight C over Cython.

</comment></comment></comment></comment></comment></comment><comment><USER13> My favorite change in 0.3 isn't even in the changelog:

Startup time has been massively improved. It used to take 5-10sec to start the REPL or run a test, now it's about 0.2sec.

<comment><USER14> Actually, that's the "system image caching" mentioned in item #1. :)

</comment></comment><comment><USER15> I gave julia a try some weeks ago, but it seems it has a big performance problem when importing libraries... it takes too much time. This release doesn't seem to solve this problem sadly :/

<comment><USER16> Resolving this issue is one of the main goals for the 0.4 release. There is already a way to get much better performance for frequently used packages, but it involves a level of tinkering that's prohibitive for most users.

<comment><USER15> I'm glad to hear this! I'll be waiting for it to give it another try.

</comment></comment></comment><comment><USER17> Does redefining functions with dependencies in the REPL work with this release? How about deleting items from the symbol table?

<comment><USER2> Is [https://github.com/JuliaLang/julia/issues/265](https://github.com/JuliaLang/julia/issues/265) the issue you are referring to? If so, not fixed.

Not sure about the second part, but `workspace()` was added in 0.3 ([https://github.com/JuliaLang/julia/blob/release-0.3/NEWS.md](https://github.com/JuliaLang/julia/blob/release-0.3/NEWS.md), [https://github.com/JuliaLang/julia/issues/1195](https://github.com/JuliaLang/julia/issues/1195))

<comment><USER17> Yeah, that's the issue that I'm referring to.

Looks like workspace() wipes the whole slate clean. I was thinking along the lines of R's rm() that can target individual variables.

</comment></comment></comment><comment><USER18> Has anyone spotted a buildpack for Heroku?

</comment><comment><USER19> Thanks for posting the release news!</comment>


Ask HN: review our new thing! - <AUTHOR> http://sto.cx

<comment><USER2> Looking good. A couple of UI suggestions:

\- Look into making the percentage editable after you've added it to your portfolio. Ideally you shouldn't have to delete and re-enter to change that.

\- If the Timetric API allows you to theme the graph to light-on-dark, it would look a lot more at-home with the rest of the site.

\- If I'm not logged in, where are my temporary portfolios? I tried to name two of them "test" in a row and was informed there was already one by that name, but there appears to be nowhere to access these. I'd suggest simply not prompting unauthenticated users to name portfolios at all until they log in.

<comment><AUTHOR> Thanks for this! The last thing you point out is a really good catch.

</comment></comment><comment><USER3> I went to all the trouble of creating an interesting test portfolio before finally getting told that this tool proves useless to me because it uses Flash. Please at least say up front that you require Flash, so I don't waste my time. Better yet, just like you created an impressive interface for _creating_ a portfolio using only HTML, please consider making an impressive interface for _viewing_ a portfolio using only HTML.

<comment><USER4> > impressive interface for creating a portfolio using only HTML

They didn't do that either. "Sorry, Stocx requires your browser to support javascript". It's not hard to make two text fields and a submit button work, and that should have been revision one.

<comment><USER3> While I do tend to believe AJAX sites should try to work in browsers that only do HTML, I wouldn't put that anywhere near on the level of "don't require Flash". Almost any modern browser, including FOSS browsers, supports JavaScript and AJAX. That just leaves out text-mode browsers and paranoid NoScript users. :) Requiring Flash, on the other hand, leaves out people like me who refuse the proprietary Flash plugin, as well as many users on smartphones and other platforms that don't have Flash plugins.

</comment></comment></comment><comment><USER5> So, my first reaction, is I wouldn't use it, but I don't own stocks so that is not a surprise. My second reaction is who would use it and I get stuck there too.

The front page is not that valuable, because it is relatively easy to add up to 100. The second page where it aggregates the portfolio into one graph seems useful, but in order for a user to actually use that page, they would have to commit to a portfolio on the front page. This confusing me because I thought the whole point was to get information while you were building portfolios.

You should consider moving that graph of the combined portfolios to the front page under where you enter the stocks. This way when people are adding and subtracting stocks they can actually see what impact it has on the aggregate and then maybe your site can be useful for that.

Overall, I am instinctually concerned about your site because it seems like you have put a lot of time and effort into something that doesn't do much, which is exactly the opposite of what you want to do with a start up. Generally you want to put very little effort into a site that does a lot!

<comment><AUTHOR> Actually, this didn't take too long to build on top of our platform, which we built for Timetric (<http://timetric.com/>) - that's where the vast majority of our effort has gone.

</comment></comment><comment><USER6> I couldn't enter the stock symbol for Sirius XM - SIRI.

When I got to the R it seemed like it would autocomplete to a random stock.

FF 3.5.8, Win XP

<comment><AUTHOR> Thanks for checking it out. Sirius isn't an S+P 500 stock (we started it with a pretty restricted universe of equities, the S+P 500 from the US and the FTSE 350), but we'll see if we can get the autocomplete to behave a bit better; it's pulling the top element off the list when the autocomplete closes.

</comment></comment><comment><USER7> Here's my portfolio

50% Google

15% Nasdaq

53% Microsoft

After 4 Years I finished with 14% increasing, going through picks of 60% and loses of %37.

Good app and a very useful one. I don't invest, but I like stats and to play with numbers.

The leaderboard is also useful to know combination that are successful.

Just one notice: The %number are always in Red, make them in green when there's a win and Red when there's a loss

<comment><USER8> uh....118%?

<comment><USER9> I think he meant 35, not 53

<comment><USER7> yes, but i don't have the edit button right now

</comment></comment></comment></comment><comment><USER10> 1) At first, the Clear Button is at right and the Create is at left. When you click "Create" you have a popup. The cancel is at left and the Create is at right. You should try to put all your creation button at the same position... all right or all left and not changing them because it's confuse and error prone.

2) Font is very weird here : <http://goo.gl/wFyS>

</comment><comment><USER11> The .cx TLD has negative connotations for me. I don't know if this will be a relevant issue for your intended audience.

<comment><USER2> As long as you have no animal references in the domain name, I think you're fine.

</comment></comment><comment><USER12> Here ya go [http://opinbot.com/reviews/show/agdvcGluYm90chwLEhVyZXZpZXdz...](http://opinbot.com/reviews/show/agdvcGluYm90chwLEhVyZXZpZXdzX3Jldmlld3JlcXVlc3QY_VUM)

<comment><AUTHOR> Thanks!

(We wanted a short URL for Twitter, which straight away sends you off into the land of weird country-code domains...)

</comment></comment><comment><USER13> Cool url. Loads slowly. Visually a little too shiny for my taste (can we bury the wet look already?). I'm not target audience so I didn't really know what it would be useful for.

</comment><comment><USER3> Minor bug report: you can add the same stock twice, and it gets two separate entries rather than adding to the same entry.

<comment><USER14> Thanks - yes, this is an error. We'll fix it shortly!

</comment></comment><comment><USER15> I typed in TM, but didn't get Toyota.

<comment><USER16> Similar over here: tried "IVV" but didn't get the ETF I expected

<comment><AUTHOR> At the moment we're only doing FTSE 350 (London) and S+P 500 (US); we'll be adding more stocks, instruments and ETFs soon. What ones would you all be most interested in?

<comment><USER17> In addition to ETFs, I would also like to be able to add mutual funds. Specifically, those offered by Vanguard.

</comment></comment></comment></comment><comment><USER18> FF 3.5.8 Win7, can't add anything. Enter ticker, percent, click plus sign, nothing.

<comment><AUTHOR> We think that's because you managed to beat the autocomplete :) Try again now?</comment></comment>


Five Mind-blowing things science still cant explain. - <AUTHOR> http://www.mindopenerz.com/5-mind-blowing-things-science-still-cant-explain/

<comment><USER2> This hurts me a bit to read. Many of these phenomena have scientific explanations or at least some very credible research. :/

<comment><USER3> Yeah it strikes me as weird too when you could go a lot simpler and list things like "consciousness" or "time".

</comment></comment><comment><USER4> Sailing Stones were (allegedly) recently figured out.

[http://www.livescience.com/37492-sailing-stones-death- valley...](http://www.livescience.com/37492-sailing-stones-death-valley- moving-rocks.html)</comment>


Open Source Social network: inviting collaborators - <AUTHOR> Inviting interested collaborators and developers to contribute to an open source social networking platform <comment><AUTHOR> [https://github.com/ThemisOrg](https://github.com/ThemisOrg)

</comment><comment><USER2> Can you provide some description or motivation for this project?</comment>


Musician's hand injured after UA supervisor wrestles away antique violin - <AUTHOR> http://www.rawstory.com/2017/06/musicians-hand-injured-after-united-airlines-supervisor-wrestles-away-antique-violin-in-baggage-dispute/ <comment><USER2> Bizarre.

I can't imagine what makes a supervisor think that it is okay to forcefully take a customer's luggage from them. Why not just go "Well, you can't fly with us then."?

<comment><USER3> Yeah like, how does it devolve to this?

"These are the conditions for you to board the plane. If you don't comply, you cannot board the plane. If you attempt to force your way onto the plane, the police will remove and arrest you."

At no point is "forcefully taking the passenger's luggage" a reasonable thing to be doing, nor necessary.

<comment><USER4> So I haven't seen anything other than this article about this, but I agree, this is completely unnecessary.

It honestly feels like a good ol' fashion airport power trip. TSA agents, low level supervisors, airport security thinking they are the most important people in the world, and that you have to respect their authority. And just like some law enforcement officers, they are willing to use ridiculous force. They don't listen to reason, they don't care what their written rules are, they just think you need to do whatever they say. And many times, there's not much you can really do about it, other than complain afterward.

On the other hand, customer service jobs would be a lot easier without customers, especially if they are irate/drunk/unreasonable/etc.

</comment></comment></comment><comment><USER5> Law states that the person can legally carry their instrument aboard if there's room at the time of boarding, regardless of size of the instrument case. Since she didn't board, I'm hoping this goes to court to strengthen this law as a musician.

<comment><USER6> Anything bigger than a guitar, and you're likely buying a seat: [https://www.transportation.gov/briefing-room/us- department-t...](https://www.transportation.gov/briefing-room/us-department- transportation-issues-final-rule-regarding-air-travel-musical) (fifth paragraph). In the case of a violin, it will easily fit in an overhead bin or under the seat. Or at least I assume so, based on my experience with a mandolin which is bigger than a violin (not good enough on fiddle to ever need to travel with it). Based on the singular violin case I own, unless you have one of the bomb-proof cases I reference below, it should easily fit in a bin lengthwise (same orientation as a bag), or under a seat with nothing sticking out.

That said, reports seem to miss the part where she bought the discount ticket that doesn't allow for carry-on luggage. Now, the events that transpired after this was discussed at the gate were inexcusable. There's no call for that, and were I in that situation I'd probably be awaiting arraignment for popping a gate agent in mouth. On the other hand, if you have an instrument described to be "worth more than her car", don't cheap out on your ticket, and sure as hell don't buy a ticket that disallows carry-ons, hoping they'll make an exception when you get there. Get the pre-boarding or whatever needed to ensure you're not last on the plane.

Personally, I pay a little extra on the ticket such that I'm not in the last group to board. I use a case with backpack straps because I theorize it looks less like an instrument, and more like I'm just some bro with his pack. Most of the time I carry a cheaper instrument ($500 or less) that's a long way from being worth what my car is, so if it goes in the hold, I won't be _too_ upset. And if I bring the nice instrument that's worth several thousands of dollars, it rides in an $800 case _just_ in case I'm force to check it (if it gets hurt in that case, it's because a bomb went off in the cargo hold). All that being said, I've always just walked on with the instrument and no one so much as bats an eye.

<comment><USER7> Last time I flew from Houston I sat next to a professional Cello player. He had to buy a second seat for the instrument. It also was a good one.

</comment></comment></comment><comment><USER8> Is this a follow up to injuring a woman in a wheelchair yesterday?

[http://www.nydailynews.com/news/national/woman-confined- whee...](http://www.nydailynews.com/news/national/woman-confined-wheelchair- dropped-united-flight-lawsuit-article-1.3228429)</comment>


Ask HN: Has anyone moved to Canada? - <AUTHOR> So I am looking at the future of the UK. It looks bleak. So does America and the rest of Europe.
Canada (Specifically Toronto) does not.
But I am not exactly sure how I would get a visa.
I asked this on reddit and got circlejerked around
- In the business I am in I generate revenue and therefore profit, eventually in the 100's of thousands per month (I just started, already quadrupled my investment!).
- There is only me in my business - I own it and I do 100% of the work.
- It is not a skill like being a plumber.
So looking at visas you either get a Skilled Federal visa like a plumber or you start your own company, have to be VC or angel backed, and you have to employ x amount of people.
Neither of these scenarios work for me. Why would I want to give a vc XX% of my company, for life, when I don't need any startup capital? Plus it already works!
Has anyone been in a similar situation, say, such as an iOS developer who creates his own apps himself and publishes them himself?
I am sure I could do what I do, VC funded and employ people, but I don't want to employ people and have that responsibility just to earn 2-3x what I will be earning at that point, but then have to spend 30-40% more on wages etc + the VC cut therefore earning even less.
There must be a way surely!?
Thanks <comment><USER2> Talk to a lawyer. Also if you have a degree and speak French/English and come from a developed country it should be relatively straightforward, but again, talk to a lawyer.

The path to citizenship most of my tech friends have done is by being sponsored by their employer, if you open an office for your business in Canada that employs Canadians should also make things easier.

Can't say this enough, talk to a lawyer.

</comment><comment><USER3> If you do come to toronto to check out the city drop me a line and I can help introduce you to the city. firstname.lastname@example.com

</comment><comment><AUTHOR> I'm not looking at moving for about 5 years. Just want a backup plan now in case of problems (ISIS basically).

</comment><comment><USER4> Maybe you should hire an immigration lawyer. Or at least talk to one.</comment>


Ten Rules for Web Startups (2005) - <AUTHOR> http://evhead.com/2005/11/ten-rules-for-web-startups.asp

<comment><USER2> I think there are a lot of these checklists and top 10 things because they're easy to write and get a bit of traffic. In reality, 99% of people on HN already know everything in them. It's a great way to procrastinate, for the checklist writers and the readers alike.

How about we stop these checklists and all get to work on something interesting instead?

<comment><USER3> FYI, this is one of those "classic blog posts." It was originally posted in 2005 when many of his points hadn't yet been repeated to death.

</comment></comment><comment><USER4> FYI, for those who missed it: This is from November 27, 2005

</comment><comment><USER5> His

"#1: Be Narrow

"Focus on the smallest possible problem you could solve that would potentially be useful."

has

"You can much more easily position and market yourself when more focused. And when it comes to partnering, or being acquired, there's less chance for conflict."

Cute. Hadn't thought of that one.

For his

"#2: Be Different

"Ideas are in the air. There are lots of people thinking about—and probably working on—the same thing you are."

So he's saying to give up on trying for something really "different" and, thus, is contradicting his title for his #2.

That's once!

So his #2 is a bit 'confused' or 'mixed' in its message about being "different". The confusion continues with his:

"Second, see #1—the specialist will almost always kick the generalist's ass."

So, now he seems to be saying to be more specialized and, thus, "different". Okay.

That's twice.

Then he has:

"Third, consider doing something that's not so cutting edge."

where he seems to be back to being not so specialized or different.

That's three times he's 'flip-flopped'!

Here's my hot button issue about such lists:

Yes, it's true in maybe 99 44/100% (borrowed from the label of old Ivory soap) of the cases:

"There are lots of people thinking about—and probably working on—the same thing you are."

And two other things are true:

First, maybe 99 44/100% of information technology (IT) startups will never be worth over $1 billion.

Second, there are so many startups that have hardly better aim than blind shots in the dark that maybe over half of successful startups were such blind shots in the dark that just got lucky. Yes, between being smart and being lucky, being lucky is better. Sadly, we can't order up luck on demand. So, for an advantage we are stuck trying to be smart.

So, in trying to plan a successful startup, let's set aside luck.

Next, in trying to be worth, say, over $1 billion, we will be doing something quite rare. So the fact:

"There are lots of people thinking about—and probably working on—the same thing you are."

is not very impressive, compelling, or convincing for our planning.

That is, for our rare, desired success, we should notice the advantage of the old advice to:

(1) Pick a problem without a good solution and where a good solution would be very valuable. E.g., for a Web IT startup, provide something that hundreds of millions of people want and will like much better than anything else. In a biomedical analogy, have a one pill (safe and effective) cure for cancer.

(2) Construct this product or service with an 'unfair advantage', that is, some crucial, core 'secret sauce' that is the key to providing something "much better than anything else". In a biomedical analogy, use some work in biochemistry to construct a one pill cure for cancer.

(3) Have the 'secret sauce' be difficult to duplicate or equal. In a biomedical analogy, use some powerful, difficult, original, advanced work in biochemistry to construct a one pill cure for cancer.

So, when following (1)-(3), is it fair to say:

"There are lots of people thinking about—and probably working on—the same thing you are."

HECK NO!

(A) Are (1)-(3) commonly pursued in IT? No.

(B) Do (1)-(3) represent a major fraction of successful IT companies? No.

Do (A)-(B) mean that (1)-(3) should be ignored? NO!

Can (1)-(3) bring advantages? Should be obvious that they can.

Remember: The successful companies are heavily from luck, only a tiny fraction of startups can be worth over $1 billion, and the world keeps changing and moving on so that what most startups are doing and even what many successful startups did are not very good evidence for what to do to be worth over $1 billion!

There is one more hot button issue: There is advice, say, from Steve Blank, that we have to keep going back to the customer to confirm that the customer will like the product or service. But, for a safe, effective one pill cure for cancer, what do we ask the customer, what shape and color they want for the pill and what color they want on the pill bottle label?

So this importance of going back to the customer over and over means that the product or service being provided is less desirable than a one pill cure for cancer.

So, if possible, quit asking customers about what color they want in the pills and return to the work of constructing the one pill cure for cancer.

Can we get something like a one pill cure for cancer in IT? Hmm ...!</comment>


Born in the USA? Some Chinese plan it that way - <AUTHOR> http://www.npr.org/2010/11/22/131513165/born-in-the-u-s-a-some-chinese-plan-it-that-way

<comment><USER2> Amazing someone who immigrated here at 10 years old could never be President, but someone who was in the US _only_ for their birth — until much later in life — _could_ become President.

Ever since reading a first-hand account of a grade school student quietly thinking about how their teacher's pronouncement that "any of you could become President!" was incorrect for that student, an immigrant, I have seen this clause as a bit excessive.

<comment><USER3> Agreed. I may come across as xenophobic, or uber-patriotic, or whatever, but I think the laws regarding eligibility for presidency should be changed, not relaxed.

For example: Required to be a citizen and resident of the USA for the majority of his/her life (>50%). Required to renounce all other citizenship. Required to have spent the last 10 years of his/her life in the US.

Something like that seems fair(er) to me.

EDIT: Clarification.

<comment><USER4> Those are already the requirements for a basic security clearance.

</comment></comment></comment><comment><USER5> To be honest, I'm not especially bothered by this. You could (and many cable news and talk radio hosts have) make the case that this is just plain _wrong_ , but isn't there worse things than having the children of affluent foreigners be American citizens? We're still a "nation of immigrants", I say the richer the better!

I'll admit my analysis of this is only cursory, so feel free to correct my reasoning.

Obviously if these children just take advantage of the system, get a cheap(er) education and return to China, it's a net loss for the USA, but it seems to me that a great many would stay here, presumably as "productive citizens".

<comment><AUTHOR> Yes, I'd assume that most of these immigrants described by the article will become productive citizens and will benefit the USA. I don't find anything wrong with what these people are doing, except for the fact that they have to "work around the system" to achieve their goals. There will be many more people who will move with their children to the US shortly after their births and then live in the US longer than those mentioned in the article. Why should one group of people be able to become citizens immediately while the others aren't able to [until they apply for citizenship]? In short, I feel no hard feelings against those who only come to have their children here, but rather feel that the system needs to be changed in some way.

<comment><USER6> Yes, and also we expose them to our ideals. It's a win-win. Either they stay here and produce and inform, or they go back home and produce and inform.

</comment></comment></comment><comment><USER7> My college roommate's parents did this (he's from the Philippines) 24 years ago. Once he was born they went back to the Philippines and his first experience in America was at age 18 when he came to the U.S. by himself for school.

It worked out pretty well for him. He has since graduated with a top notch degree and sponsored his family to come to the U.S. Kudos to them for having the foresight to do this in the mid 80's.

</comment><comment><USER8> I don't know what part of the world you guys are from, but it's a fairly well known strategy in Turkey. I've had a friend who did that growing up. He had dual citizenship, one by right of birth and the other by right of parents. When you think about it, doesn't it make so much sense?

</comment><comment><USER9> Interesting. The Constitution is pretty clear here -- if you're born on US soil, you're a US citizen. However, there's no requirement that the State Dept. issue visas to people who are 6-9 months pregnant.

<comment><USER10> "if you're born on US soil, you're a US citizen"

Actually there IS debate about what that section actually means. Some take to mean in context that your parents had to have been under the laws (a citizen) already and subsequently you cannot just hop the border, have a baby, and the baby is a citizen. I happen to believe that as well.

<comment><USER11> Not among legal scholars, at least not since 1898.

Oops, left out the citation: US v. Wong Kim Ark, 169 US 649. [http://scholar.google.com/scholar_case?case=3381955771263111...](http://scholar.google.com/scholar_case?case=3381955771263111765)

<comment><USER12> This case, and the idea that being American has a lot more to do with ideas than with your ethnic origin, are important to my family history.

My grandmother was born in the US. Her mother died when she was young, so she and some of her siblings were sent back to the old country to live with relatives for a while. Eventually my grandmother and her siblings returned to the US, and she married my grandfather, leading to me, a proud American.

The reason this law was important was because my great-grandparents weren't US citizens. In fact, they were prohibited from becoming naturalized US citizens even if they wanted to be ( <http://en.wikipedia.org/wiki/Naturalization_Act_of_1790> ). Without the 14th amendment, I might not be a US citizen.

Nor would my great-uncle, who served in the US military. It turns out that in 1940 the US military suspected they had a need for Japanese translators. What better way to learn Japanese than to have gone to school in Japan?

My last thought on this topic is a joke:

Q: Who was the greatest German general of World War II?

A: Eisenhower.

</comment></comment></comment></comment><comment><USER13> This was popular with Korean moms some years back.</comment>


Ask HN: Corporate structure for software development? - <AUTHOR>

I am writing some software which I hope I can sell for a profit. However, I am concerned about the possibility of being sued. Thus I would like to form a corporation of some sort to protect myself. What should I choose in terms of legal complexity and taxation? (LLC, LLP, S, etc) Also, where should I incorporate in? Keep in mind and it is just myself and I do not plan to sell the company (although I may sell the copyright to the software). <comment><USER2> LLC works for me while talking to angels but, like noodle says, VC's will want the tried and true C corp.

I incorporated in my home state of Texas after consulting with an atty. Don't just go for the hype or advice from these boards after this state or that state: spend the money now on an attorney to set it up right so that you don't have to spend the time and money fixing it later.

</comment><comment><USER3> if you don't intend on selling your company, selling any part of your company, or getting funding from VCs, you sould form an LLC. its the easiest to deal with and its just a liability shield that will help protect personal assets form lawsuits, basically. it can be more if you treat it as more, but if all you want is protection from lawsuits, LLC is it.

delaware is the ideal place, but if you don't live there, it'll cost you a little extra. it doesn't matter _that_ much, it'll just be better for you if you do get sued, as delaware has the most established body of legislation on LLCs. consider a vermont LLC, also, because iirc, they are allowing purely virtual companies.</comment>


Facebook outshines Google as Silicon Valley elite gather to ponder the next big thing - <AUTHOR> http://www.sfgate.com/cgi-bin/article.cgi?f=/c/a/2007/07/14/BUGE3R0AP71.DTL

<comment><USER3> I don't understand facebook :-( From Germany, it seems completely unusable. OK, after some searching I found a group called "Germany" to join. Cool - <USER2> should be really useful...

The design of Facebook sucks, too (in my opinion).

</comment><comment><USER4> this article has no substance...

the only interesting part is that jim breyer wears funky socks.

</comment><comment><USER5> Here too apparently. Currently 6/30 stories on the front page have the word "Facebook" in them.</comment>


Death By Recruiters - <AUTHOR> http://www.codeanthem.com/blog/2010/04/death-by-recruiters/

<comment><USER2> There must be a reason they continue to function. Maybe they protect crappy companies from even crappier candidates - ones who cannot even remember a list of acronyms?</comment>


Perils of pop philosophy - <AUTHOR> http://jseliger.com/2009/06/01/highly-recommended-the-perils-of-pop-philosophy

<comment><AUTHOR> Note that I also put up a brief link here: [http://jseliger.com/2009/06/01/highly-recommended-the- perils...](http://jseliger.com/2009/06/01/highly-recommended-the-perils-of- pop-philosophy) which provides a few comments on reading "Perils of pop philosophy."

The issues Sanchez discusses are very close to my own work because I'm going to an academic conference dealing with institutions, and I'm writing a paper that takes a New Historicist perspective on how novels about academia deal with institutional forces and systems. Such systems usually don't come out well in these novels, but Sanchez is a handy reminder of some of their benefits.</comment>


The New Browser Wars: Will Ubuntu drop Firefox for Google Chrome? - <AUTHOR> http://www.crunchgear.com/2010/05/14/the-new-browser-wars-will-ubuntu-drop-firefox-for-google-chrome/

<comment><USER2> How about no default browser? Offer a browser selection screen during the install process or on first login. Chrome, Chromium, Firefox, Opera, etc. Offering a level playing field for browsers is very important. I don't see any good reason Ubuntu has to dictate a default at this point.

<comment><USER3> I suppose everybody here knows the ins and outs of the browser landscape and has their own favorite. Most everybody else doesn't care about browsers and would find a selection screen annoying. Ubuntu has worked hard at reducing the effort to install an operating system, and such a screen goes against their philosophy. It's important to have sensible defaults.

</comment></comment><comment><USER4> Hm... did anyone notice how this is a repost of a post on ubergizmo which starts with:

" _We have word_ that Ubuntu Netbook Edition 10.10 might not feature Firefox as the browser of choice, ..."

</comment><comment><USER5> From the default install, maybe. Why does every misleading article forget to add that. Canonical does not remove anything, you can always install it back from the repos.

Sounds like these articles are just looking for controversy.

</comment><comment><USER6> I'd love it if they did. I've basically stopped using Firefox in recent times. I currently use Chromium though, not Chrome. Chromium is so much faster than Firefox, and the UI takes up quite a bit less vertical space.

<comment><USER7> Why chromium over chrome? Even chrome dev channel?

<comment><USER6> Google already has access to all of my emails, my calendar, and several documents. I figure I might use a less Google-controlled browser than Chrome. Hence Chromium.

Granted, I have no idea what info Google has access to in Chrome that it doesn't have in Chromium.

<comment><USER7> iirc, SRWare Iron (<http://www.srware.net/en/software_srware_iron.php>) is a Chromium-based browser with an eye for privacy. Might be worth a look if that's your main motivation in browser choice?

</comment></comment></comment></comment><comment><USER8> I'd be happy if Canonical actually managed to ship a browser with great font rendering out of the box. Oh, and a 64-bit build would be the icing on the cake.

</comment><comment><USER9> Does Ubuntu even have Chrome/Chromium in the package manager yet?

<comment><USER10> It's not in the official repositories, but that's probably a good thing considering the frequency of updates during the beta period.

The Chrome beta .deb packages add the Chrome repo to your sources list, so updates are handled through the package manager (no unprompted background updating like in Mac/Windows).

I wonder if there will be any issues including it in the repos because of the integration of the Flash plugin. Then again, for a Linux company, Canonical is pretty willing to use proprietary software where practical.

<comment><USER11> It is since lucid.

<http://packages.ubuntu.com/lucid/chromium-browser></comment></comment></comment>


Imagine Getting 30 Job Offers a Month - <AUTHOR> http://www.theatlantic.com/technology/archive/2014/02/imagine-getting-30-job-offers-a-month-it-isnt-as-awesome-as-you-think/284114/

<comment><USER2> I DON'T TALK TO RECRUITERS!

I'm amazed at how quickly the reporter turned around that story. I talked to her yesterday afternoon. Also unexpected: my face in the article, lol.

</comment><comment><USER3> I used to read every single email I get from recruiters. They used to give me confidence. Nowadays I don't even open my LinkeIn mailbox:

[http://i.imgur.com/cdDQDu8.png](http://i.imgur.com/cdDQDu8.png)

After being rejected by Google, my only goal in life is to be good enough for Google. No matter if in that point, I'll be interested in working there or not. I just want to be that good

<comment><USER4> Maybe you really are good enough for Google, but their hiring process is hopelessly broken.

It's wrong to view approval from one specific person or corporation as your benchmark for success.

</comment></comment><comment><USER5> The spam for openings in other states is particularly frustrating for me. I'm job-hunting, and I have notifications enabled for email - I get my hopes up, then see that it's (frequently) _that one_ recruiter who just _cannot remember_ our previous conversations about "I live in San Francisco, and I'm not moving." Frustrating!

</comment><comment><USER6> I live and work in Iceland as a software developer (C++, python, javascript and related libraries) and havent had a single e-mail from a recruiter for the past two years I've been on linkedIn.

Is this strictly a US problem?

</comment><comment><USER7> Why do we have to imagine this? This is reality for software engineers on LinkedIn.

<comment><USER8> This is non-news for most hackers, but is actually surprising to people outside of the industry. The atlantic has a wide readership. A lot of people are having trouble finding any work. They'd be surprised that some people would find 30 job offers irritating.</comment></comment>


Star Wars Weather Forecast - <AUTHOR> http://www.tomscott.com/weather/starwars/ <comment><USER2> Hello. I'm Tom, and I made this -- more than three years ago. No idea why it's suddenly turned up here; it doesn't exactly fit under 'hacker' or 'news'!

It did once have permalinks, but adding translations in 2010 messed things up and I never got around to fixing the code. (Do try picking a RTL language, though, I'm quite proud of how that works.)

It should (I think) store the city you've requested in a cookie for next time, though. Maybe. It's really old and dodgy code.

Still, full marks for YQL for putting up with all the weather requests they've gotten over the years...

<comment><USER3> +1 for permalinks as well, it would make sharing this with others a lot easier.

</comment></comment><comment><USER4> Bristol, UK was destroyed by the Death Star long ago...

<comment><USER5> Told me that Bristol was Alderan

<comment><USER6> I assume that was the point?

</comment></comment></comment><comment><USER7> My favourite bit is the Konami code.

<comment><USER8> I can't get it to trigger. Even after reading the source code. :(

<comment><USER9> check on the upper right corner after you did the Konami code

</comment></comment></comment><comment><USER10> Cool site! You have Australia's country code as AS - it's AU. (eg type Melbourne Australia to replicate). Cheers!

<comment><USER11> Different standards use different abbreviations. Here, Tom is using FIPS: see [http://en.wikipedia.org/wiki/List_of_FIPS_country_codes](http://en.wikipedia.org/wiki/List_of_FIPS_country_codes).

If it were my site, I'd probably also use AU (and AT), though.

</comment></comment><comment><USER12> This is sweet. I just wish there was an option to link directly to a particular city.

</comment><comment><USER13> There's no use in an app where you have to look up the readout to interpret the result. That means the potential market for this app are SW geeks who have memorized the climates of planets and moons in Star Wars.

Analysis: sizeable market.

</comment><comment><USER14> Love this. +1 to permalinks, and would love to see better typography -- IMO replacing Tahoma with Open Sans Regular, or Light would go a long way. And perhaps a serif font for the planet name...

</comment><comment><USER15> Fun! Missing permalinks.

</comment><comment><USER16> Damascus is currently like Tatooine: 36 degrees C and fair.

</comment><comment><USER17> Nice but please push the chosen state to history.

</comment><comment><USER18> loved the Utini !

</comment><comment><USER19> this made me smile, thanks! :)</comment>


Environmental impact of textile manufacturing - <AUTHOR> https://www.ryanmercer.com/ryansthoughts/2016/7/19/environmental-impact-of-textile-manufacturing <comment><AUTHOR> This is an older post but I've updated it yet again today and it's still as applicable now as ever.</comment>


Dumb-jump: an Emacs "jump to definition" package - <AUTHOR> https://github.com/jacktasia/dumb-jump <comment><USER2> I was planning to write this as a comment here, but it ended up growing so I published it on my blog post: [https://kozikow.wordpress.com/2016/05/21/nice- new-emacs-pack...](https://kozikow.wordpress.com/2016/05/21/nice-new-emacs- package-dumb-jump-el/) .

BTW, did you know that you can just do README.org and github parses it? I noticed that you have org file checked in, but README is in md. For example see [https://github.com/kozikow/keyremaplinux](https://github.com/kozikow/keyremaplinux) .

<comment><AUTHOR> Wow, thanks for writing that blog post! You highlight pretty much all the reasons why I made dumb-jump. Please don't hesitate to make issues on github if/when you run into issues/ideas.

</comment></comment><comment><USER3> Ah yes, yet another proof that the Wrong Thing™ isn't necessarily the wrong thing. Sure it's objectively worse than [ce]tags, but haven't you heard? Worse is Better. :-D

<comment><USER4> I am not sure "proof" is the appropriate word.

> Dumb Jump uses The Silver Searcher ag (and falls back to grep) ... [and] a > set of regular expressions

If you're going to install ag, you might as well install universal-ctags[1], a revival of ctags with many improved and new parsers. It allowed me to discard my C and javascript ctags config entirely.

Combined with gutentags[2] you have a "just works" and "Less Dumb" setup.

[1] [https://github.com/universal-ctags/ctags](https://github.com/universal- ctags/ctags)

[2] [https://github.com/ludovicchabant/vim- gutentags](https://github.com/ludovicchabant/vim-gutentags)

<comment><USER5> The advantage of ag is that it is dumb brute (very brute) force. You do not need an up to date index as it will search whatever is on disk.

I have rtags set up, but it periodically stops working (too many parsing errors, indexer crashes, etc) or it is just slow, then I fall back to ag. It can search a ~1M lines C++ codebase in seconds (and you can start browsing the results while the search is in progress of course). Of couse it also works if you do not have a project setup, or you just switched to a wildly diverged git branch.

I'm definitely going to try this dumb-jump.

</comment></comment></comment><comment><USER6> For C/C++ RTags ([https://github.com/Andersbakken/rtags](https://github.com/Andersbakken/rtags)) together with company-mode and fly-check can do jump-to-definition, auto- completion and on-the-fly-syntax-checking. Super easy to use if using cmake as build system.

Respond to this comment if you need pointers on how to set things up.

<comment><USER7> Any equivalent options for make?

<comment><USER8> For make you could use bear ([https://github.com/rizsotto/Bear](https://github.com/rizsotto/Bear)). It allows you to generate a compilation database that is equivalent to that of cmake projects.

</comment></comment></comment><comment><USER9> This is neat, and useful as a general purpose jump-to feature. It's probably worth mentioning that some languages have packages with better functionality for that language, such as tern-mode for JavaScript.

</comment><comment><USER10> I must be missing something, but what is the advantage of this over something like Emacs Tags ([https://www.emacswiki.org/emacs/EmacsTags](https://www.emacswiki.org/emacs/EmacsTags)) ?

<comment><USER11> Building a tags file is not trivial.For example if you cloned a random repository on github you'd want to just jump around and not have to have the additional step of generating it and keeping it up to date.

<comment><USER12> Can't it just be done automatically and on-the-fly using ctags or another appropriate command?

<comment><USER13> Maybe this changed in the last few years but the problem with TAGS files was that you have to rebuild it at every change you make. I had a cron that rebuilt the ones of the projects I was working on, but it's not efficient and not up to date. Maybe a process that monitors changes to files is a better approach. Still, rebuilding the TAGS file is useless if ag is fast enough. SSDs and lots of RAM to cache files help.

The only problem with ag is that it can't find definitions until you save the buffer to a file. Not that ctags does any better. Some tool running inside emacs could do that too but it's not so important.

<comment><USER5> It shouldn't be too hard to write a grep-buffers command (I was using one version for a while), exclude open files from ag searches and merge the result of ag+grep-buffers in a single output (eh, in fact I should just write it).

</comment></comment></comment></comment></comment><comment><USER14> I really love how well this works with Cider though, for Clojure projects. It even lets you jump to the definition of Java or Clojure files that live outside your current project, e.g. in third party libraries or even the Java standard library. Why, just today I jumped to the definition of java.time.Month because I had never actually seen a real live Java enum before. (Sure enough, it's defined with the keyword `enum`. Neat!) Cider has become essential to my Clojure workflow at work.

</comment><comment><USER15> This is cool, I've also been writing a similar emacs package: it uses `git grep` and `git ls-files` to quickly find patterns and file names in the current git repo, and has a simple interface for filtering the search results to narrow down to what you were looking for (and also uses a regexp heuristic for jumping to definitions).

[https://github.com/dandavison/emacs-search- files](https://github.com/dandavison/emacs-search-files)

</comment><comment><USER16> What do people use to get something like this for C/C++? Also is there any package for auto-completion in C/C++?

<comment><USER17> [http://tuhdo.github.io/c-ide.html](http://tuhdo.github.io/c-ide.html)

<comment><USER16> Thanks! This worked the best out of all...

</comment></comment></comment><comment><USER18> Nice! Just tried it out and it seems to work well.

Why does dumb-jump-go want me to save my files before jumping?

<comment><USER19> I assume because it uses an external tool that looks at your files, not the state of your emacs buffers, to find references.

</comment></comment><comment><USER20> Nice package! Unfortunately is completely falling on its face for my ruby on rails project, but I'm sure it can be improved.

<comment> mck- Agreed. Was so hopeful that it would "just work". Still hopeful that it will improve, because the README just sounds sooo good.

<comment><AUTHOR> Sorry to hear it didn't work for you. Would you consider opening an issue on github outlining what you were trying to do? Then you can be more than just hopeful that it will improve.

</comment></comment></comment><comment><USER21> Why is so much Emacs stuff hosted on GitHub these days? It seems antithetical to the spirit of the project as a whole.

<comment><USER22> As opposed to what? Buying a domain and hosting your own server? To answer your question: Some small programs would probably not exist at all without a service like github.

<comment><USER21> It's not necessary to buy a domain and host one's own server. For example, there is [https://savannah.gnu.org/](https://savannah.gnu.org/) , which is where Emacs itself is hosted.

</comment></comment></comment><comment><USER23> this looks neat.

i notice one of the supported languages is go -- if you're doing much go, i recommend installing godef and using go-mode.el. no tags files or anything like that, and works perfectly well for jumping to definition.

(i also highly recommend gorename and guru.)

</comment><comment><USER24> Still learning VIM user here, do we have something like this?

<comment><USER25> Are you aware of '*' and '#', and 'gd'?

[http://vim.wikia.com/wiki/Go_to_definition_using_g](http://vim.wikia.com/wiki/Go_to_definition_using_g)

<comment><USER26> It never seems to work for me. If I put the cursor over a word and type gd, it seems to go to the first line that the word is mentioned, not necessarily the definition. It's handy, for sure, but not too reliable. I think it can be improved with some plugins though.</comment></comment></comment>